A repacking tool for Minecraft mods to optimize size and loading speed of mods.
serde-json
oxipng
toml
.cfg
filesThese mods were tested and repacked by MC-Repack with the following results: | File name | Original | Optimized | |----|----:|----:| | minecolonies-1.19.2-1.0.1247-BETA.jar | 72.8 MB | 65.2 MB | | twilightforest-1.19.3-4.2.1549-universal.jar | 22.5 MB | 22.0 MB | | BloodMagic-1.18.2-3.2.6-41.jar | 13.6 MB | 12.1 MB | | create-1.19.2-0.5.0.i.jar | 13.1 MB | 12.8 MB | | Botania-1.19.2-437-FORGE.jar | 10.9 MB | 10.2 MB |
Currently the only way to get this app is to use Cargo:
sh
cargo install mc-repack
If you want to test the latest version directly from this repo:
sh
cargo install --git https://github.com/szeweq/mc-repack
After installation, the tool can be used by typing the following command:
sh
mc-repack <file|directory>
When a file path is provided, then MC-Repack will repack the file contents into a $repack.jar
. If a path is a directory, then all files inside (non-recursive) will be repacked.
More options are provided by typing mc-repack --help
in a shell/terminal.
MC-Repack is meant to show how many Minecraft mods come with unoptimized files (and I don't mean just pretty-printed JSON files). You will be surprised that in some cases a PNG file's metadata added by Photoshop is much larger than its content.
One other inportant thing is that MC-Repack determines if a file really needs to be compressed. Most PNG files and smaller JSON files will usually be stored uncompressed. This kind of operation saves bytes if a "compressed" form is larger than original. Also, uncompressed data can be loaded faster.
This is a great tool that can be helpful for: - Mod developers – they can provide mods with smaller file sizes, optimized PNGs and correctly formatted JSONs - Players and server owners – optimized and repacked files can speed up Minecraft load time while using less memory.
MC-Repack shows all errors happened during repacking. Most of them are errors that can be simply ignored (like trailing comma at line X column Y
).
The easiest way to contribute is to share this with others on social media.
There is a lot of things that should be fixed or optimized. New feature ideas are welcome, just file an issue.
Yes. The tool does not recognize that a .jar
file is not a Minecraft mod.
.class
files more efficiently