Minecraft Wiki
Advertisement
Paper
The contents of this page are not supported by Mojang Studios or the Minecraft Wiki. 

Template:Mod The Mod Coder Pack is a collection of scripts and tools to help developers create mods for both the Minecraft 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.

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

Downloads

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.2 1.10.2 Updated to support Minecraft Client 1.10.2 and Minecraft Server 1.10.2
v9.28 1.9.4 1.9.4 Updated to support Minecraft Client 1.9.4 and Minecraft Server 1.9.4
v9.24 [dead link]

(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 [dead link]

(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 1.8.1 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 1.7.3 1.7.3 Updated to support Minecraft Beta 1.7.3 and Minecraft Beta Server 1.7.3.
v4.2 1.7.2 1.7.2 Updated to support Minecraft Beta 1.7.2 and Minecraft Beta Server 1.7.2.
v4.1 1.6.6 1.6.6 Added an Eclipse workspace.
Included a reobfuscation bugfix.
v4.0 1.6.6 1.6.6 Added new tool Exceptor.
Added alternative support for fernflower decompiler.
v3.4 1.6.6 1.6.6 Updated to support Minecraft Beta 1.6.6 and Minecraft Beta Server 1.6.6.
v3.3 1.6.5 1.6.5 Updated to support Minecraft Beta 1.6.5 and Minecraft Beta Server 1.6.5.
v3.2 1.6.4 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 1.5_01 1.5_02 Some more bugfixes in the python scripts.
v3.0 1.4_01 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 1.5_01 1.5_02 Updated to support Minecraft Beta 1.5_01 and Minecraft Beta Server 1.5_02.
v2.11 1.4_01 1.4_01 Updated to support Minecraft Beta 1.4_01 and Minecraft Beta Server 1.4_01.
v2.10 1.4 1.4 Updated to support Minecraft Beta 1.4 and Minecraft Beta Server 1.4.
v2.9a 1.3_01 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 1.3_01 1.3 Updated to support Minecraft Beta 1.3_01 and Minecraft Beta Server 1.3.
v2.8 1.2_02 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 1.2_02 1.2_01 Updated to support Minecraft Beta 1.2_02 and Minecraft Beta Server 1.2_01.
v2.6 1.1_02 1.1_02 Updated to support Minecraft Beta 1.1_02 and Minecraft Beta Server 1.1_02.
v2.5 1.2.6 0.2.8 Updated to support Minecraft Alpha 1.2.6 and Minecraft Alpha Server 0.2.8, reobf-fix recommended.
v2.4 1.2.5 0.2.7 Updated to support Minecraft Alpha 1.2.5 and Minecraft Alpha Server 0.2.7.
v2.3 1.2.3_04 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 1.2.2 0.2.4 Bugfixes for the re-obfuscation tools.
v2.2 1.2.2 0.2.4 Re-obfuscation beta test starting to make mods compatible with original jar files.
v2.1 1.2.2 0.2.4 Updated to support Minecraft Alpha 1.2.2.
v2.0a 1.2.1_01 0.2.3 A minor bugfix. Some scripts did not work properly if there were space in the path.
v2.0 1.2.1_01 0.2.3 First release for post-Halloween Minecraft versions.
v1.6 1.1.2_01 0.2.1 All classes have meaningful names now; the class name mappings and the field name mappings are applied.
v1.5 1.1.2_01 0.2.1 Extend the scripts to also support decompiling, recompiling and testing the minecraft_server.jar file.
v1.4 1.1.2_01 0.2.1 Using a deobfuscator to rename all fields and methods and jadretro to fix some decompile bugs.
v1.3 1.1.2_01 0.2.1 Added upgrade scripts to decompile and recompile Minecraft.class, MinecraftApplet.class and MinecraftServer.class.
v1.2 1.1.2_01 0.2.1 Redirect output of all tools to a logfile.
v1.1 1.1.2_01 0.2.1 Fixed TNT bug.
v1.0 1.1.2_01 0.2.1 First release.

Credits

  • A full list of credits can be found at [1]

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 team[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 us to update 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 code monkey
  • Uses his magic to create mappings, patches, and general release work
  • Has Searge's approval to make official MCP releases ;)
  • Makes sure we get proper patches for the sourcecode that JAD generates
  • Maintains our 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 - if you run into any (patch-related) problems, it's his fault :P
  • Created the famous Techne model editor for Minecraft
  • Contributes features to the new mod system

Modding Minecraft

Main article: Mods/Creating mods/Setting up the MCP workspace

Feedback

Feel free to follow the forum thread or join the IRC discussion on #mcp on irc.esper.net

References

Advertisement