This generator crafts an intermediate index format to be read by cuberite
Running
Run lua ./Generator.lua, pass blocks.json as first argument to the script
and the desired output location as 2nd argument.
Make sure to run the Generator from within its directory (cd into the path
where Generator.lua is.)
Examples
SERVER=/path/to/server.jar
java -cp "$SERVER" net.minecraft.data.Main --reports &&
lua Generator.lua \
generated/reports/blocks.json \
../../Server/Protocol/1.13/ProtocolBlockTypePalette.json
SERVER=/path/to/server.jar
java -cp "$SERVER" net.minecraft.data.Main --reports &&
lua Generator.lua - -\
< generated/reports/blocks.json \
> ../Server/Protocol/1.13/ProtocolBlockTypePalette.json
Output format
The Format is a JSON document containing an object with at least two keys at
the top level: Metadata and Palette.
Metadata contains document metadata, namely a key "ProtocolBlockType": 1.
Palette contains an array of objects. Each of these objects has at least the
keys id, name and an optional props key that contains the individual
properties of the current state. These properties are a KV dict of pure strings.
The order of the array or object elements is not significant. id is unique.
{
"Metadata": {
"ProtocolBlockType": 1
},
"Palette": [{
"id": 0,
"name": "minecraft:air"
}, {
"id": 1,
"name": "minecraft:stone"
}, {
"id": 221,
"name": "minecraft:dark_oak_leaves",
"props": {
"persistent": "false",
"distance": "4"
}
}
]
}