diff --git a/.gitignore b/.gitignore index e178126..cdbc382 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,5 @@ .vscode notchian bareiron +src/registries.c +src/registries.h diff --git a/build_registries.js b/build_registries.js new file mode 100644 index 0000000..0bf764c --- /dev/null +++ b/build_registries.js @@ -0,0 +1,227 @@ +const fs = require("fs/promises"); +const path = require("path"); + +// Extract item and block data from registry dump +async function extractItemsAndBlocks () { + + // Block network IDs are defined in their own JSON file + const blockSource = JSON.parse(await fs.readFile(`${__dirname}/notchian/generated/reports/blocks.json`, "utf8")); + // Items don't seem to have network IDs outside of registries.json + const itemSource = JSON.parse(await fs.readFile(`${__dirname}/notchian/generated/reports/registries.json`, "utf8"))["minecraft:item"].entries; + + // Sort blocks by their network ID + // Since we're only storing 256 blocks, this prioritizes the "common" ones first + const sortedBlocks = Object.entries(blockSource); + sortedBlocks.sort((a, b) => { + const aState = a[1].states.find(c => c.default); + if (!aState) return 1; + const bState = b[1].states.find(c => c.default); + if (!bState) return -1; + return aState.id - bState.id; + }); + + // Create name-id pair objects for easier parsing + const blocks = {}, items = {}; + + for (const entry of sortedBlocks) { + const defaultState = entry[1].states.find(c => c.default); + if (!defaultState) continue; + blocks[entry[0].replace("minecraft:", "")] = defaultState.id; + } + + for (const item in itemSource) { + items[item.replace("minecraft:", "")] = itemSource[item].protocol_id; + } + + /** + * Create a block network ID palette. + * The goal is to pack as many meaningful blocks into 256 IDs as + * possible. For this, we only include blocks that have corresponding + * items, outside of some exceptions. + */ + const palette = {}; + const exceptions = [ "air", "water", "lava" ]; + + // While we're at it, map block IDs to item IDs + const mapping = []; + + for (const block in blocks) { + if (!(block in items) && !exceptions.includes(block)) continue; + palette[block] = blocks[block]; + mapping.push(items[block] || 0); + if (mapping.length === 256) break; + } + + return { blocks, items, palette, mapping }; + +} + +// Write an integer as a VarInt +function writeVarInt (value) { + const bytes = []; + while (true) { + if ((value & ~0x7F) === 0) { + bytes.push(value); + return Buffer.from(bytes); + } + bytes.push((value & 0x7F) | 0x80); + value >>>= 7; + } +} + +// Scan directory recursively to find all JSON files +async function scanDirectory (basePath, currentPath = "") { + const entries = {}; + const items = await fs.readdir(path.join(basePath, currentPath), { withFileTypes: true }); + + for (const item of items) { + const relativePath = path.join(currentPath, item.name); + if (item.isDirectory()) { + const subEntries = await scanDirectory(basePath, relativePath); + Object.assign(entries, subEntries); + } else if (item.name.endsWith(".json")) { + const dirPath = path.dirname(relativePath); + const registryName = dirPath === "." ? "" : dirPath; + const entryName = path.basename(item.name, ".json"); + + if (!entries[registryName]) { + entries[registryName] = []; + } + entries[registryName].push(entryName); + } + } + + return entries; +} + +// Serialize a single registry +function serializeRegistry (name, entries) { + const parts = []; + + // Packet ID for Registry Data + parts.push(Buffer.from([0x07])); + + // Registry name + const nameBuf = Buffer.from(name, "utf8"); + parts.push(writeVarInt(nameBuf.length)); + parts.push(nameBuf); + + // Entry count + parts.push(writeVarInt(entries.length)); + + // Serialize entries + for (const entryName of entries) { + const entryBuf = Buffer.from(entryName, "utf8"); + parts.push(writeVarInt(entryBuf.length)); + parts.push(entryBuf); + parts.push(Buffer.from([0x00])); + } + + // Combine all parts + const fullData = Buffer.concat(parts); + + // Prepend packet length + const lengthBuf = writeVarInt(fullData.length); + + return Buffer.concat([lengthBuf, fullData]); +} + +// Convert to C-style hex byte array string +function toCArray (buffer) { + const hexBytes = [...buffer].map(b => `0x${b.toString(16).padStart(2, "0")}`); + const lines = []; + for (let i = 0; i < hexBytes.length; i += 12) { + lines.push(" " + hexBytes.slice(i, i + 12).join(", ")); + } + return lines.join(",\n"); +} + +const requiredRegistries = [ + "dimension_type", + "cat_variant", + "chicken_variant", + "cow_variant", + "frog_variant", + "painting_variant", + "pig_variant", + "wolf_sound_variant", + "wolf_variant", + "damage_type", + "worldgen/biome" +]; + +async function convert () { + + const inputPath = __dirname + "/notchian/generated/data/minecraft"; + const outputPath = __dirname + "/src/registries.c"; + const headerPath = __dirname + "/src/registries.h"; + + const registries = await scanDirectory(inputPath); + const buffers = []; + + for (const registry of requiredRegistries) { + if (!(registry in registries)) { + console.error(`Missing required registry "${registry}"!`); + return; + } + buffers.push(serializeRegistry(registry, registries[registry])); + } + + const itemsAndBlocks = await extractItemsAndBlocks(); + + const output = Buffer.concat(buffers); + const cArray = toCArray(output); + const sourceCode = `\ +#include +#include "registries.h" + +// Binary contents of required "Registry Data" packets +uint8_t registries_bin[] = { +${cArray} +}; + +// Block palette +uint16_t block_palette[] = { ${Object.values(itemsAndBlocks.palette).join(", ")} }; +// Block-to-item mapping +uint16_t B_to_I[] = { ${itemsAndBlocks.mapping.join(", ")} }; +// Item-to-block mapping +uint8_t I_to_B (uint16_t item) { + switch (item) { + ${itemsAndBlocks.mapping.map((c, i) => c ? `case ${c}: return ${i};\n ` : "").join("")} + default: break; + } + return 0; +} +`; + + const headerCode = `\ +#ifndef H_REGISTRIES +#define H_REGISTRIES + +#include + +extern uint8_t registries_bin[${output.length}]; + +extern uint16_t block_palette[256]; // Block palette +extern uint16_t B_to_I[256]; // Block-to-item mapping +uint8_t I_to_B (uint16_t item); // Item-to-block mapping + +// Block identifiers +${Object.keys(itemsAndBlocks.palette).map((c, i) => `#define B_${c} ${i}`).join("\n")} + +// Item identifiers +${Object.entries(itemsAndBlocks.items).map(c => `#define I_${c[0]} ${c[1]}`).join("\n")} + +// Biome identifiers +${registries["worldgen/biome"].map((c, i) => `#define W_${c} ${i}`).join("\n")} + +#endif +`; + + await fs.writeFile(outputPath, sourceCode); + await fs.writeFile(headerPath, headerCode); + console.log("Done. Wrote to `registries.c` and `registries.h`"); + +} + +convert().catch(console.error); diff --git a/src/build_registries.js b/src/build_registries.js deleted file mode 100644 index d1d62a7..0000000 --- a/src/build_registries.js +++ /dev/null @@ -1,101 +0,0 @@ -const fs = require("fs"); -const path = require("path"); - -// Write an integer as a varint -function writeVarInt(value) { - const bytes = []; - while (true) { - if ((value & ~0x7F) === 0) { - bytes.push(value); - return Buffer.from(bytes); - } - bytes.push((value & 0x7F) | 0x80); - value >>>= 7; - } -} - -// Serialize a single registry -function serializeRegistry(name, entries) { - const parts = []; - - // Write 0x07 - parts.push(Buffer.from([0x07])); - - // Registry name - const nameBuf = Buffer.from(name.replace("minecraft:", ""), "utf8"); - parts.push(writeVarInt(nameBuf.length)); - parts.push(nameBuf); - - // Entry count - const entryKeys = Object.keys(entries); - parts.push(writeVarInt(entryKeys.length)); - - // Serialize entries - for (const entryName of entryKeys) { - const entryBuf = Buffer.from(entryName.replace("minecraft:", ""), "utf8"); - parts.push(writeVarInt(entryBuf.length)); - parts.push(entryBuf); - parts.push(Buffer.from([0x00])); - } - - // Combine all parts - const fullData = Buffer.concat(parts); - - // Prepend the length of this registry block as a varint - const lengthBuf = writeVarInt(fullData.length); - - return Buffer.concat([lengthBuf, fullData]); -} - -// Convert to C-style hex byte array string -function toCArray(buffer) { - const hexBytes = [...buffer].map(b => `0x${b.toString(16).padStart(2, "0")}`); - const lines = []; - for (let i = 0; i < hexBytes.length; i += 12) { - lines.push(" " + hexBytes.slice(i, i + 12).join(", ")); - } - return lines.join(",\n"); -} - -// Main function -function convert() { - const inputPath = path.join(__dirname, "registries.json"); - const outputPath = path.join(__dirname, "_registries.c"); - const headerPath = path.join(__dirname, "_registries.h"); - - const json = JSON.parse(fs.readFileSync(inputPath, "utf8")); - - const buffers = []; - - for (const [registryName, entries] of Object.entries(json)) { - buffers.push(serializeRegistry(registryName, entries)); - } - - const output = Buffer.concat(buffers); - const cArray = toCArray(output); - const finalCode = `\ -#include -#include "registries.h" - -uint8_t registries_bin[] = { -${cArray} -}; -`; - - const headerCode = `\ -#ifndef H_REGISTRIES -#define H_REGISTRIES - -#include - -extern uint8_t registries_bin[${output.length}]; - -#endif -`; - - fs.writeFileSync(outputPath, finalCode); - fs.writeFileSync(headerPath, headerCode); - console.log("Done. Wrote to `_registries.c` and `_registries.h`"); -} - -convert(); diff --git a/src/packets.c b/src/packets.c index 04435e0..143c7ee 100644 --- a/src/packets.c +++ b/src/packets.c @@ -286,7 +286,7 @@ int sc_chunkDataAndUpdateLight (int client_fd, int _x, int _z) { } // biome data writeByte(client_fd, 0); // bits per entry - writeByte(client_fd, 21); // palette (forest) + writeByte(client_fd, W_forest); // palette } writeVarInt(client_fd, 0); // omit block entities @@ -572,26 +572,6 @@ int sc_registries (int client_fd) { printf("Sending Registries\n\n"); send(client_fd, registries_bin, sizeof(registries_bin), 0); - char wolf_sound_variant[] = { 0x07, 0x1c, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x77, 0x6f, 0x6c, 0x66, 0x5f, 0x73, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x07, 0x0f, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x61, 0x6e, 0x67, 0x72, 0x79, 0x00, 0x0d, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x62, 0x69, 0x67, 0x00, 0x11, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x63, 0x00, 0x0e, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x63, 0x75, 0x74, 0x65, 0x00, 0x10, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x67, 0x72, 0x75, 0x6d, 0x70, 0x79, 0x00, 0x10, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x70, 0x75, 0x67, 0x6c, 0x69, 0x6e, 0x00, 0x0d, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x73, 0x61, 0x64, 0x00 }; - char pig_variant[] = { 0x07, 0x15, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x70, 0x69, 0x67, 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x03, 0x0e, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x63, 0x6f, 0x6c, 0x64, 0x00, 0x13, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x74, 0x65, 0x6d, 0x70, 0x65, 0x72, 0x61, 0x74, 0x65, 0x00, 0x0e, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x77, 0x61, 0x72, 0x6d, 0x00 }; - char frog_variant[] = { 0x07, 0x16, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x66, 0x72, 0x6f, 0x67, 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x03, 0x0e, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x63, 0x6f, 0x6c, 0x64, 0x00, 0x13, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x74, 0x65, 0x6d, 0x70, 0x65, 0x72, 0x61, 0x74, 0x65, 0x00, 0x0e, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x77, 0x61, 0x72, 0x6d, 0x00 }; - char cat_variant[] = { 0x07, 0x15, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x63, 0x61, 0x74, 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x0b, 0x13, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x61, 0x6c, 0x6c, 0x5f, 0x62, 0x6c, 0x61, 0x63, 0x6b, 0x00, 0x0f, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x62, 0x6c, 0x61, 0x63, 0x6b, 0x00, 0x1b, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x62, 0x72, 0x69, 0x74, 0x69, 0x73, 0x68, 0x5f, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x68, 0x61, 0x69, 0x72, 0x00, 0x10, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x63, 0x61, 0x6c, 0x69, 0x63, 0x6f, 0x00, 0x10, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x6a, 0x65, 0x6c, 0x6c, 0x69, 0x65, 0x00, 0x11, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x70, 0x65, 0x72, 0x73, 0x69, 0x61, 0x6e, 0x00, 0x11, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x72, 0x61, 0x67, 0x64, 0x6f, 0x6c, 0x6c, 0x00, 0x0d, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x72, 0x65, 0x64, 0x00, 0x11, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x73, 0x69, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x00, 0x0f, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x74, 0x61, 0x62, 0x62, 0x79, 0x00, 0x0f, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x77, 0x68, 0x69, 0x74, 0x65, 0x00 }; - char cow_variant[] = { 0x07, 0x15, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x63, 0x6f, 0x77, 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x03, 0x0e, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x63, 0x6f, 0x6c, 0x64, 0x00, 0x13, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x74, 0x65, 0x6d, 0x70, 0x65, 0x72, 0x61, 0x74, 0x65, 0x00, 0x0e, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x77, 0x61, 0x72, 0x6d, 0x00 }; - char chicken_variant[] = { 0x07, 0x19, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x63, 0x68, 0x69, 0x63, 0x6b, 0x65, 0x6e, 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x03, 0x0e, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x63, 0x6f, 0x6c, 0x64, 0x00, 0x13, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x74, 0x65, 0x6d, 0x70, 0x65, 0x72, 0x61, 0x74, 0x65, 0x00, 0x0e, 0x6d, 0x69, 0x6e, 0x65, 0x63, 0x72, 0x61, 0x66, 0x74, 0x3a, 0x77, 0x61, 0x72, 0x6d, 0x00 }; - - writeVarInt(client_fd, sizeof(wolf_sound_variant)); - send(client_fd, &wolf_sound_variant, sizeof(wolf_sound_variant), 0); - writeVarInt(client_fd, sizeof(pig_variant)); - send(client_fd, &pig_variant, sizeof(pig_variant), 0); - writeVarInt(client_fd, sizeof(frog_variant)); - send(client_fd, &frog_variant, sizeof(frog_variant), 0); - writeVarInt(client_fd, sizeof(cat_variant)); - send(client_fd, &cat_variant, sizeof(cat_variant), 0); - writeVarInt(client_fd, sizeof(cow_variant)); - send(client_fd, &cow_variant, sizeof(cow_variant), 0); - writeVarInt(client_fd, sizeof(chicken_variant)); - send(client_fd, &chicken_variant, sizeof(chicken_variant), 0); - // update water tag writeVarInt(client_fd, 3 + 5 + 2 + 5 + 1 + 1); writeByte(client_fd, 0x0D); diff --git a/src/registries.c b/src/registries.c deleted file mode 100644 index 11a357a..0000000 --- a/src/registries.c +++ /dev/null @@ -1,529 +0,0 @@ -#include -#include "registries.h" - -// Binary contents of required "Registry Data" packets - -uint8_t registries_bin[] = { - 0xd4, 0x04, 0x07, 0x0e, 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x5f, 0x70, - 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x2b, 0x04, 0x62, 0x61, 0x73, 0x65, - 0x00, 0x06, 0x62, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x00, 0x06, 0x62, 0x72, - 0x69, 0x63, 0x6b, 0x73, 0x00, 0x06, 0x63, 0x69, 0x72, 0x63, 0x6c, 0x65, - 0x00, 0x07, 0x63, 0x72, 0x65, 0x65, 0x70, 0x65, 0x72, 0x00, 0x05, 0x63, - 0x72, 0x6f, 0x73, 0x73, 0x00, 0x0c, 0x63, 0x75, 0x72, 0x6c, 0x79, 0x5f, - 0x62, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x00, 0x0d, 0x64, 0x69, 0x61, 0x67, - 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6c, 0x65, 0x66, 0x74, 0x00, 0x0e, 0x64, - 0x69, 0x61, 0x67, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x72, 0x69, 0x67, 0x68, - 0x74, 0x00, 0x10, 0x64, 0x69, 0x61, 0x67, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, - 0x75, 0x70, 0x5f, 0x6c, 0x65, 0x66, 0x74, 0x00, 0x11, 0x64, 0x69, 0x61, - 0x67, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x75, 0x70, 0x5f, 0x72, 0x69, 0x67, - 0x68, 0x74, 0x00, 0x04, 0x66, 0x6c, 0x6f, 0x77, 0x00, 0x06, 0x66, 0x6c, - 0x6f, 0x77, 0x65, 0x72, 0x00, 0x05, 0x67, 0x6c, 0x6f, 0x62, 0x65, 0x00, - 0x08, 0x67, 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, 0x74, 0x00, 0x0b, 0x67, - 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x75, 0x70, 0x00, 0x06, - 0x67, 0x75, 0x73, 0x74, 0x65, 0x72, 0x00, 0x0f, 0x68, 0x61, 0x6c, 0x66, - 0x5f, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x6f, 0x6e, 0x74, 0x61, 0x6c, 0x00, - 0x16, 0x68, 0x61, 0x6c, 0x66, 0x5f, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x6f, - 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x62, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x00, - 0x0d, 0x68, 0x61, 0x6c, 0x66, 0x5f, 0x76, 0x65, 0x72, 0x74, 0x69, 0x63, - 0x61, 0x6c, 0x00, 0x13, 0x68, 0x61, 0x6c, 0x66, 0x5f, 0x76, 0x65, 0x72, - 0x74, 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x72, 0x69, 0x67, 0x68, 0x74, 0x00, - 0x06, 0x6d, 0x6f, 0x6a, 0x61, 0x6e, 0x67, 0x00, 0x06, 0x70, 0x69, 0x67, - 0x6c, 0x69, 0x6e, 0x00, 0x07, 0x72, 0x68, 0x6f, 0x6d, 0x62, 0x75, 0x73, - 0x00, 0x05, 0x73, 0x6b, 0x75, 0x6c, 0x6c, 0x00, 0x0d, 0x73, 0x6d, 0x61, - 0x6c, 0x6c, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x70, 0x65, 0x73, 0x00, 0x12, - 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x5f, 0x62, 0x6f, 0x74, 0x74, 0x6f, - 0x6d, 0x5f, 0x6c, 0x65, 0x66, 0x74, 0x00, 0x13, 0x73, 0x71, 0x75, 0x61, - 0x72, 0x65, 0x5f, 0x62, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x5f, 0x72, 0x69, - 0x67, 0x68, 0x74, 0x00, 0x0f, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x5f, - 0x74, 0x6f, 0x70, 0x5f, 0x6c, 0x65, 0x66, 0x74, 0x00, 0x10, 0x73, 0x71, - 0x75, 0x61, 0x72, 0x65, 0x5f, 0x74, 0x6f, 0x70, 0x5f, 0x72, 0x69, 0x67, - 0x68, 0x74, 0x00, 0x0e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x67, 0x68, 0x74, - 0x5f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x00, 0x0d, 0x73, 0x74, 0x72, 0x69, - 0x70, 0x65, 0x5f, 0x62, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x00, 0x0d, 0x73, - 0x74, 0x72, 0x69, 0x70, 0x65, 0x5f, 0x63, 0x65, 0x6e, 0x74, 0x65, 0x72, - 0x00, 0x0f, 0x73, 0x74, 0x72, 0x69, 0x70, 0x65, 0x5f, 0x64, 0x6f, 0x77, - 0x6e, 0x6c, 0x65, 0x66, 0x74, 0x00, 0x10, 0x73, 0x74, 0x72, 0x69, 0x70, - 0x65, 0x5f, 0x64, 0x6f, 0x77, 0x6e, 0x72, 0x69, 0x67, 0x68, 0x74, 0x00, - 0x0b, 0x73, 0x74, 0x72, 0x69, 0x70, 0x65, 0x5f, 0x6c, 0x65, 0x66, 0x74, - 0x00, 0x0d, 0x73, 0x74, 0x72, 0x69, 0x70, 0x65, 0x5f, 0x6d, 0x69, 0x64, - 0x64, 0x6c, 0x65, 0x00, 0x0c, 0x73, 0x74, 0x72, 0x69, 0x70, 0x65, 0x5f, - 0x72, 0x69, 0x67, 0x68, 0x74, 0x00, 0x0a, 0x73, 0x74, 0x72, 0x69, 0x70, - 0x65, 0x5f, 0x74, 0x6f, 0x70, 0x00, 0x0f, 0x74, 0x72, 0x69, 0x61, 0x6e, - 0x67, 0x6c, 0x65, 0x5f, 0x62, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x00, 0x0c, - 0x74, 0x72, 0x69, 0x61, 0x6e, 0x67, 0x6c, 0x65, 0x5f, 0x74, 0x6f, 0x70, - 0x00, 0x10, 0x74, 0x72, 0x69, 0x61, 0x6e, 0x67, 0x6c, 0x65, 0x73, 0x5f, - 0x62, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x00, 0x0d, 0x74, 0x72, 0x69, 0x61, - 0x6e, 0x67, 0x6c, 0x65, 0x73, 0x5f, 0x74, 0x6f, 0x70, 0x00, 0x90, 0x01, - 0x07, 0x09, 0x63, 0x68, 0x61, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x07, - 0x04, 0x63, 0x68, 0x61, 0x74, 0x00, 0x0d, 0x65, 0x6d, 0x6f, 0x74, 0x65, - 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x00, 0x14, 0x6d, 0x73, - 0x67, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x5f, 0x69, 0x6e, - 0x63, 0x6f, 0x6d, 0x69, 0x6e, 0x67, 0x00, 0x14, 0x6d, 0x73, 0x67, 0x5f, - 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x67, - 0x6f, 0x69, 0x6e, 0x67, 0x00, 0x0b, 0x73, 0x61, 0x79, 0x5f, 0x63, 0x6f, - 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x00, 0x19, 0x74, 0x65, 0x61, 0x6d, 0x5f, - 0x6d, 0x73, 0x67, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x5f, - 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x69, 0x6e, 0x67, 0x00, 0x19, 0x74, 0x65, - 0x61, 0x6d, 0x5f, 0x6d, 0x73, 0x67, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, - 0x6e, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x00, - 0xcb, 0x04, 0x07, 0x0b, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x74, - 0x79, 0x70, 0x65, 0x30, 0x05, 0x61, 0x72, 0x72, 0x6f, 0x77, 0x00, 0x11, - 0x62, 0x61, 0x64, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x5f, - 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x00, 0x06, 0x63, 0x61, 0x63, 0x74, 0x75, - 0x73, 0x00, 0x08, 0x63, 0x61, 0x6d, 0x70, 0x66, 0x69, 0x72, 0x65, 0x00, - 0x08, 0x63, 0x72, 0x61, 0x6d, 0x6d, 0x69, 0x6e, 0x67, 0x00, 0x0d, 0x64, - 0x72, 0x61, 0x67, 0x6f, 0x6e, 0x5f, 0x62, 0x72, 0x65, 0x61, 0x74, 0x68, - 0x00, 0x05, 0x64, 0x72, 0x6f, 0x77, 0x6e, 0x00, 0x07, 0x64, 0x72, 0x79, - 0x5f, 0x6f, 0x75, 0x74, 0x00, 0x0b, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x5f, - 0x70, 0x65, 0x61, 0x72, 0x6c, 0x00, 0x09, 0x65, 0x78, 0x70, 0x6c, 0x6f, - 0x73, 0x69, 0x6f, 0x6e, 0x00, 0x04, 0x66, 0x61, 0x6c, 0x6c, 0x00, 0x0d, - 0x66, 0x61, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x6e, 0x76, 0x69, - 0x6c, 0x00, 0x0d, 0x66, 0x61, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x5f, 0x62, - 0x6c, 0x6f, 0x63, 0x6b, 0x00, 0x12, 0x66, 0x61, 0x6c, 0x6c, 0x69, 0x6e, - 0x67, 0x5f, 0x73, 0x74, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x74, 0x65, - 0x00, 0x08, 0x66, 0x69, 0x72, 0x65, 0x62, 0x61, 0x6c, 0x6c, 0x00, 0x09, - 0x66, 0x69, 0x72, 0x65, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x00, 0x0d, 0x66, - 0x6c, 0x79, 0x5f, 0x69, 0x6e, 0x74, 0x6f, 0x5f, 0x77, 0x61, 0x6c, 0x6c, - 0x00, 0x06, 0x66, 0x72, 0x65, 0x65, 0x7a, 0x65, 0x00, 0x07, 0x67, 0x65, - 0x6e, 0x65, 0x72, 0x69, 0x63, 0x00, 0x0c, 0x67, 0x65, 0x6e, 0x65, 0x72, - 0x69, 0x63, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x00, 0x09, 0x68, 0x6f, 0x74, - 0x5f, 0x66, 0x6c, 0x6f, 0x6f, 0x72, 0x00, 0x07, 0x69, 0x6e, 0x5f, 0x66, - 0x69, 0x72, 0x65, 0x00, 0x07, 0x69, 0x6e, 0x5f, 0x77, 0x61, 0x6c, 0x6c, - 0x00, 0x0e, 0x69, 0x6e, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x5f, 0x6d, - 0x61, 0x67, 0x69, 0x63, 0x00, 0x04, 0x6c, 0x61, 0x76, 0x61, 0x00, 0x0e, - 0x6c, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x62, 0x6f, - 0x6c, 0x74, 0x00, 0x05, 0x6d, 0x61, 0x67, 0x69, 0x63, 0x00, 0x0a, 0x6d, - 0x6f, 0x62, 0x5f, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x00, 0x13, 0x6d, - 0x6f, 0x62, 0x5f, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x5f, 0x6e, 0x6f, - 0x5f, 0x61, 0x67, 0x67, 0x72, 0x6f, 0x00, 0x0e, 0x6d, 0x6f, 0x62, 0x5f, - 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6c, 0x65, 0x00, 0x07, - 0x6f, 0x6e, 0x5f, 0x66, 0x69, 0x72, 0x65, 0x00, 0x0c, 0x6f, 0x75, 0x74, - 0x5f, 0x6f, 0x66, 0x5f, 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x00, 0x0e, 0x6f, - 0x75, 0x74, 0x73, 0x69, 0x64, 0x65, 0x5f, 0x62, 0x6f, 0x72, 0x64, 0x65, - 0x72, 0x00, 0x0d, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x61, 0x74, - 0x74, 0x61, 0x63, 0x6b, 0x00, 0x10, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x73, 0x69, 0x6f, 0x6e, 0x00, 0x0a, - 0x73, 0x6f, 0x6e, 0x69, 0x63, 0x5f, 0x62, 0x6f, 0x6f, 0x6d, 0x00, 0x04, - 0x73, 0x70, 0x69, 0x74, 0x00, 0x0a, 0x73, 0x74, 0x61, 0x6c, 0x61, 0x67, - 0x6d, 0x69, 0x74, 0x65, 0x00, 0x06, 0x73, 0x74, 0x61, 0x72, 0x76, 0x65, - 0x00, 0x05, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x00, 0x10, 0x73, 0x77, 0x65, - 0x65, 0x74, 0x5f, 0x62, 0x65, 0x72, 0x72, 0x79, 0x5f, 0x62, 0x75, 0x73, - 0x68, 0x00, 0x06, 0x74, 0x68, 0x6f, 0x72, 0x6e, 0x73, 0x00, 0x06, 0x74, - 0x68, 0x72, 0x6f, 0x77, 0x6e, 0x00, 0x07, 0x74, 0x72, 0x69, 0x64, 0x65, - 0x6e, 0x74, 0x00, 0x15, 0x75, 0x6e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, - 0x75, 0x74, 0x65, 0x64, 0x5f, 0x66, 0x69, 0x72, 0x65, 0x62, 0x61, 0x6c, - 0x6c, 0x00, 0x0b, 0x77, 0x69, 0x6e, 0x64, 0x5f, 0x63, 0x68, 0x61, 0x72, - 0x67, 0x65, 0x00, 0x06, 0x77, 0x69, 0x74, 0x68, 0x65, 0x72, 0x00, 0x0c, - 0x77, 0x69, 0x74, 0x68, 0x65, 0x72, 0x5f, 0x73, 0x6b, 0x75, 0x6c, 0x6c, - 0x00, 0x42, 0x07, 0x0e, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, - 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x04, 0x09, 0x6f, 0x76, 0x65, 0x72, - 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x00, 0x0f, 0x6f, 0x76, 0x65, 0x72, 0x77, - 0x6f, 0x72, 0x6c, 0x64, 0x5f, 0x63, 0x61, 0x76, 0x65, 0x73, 0x00, 0x07, - 0x74, 0x68, 0x65, 0x5f, 0x65, 0x6e, 0x64, 0x00, 0x0a, 0x74, 0x68, 0x65, - 0x5f, 0x6e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x00, 0xc4, 0x03, 0x07, 0x10, - 0x70, 0x61, 0x69, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x76, 0x61, 0x72, - 0x69, 0x61, 0x6e, 0x74, 0x32, 0x05, 0x61, 0x6c, 0x62, 0x61, 0x6e, 0x00, - 0x05, 0x61, 0x7a, 0x74, 0x65, 0x63, 0x00, 0x06, 0x61, 0x7a, 0x74, 0x65, - 0x63, 0x32, 0x00, 0x08, 0x62, 0x61, 0x63, 0x6b, 0x79, 0x61, 0x72, 0x64, - 0x00, 0x07, 0x62, 0x61, 0x72, 0x6f, 0x71, 0x75, 0x65, 0x00, 0x04, 0x62, - 0x6f, 0x6d, 0x62, 0x00, 0x07, 0x62, 0x6f, 0x75, 0x71, 0x75, 0x65, 0x74, - 0x00, 0x0d, 0x62, 0x75, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x6b, - 0x75, 0x6c, 0x6c, 0x00, 0x04, 0x62, 0x75, 0x73, 0x74, 0x00, 0x08, 0x63, - 0x61, 0x76, 0x65, 0x62, 0x69, 0x72, 0x64, 0x00, 0x08, 0x63, 0x68, 0x61, - 0x6e, 0x67, 0x69, 0x6e, 0x67, 0x00, 0x05, 0x63, 0x6f, 0x74, 0x61, 0x6e, - 0x00, 0x07, 0x63, 0x6f, 0x75, 0x72, 0x62, 0x65, 0x74, 0x00, 0x07, 0x63, - 0x72, 0x65, 0x65, 0x62, 0x65, 0x74, 0x00, 0x0b, 0x64, 0x6f, 0x6e, 0x6b, - 0x65, 0x79, 0x5f, 0x6b, 0x6f, 0x6e, 0x67, 0x00, 0x05, 0x65, 0x61, 0x72, - 0x74, 0x68, 0x00, 0x07, 0x65, 0x6e, 0x64, 0x62, 0x6f, 0x73, 0x73, 0x00, - 0x04, 0x66, 0x65, 0x72, 0x6e, 0x00, 0x08, 0x66, 0x69, 0x67, 0x68, 0x74, - 0x65, 0x72, 0x73, 0x00, 0x07, 0x66, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, - 0x00, 0x04, 0x66, 0x69, 0x72, 0x65, 0x00, 0x06, 0x67, 0x72, 0x61, 0x68, - 0x61, 0x6d, 0x00, 0x06, 0x68, 0x75, 0x6d, 0x62, 0x6c, 0x65, 0x00, 0x05, - 0x6b, 0x65, 0x62, 0x61, 0x62, 0x00, 0x07, 0x6c, 0x6f, 0x77, 0x6d, 0x69, - 0x73, 0x74, 0x00, 0x05, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x00, 0x0a, 0x6d, - 0x65, 0x64, 0x69, 0x74, 0x61, 0x74, 0x69, 0x76, 0x65, 0x00, 0x03, 0x6f, - 0x72, 0x62, 0x00, 0x08, 0x6f, 0x77, 0x6c, 0x65, 0x6d, 0x6f, 0x6e, 0x73, - 0x00, 0x07, 0x70, 0x61, 0x73, 0x73, 0x61, 0x67, 0x65, 0x00, 0x08, 0x70, - 0x69, 0x67, 0x73, 0x63, 0x65, 0x6e, 0x65, 0x00, 0x05, 0x70, 0x6c, 0x61, - 0x6e, 0x74, 0x00, 0x07, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x00, - 0x04, 0x70, 0x6f, 0x6e, 0x64, 0x00, 0x04, 0x70, 0x6f, 0x6f, 0x6c, 0x00, - 0x0c, 0x70, 0x72, 0x61, 0x69, 0x72, 0x69, 0x65, 0x5f, 0x72, 0x69, 0x64, - 0x65, 0x00, 0x03, 0x73, 0x65, 0x61, 0x00, 0x08, 0x73, 0x6b, 0x65, 0x6c, - 0x65, 0x74, 0x6f, 0x6e, 0x00, 0x0f, 0x73, 0x6b, 0x75, 0x6c, 0x6c, 0x5f, - 0x61, 0x6e, 0x64, 0x5f, 0x72, 0x6f, 0x73, 0x65, 0x73, 0x00, 0x05, 0x73, - 0x74, 0x61, 0x67, 0x65, 0x00, 0x0a, 0x73, 0x75, 0x6e, 0x66, 0x6c, 0x6f, - 0x77, 0x65, 0x72, 0x73, 0x00, 0x06, 0x73, 0x75, 0x6e, 0x73, 0x65, 0x74, - 0x00, 0x05, 0x74, 0x69, 0x64, 0x65, 0x73, 0x00, 0x08, 0x75, 0x6e, 0x70, - 0x61, 0x63, 0x6b, 0x65, 0x64, 0x00, 0x04, 0x76, 0x6f, 0x69, 0x64, 0x00, - 0x08, 0x77, 0x61, 0x6e, 0x64, 0x65, 0x72, 0x65, 0x72, 0x00, 0x09, 0x77, - 0x61, 0x73, 0x74, 0x65, 0x6c, 0x61, 0x6e, 0x64, 0x00, 0x05, 0x77, 0x61, - 0x74, 0x65, 0x72, 0x00, 0x04, 0x77, 0x69, 0x6e, 0x64, 0x00, 0x06, 0x77, - 0x69, 0x74, 0x68, 0x65, 0x72, 0x00, 0x64, 0x07, 0x0d, 0x74, 0x72, 0x69, - 0x6d, 0x5f, 0x6d, 0x61, 0x74, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x0a, 0x08, - 0x61, 0x6d, 0x65, 0x74, 0x68, 0x79, 0x73, 0x74, 0x00, 0x06, 0x63, 0x6f, - 0x70, 0x70, 0x65, 0x72, 0x00, 0x07, 0x64, 0x69, 0x61, 0x6d, 0x6f, 0x6e, - 0x64, 0x00, 0x07, 0x65, 0x6d, 0x65, 0x72, 0x61, 0x6c, 0x64, 0x00, 0x04, - 0x67, 0x6f, 0x6c, 0x64, 0x00, 0x04, 0x69, 0x72, 0x6f, 0x6e, 0x00, 0x05, - 0x6c, 0x61, 0x70, 0x69, 0x73, 0x00, 0x09, 0x6e, 0x65, 0x74, 0x68, 0x65, - 0x72, 0x69, 0x74, 0x65, 0x00, 0x06, 0x71, 0x75, 0x61, 0x72, 0x74, 0x7a, - 0x00, 0x08, 0x72, 0x65, 0x64, 0x73, 0x74, 0x6f, 0x6e, 0x65, 0x00, 0x89, - 0x01, 0x07, 0x0c, 0x74, 0x72, 0x69, 0x6d, 0x5f, 0x70, 0x61, 0x74, 0x74, - 0x65, 0x72, 0x6e, 0x12, 0x04, 0x62, 0x6f, 0x6c, 0x74, 0x00, 0x05, 0x63, - 0x6f, 0x61, 0x73, 0x74, 0x00, 0x04, 0x64, 0x75, 0x6e, 0x65, 0x00, 0x03, - 0x65, 0x79, 0x65, 0x00, 0x04, 0x66, 0x6c, 0x6f, 0x77, 0x00, 0x04, 0x68, - 0x6f, 0x73, 0x74, 0x00, 0x06, 0x72, 0x61, 0x69, 0x73, 0x65, 0x72, 0x00, - 0x03, 0x72, 0x69, 0x62, 0x00, 0x06, 0x73, 0x65, 0x6e, 0x74, 0x72, 0x79, - 0x00, 0x06, 0x73, 0x68, 0x61, 0x70, 0x65, 0x72, 0x00, 0x07, 0x73, 0x69, - 0x6c, 0x65, 0x6e, 0x63, 0x65, 0x00, 0x05, 0x73, 0x6e, 0x6f, 0x75, 0x74, - 0x00, 0x05, 0x73, 0x70, 0x69, 0x72, 0x65, 0x00, 0x04, 0x74, 0x69, 0x64, - 0x65, 0x00, 0x03, 0x76, 0x65, 0x78, 0x00, 0x04, 0x77, 0x61, 0x72, 0x64, - 0x00, 0x09, 0x77, 0x61, 0x79, 0x66, 0x69, 0x6e, 0x64, 0x65, 0x72, 0x00, - 0x04, 0x77, 0x69, 0x6c, 0x64, 0x00, 0x54, 0x07, 0x0c, 0x77, 0x6f, 0x6c, - 0x66, 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x09, 0x05, 0x61, - 0x73, 0x68, 0x65, 0x6e, 0x00, 0x05, 0x62, 0x6c, 0x61, 0x63, 0x6b, 0x00, - 0x08, 0x63, 0x68, 0x65, 0x73, 0x74, 0x6e, 0x75, 0x74, 0x00, 0x04, 0x70, - 0x61, 0x6c, 0x65, 0x00, 0x05, 0x72, 0x75, 0x73, 0x74, 0x79, 0x00, 0x05, - 0x73, 0x6e, 0x6f, 0x77, 0x79, 0x00, 0x07, 0x73, 0x70, 0x6f, 0x74, 0x74, - 0x65, 0x64, 0x00, 0x07, 0x73, 0x74, 0x72, 0x69, 0x70, 0x65, 0x64, 0x00, - 0x05, 0x77, 0x6f, 0x6f, 0x64, 0x73, 0x00, 0x93, 0x07, 0x07, 0x0e, 0x77, - 0x6f, 0x72, 0x6c, 0x64, 0x67, 0x65, 0x6e, 0x2f, 0x62, 0x69, 0x6f, 0x6d, - 0x65, 0x40, 0x08, 0x62, 0x61, 0x64, 0x6c, 0x61, 0x6e, 0x64, 0x73, 0x00, - 0x0d, 0x62, 0x61, 0x6d, 0x62, 0x6f, 0x6f, 0x5f, 0x6a, 0x75, 0x6e, 0x67, - 0x6c, 0x65, 0x00, 0x0d, 0x62, 0x61, 0x73, 0x61, 0x6c, 0x74, 0x5f, 0x64, - 0x65, 0x6c, 0x74, 0x61, 0x73, 0x00, 0x05, 0x62, 0x65, 0x61, 0x63, 0x68, - 0x00, 0x0c, 0x62, 0x69, 0x72, 0x63, 0x68, 0x5f, 0x66, 0x6f, 0x72, 0x65, - 0x73, 0x74, 0x00, 0x0c, 0x63, 0x68, 0x65, 0x72, 0x72, 0x79, 0x5f, 0x67, - 0x72, 0x6f, 0x76, 0x65, 0x00, 0x0a, 0x63, 0x6f, 0x6c, 0x64, 0x5f, 0x6f, - 0x63, 0x65, 0x61, 0x6e, 0x00, 0x0e, 0x63, 0x72, 0x69, 0x6d, 0x73, 0x6f, - 0x6e, 0x5f, 0x66, 0x6f, 0x72, 0x65, 0x73, 0x74, 0x00, 0x0b, 0x64, 0x61, - 0x72, 0x6b, 0x5f, 0x66, 0x6f, 0x72, 0x65, 0x73, 0x74, 0x00, 0x0f, 0x64, - 0x65, 0x65, 0x70, 0x5f, 0x63, 0x6f, 0x6c, 0x64, 0x5f, 0x6f, 0x63, 0x65, - 0x61, 0x6e, 0x00, 0x09, 0x64, 0x65, 0x65, 0x70, 0x5f, 0x64, 0x61, 0x72, - 0x6b, 0x00, 0x11, 0x64, 0x65, 0x65, 0x70, 0x5f, 0x66, 0x72, 0x6f, 0x7a, - 0x65, 0x6e, 0x5f, 0x6f, 0x63, 0x65, 0x61, 0x6e, 0x00, 0x13, 0x64, 0x65, - 0x65, 0x70, 0x5f, 0x6c, 0x75, 0x6b, 0x65, 0x77, 0x61, 0x72, 0x6d, 0x5f, - 0x6f, 0x63, 0x65, 0x61, 0x6e, 0x00, 0x0a, 0x64, 0x65, 0x65, 0x70, 0x5f, - 0x6f, 0x63, 0x65, 0x61, 0x6e, 0x00, 0x06, 0x64, 0x65, 0x73, 0x65, 0x72, - 0x74, 0x00, 0x0f, 0x64, 0x72, 0x69, 0x70, 0x73, 0x74, 0x6f, 0x6e, 0x65, - 0x5f, 0x63, 0x61, 0x76, 0x65, 0x73, 0x00, 0x0b, 0x65, 0x6e, 0x64, 0x5f, - 0x62, 0x61, 0x72, 0x72, 0x65, 0x6e, 0x73, 0x00, 0x0d, 0x65, 0x6e, 0x64, - 0x5f, 0x68, 0x69, 0x67, 0x68, 0x6c, 0x61, 0x6e, 0x64, 0x73, 0x00, 0x0c, - 0x65, 0x6e, 0x64, 0x5f, 0x6d, 0x69, 0x64, 0x6c, 0x61, 0x6e, 0x64, 0x73, - 0x00, 0x0f, 0x65, 0x72, 0x6f, 0x64, 0x65, 0x64, 0x5f, 0x62, 0x61, 0x64, - 0x6c, 0x61, 0x6e, 0x64, 0x73, 0x00, 0x0d, 0x66, 0x6c, 0x6f, 0x77, 0x65, - 0x72, 0x5f, 0x66, 0x6f, 0x72, 0x65, 0x73, 0x74, 0x00, 0x06, 0x66, 0x6f, - 0x72, 0x65, 0x73, 0x74, 0x00, 0x0c, 0x66, 0x72, 0x6f, 0x7a, 0x65, 0x6e, - 0x5f, 0x6f, 0x63, 0x65, 0x61, 0x6e, 0x00, 0x0c, 0x66, 0x72, 0x6f, 0x7a, - 0x65, 0x6e, 0x5f, 0x70, 0x65, 0x61, 0x6b, 0x73, 0x00, 0x0c, 0x66, 0x72, - 0x6f, 0x7a, 0x65, 0x6e, 0x5f, 0x72, 0x69, 0x76, 0x65, 0x72, 0x00, 0x05, - 0x67, 0x72, 0x6f, 0x76, 0x65, 0x00, 0x0a, 0x69, 0x63, 0x65, 0x5f, 0x73, - 0x70, 0x69, 0x6b, 0x65, 0x73, 0x00, 0x0c, 0x6a, 0x61, 0x67, 0x67, 0x65, - 0x64, 0x5f, 0x70, 0x65, 0x61, 0x6b, 0x73, 0x00, 0x06, 0x6a, 0x75, 0x6e, - 0x67, 0x6c, 0x65, 0x00, 0x0e, 0x6c, 0x75, 0x6b, 0x65, 0x77, 0x61, 0x72, - 0x6d, 0x5f, 0x6f, 0x63, 0x65, 0x61, 0x6e, 0x00, 0x0a, 0x6c, 0x75, 0x73, - 0x68, 0x5f, 0x63, 0x61, 0x76, 0x65, 0x73, 0x00, 0x0e, 0x6d, 0x61, 0x6e, - 0x67, 0x72, 0x6f, 0x76, 0x65, 0x5f, 0x73, 0x77, 0x61, 0x6d, 0x70, 0x00, - 0x06, 0x6d, 0x65, 0x61, 0x64, 0x6f, 0x77, 0x00, 0x0f, 0x6d, 0x75, 0x73, - 0x68, 0x72, 0x6f, 0x6f, 0x6d, 0x5f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, - 0x00, 0x0d, 0x6e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x5f, 0x77, 0x61, 0x73, - 0x74, 0x65, 0x73, 0x00, 0x05, 0x6f, 0x63, 0x65, 0x61, 0x6e, 0x00, 0x17, - 0x6f, 0x6c, 0x64, 0x5f, 0x67, 0x72, 0x6f, 0x77, 0x74, 0x68, 0x5f, 0x62, - 0x69, 0x72, 0x63, 0x68, 0x5f, 0x66, 0x6f, 0x72, 0x65, 0x73, 0x74, 0x00, - 0x15, 0x6f, 0x6c, 0x64, 0x5f, 0x67, 0x72, 0x6f, 0x77, 0x74, 0x68, 0x5f, - 0x70, 0x69, 0x6e, 0x65, 0x5f, 0x74, 0x61, 0x69, 0x67, 0x61, 0x00, 0x17, - 0x6f, 0x6c, 0x64, 0x5f, 0x67, 0x72, 0x6f, 0x77, 0x74, 0x68, 0x5f, 0x73, - 0x70, 0x72, 0x75, 0x63, 0x65, 0x5f, 0x74, 0x61, 0x69, 0x67, 0x61, 0x00, - 0x06, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x73, 0x00, 0x05, 0x72, 0x69, 0x76, - 0x65, 0x72, 0x00, 0x07, 0x73, 0x61, 0x76, 0x61, 0x6e, 0x6e, 0x61, 0x00, - 0x0f, 0x73, 0x61, 0x76, 0x61, 0x6e, 0x6e, 0x61, 0x5f, 0x70, 0x6c, 0x61, - 0x74, 0x65, 0x61, 0x75, 0x00, 0x11, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x5f, - 0x65, 0x6e, 0x64, 0x5f, 0x69, 0x73, 0x6c, 0x61, 0x6e, 0x64, 0x73, 0x00, - 0x0b, 0x73, 0x6e, 0x6f, 0x77, 0x79, 0x5f, 0x62, 0x65, 0x61, 0x63, 0x68, - 0x00, 0x0c, 0x73, 0x6e, 0x6f, 0x77, 0x79, 0x5f, 0x70, 0x6c, 0x61, 0x69, - 0x6e, 0x73, 0x00, 0x0c, 0x73, 0x6e, 0x6f, 0x77, 0x79, 0x5f, 0x73, 0x6c, - 0x6f, 0x70, 0x65, 0x73, 0x00, 0x0b, 0x73, 0x6e, 0x6f, 0x77, 0x79, 0x5f, - 0x74, 0x61, 0x69, 0x67, 0x61, 0x00, 0x10, 0x73, 0x6f, 0x75, 0x6c, 0x5f, - 0x73, 0x61, 0x6e, 0x64, 0x5f, 0x76, 0x61, 0x6c, 0x6c, 0x65, 0x79, 0x00, - 0x0d, 0x73, 0x70, 0x61, 0x72, 0x73, 0x65, 0x5f, 0x6a, 0x75, 0x6e, 0x67, - 0x6c, 0x65, 0x00, 0x0b, 0x73, 0x74, 0x6f, 0x6e, 0x79, 0x5f, 0x70, 0x65, - 0x61, 0x6b, 0x73, 0x00, 0x0b, 0x73, 0x74, 0x6f, 0x6e, 0x79, 0x5f, 0x73, - 0x68, 0x6f, 0x72, 0x65, 0x00, 0x10, 0x73, 0x75, 0x6e, 0x66, 0x6c, 0x6f, - 0x77, 0x65, 0x72, 0x5f, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x73, 0x00, 0x05, - 0x73, 0x77, 0x61, 0x6d, 0x70, 0x00, 0x05, 0x74, 0x61, 0x69, 0x67, 0x61, - 0x00, 0x07, 0x74, 0x68, 0x65, 0x5f, 0x65, 0x6e, 0x64, 0x00, 0x08, 0x74, - 0x68, 0x65, 0x5f, 0x76, 0x6f, 0x69, 0x64, 0x00, 0x0a, 0x77, 0x61, 0x72, - 0x6d, 0x5f, 0x6f, 0x63, 0x65, 0x61, 0x6e, 0x00, 0x0d, 0x77, 0x61, 0x72, - 0x70, 0x65, 0x64, 0x5f, 0x66, 0x6f, 0x72, 0x65, 0x73, 0x74, 0x00, 0x10, - 0x77, 0x69, 0x6e, 0x64, 0x73, 0x77, 0x65, 0x70, 0x74, 0x5f, 0x66, 0x6f, - 0x72, 0x65, 0x73, 0x74, 0x00, 0x18, 0x77, 0x69, 0x6e, 0x64, 0x73, 0x77, - 0x65, 0x70, 0x74, 0x5f, 0x67, 0x72, 0x61, 0x76, 0x65, 0x6c, 0x6c, 0x79, - 0x5f, 0x68, 0x69, 0x6c, 0x6c, 0x73, 0x00, 0x0f, 0x77, 0x69, 0x6e, 0x64, - 0x73, 0x77, 0x65, 0x70, 0x74, 0x5f, 0x68, 0x69, 0x6c, 0x6c, 0x73, 0x00, - 0x11, 0x77, 0x69, 0x6e, 0x64, 0x73, 0x77, 0x65, 0x70, 0x74, 0x5f, 0x73, - 0x61, 0x76, 0x61, 0x6e, 0x6e, 0x61, 0x00, 0x0f, 0x77, 0x6f, 0x6f, 0x64, - 0x65, 0x64, 0x5f, 0x62, 0x61, 0x64, 0x6c, 0x61, 0x6e, 0x64, 0x73, 0x00 -}; - -// Block palette -uint16_t block_palette[] = { 0, 1, 2, 3, 4, 5, 6, 7, 9, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 23, 25, 26, 27, 28, 29, 31, 33, 35, 37, 39, 41, 43, 50, 85, 86, 118, 119, 123, 124, 125, 129, 130, 131, 132, 133, 134, 135, 137, 140, 143, 146, 149, 152, 155, 158, 161, 164, 166, 169, 172, 175, 178, 181, 184, 187, 190, 193, 196, 199, 202, 205, 208, 211, 214, 217, 220, 223, 226, 229, 232, 235, 238, 241, 244, 247, 250, 279, 307, 335, 363, 391, 419, 447, 475, 503, 531, 559, 560, 561, 562, 563, 564, 565, 567, 578, 579, 580, 582, 1734, 1750, 1766, 1782, 1798, 1814, 1830, 1846, 1862, 1878, 1894, 1910, 1926, 1942, 1958, 1974, 2000, 2024, 2041, 2047, 2048, 2049, 2050, 2051, 2052, 2053, 2054, 2063, 2093, 2094, 2095, 2096, 2097, 2098, 2099, 2100, 2101, 2102, 2103, 2104, 2105, 2106, 2107, 2108, 2121, 2122, 2123, 2124, 2125, 2126, 2127, 2128, 2129, 2130, 2131, 2132, 2133, 2134, 2135, 2136, 2137, 2138, 2139, 2141, 2142, 2206, 2399, 2400, 2401, 2919, 2927, 2949, 3019, 4338, 4339, 4340, 4341, 4342, 4350, 4359, 4367, 4399, 4431, 4463, 4495, 4527, 4559, 4591, 4623, 4655, 4697, 4751, 4759, 4789, 4971, 5035, 5099, 5163, 5227, 5291, 5355, 5419, 5483, 5547, 5611, 5675, 5811, 5827, 5839, 5893, 5895, 5897, 5899, 5901, 5903, 5905, 5907, 5909, 5911, 5913, 5915, 5916, 5935, 5950, 5958, 5959, 5960, 5976, 5977, 5978, 5995, 6027, 6028, 6029, 6030, 6032, 6035, 6037, 6042, 6045, 6049, 6053, 6063, 6124, 6125, 6126, 6127 }; -// Block-to-item mapping -uint8_t B_to_I[] = { 0, 1, 2, 3, 4, 5, 6, 7, 27, 28, 29, 30, 35, 36, 37, 38, 39, 40, 41, 42, 177, 43, 44, 45, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 0, 59, 60, 62, 63, 61, 70, 71, 66, 67, 64, 65, 80, 134, 135, 136, 137, 138, 139, 141, 140, 142, 143, 144, 147, 149, 150, 151, 152, 153, 154, 155, 148, 156, 170, 171, 172, 173, 174, 175, 176, 178, 179, 159, 160, 161, 162, 163, 164, 165, 166, 167, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 76, 77, 197, 0, 198, 199, 200, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 201, 202, 203, 207, 204, 209, 210, 211, 0, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 244, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 243, 242, 247, 248, 92, 90, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 78, 79, 93, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 72, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; // 256 -// Item-to-block mapping -uint8_t I_to_B (uint16_t item) { - if (item == 0) return 0; - if (item == 1) return 1; - if (item == 2) return 2; - if (item == 3) return 3; - if (item == 4) return 4; - if (item == 5) return 5; - if (item == 6) return 6; - if (item == 7) return 7; - if (item == 27) return 8; - if (item == 28) return 9; - if (item == 29) return 10; - if (item == 30) return 11; - if (item == 35) return 12; - if (item == 36) return 13; - if (item == 37) return 14; - if (item == 38) return 15; - if (item == 39) return 16; - if (item == 40) return 17; - if (item == 41) return 18; - if (item == 42) return 19; - if (item == 177) return 20; - if (item == 43) return 21; - if (item == 44) return 22; - if (item == 45) return 23; - if (item == 48) return 24; - if (item == 49) return 25; - if (item == 50) return 26; - if (item == 51) return 27; - if (item == 52) return 28; - if (item == 53) return 29; - if (item == 54) return 30; - if (item == 55) return 31; - if (item == 56) return 32; - if (item == 57) return 33; - if (item == 58) return 34; - if (item == 59) return 36; - if (item == 60) return 37; - if (item == 62) return 38; - if (item == 63) return 39; - if (item == 61) return 40; - if (item == 70) return 41; - if (item == 71) return 42; - if (item == 66) return 43; - if (item == 67) return 44; - if (item == 64) return 45; - if (item == 65) return 46; - if (item == 80) return 47; - if (item == 134) return 48; - if (item == 135) return 49; - if (item == 136) return 50; - if (item == 137) return 51; - if (item == 138) return 52; - if (item == 139) return 53; - if (item == 141) return 54; - if (item == 140) return 55; - if (item == 142) return 56; - if (item == 143) return 57; - if (item == 144) return 58; - if (item == 147) return 59; - if (item == 149) return 60; - if (item == 150) return 61; - if (item == 151) return 62; - if (item == 152) return 63; - if (item == 153) return 64; - if (item == 154) return 65; - if (item == 155) return 66; - if (item == 148) return 67; - if (item == 156) return 68; - if (item == 170) return 69; - if (item == 171) return 70; - if (item == 172) return 71; - if (item == 173) return 72; - if (item == 174) return 73; - if (item == 175) return 74; - if (item == 176) return 75; - if (item == 178) return 76; - if (item == 179) return 77; - if (item == 159) return 78; - if (item == 160) return 79; - if (item == 161) return 80; - if (item == 162) return 81; - if (item == 163) return 82; - if (item == 164) return 83; - if (item == 165) return 84; - if (item == 166) return 85; - if (item == 167) return 86; - if (item == 182) return 87; - if (item == 183) return 88; - if (item == 184) return 89; - if (item == 185) return 90; - if (item == 186) return 91; - if (item == 187) return 92; - if (item == 188) return 93; - if (item == 189) return 94; - if (item == 190) return 95; - if (item == 191) return 96; - if (item == 192) return 97; - if (item == 193) return 98; - if (item == 194) return 99; - if (item == 195) return 100; - if (item == 76) return 101; - if (item == 77) return 102; - if (item == 197) return 103; - if (item == 699) return 104; - if (item == 198) return 105; - if (item == 199) return 106; - if (item == 200) return 107; - if (item == 712) return 108; - if (item == 1041) return 109; - if (item == 1042) return 110; - if (item == 1043) return 111; - if (item == 1044) return 112; - if (item == 1045) return 113; - if (item == 1046) return 114; - if (item == 1047) return 115; - if (item == 1048) return 116; - if (item == 1049) return 117; - if (item == 1050) return 118; - if (item == 1051) return 119; - if (item == 1052) return 120; - if (item == 1053) return 121; - if (item == 1054) return 122; - if (item == 1055) return 123; - if (item == 1056) return 124; - if (item == 797) return 125; - if (item == 798) return 126; - if (item == 694) return 127; - if (item == 201) return 128; - if (item == 202) return 129; - if (item == 203) return 130; - if (item == 207) return 131; - if (item == 204) return 132; - if (item == 209) return 133; - if (item == 210) return 134; - if (item == 211) return 135; - if (item == 693) return 136; - if (item == 213) return 137; - if (item == 214) return 138; - if (item == 215) return 139; - if (item == 216) return 140; - if (item == 217) return 141; - if (item == 218) return 142; - if (item == 219) return 143; - if (item == 220) return 144; - if (item == 221) return 145; - if (item == 222) return 146; - if (item == 223) return 147; - if (item == 224) return 148; - if (item == 225) return 149; - if (item == 226) return 150; - if (item == 227) return 151; - if (item == 228) return 152; - if (item == 229) return 153; - if (item == 244) return 154; - if (item == 232) return 155; - if (item == 233) return 156; - if (item == 234) return 157; - if (item == 235) return 158; - if (item == 236) return 159; - if (item == 237) return 160; - if (item == 238) return 161; - if (item == 239) return 162; - if (item == 240) return 163; - if (item == 241) return 164; - if (item == 243) return 165; - if (item == 242) return 166; - if (item == 247) return 167; - if (item == 248) return 168; - if (item == 92) return 169; - if (item == 90) return 170; - if (item == 304) return 171; - if (item == 710) return 172; - if (item == 305) return 173; - if (item == 306) return 174; - if (item == 308) return 175; - if (item == 309) return 176; - if (item == 310) return 177; - if (item == 317) return 178; - if (item == 318) return 179; - if (item == 412) return 180; - if (item == 319) return 181; - if (item == 78) return 182; - if (item == 79) return 183; - if (item == 93) return 184; - if (item == 320) return 185; - if (item == 911) return 186; - if (item == 321) return 187; - if (item == 322) return 188; - if (item == 943) return 189; - if (item == 944) return 190; - if (item == 945) return 191; - if (item == 947) return 192; - if (item == 948) return 193; - if (item == 946) return 194; - if (item == 949) return 195; - if (item == 950) return 196; - if (item == 951) return 197; - if (item == 952) return 198; - if (item == 744) return 199; - if (item == 323) return 200; - if (item == 799) return 201; - if (item == 324) return 202; - if (item == 955) return 203; - if (item == 956) return 204; - if (item == 957) return 205; - if (item == 959) return 206; - if (item == 960) return 207; - if (item == 958) return 208; - if (item == 961) return 209; - if (item == 962) return 210; - if (item == 965) return 211; - if (item == 966) return 212; - if (item == 963) return 213; - if (item == 964) return 214; - if (item == 703) return 215; - if (item == 727) return 216; - if (item == 743) return 217; - if (item == 731) return 218; - if (item == 732) return 219; - if (item == 733) return 220; - if (item == 734) return 221; - if (item == 735) return 222; - if (item == 736) return 223; - if (item == 737) return 224; - if (item == 738) return 225; - if (item == 739) return 226; - if (item == 740) return 227; - if (item == 72) return 228; - if (item == 73) return 229; - if (item == 689) return 230; - if (item == 713) return 231; - if (item == 325) return 232; - if (item == 326) return 233; - if (item == 327) return 234; - if (item == 328) return 235; - if (item == 329) return 236; - if (item == 330) return 237; - if (item == 256) return 238; - if (item == 331) return 239; - if (item == 332) return 240; - if (item == 347) return 241; - if (item == 348) return 242; - if (item == 349) return 243; - if (item == 350) return 244; - if (item == 351) return 245; - if (item == 353) return 246; - if (item == 354) return 247; - if (item == 345) return 248; - if (item == 346) return 249; - if (item == 1040) return 250; - if (item == 691) return 251; - if (item == 501) return 252; - if (item == 502) return 253; - if (item == 503) return 254; - if (item == 504) return 255; - return 0; -} \ No newline at end of file diff --git a/src/registries.h b/src/registries.h deleted file mode 100644 index 5f4ff0a..0000000 --- a/src/registries.h +++ /dev/null @@ -1,1688 +0,0 @@ -#ifndef H_REGISTRIES -#define H_REGISTRIES - -#include - -extern uint8_t registries_bin[3096]; - -extern uint16_t block_palette[256]; // Block palette -extern uint8_t B_to_I[256]; // Block-to-item mapping -uint8_t I_to_B (uint16_t item); // Item-to-block mapping - -// Block identifiers -#define B_acacia_hanging_sign 206 -#define B_acacia_leaves 91 -#define B_acacia_log 52 -#define B_acacia_planks 17 -#define B_acacia_pressure_plate 222 -#define B_acacia_sapling 29 -#define B_acacia_sign 192 -#define B_acacia_wood 74 -#define B_air 0 -#define B_allium 157 -#define B_andesite 6 -#define B_azalea_leaves 96 -#define B_azure_bluet 158 -#define B_bamboo_block 59 -#define B_bamboo_hanging_sign 214 -#define B_bamboo_mosaic 24 -#define B_bamboo_planks 23 -#define B_bamboo_pressure_plate 227 -#define B_bamboo_sign 198 -#define B_basalt 244 -#define B_bedrock 34 -#define B_birch_hanging_sign 205 -#define B_birch_leaves 89 -#define B_birch_log 50 -#define B_birch_planks 15 -#define B_birch_pressure_plate 220 -#define B_birch_sapling 27 -#define B_birch_sign 191 -#define B_birch_wood 72 -#define B_black_bed 124 -#define B_black_wool 152 -#define B_blue_bed 120 -#define B_blue_orchid 156 -#define B_blue_wool 148 -#define B_bookshelf 173 -#define B_bricks 171 -#define B_brown_bed 121 -#define B_brown_mushroom 167 -#define B_brown_wool 149 -#define B_bush 132 -#define B_cactus 235 -#define B_cactus_flower 236 -#define B_cake 250 -#define B_carved_pumpkin 248 -#define B_cherry_hanging_sign 207 -#define B_cherry_leaves 92 -#define B_cherry_log 53 -#define B_cherry_planks 18 -#define B_cherry_pressure_plate 223 -#define B_cherry_sapling 30 -#define B_cherry_sign 193 -#define B_cherry_wood 75 -#define B_chest 181 -#define B_chiseled_bookshelf 174 -#define B_chiseled_sandstone 106 -#define B_clay 237 -#define B_coal_ore 45 -#define B_coarse_dirt 10 -#define B_cobblestone 12 -#define B_cobblestone_stairs 202 -#define B_cobweb 128 -#define B_cornflower 164 -#define B_crafting_table 185 -#define B_creaking_heart 179 -#define B_crimson_hanging_sign 211 -#define B_cut_sandstone 107 -#define B_cyan_bed 118 -#define B_cyan_wool 146 -#define B_dandelion 153 -#define B_dark_oak_hanging_sign 209 -#define B_dark_oak_leaves 93 -#define B_dark_oak_log 54 -#define B_dark_oak_planks 19 -#define B_dark_oak_pressure_plate 224 -#define B_dark_oak_sapling 31 -#define B_dark_oak_sign 195 -#define B_dark_oak_wood 76 -#define B_dead_bush 131 -#define B_deepslate_coal_ore 46 -#define B_deepslate_diamond_ore 183 -#define B_deepslate_gold_ore 42 -#define B_deepslate_iron_ore 44 -#define B_deepslate_lapis_ore 102 -#define B_deepslate_redstone_ore 229 -#define B_detector_rail 126 -#define B_diamond_block 184 -#define B_diamond_ore 182 -#define B_diorite 4 -#define B_dirt 9 -#define B_dispenser 104 -#define B_farmland 187 -#define B_fern 130 -#define B_flowering_azalea_leaves 97 -#define B_furnace 188 -#define B_glass 100 -#define B_glowstone 247 -#define B_gold_block 169 -#define B_gold_ore 41 -#define B_granite 2 -#define B_grass_block 8 -#define B_gravel 39 -#define B_gray_bed 116 -#define B_gray_wool 144 -#define B_green_bed 122 -#define B_green_wool 150 -#define B_ice 233 -#define B_iron_block 170 -#define B_iron_door 217 -#define B_iron_ore 43 -#define B_jack_o_lantern 249 -#define B_jukebox 239 -#define B_jungle_hanging_sign 208 -#define B_jungle_leaves 90 -#define B_jungle_log 51 -#define B_jungle_planks 16 -#define B_jungle_pressure_plate 221 -#define B_jungle_sapling 28 -#define B_jungle_sign 194 -#define B_jungle_wood 73 -#define B_ladder 200 -#define B_lapis_block 103 -#define B_lapis_ore 101 -#define B_lever 215 -#define B_light_blue_bed 112 -#define B_light_blue_stained_glass 255 -#define B_light_blue_wool 140 -#define B_light_gray_bed 117 -#define B_light_gray_wool 145 -#define B_lily_of_the_valley 166 -#define B_lime_bed 114 -#define B_lime_wool 142 -#define B_magenta_bed 111 -#define B_magenta_stained_glass 254 -#define B_magenta_wool 139 -#define B_mangrove_hanging_sign 213 -#define B_mangrove_leaves 95 -#define B_mangrove_log 56 -#define B_mangrove_planks 22 -#define B_mangrove_pressure_plate 226 -#define B_mangrove_propagule 33 -#define B_mangrove_roots 57 -#define B_mangrove_sign 197 -#define B_mangrove_wood 77 -#define B_mossy_cobblestone 175 -#define B_muddy_mangrove_roots 58 -#define B_nether_gold_ore 47 -#define B_netherrack 241 -#define B_note_block 108 -#define B_oak_door 199 -#define B_oak_fence 240 -#define B_oak_hanging_sign 203 -#define B_oak_leaves 87 -#define B_oak_log 48 -#define B_oak_planks 13 -#define B_oak_pressure_plate 218 -#define B_oak_sapling 25 -#define B_oak_sign 189 -#define B_oak_stairs 180 -#define B_oak_wood 70 -#define B_obsidian 176 -#define B_orange_bed 110 -#define B_orange_stained_glass 253 -#define B_orange_tulip 160 -#define B_orange_wool 138 -#define B_oxeye_daisy 163 -#define B_pale_oak_hanging_sign 210 -#define B_pale_oak_leaves 94 -#define B_pale_oak_log 55 -#define B_pale_oak_planks 21 -#define B_pale_oak_pressure_plate 225 -#define B_pale_oak_sapling 32 -#define B_pale_oak_sign 196 -#define B_pale_oak_wood 20 -#define B_pink_bed 115 -#define B_pink_tulip 162 -#define B_pink_wool 143 -#define B_piston 136 -#define B_podzol 11 -#define B_polished_andesite 7 -#define B_polished_basalt 245 -#define B_polished_diorite 5 -#define B_polished_granite 3 -#define B_poppy 155 -#define B_powered_rail 125 -#define B_purple_bed 119 -#define B_purple_wool 147 -#define B_rail 201 -#define B_red_bed 123 -#define B_red_mushroom 168 -#define B_red_sand 38 -#define B_red_tulip 159 -#define B_red_wool 151 -#define B_redstone_ore 228 -#define B_redstone_torch 230 -#define B_repeater 251 -#define B_sand 36 -#define B_sandstone 105 -#define B_seagrass 135 -#define B_short_dry_grass 133 -#define B_short_grass 129 -#define B_snow 232 -#define B_snow_block 234 -#define B_soul_sand 242 -#define B_soul_soil 243 -#define B_soul_torch 246 -#define B_spawner 178 -#define B_sponge 98 -#define B_spruce_hanging_sign 204 -#define B_spruce_leaves 88 -#define B_spruce_log 49 -#define B_spruce_planks 14 -#define B_spruce_pressure_plate 219 -#define B_spruce_sapling 26 -#define B_spruce_sign 190 -#define B_spruce_wood 71 -#define B_sticky_piston 127 -#define B_stone 1 -#define B_stone_button 231 -#define B_stone_pressure_plate 216 -#define B_stripped_acacia_log 63 -#define B_stripped_acacia_wood 82 -#define B_stripped_bamboo_block 69 -#define B_stripped_birch_log 61 -#define B_stripped_birch_wood 80 -#define B_stripped_cherry_log 64 -#define B_stripped_cherry_wood 83 -#define B_stripped_dark_oak_log 65 -#define B_stripped_dark_oak_wood 84 -#define B_stripped_jungle_log 62 -#define B_stripped_jungle_wood 81 -#define B_stripped_mangrove_log 68 -#define B_stripped_mangrove_wood 86 -#define B_stripped_oak_log 67 -#define B_stripped_oak_wood 78 -#define B_stripped_pale_oak_log 66 -#define B_stripped_pale_oak_wood 85 -#define B_stripped_spruce_log 60 -#define B_stripped_spruce_wood 79 -#define B_sugar_cane 238 -#define B_suspicious_gravel 40 -#define B_suspicious_sand 37 -#define B_tall_dry_grass 134 -#define B_tnt 172 -#define B_torch 177 -#define B_torchflower 154 -#define B_warped_hanging_sign 212 -#define B_water 35 -#define B_wet_sponge 99 -#define B_wheat 186 -#define B_white_bed 109 -#define B_white_stained_glass 252 -#define B_white_tulip 161 -#define B_white_wool 137 -#define B_wither_rose 165 -#define B_yellow_bed 113 -#define B_yellow_wool 141 - -// Item identifiers -#define I_acacia_boat 835 -#define I_acacia_button 719 -#define I_acacia_chest_boat 836 -#define I_acacia_door 748 -#define I_acacia_fence 336 -#define I_acacia_fence_gate 789 -#define I_acacia_hanging_sign 959 -#define I_acacia_leaves 186 -#define I_acacia_log 138 -#define I_acacia_planks 40 -#define I_acacia_pressure_plate 735 -#define I_acacia_sapling 53 -#define I_acacia_sign 947 -#define I_acacia_slab 274 -#define I_acacia_stairs 416 -#define I_acacia_trapdoor 769 -#define I_acacia_wood 175 -#define I_activator_rail 800 -#define I_air 0 -#define I_allay_spawn_egg 1086 -#define I_allium 234 -#define I_amethyst_block 88 -#define I_amethyst_cluster 1345 -#define I_amethyst_shard 866 -#define I_ancient_debris 82 -#define I_andesite 6 -#define I_andesite_slab 679 -#define I_andesite_stairs 662 -#define I_andesite_wall 437 -#define I_angler_pottery_sherd 1372 -#define I_anvil 449 -#define I_apple 857 -#define I_archer_pottery_sherd 1373 -#define I_armadillo_scute 853 -#define I_armadillo_spawn_egg 1085 -#define I_armor_stand 1204 -#define I_arms_up_pottery_sherd 1374 -#define I_arrow 859 -#define I_axolotl_bucket 978 -#define I_axolotl_spawn_egg 1087 -#define I_azalea 205 -#define I_azalea_leaves 191 -#define I_azure_bluet 235 -#define I_baked_potato 1179 -#define I_bamboo 269 -#define I_bamboo_block 147 -#define I_bamboo_button 724 -#define I_bamboo_chest_raft 846 -#define I_bamboo_door 753 -#define I_bamboo_fence 341 -#define I_bamboo_fence_gate 794 -#define I_bamboo_hanging_sign 964 -#define I_bamboo_mosaic 48 -#define I_bamboo_mosaic_slab 280 -#define I_bamboo_mosaic_stairs 422 -#define I_bamboo_planks 45 -#define I_bamboo_pressure_plate 740 -#define I_bamboo_raft 845 -#define I_bamboo_sign 952 -#define I_bamboo_slab 279 -#define I_bamboo_stairs 421 -#define I_bamboo_trapdoor 774 -#define I_barrel 1289 -#define I_barrier 473 -#define I_basalt 350 -#define I_bat_spawn_egg 1088 -#define I_beacon 426 -#define I_bedrock 58 -#define I_bee_nest 1306 -#define I_bee_spawn_egg 1089 -#define I_beef 1065 -#define I_beehive 1307 -#define I_beetroot 1235 -#define I_beetroot_seeds 1236 -#define I_beetroot_soup 1237 -#define I_bell 1297 -#define I_big_dripleaf 267 -#define I_birch_boat 831 -#define I_birch_button 717 -#define I_birch_chest_boat 832 -#define I_birch_door 746 -#define I_birch_fence 334 -#define I_birch_fence_gate 787 -#define I_birch_hanging_sign 957 -#define I_birch_leaves 184 -#define I_birch_log 136 -#define I_birch_planks 38 -#define I_birch_pressure_plate 733 -#define I_birch_sapling 51 -#define I_birch_sign 945 -#define I_birch_slab 272 -#define I_birch_stairs 414 -#define I_birch_trapdoor 767 -#define I_birch_wood 173 -#define I_black_banner 1229 -#define I_black_bed 1056 -#define I_black_bundle 1007 -#define I_black_candle 1341 -#define I_black_carpet 491 -#define I_black_concrete 600 -#define I_black_concrete_powder 616 -#define I_black_dye 1036 -#define I_black_glazed_terracotta 584 -#define I_black_harness 817 -#define I_black_shulker_box 568 -#define I_black_stained_glass 516 -#define I_black_stained_glass_pane 532 -#define I_black_terracotta 472 -#define I_black_wool 228 -#define I_blackstone 1312 -#define I_blackstone_slab 1313 -#define I_blackstone_stairs 1314 -#define I_blackstone_wall 442 -#define I_blade_pottery_sherd 1375 -#define I_blast_furnace 1291 -#define I_blaze_powder 1079 -#define I_blaze_rod 1071 -#define I_blaze_spawn_egg 1090 -#define I_blue_banner 1225 -#define I_blue_bed 1052 -#define I_blue_bundle 1003 -#define I_blue_candle 1337 -#define I_blue_carpet 487 -#define I_blue_concrete 596 -#define I_blue_concrete_powder 612 -#define I_blue_dye 1032 -#define I_blue_egg 987 -#define I_blue_glazed_terracotta 580 -#define I_blue_harness 813 -#define I_blue_ice 650 -#define I_blue_orchid 233 -#define I_blue_shulker_box 564 -#define I_blue_stained_glass 512 -#define I_blue_stained_glass_pane 528 -#define I_blue_terracotta 468 -#define I_blue_wool 224 -#define I_bogged_spawn_egg 1091 -#define I_bolt_armor_trim_smithing_template 1371 -#define I_bone 1038 -#define I_bone_block 550 -#define I_bone_meal 1037 -#define I_book 984 -#define I_bookshelf 305 -#define I_bordure_indented_banner_pattern 1286 -#define I_bow 858 -#define I_bowl 856 -#define I_brain_coral 631 -#define I_brain_coral_block 626 -#define I_brain_coral_fan 641 -#define I_bread 912 -#define I_breeze_rod 1172 -#define I_breeze_spawn_egg 1092 -#define I_brewer_pottery_sherd 1376 -#define I_brewing_stand 1081 -#define I_brick 980 -#define I_brick_slab 289 -#define I_brick_stairs 390 -#define I_brick_wall 429 -#define I_bricks 304 -#define I_brown_banner 1226 -#define I_brown_bed 1053 -#define I_brown_bundle 1004 -#define I_brown_candle 1338 -#define I_brown_carpet 488 -#define I_brown_concrete 597 -#define I_brown_concrete_powder 613 -#define I_brown_dye 1033 -#define I_brown_egg 988 -#define I_brown_glazed_terracotta 581 -#define I_brown_harness 814 -#define I_brown_mushroom 247 -#define I_brown_mushroom_block 374 -#define I_brown_shulker_box 565 -#define I_brown_stained_glass 513 -#define I_brown_stained_glass_pane 529 -#define I_brown_terracotta 469 -#define I_brown_wool 225 -#define I_brush 1352 -#define I_bubble_coral 632 -#define I_bubble_coral_block 627 -#define I_bubble_coral_fan 642 -#define I_bucket 967 -#define I_budding_amethyst 89 -#define I_bundle 991 -#define I_burn_pottery_sherd 1377 -#define I_bush 204 -#define I_cactus 328 -#define I_cactus_flower 329 -#define I_cake 1040 -#define I_calcite 11 -#define I_calibrated_sculk_sensor 707 -#define I_camel_spawn_egg 1094 -#define I_campfire 1302 -#define I_candle 1325 -#define I_carrot 1177 -#define I_carrot_on_a_stick 823 -#define I_cartography_table 1292 -#define I_carved_pumpkin 345 -#define I_cat_spawn_egg 1093 -#define I_cauldron 1082 -#define I_cave_spider_spawn_egg 1095 -#define I_chain 378 -#define I_chain_command_block 545 -#define I_chainmail_boots 920 -#define I_chainmail_chestplate 918 -#define I_chainmail_helmet 917 -#define I_chainmail_leggings 919 -#define I_charcoal 861 -#define I_cherry_boat 837 -#define I_cherry_button 720 -#define I_cherry_chest_boat 838 -#define I_cherry_door 749 -#define I_cherry_fence 337 -#define I_cherry_fence_gate 790 -#define I_cherry_hanging_sign 960 -#define I_cherry_leaves 187 -#define I_cherry_log 139 -#define I_cherry_planks 41 -#define I_cherry_pressure_plate 736 -#define I_cherry_sapling 54 -#define I_cherry_sign 948 -#define I_cherry_slab 275 -#define I_cherry_stairs 417 -#define I_cherry_trapdoor 770 -#define I_cherry_wood 176 -#define I_chest 319 -#define I_chest_minecart 819 -#define I_chicken 1067 -#define I_chicken_spawn_egg 1096 -#define I_chipped_anvil 450 -#define I_chiseled_bookshelf 306 -#define I_chiseled_copper 98 -#define I_chiseled_deepslate 372 -#define I_chiseled_nether_bricks 397 -#define I_chiseled_polished_blackstone 1319 -#define I_chiseled_quartz_block 452 -#define I_chiseled_red_sandstone 541 -#define I_chiseled_resin_bricks 389 -#define I_chiseled_sandstone 199 -#define I_chiseled_stone_bricks 365 -#define I_chiseled_tuff 16 -#define I_chiseled_tuff_bricks 25 -#define I_chorus_flower 313 -#define I_chorus_fruit 1231 -#define I_chorus_plant 312 -#define I_clay 330 -#define I_clay_ball 981 -#define I_clock 1009 -#define I_closed_eyeblossom 231 -#define I_coal 860 -#define I_coal_block 83 -#define I_coal_ore 64 -#define I_coarse_dirt 29 -#define I_coast_armor_trim_smithing_template 1356 -#define I_cobbled_deepslate 9 -#define I_cobbled_deepslate_slab 683 -#define I_cobbled_deepslate_stairs 666 -#define I_cobbled_deepslate_wall 445 -#define I_cobblestone 35 -#define I_cobblestone_slab 288 -#define I_cobblestone_stairs 324 -#define I_cobblestone_wall 427 -#define I_cobweb 201 -#define I_cocoa_beans 1020 -#define I_cod 1012 -#define I_cod_bucket 976 -#define I_cod_spawn_egg 1097 -#define I_command_block 425 -#define I_command_block_minecart 1211 -#define I_comparator 692 -#define I_compass 989 -#define I_composter 1288 -#define I_conduit 651 -#define I_cooked_beef 1066 -#define I_cooked_chicken 1068 -#define I_cooked_cod 1016 -#define I_cooked_mutton 1213 -#define I_cooked_porkchop 939 -#define I_cooked_rabbit 1200 -#define I_cooked_salmon 1017 -#define I_cookie 1057 -#define I_copper_block 91 -#define I_copper_bulb 1403 -#define I_copper_door 756 -#define I_copper_grate 1395 -#define I_copper_ingot 870 -#define I_copper_ore 68 -#define I_copper_trapdoor 777 -#define I_cornflower 241 -#define I_cow_spawn_egg 1098 -#define I_cracked_deepslate_bricks 369 -#define I_cracked_deepslate_tiles 371 -#define I_cracked_nether_bricks 396 -#define I_cracked_polished_blackstone_bricks 1323 -#define I_cracked_stone_bricks 364 -#define I_crafter 1058 -#define I_crafting_table 320 -#define I_creaking_heart 318 -#define I_creaking_spawn_egg 1162 -#define I_creeper_banner_pattern 1278 -#define I_creeper_head 1187 -#define I_creeper_spawn_egg 1099 -#define I_crimson_button 725 -#define I_crimson_door 754 -#define I_crimson_fence 342 -#define I_crimson_fence_gate 795 -#define I_crimson_fungus 249 -#define I_crimson_hanging_sign 965 -#define I_crimson_hyphae 180 -#define I_crimson_nylium 33 -#define I_crimson_planks 46 -#define I_crimson_pressure_plate 741 -#define I_crimson_roots 251 -#define I_crimson_sign 953 -#define I_crimson_slab 281 -#define I_crimson_stairs 423 -#define I_crimson_stem 145 -#define I_crimson_trapdoor 775 -#define I_crossbow 1274 -#define I_crying_obsidian 1311 -#define I_cut_copper 102 -#define I_cut_copper_slab 110 -#define I_cut_copper_stairs 106 -#define I_cut_red_sandstone 542 -#define I_cut_red_sandstone_slab 295 -#define I_cut_sandstone 200 -#define I_cut_sandstone_slab 286 -#define I_cyan_banner 1223 -#define I_cyan_bed 1050 -#define I_cyan_bundle 1001 -#define I_cyan_candle 1335 -#define I_cyan_carpet 485 -#define I_cyan_concrete 594 -#define I_cyan_concrete_powder 610 -#define I_cyan_dye 1030 -#define I_cyan_glazed_terracotta 578 -#define I_cyan_harness 811 -#define I_cyan_shulker_box 562 -#define I_cyan_stained_glass 510 -#define I_cyan_stained_glass_pane 526 -#define I_cyan_terracotta 466 -#define I_cyan_wool 222 -#define I_damaged_anvil 451 -#define I_dandelion 229 -#define I_danger_pottery_sherd 1378 -#define I_dark_oak_boat 839 -#define I_dark_oak_button 721 -#define I_dark_oak_chest_boat 840 -#define I_dark_oak_door 750 -#define I_dark_oak_fence 338 -#define I_dark_oak_fence_gate 791 -#define I_dark_oak_hanging_sign 961 -#define I_dark_oak_leaves 188 -#define I_dark_oak_log 141 -#define I_dark_oak_planks 42 -#define I_dark_oak_pressure_plate 737 -#define I_dark_oak_sapling 55 -#define I_dark_oak_sign 949 -#define I_dark_oak_slab 276 -#define I_dark_oak_stairs 418 -#define I_dark_oak_trapdoor 771 -#define I_dark_oak_wood 178 -#define I_dark_prismarine 535 -#define I_dark_prismarine_slab 299 -#define I_dark_prismarine_stairs 538 -#define I_daylight_detector 705 -#define I_dead_brain_coral 635 -#define I_dead_brain_coral_block 621 -#define I_dead_brain_coral_fan 646 -#define I_dead_bubble_coral 636 -#define I_dead_bubble_coral_block 622 -#define I_dead_bubble_coral_fan 647 -#define I_dead_bush 207 -#define I_dead_fire_coral 637 -#define I_dead_fire_coral_block 623 -#define I_dead_fire_coral_fan 648 -#define I_dead_horn_coral 638 -#define I_dead_horn_coral_block 624 -#define I_dead_horn_coral_fan 649 -#define I_dead_tube_coral 639 -#define I_dead_tube_coral_block 620 -#define I_dead_tube_coral_fan 645 -#define I_debug_stick 1248 -#define I_decorated_pot 307 -#define I_deepslate 8 -#define I_deepslate_brick_slab 685 -#define I_deepslate_brick_stairs 668 -#define I_deepslate_brick_wall 447 -#define I_deepslate_bricks 368 -#define I_deepslate_coal_ore 65 -#define I_deepslate_copper_ore 69 -#define I_deepslate_diamond_ore 79 -#define I_deepslate_emerald_ore 75 -#define I_deepslate_gold_ore 71 -#define I_deepslate_iron_ore 67 -#define I_deepslate_lapis_ore 77 -#define I_deepslate_redstone_ore 73 -#define I_deepslate_tile_slab 686 -#define I_deepslate_tile_stairs 669 -#define I_deepslate_tile_wall 448 -#define I_deepslate_tiles 370 -#define I_detector_rail 798 -#define I_diamond 862 -#define I_diamond_axe 898 -#define I_diamond_block 93 -#define I_diamond_boots 928 -#define I_diamond_chestplate 926 -#define I_diamond_helmet 925 -#define I_diamond_hoe 899 -#define I_diamond_horse_armor 1207 -#define I_diamond_leggings 927 -#define I_diamond_ore 78 -#define I_diamond_pickaxe 897 -#define I_diamond_shovel 896 -#define I_diamond_sword 895 -#define I_diorite 4 -#define I_diorite_slab 682 -#define I_diorite_stairs 665 -#define I_diorite_wall 441 -#define I_dirt 28 -#define I_dirt_path 494 -#define I_disc_fragment_5 1270 -#define I_dispenser 699 -#define I_dolphin_spawn_egg 1100 -#define I_donkey_spawn_egg 1101 -#define I_dragon_breath 1238 -#define I_dragon_egg 408 -#define I_dragon_head 1188 -#define I_dried_ghast 619 -#define I_dried_kelp 1062 -#define I_dried_kelp_block 982 -#define I_dripstone_block 26 -#define I_dropper 700 -#define I_drowned_spawn_egg 1102 -#define I_dune_armor_trim_smithing_template 1355 -#define I_echo_shard 1351 -#define I_egg 986 -#define I_elder_guardian_spawn_egg 1103 -#define I_elytra 826 -#define I_emerald 863 -#define I_emerald_block 411 -#define I_emerald_ore 74 -#define I_enchanted_book 1194 -#define I_enchanted_golden_apple 942 -#define I_enchanting_table 404 -#define I_end_crystal 1230 -#define I_end_portal_frame 405 -#define I_end_rod 311 -#define I_end_stone 406 -#define I_end_stone_brick_slab 675 -#define I_end_stone_brick_stairs 657 -#define I_end_stone_brick_wall 440 -#define I_end_stone_bricks 407 -#define I_ender_chest 410 -#define I_ender_dragon_spawn_egg 1104 -#define I_ender_eye 1083 -#define I_ender_pearl 1070 -#define I_enderman_spawn_egg 1105 -#define I_endermite_spawn_egg 1106 -#define I_evoker_spawn_egg 1107 -#define I_experience_bottle 1167 -#define I_explorer_pottery_sherd 1379 -#define I_exposed_chiseled_copper 99 -#define I_exposed_copper 95 -#define I_exposed_copper_bulb 1404 -#define I_exposed_copper_door 757 -#define I_exposed_copper_grate 1396 -#define I_exposed_copper_trapdoor 778 -#define I_exposed_cut_copper 103 -#define I_exposed_cut_copper_slab 111 -#define I_exposed_cut_copper_stairs 107 -#define I_eye_armor_trim_smithing_template 1359 -#define I_farmland 321 -#define I_feather 908 -#define I_fermented_spider_eye 1078 -#define I_fern 203 -#define I_field_masoned_banner_pattern 1285 -#define I_filled_map 1059 -#define I_fire_charge 1168 -#define I_fire_coral 633 -#define I_fire_coral_block 628 -#define I_fire_coral_fan 643 -#define I_firefly_bush 208 -#define I_firework_rocket 1192 -#define I_firework_star 1193 -#define I_fishing_rod 1008 -#define I_fletching_table 1293 -#define I_flint 937 -#define I_flint_and_steel 855 -#define I_flow_armor_trim_smithing_template 1370 -#define I_flow_banner_pattern 1283 -#define I_flow_pottery_sherd 1380 -#define I_flower_banner_pattern 1277 -#define I_flower_pot 1176 -#define I_flowering_azalea 206 -#define I_flowering_azalea_leaves 192 -#define I_fox_spawn_egg 1108 -#define I_friend_pottery_sherd 1381 -#define I_frog_spawn_egg 1109 -#define I_frogspawn 1350 -#define I_furnace 322 -#define I_furnace_minecart 820 -#define I_ghast_spawn_egg 1110 -#define I_ghast_tear 1072 -#define I_gilded_blackstone 1315 -#define I_glass 195 -#define I_glass_bottle 1075 -#define I_glass_pane 379 -#define I_glistering_melon_slice 1084 -#define I_globe_banner_pattern 1281 -#define I_glow_berries 1301 -#define I_glow_ink_sac 1019 -#define I_glow_item_frame 1175 -#define I_glow_lichen 382 -#define I_glow_squid_spawn_egg 1112 -#define I_glowstone 354 -#define I_glowstone_dust 1011 -#define I_goat_horn 1287 -#define I_goat_spawn_egg 1113 -#define I_gold_block 92 -#define I_gold_ingot 872 -#define I_gold_nugget 1073 -#define I_gold_ore 70 -#define I_golden_apple 941 -#define I_golden_axe 888 -#define I_golden_boots 932 -#define I_golden_carrot 1182 -#define I_golden_chestplate 930 -#define I_golden_helmet 929 -#define I_golden_hoe 889 -#define I_golden_horse_armor 1206 -#define I_golden_leggings 931 -#define I_golden_pickaxe 887 -#define I_golden_shovel 886 -#define I_golden_sword 885 -#define I_granite 2 -#define I_granite_slab 678 -#define I_granite_stairs 661 -#define I_granite_wall 433 -#define I_grass_block 27 -#define I_gravel 63 -#define I_gray_banner 1221 -#define I_gray_bed 1048 -#define I_gray_bundle 999 -#define I_gray_candle 1333 -#define I_gray_carpet 483 -#define I_gray_concrete 592 -#define I_gray_concrete_powder 608 -#define I_gray_dye 1028 -#define I_gray_glazed_terracotta 576 -#define I_gray_harness 809 -#define I_gray_shulker_box 560 -#define I_gray_stained_glass 508 -#define I_gray_stained_glass_pane 524 -#define I_gray_terracotta 464 -#define I_gray_wool 220 -#define I_green_banner 1227 -#define I_green_bed 1054 -#define I_green_bundle 1005 -#define I_green_candle 1339 -#define I_green_carpet 489 -#define I_green_concrete 598 -#define I_green_concrete_powder 614 -#define I_green_dye 1034 -#define I_green_glazed_terracotta 582 -#define I_green_harness 815 -#define I_green_shulker_box 566 -#define I_green_stained_glass 514 -#define I_green_stained_glass_pane 530 -#define I_green_terracotta 470 -#define I_green_wool 226 -#define I_grindstone 1294 -#define I_guardian_spawn_egg 1114 -#define I_gunpowder 909 -#define I_guster_banner_pattern 1284 -#define I_guster_pottery_sherd 1382 -#define I_hanging_roots 266 -#define I_happy_ghast_spawn_egg 1111 -#define I_hay_block 475 -#define I_heart_of_the_sea 1273 -#define I_heart_pottery_sherd 1383 -#define I_heartbreak_pottery_sherd 1384 -#define I_heavy_core 87 -#define I_heavy_weighted_pressure_plate 730 -#define I_hoglin_spawn_egg 1115 -#define I_honey_block 696 -#define I_honey_bottle 1308 -#define I_honeycomb 1305 -#define I_honeycomb_block 1309 -#define I_hopper 698 -#define I_hopper_minecart 822 -#define I_horn_coral 634 -#define I_horn_coral_block 629 -#define I_horn_coral_fan 644 -#define I_horse_spawn_egg 1116 -#define I_host_armor_trim_smithing_template 1369 -#define I_howl_pottery_sherd 1385 -#define I_husk_spawn_egg 1117 -#define I_ice 326 -#define I_infested_chiseled_stone_bricks 360 -#define I_infested_cobblestone 356 -#define I_infested_cracked_stone_bricks 359 -#define I_infested_deepslate 361 -#define I_infested_mossy_stone_bricks 358 -#define I_infested_stone 355 -#define I_infested_stone_bricks 357 -#define I_ink_sac 1018 -#define I_iron_axe 893 -#define I_iron_bars 377 -#define I_iron_block 90 -#define I_iron_boots 924 -#define I_iron_chestplate 922 -#define I_iron_door 743 -#define I_iron_golem_spawn_egg 1118 -#define I_iron_helmet 921 -#define I_iron_hoe 894 -#define I_iron_horse_armor 1205 -#define I_iron_ingot 868 -#define I_iron_leggings 923 -#define I_iron_nugget 1246 -#define I_iron_ore 66 -#define I_iron_pickaxe 892 -#define I_iron_shovel 891 -#define I_iron_sword 890 -#define I_iron_trapdoor 764 -#define I_item_frame 1174 -#define I_jack_o_lantern 346 -#define I_jigsaw 848 -#define I_jukebox 331 -#define I_jungle_boat 833 -#define I_jungle_button 718 -#define I_jungle_chest_boat 834 -#define I_jungle_door 747 -#define I_jungle_fence 335 -#define I_jungle_fence_gate 788 -#define I_jungle_hanging_sign 958 -#define I_jungle_leaves 185 -#define I_jungle_log 137 -#define I_jungle_planks 39 -#define I_jungle_pressure_plate 734 -#define I_jungle_sapling 52 -#define I_jungle_sign 946 -#define I_jungle_slab 273 -#define I_jungle_stairs 415 -#define I_jungle_trapdoor 768 -#define I_jungle_wood 174 -#define I_kelp 257 -#define I_knowledge_book 1247 -#define I_ladder 323 -#define I_lantern 1298 -#define I_lapis_block 197 -#define I_lapis_lazuli 864 -#define I_lapis_ore 76 -#define I_large_amethyst_bud 1344 -#define I_large_fern 500 -#define I_lava_bucket 969 -#define I_lead 1209 -#define I_leaf_litter 260 -#define I_leather 972 -#define I_leather_boots 916 -#define I_leather_chestplate 914 -#define I_leather_helmet 913 -#define I_leather_horse_armor 1208 -#define I_leather_leggings 915 -#define I_lectern 701 -#define I_lever 703 -#define I_light 474 -#define I_light_blue_banner 1217 -#define I_light_blue_bed 1044 -#define I_light_blue_bundle 995 -#define I_light_blue_candle 1329 -#define I_light_blue_carpet 479 -#define I_light_blue_concrete 588 -#define I_light_blue_concrete_powder 604 -#define I_light_blue_dye 1024 -#define I_light_blue_glazed_terracotta 572 -#define I_light_blue_harness 805 -#define I_light_blue_shulker_box 556 -#define I_light_blue_stained_glass 504 -#define I_light_blue_stained_glass_pane 520 -#define I_light_blue_terracotta 460 -#define I_light_blue_wool 216 -#define I_light_gray_banner 1222 -#define I_light_gray_bed 1049 -#define I_light_gray_bundle 1000 -#define I_light_gray_candle 1334 -#define I_light_gray_carpet 484 -#define I_light_gray_concrete 593 -#define I_light_gray_concrete_powder 609 -#define I_light_gray_dye 1029 -#define I_light_gray_glazed_terracotta 577 -#define I_light_gray_harness 810 -#define I_light_gray_shulker_box 561 -#define I_light_gray_stained_glass 509 -#define I_light_gray_stained_glass_pane 525 -#define I_light_gray_terracotta 465 -#define I_light_gray_wool 221 -#define I_light_weighted_pressure_plate 729 -#define I_lightning_rod 704 -#define I_lilac 496 -#define I_lily_of_the_valley 242 -#define I_lily_pad 394 -#define I_lime_banner 1219 -#define I_lime_bed 1046 -#define I_lime_bundle 997 -#define I_lime_candle 1331 -#define I_lime_carpet 481 -#define I_lime_concrete 590 -#define I_lime_concrete_powder 606 -#define I_lime_dye 1026 -#define I_lime_glazed_terracotta 574 -#define I_lime_harness 807 -#define I_lime_shulker_box 558 -#define I_lime_stained_glass 506 -#define I_lime_stained_glass_pane 522 -#define I_lime_terracotta 462 -#define I_lime_wool 218 -#define I_lingering_potion 1242 -#define I_llama_spawn_egg 1119 -#define I_lodestone 1310 -#define I_loom 1276 -#define I_mace 1173 -#define I_magenta_banner 1216 -#define I_magenta_bed 1043 -#define I_magenta_bundle 994 -#define I_magenta_candle 1328 -#define I_magenta_carpet 478 -#define I_magenta_concrete 587 -#define I_magenta_concrete_powder 603 -#define I_magenta_dye 1023 -#define I_magenta_glazed_terracotta 571 -#define I_magenta_harness 804 -#define I_magenta_shulker_box 555 -#define I_magenta_stained_glass 503 -#define I_magenta_stained_glass_pane 519 -#define I_magenta_terracotta 459 -#define I_magenta_wool 215 -#define I_magma_block 546 -#define I_magma_cream 1080 -#define I_magma_cube_spawn_egg 1120 -#define I_mangrove_boat 843 -#define I_mangrove_button 723 -#define I_mangrove_chest_boat 844 -#define I_mangrove_door 752 -#define I_mangrove_fence 340 -#define I_mangrove_fence_gate 793 -#define I_mangrove_hanging_sign 963 -#define I_mangrove_leaves 190 -#define I_mangrove_log 142 -#define I_mangrove_planks 44 -#define I_mangrove_pressure_plate 739 -#define I_mangrove_propagule 57 -#define I_mangrove_roots 143 -#define I_mangrove_sign 951 -#define I_mangrove_slab 278 -#define I_mangrove_stairs 420 -#define I_mangrove_trapdoor 773 -#define I_mangrove_wood 179 -#define I_map 1181 -#define I_medium_amethyst_bud 1343 -#define I_melon 380 -#define I_melon_seeds 1064 -#define I_melon_slice 1061 -#define I_milk_bucket 973 -#define I_minecart 818 -#define I_miner_pottery_sherd 1386 -#define I_mojang_banner_pattern 1280 -#define I_mooshroom_spawn_egg 1121 -#define I_moss_block 262 -#define I_moss_carpet 261 -#define I_mossy_cobblestone 308 -#define I_mossy_cobblestone_slab 674 -#define I_mossy_cobblestone_stairs 656 -#define I_mossy_cobblestone_wall 428 -#define I_mossy_stone_brick_slab 672 -#define I_mossy_stone_brick_stairs 654 -#define I_mossy_stone_brick_wall 432 -#define I_mossy_stone_bricks 363 -#define I_mourner_pottery_sherd 1387 -#define I_mud 32 -#define I_mud_brick_slab 291 -#define I_mud_brick_stairs 392 -#define I_mud_brick_wall 435 -#define I_mud_bricks 367 -#define I_muddy_mangrove_roots 144 -#define I_mule_spawn_egg 1122 -#define I_mushroom_stem 376 -#define I_mushroom_stew 906 -#define I_music_disc_11 1262 -#define I_music_disc_13 1249 -#define I_music_disc_5 1266 -#define I_music_disc_blocks 1251 -#define I_music_disc_cat 1250 -#define I_music_disc_chirp 1252 -#define I_music_disc_creator 1253 -#define I_music_disc_creator_music_box 1254 -#define I_music_disc_far 1255 -#define I_music_disc_lava_chicken 1256 -#define I_music_disc_mall 1257 -#define I_music_disc_mellohi 1258 -#define I_music_disc_otherside 1264 -#define I_music_disc_pigstep 1267 -#define I_music_disc_precipice 1268 -#define I_music_disc_relic 1265 -#define I_music_disc_stal 1259 -#define I_music_disc_strad 1260 -#define I_music_disc_tears 1269 -#define I_music_disc_wait 1263 -#define I_music_disc_ward 1261 -#define I_mutton 1212 -#define I_mycelium 393 -#define I_name_tag 1210 -#define I_nautilus_shell 1272 -#define I_nether_brick 1195 -#define I_nether_brick_fence 398 -#define I_nether_brick_slab 292 -#define I_nether_brick_stairs 399 -#define I_nether_brick_wall 436 -#define I_nether_bricks 395 -#define I_nether_gold_ore 80 -#define I_nether_quartz_ore 81 -#define I_nether_sprouts 253 -#define I_nether_star 1190 -#define I_nether_wart 1074 -#define I_nether_wart_block 547 -#define I_netherite_axe 903 -#define I_netherite_block 94 -#define I_netherite_boots 936 -#define I_netherite_chestplate 934 -#define I_netherite_helmet 933 -#define I_netherite_hoe 904 -#define I_netherite_ingot 873 -#define I_netherite_leggings 935 -#define I_netherite_pickaxe 902 -#define I_netherite_scrap 874 -#define I_netherite_shovel 901 -#define I_netherite_sword 900 -#define I_netherite_upgrade_smithing_template 1353 -#define I_netherrack 347 -#define I_note_block 712 -#define I_oak_boat 827 -#define I_oak_button 715 -#define I_oak_chest_boat 828 -#define I_oak_door 744 -#define I_oak_fence 332 -#define I_oak_fence_gate 785 -#define I_oak_hanging_sign 955 -#define I_oak_leaves 182 -#define I_oak_log 134 -#define I_oak_planks 36 -#define I_oak_pressure_plate 731 -#define I_oak_sapling 49 -#define I_oak_sign 943 -#define I_oak_slab 270 -#define I_oak_stairs 412 -#define I_oak_trapdoor 765 -#define I_oak_wood 171 -#define I_observer 697 -#define I_obsidian 309 -#define I_ocelot_spawn_egg 1123 -#define I_ochre_froglight 1347 -#define I_ominous_bottle 1415 -#define I_ominous_trial_key 1413 -#define I_open_eyeblossom 230 -#define I_orange_banner 1215 -#define I_orange_bed 1042 -#define I_orange_bundle 993 -#define I_orange_candle 1327 -#define I_orange_carpet 477 -#define I_orange_concrete 586 -#define I_orange_concrete_powder 602 -#define I_orange_dye 1022 -#define I_orange_glazed_terracotta 570 -#define I_orange_harness 803 -#define I_orange_shulker_box 554 -#define I_orange_stained_glass 502 -#define I_orange_stained_glass_pane 518 -#define I_orange_terracotta 458 -#define I_orange_tulip 237 -#define I_orange_wool 214 -#define I_oxeye_daisy 240 -#define I_oxidized_chiseled_copper 101 -#define I_oxidized_copper 97 -#define I_oxidized_copper_bulb 1406 -#define I_oxidized_copper_door 759 -#define I_oxidized_copper_grate 1398 -#define I_oxidized_copper_trapdoor 780 -#define I_oxidized_cut_copper 105 -#define I_oxidized_cut_copper_slab 113 -#define I_oxidized_cut_copper_stairs 109 -#define I_packed_ice 493 -#define I_packed_mud 366 -#define I_painting 940 -#define I_pale_hanging_moss 264 -#define I_pale_moss_block 265 -#define I_pale_moss_carpet 263 -#define I_pale_oak_boat 841 -#define I_pale_oak_button 722 -#define I_pale_oak_chest_boat 842 -#define I_pale_oak_door 751 -#define I_pale_oak_fence 339 -#define I_pale_oak_fence_gate 792 -#define I_pale_oak_hanging_sign 962 -#define I_pale_oak_leaves 189 -#define I_pale_oak_log 140 -#define I_pale_oak_planks 43 -#define I_pale_oak_pressure_plate 738 -#define I_pale_oak_sapling 56 -#define I_pale_oak_sign 950 -#define I_pale_oak_slab 277 -#define I_pale_oak_stairs 419 -#define I_pale_oak_trapdoor 772 -#define I_pale_oak_wood 177 -#define I_panda_spawn_egg 1124 -#define I_paper 983 -#define I_parrot_spawn_egg 1125 -#define I_pearlescent_froglight 1349 -#define I_peony 498 -#define I_petrified_oak_slab 287 -#define I_phantom_membrane 825 -#define I_phantom_spawn_egg 1126 -#define I_pig_spawn_egg 1127 -#define I_piglin_banner_pattern 1282 -#define I_piglin_brute_spawn_egg 1129 -#define I_piglin_head 1189 -#define I_piglin_spawn_egg 1128 -#define I_pillager_spawn_egg 1130 -#define I_pink_banner 1220 -#define I_pink_bed 1047 -#define I_pink_bundle 998 -#define I_pink_candle 1332 -#define I_pink_carpet 482 -#define I_pink_concrete 591 -#define I_pink_concrete_powder 607 -#define I_pink_dye 1027 -#define I_pink_glazed_terracotta 575 -#define I_pink_harness 808 -#define I_pink_petals 258 -#define I_pink_shulker_box 559 -#define I_pink_stained_glass 507 -#define I_pink_stained_glass_pane 523 -#define I_pink_terracotta 463 -#define I_pink_tulip 239 -#define I_pink_wool 219 -#define I_piston 693 -#define I_pitcher_plant 245 -#define I_pitcher_pod 1234 -#define I_player_head 1185 -#define I_plenty_pottery_sherd 1388 -#define I_podzol 30 -#define I_pointed_dripstone 1346 -#define I_poisonous_potato 1180 -#define I_polar_bear_spawn_egg 1131 -#define I_polished_andesite 7 -#define I_polished_andesite_slab 681 -#define I_polished_andesite_stairs 664 -#define I_polished_basalt 351 -#define I_polished_blackstone 1316 -#define I_polished_blackstone_brick_slab 1321 -#define I_polished_blackstone_brick_stairs 1322 -#define I_polished_blackstone_brick_wall 444 -#define I_polished_blackstone_bricks 1320 -#define I_polished_blackstone_button 714 -#define I_polished_blackstone_pressure_plate 728 -#define I_polished_blackstone_slab 1317 -#define I_polished_blackstone_stairs 1318 -#define I_polished_blackstone_wall 443 -#define I_polished_deepslate 10 -#define I_polished_deepslate_slab 684 -#define I_polished_deepslate_stairs 667 -#define I_polished_deepslate_wall 446 -#define I_polished_diorite 5 -#define I_polished_diorite_slab 673 -#define I_polished_diorite_stairs 655 -#define I_polished_granite 3 -#define I_polished_granite_slab 670 -#define I_polished_granite_stairs 652 -#define I_polished_tuff 17 -#define I_polished_tuff_slab 18 -#define I_polished_tuff_stairs 19 -#define I_polished_tuff_wall 20 -#define I_popped_chorus_fruit 1232 -#define I_poppy 232 -#define I_porkchop 938 -#define I_potato 1178 -#define I_potion 1076 -#define I_powder_snow_bucket 970 -#define I_powered_rail 797 -#define I_prismarine 533 -#define I_prismarine_brick_slab 298 -#define I_prismarine_brick_stairs 537 -#define I_prismarine_bricks 534 -#define I_prismarine_crystals 1198 -#define I_prismarine_shard 1197 -#define I_prismarine_slab 297 -#define I_prismarine_stairs 536 -#define I_prismarine_wall 430 -#define I_prize_pottery_sherd 1389 -#define I_pufferfish 1015 -#define I_pufferfish_bucket 974 -#define I_pufferfish_spawn_egg 1132 -#define I_pumpkin 344 -#define I_pumpkin_pie 1191 -#define I_pumpkin_seeds 1063 -#define I_purple_banner 1224 -#define I_purple_bed 1051 -#define I_purple_bundle 1002 -#define I_purple_candle 1336 -#define I_purple_carpet 486 -#define I_purple_concrete 595 -#define I_purple_concrete_powder 611 -#define I_purple_dye 1031 -#define I_purple_glazed_terracotta 579 -#define I_purple_harness 812 -#define I_purple_shulker_box 563 -#define I_purple_stained_glass 511 -#define I_purple_stained_glass_pane 527 -#define I_purple_terracotta 467 -#define I_purple_wool 223 -#define I_purpur_block 314 -#define I_purpur_pillar 315 -#define I_purpur_slab 296 -#define I_purpur_stairs 316 -#define I_quartz 865 -#define I_quartz_block 453 -#define I_quartz_bricks 454 -#define I_quartz_pillar 455 -#define I_quartz_slab 293 -#define I_quartz_stairs 456 -#define I_rabbit 1199 -#define I_rabbit_foot 1202 -#define I_rabbit_hide 1203 -#define I_rabbit_spawn_egg 1133 -#define I_rabbit_stew 1201 -#define I_rail 799 -#define I_raiser_armor_trim_smithing_template 1368 -#define I_ravager_spawn_egg 1134 -#define I_raw_copper 869 -#define I_raw_copper_block 85 -#define I_raw_gold 871 -#define I_raw_gold_block 86 -#define I_raw_iron 867 -#define I_raw_iron_block 84 -#define I_recovery_compass 990 -#define I_red_banner 1228 -#define I_red_bed 1055 -#define I_red_bundle 1006 -#define I_red_candle 1340 -#define I_red_carpet 490 -#define I_red_concrete 599 -#define I_red_concrete_powder 615 -#define I_red_dye 1035 -#define I_red_glazed_terracotta 583 -#define I_red_harness 816 -#define I_red_mushroom 248 -#define I_red_mushroom_block 375 -#define I_red_nether_brick_slab 680 -#define I_red_nether_brick_stairs 663 -#define I_red_nether_brick_wall 438 -#define I_red_nether_bricks 549 -#define I_red_sand 62 -#define I_red_sandstone 540 -#define I_red_sandstone_slab 294 -#define I_red_sandstone_stairs 543 -#define I_red_sandstone_wall 431 -#define I_red_shulker_box 567 -#define I_red_stained_glass 515 -#define I_red_stained_glass_pane 531 -#define I_red_terracotta 471 -#define I_red_tulip 236 -#define I_red_wool 227 -#define I_redstone 688 -#define I_redstone_block 690 -#define I_redstone_lamp 711 -#define I_redstone_ore 72 -#define I_redstone_torch 689 -#define I_reinforced_deepslate 373 -#define I_repeater 691 -#define I_repeating_command_block 544 -#define I_resin_block 384 -#define I_resin_brick 1196 -#define I_resin_brick_slab 387 -#define I_resin_brick_stairs 386 -#define I_resin_brick_wall 388 -#define I_resin_bricks 385 -#define I_resin_clump 383 -#define I_respawn_anchor 1324 -#define I_rib_armor_trim_smithing_template 1363 -#define I_rooted_dirt 31 -#define I_rose_bush 497 -#define I_rotten_flesh 1069 -#define I_saddle 801 -#define I_salmon 1013 -#define I_salmon_bucket 975 -#define I_salmon_spawn_egg 1135 -#define I_sand 59 -#define I_sandstone 198 -#define I_sandstone_slab 285 -#define I_sandstone_stairs 409 -#define I_sandstone_wall 439 -#define I_scaffolding 687 -#define I_scrape_pottery_sherd 1390 -#define I_sculk 400 -#define I_sculk_catalyst 402 -#define I_sculk_sensor 706 -#define I_sculk_shrieker 403 -#define I_sculk_vein 401 -#define I_sea_lantern 539 -#define I_sea_pickle 212 -#define I_seagrass 211 -#define I_sentry_armor_trim_smithing_template 1354 -#define I_shaper_armor_trim_smithing_template 1366 -#define I_sheaf_pottery_sherd 1391 -#define I_shears 1060 -#define I_sheep_spawn_egg 1136 -#define I_shelter_pottery_sherd 1392 -#define I_shield 1243 -#define I_short_dry_grass 209 -#define I_short_grass 202 -#define I_shroomlight 1304 -#define I_shulker_box 552 -#define I_shulker_shell 1245 -#define I_shulker_spawn_egg 1137 -#define I_silence_armor_trim_smithing_template 1367 -#define I_silverfish_spawn_egg 1138 -#define I_skeleton_horse_spawn_egg 1140 -#define I_skeleton_skull 1183 -#define I_skeleton_spawn_egg 1139 -#define I_skull_banner_pattern 1279 -#define I_skull_pottery_sherd 1393 -#define I_slime_ball 985 -#define I_slime_block 695 -#define I_slime_spawn_egg 1141 -#define I_small_amethyst_bud 1342 -#define I_small_dripleaf 268 -#define I_smithing_table 1295 -#define I_smoker 1290 -#define I_smooth_basalt 352 -#define I_smooth_quartz 300 -#define I_smooth_quartz_slab 677 -#define I_smooth_quartz_stairs 660 -#define I_smooth_red_sandstone 301 -#define I_smooth_red_sandstone_slab 671 -#define I_smooth_red_sandstone_stairs 653 -#define I_smooth_sandstone 302 -#define I_smooth_sandstone_slab 676 -#define I_smooth_sandstone_stairs 659 -#define I_smooth_stone 303 -#define I_smooth_stone_slab 284 -#define I_sniffer_egg 618 -#define I_sniffer_spawn_egg 1142 -#define I_snort_pottery_sherd 1394 -#define I_snout_armor_trim_smithing_template 1362 -#define I_snow 325 -#define I_snow_block 327 -#define I_snow_golem_spawn_egg 1143 -#define I_snowball 971 -#define I_soul_campfire 1303 -#define I_soul_lantern 1299 -#define I_soul_sand 348 -#define I_soul_soil 349 -#define I_soul_torch 353 -#define I_spawner 317 -#define I_spectral_arrow 1240 -#define I_spider_eye 1077 -#define I_spider_spawn_egg 1144 -#define I_spire_armor_trim_smithing_template 1364 -#define I_splash_potion 1239 -#define I_sponge 193 -#define I_spore_blossom 246 -#define I_spruce_boat 829 -#define I_spruce_button 716 -#define I_spruce_chest_boat 830 -#define I_spruce_door 745 -#define I_spruce_fence 333 -#define I_spruce_fence_gate 786 -#define I_spruce_hanging_sign 956 -#define I_spruce_leaves 183 -#define I_spruce_log 135 -#define I_spruce_planks 37 -#define I_spruce_pressure_plate 732 -#define I_spruce_sapling 50 -#define I_spruce_sign 944 -#define I_spruce_slab 271 -#define I_spruce_stairs 413 -#define I_spruce_trapdoor 766 -#define I_spruce_wood 172 -#define I_spyglass 1010 -#define I_squid_spawn_egg 1145 -#define I_stick 905 -#define I_sticky_piston 694 -#define I_stone 1 -#define I_stone_axe 883 -#define I_stone_brick_slab 290 -#define I_stone_brick_stairs 391 -#define I_stone_brick_wall 434 -#define I_stone_bricks 362 -#define I_stone_button 713 -#define I_stone_hoe 884 -#define I_stone_pickaxe 882 -#define I_stone_pressure_plate 727 -#define I_stone_shovel 881 -#define I_stone_slab 283 -#define I_stone_stairs 658 -#define I_stone_sword 880 -#define I_stonecutter 1296 -#define I_stray_spawn_egg 1146 -#define I_strider_spawn_egg 1147 -#define I_string 907 -#define I_stripped_acacia_log 152 -#define I_stripped_acacia_wood 163 -#define I_stripped_bamboo_block 170 -#define I_stripped_birch_log 150 -#define I_stripped_birch_wood 161 -#define I_stripped_cherry_log 153 -#define I_stripped_cherry_wood 164 -#define I_stripped_crimson_hyphae 168 -#define I_stripped_crimson_stem 157 -#define I_stripped_dark_oak_log 154 -#define I_stripped_dark_oak_wood 165 -#define I_stripped_jungle_log 151 -#define I_stripped_jungle_wood 162 -#define I_stripped_mangrove_log 156 -#define I_stripped_mangrove_wood 167 -#define I_stripped_oak_log 148 -#define I_stripped_oak_wood 159 -#define I_stripped_pale_oak_log 155 -#define I_stripped_pale_oak_wood 166 -#define I_stripped_spruce_log 149 -#define I_stripped_spruce_wood 160 -#define I_stripped_warped_hyphae 169 -#define I_stripped_warped_stem 158 -#define I_structure_block 847 -#define I_structure_void 551 -#define I_sugar 1039 -#define I_sugar_cane 256 -#define I_sunflower 495 -#define I_suspicious_gravel 61 -#define I_suspicious_sand 60 -#define I_suspicious_stew 1275 -#define I_sweet_berries 1300 -#define I_tadpole_bucket 979 -#define I_tadpole_spawn_egg 1148 -#define I_tall_dry_grass 210 -#define I_tall_grass 499 -#define I_target 702 -#define I_terracotta 492 -#define I_test_block 849 -#define I_test_instance_block 850 -#define I_tide_armor_trim_smithing_template 1361 -#define I_tinted_glass 196 -#define I_tipped_arrow 1241 -#define I_tnt 710 -#define I_tnt_minecart 821 -#define I_torch 310 -#define I_torchflower 244 -#define I_torchflower_seeds 1233 -#define I_totem_of_undying 1244 -#define I_trader_llama_spawn_egg 1149 -#define I_trapped_chest 709 -#define I_trial_key 1412 -#define I_trial_spawner 1411 -#define I_trident 1271 -#define I_tripwire_hook 708 -#define I_tropical_fish 1014 -#define I_tropical_fish_bucket 977 -#define I_tropical_fish_spawn_egg 1150 -#define I_tube_coral 630 -#define I_tube_coral_block 625 -#define I_tube_coral_fan 640 -#define I_tuff 12 -#define I_tuff_brick_slab 22 -#define I_tuff_brick_stairs 23 -#define I_tuff_brick_wall 24 -#define I_tuff_bricks 21 -#define I_tuff_slab 13 -#define I_tuff_stairs 14 -#define I_tuff_wall 15 -#define I_turtle_egg 617 -#define I_turtle_helmet 851 -#define I_turtle_scute 852 -#define I_turtle_spawn_egg 1151 -#define I_twisting_vines 255 -#define I_vault 1414 -#define I_verdant_froglight 1348 -#define I_vex_armor_trim_smithing_template 1360 -#define I_vex_spawn_egg 1152 -#define I_villager_spawn_egg 1153 -#define I_vindicator_spawn_egg 1154 -#define I_vine 381 -#define I_wandering_trader_spawn_egg 1155 -#define I_ward_armor_trim_smithing_template 1358 -#define I_warden_spawn_egg 1156 -#define I_warped_button 726 -#define I_warped_door 755 -#define I_warped_fence 343 -#define I_warped_fence_gate 796 -#define I_warped_fungus 250 -#define I_warped_fungus_on_a_stick 824 -#define I_warped_hanging_sign 966 -#define I_warped_hyphae 181 -#define I_warped_nylium 34 -#define I_warped_planks 47 -#define I_warped_pressure_plate 742 -#define I_warped_roots 252 -#define I_warped_sign 954 -#define I_warped_slab 282 -#define I_warped_stairs 424 -#define I_warped_stem 146 -#define I_warped_trapdoor 776 -#define I_warped_wart_block 548 -#define I_water_bucket 968 -#define I_waxed_chiseled_copper 118 -#define I_waxed_copper_block 114 -#define I_waxed_copper_bulb 1407 -#define I_waxed_copper_door 760 -#define I_waxed_copper_grate 1399 -#define I_waxed_copper_trapdoor 781 -#define I_waxed_cut_copper 122 -#define I_waxed_cut_copper_slab 130 -#define I_waxed_cut_copper_stairs 126 -#define I_waxed_exposed_chiseled_copper 119 -#define I_waxed_exposed_copper 115 -#define I_waxed_exposed_copper_bulb 1408 -#define I_waxed_exposed_copper_door 761 -#define I_waxed_exposed_copper_grate 1400 -#define I_waxed_exposed_copper_trapdoor 782 -#define I_waxed_exposed_cut_copper 123 -#define I_waxed_exposed_cut_copper_slab 131 -#define I_waxed_exposed_cut_copper_stairs 127 -#define I_waxed_oxidized_chiseled_copper 121 -#define I_waxed_oxidized_copper 117 -#define I_waxed_oxidized_copper_bulb 1410 -#define I_waxed_oxidized_copper_door 763 -#define I_waxed_oxidized_copper_grate 1402 -#define I_waxed_oxidized_copper_trapdoor 784 -#define I_waxed_oxidized_cut_copper 125 -#define I_waxed_oxidized_cut_copper_slab 133 -#define I_waxed_oxidized_cut_copper_stairs 129 -#define I_waxed_weathered_chiseled_copper 120 -#define I_waxed_weathered_copper 116 -#define I_waxed_weathered_copper_bulb 1409 -#define I_waxed_weathered_copper_door 762 -#define I_waxed_weathered_copper_grate 1401 -#define I_waxed_weathered_copper_trapdoor 783 -#define I_waxed_weathered_cut_copper 124 -#define I_waxed_weathered_cut_copper_slab 132 -#define I_waxed_weathered_cut_copper_stairs 128 -#define I_wayfinder_armor_trim_smithing_template 1365 -#define I_weathered_chiseled_copper 100 -#define I_weathered_copper 96 -#define I_weathered_copper_bulb 1405 -#define I_weathered_copper_door 758 -#define I_weathered_copper_grate 1397 -#define I_weathered_copper_trapdoor 779 -#define I_weathered_cut_copper 104 -#define I_weathered_cut_copper_slab 112 -#define I_weathered_cut_copper_stairs 108 -#define I_weeping_vines 254 -#define I_wet_sponge 194 -#define I_wheat 911 -#define I_wheat_seeds 910 -#define I_white_banner 1214 -#define I_white_bed 1041 -#define I_white_bundle 992 -#define I_white_candle 1326 -#define I_white_carpet 476 -#define I_white_concrete 585 -#define I_white_concrete_powder 601 -#define I_white_dye 1021 -#define I_white_glazed_terracotta 569 -#define I_white_harness 802 -#define I_white_shulker_box 553 -#define I_white_stained_glass 501 -#define I_white_stained_glass_pane 517 -#define I_white_terracotta 457 -#define I_white_tulip 238 -#define I_white_wool 213 -#define I_wild_armor_trim_smithing_template 1357 -#define I_wildflowers 259 -#define I_wind_charge 1169 -#define I_witch_spawn_egg 1157 -#define I_wither_rose 243 -#define I_wither_skeleton_skull 1184 -#define I_wither_skeleton_spawn_egg 1159 -#define I_wither_spawn_egg 1158 -#define I_wolf_armor 854 -#define I_wolf_spawn_egg 1160 -#define I_wooden_axe 878 -#define I_wooden_hoe 879 -#define I_wooden_pickaxe 877 -#define I_wooden_shovel 876 -#define I_wooden_sword 875 -#define I_writable_book 1170 -#define I_written_book 1171 -#define I_yellow_banner 1218 -#define I_yellow_bed 1045 -#define I_yellow_bundle 996 -#define I_yellow_candle 1330 -#define I_yellow_carpet 480 -#define I_yellow_concrete 589 -#define I_yellow_concrete_powder 605 -#define I_yellow_dye 1025 -#define I_yellow_glazed_terracotta 573 -#define I_yellow_harness 806 -#define I_yellow_shulker_box 557 -#define I_yellow_stained_glass 505 -#define I_yellow_stained_glass_pane 521 -#define I_yellow_terracotta 461 -#define I_yellow_wool 217 -#define I_zoglin_spawn_egg 1161 -#define I_zombie_head 1186 -#define I_zombie_horse_spawn_egg 1164 -#define I_zombie_spawn_egg 1163 -#define I_zombie_villager_spawn_egg 1165 -#define I_zombified_piglin_spawn_egg 1166 - -#endif diff --git a/src/registries.json b/src/registries.json deleted file mode 100644 index c453f4f..0000000 --- a/src/registries.json +++ /dev/null @@ -1,2490 +0,0 @@ -{ - "minecraft:banner_pattern": { - "minecraft:base": { - "asset_id": "minecraft:base", - "translation_key": "block.minecraft.banner.base" - }, - "minecraft:border": { - "asset_id": "minecraft:border", - "translation_key": "block.minecraft.banner.border" - }, - "minecraft:bricks": { - "asset_id": "minecraft:bricks", - "translation_key": "block.minecraft.banner.bricks" - }, - "minecraft:circle": { - "asset_id": "minecraft:circle", - "translation_key": "block.minecraft.banner.circle" - }, - "minecraft:creeper": { - "asset_id": "minecraft:creeper", - "translation_key": "block.minecraft.banner.creeper" - }, - "minecraft:cross": { - "asset_id": "minecraft:cross", - "translation_key": "block.minecraft.banner.cross" - }, - "minecraft:curly_border": { - "asset_id": "minecraft:curly_border", - "translation_key": "block.minecraft.banner.curly_border" - }, - "minecraft:diagonal_left": { - "asset_id": "minecraft:diagonal_left", - "translation_key": "block.minecraft.banner.diagonal_left" - }, - "minecraft:diagonal_right": { - "asset_id": "minecraft:diagonal_right", - "translation_key": "block.minecraft.banner.diagonal_right" - }, - "minecraft:diagonal_up_left": { - "asset_id": "minecraft:diagonal_up_left", - "translation_key": "block.minecraft.banner.diagonal_up_left" - }, - "minecraft:diagonal_up_right": { - "asset_id": "minecraft:diagonal_up_right", - "translation_key": "block.minecraft.banner.diagonal_up_right" - }, - "minecraft:flow": { - "asset_id": "minecraft:flow", - "translation_key": "block.minecraft.banner.flow" - }, - "minecraft:flower": { - "asset_id": "minecraft:flower", - "translation_key": "block.minecraft.banner.flower" - }, - "minecraft:globe": { - "asset_id": "minecraft:globe", - "translation_key": "block.minecraft.banner.globe" - }, - "minecraft:gradient": { - "asset_id": "minecraft:gradient", - "translation_key": "block.minecraft.banner.gradient" - }, - "minecraft:gradient_up": { - "asset_id": "minecraft:gradient_up", - "translation_key": "block.minecraft.banner.gradient_up" - }, - "minecraft:guster": { - "asset_id": "minecraft:guster", - "translation_key": "block.minecraft.banner.guster" - }, - "minecraft:half_horizontal": { - "asset_id": "minecraft:half_horizontal", - "translation_key": "block.minecraft.banner.half_horizontal" - }, - "minecraft:half_horizontal_bottom": { - "asset_id": "minecraft:half_horizontal_bottom", - "translation_key": "block.minecraft.banner.half_horizontal_bottom" - }, - "minecraft:half_vertical": { - "asset_id": "minecraft:half_vertical", - "translation_key": "block.minecraft.banner.half_vertical" - }, - "minecraft:half_vertical_right": { - "asset_id": "minecraft:half_vertical_right", - "translation_key": "block.minecraft.banner.half_vertical_right" - }, - "minecraft:mojang": { - "asset_id": "minecraft:mojang", - "translation_key": "block.minecraft.banner.mojang" - }, - "minecraft:piglin": { - "asset_id": "minecraft:piglin", - "translation_key": "block.minecraft.banner.piglin" - }, - "minecraft:rhombus": { - "asset_id": "minecraft:rhombus", - "translation_key": "block.minecraft.banner.rhombus" - }, - "minecraft:skull": { - "asset_id": "minecraft:skull", - "translation_key": "block.minecraft.banner.skull" - }, - "minecraft:small_stripes": { - "asset_id": "minecraft:small_stripes", - "translation_key": "block.minecraft.banner.small_stripes" - }, - "minecraft:square_bottom_left": { - "asset_id": "minecraft:square_bottom_left", - "translation_key": "block.minecraft.banner.square_bottom_left" - }, - "minecraft:square_bottom_right": { - "asset_id": "minecraft:square_bottom_right", - "translation_key": "block.minecraft.banner.square_bottom_right" - }, - "minecraft:square_top_left": { - "asset_id": "minecraft:square_top_left", - "translation_key": "block.minecraft.banner.square_top_left" - }, - "minecraft:square_top_right": { - "asset_id": "minecraft:square_top_right", - "translation_key": "block.minecraft.banner.square_top_right" - }, - "minecraft:straight_cross": { - "asset_id": "minecraft:straight_cross", - "translation_key": "block.minecraft.banner.straight_cross" - }, - "minecraft:stripe_bottom": { - "asset_id": "minecraft:stripe_bottom", - "translation_key": "block.minecraft.banner.stripe_bottom" - }, - "minecraft:stripe_center": { - "asset_id": "minecraft:stripe_center", - "translation_key": "block.minecraft.banner.stripe_center" - }, - "minecraft:stripe_downleft": { - "asset_id": "minecraft:stripe_downleft", - "translation_key": "block.minecraft.banner.stripe_downleft" - }, - "minecraft:stripe_downright": { - "asset_id": "minecraft:stripe_downright", - "translation_key": "block.minecraft.banner.stripe_downright" - }, - "minecraft:stripe_left": { - "asset_id": "minecraft:stripe_left", - "translation_key": "block.minecraft.banner.stripe_left" - }, - "minecraft:stripe_middle": { - "asset_id": "minecraft:stripe_middle", - "translation_key": "block.minecraft.banner.stripe_middle" - }, - "minecraft:stripe_right": { - "asset_id": "minecraft:stripe_right", - "translation_key": "block.minecraft.banner.stripe_right" - }, - "minecraft:stripe_top": { - "asset_id": "minecraft:stripe_top", - "translation_key": "block.minecraft.banner.stripe_top" - }, - "minecraft:triangle_bottom": { - "asset_id": "minecraft:triangle_bottom", - "translation_key": "block.minecraft.banner.triangle_bottom" - }, - "minecraft:triangle_top": { - "asset_id": "minecraft:triangle_top", - "translation_key": "block.minecraft.banner.triangle_top" - }, - "minecraft:triangles_bottom": { - "asset_id": "minecraft:triangles_bottom", - "translation_key": "block.minecraft.banner.triangles_bottom" - }, - "minecraft:triangles_top": { - "asset_id": "minecraft:triangles_top", - "translation_key": "block.minecraft.banner.triangles_top" - } - }, - "minecraft:chat_type": { - "minecraft:chat": { - "chat": { - "parameters": [ - "sender", - "content" - ], - "translation_key": "chat.type.text" - }, - "narration": { - "parameters": [ - "sender", - "content" - ], - "translation_key": "chat.type.text.narrate" - } - }, - "minecraft:emote_command": { - "chat": { - "parameters": [ - "sender", - "content" - ], - "translation_key": "chat.type.emote" - }, - "narration": { - "parameters": [ - "sender", - "content" - ], - "translation_key": "chat.type.emote" - } - }, - "minecraft:msg_command_incoming": { - "chat": { - "parameters": [ - "sender", - "content" - ], - "translation_key": "commands.message.display.incoming" - }, - "narration": { - "parameters": [ - "sender", - "content" - ], - "translation_key": "chat.type.text.narrate" - } - }, - "minecraft:msg_command_outgoing": { - "chat": { - "parameters": [ - "target", - "content" - ], - "translation_key": "commands.message.display.outgoing" - }, - "narration": { - "parameters": [ - "sender", - "content" - ], - "translation_key": "chat.type.text.narrate" - } - }, - "minecraft:say_command": { - "chat": { - "parameters": [ - "sender", - "content" - ], - "translation_key": "chat.type.announcement" - }, - "narration": { - "parameters": [ - "sender", - "content" - ], - "translation_key": "chat.type.text.narrate" - } - }, - "minecraft:team_msg_command_incoming": { - "chat": { - "parameters": [ - "target", - "sender", - "content" - ], - "translation_key": "chat.type.team.text" - }, - "narration": { - "parameters": [ - "sender", - "content" - ], - "translation_key": "chat.type.text.narrate" - } - }, - "minecraft:team_msg_command_outgoing": { - "chat": { - "parameters": [ - "target", - "sender", - "content" - ], - "translation_key": "chat.type.team.sent" - }, - "narration": { - "parameters": [ - "sender", - "content" - ], - "translation_key": "chat.type.text.narrate" - } - } - }, - "minecraft:damage_type": { - "minecraft:arrow": { - "exhaustion": 0.10000000149011612, - "message_id": "arrow", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:bad_respawn_point": { - "exhaustion": 0.10000000149011612, - "message_id": "badRespawnPoint", - "scaling": "always" - }, - "minecraft:cactus": { - "exhaustion": 0.10000000149011612, - "message_id": "cactus", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:campfire": { - "exhaustion": 0.10000000149011612, - "message_id": "inFire", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:cramming": { - "exhaustion": 0.0, - "message_id": "cramming", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:dragon_breath": { - "exhaustion": 0.0, - "message_id": "dragonBreath", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:drown": { - "exhaustion": 0.0, - "message_id": "drown", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:dry_out": { - "exhaustion": 0.10000000149011612, - "message_id": "dryout", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:ender_pearl": {}, - "minecraft:explosion": { - "exhaustion": 0.10000000149011612, - "message_id": "explosion", - "scaling": "always" - }, - "minecraft:fall": { - "exhaustion": 0.0, - "message_id": "fall", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:falling_anvil": { - "exhaustion": 0.10000000149011612, - "message_id": "anvil", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:falling_block": { - "exhaustion": 0.10000000149011612, - "message_id": "fallingBlock", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:falling_stalactite": { - "exhaustion": 0.10000000149011612, - "message_id": "fallingStalactite", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:fireball": { - "exhaustion": 0.10000000149011612, - "message_id": "fireball", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:fireworks": { - "exhaustion": 0.10000000149011612, - "message_id": "fireworks", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:fly_into_wall": { - "exhaustion": 0.0, - "message_id": "flyIntoWall", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:freeze": { - "exhaustion": 0.0, - "message_id": "freeze", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:generic": { - "exhaustion": 0.0, - "message_id": "generic", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:generic_kill": { - "exhaustion": 0.0, - "message_id": "genericKill", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:hot_floor": { - "exhaustion": 0.10000000149011612, - "message_id": "hotFloor", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:in_fire": { - "exhaustion": 0.10000000149011612, - "message_id": "inFire", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:in_wall": { - "exhaustion": 0.0, - "message_id": "inWall", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:indirect_magic": { - "exhaustion": 0.0, - "message_id": "indirectMagic", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:lava": { - "exhaustion": 0.10000000149011612, - "message_id": "lava", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:lightning_bolt": { - "exhaustion": 0.10000000149011612, - "message_id": "lightningBolt", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:magic": { - "exhaustion": 0.0, - "message_id": "magic", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:mob_attack": { - "exhaustion": 0.10000000149011612, - "message_id": "mob", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:mob_attack_no_aggro": { - "exhaustion": 0.10000000149011612, - "message_id": "mob", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:mob_projectile": { - "exhaustion": 0.10000000149011612, - "message_id": "mob", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:on_fire": { - "exhaustion": 0.0, - "message_id": "onFire", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:out_of_world": { - "exhaustion": 0.0, - "message_id": "outOfWorld", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:outside_border": { - "exhaustion": 0.0, - "message_id": "outsideBorder", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:player_attack": { - "exhaustion": 0.10000000149011612, - "message_id": "player", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:player_explosion": { - "exhaustion": 0.10000000149011612, - "message_id": "explosion.player", - "scaling": "always" - }, - "minecraft:sonic_boom": { - "exhaustion": 0.0, - "message_id": "sonic_boom", - "scaling": "always" - }, - "minecraft:spit": { - "exhaustion": 0.10000000149011612, - "message_id": "mob", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:stalagmite": { - "exhaustion": 0.0, - "message_id": "stalagmite", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:starve": { - "exhaustion": 0.0, - "message_id": "starve", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:sting": { - "exhaustion": 0.10000000149011612, - "message_id": "sting", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:sweet_berry_bush": { - "exhaustion": 0.10000000149011612, - "message_id": "sweetBerryBush", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:thorns": { - "exhaustion": 0.10000000149011612, - "message_id": "thorns", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:thrown": { - "exhaustion": 0.10000000149011612, - "message_id": "thrown", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:trident": { - "exhaustion": 0.10000000149011612, - "message_id": "trident", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:unattributed_fireball": { - "exhaustion": 0.10000000149011612, - "message_id": "onFire", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:wind_charge": { - "exhaustion": 0.10000000149011612, - "message_id": "mob", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:wither": { - "exhaustion": 0.0, - "message_id": "wither", - "scaling": "when_caused_by_living_non_player" - }, - "minecraft:wither_skull": { - "exhaustion": 0.10000000149011612, - "message_id": "witherSkull", - "scaling": "when_caused_by_living_non_player" - } - }, - "minecraft:dimension_type": { - "minecraft:overworld": { - "ambient_light": 0.0, - "bed_works": 1, - "coordinate_scale": 1.0, - "effects": "minecraft:overworld", - "has_ceiling": 0, - "has_raids": 1, - "has_skylight": 1, - "height": 384, - "infiniburn": "#minecraft:infiniburn_overworld", - "logical_height": 384, - "min_y": -64, - "monster_spawn_block_light_limit": 0, - "monster_spawn_light_level": { - "max_inclusive": 7, - "min_inclusive": 0, - "type": "minecraft:uniform" - }, - "natural": 1, - "piglin_safe": 0, - "respawn_anchor_works": 0, - "ultrawarm": 0 - }, - "minecraft:overworld_caves": { - "ambient_light": 0.0, - "bed_works": 1, - "coordinate_scale": 1.0, - "effects": "minecraft:overworld", - "has_ceiling": 1, - "has_raids": 1, - "has_skylight": 1, - "height": 384, - "infiniburn": "#minecraft:infiniburn_overworld", - "logical_height": 384, - "min_y": -64, - "monster_spawn_block_light_limit": 0, - "monster_spawn_light_level": { - "max_inclusive": 7, - "min_inclusive": 0, - "type": "minecraft:uniform" - }, - "natural": 1, - "piglin_safe": 0, - "respawn_anchor_works": 0, - "ultrawarm": 0 - }, - "minecraft:the_end": { - "ambient_light": 0.0, - "bed_works": 0, - "coordinate_scale": 1.0, - "effects": "minecraft:the_end", - "has_ceiling": 0, - "has_raids": 1, - "has_skylight": 0, - "height": 256, - "infiniburn": "#minecraft:infiniburn_end", - "logical_height": 256, - "min_y": 0, - "monster_spawn_block_light_limit": 0, - "monster_spawn_light_level": { - "max_inclusive": 7, - "min_inclusive": 0, - "type": "minecraft:uniform" - }, - "natural": 0, - "piglin_safe": 0, - "respawn_anchor_works": 0, - "ultrawarm": 0 - }, - "minecraft:the_nether": { - "ambient_light": 0.10000000149011612, - "bed_works": 0, - "coordinate_scale": 8.0, - "effects": "minecraft:the_nether", - "has_ceiling": 1, - "has_raids": 0, - "has_skylight": 0, - "height": 256, - "infiniburn": "#minecraft:infiniburn_nether", - "logical_height": 128, - "min_y": 0, - "monster_spawn_block_light_limit": 15, - "monster_spawn_light_level": { - "max_inclusive": 7, - "min_inclusive": 7, - "type": "minecraft:uniform" - }, - "natural": 0, - "piglin_safe": 1, - "respawn_anchor_works": 1, - "ultrawarm": 1 - } - }, - "minecraft:painting_variant": { - "minecraft:alban": { - "asset_id": "minecraft:alban", - "height": 1, - "width": 1 - }, - "minecraft:aztec": { - "asset_id": "minecraft:aztec", - "height": 1, - "width": 1 - }, - "minecraft:aztec2": { - "asset_id": "minecraft:aztec2", - "height": 1, - "width": 1 - }, - "minecraft:backyard": { - "asset_id": "minecraft:backyard", - "height": 4, - "width": 3 - }, - "minecraft:baroque": { - "asset_id": "minecraft:baroque", - "height": 2, - "width": 2 - }, - "minecraft:bomb": { - "asset_id": "minecraft:bomb", - "height": 1, - "width": 1 - }, - "minecraft:bouquet": { - "asset_id": "minecraft:bouquet", - "height": 3, - "width": 3 - }, - "minecraft:burning_skull": { - "asset_id": "minecraft:burning_skull", - "height": 4, - "width": 4 - }, - "minecraft:bust": { - "asset_id": "minecraft:bust", - "height": 2, - "width": 2 - }, - "minecraft:cavebird": { - "asset_id": "minecraft:cavebird", - "height": 3, - "width": 3 - }, - "minecraft:changing": { - "asset_id": "minecraft:changing", - "height": 2, - "width": 4 - }, - "minecraft:cotan": { - "asset_id": "minecraft:cotan", - "height": 3, - "width": 3 - }, - "minecraft:courbet": { - "asset_id": "minecraft:courbet", - "height": 1, - "width": 2 - }, - "minecraft:creebet": { - "asset_id": "minecraft:creebet", - "height": 1, - "width": 2 - }, - "minecraft:donkey_kong": { - "asset_id": "minecraft:donkey_kong", - "height": 3, - "width": 4 - }, - "minecraft:earth": { - "asset_id": "minecraft:earth", - "height": 2, - "width": 2 - }, - "minecraft:endboss": { - "asset_id": "minecraft:endboss", - "height": 3, - "width": 3 - }, - "minecraft:fern": { - "asset_id": "minecraft:fern", - "height": 3, - "width": 3 - }, - "minecraft:fighters": { - "asset_id": "minecraft:fighters", - "height": 2, - "width": 4 - }, - "minecraft:finding": { - "asset_id": "minecraft:finding", - "height": 2, - "width": 4 - }, - "minecraft:fire": { - "asset_id": "minecraft:fire", - "height": 2, - "width": 2 - }, - "minecraft:graham": { - "asset_id": "minecraft:graham", - "height": 2, - "width": 1 - }, - "minecraft:humble": { - "asset_id": "minecraft:humble", - "height": 2, - "width": 2 - }, - "minecraft:kebab": { - "asset_id": "minecraft:kebab", - "height": 1, - "width": 1 - }, - "minecraft:lowmist": { - "asset_id": "minecraft:lowmist", - "height": 2, - "width": 4 - }, - "minecraft:match": { - "asset_id": "minecraft:match", - "height": 2, - "width": 2 - }, - "minecraft:meditative": { - "asset_id": "minecraft:meditative", - "height": 1, - "width": 1 - }, - "minecraft:orb": { - "asset_id": "minecraft:orb", - "height": 4, - "width": 4 - }, - "minecraft:owlemons": { - "asset_id": "minecraft:owlemons", - "height": 3, - "width": 3 - }, - "minecraft:passage": { - "asset_id": "minecraft:passage", - "height": 2, - "width": 4 - }, - "minecraft:pigscene": { - "asset_id": "minecraft:pigscene", - "height": 4, - "width": 4 - }, - "minecraft:plant": { - "asset_id": "minecraft:plant", - "height": 1, - "width": 1 - }, - "minecraft:pointer": { - "asset_id": "minecraft:pointer", - "height": 4, - "width": 4 - }, - "minecraft:pond": { - "asset_id": "minecraft:pond", - "height": 4, - "width": 3 - }, - "minecraft:pool": { - "asset_id": "minecraft:pool", - "height": 1, - "width": 2 - }, - "minecraft:prairie_ride": { - "asset_id": "minecraft:prairie_ride", - "height": 2, - "width": 1 - }, - "minecraft:sea": { - "asset_id": "minecraft:sea", - "height": 1, - "width": 2 - }, - "minecraft:skeleton": { - "asset_id": "minecraft:skeleton", - "height": 3, - "width": 4 - }, - "minecraft:skull_and_roses": { - "asset_id": "minecraft:skull_and_roses", - "height": 2, - "width": 2 - }, - "minecraft:stage": { - "asset_id": "minecraft:stage", - "height": 2, - "width": 2 - }, - "minecraft:sunflowers": { - "asset_id": "minecraft:sunflowers", - "height": 3, - "width": 3 - }, - "minecraft:sunset": { - "asset_id": "minecraft:sunset", - "height": 1, - "width": 2 - }, - "minecraft:tides": { - "asset_id": "minecraft:tides", - "height": 3, - "width": 3 - }, - "minecraft:unpacked": { - "asset_id": "minecraft:unpacked", - "height": 4, - "width": 4 - }, - "minecraft:void": { - "asset_id": "minecraft:void", - "height": 2, - "width": 2 - }, - "minecraft:wanderer": { - "asset_id": "minecraft:wanderer", - "height": 2, - "width": 1 - }, - "minecraft:wasteland": { - "asset_id": "minecraft:wasteland", - "height": 1, - "width": 1 - }, - "minecraft:water": { - "asset_id": "minecraft:water", - "height": 2, - "width": 2 - }, - "minecraft:wind": { - "asset_id": "minecraft:wind", - "height": 2, - "width": 2 - }, - "minecraft:wither": { - "asset_id": "minecraft:wither", - "height": 2, - "width": 2 - } - }, - "minecraft:trim_material": { - "minecraft:amethyst": { - "asset_name": "amethyst", - "description": { - "color": "#9A5CC6", - "translate": "trim_material.minecraft.amethyst" - }, - "ingredient": "minecraft:amethyst_shard", - "item_model_index": 1.0 - }, - "minecraft:copper": { - "asset_name": "copper", - "description": { - "color": "#B4684D", - "translate": "trim_material.minecraft.copper" - }, - "ingredient": "minecraft:copper_ingot", - "item_model_index": 0.5 - }, - "minecraft:diamond": { - "asset_name": "diamond", - "description": { - "color": "#6EECD2", - "translate": "trim_material.minecraft.diamond" - }, - "ingredient": "minecraft:diamond", - "item_model_index": 0.800000011920929 - }, - "minecraft:emerald": { - "asset_name": "emerald", - "description": { - "color": "#11A036", - "translate": "trim_material.minecraft.emerald" - }, - "ingredient": "minecraft:emerald", - "item_model_index": 0.699999988079071 - }, - "minecraft:gold": { - "asset_name": "gold", - "description": { - "color": "#DEB12D", - "translate": "trim_material.minecraft.gold" - }, - "ingredient": "minecraft:gold_ingot", - "item_model_index": 0.6000000238418579 - }, - "minecraft:iron": { - "asset_name": "iron", - "description": { - "color": "#ECECEC", - "translate": "trim_material.minecraft.iron" - }, - "ingredient": "minecraft:iron_ingot", - "item_model_index": 0.20000000298023224 - }, - "minecraft:lapis": { - "asset_name": "lapis", - "description": { - "color": "#416E97", - "translate": "trim_material.minecraft.lapis" - }, - "ingredient": "minecraft:lapis_lazuli", - "item_model_index": 0.8999999761581421 - }, - "minecraft:netherite": { - "asset_name": "netherite", - "description": { - "color": "#625859", - "translate": "trim_material.minecraft.netherite" - }, - "ingredient": "minecraft:netherite_ingot", - "item_model_index": 0.30000001192092896 - }, - "minecraft:quartz": { - "asset_name": "quartz", - "description": { - "color": "#E3D4C4", - "translate": "trim_material.minecraft.quartz" - }, - "ingredient": "minecraft:quartz", - "item_model_index": 0.10000000149011612 - }, - "minecraft:redstone": { - "asset_name": "redstone", - "description": { - "color": "#971607", - "translate": "trim_material.minecraft.redstone" - }, - "ingredient": "minecraft:redstone", - "item_model_index": 0.4000000059604645 - } - }, - "minecraft:trim_pattern": { - "minecraft:bolt": { - "asset_id": "minecraft:bolt", - "description": { - "translate": "trim_pattern.minecraft.bolt" - }, - "template_item": "minecraft:bolt_armor_trim_smithing_template" - }, - "minecraft:coast": { - "asset_id": "minecraft:coast", - "description": { - "translate": "trim_pattern.minecraft.coast" - }, - "template_item": "minecraft:coast_armor_trim_smithing_template" - }, - "minecraft:dune": { - "asset_id": "minecraft:dune", - "description": { - "translate": "trim_pattern.minecraft.dune" - }, - "template_item": "minecraft:dune_armor_trim_smithing_template" - }, - "minecraft:eye": { - "asset_id": "minecraft:eye", - "description": { - "translate": "trim_pattern.minecraft.eye" - }, - "template_item": "minecraft:eye_armor_trim_smithing_template" - }, - "minecraft:flow": { - "asset_id": "minecraft:flow", - "description": { - "translate": "trim_pattern.minecraft.flow" - }, - "template_item": "minecraft:flow_armor_trim_smithing_template" - }, - "minecraft:host": { - "asset_id": "minecraft:host", - "description": { - "translate": "trim_pattern.minecraft.host" - }, - "template_item": "minecraft:host_armor_trim_smithing_template" - }, - "minecraft:raiser": { - "asset_id": "minecraft:raiser", - "description": { - "translate": "trim_pattern.minecraft.raiser" - }, - "template_item": "minecraft:raiser_armor_trim_smithing_template" - }, - "minecraft:rib": { - "asset_id": "minecraft:rib", - "description": { - "translate": "trim_pattern.minecraft.rib" - }, - "template_item": "minecraft:rib_armor_trim_smithing_template" - }, - "minecraft:sentry": { - "asset_id": "minecraft:sentry", - "description": { - "translate": "trim_pattern.minecraft.sentry" - }, - "template_item": "minecraft:sentry_armor_trim_smithing_template" - }, - "minecraft:shaper": { - "asset_id": "minecraft:shaper", - "description": { - "translate": "trim_pattern.minecraft.shaper" - }, - "template_item": "minecraft:shaper_armor_trim_smithing_template" - }, - "minecraft:silence": { - "asset_id": "minecraft:silence", - "description": { - "translate": "trim_pattern.minecraft.silence" - }, - "template_item": "minecraft:silence_armor_trim_smithing_template" - }, - "minecraft:snout": { - "asset_id": "minecraft:snout", - "description": { - "translate": "trim_pattern.minecraft.snout" - }, - "template_item": "minecraft:snout_armor_trim_smithing_template" - }, - "minecraft:spire": { - "asset_id": "minecraft:spire", - "description": { - "translate": "trim_pattern.minecraft.spire" - }, - "template_item": "minecraft:spire_armor_trim_smithing_template" - }, - "minecraft:tide": { - "asset_id": "minecraft:tide", - "description": { - "translate": "trim_pattern.minecraft.tide" - }, - "template_item": "minecraft:tide_armor_trim_smithing_template" - }, - "minecraft:vex": { - "asset_id": "minecraft:vex", - "description": { - "translate": "trim_pattern.minecraft.vex" - }, - "template_item": "minecraft:vex_armor_trim_smithing_template" - }, - "minecraft:ward": { - "asset_id": "minecraft:ward", - "description": { - "translate": "trim_pattern.minecraft.ward" - }, - "template_item": "minecraft:ward_armor_trim_smithing_template" - }, - "minecraft:wayfinder": { - "asset_id": "minecraft:wayfinder", - "description": { - "translate": "trim_pattern.minecraft.wayfinder" - }, - "template_item": "minecraft:wayfinder_armor_trim_smithing_template" - }, - "minecraft:wild": { - "asset_id": "minecraft:wild", - "description": { - "translate": "trim_pattern.minecraft.wild" - }, - "template_item": "minecraft:wild_armor_trim_smithing_template" - } - }, - "minecraft:wolf_variant": { - "minecraft:ashen": { - "angry_texture": "minecraft:entity/wolf/wolf_ashen_angry", - "biomes": "minecraft:snowy_taiga", - "tame_texture": "minecraft:entity/wolf/wolf_ashen_tame", - "wild_texture": "minecraft:entity/wolf/wolf_ashen" - }, - "minecraft:black": { - "angry_texture": "minecraft:entity/wolf/wolf_black_angry", - "biomes": "minecraft:old_growth_pine_taiga", - "tame_texture": "minecraft:entity/wolf/wolf_black_tame", - "wild_texture": "minecraft:entity/wolf/wolf_black" - }, - "minecraft:chestnut": { - "angry_texture": "minecraft:entity/wolf/wolf_chestnut_angry", - "biomes": "minecraft:old_growth_spruce_taiga", - "tame_texture": "minecraft:entity/wolf/wolf_chestnut_tame", - "wild_texture": "minecraft:entity/wolf/wolf_chestnut" - }, - "minecraft:pale": { - "angry_texture": "minecraft:entity/wolf/wolf_angry", - "biomes": "minecraft:taiga", - "tame_texture": "minecraft:entity/wolf/wolf_tame", - "wild_texture": "minecraft:entity/wolf/wolf" - }, - "minecraft:rusty": { - "angry_texture": "minecraft:entity/wolf/wolf_rusty_angry", - "biomes": "#minecraft:is_jungle", - "tame_texture": "minecraft:entity/wolf/wolf_rusty_tame", - "wild_texture": "minecraft:entity/wolf/wolf_rusty" - }, - "minecraft:snowy": { - "angry_texture": "minecraft:entity/wolf/wolf_snowy_angry", - "biomes": "minecraft:grove", - "tame_texture": "minecraft:entity/wolf/wolf_snowy_tame", - "wild_texture": "minecraft:entity/wolf/wolf_snowy" - }, - "minecraft:spotted": { - "angry_texture": "minecraft:entity/wolf/wolf_spotted_angry", - "biomes": "#minecraft:is_savanna", - "tame_texture": "minecraft:entity/wolf/wolf_spotted_tame", - "wild_texture": "minecraft:entity/wolf/wolf_spotted" - }, - "minecraft:striped": { - "angry_texture": "minecraft:entity/wolf/wolf_striped_angry", - "biomes": "#minecraft:is_badlands", - "tame_texture": "minecraft:entity/wolf/wolf_striped_tame", - "wild_texture": "minecraft:entity/wolf/wolf_striped" - }, - "minecraft:woods": { - "angry_texture": "minecraft:entity/wolf/wolf_woods_angry", - "biomes": "minecraft:forest", - "tame_texture": "minecraft:entity/wolf/wolf_woods_tame", - "wild_texture": "minecraft:entity/wolf/wolf_woods" - } - }, - "minecraft:worldgen/biome": { - "minecraft:badlands": { - "downfall": 0.0, - "effects": { - "fog_color": 12638463, - "foliage_color": 10387789, - "grass_color": 9470285, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "music": { - "max_delay": 24000, - "min_delay": 12000, - "replace_current_music": false, - "sound": "minecraft:music.overworld.badlands" - }, - "sky_color": 7254527, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": false, - "temperature": 2.0 - }, - "minecraft:bamboo_jungle": { - "downfall": 0.8999999761581421, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "music": { - "max_delay": 24000, - "min_delay": 12000, - "replace_current_music": false, - "sound": "minecraft:music.overworld.bamboo_jungle" - }, - "sky_color": 7842047, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": 0.949999988079071 - }, - "minecraft:basalt_deltas": { - "downfall": 0.0, - "effects": { - "additions_sound": { - "sound": "minecraft:ambient.basalt_deltas.additions", - "tick_chance": 0.0111 - }, - "ambient_sound": "minecraft:ambient.basalt_deltas.loop", - "fog_color": 6840176, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.basalt_deltas.mood", - "tick_delay": 6000 - }, - "music": { - "max_delay": 24000, - "min_delay": 12000, - "replace_current_music": false, - "sound": "minecraft:music.nether.basalt_deltas" - }, - "particle": { - "options": { - "type": "minecraft:white_ash" - }, - "probability": 0.118093334 - }, - "sky_color": 7254527, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": false, - "temperature": 2.0 - }, - "minecraft:beach": { - "downfall": 0.4000000059604645, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "sky_color": 7907327, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": 0.800000011920929 - }, - "minecraft:birch_forest": { - "downfall": 0.6000000238418579, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "music": { - "max_delay": 24000, - "min_delay": 12000, - "replace_current_music": false, - "sound": "minecraft:music.overworld.forest" - }, - "sky_color": 8037887, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": 0.6000000238418579 - }, - "minecraft:cherry_grove": { - "downfall": 0.800000011920929, - "effects": { - "fog_color": 12638463, - "foliage_color": 11983713, - "grass_color": 11983713, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "music": { - "max_delay": 24000, - "min_delay": 12000, - "replace_current_music": false, - "sound": "minecraft:music.overworld.cherry_grove" - }, - "sky_color": 8103167, - "water_color": 6141935, - "water_fog_color": 6141935 - }, - "has_precipitation": true, - "temperature": 0.5 - }, - "minecraft:cold_ocean": { - "downfall": 0.5, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "sky_color": 8103167, - "water_color": 4020182, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": 0.5 - }, - "minecraft:crimson_forest": { - "downfall": 0.0, - "effects": { - "additions_sound": { - "sound": "minecraft:ambient.crimson_forest.additions", - "tick_chance": 0.0111 - }, - "ambient_sound": "minecraft:ambient.crimson_forest.loop", - "fog_color": 3343107, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.crimson_forest.mood", - "tick_delay": 6000 - }, - "music": { - "max_delay": 24000, - "min_delay": 12000, - "replace_current_music": false, - "sound": "minecraft:music.nether.crimson_forest" - }, - "particle": { - "options": { - "type": "minecraft:crimson_spore" - }, - "probability": 0.025 - }, - "sky_color": 7254527, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": false, - "temperature": 2.0 - }, - "minecraft:dark_forest": { - "downfall": 0.800000011920929, - "effects": { - "fog_color": 12638463, - "grass_color_modifier": "dark_forest", - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "music": { - "max_delay": 24000, - "min_delay": 12000, - "replace_current_music": false, - "sound": "minecraft:music.overworld.forest" - }, - "sky_color": 7972607, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": 0.699999988079071 - }, - "minecraft:deep_cold_ocean": { - "downfall": 0.5, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "sky_color": 8103167, - "water_color": 4020182, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": 0.5 - }, - "minecraft:deep_dark": { - "downfall": 0.4000000059604645, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "music": { - "max_delay": 24000, - "min_delay": 12000, - "replace_current_music": false, - "sound": "minecraft:music.overworld.deep_dark" - }, - "sky_color": 7907327, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": 0.800000011920929 - }, - "minecraft:deep_frozen_ocean": { - "downfall": 0.5, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "sky_color": 8103167, - "water_color": 3750089, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": 0.5 - }, - "minecraft:deep_lukewarm_ocean": { - "downfall": 0.5, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "sky_color": 8103167, - "water_color": 4566514, - "water_fog_color": 267827 - }, - "has_precipitation": true, - "temperature": 0.5 - }, - "minecraft:deep_ocean": { - "downfall": 0.5, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "sky_color": 8103167, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": 0.5 - }, - "minecraft:desert": { - "downfall": 0.0, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "music": { - "max_delay": 24000, - "min_delay": 12000, - "replace_current_music": false, - "sound": "minecraft:music.overworld.desert" - }, - "sky_color": 7254527, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": false, - "temperature": 2.0 - }, - "minecraft:dripstone_caves": { - "downfall": 0.4000000059604645, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "music": { - "max_delay": 24000, - "min_delay": 12000, - "replace_current_music": false, - "sound": "minecraft:music.overworld.dripstone_caves" - }, - "sky_color": 7907327, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": 0.800000011920929 - }, - "minecraft:end_barrens": { - "downfall": 0.5, - "effects": { - "fog_color": 10518688, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "sky_color": 0, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": false, - "temperature": 0.5 - }, - "minecraft:end_highlands": { - "downfall": 0.5, - "effects": { - "fog_color": 10518688, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "sky_color": 0, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": false, - "temperature": 0.5 - }, - "minecraft:end_midlands": { - "downfall": 0.5, - "effects": { - "fog_color": 10518688, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "sky_color": 0, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": false, - "temperature": 0.5 - }, - "minecraft:eroded_badlands": { - "downfall": 0.0, - "effects": { - "fog_color": 12638463, - "foliage_color": 10387789, - "grass_color": 9470285, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "music": { - "max_delay": 24000, - "min_delay": 12000, - "replace_current_music": false, - "sound": "minecraft:music.overworld.badlands" - }, - "sky_color": 7254527, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": false, - "temperature": 2.0 - }, - "minecraft:flower_forest": { - "downfall": 0.800000011920929, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "music": { - "max_delay": 24000, - "min_delay": 12000, - "replace_current_music": false, - "sound": "minecraft:music.overworld.flower_forest" - }, - "sky_color": 7972607, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": 0.699999988079071 - }, - "minecraft:forest": { - "downfall": 0.800000011920929, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "music": { - "max_delay": 24000, - "min_delay": 12000, - "replace_current_music": false, - "sound": "minecraft:music.overworld.forest" - }, - "sky_color": 7972607, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": 0.699999988079071 - }, - "minecraft:frozen_ocean": { - "downfall": 0.5, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "sky_color": 8364543, - "water_color": 3750089, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": 0.0 - }, - "minecraft:frozen_peaks": { - "downfall": 0.8999999761581421, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "music": { - "max_delay": 24000, - "min_delay": 12000, - "replace_current_music": false, - "sound": "minecraft:music.overworld.frozen_peaks" - }, - "sky_color": 8756735, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": -0.699999988079071 - }, - "minecraft:frozen_river": { - "downfall": 0.5, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "sky_color": 8364543, - "water_color": 3750089, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": 0.0 - }, - "minecraft:grove": { - "downfall": 0.800000011920929, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "music": { - "max_delay": 24000, - "min_delay": 12000, - "replace_current_music": false, - "sound": "minecraft:music.overworld.grove" - }, - "sky_color": 8495359, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": -0.20000000298023224 - }, - "minecraft:ice_spikes": { - "downfall": 0.5, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "sky_color": 8364543, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": 0.0 - }, - "minecraft:jagged_peaks": { - "downfall": 0.8999999761581421, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "music": { - "max_delay": 24000, - "min_delay": 12000, - "replace_current_music": false, - "sound": "minecraft:music.overworld.jagged_peaks" - }, - "sky_color": 8756735, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": -0.699999988079071 - }, - "minecraft:jungle": { - "downfall": 0.8999999761581421, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "music": { - "max_delay": 24000, - "min_delay": 12000, - "replace_current_music": false, - "sound": "minecraft:music.overworld.jungle" - }, - "sky_color": 7842047, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": 0.949999988079071 - }, - "minecraft:lukewarm_ocean": { - "downfall": 0.5, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "sky_color": 8103167, - "water_color": 4566514, - "water_fog_color": 267827 - }, - "has_precipitation": true, - "temperature": 0.5 - }, - "minecraft:lush_caves": { - "downfall": 0.5, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "music": { - "max_delay": 24000, - "min_delay": 12000, - "replace_current_music": false, - "sound": "minecraft:music.overworld.lush_caves" - }, - "sky_color": 8103167, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": 0.5 - }, - "minecraft:mangrove_swamp": { - "downfall": 0.8999999761581421, - "effects": { - "fog_color": 12638463, - "foliage_color": 9285927, - "grass_color_modifier": "swamp", - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "music": { - "max_delay": 24000, - "min_delay": 12000, - "replace_current_music": false, - "sound": "minecraft:music.overworld.swamp" - }, - "sky_color": 7907327, - "water_color": 3832426, - "water_fog_color": 5077600 - }, - "has_precipitation": true, - "temperature": 0.800000011920929 - }, - "minecraft:meadow": { - "downfall": 0.800000011920929, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "music": { - "max_delay": 24000, - "min_delay": 12000, - "replace_current_music": false, - "sound": "minecraft:music.overworld.meadow" - }, - "sky_color": 8103167, - "water_color": 937679, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": 0.5 - }, - "minecraft:mushroom_fields": { - "downfall": 1.0, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "sky_color": 7842047, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": 0.8999999761581421 - }, - "minecraft:nether_wastes": { - "downfall": 0.0, - "effects": { - "additions_sound": { - "sound": "minecraft:ambient.nether_wastes.additions", - "tick_chance": 0.0111 - }, - "ambient_sound": "minecraft:ambient.nether_wastes.loop", - "fog_color": 3344392, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.nether_wastes.mood", - "tick_delay": 6000 - }, - "music": { - "max_delay": 24000, - "min_delay": 12000, - "replace_current_music": false, - "sound": "minecraft:music.nether.nether_wastes" - }, - "sky_color": 7254527, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": false, - "temperature": 2.0 - }, - "minecraft:ocean": { - "downfall": 0.5, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "sky_color": 8103167, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": 0.5 - }, - "minecraft:old_growth_birch_forest": { - "downfall": 0.6000000238418579, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "music": { - "max_delay": 24000, - "min_delay": 12000, - "replace_current_music": false, - "sound": "minecraft:music.overworld.forest" - }, - "sky_color": 8037887, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": 0.6000000238418579 - }, - "minecraft:old_growth_pine_taiga": { - "downfall": 0.800000011920929, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "music": { - "max_delay": 24000, - "min_delay": 12000, - "replace_current_music": false, - "sound": "minecraft:music.overworld.old_growth_taiga" - }, - "sky_color": 8168447, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": 0.30000001192092896 - }, - "minecraft:old_growth_spruce_taiga": { - "downfall": 0.800000011920929, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "music": { - "max_delay": 24000, - "min_delay": 12000, - "replace_current_music": false, - "sound": "minecraft:music.overworld.old_growth_taiga" - }, - "sky_color": 8233983, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": 0.25 - }, - "minecraft:plains": { - "downfall": 0.4000000059604645, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "sky_color": 7907327, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": 0.800000011920929 - }, - "minecraft:river": { - "downfall": 0.5, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "sky_color": 8103167, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": 0.5 - }, - "minecraft:savanna": { - "downfall": 0.0, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "sky_color": 7254527, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": false, - "temperature": 2.0 - }, - "minecraft:savanna_plateau": { - "downfall": 0.0, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "sky_color": 7254527, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": false, - "temperature": 2.0 - }, - "minecraft:small_end_islands": { - "downfall": 0.5, - "effects": { - "fog_color": 10518688, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "sky_color": 0, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": false, - "temperature": 0.5 - }, - "minecraft:snowy_beach": { - "downfall": 0.30000001192092896, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "sky_color": 8364543, - "water_color": 4020182, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": 0.05000000074505806 - }, - "minecraft:snowy_plains": { - "downfall": 0.5, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "sky_color": 8364543, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": 0.0 - }, - "minecraft:snowy_slopes": { - "downfall": 0.8999999761581421, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "music": { - "max_delay": 24000, - "min_delay": 12000, - "replace_current_music": false, - "sound": "minecraft:music.overworld.snowy_slopes" - }, - "sky_color": 8560639, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": -0.30000001192092896 - }, - "minecraft:snowy_taiga": { - "downfall": 0.4000000059604645, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "sky_color": 8625919, - "water_color": 4020182, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": -0.5 - }, - "minecraft:soul_sand_valley": { - "downfall": 0.0, - "effects": { - "additions_sound": { - "sound": "minecraft:ambient.soul_sand_valley.additions", - "tick_chance": 0.0111 - }, - "ambient_sound": "minecraft:ambient.soul_sand_valley.loop", - "fog_color": 1787717, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.soul_sand_valley.mood", - "tick_delay": 6000 - }, - "music": { - "max_delay": 24000, - "min_delay": 12000, - "replace_current_music": false, - "sound": "minecraft:music.nether.soul_sand_valley" - }, - "particle": { - "options": { - "type": "minecraft:ash" - }, - "probability": 0.00625 - }, - "sky_color": 7254527, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": false, - "temperature": 2.0 - }, - "minecraft:sparse_jungle": { - "downfall": 0.800000011920929, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "music": { - "max_delay": 24000, - "min_delay": 12000, - "replace_current_music": false, - "sound": "minecraft:music.overworld.sparse_jungle" - }, - "sky_color": 7842047, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": 0.949999988079071 - }, - "minecraft:stony_peaks": { - "downfall": 0.30000001192092896, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "music": { - "max_delay": 24000, - "min_delay": 12000, - "replace_current_music": false, - "sound": "minecraft:music.overworld.stony_peaks" - }, - "sky_color": 7776511, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": 1.0 - }, - "minecraft:stony_shore": { - "downfall": 0.30000001192092896, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "sky_color": 8233727, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": 0.20000000298023224 - }, - "minecraft:sunflower_plains": { - "downfall": 0.4000000059604645, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "sky_color": 7907327, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": 0.800000011920929 - }, - "minecraft:swamp": { - "downfall": 0.8999999761581421, - "effects": { - "fog_color": 12638463, - "foliage_color": 6975545, - "grass_color_modifier": "swamp", - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "music": { - "max_delay": 24000, - "min_delay": 12000, - "replace_current_music": false, - "sound": "minecraft:music.overworld.swamp" - }, - "sky_color": 7907327, - "water_color": 6388580, - "water_fog_color": 2302743 - }, - "has_precipitation": true, - "temperature": 0.800000011920929 - }, - "minecraft:taiga": { - "downfall": 0.800000011920929, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "sky_color": 8233983, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": 0.25 - }, - "minecraft:the_end": { - "downfall": 0.5, - "effects": { - "fog_color": 10518688, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "sky_color": 0, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": false, - "temperature": 0.5 - }, - "minecraft:the_void": { - "downfall": 0.5, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "sky_color": 8103167, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": false, - "temperature": 0.5 - }, - "minecraft:warm_ocean": { - "downfall": 0.5, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "sky_color": 8103167, - "water_color": 4445678, - "water_fog_color": 270131 - }, - "has_precipitation": true, - "temperature": 0.5 - }, - "minecraft:warped_forest": { - "downfall": 0.0, - "effects": { - "additions_sound": { - "sound": "minecraft:ambient.warped_forest.additions", - "tick_chance": 0.0111 - }, - "ambient_sound": "minecraft:ambient.warped_forest.loop", - "fog_color": 1705242, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.warped_forest.mood", - "tick_delay": 6000 - }, - "music": { - "max_delay": 24000, - "min_delay": 12000, - "replace_current_music": false, - "sound": "minecraft:music.nether.warped_forest" - }, - "particle": { - "options": { - "type": "minecraft:warped_spore" - }, - "probability": 0.01428 - }, - "sky_color": 7254527, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": false, - "temperature": 2.0 - }, - "minecraft:windswept_forest": { - "downfall": 0.30000001192092896, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "sky_color": 8233727, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": 0.20000000298023224 - }, - "minecraft:windswept_gravelly_hills": { - "downfall": 0.30000001192092896, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "sky_color": 8233727, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": 0.20000000298023224 - }, - "minecraft:windswept_hills": { - "downfall": 0.30000001192092896, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "sky_color": 8233727, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": true, - "temperature": 0.20000000298023224 - }, - "minecraft:windswept_savanna": { - "downfall": 0.0, - "effects": { - "fog_color": 12638463, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "sky_color": 7254527, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": false, - "temperature": 2.0 - }, - "minecraft:wooded_badlands": { - "downfall": 0.0, - "effects": { - "fog_color": 12638463, - "foliage_color": 10387789, - "grass_color": 9470285, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "music": { - "max_delay": 24000, - "min_delay": 12000, - "replace_current_music": false, - "sound": "minecraft:music.overworld.badlands" - }, - "sky_color": 7254527, - "water_color": 4159204, - "water_fog_color": 329011 - }, - "has_precipitation": false, - "temperature": 2.0 - } - } -} \ No newline at end of file