.. | ||
lib | ||
Generator.lua | ||
Readme.md |
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"
}
}
]
}