Commit Graph

6 Commits

Author SHA1 Message Date
Agaricus
374cb129e2 Add loading of numeric "srg" names from MCP directory
Normally, loadMappingsDir() loads:

    obf -> num -> pkgmcp

but with numericSrgNames, it loads:

    pkgmcp -> num

where:

obf = obfuscated "notch" names
num = numeric "srg" names
pkgmcp = descriptive "csv" names

This implementation could probably be improved further.

Compatibility Note: --numeric used to load these mappings:

    obf -> num

that is, ignoring the fields/methods.csv. But this turned out not to
be too useful. You can still get this mapping with ignoreCsv=true, but
now numericSrgNames and --numeric loads the much more useful mapping:

    pkgmcp -> num

Useful for targetting FML runtime deobfuscation.
2013-03-10 13:45:51 -07:00
Agaricus
f91c319a8b Add class name to JarMappingLoadTransformer field/method
Not used by CSVMappingTransformer, since the CSVs only contain:
    func_###,newname
    field_###,newname
with no class name, but it could be used by other load transformers.
2013-03-10 11:32:08 -07:00
Agaricus
308d1b4413 Add --numeric-srg option for using srg names (vs csv) on MCP dirs
Normally, --srg-in on a directory will load joined.srg or
client.srg and server.srg, translated through fields.csv,
methods.csv, and packages.csv, if available. --numeric will
ignore fields.csv and methods.csv, remapping the jar to
the numeric "srg" names instead of descriptive "csv" names.
(packages.csv will still be used if it exists; if you want
flat packaging then specify joined.srg to --srg-in directly.)
2013-02-27 21:56:07 -08:00
Agaricus
e99d3c7ef4 Update date to 2012-2013 2013-02-27 21:18:22 -08:00
Agaricus
888aecfe22 Add support for packages.csv mappings
If packages.csv is found in a mapping directory, the
classes in .srg will be mapped through it. This is an
alternative to reading packages.srg, which isn't present
in the FML distribution (only joined.srg+packages.csv).
2013-02-27 13:35:32 -08:00
Agaricus
87a5874745 Read fields/methods.csv for MCP directory mapping loading
You can now specify an MCP config directory with --srg-in and
the .srg will be loaded along with the fields.csv and methods.csv
mappings, providing descriptive "csv" names instead of the
numeric "srg" names. Example usage:

java -jar target/SpecialSource-1.3-SNAPSHOT-shaded.jar --in-jar ../jars/minecraft_server-147.jar --srg-in ../MinecraftForge/mcp/conf/ --out-jar /tmp/minecraft-server-pkgmcp.jar

For compiling mods against the minecraft-server-pkgmcp.jar
as a library, an alternative to recompiling all of Minecraft
by using MCP (much faster, like compiling Bukkit plugins).

Note: if the fields.csv and methods.csv are not present, the
numeric "srg" names will be loaded instead.
2013-02-20 22:02:24 -08:00