Tutorials/Programs and editors/Mod Coder Pack

The Mod Coder Pack (Formerly Minecraft Coder Pack) is a collection of scripts and tools to help developers create mods for both the Java Edition server and client.
== Description ==
The package was created to help mod creators to decompile, change and recompile the Minecraft classes. Instructions are included in the readme files which come with the package. The package contains scripts to decompile, recompile, and reobfuscate the game and the server.
== License and terms of use ==
MCP is (c) Copyright by the MCP Team
No warranties. If MCP does not work for you, or causes any damage, it's your problem. Use it at your own risk.
==== You are allowed to ====
* Use MCP to decompile the Minecraft client and server jar files.
* Use the decompiled source code to create mods for Minecraft.
* Recompile modified versions of Minecraft.
* Reobfuscate the classes of your mod for Minecraft.
* Obfuscate Minecraft classes to prevent unauthorized use of code.
==== You are not allowed to ====
*Use MCP to do anything that violates Mojang's terms of use for Minecraft.
*Release Minecraft versions or modifications that allow you to play without having bought Minecraft from Mojang.
*Release modified or unmodified versions of MCP anywhere.
*Use any of MCP's scripts, tools, or data files without explicit written permission.
*Make money with anything based on MCP (excluding Minecraft mods created by using MCP).
*Use MCP to create clients that are used for griefing or exploiting server bugs.
*Release the decompiled source code of Minecraft in any way.
== Links ==
* The MCP forum thread
* Twitter feed from MCP founder
== Downloads ==
* The MCP Releases page
=== History ===
Version	File 	Client 	Server 	Release Information
v9.40 	 	1.12 	1.12 	Updated to support Minecraft Client 1.12 and Minecraft Server 1.12; updated fernflower for Java 8
v9.37 	 	1.11.2 	1.11.2 	Updated to support Minecraft Client 1.11.2 and Minecraft Server 1.11.2
v9.31 	 	1.10 	1.10 	Updated to support Minecraft Client 1.10 and Minecraft Server 1.10
v9.28 	 	1.9.4 	1.9.4 	Updated to support Minecraft Client 1.9.4 and Minecraft Server 1.9.4
v9.24 	(archive)	1.9 	1.9 	Updated to support Minecraft Client 1.9 and Minecraft Server 1.9
v9.18 	 	1.8.8 	1.8.8 	Updated to support Minecraft Client 1.8.8 and Minecraft Server 1.8.8
v9.10 	(archive)	1.8 	1.8 	Updated to support Minecraft Client 1.8 and Minecraft Server 1.8
v9.08 	 	1.7.10 	1.7.10 	Updated to support Minecraft Client 1.7.10 and Minecraft Server 1.7.10
v9.03 	 	1.7.2 	1.7.2 	Release Candidate to support Minecraft Client 1.7.2 and Minecraft Server 1.7.2
v8.11 	 	1.6.4 	1.6.4 	Updated to support Minecraft Client 1.6.4 and Minecraft Server 1.6.4
v8.05 	 	1.6.2 	1.6.2 	Updated MD5 checksum, fixed the "missing library" bug and removed an undiscovered bug.
v8.04 	 	1.6.2 	1.6.2 	Updated to support Minecraft 1.6.2 and Minecraft Server 1.6.2.
v8.03 	 	1.6.1 	1.6.1 	Updated to support Minecraft 1.6.1 and Minecraft Server 1.6.1 / important fix for 8.02
v7.51 	 	1.5.2 	1.5.2 	Updated to support Minecraft 1.5.2 and Minecraft Server 1.5.2.
v7.44 	 	1.5.1 	1.5.1 	Updated to support Minecraft 1.5.1 and Minecraft Server 1.5.1.
v7.42 	 	1.5 	1.5 	Updated to support Minecraft 1.5 and Minecraft Server 1.5.
v7.39 	 	13w09c 	13w09c 	Updated to support Minecraft 13w09c and Minecraft Server 13w09c. Renamed from 'Minecraft Coder Pack' to 'Mod Coder Pack'.
v7.34 	 	13w05b 	13w05b 	Updated to support Minecraft 13w05b and Minecraft Server 13w05b.
v7.30c 	 	13w02b 	13w02b 	Updated to support Minecraft 13w02b and Minecraft Server 13w02b.
v7.26a 	 	1.4.7 	1.4.7 	Updated to support Minecraft 1.4.7 and Minecraft Server 1.4.7.
v7.25 	 	1.4.6 	1.4.6 	Updated to support Minecraft 1.4.6 and Minecraft Server 1.4.6.
v7.23 	 	1.4.5 	1.4.5 	Updated to support Minecraft 1.4.5 and Minecraft Server 1.4.5.
v7.21 	 	1.4.4 	1.4.4 	Updated to support Minecraft 1.4.4 and Minecraft Server 1.4.4.
v7.19 	 	1.4.2 	1.4.2 	Updated to support Minecraft 1.4.2 and Minecraft Server 1.4.2.
v7.2 	 	1.3.2 	1.3.2 	Updated to support Minecraft 1.3.2 and Minecraft Server 1.3.2.
v7.0a 	 	1.3.1 	1.3.1 	Added fernflower decompiler due to new permission to distribute it.
v7.0 	 	1.3.1 	1.3.1 	Updated to support Minecraft 1.3.1 and Minecraft Server 1.3.1.Extended patches to remove herobrine code from decompiled classes.
v6.15 	 	12w26a 	12w26a 	Updated to support Minecraft 12w26a and Minecraft Server 12w26a.
v6.5 	 	12w17a 	12w17a 	Updated to support Minecraft 12w17a and Minecraft Server 12w17a.
v6.2 	 	1.2.5 	1.2.5 	Updated to support Minecraft 1.2.5 and Minecraft Server 1.2.5.Update patches to work around worldgen crash in vanilla minecraft client and server.Update patches to work around and a client crash when clicking on chat history.
v6.1 	 	1.2.4 	1.2.4 	Updated to support Minecraft 1.2.4 and Minecraft Server 1.2.4.Disabled rounding of float and double constants due to issues with getting stuck on respawn.Updated client patches to work around OpenGL issues with main window on OSX and Linux.
v6.0 	 	1.2.3 	1.2.3 	Updated to support Minecraft 1.2.3 and Minecraft Server 1.2.3.Added javadoc comments to the decompiled sourcecode.
v5.6 	 	1.1.0 	1.1.0 	Updated to support Minecraft 1.1.0 and Minecraft Server 1.1.0.Run Artistic Style source beautifier on decompiled source code.
v5.0 	 	1.0.0 	1.0.1 	Updated to support Minecraft 1.0.0 and Minecraft Server 1.0.1.
v4.5 	 	1.9-pre5 	1.9-pre5 	Updated to support Minecraft Beta 1.9-pre5 and Minecraft Beta Server 1.9-pre5.Improved Retroguard and Exceptor tools.
v4.4 	 	Beta 1.8.1 	Beta 1.8.1 	Updated to support Minecraft Beta 1.8.1 and Minecraft Beta Server 1.8.1.Improved Retroguard and Exceptor tools.Fixes to mapping of methods in EntityLiving.Bugfix for crashes when playing sounds due to issue in Block.java.
v4.3 	 	Beta 1.7.3 	Beta 1.7.3 	Updated to support Minecraft Beta 1.7.3 and Minecraft Beta Server 1.7.3.
v4.2 	 	Beta 1.7.2 	Beta 1.7.2 	Updated to support Minecraft Beta 1.7.2 and Minecraft Beta Server 1.7.2.
v4.1 	 	Beta 1.6.6 	Beta 1.6.6 	Added an Eclipse workspace.Included a reobfuscation bugfix.
v4.0 	 	Beta 1.6.6 	Beta 1.6.6 	Added new tool Exceptor.Added alternative support for fernflower decompiler.
v3.4 	 	Beta 1.6.6 	Beta 1.6.6 	Updated to support Minecraft Beta 1.6.6 and Minecraft Beta Server 1.6.6.
v3.3 	 	Beta 1.6.5 	Beta 1.6.5 	Updated to support Minecraft Beta 1.6.5 and Minecraft Beta Server 1.6.5.
v3.2 	 	Beta 1.6.4 	Beta 1.6.4 	Updated to support Minecraft Beta 1.6.4 and Minecraft Beta Server 1.6.4.Added support for external jar files in recompile and reobfuscation.Updated the readme files.Small bugfix for using mcp offline.
v3.1 	 	Beta 1.5_01 	Beta 1.5_02 	Some more bugfixes in the python scripts.
v3.0 	 	Beta 1.4_01 	Beta 1.4_01 	Updated to support Minecraft Beta 1.4_01 and Minecraft Beta Server 1.4_01.Complete rewrite of the scripts in python.RetroGuard used both for deof and reobf.Automatic detection of modified classes during reobfuscation.Protection on cleanup.bat/sh.Advanced logging system (logs/mcp.log, logs/mcperr.log).Removed repackager.exe and mono dependancy on Linux.Cleaner directory structure.Out of the box decompilation compatibility with modded jars.Rolling update model on top of the usual full package distrib.Custom files in bin directory are preserved during recompilation.Custom files are automatically copied to reobf directory during reobf.
v2.12 	 	Beta 1.5_01 	Beta 1.5_02 	Updated to support Minecraft Beta 1.5_01 and Minecraft Beta Server 1.5_02.
v2.11 	 	Beta 1.4_01 	Beta 1.4_01 	Updated to support Minecraft Beta 1.4_01 and Minecraft Beta Server 1.4_01.
v2.10 	 	Beta 1.4 	Beta 1.4 	Updated to support Minecraft Beta 1.4 and Minecraft Beta Server 1.4.
v2.9a 	 	Beta 1.3_01 	Beta 1.3 	Added support for mod loader 1.3_01v3.Added MCP Mod System SDK updated for 1.3_01.Updated name mappings.
v2.9 	 	Beta 1.3_01 	Beta 1.3 	Updated to support Minecraft Beta 1.3_01 and Minecraft Beta Server 1.3.
v2.8 	 	Beta 1.2_02 	Beta 1.2_01 	Added alpha version of OSX support.Added alpha version of the MCP mod system.Updated mapping with a lot more method and field names.
v2.7 	 	Beta 1.2_02 	Beta 1.2_01 	Updated to support Minecraft Beta 1.2_02 and Minecraft Beta Server 1.2_01.
v2.6 	 	Beta 1.1_02 	Beta 1.1_02 	Updated to support Minecraft Beta 1.1_02 and Minecraft Beta Server 1.1_02.
v2.5 	 	Alpha v1.2.6 	Alpha 0.2.8 	Updated to support Minecraft Alpha 1.2.6 and Minecraft Alpha Server 0.2.8, reobf-fix recommended.
v2.4 	 	Alpha v1.2.5 	Alpha 0.2.7 	Updated to support Minecraft Alpha 1.2.5 and Minecraft Alpha Server 0.2.7.
v2.3 	 	Alpha v1.2.3_04	Alpha 0.2.5 02	Updated to support Minecraft Alpha 1.2.3_04 and Minecraft Server Alpha 0.2.5_02.Linux version is now available.Renamer now includes the OpenGL constant annotater from MissLil.Renamer output the proper reobfuscation table for Obfuscathon_v2.Name collision has been turned off, removing all the _00 tails on many variables.Obfuscathon is now context aware. This should remove a lot of prb with the reobfuscation.Various updates on the scripts.The location of the CSVs have been moved to MCP server. Related tools have been updated..Many modifications on the spreadsheets.Started porting the whole CSV hell to a cleaner database.
v2.2a 	 	Alpha v1.2.2 	Alpha 0.2.4 	Bugfixes for the re-obfuscation tools.
v2.2 	 	Alpha v1.2.2 	Alpha 0.2.4 	Re-obfuscation beta test starting to make mods compatible with original jar files.
v2.1 	 	Alpha v1.2.2 	Alpha 0.2.4 	Updated to support Minecraft Alpha 1.2.2.
v2.0a 	 	Alpha v1.2.1_01	Alpha 0.2.3 	A minor bugfix. Some scripts did not work properly if there were space in the path.
v2.0 	 	Alpha v1.2.1_01	Alpha 0.2.3 	First release for post-Halloween Minecraft versions.
v1.6 	 	Alpha v1.1.2_01	Alpha 0.2.1 	All classes have meaningful names now; the class name mappings and the field name mappings are applied.
v1.5 	 	Alpha v1.1.2_01	Alpha 0.2.1 	Extend the scripts to also support decompiling, recompiling and testing the minecraft_server.jar file.
v1.4 	 	Alpha v1.1.2_01	Alpha 0.2.1 	Using a deobfuscator to rename all fields and methods and jadretro to fix some decompile bugs.
v1.3 	 	Alpha v1.1.2_01	Alpha 0.2.1 	Added upgrade scripts to decompile and recompile Minecraft.class, MinecraftApplet.class and MinecraftServer.class.
v1.2 	 	Alpha v1.1.2_01	Alpha 0.2.1 	Redirect output of all tools to a logfile.
v1.1 	 	Alpha v1.1.2_01	Alpha 0.2.1 	Fixed TNT bug.
v1.0 	 	Alpha v1.1.2_01	Alpha 0.2.1 	First release.
== Credits ==
* A full list of credits can be found at 
=== Core Team ===
==== Searge ====
* Creator of MCP
* Fixes all compile errors in the decompiled sourcecode
* Created the MCP mod system and API
* Created the new RetroGuard deobfuscation module for MCP 3.0
* Created the new mod system
* Now part of Mojang teamhttp://mcp.ocean-labs.de/news.php?extend.10.1
==== ProfMobius ====
* Creator of the renaming codes and re-obfuscation procedures
* Helped to port scripts to GNU/Linux
* Developer and maintainer of the MCP chan bot
* Is now bald after working too much with java constant pool and re-obfuscation
* Created the new workflow scripts and renamer for MCP 3.0
==== IngisKahn ====
* Creator of the bytecode compare tool that helps updating the name mappings quickly for new Minecraft versions
* Contributed to the de-obfuscation spreadsheet
* Working hard on creating better internal tools for mapping updates and decompiling
==== Fesh0r ====
* PHP/SQL coder
* Created mappings, patches, and general release work
* Has Searge's approval to make official MCP releases
* Makes sure the team gets proper patches for the sourcecode that JAD generates
* Maintains scripts and toolkits
* Optimized the Retroguard and Exceptor tools
==== R4WK ====
* Works on MCP updates and contributes to the new mod system
* Helps ZeuX with Techne improvements
==== ZeuX ====
* Helps out in the IRC channels - Head of HR
* Did server patches for the most recent versions
* Created the famous Techne model editor for Minecraft
* Contributes features to the new mod system
== Feedback ==
Feel free to follow the forum thread or join the IRC discussion on #mcp on irc.esper.net
== References ==
Category:Custom software
de:Modifikation/Mod Coder Pack
fr:Mod Coder Pack
pl:Programy i edytory/MCP
ru:Minecraft Coder Pack
zh:辅助程序与编辑器/Minecraft Coder Pack