Minecraft mod tutorial
Redacted by Lilian Gallon as the final project for the CSE185E class at UCSC.

Minecraft 1.14.4
Github repo
How to create a Minecraft mod
Keywords: Minecraft, Game modding, Tutorial, Forge API

Summary
Game modding is a growing field of game developing which started from the initiative of players. When the game itself is not enough, you can improve it by adding your own functionalities. It is a way to learn coding by having fun. However, it can be difficult to get into game modding because you need to read a lot of documentation (if you find it) and know how the game is coded. This tutorial will guide you through your journey on how to make ― your first? ― Minecraft mod. You will learn each part of it, from setting up your Integrated Development Environment to adding your mod in your Minecraft game. We will also use the latest technologies available at this time. So the tutorial is taught using Minecraft Forge 1.14.4, GitHub Actions and IntelliJ IDEA 2019!

Intended audience
This tutorial is designed for people with a minimum of knowledge about Computer Science (Java and data structures). It is not needed to know Oriented Object Programming, but it will be easier to follow the tutorial by knowing this concept. Some parts of this tutorial won’t be required to create a Minecraft mod, but it will teach you good programming practices. Continuous Integration and Unit testing are some of these non-required parts. It is not necessary to have a Minecraft.net account to program the mod, but it will be mandatory if you want to use it in your own world.

Style guide
We will use a modern style guide to redact this tutorial. The Google Developer Documentation Style Guide [1] was chosen as it is adapted to this kind of tutorial. It is really simple to understand compared to the other ones (Oxford, Chicago and APA for example). Moreover, the theme is clean and the tone has to be conversational, friendly and respectful without being overly colloquial or frivolous.

System requirements
Recommended means that this tutorial has been made using this technology. If a technology is not cited, it means that it is not working (ex: Forge 1.14.4 is incompatible with Java JDK >11) or not tested.
  • Operating System:
    • Windows 10 (recommended)
    • Linux (part 2.1.1 differ a lot, slight changes for part 2.1.2 and 2.1.3)
    • MacOS (same as Linux)
  • Java JDK:
    • JDK 1.8 (recommended)
    • JDK 9 (Not maintained anymore, slight changes for part 2.1.2)
    • JDK 10 (Not maintained anymore, slight changes for part 2.1.2)
  • Minecraft Forge:
    • 1.14.4 (recommended)
    • 1.14.x (Unknown issues may occur)
    • 1.13.x (Slight changes for part 2.1.3, and 3.)
  • Integrated development environment
    • IntelliJ IDEA 2019.x (recommended)
    • IntelliJ IDEA 2018.x (Slight changes for part 2.1.3)
    • Eclipse Neon (parts 2.1.2 and 2.1.3 differ a lot)