Mods/Installing mods using ModLoader

A word about using mods with minecraft
Before you begin modding your copy of Minecraft, it is very important to understand what you are doing, or you may end up messing up your copy.

Let me repeat that for you: If you mod Minecraft, it is safe to assume that you may break your copy of the game, as well as any worlds that you play in. Because you are doing something that is wholly unsupported by Mojang, they won't be able to help you. Additionally, the authors of the mod make no guarantees as to whether or not the code works, much less any guarantees of support. On top of that, due to how modding works, if there is a minecraft update, it will break your mods and the worlds you played in. If the prospect of losing your copy of minecraft or your worlds scares you in any way, modding is not for you.

If you are the kind of person that wants to install a few mods, and immediately have them work without having to think about them; then installing mods likely isn't for you.

If you are not afraid to get your hands dirty, do a bit of problem solving, understand a little more about how Minecraft works "under the hood", then installing mods is for you.

Modding pre-requisites

 * Zipping/Unzipping files, and working with a good archive utility. (such as WinRAR, 7zip, etc.)
 * Knowledge of the command line.
 * Know how to read "Stack Traces".
 * Knowing how to submit proper bug reports.
 * Knowing how to actually install the mod and it's prerequisites.

You might be able to get away without knowing how to do a few of these things, until your copy of Minecraft breaks. Then you should seek help from somebody in the modding community (preferably the mod author). If you view this as a great opportunity to learn something new, then you're on the right path!

How do mods work?
There is a file, on your computer called "minecraft.jar" that provides everything minecraft needs to be able to run. For example: world generation, showing blocks, managing mobs, items and recipes. when you add mods to minecraft, you are taking Minecraft.jar and over-writing it with the changes needed. All of these files inside of minecraft.jar that make it run are run through a process called "obfuscation". Basically what that means is that it changes the word "recipe" to the word "bf" (for the technically minded, all class names, variable names and identifiers are turned into one or two letter nonsense names).

Further, each entity in the game (a Mob, Item, Block, etc.) has an ID, number so they can be described on the map. As new content is added to Minecraft, new IDs are used, so you have to be careful that the Foodgate mod you just installed doesn't conflict badly with the new update of Minecraft that added Repeaters.

This has a few very important implications:
 * This is fundamentally changing the way Minecraft was meant to be played. So Notch, and Mojang AB will not be able to help you in any way, and are no longer responsible for crashes, data loss, etc.
 * Mods might claim to do something like add a cute puppy to your world, but will in fact do something else, like steal your Minecraft username/password or install a keylogger. You have been warned.
 * When Minecraft is updated, all mods needs to be re-updated by their authors, because Mojang obfuscates the source. If a mod uses an ID number that Mojang chooses to use in the update, this will cause further issues, and your world will look weird, or potentially be completely broken and unusable. Mod authors do this of their own free will, and it can take weeks for them to update. However, this doesn't mean you should harass the author about it.
 * If two mods do similar things, they will likely be incompatible, because they both will try to change the "bf" (or "recipe") file. (This is not strictly true, but more on this later)
 * You may be adding new entities to your worlds, so if you ever have to remove the mods (say because of a Minecraft update), that world will no longer be compatible.

Making Backups
If you are going to mod, you will want to do 2 things:
 * Back up your worlds
 * If you have had previous mods installed, back up the minecraft.jar too, so as not accidentally uninstall mods.

Backing up your worlds should be done every time you install a new mod

Modloader, Spawnlist and friends

 * There are many mods that absolutely require other mods to work, because they use some the commands these other mods give. These are also known as utility mods. These mods include modloader (for adding mods in general), audiomod (for adding sounds), ToolUtils (For making specific tool functions), spawnlist (for adding new mobs), More ID's (to give a greater amount of items), and Turbomodel (for more advanced models). These mods that are required by some mods will need to be installed with the mod before minecraft is run, or the mod will not work, or even minecraft will crash.

Managing item and block IDs

 * Most of the time, mod authors will give a configuration file to change item ID's. Find the conflicting ID, and change it. Just remember that when an update for minecraft or for the mod comes out, you must use the same item ID's, or suffer the crashes.

V4 or V5?

 * Modloader V4 is still a common modloader. However, as mods progress, you will find that mod authors update their mods to work on V5 instead. Please note that V5 mods are not backwards compatible, and you will have to start with a vanilla copy of the minecraft.jar to install V5, so replacing files will not work.

Dealing with your first crash

 * Running minecraft in command line mode to get a stack trace.
 * Posting this stack trace as an error report on the mod authors website/forum/thread.
 * If using Modloader, check the log in the .minecraft folder for errors.

How to effectively get help

 * Delete the META-INF folder.
 * Check to make sure there are no conflicting mods.
 * If using a Modloader mod, make sure the correct version of Modloader is installed.

Installing your second mod: testing for compatibility

 * Extract your minecraft.jar to a folder. Drag and drop mod files in. If a "do you wish to replace this file?" error comes up, there may an incompatibility. Proceed testing the mod in a world with caution.

Dealing with crashes

 * conflicting block ids
 * conflicting item ids
 * other?
 * Mods that add massive amounts of items and new features such as IndustrialCraft or SDK's guns will most likely conflict if not using the More Id's mod.