![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
DEPRECATED - see for 1.13/1.14 modding info
To wit, posts I have found somewhat useful for Minecraft modding, particularly 1.7.X. This list will be changing over time, hopefully growing, but also having outdated stuff pruned from it.
Not all modding tutorials are useful. Some are outdated, and some were written by people with a shaky grasp on Java, how Minecraft works internally, the MinecraftForge source, or all three. A lot of them are uninformative, because the authors start at the beginning and never get to advanced topics, so you have a lot of tutorials on how to make a basic block, but very few (if any) on how to add new items to the ore dictionary or render entities or add new crafting interfaces.
Important Tools
I'm not going to bother to list the Java JDK. If you don't already know why you need that or how to get it, you're not going to get very far trying to mod.
- Minecraft Forge - this is the Forge file server, get your modding source and user installation files here.
- Forge Documentation
- Forge Javadoc - can be downloaded as zip bundles from the Forge fileserver.
- Gradle documents - build system used by Forge.
- ForgeGradle - plugin for Gradle used to build Forge. Learn it.
- Eclipse - I use Eclipse as my Java IDE; other people use IntelliJ/IDEA.
- GitHub - a free, public source code repository. Distributed version control plus offsite backups. This will save your sanity the day your hard disk crashes and wipes out your development directories.
Java
Note that any library tagged 'used by MinecraftForge' is a guaranteed available API that your mod can use, too. Some of the features provided are pretty nifty.
- The Java Tutorials, for people who need to get up to speed on their Java, or need a refresher.
- Java 7 API
- Guava - Google Core Libraries for Java; used by MinecraftForge. Lots of useful stuff in here.
- Apache Commons Lang module; used by MinecraftForge
- Apache Commons IO module; used by MinecraftForge
- Log4j 2; used by MinecraftForge. Used for log management.
- GNU Trove; used by MinecraftForge.
- Netty; used by Minecraft--this is the network layer.
- Lightweight Java Game Library; used by Minecraft. Unlikely you will need to use anything from this.
- JOpt Simple; used by Minecraft. Unlikely you will need a command-line options parser in your mod.
- Google GSON; used by MinecraftForge. Unlikely you will need to use this, but who knows?
Tutorials
Personally, I don't like video tutorials for programming. One, the text on the screen is nearly impossible to read because of compression artifacts, small screens, and rapid movement. IF I pause the video, make sure YouTube is sending me it in HD resolution, and switch to full screen mode, I might be able to read your example code. That's a lot of work for something that is as important as reading the code you are teaching me to write, plus it's very distracting to understanding what you are saying for me to have to pause the video repeatedly. Also, if you have a heavy accent, I have trouble following along with my impaired hearing. Finally, droning on about code on the screen makes for extremely boring videos. It's much easier and more sensible to present your tutorials in text mode, which I can take in at my leisure, and actually read, and you can prune out all the boring, uninformative parts.
The only video tutorials I will recommend for the above reasons are Pahimar's, because he really knows his stuff, and covers important little details that no one else does, and does not have text tutorials. However, he does make his tutorial code available for study on GitHub, which is something everyone who does full tutorial mods should do. Sometimes I need to understand how your code fits into the big picture, rather than just see the little bit in code snippets.
1.13 Modding Tutorials, Tips & Techniques
- WillieWillus 1.13 update primer - a work-in-progress, as is Forge for 1.13
1.12 Modding Tutorials, Tips & Techniques
- Always visit the latest official Forge documentation. It's incomplete, but it's getting more articles all the time, and, more importantly, Stuff Changes. Someone else's older tutorial for a previous version may be all wrong for the current version of Forge Minecraft
- Forge and Minecraft 1.12 Modding Policy Changes
- Jabelar's Tutorials: Upgrading from 1.10 to 1.12.1
- McJty Modding tutorials
- Shadowfact's 1.12 tutorials
- Custom Recipes article on MCF
- Minecraft Wiki on Advancements
- Custom Advancements aka Achievements
1.11 Modding Tutorials, Tips & Techniques
- McJty's CompatLayer documentation, tutorial and McJty's CompatLayer mod. Very useful for allowing you to use the same code for both versions.
- Shadowfact's 1.11.2 tutorials
- Choonster briefly explains how to use the annotation-based config system and GUI
1.9.X/1.10.2 Modding Tutorials, Tips & Techniques
- Getting Started with Forge
- 1.8.9 to 1.9 Quick Primer
- McJty's 1.9 tutorials
- Darkhax's Modding Tutorials
- Check if player is using an item
- Modifying Loot Table (first draft). (Associated image)
- A Description of the Model Loading Process
- Example Blockstate JSON for a basic pipe - shows how to use Forge's blockstate variants and sub-models to reduced the multiplicity of model JSONS.
1.8.X Modding Tutorials
(Note: some of this applies to 1.9 as well)
- Updating your mod to 1.8
- Updating your mod to 1.8
- Bedrock Miner's 1.8 Tutorials - quite good
- Block Models (Vanilla)
- Forge Blockstates
- [1.8] Stairs tips on how to code a stair block. Still applies to 1.9.4
1.7.X Modding Tutorials
- Forge for 1.7.10 Release Notes -- includes notes about what has changed between 1.7.2 and 1.7.10.
- Getting Started with ForgeGradle - this is the first and most important tutorial--it tells you how to install and set up your development environment.
- Wuppy's 1.7 modding tutorials - if you scroll past all the video and LiveStream tutorials, he has two sets of text tutorials. One is for updating your existing mod from 1.6 to 1.7; the other is standard introductory modding, starting from setting up Java/Eclipse through basic blocks/items & textures. His tutorials are a good start, though I consider the 1.6->1.7 tutorials a bit disorganized--I'd rather just have a list of what needs to be changed.
- Let's Mod with Pahimar Reboot - the only video tutorials I will recommend. First, Pahimar has a very pleasant voice to listen to even when the content is completely boring, and second, he knows his stuff. He also illustrates one of the "advanced" setups, the one I've seen elsewhere described as the "independent" setup. You may also see it called the "professional" or "Pahimar's" setup.
- How to Build multiple separate projects with ForgeGradle is really helpful for people like me who work on more than one mod project.
- BedrockMiner's Tutorials - Here I found the first tutorial that explained how to properly code metadata blocks and items in 1.7.x. -- Modding Metadata Blocks & Items.
- Jabelar's Minecraft Forge 1.7.X Tutorials lots of good information, including the complete list of runtime args needed to test 1.7.10 mods in Eclipse. Also, crops.
- Sea Bass's short tutorials include useful information about how to add and render entities.
- Minalien's Forge Feature Spotlights
- Do this when armor worn.." quick tip on how to do special armor in 1.7.2
1.6.x Modding Tutorials
These may still have some useful or relevant parts, or cover advanced topics that I haven't been able to find a 1.7 tutorial on.
- Minecraft Modding by greyminecraftcoder. Written for 1.6.4, but has quite a bit of advanced, useful information
- (TBA)
Community and Information
Forums
- Minecraft Forum: Modification Development - ask and answer questions about mod development
- Minecraft Forums:Mapping & Modding Tutorials - quality is all over the map. See the Tutorials section above for specific useful tutorials.
- Minecraft Forge Forums. Read the FAQ/EAQ before posting anything, and tread lightly. The heavy-duty Forge programmers here are very knowledgeable, but expect you to have done your homework before seeking help. They do not suffer fools gladly. Subforums of interest:
- Modder Support - go here for help in developing your mod.
- Support & Bug Reports - go here for problems with Forge itself.
Information Resources
- Minecraft Wiki - a useful repository of vanilla Minecraft information.
- How to summon a loot chest -- for example, to test loot table changes
/setblock ~ ~ ~ minecraft:chest 0 replace {LootTable:"minecraft:chests/simple_dungeon"}
Changelog
Date: 2014-08-30 03:06 pm (UTC)2014-Oct-29: Updated Minalien's links
2014-Dec-09: Added "Updating your Mod to 1.8" from Forge Forums.
2016-Feb-14: starting to add new 1.8.9 stuff.
2016-Feb-29: changed the "Updating your mod to 1.8" link to point to Wuppy's 1.7 to 1.8 tutorials, they seem more useful.
2016-Feb-29: Added link to Forge Blockstates docs.
2016-Mar-12: Updated links to Minalien's articles to point to Blogarchive on GitHub.
2016-Mar-22: added link to how-to use Forge's update checker.
2016-Mar-28: added link to 1.8.9 to 1.9 primer.
2016-May-14: added link to Lex's notes on modifying loot tables in 1.9.
2016-Apr-20: added link to Bedrock Miner's 1.8 tutorials
2016-Apr-28: added link to McJty's 1.9 tutorials
2016-Jun-11: added link to Shadowfact's 1.9.4 tutorials
2016-Aug-15: removed out-of-date links (mcmod.info, Forge update checker) that have been superceded by Forge Documentation. Added some links to useful tutorials from Minecraft Forge Forums
2016-Dec-06: added 1.11 tutorial category, and CompatLayer entry.
2017-Apr-30: updated Shadowfacts' tutorial link to point at 1.11.2 tutorials.
2017-Sep-02: added 1.12 section, and link to McJty's tutorials.
2017-Sep-04: added Choonster's post about annotation-based config and link to Shadowfact's 1.12 tutorials.
2017-Sep-22: added links to Advancements & Custom Recipes for 1.12
2018-Nov-03: added link to 1.13 update primer