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
 * Back up your copy of minecraft.

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

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.

How to effectively get help

 * Forgot to delete meta.inf, what is the error?

Dealing with crashes

 * conflicting block ids
 * conflicting item ids
 * other?