Plasma is a set of mappings for legacy minecraft versions.
To see the current version being targetted, check the branch name!
To use plasma-deobfuscated Minecraft for Minecraft modding or as a dependency in a Java project, you can use loom Gradle plugin. See fabric wiki tutorial for more information.
To obtain a deobfuscated Minecraft jar, ./gradlew mapNamedJar
will generate a jar named like <minecraft version>-named.jar
, which can be sent to a decompiler for deobfuscated code.
Alternatively, use the functions provided by enigma to decompile
Please remember that copying and pasting mappings from alternate projects under more restrictive licenses (such as MCP or Pigeon) is completely forbidden without explicit permission from the owners of said mappings. Additionally, copying from the "BIN Mappings" plasma fork is discouraged due to its not being cleanroom.
When contributing remember to read the conventions (Conventions.md).
To contribute, fork the project and clone it locally, and use enigma to map the jar. Then push to your fork and submit a pull request.
Anyone can comment and suggest changes on pull requests. We want to make sure the mappings are the best quality, so make your voice known!
- Fork and clone the repo
- Run
./gradlew plasma
(Linux, macOS) or.\gradlew plasma
(Windows) - Profit
Plasma uses Gradle to provide a number of utility tasks for working with the mappings.
setupPlasma
and download and launch the latest version of Fabric's fork of Enigma
Compared to launching Enigma externally, the gradle task adds a name guesser plugin that automatically map enums and a few constant field names.
Build a GZip'd archive containing a tiny mapping between official (obfuscated), intermediary, and plasma names ("named") and packages enigma mappings into a zip archive..
Builds a deobfuscated jar with plasma mappings and automapped fields (enums, etc.).
Downloads the client and server Minecraft jars for the current Minecraft version to .gradle/minecraft