Skip to content

Instantly share code, notes, and snippets.

@Pokechu22
Last active March 31, 2024 21:35
Show Gist options
  • Star 99 You must be signed in to star a gist
  • Fork 12 You must be signed in to fork a gist
  • Save Pokechu22/97bf5bd528eeadef09dcbae8a15b009f to your computer and use it in GitHub Desktop.
Save Pokechu22/97bf5bd528eeadef09dcbae8a15b009f to your computer and use it in GitHub Desktop.
Setting up MCP for newer versions (e.g. 1.12.2)

It's possible to use create an MCP installation for versions of Minecraft where there hasn't been a full MCP release. It takes a little bit of manual setup, but the end result is highly useful.

  1. Download and extract the most recent MCP build from http://www.modcoderpack.com/. (Currently, the latest build is http://www.modcoderpack.com/files/mcp940.zip)

  2. Edit version.cfg in the conf folder, and change ClientVersion and ServerVersion to the version you want (for instance, 1.12.2).

  3. Download the SRG zip for the version you want; these can generally be found at http://mcpbot.bspk.rs/mcp/<version>/mcp-<version>-srg.zip (for example, http://mcpbot.bspk.rs/mcp/1.11.2/mcp-1.11.2-srg.zip) or at http://files.minecraftforge.net/maven/de/oceanlabs/mcp/mcp/<version>/mcp-<version>-srg.zip (for example, http://files.minecraftforge.net/maven/de/oceanlabs/mcp/mcp/1.12.2/mcp-1.12.2-srg.zip). (For 1.12.1 and 1.12.2, only the minecraftforge link works)

  4. Extract that zip into the MCP conf folder, overwriting files and the contents of the patches folder.

  5. Download the latest daily mappings from http://export.mcpbot.bspk.rs/. Even if they aren't for exactly the version you want, they will generally work.

  6. Extract the mapping zip into the MCP conf folder, overwriting files.

  7. Run MCP's decompile.bat as you normally would.

Note that for this to work, there must be a released SRG file for the version you want. The SRG file is what converts obfuscated names into an intermediate step where names are (mostly) the same between versions; the mappings files convert those intermediate names into the names you see and are used to.

Note that as always, the MCP license applies, even for development builds. Please read the LICENSE.txt included with MCP for more information about what you are and are not permitted to do.

An additional note: if you're using eclipse, you will need to manually fiddle with build paths due to updated libraries. You will also need to attach the native libraries, found in jars/versions/${VERSION}/${VERSION}-natives, to the libraries (e.g. LWJGL) for the game to launch.

@Sicky2000
Copy link

I want to use mcp for 1.12.2, which mappings do I have to download?

@Nessiesson
Copy link

I want to use mcp for 1.12.2, which mappings do I have to download?

