An open API service indexing awesome lists of open source software.

https://github.com/covers1624/fastremapper

A dead simple and fast Java jar Remapper.
https://github.com/covers1624/fastremapper

java java-bytecode minecraft objectweb-asm

Last synced: about 2 months ago
JSON representation

A dead simple and fast Java jar Remapper.

Awesome Lists containing this project

README

          

# Fast Remapper

A Fast Java jar remapper.

Supports all mapping formats supported by [SrgUtils](https://github.com/MinecraftForge/SrgUtils).

The primary purpose of this tool is to remap Minecraft, specifically with Mojang official mappings. Please ensure you are adhering to Minecraft's EULA, and Proguard log Copyright notice.

### Usage:

```
Option (* = required) Description
--------------------- -----------
-e, --exclude Excludes a class from being remapped. (startsWith
check)
-f, --flip Flip the input mappings. (Useful for proguard logs)
-h, --help Prints this help
* -i, --input Sets the input jar.
* -m, --mappings The mappings to use. [Proguard,SRG,TSRG,TSRGv2,Tiny,
Tinyv2]
* -o, --output Sets the output jar.
-v, --verbose Enables verbose logging.
```

Client Example: `java -jar FastRemapper-all.jar --input 1.16.5-client.jar --mappings 1.16.5-client.txt --flip --output 1.16.5-client-mapped.jar`
Server Example: `java -jar FastRemapper-all.jar --input 1.16.5-server.jar --mappings 1.16.5-server.txt --flip --output 1.16.5-server-mapped.jar --exclude "com.google.,com.mojang.,io.netty.,it.unimi.dsi.fastutil.,javax.,joptsimple.,org.apache."`

### Noteworthy items:

- `--flip` should be used when dealing with proguard logs (Official mappings).
- `--exclude` can be used to exclude individual files, or packages. Supports comma seperated list of partial or full class names. (String.startsWith)

### Limitations:

- Does not support mapping with reference libraries for inheritance. (Needed for remapping Mods or libraries.)
- Does not support formats which contain parameter or local variable names.

### Builds:

Builds can be downloaded directly from [maven](https://maven.covers1624.net/net/covers1624/FastRemapper).
If you intend to run the tool standalone from the command line use the '-all.jar'.

### TODO:

- [ ] Reference libraries for inheritance.
- [ ] Configurable local variable rewriting.
- [ ] Make it faster!

This project is not affiliated with Minecraft, Mojang, or Microsoft.