Read the Pre-requisites first!

Mod Name
Your Mod Name is the display name of your mod. Should contain only normal alphanumeric characters (a-z, A-Z, 0-9). It must be unique. Try and be innovative when coming up with your Mod Name because no other mod should be named something similar to your mod. If you have two mods with the same modid (which is derived from the mod name), the game will not be able to load.

To start off, Download the Forge MDK (Mod Development Kit), unzip it to an accessible folder and rename it to the file name of your mod. I put my mods in /Users/Cadiboo/Developer/Modding/<Mod-File-Name>.

Mod File Name
Your Mod File Name should be the Mod Name but replace spaces with “-“. Your mod file name should not contain spaces because maven and gradle (the build tools that Forge mods use) don’t deal well with spaces in files names. Because of this, if you use spaces in your mod file name, people won’t be able to use your mod as a library and have it automatically download

Some examples of mod file names

  • NoCubes
  • JourneyMap
  • Tinkers-Construct
  • Inventory-Tweaks

The Forge MDK contains some extra files that we will not need.
See which ones are necessary and which ones you can delete here.

Open up that folder and continue to Chapter 1.

Chapter 1 - Setting up the basics

1.0 - Gradle Configuration
1.1 - Importing the project into your IDE
1.2 - Basic Mod
1.3 - Doing Something
1.4 - Proxies
1.5 - First Item
1.6 - Item Model
1.7 - ItemGroup
1.8 - Localisation
1.9 - First Block
1.10 - BlockItem
1.11 - Block Loot (WIP)
1.12 - First Recipe (WIP)
1.13 - Advanced Model (WIP)

Chapter 2 - Version Control (Optional)

2.0 - Making a GitHub Account (WIP)
2.1 - Downloading a Git Client (WIP)
2.2 - Uploading your mod (WIP)
2.3 - Commits (WIP)
2.4 - Branches (WIP)

Chapter 3 - More advanced modding

3.0 - Block with BlockStates (WIP)
3.1 - TileEntity
3.2 - Entity (WIP)
3.3 - Config (WIP)
3.4 - Capability (WIP)