Minecraft Updates - Faith-and-Code-Technologies/mDirt GitHub Wiki

🧩 How to Add New Minecraft Versions to mDirt

As of mDirt v3.0, the process of adding support for new Minecraft versions has been streamlined - no need to rebuild or re-release the app itself! Follow the steps below to add support for a new Minecraft version:

🟩 Step 0: Launch Minecraft

Launch the version of Minecraft that mDirt is being updated to. This is required!

🧪 Step 1: Generate the Data File

  1. Open lib/PYs/compile_data.py.
  2. On the very last line of the file, update the version to the targeted version.
  3. Run the file. It will generate the Data file for you, and automatically output it to lib/{version}_data.json.

📁 Step 2: Update the Version List

  1. Open lib/version_list.json.
  2. Add the version number to versions.
  3. Add the data and resource pack formats to dataformat and resourceformat.

📦 Step 3: Create the Version Module

  1. Duplicate the most recent version inside src/generation/{version}, and rename it to the new version.
    • 💡Use the format: v1_22_0 (for Minecraft 1.22)

  2. Use the Minecraft Wiki page for the new version to change anything that might need changed for the new support
  3. ZIP the folder as v1_22_0.zip (or whatever the version is) and place it in the modules/ directory.

🧪 Step 4: Test, test, TEST!

Test everything in mDirt - Blocks, Items, Recipes, Structures, and Equipment. Make sure to test things like custom models, other kinds of recipes, etc.

⬆️ Step 5: Upload to Github

If you are a member of the Team, simply upload the items from all 3 steps to Github. If not, create a pull request and a team member will look at it.

✅ Done!

mDirt will automatically recognize the new version - no release required!


🤖 How It Works

When a new project is created, mDirt checks version_list.json for any versions listed that aren’t already installed locally.

If it finds a missing version:

  1. It displays a 🌐 icon in the version selector.
  2. When the user selects that version, mDirt prompts to download it.
  3. Upon confirmation, it pulls both the Data file and the corresponding .zip module from GitHub.
  4. It unpacks and installs the module into the correct location.
  5. Finally, it adds the newly installed version to the local version_list.json so it won’t prompt again.

No restart. No rebuild. Just plug-and-play version support.