@Sicky2000: Follow the instructions exactly as given, i.e., use 1.12.2 srg mappings (http://files.minecraftforge.net/maven/de/oceanlabs/mcp/mcp/1.12.2/mcp-1.12.2-srg.zip) and use stable_39 MCP mappings (http://export.mcpbot.bspk.rs/mcp_stable/39-1.12/mcp_stable-39-1.12.zip).

@Roxiun
Copy link

Roxiun commented Nov 8, 2020

I would recommend just using MCP Reborn

@amysthat
Copy link

amysthat commented Dec 8, 2020

I have a problem. MCP decompiler has problems at copying ANYTHING to project. Each time, i have to manually download and copy them. Please help. (First JInput error, now icu4j-core-mojang)
And as I understand, there is a lot of libraries.
(I want to build for 1.12.2)

== MCP 9.40 (data: 9.40, client: 1.12.2, server: 1.12) ==
"scalac" is not found on the PATH.  Scala files will not be recompiled
# found ff, ff patches, srgs, name csvs, doc csvs, param csvs, astyle, astyle config, rg, ss
Looking in C:\Users\User\AppData\Roaming\.minecraft\versions for mc installs... OK
Copying assets... OK
Parsing JSON file... OK
Looking for minecraft main jar... OK
> Checking libraries...
        Copying library jinput... Error copying library jinput
Press any key to continue . . .

@amysthat
Copy link

amysthat commented Dec 8, 2020

For those who have same problem like me, here is the solution.
Condition: Admin and Current accounts are separate.

Start CMD with admin. Navigate to folder by cd FOLDER_PATH

Make sure that .minecraft is on admin account too. If not, just copy there.

Type decompile.
Wait and DONE!

@Godwhitelight
Copy link

hey i need some help. i am need help with recompiling it

ween i am useing eclipse export > jar
i am getting the error

Couldn't find .mcassetsroot

https://cdn.discordapp.com/attachments/782906681783746561/785510963997573120/unknown.png
full error

please help me

my discord like: https://discord.com/users/757244087685480508

@Lunarequest
Copy link

can some one help me I get a error because eclipse can't find jars/minecraft_server.1.12.jar I tried downloading the official server jar but it didn't work. Any suggestions on how to fix this?

@Smitthe
Copy link

Smitthe commented Jan 13, 2021

in my MCP, there are no libraries at all, i cannot find them, i am using 1.12.2.
i go into the jars folder and there are only 2 folders, saves and bin.

can anyone help me?

@DerWeiseILL
Copy link

Does someone know how i fix this? I use eclipse:

Java HotSpot(TM) 64-Bit Server VM warning: Using incremental CMS is deprecated and will likely be removed in a future release

@Gav06
Copy link

Gav06 commented Mar 16, 2021

that isnt a big issue @DerWeiseILL

@ech0devv
Copy link

ech0devv commented Jul 22, 2021

How do you link libraries?
Having the lwjgl64 issue

@pwn3r1
Copy link

pwn3r1 commented Jul 25, 2021

hey, when i decompile i get a lot of errors but the decompile is done, then i fix like 2 errors in eclipse and i get like 18 more that eclipse cant resolve some stuff to a variable, here are all of the 18 errors: https://pastebin.com/jSmsg3su
and when i try to run it from eclipse, this error happens: https://pastebin.com/C2PfMa5E
if you know how to fix, msg me on discord: pwn3r1#1243

@SolDev69
Copy link

SolDev69 commented Sep 9, 2021

You don't actually need the .csv mappings, the normal MCP ones will work fine

@TheKodeToad
Copy link

TheKodeToad commented Sep 25, 2021

If MCP exports is down, you can use the Maven repository for Forge.

Links:
1.8.9
1.12.2

Manual method:
Open this page. It has a list of versions. Look for the latest version corresponding to your Minecraft version, and download from https://maven.minecraftforge.net/de/oceanlabs/mcp/mcp_stable/<version>/mcp_stable-<version>.zip.

If you want even newer versions, this tool may help.

@hobrin
Copy link

hobrin commented Dec 29, 2021

@MIFO77
Copy link

MIFO77 commented Apr 5, 2022

Hey, just had a problem with the launch of the game, and in the jar/versions/1.12.2/1.12.2-natives there is no jar libraries that I can add in eclipse, so I have an error :

Exception in thread "main" java.lang.UnsatisfiedLinkError: no lwjgl64 in java.library.path
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1860)
at java.lang.Runtime.loadLibrary0(Runtime.java:871)
at java.lang.System.loadLibrary(System.java:1122)
at org.lwjgl.Sys$1.run(Sys.java:72)
at java.security.AccessController.doPrivileged(Native Method)
at org.lwjgl.Sys.doLoadLibrary(Sys.java:66)
at org.lwjgl.Sys.loadLibrary(Sys.java:87)
at org.lwjgl.Sys.(Sys.java:117)
at net.minecraft.client.Minecraft.getSystemTime(Minecraft.java:3300)
at net.minecraft.client.main.Main.main(Main.java:39)
at Start.main(Start.java:11)

@GradientGamer-XD
Copy link

GradientGamer-XD commented Nov 24, 2022

as of 11/24/22, mcpbot.bspk.rs is down so use web archive
Alternatively, refer to https://github.com/ModCoderPack/MCPMappingsArchive for mappings

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment