minecraft-jar-extractor

March 30, 2026 ยท View on GitHub

NPM version Build Status Discord Gitter Irc

Try it on gitpod

Extract structured data from the minecraft jar

image name extractor

Just run node image_names.js <version1,version2,...> <output_dir> <temporary_dir> and get a directory containing the name->texture mapping and the textures.

Result of that currently online at minecraft-assets

lang extractor

Just run node lang.js <version1,version2,...> <output_dir> <temporary_dir> and get a directory containing en_us.lang and en_us.json

protocol extractor

How to use it:

  1. node downloadDecompile.js 1.8.8 /tmp/the_output
  2. node protocol_extractor.js /tmp/the_output/decompiled
  3. get a protocol.json describing the classname<->id relation and some fields information

block loot table extractor

Only works in 1.14+ as the loot table files did not exist before this.

Make sure to first extract the data folder from Minecraft jar if not done already using: node extract_datafolder.js <version1,version2,...> <output_dir> <temporary_dir>

Next you can extract the actual loot table data to Minecraft-Data using: node extract_lootTables.js <version1,version2,...> <extractedDataFolder> <mcDataFolder>

add defaultState to a blocks.json

  1. node patch_states.js <version> blocks.json

add more accuracte drops to a blocks.json

  1. node extract_datafolder.js <version> out temp
  2. node extract_block_lootTables.js <directory with blocks.json and items.json> out/<version>/

History

1.1.0

1.0.0

  • Everything

0.0.0

  • imported from minecraft-data + description added