| file name | info | how to get | schema |
|---|---|---|---|
| blockStates.json | Contains the global block palette for a Minecraft version. Contains all of the possible block states. The index of a Block State instance here is the paletted ID, which can be used to idenfify this block state instead of a string. |
bedrock-extractor ("BlockStates.json" file) | |
| steve.json | Skin data for clients connecting to BE servers, for default Steve character | bedrock-protocol (capture from proxy) | |
| blockMappings.json | Output of bedrock-extractor | ||
| language.json | Translation keys and their English string values. | extract-minecraft-lang (run for new version, then copy the JSON file to minecraft-data) |
- To update bedrock protocol data, open
data/bedrock/latest(or replace "latest" with some older version) and update theproto.ymlandtypes.ymlfiles. - Go to
tools/js, runnpm installthennpm run buildto update the protodef JSON files
To update to a new protocol version:
- Copy
data/bedrock/latestfiles into the old version's folder. - Open
data/bedrock/latestand update theproto.ymlandtypes.ymlfiles and update the!versionpart at the top - Go to
tools/js, runnpm installthennpm run buildto update the protodef JSON files
then run npm test to test validity
| file name | have? | how to get it | notes |
|---|---|---|---|
| protocol.json | ✔ | manual updated | wip |
| blocks.json | ✔ | bedrock-extractor | |
| items.json | ✔ | bedrock-extractor | |
| entities.json | ✔ | bedrock-extractor | |
| recipes.json | ✔ | bedrock-protocol dumper | new schema: adds furnace and other special recipes. Some recipes can have multiple outputs, also allow for recipe ingredients with damage values and specific counts. |
| blockCollisionShapes.json | ✔ | (from pc data) | New schema: block IDs map to an array of block state indexes, to get the block stateID, minStateId + index of array. This way different copies of the block with different state IDs can have unique collisions. |
| commands.json | ❌ | bedrock-protocol + dumper | must be custom schema, current JE schema too low level |
| biomes.json | ✔ | bedrock-extractor (via Amulet) | |
| instruments | ✔ | manual | |
| materials.json | 🔵 | (from pc data) | |
| windows.json | ✔ | manual obtained via proxy | |
| version.json | ✔ | from bedrock-protocol | |
| effects.json | ❌ | (from pc data) | |
| enchantments.json | ✔ | bedrock-extractor (via Geyser -> pc data) | |
| language.json | ✔ | extract-minecraft-lang (extract from dedicated server) | |
| particles.json | 🔵 | bedrock-protocol docs | IDs not needed, handled in protocol |
| blockLoot.json | 🔵 | manual data for 1.18 | |
| entityLoot.json | 🔵 | manual data for 1.18 | |
| mapIcons.json | 🔵 | ? | ? |