diff --git a/README.md b/README.md index 453d567..013e33e 100644 --- a/README.md +++ b/README.md @@ -8,7 +8,7 @@ A gophertunnel protocol interface implementation to support older Minecraft Bedr | 766 | 1.21.50 | ✅ | | 748 | 1.21.40 | ✅ | | 729 | 1.21.30 | ✅ | -| 712 | 1.21.20 | 🚧 | +| 712 | 1.21.20 | ✅ | | 686 | 1.21.2 | 🚧 | | 685 | 1.21.0 | 🚧 | diff --git a/legacyver/data/block_states_712.nbt b/legacyver/data/block_states_712.nbt new file mode 100644 index 0000000..556c9ed Binary files /dev/null and b/legacyver/data/block_states_712.nbt differ diff --git a/legacyver/data/item_runtime_ids_712.nbt b/legacyver/data/item_runtime_ids_712.nbt new file mode 100644 index 0000000..10fa3de Binary files /dev/null and b/legacyver/data/item_runtime_ids_712.nbt differ diff --git a/legacyver/data/required_item_list_712.json b/legacyver/data/required_item_list_712.json new file mode 100644 index 0000000..eae6ea4 --- /dev/null +++ b/legacyver/data/required_item_list_712.json @@ -0,0 +1,6802 @@ +{ + "minecraft:acacia_boat": { + "runtime_id": 388, + "component_based": false + }, + "minecraft:acacia_button": { + "runtime_id": -140, + "component_based": false + }, + "minecraft:acacia_chest_boat": { + "runtime_id": 663, + "component_based": false + }, + "minecraft:acacia_door": { + "runtime_id": 573, + "component_based": false + }, + "minecraft:acacia_double_slab": { + "runtime_id": -812, + "component_based": false + }, + "minecraft:acacia_fence": { + "runtime_id": -575, + "component_based": false + }, + "minecraft:acacia_fence_gate": { + "runtime_id": 187, + "component_based": false + }, + "minecraft:acacia_hanging_sign": { + "runtime_id": -504, + "component_based": false + }, + "minecraft:acacia_leaves": { + "runtime_id": 161, + "component_based": false + }, + "minecraft:acacia_log": { + "runtime_id": 162, + "component_based": false + }, + "minecraft:acacia_planks": { + "runtime_id": -742, + "component_based": false + }, + "minecraft:acacia_pressure_plate": { + "runtime_id": -150, + "component_based": false + }, + "minecraft:acacia_sapling": { + "runtime_id": -828, + "component_based": false + }, + "minecraft:acacia_sign": { + "runtime_id": 596, + "component_based": false + }, + "minecraft:acacia_slab": { + "runtime_id": -807, + "component_based": false + }, + "minecraft:acacia_stairs": { + "runtime_id": 163, + "component_based": false + }, + "minecraft:acacia_standing_sign": { + "runtime_id": -190, + "component_based": false + }, + "minecraft:acacia_trapdoor": { + "runtime_id": -145, + "component_based": false + }, + "minecraft:acacia_wall_sign": { + "runtime_id": -191, + "component_based": false + }, + "minecraft:acacia_wood": { + "runtime_id": -817, + "component_based": false + }, + "minecraft:activator_rail": { + "runtime_id": 126, + "component_based": false + }, + "minecraft:agent_spawn_egg": { + "runtime_id": 498, + "component_based": false + }, + "minecraft:air": { + "runtime_id": -158, + "component_based": false + }, + "minecraft:allay_spawn_egg": { + "runtime_id": 652, + "component_based": false + }, + "minecraft:allium": { + "runtime_id": -831, + "component_based": false + }, + "minecraft:allow": { + "runtime_id": 210, + "component_based": false + }, + "minecraft:amethyst_block": { + "runtime_id": -327, + "component_based": false + }, + "minecraft:amethyst_cluster": { + "runtime_id": -329, + "component_based": false + }, + "minecraft:amethyst_shard": { + "runtime_id": 645, + "component_based": false + }, + "minecraft:ancient_debris": { + "runtime_id": -271, + "component_based": false + }, + "minecraft:andesite": { + "runtime_id": -594, + "component_based": false + }, + "minecraft:andesite_double_slab": { + "runtime_id": -920, + "component_based": false + }, + "minecraft:andesite_slab": { + "runtime_id": -893, + "component_based": false + }, + "minecraft:andesite_stairs": { + "runtime_id": -171, + "component_based": false + }, + "minecraft:angler_pottery_sherd": { + "runtime_id": 677, + "component_based": false + }, + "minecraft:anvil": { + "runtime_id": 145, + "component_based": false + }, + "minecraft:apple": { + "runtime_id": 257, + "component_based": true + }, + "minecraft:archer_pottery_sherd": { + "runtime_id": 678, + "component_based": false + }, + "minecraft:armadillo_scute": { + "runtime_id": 723, + "component_based": false + }, + "minecraft:armadillo_spawn_egg": { + "runtime_id": 722, + "component_based": false + }, + "minecraft:armor_stand": { + "runtime_id": 569, + "component_based": false + }, + "minecraft:arms_up_pottery_sherd": { + "runtime_id": 679, + "component_based": false + }, + "minecraft:arrow": { + "runtime_id": 308, + "component_based": true + }, + "minecraft:axolotl_bucket": { + "runtime_id": 377, + "component_based": false + }, + "minecraft:axolotl_spawn_egg": { + "runtime_id": 513, + "component_based": false + }, + "minecraft:azalea": { + "runtime_id": -337, + "component_based": false + }, + "minecraft:azalea_leaves": { + "runtime_id": -324, + "component_based": false + }, + "minecraft:azalea_leaves_flowered": { + "runtime_id": -325, + "component_based": false + }, + "minecraft:azure_bluet": { + "runtime_id": -832, + "component_based": false + }, + "minecraft:baked_potato": { + "runtime_id": 286, + "component_based": false + }, + "minecraft:balloon": { + "runtime_id": 619, + "component_based": false + }, + "minecraft:bamboo": { + "runtime_id": -163, + "component_based": false + }, + "minecraft:bamboo_block": { + "runtime_id": -527, + "component_based": false + }, + "minecraft:bamboo_button": { + "runtime_id": -511, + "component_based": false + }, + "minecraft:bamboo_chest_raft": { + "runtime_id": 675, + "component_based": false + }, + "minecraft:bamboo_door": { + "runtime_id": -517, + "component_based": false + }, + "minecraft:bamboo_double_slab": { + "runtime_id": -521, + "component_based": false + }, + "minecraft:bamboo_fence": { + "runtime_id": -515, + "component_based": false + }, + "minecraft:bamboo_fence_gate": { + "runtime_id": -516, + "component_based": false + }, + "minecraft:bamboo_hanging_sign": { + "runtime_id": -522, + "component_based": false + }, + "minecraft:bamboo_mosaic": { + "runtime_id": -509, + "component_based": false + }, + "minecraft:bamboo_mosaic_double_slab": { + "runtime_id": -525, + "component_based": false + }, + "minecraft:bamboo_mosaic_slab": { + "runtime_id": -524, + "component_based": false + }, + "minecraft:bamboo_mosaic_stairs": { + "runtime_id": -523, + "component_based": false + }, + "minecraft:bamboo_planks": { + "runtime_id": -510, + "component_based": false + }, + "minecraft:bamboo_pressure_plate": { + "runtime_id": -514, + "component_based": false + }, + "minecraft:bamboo_raft": { + "runtime_id": 674, + "component_based": false + }, + "minecraft:bamboo_sapling": { + "runtime_id": -164, + "component_based": false + }, + "minecraft:bamboo_sign": { + "runtime_id": 673, + "component_based": false + }, + "minecraft:bamboo_slab": { + "runtime_id": -513, + "component_based": false + }, + "minecraft:bamboo_stairs": { + "runtime_id": -512, + "component_based": false + }, + "minecraft:bamboo_standing_sign": { + "runtime_id": -518, + "component_based": false + }, + "minecraft:bamboo_trapdoor": { + "runtime_id": -520, + "component_based": false + }, + "minecraft:bamboo_wall_sign": { + "runtime_id": -519, + "component_based": false + }, + "minecraft:banner": { + "runtime_id": 584, + "component_based": false + }, + "minecraft:banner_pattern": { + "runtime_id": 768, + "component_based": false + }, + "minecraft:barrel": { + "runtime_id": -203, + "component_based": false + }, + "minecraft:barrier": { + "runtime_id": -161, + "component_based": false + }, + "minecraft:basalt": { + "runtime_id": -234, + "component_based": false + }, + "minecraft:bat_spawn_egg": { + "runtime_id": 463, + "component_based": false + }, + "minecraft:beacon": { + "runtime_id": 138, + "component_based": false + }, + "minecraft:bed": { + "runtime_id": 427, + "component_based": false + }, + "minecraft:bedrock": { + "runtime_id": 7, + "component_based": false + }, + "minecraft:bee_nest": { + "runtime_id": -218, + "component_based": false + }, + "minecraft:bee_spawn_egg": { + "runtime_id": 505, + "component_based": false + }, + "minecraft:beef": { + "runtime_id": 278, + "component_based": false + }, + "minecraft:beehive": { + "runtime_id": -219, + "component_based": false + }, + "minecraft:beetroot": { + "runtime_id": 290, + "component_based": false + }, + "minecraft:beetroot_seeds": { + "runtime_id": 300, + "component_based": false + }, + "minecraft:beetroot_soup": { + "runtime_id": 291, + "component_based": false + }, + "minecraft:bell": { + "runtime_id": -206, + "component_based": false + }, + "minecraft:big_dripleaf": { + "runtime_id": -323, + "component_based": false + }, + "minecraft:birch_boat": { + "runtime_id": 385, + "component_based": false + }, + "minecraft:birch_button": { + "runtime_id": -141, + "component_based": false + }, + "minecraft:birch_chest_boat": { + "runtime_id": 660, + "component_based": false + }, + "minecraft:birch_door": { + "runtime_id": 571, + "component_based": false + }, + "minecraft:birch_double_slab": { + "runtime_id": -810, + "component_based": false + }, + "minecraft:birch_fence": { + "runtime_id": -576, + "component_based": false + }, + "minecraft:birch_fence_gate": { + "runtime_id": 184, + "component_based": false + }, + "minecraft:birch_hanging_sign": { + "runtime_id": -502, + "component_based": false + }, + "minecraft:birch_leaves": { + "runtime_id": -801, + "component_based": false + }, + "minecraft:birch_log": { + "runtime_id": -570, + "component_based": false + }, + "minecraft:birch_planks": { + "runtime_id": -740, + "component_based": false + }, + "minecraft:birch_pressure_plate": { + "runtime_id": -151, + "component_based": false + }, + "minecraft:birch_sapling": { + "runtime_id": -826, + "component_based": false + }, + "minecraft:birch_sign": { + "runtime_id": 594, + "component_based": false + }, + "minecraft:birch_slab": { + "runtime_id": -805, + "component_based": false + }, + "minecraft:birch_stairs": { + "runtime_id": 135, + "component_based": false + }, + "minecraft:birch_standing_sign": { + "runtime_id": -186, + "component_based": false + }, + "minecraft:birch_trapdoor": { + "runtime_id": -146, + "component_based": false + }, + "minecraft:birch_wall_sign": { + "runtime_id": -187, + "component_based": false + }, + "minecraft:birch_wood": { + "runtime_id": -815, + "component_based": false + }, + "minecraft:black_candle": { + "runtime_id": -428, + "component_based": false + }, + "minecraft:black_candle_cake": { + "runtime_id": -445, + "component_based": false + }, + "minecraft:black_carpet": { + "runtime_id": -611, + "component_based": false + }, + "minecraft:black_concrete": { + "runtime_id": -642, + "component_based": false + }, + "minecraft:black_concrete_powder": { + "runtime_id": -723, + "component_based": false + }, + "minecraft:black_dye": { + "runtime_id": 404, + "component_based": false + }, + "minecraft:black_glazed_terracotta": { + "runtime_id": 235, + "component_based": false + }, + "minecraft:black_shulker_box": { + "runtime_id": -627, + "component_based": false + }, + "minecraft:black_stained_glass": { + "runtime_id": -687, + "component_based": false + }, + "minecraft:black_stained_glass_pane": { + "runtime_id": -657, + "component_based": false + }, + "minecraft:black_terracotta": { + "runtime_id": -738, + "component_based": false + }, + "minecraft:black_wool": { + "runtime_id": -554, + "component_based": false + }, + "minecraft:blackstone": { + "runtime_id": -273, + "component_based": false + }, + "minecraft:blackstone_double_slab": { + "runtime_id": -283, + "component_based": false + }, + "minecraft:blackstone_slab": { + "runtime_id": -282, + "component_based": false + }, + "minecraft:blackstone_stairs": { + "runtime_id": -276, + "component_based": false + }, + "minecraft:blackstone_wall": { + "runtime_id": -277, + "component_based": false + }, + "minecraft:blade_pottery_sherd": { + "runtime_id": 680, + "component_based": false + }, + "minecraft:blast_furnace": { + "runtime_id": -196, + "component_based": false + }, + "minecraft:blaze_powder": { + "runtime_id": 439, + "component_based": false + }, + "minecraft:blaze_rod": { + "runtime_id": 432, + "component_based": false + }, + "minecraft:blaze_spawn_egg": { + "runtime_id": 466, + "component_based": false + }, + "minecraft:bleach": { + "runtime_id": 617, + "component_based": false + }, + "minecraft:blue_candle": { + "runtime_id": -424, + "component_based": false + }, + "minecraft:blue_candle_cake": { + "runtime_id": -441, + "component_based": false + }, + "minecraft:blue_carpet": { + "runtime_id": -607, + "component_based": false + }, + "minecraft:blue_concrete": { + "runtime_id": -638, + "component_based": false + }, + "minecraft:blue_concrete_powder": { + "runtime_id": -719, + "component_based": false + }, + "minecraft:blue_dye": { + "runtime_id": 408, + "component_based": false + }, + "minecraft:blue_glazed_terracotta": { + "runtime_id": 231, + "component_based": false + }, + "minecraft:blue_ice": { + "runtime_id": -11, + "component_based": false + }, + "minecraft:blue_orchid": { + "runtime_id": -830, + "component_based": false + }, + "minecraft:blue_shulker_box": { + "runtime_id": -623, + "component_based": false + }, + "minecraft:blue_stained_glass": { + "runtime_id": -683, + "component_based": false + }, + "minecraft:blue_stained_glass_pane": { + "runtime_id": -653, + "component_based": false + }, + "minecraft:blue_terracotta": { + "runtime_id": -734, + "component_based": false + }, + "minecraft:blue_wool": { + "runtime_id": -563, + "component_based": false + }, + "minecraft:boat": { + "runtime_id": 766, + "component_based": false + }, + "minecraft:bogged_spawn_egg": { + "runtime_id": 473, + "component_based": false + }, + "minecraft:bolt_armor_trim_smithing_template": { + "runtime_id": 719, + "component_based": false + }, + "minecraft:bone": { + "runtime_id": 424, + "component_based": false + }, + "minecraft:bone_block": { + "runtime_id": 216, + "component_based": false + }, + "minecraft:bone_meal": { + "runtime_id": 420, + "component_based": false + }, + "minecraft:book": { + "runtime_id": 396, + "component_based": false + }, + "minecraft:bookshelf": { + "runtime_id": 47, + "component_based": false + }, + "minecraft:border_block": { + "runtime_id": 212, + "component_based": false + }, + "minecraft:bordure_indented_banner_pattern": { + "runtime_id": 603, + "component_based": false + }, + "minecraft:bow": { + "runtime_id": 307, + "component_based": false + }, + "minecraft:bowl": { + "runtime_id": 329, + "component_based": false + }, + "minecraft:brain_coral": { + "runtime_id": -581, + "component_based": false + }, + "minecraft:brain_coral_block": { + "runtime_id": -849, + "component_based": false + }, + "minecraft:brain_coral_fan": { + "runtime_id": -840, + "component_based": false + }, + "minecraft:brain_coral_wall_fan": { + "runtime_id": -904, + "component_based": false + }, + "minecraft:bread": { + "runtime_id": 266, + "component_based": false + }, + "minecraft:breeze_rod": { + "runtime_id": 261, + "component_based": true + }, + "minecraft:breeze_spawn_egg": { + "runtime_id": 512, + "component_based": false + }, + "minecraft:brewer_pottery_sherd": { + "runtime_id": 681, + "component_based": false + }, + "minecraft:brewing_stand": { + "runtime_id": 441, + "component_based": true + }, + "minecraft:brick": { + "runtime_id": 392, + "component_based": false + }, + "minecraft:brick_block": { + "runtime_id": 45, + "component_based": false + }, + "minecraft:brick_double_slab": { + "runtime_id": -880, + "component_based": false + }, + "minecraft:brick_slab": { + "runtime_id": -874, + "component_based": false + }, + "minecraft:brick_stairs": { + "runtime_id": 108, + "component_based": false + }, + "minecraft:brown_candle": { + "runtime_id": -425, + "component_based": false + }, + "minecraft:brown_candle_cake": { + "runtime_id": -442, + "component_based": false + }, + "minecraft:brown_carpet": { + "runtime_id": -608, + "component_based": false + }, + "minecraft:brown_concrete": { + "runtime_id": -639, + "component_based": false + }, + "minecraft:brown_concrete_powder": { + "runtime_id": -720, + "component_based": false + }, + "minecraft:brown_dye": { + "runtime_id": 407, + "component_based": false + }, + "minecraft:brown_glazed_terracotta": { + "runtime_id": 232, + "component_based": false + }, + "minecraft:brown_mushroom": { + "runtime_id": 39, + "component_based": false + }, + "minecraft:brown_mushroom_block": { + "runtime_id": 99, + "component_based": false + }, + "minecraft:brown_shulker_box": { + "runtime_id": -624, + "component_based": false + }, + "minecraft:brown_stained_glass": { + "runtime_id": -684, + "component_based": false + }, + "minecraft:brown_stained_glass_pane": { + "runtime_id": -654, + "component_based": false + }, + "minecraft:brown_terracotta": { + "runtime_id": -735, + "component_based": false + }, + "minecraft:brown_wool": { + "runtime_id": -555, + "component_based": false + }, + "minecraft:brush": { + "runtime_id": 700, + "component_based": false + }, + "minecraft:bubble_column": { + "runtime_id": -160, + "component_based": false + }, + "minecraft:bubble_coral": { + "runtime_id": -582, + "component_based": false + }, + "minecraft:bubble_coral_block": { + "runtime_id": -850, + "component_based": false + }, + "minecraft:bubble_coral_fan": { + "runtime_id": -841, + "component_based": false + }, + "minecraft:bubble_coral_wall_fan": { + "runtime_id": -136, + "component_based": false + }, + "minecraft:bucket": { + "runtime_id": 368, + "component_based": false + }, + "minecraft:budding_amethyst": { + "runtime_id": -328, + "component_based": false + }, + "minecraft:bundle": { + "runtime_id": 772, + "component_based": false + }, + "minecraft:burn_pottery_sherd": { + "runtime_id": 682, + "component_based": false + }, + "minecraft:cactus": { + "runtime_id": 81, + "component_based": false + }, + "minecraft:cake": { + "runtime_id": 426, + "component_based": true + }, + "minecraft:calcite": { + "runtime_id": -326, + "component_based": false + }, + "minecraft:calibrated_sculk_sensor": { + "runtime_id": -580, + "component_based": false + }, + "minecraft:camel_spawn_egg": { + "runtime_id": 676, + "component_based": false + }, + "minecraft:camera": { + "runtime_id": 614, + "component_based": false + }, + "minecraft:campfire": { + "runtime_id": 608, + "component_based": true + }, + "minecraft:candle": { + "runtime_id": -412, + "component_based": false + }, + "minecraft:candle_cake": { + "runtime_id": -429, + "component_based": false + }, + "minecraft:carpet": { + "runtime_id": 728, + "component_based": false + }, + "minecraft:carrot": { + "runtime_id": 284, + "component_based": false + }, + "minecraft:carrot_on_a_stick": { + "runtime_id": 534, + "component_based": false + }, + "minecraft:carrots": { + "runtime_id": 141, + "component_based": false + }, + "minecraft:cartography_table": { + "runtime_id": -200, + "component_based": false + }, + "minecraft:carved_pumpkin": { + "runtime_id": -155, + "component_based": false + }, + "minecraft:cat_spawn_egg": { + "runtime_id": 499, + "component_based": false + }, + "minecraft:cauldron": { + "runtime_id": 442, + "component_based": true + }, + "minecraft:cave_spider_spawn_egg": { + "runtime_id": 467, + "component_based": false + }, + "minecraft:cave_vines": { + "runtime_id": -322, + "component_based": false + }, + "minecraft:cave_vines_body_with_berries": { + "runtime_id": -375, + "component_based": false + }, + "minecraft:cave_vines_head_with_berries": { + "runtime_id": -376, + "component_based": false + }, + "minecraft:chain": { + "runtime_id": 640, + "component_based": true + }, + "minecraft:chain_command_block": { + "runtime_id": 189, + "component_based": false + }, + "minecraft:chainmail_boots": { + "runtime_id": 350, + "component_based": false + }, + "minecraft:chainmail_chestplate": { + "runtime_id": 348, + "component_based": false + }, + "minecraft:chainmail_helmet": { + "runtime_id": 347, + "component_based": false + }, + "minecraft:chainmail_leggings": { + "runtime_id": 349, + "component_based": false + }, + "minecraft:charcoal": { + "runtime_id": 310, + "component_based": true + }, + "minecraft:chemical_heat": { + "runtime_id": 192, + "component_based": false + }, + "minecraft:chemistry_table": { + "runtime_id": 238, + "component_based": false + }, + "minecraft:cherry_boat": { + "runtime_id": 670, + "component_based": false + }, + "minecraft:cherry_button": { + "runtime_id": -530, + "component_based": false + }, + "minecraft:cherry_chest_boat": { + "runtime_id": 671, + "component_based": false + }, + "minecraft:cherry_door": { + "runtime_id": -531, + "component_based": false + }, + "minecraft:cherry_double_slab": { + "runtime_id": -540, + "component_based": false + }, + "minecraft:cherry_fence": { + "runtime_id": -532, + "component_based": false + }, + "minecraft:cherry_fence_gate": { + "runtime_id": -533, + "component_based": false + }, + "minecraft:cherry_hanging_sign": { + "runtime_id": -534, + "component_based": false + }, + "minecraft:cherry_leaves": { + "runtime_id": -548, + "component_based": false + }, + "minecraft:cherry_log": { + "runtime_id": -536, + "component_based": false + }, + "minecraft:cherry_planks": { + "runtime_id": -537, + "component_based": false + }, + "minecraft:cherry_pressure_plate": { + "runtime_id": -538, + "component_based": false + }, + "minecraft:cherry_sapling": { + "runtime_id": -547, + "component_based": false + }, + "minecraft:cherry_sign": { + "runtime_id": 672, + "component_based": false + }, + "minecraft:cherry_slab": { + "runtime_id": -539, + "component_based": false + }, + "minecraft:cherry_stairs": { + "runtime_id": -541, + "component_based": false + }, + "minecraft:cherry_standing_sign": { + "runtime_id": -542, + "component_based": false + }, + "minecraft:cherry_trapdoor": { + "runtime_id": -543, + "component_based": false + }, + "minecraft:cherry_wall_sign": { + "runtime_id": -544, + "component_based": false + }, + "minecraft:cherry_wood": { + "runtime_id": -546, + "component_based": false + }, + "minecraft:chest": { + "runtime_id": 54, + "component_based": false + }, + "minecraft:chest_boat": { + "runtime_id": 666, + "component_based": false + }, + "minecraft:chest_minecart": { + "runtime_id": 398, + "component_based": false + }, + "minecraft:chicken": { + "runtime_id": 280, + "component_based": false + }, + "minecraft:chicken_spawn_egg": { + "runtime_id": 445, + "component_based": false + }, + "minecraft:chipped_anvil": { + "runtime_id": -959, + "component_based": false + }, + "minecraft:chiseled_bookshelf": { + "runtime_id": -526, + "component_based": false + }, + "minecraft:chiseled_copper": { + "runtime_id": -760, + "component_based": false + }, + "minecraft:chiseled_deepslate": { + "runtime_id": -395, + "component_based": false + }, + "minecraft:chiseled_nether_bricks": { + "runtime_id": -302, + "component_based": false + }, + "minecraft:chiseled_polished_blackstone": { + "runtime_id": -279, + "component_based": false + }, + "minecraft:chiseled_quartz_block": { + "runtime_id": -953, + "component_based": false + }, + "minecraft:chiseled_red_sandstone": { + "runtime_id": -956, + "component_based": false + }, + "minecraft:chiseled_sandstone": { + "runtime_id": -944, + "component_based": false + }, + "minecraft:chiseled_stone_bricks": { + "runtime_id": -870, + "component_based": false + }, + "minecraft:chiseled_tuff": { + "runtime_id": -753, + "component_based": false + }, + "minecraft:chiseled_tuff_bricks": { + "runtime_id": -759, + "component_based": false + }, + "minecraft:chorus_flower": { + "runtime_id": 200, + "component_based": false + }, + "minecraft:chorus_fruit": { + "runtime_id": 575, + "component_based": false + }, + "minecraft:chorus_plant": { + "runtime_id": 240, + "component_based": false + }, + "minecraft:clay": { + "runtime_id": 82, + "component_based": false + }, + "minecraft:clay_ball": { + "runtime_id": 393, + "component_based": false + }, + "minecraft:client_request_placeholder_block": { + "runtime_id": -465, + "component_based": false + }, + "minecraft:clock": { + "runtime_id": 402, + "component_based": false + }, + "minecraft:coal": { + "runtime_id": 309, + "component_based": true + }, + "minecraft:coal_block": { + "runtime_id": 173, + "component_based": false + }, + "minecraft:coal_ore": { + "runtime_id": 16, + "component_based": false + }, + "minecraft:coarse_dirt": { + "runtime_id": -962, + "component_based": false + }, + "minecraft:coast_armor_trim_smithing_template": { + "runtime_id": 704, + "component_based": false + }, + "minecraft:cobbled_deepslate": { + "runtime_id": -379, + "component_based": false + }, + "minecraft:cobbled_deepslate_double_slab": { + "runtime_id": -396, + "component_based": false + }, + "minecraft:cobbled_deepslate_slab": { + "runtime_id": -380, + "component_based": false + }, + "minecraft:cobbled_deepslate_stairs": { + "runtime_id": -381, + "component_based": false + }, + "minecraft:cobbled_deepslate_wall": { + "runtime_id": -382, + "component_based": false + }, + "minecraft:cobblestone": { + "runtime_id": 4, + "component_based": false + }, + "minecraft:cobblestone_double_slab": { + "runtime_id": -879, + "component_based": false + }, + "minecraft:cobblestone_slab": { + "runtime_id": -873, + "component_based": false + }, + "minecraft:cobblestone_wall": { + "runtime_id": 139, + "component_based": false + }, + "minecraft:cocoa": { + "runtime_id": 127, + "component_based": false + }, + "minecraft:cocoa_beans": { + "runtime_id": 421, + "component_based": false + }, + "minecraft:cod": { + "runtime_id": 269, + "component_based": false + }, + "minecraft:cod_bucket": { + "runtime_id": 372, + "component_based": false + }, + "minecraft:cod_spawn_egg": { + "runtime_id": 491, + "component_based": false + }, + "minecraft:colored_torch_bp": { + "runtime_id": 204, + "component_based": false + }, + "minecraft:colored_torch_rg": { + "runtime_id": 202, + "component_based": false + }, + "minecraft:command_block": { + "runtime_id": 137, + "component_based": false + }, + "minecraft:command_block_minecart": { + "runtime_id": 580, + "component_based": false + }, + "minecraft:comparator": { + "runtime_id": 539, + "component_based": true + }, + "minecraft:compass": { + "runtime_id": 400, + "component_based": false + }, + "minecraft:composter": { + "runtime_id": -213, + "component_based": false + }, + "minecraft:compound": { + "runtime_id": 615, + "component_based": false + }, + "minecraft:concrete": { + "runtime_id": 754, + "component_based": false + }, + "minecraft:concrete_powder": { + "runtime_id": 755, + "component_based": false + }, + "minecraft:conduit": { + "runtime_id": -157, + "component_based": false + }, + "minecraft:cooked_beef": { + "runtime_id": 279, + "component_based": false + }, + "minecraft:cooked_chicken": { + "runtime_id": 281, + "component_based": false + }, + "minecraft:cooked_cod": { + "runtime_id": 273, + "component_based": false + }, + "minecraft:cooked_mutton": { + "runtime_id": 568, + "component_based": false + }, + "minecraft:cooked_porkchop": { + "runtime_id": 268, + "component_based": false + }, + "minecraft:cooked_rabbit": { + "runtime_id": 294, + "component_based": false + }, + "minecraft:cooked_salmon": { + "runtime_id": 274, + "component_based": false + }, + "minecraft:cookie": { + "runtime_id": 276, + "component_based": false + }, + "minecraft:copper_block": { + "runtime_id": -340, + "component_based": false + }, + "minecraft:copper_bulb": { + "runtime_id": -776, + "component_based": false + }, + "minecraft:copper_door": { + "runtime_id": -784, + "component_based": false + }, + "minecraft:copper_grate": { + "runtime_id": -768, + "component_based": false + }, + "minecraft:copper_ingot": { + "runtime_id": 521, + "component_based": false + }, + "minecraft:copper_ore": { + "runtime_id": -311, + "component_based": false + }, + "minecraft:copper_trapdoor": { + "runtime_id": -792, + "component_based": false + }, + "minecraft:coral": { + "runtime_id": 750, + "component_based": false + }, + "minecraft:coral_block": { + "runtime_id": 732, + "component_based": false + }, + "minecraft:coral_fan": { + "runtime_id": 741, + "component_based": false + }, + "minecraft:coral_fan_dead": { + "runtime_id": 742, + "component_based": false + }, + "minecraft:cornflower": { + "runtime_id": -838, + "component_based": false + }, + "minecraft:cow_spawn_egg": { + "runtime_id": 446, + "component_based": false + }, + "minecraft:cracked_deepslate_bricks": { + "runtime_id": -410, + "component_based": false + }, + "minecraft:cracked_deepslate_tiles": { + "runtime_id": -409, + "component_based": false + }, + "minecraft:cracked_nether_bricks": { + "runtime_id": -303, + "component_based": false + }, + "minecraft:cracked_polished_blackstone_bricks": { + "runtime_id": -280, + "component_based": false + }, + "minecraft:cracked_stone_bricks": { + "runtime_id": -869, + "component_based": false + }, + "minecraft:crafter": { + "runtime_id": -313, + "component_based": false + }, + "minecraft:crafting_table": { + "runtime_id": 58, + "component_based": false + }, + "minecraft:creeper_banner_pattern": { + "runtime_id": 599, + "component_based": false + }, + "minecraft:creeper_spawn_egg": { + "runtime_id": 451, + "component_based": false + }, + "minecraft:crimson_button": { + "runtime_id": -260, + "component_based": false + }, + "minecraft:crimson_door": { + "runtime_id": 637, + "component_based": false + }, + "minecraft:crimson_double_slab": { + "runtime_id": -266, + "component_based": false + }, + "minecraft:crimson_fence": { + "runtime_id": -256, + "component_based": false + }, + "minecraft:crimson_fence_gate": { + "runtime_id": -258, + "component_based": false + }, + "minecraft:crimson_fungus": { + "runtime_id": -228, + "component_based": false + }, + "minecraft:crimson_hanging_sign": { + "runtime_id": -506, + "component_based": false + }, + "minecraft:crimson_hyphae": { + "runtime_id": -299, + "component_based": false + }, + "minecraft:crimson_nylium": { + "runtime_id": -232, + "component_based": false + }, + "minecraft:crimson_planks": { + "runtime_id": -242, + "component_based": false + }, + "minecraft:crimson_pressure_plate": { + "runtime_id": -262, + "component_based": false + }, + "minecraft:crimson_roots": { + "runtime_id": -223, + "component_based": false + }, + "minecraft:crimson_sign": { + "runtime_id": 635, + "component_based": false + }, + "minecraft:crimson_slab": { + "runtime_id": -264, + "component_based": false + }, + "minecraft:crimson_stairs": { + "runtime_id": -254, + "component_based": false + }, + "minecraft:crimson_standing_sign": { + "runtime_id": -250, + "component_based": false + }, + "minecraft:crimson_stem": { + "runtime_id": -225, + "component_based": false + }, + "minecraft:crimson_trapdoor": { + "runtime_id": -246, + "component_based": false + }, + "minecraft:crimson_wall_sign": { + "runtime_id": -252, + "component_based": false + }, + "minecraft:crossbow": { + "runtime_id": 592, + "component_based": false + }, + "minecraft:crying_obsidian": { + "runtime_id": -289, + "component_based": false + }, + "minecraft:cut_copper": { + "runtime_id": -347, + "component_based": false + }, + "minecraft:cut_copper_slab": { + "runtime_id": -361, + "component_based": false + }, + "minecraft:cut_copper_stairs": { + "runtime_id": -354, + "component_based": false + }, + "minecraft:cut_red_sandstone": { + "runtime_id": -957, + "component_based": false + }, + "minecraft:cut_red_sandstone_double_slab": { + "runtime_id": -928, + "component_based": false + }, + "minecraft:cut_red_sandstone_slab": { + "runtime_id": -901, + "component_based": false + }, + "minecraft:cut_sandstone": { + "runtime_id": -945, + "component_based": false + }, + "minecraft:cut_sandstone_double_slab": { + "runtime_id": -927, + "component_based": false + }, + "minecraft:cut_sandstone_slab": { + "runtime_id": -900, + "component_based": false + }, + "minecraft:cyan_candle": { + "runtime_id": -422, + "component_based": false + }, + "minecraft:cyan_candle_cake": { + "runtime_id": -439, + "component_based": false + }, + "minecraft:cyan_carpet": { + "runtime_id": -605, + "component_based": false + }, + "minecraft:cyan_concrete": { + "runtime_id": -636, + "component_based": false + }, + "minecraft:cyan_concrete_powder": { + "runtime_id": -717, + "component_based": false + }, + "minecraft:cyan_dye": { + "runtime_id": 410, + "component_based": false + }, + "minecraft:cyan_glazed_terracotta": { + "runtime_id": 229, + "component_based": false + }, + "minecraft:cyan_shulker_box": { + "runtime_id": -621, + "component_based": false + }, + "minecraft:cyan_stained_glass": { + "runtime_id": -681, + "component_based": false + }, + "minecraft:cyan_stained_glass_pane": { + "runtime_id": -651, + "component_based": false + }, + "minecraft:cyan_terracotta": { + "runtime_id": -732, + "component_based": false + }, + "minecraft:cyan_wool": { + "runtime_id": -561, + "component_based": false + }, + "minecraft:damaged_anvil": { + "runtime_id": -960, + "component_based": false + }, + "minecraft:dandelion": { + "runtime_id": 37, + "component_based": false + }, + "minecraft:danger_pottery_sherd": { + "runtime_id": 683, + "component_based": false + }, + "minecraft:dark_oak_boat": { + "runtime_id": 389, + "component_based": false + }, + "minecraft:dark_oak_button": { + "runtime_id": -142, + "component_based": false + }, + "minecraft:dark_oak_chest_boat": { + "runtime_id": 664, + "component_based": false + }, + "minecraft:dark_oak_door": { + "runtime_id": 574, + "component_based": false + }, + "minecraft:dark_oak_double_slab": { + "runtime_id": -813, + "component_based": false + }, + "minecraft:dark_oak_fence": { + "runtime_id": -577, + "component_based": false + }, + "minecraft:dark_oak_fence_gate": { + "runtime_id": 186, + "component_based": false + }, + "minecraft:dark_oak_hanging_sign": { + "runtime_id": -505, + "component_based": false + }, + "minecraft:dark_oak_leaves": { + "runtime_id": -803, + "component_based": false + }, + "minecraft:dark_oak_log": { + "runtime_id": -572, + "component_based": false + }, + "minecraft:dark_oak_planks": { + "runtime_id": -743, + "component_based": false + }, + "minecraft:dark_oak_pressure_plate": { + "runtime_id": -152, + "component_based": false + }, + "minecraft:dark_oak_sapling": { + "runtime_id": -829, + "component_based": false + }, + "minecraft:dark_oak_sign": { + "runtime_id": 597, + "component_based": false + }, + "minecraft:dark_oak_slab": { + "runtime_id": -808, + "component_based": false + }, + "minecraft:dark_oak_stairs": { + "runtime_id": 164, + "component_based": false + }, + "minecraft:dark_oak_trapdoor": { + "runtime_id": -147, + "component_based": false + }, + "minecraft:dark_oak_wood": { + "runtime_id": -818, + "component_based": false + }, + "minecraft:dark_prismarine": { + "runtime_id": -947, + "component_based": false + }, + "minecraft:dark_prismarine_double_slab": { + "runtime_id": -913, + "component_based": false + }, + "minecraft:dark_prismarine_slab": { + "runtime_id": -886, + "component_based": false + }, + "minecraft:dark_prismarine_stairs": { + "runtime_id": -3, + "component_based": false + }, + "minecraft:darkoak_standing_sign": { + "runtime_id": -192, + "component_based": false + }, + "minecraft:darkoak_wall_sign": { + "runtime_id": -193, + "component_based": false + }, + "minecraft:daylight_detector": { + "runtime_id": 151, + "component_based": false + }, + "minecraft:daylight_detector_inverted": { + "runtime_id": 178, + "component_based": false + }, + "minecraft:dead_brain_coral": { + "runtime_id": -586, + "component_based": false + }, + "minecraft:dead_brain_coral_block": { + "runtime_id": -854, + "component_based": false + }, + "minecraft:dead_brain_coral_fan": { + "runtime_id": -844, + "component_based": false + }, + "minecraft:dead_brain_coral_wall_fan": { + "runtime_id": -906, + "component_based": false + }, + "minecraft:dead_bubble_coral": { + "runtime_id": -587, + "component_based": false + }, + "minecraft:dead_bubble_coral_block": { + "runtime_id": -855, + "component_based": false + }, + "minecraft:dead_bubble_coral_fan": { + "runtime_id": -845, + "component_based": false + }, + "minecraft:dead_bubble_coral_wall_fan": { + "runtime_id": -908, + "component_based": false + }, + "minecraft:dead_fire_coral": { + "runtime_id": -588, + "component_based": false + }, + "minecraft:dead_fire_coral_block": { + "runtime_id": -856, + "component_based": false + }, + "minecraft:dead_fire_coral_fan": { + "runtime_id": -846, + "component_based": false + }, + "minecraft:dead_fire_coral_wall_fan": { + "runtime_id": -909, + "component_based": false + }, + "minecraft:dead_horn_coral": { + "runtime_id": -589, + "component_based": false + }, + "minecraft:dead_horn_coral_block": { + "runtime_id": -857, + "component_based": false + }, + "minecraft:dead_horn_coral_fan": { + "runtime_id": -847, + "component_based": false + }, + "minecraft:dead_horn_coral_wall_fan": { + "runtime_id": -910, + "component_based": false + }, + "minecraft:dead_tube_coral": { + "runtime_id": -585, + "component_based": false + }, + "minecraft:dead_tube_coral_block": { + "runtime_id": -853, + "component_based": false + }, + "minecraft:dead_tube_coral_fan": { + "runtime_id": -134, + "component_based": false + }, + "minecraft:dead_tube_coral_wall_fan": { + "runtime_id": -905, + "component_based": false + }, + "minecraft:deadbush": { + "runtime_id": 32, + "component_based": false + }, + "minecraft:debug_stick": { + "runtime_id": 610, + "component_based": false + }, + "minecraft:decorated_pot": { + "runtime_id": -551, + "component_based": false + }, + "minecraft:deepslate": { + "runtime_id": -378, + "component_based": false + }, + "minecraft:deepslate_brick_double_slab": { + "runtime_id": -399, + "component_based": false + }, + "minecraft:deepslate_brick_slab": { + "runtime_id": -392, + "component_based": false + }, + "minecraft:deepslate_brick_stairs": { + "runtime_id": -393, + "component_based": false + }, + "minecraft:deepslate_brick_wall": { + "runtime_id": -394, + "component_based": false + }, + "minecraft:deepslate_bricks": { + "runtime_id": -391, + "component_based": false + }, + "minecraft:deepslate_coal_ore": { + "runtime_id": -406, + "component_based": false + }, + "minecraft:deepslate_copper_ore": { + "runtime_id": -408, + "component_based": false + }, + "minecraft:deepslate_diamond_ore": { + "runtime_id": -405, + "component_based": false + }, + "minecraft:deepslate_emerald_ore": { + "runtime_id": -407, + "component_based": false + }, + "minecraft:deepslate_gold_ore": { + "runtime_id": -402, + "component_based": false + }, + "minecraft:deepslate_iron_ore": { + "runtime_id": -401, + "component_based": false + }, + "minecraft:deepslate_lapis_ore": { + "runtime_id": -400, + "component_based": false + }, + "minecraft:deepslate_redstone_ore": { + "runtime_id": -403, + "component_based": false + }, + "minecraft:deepslate_tile_double_slab": { + "runtime_id": -398, + "component_based": false + }, + "minecraft:deepslate_tile_slab": { + "runtime_id": -388, + "component_based": false + }, + "minecraft:deepslate_tile_stairs": { + "runtime_id": -389, + "component_based": false + }, + "minecraft:deepslate_tile_wall": { + "runtime_id": -390, + "component_based": false + }, + "minecraft:deepslate_tiles": { + "runtime_id": -387, + "component_based": false + }, + "minecraft:deny": { + "runtime_id": 211, + "component_based": false + }, + "minecraft:deprecated_anvil": { + "runtime_id": -961, + "component_based": false + }, + "minecraft:detector_rail": { + "runtime_id": 28, + "component_based": false + }, + "minecraft:diamond": { + "runtime_id": 311, + "component_based": false + }, + "minecraft:diamond_axe": { + "runtime_id": 326, + "component_based": false + }, + "minecraft:diamond_block": { + "runtime_id": 57, + "component_based": false + }, + "minecraft:diamond_boots": { + "runtime_id": 358, + "component_based": false + }, + "minecraft:diamond_chestplate": { + "runtime_id": 356, + "component_based": false + }, + "minecraft:diamond_helmet": { + "runtime_id": 355, + "component_based": false + }, + "minecraft:diamond_hoe": { + "runtime_id": 340, + "component_based": false + }, + "minecraft:diamond_horse_armor": { + "runtime_id": 550, + "component_based": false + }, + "minecraft:diamond_leggings": { + "runtime_id": 357, + "component_based": false + }, + "minecraft:diamond_ore": { + "runtime_id": 56, + "component_based": false + }, + "minecraft:diamond_pickaxe": { + "runtime_id": 325, + "component_based": false + }, + "minecraft:diamond_shovel": { + "runtime_id": 324, + "component_based": false + }, + "minecraft:diamond_sword": { + "runtime_id": 323, + "component_based": false + }, + "minecraft:diorite": { + "runtime_id": -592, + "component_based": false + }, + "minecraft:diorite_double_slab": { + "runtime_id": -921, + "component_based": false + }, + "minecraft:diorite_slab": { + "runtime_id": -894, + "component_based": false + }, + "minecraft:diorite_stairs": { + "runtime_id": -170, + "component_based": false + }, + "minecraft:dirt": { + "runtime_id": 3, + "component_based": false + }, + "minecraft:dirt_with_roots": { + "runtime_id": -318, + "component_based": false + }, + "minecraft:disc_fragment_5": { + "runtime_id": 658, + "component_based": false + }, + "minecraft:dispenser": { + "runtime_id": 23, + "component_based": false + }, + "minecraft:dolphin_spawn_egg": { + "runtime_id": 495, + "component_based": false + }, + "minecraft:donkey_spawn_egg": { + "runtime_id": 476, + "component_based": false + }, + "minecraft:double_cut_copper_slab": { + "runtime_id": -368, + "component_based": false + }, + "minecraft:double_plant": { + "runtime_id": 748, + "component_based": false + }, + "minecraft:double_stone_block_slab": { + "runtime_id": 737, + "component_based": false + }, + "minecraft:double_stone_block_slab2": { + "runtime_id": 738, + "component_based": false + }, + "minecraft:double_stone_block_slab3": { + "runtime_id": 739, + "component_based": false + }, + "minecraft:double_stone_block_slab4": { + "runtime_id": 740, + "component_based": false + }, + "minecraft:dragon_breath": { + "runtime_id": 577, + "component_based": false + }, + "minecraft:dragon_egg": { + "runtime_id": 122, + "component_based": false + }, + "minecraft:dried_kelp": { + "runtime_id": 275, + "component_based": false + }, + "minecraft:dried_kelp_block": { + "runtime_id": -139, + "component_based": false + }, + "minecraft:dripstone_block": { + "runtime_id": -317, + "component_based": false + }, + "minecraft:dropper": { + "runtime_id": 125, + "component_based": false + }, + "minecraft:drowned_spawn_egg": { + "runtime_id": 494, + "component_based": false + }, + "minecraft:dune_armor_trim_smithing_template": { + "runtime_id": 703, + "component_based": false + }, + "minecraft:dye": { + "runtime_id": 767, + "component_based": false + }, + "minecraft:echo_shard": { + "runtime_id": 668, + "component_based": false + }, + "minecraft:egg": { + "runtime_id": 399, + "component_based": false + }, + "minecraft:elder_guardian_spawn_egg": { + "runtime_id": 482, + "component_based": false + }, + "minecraft:element_0": { + "runtime_id": 36, + "component_based": false + }, + "minecraft:element_1": { + "runtime_id": -12, + "component_based": false + }, + "minecraft:element_10": { + "runtime_id": -21, + "component_based": false + }, + "minecraft:element_100": { + "runtime_id": -111, + "component_based": false + }, + "minecraft:element_101": { + "runtime_id": -112, + "component_based": false + }, + "minecraft:element_102": { + "runtime_id": -113, + "component_based": false + }, + "minecraft:element_103": { + "runtime_id": -114, + "component_based": false + }, + "minecraft:element_104": { + "runtime_id": -115, + "component_based": false + }, + "minecraft:element_105": { + "runtime_id": -116, + "component_based": false + }, + "minecraft:element_106": { + "runtime_id": -117, + "component_based": false + }, + "minecraft:element_107": { + "runtime_id": -118, + "component_based": false + }, + "minecraft:element_108": { + "runtime_id": -119, + "component_based": false + }, + "minecraft:element_109": { + "runtime_id": -120, + "component_based": false + }, + "minecraft:element_11": { + "runtime_id": -22, + "component_based": false + }, + "minecraft:element_110": { + "runtime_id": -121, + "component_based": false + }, + "minecraft:element_111": { + "runtime_id": -122, + "component_based": false + }, + "minecraft:element_112": { + "runtime_id": -123, + "component_based": false + }, + "minecraft:element_113": { + "runtime_id": -124, + "component_based": false + }, + "minecraft:element_114": { + "runtime_id": -125, + "component_based": false + }, + "minecraft:element_115": { + "runtime_id": -126, + "component_based": false + }, + "minecraft:element_116": { + "runtime_id": -127, + "component_based": false + }, + "minecraft:element_117": { + "runtime_id": -128, + "component_based": false + }, + "minecraft:element_118": { + "runtime_id": -129, + "component_based": false + }, + "minecraft:element_12": { + "runtime_id": -23, + "component_based": false + }, + "minecraft:element_13": { + "runtime_id": -24, + "component_based": false + }, + "minecraft:element_14": { + "runtime_id": -25, + "component_based": false + }, + "minecraft:element_15": { + "runtime_id": -26, + "component_based": false + }, + "minecraft:element_16": { + "runtime_id": -27, + "component_based": false + }, + "minecraft:element_17": { + "runtime_id": -28, + "component_based": false + }, + "minecraft:element_18": { + "runtime_id": -29, + "component_based": false + }, + "minecraft:element_19": { + "runtime_id": -30, + "component_based": false + }, + "minecraft:element_2": { + "runtime_id": -13, + "component_based": false + }, + "minecraft:element_20": { + "runtime_id": -31, + "component_based": false + }, + "minecraft:element_21": { + "runtime_id": -32, + "component_based": false + }, + "minecraft:element_22": { + "runtime_id": -33, + "component_based": false + }, + "minecraft:element_23": { + "runtime_id": -34, + "component_based": false + }, + "minecraft:element_24": { + "runtime_id": -35, + "component_based": false + }, + "minecraft:element_25": { + "runtime_id": -36, + "component_based": false + }, + "minecraft:element_26": { + "runtime_id": -37, + "component_based": false + }, + "minecraft:element_27": { + "runtime_id": -38, + "component_based": false + }, + "minecraft:element_28": { + "runtime_id": -39, + "component_based": false + }, + "minecraft:element_29": { + "runtime_id": -40, + "component_based": false + }, + "minecraft:element_3": { + "runtime_id": -14, + "component_based": false + }, + "minecraft:element_30": { + "runtime_id": -41, + "component_based": false + }, + "minecraft:element_31": { + "runtime_id": -42, + "component_based": false + }, + "minecraft:element_32": { + "runtime_id": -43, + "component_based": false + }, + "minecraft:element_33": { + "runtime_id": -44, + "component_based": false + }, + "minecraft:element_34": { + "runtime_id": -45, + "component_based": false + }, + "minecraft:element_35": { + "runtime_id": -46, + "component_based": false + }, + "minecraft:element_36": { + "runtime_id": -47, + "component_based": false + }, + "minecraft:element_37": { + "runtime_id": -48, + "component_based": false + }, + "minecraft:element_38": { + "runtime_id": -49, + "component_based": false + }, + "minecraft:element_39": { + "runtime_id": -50, + "component_based": false + }, + "minecraft:element_4": { + "runtime_id": -15, + "component_based": false + }, + "minecraft:element_40": { + "runtime_id": -51, + "component_based": false + }, + "minecraft:element_41": { + "runtime_id": -52, + "component_based": false + }, + "minecraft:element_42": { + "runtime_id": -53, + "component_based": false + }, + "minecraft:element_43": { + "runtime_id": -54, + "component_based": false + }, + "minecraft:element_44": { + "runtime_id": -55, + "component_based": false + }, + "minecraft:element_45": { + "runtime_id": -56, + "component_based": false + }, + "minecraft:element_46": { + "runtime_id": -57, + "component_based": false + }, + "minecraft:element_47": { + "runtime_id": -58, + "component_based": false + }, + "minecraft:element_48": { + "runtime_id": -59, + "component_based": false + }, + "minecraft:element_49": { + "runtime_id": -60, + "component_based": false + }, + "minecraft:element_5": { + "runtime_id": -16, + "component_based": false + }, + "minecraft:element_50": { + "runtime_id": -61, + "component_based": false + }, + "minecraft:element_51": { + "runtime_id": -62, + "component_based": false + }, + "minecraft:element_52": { + "runtime_id": -63, + "component_based": false + }, + "minecraft:element_53": { + "runtime_id": -64, + "component_based": false + }, + "minecraft:element_54": { + "runtime_id": -65, + "component_based": false + }, + "minecraft:element_55": { + "runtime_id": -66, + "component_based": false + }, + "minecraft:element_56": { + "runtime_id": -67, + "component_based": false + }, + "minecraft:element_57": { + "runtime_id": -68, + "component_based": false + }, + "minecraft:element_58": { + "runtime_id": -69, + "component_based": false + }, + "minecraft:element_59": { + "runtime_id": -70, + "component_based": false + }, + "minecraft:element_6": { + "runtime_id": -17, + "component_based": false + }, + "minecraft:element_60": { + "runtime_id": -71, + "component_based": false + }, + "minecraft:element_61": { + "runtime_id": -72, + "component_based": false + }, + "minecraft:element_62": { + "runtime_id": -73, + "component_based": false + }, + "minecraft:element_63": { + "runtime_id": -74, + "component_based": false + }, + "minecraft:element_64": { + "runtime_id": -75, + "component_based": false + }, + "minecraft:element_65": { + "runtime_id": -76, + "component_based": false + }, + "minecraft:element_66": { + "runtime_id": -77, + "component_based": false + }, + "minecraft:element_67": { + "runtime_id": -78, + "component_based": false + }, + "minecraft:element_68": { + "runtime_id": -79, + "component_based": false + }, + "minecraft:element_69": { + "runtime_id": -80, + "component_based": false + }, + "minecraft:element_7": { + "runtime_id": -18, + "component_based": false + }, + "minecraft:element_70": { + "runtime_id": -81, + "component_based": false + }, + "minecraft:element_71": { + "runtime_id": -82, + "component_based": false + }, + "minecraft:element_72": { + "runtime_id": -83, + "component_based": false + }, + "minecraft:element_73": { + "runtime_id": -84, + "component_based": false + }, + "minecraft:element_74": { + "runtime_id": -85, + "component_based": false + }, + "minecraft:element_75": { + "runtime_id": -86, + "component_based": false + }, + "minecraft:element_76": { + "runtime_id": -87, + "component_based": false + }, + "minecraft:element_77": { + "runtime_id": -88, + "component_based": false + }, + "minecraft:element_78": { + "runtime_id": -89, + "component_based": false + }, + "minecraft:element_79": { + "runtime_id": -90, + "component_based": false + }, + "minecraft:element_8": { + "runtime_id": -19, + "component_based": false + }, + "minecraft:element_80": { + "runtime_id": -91, + "component_based": false + }, + "minecraft:element_81": { + "runtime_id": -92, + "component_based": false + }, + "minecraft:element_82": { + "runtime_id": -93, + "component_based": false + }, + "minecraft:element_83": { + "runtime_id": -94, + "component_based": false + }, + "minecraft:element_84": { + "runtime_id": -95, + "component_based": false + }, + "minecraft:element_85": { + "runtime_id": -96, + "component_based": false + }, + "minecraft:element_86": { + "runtime_id": -97, + "component_based": false + }, + "minecraft:element_87": { + "runtime_id": -98, + "component_based": false + }, + "minecraft:element_88": { + "runtime_id": -99, + "component_based": false + }, + "minecraft:element_89": { + "runtime_id": -100, + "component_based": false + }, + "minecraft:element_9": { + "runtime_id": -20, + "component_based": false + }, + "minecraft:element_90": { + "runtime_id": -101, + "component_based": false + }, + "minecraft:element_91": { + "runtime_id": -102, + "component_based": false + }, + "minecraft:element_92": { + "runtime_id": -103, + "component_based": false + }, + "minecraft:element_93": { + "runtime_id": -104, + "component_based": false + }, + "minecraft:element_94": { + "runtime_id": -105, + "component_based": false + }, + "minecraft:element_95": { + "runtime_id": -106, + "component_based": false + }, + "minecraft:element_96": { + "runtime_id": -107, + "component_based": false + }, + "minecraft:element_97": { + "runtime_id": -108, + "component_based": false + }, + "minecraft:element_98": { + "runtime_id": -109, + "component_based": false + }, + "minecraft:element_99": { + "runtime_id": -110, + "component_based": false + }, + "minecraft:elytra": { + "runtime_id": 581, + "component_based": false + }, + "minecraft:emerald": { + "runtime_id": 529, + "component_based": false + }, + "minecraft:emerald_block": { + "runtime_id": 133, + "component_based": false + }, + "minecraft:emerald_ore": { + "runtime_id": 129, + "component_based": false + }, + "minecraft:empty_map": { + "runtime_id": 532, + "component_based": false + }, + "minecraft:enchanted_book": { + "runtime_id": 538, + "component_based": false + }, + "minecraft:enchanted_golden_apple": { + "runtime_id": 264, + "component_based": false + }, + "minecraft:enchanting_table": { + "runtime_id": 116, + "component_based": false + }, + "minecraft:end_brick_stairs": { + "runtime_id": -178, + "component_based": false + }, + "minecraft:end_bricks": { + "runtime_id": 206, + "component_based": false + }, + "minecraft:end_crystal": { + "runtime_id": 770, + "component_based": false + }, + "minecraft:end_gateway": { + "runtime_id": 209, + "component_based": false + }, + "minecraft:end_portal": { + "runtime_id": 119, + "component_based": false + }, + "minecraft:end_portal_frame": { + "runtime_id": 120, + "component_based": false + }, + "minecraft:end_rod": { + "runtime_id": 208, + "component_based": false + }, + "minecraft:end_stone": { + "runtime_id": 121, + "component_based": false + }, + "minecraft:end_stone_brick_double_slab": { + "runtime_id": -167, + "component_based": false + }, + "minecraft:end_stone_brick_slab": { + "runtime_id": -162, + "component_based": false + }, + "minecraft:ender_chest": { + "runtime_id": 130, + "component_based": false + }, + "minecraft:ender_dragon_spawn_egg": { + "runtime_id": 518, + "component_based": false + }, + "minecraft:ender_eye": { + "runtime_id": 443, + "component_based": false + }, + "minecraft:ender_pearl": { + "runtime_id": 431, + "component_based": false + }, + "minecraft:enderman_spawn_egg": { + "runtime_id": 452, + "component_based": false + }, + "minecraft:endermite_spawn_egg": { + "runtime_id": 470, + "component_based": false + }, + "minecraft:evoker_spawn_egg": { + "runtime_id": 486, + "component_based": false + }, + "minecraft:experience_bottle": { + "runtime_id": 525, + "component_based": false + }, + "minecraft:explorer_pottery_sherd": { + "runtime_id": 684, + "component_based": false + }, + "minecraft:exposed_chiseled_copper": { + "runtime_id": -761, + "component_based": false + }, + "minecraft:exposed_copper": { + "runtime_id": -341, + "component_based": false + }, + "minecraft:exposed_copper_bulb": { + "runtime_id": -777, + "component_based": false + }, + "minecraft:exposed_copper_door": { + "runtime_id": -785, + "component_based": false + }, + "minecraft:exposed_copper_grate": { + "runtime_id": -769, + "component_based": false + }, + "minecraft:exposed_copper_trapdoor": { + "runtime_id": -793, + "component_based": false + }, + "minecraft:exposed_cut_copper": { + "runtime_id": -348, + "component_based": false + }, + "minecraft:exposed_cut_copper_slab": { + "runtime_id": -362, + "component_based": false + }, + "minecraft:exposed_cut_copper_stairs": { + "runtime_id": -355, + "component_based": false + }, + "minecraft:exposed_double_cut_copper_slab": { + "runtime_id": -369, + "component_based": false + }, + "minecraft:eye_armor_trim_smithing_template": { + "runtime_id": 707, + "component_based": false + }, + "minecraft:farmland": { + "runtime_id": 60, + "component_based": false + }, + "minecraft:feather": { + "runtime_id": 335, + "component_based": false + }, + "minecraft:fence": { + "runtime_id": 730, + "component_based": false + }, + "minecraft:fence_gate": { + "runtime_id": 107, + "component_based": false + }, + "minecraft:fermented_spider_eye": { + "runtime_id": 438, + "component_based": false + }, + "minecraft:fern": { + "runtime_id": -848, + "component_based": false + }, + "minecraft:field_masoned_banner_pattern": { + "runtime_id": 602, + "component_based": false + }, + "minecraft:filled_map": { + "runtime_id": 429, + "component_based": false + }, + "minecraft:fire": { + "runtime_id": 51, + "component_based": false + }, + "minecraft:fire_charge": { + "runtime_id": 526, + "component_based": false + }, + "minecraft:fire_coral": { + "runtime_id": -583, + "component_based": false + }, + "minecraft:fire_coral_block": { + "runtime_id": -851, + "component_based": false + }, + "minecraft:fire_coral_fan": { + "runtime_id": -842, + "component_based": false + }, + "minecraft:fire_coral_wall_fan": { + "runtime_id": -907, + "component_based": false + }, + "minecraft:firework_rocket": { + "runtime_id": 536, + "component_based": false + }, + "minecraft:firework_star": { + "runtime_id": 537, + "component_based": false + }, + "minecraft:fishing_rod": { + "runtime_id": 401, + "component_based": true + }, + "minecraft:fletching_table": { + "runtime_id": -201, + "component_based": false + }, + "minecraft:flint": { + "runtime_id": 364, + "component_based": false + }, + "minecraft:flint_and_steel": { + "runtime_id": 306, + "component_based": false + }, + "minecraft:flow_armor_trim_smithing_template": { + "runtime_id": 718, + "component_based": false + }, + "minecraft:flow_banner_pattern": { + "runtime_id": 606, + "component_based": false + }, + "minecraft:flow_pottery_sherd": { + "runtime_id": 685, + "component_based": false + }, + "minecraft:flower_banner_pattern": { + "runtime_id": 598, + "component_based": false + }, + "minecraft:flower_pot": { + "runtime_id": 531, + "component_based": true + }, + "minecraft:flowering_azalea": { + "runtime_id": -338, + "component_based": false + }, + "minecraft:flowing_lava": { + "runtime_id": 10, + "component_based": false + }, + "minecraft:flowing_water": { + "runtime_id": 8, + "component_based": false + }, + "minecraft:fox_spawn_egg": { + "runtime_id": 501, + "component_based": false + }, + "minecraft:frame": { + "runtime_id": 530, + "component_based": true + }, + "minecraft:friend_pottery_sherd": { + "runtime_id": 686, + "component_based": false + }, + "minecraft:frog_spawn": { + "runtime_id": -468, + "component_based": false + }, + "minecraft:frog_spawn_egg": { + "runtime_id": 649, + "component_based": false + }, + "minecraft:frosted_ice": { + "runtime_id": 207, + "component_based": false + }, + "minecraft:furnace": { + "runtime_id": 61, + "component_based": false + }, + "minecraft:ghast_spawn_egg": { + "runtime_id": 464, + "component_based": false + }, + "minecraft:ghast_tear": { + "runtime_id": 434, + "component_based": false + }, + "minecraft:gilded_blackstone": { + "runtime_id": -281, + "component_based": false + }, + "minecraft:glass": { + "runtime_id": 20, + "component_based": false + }, + "minecraft:glass_bottle": { + "runtime_id": 437, + "component_based": false + }, + "minecraft:glass_pane": { + "runtime_id": 102, + "component_based": false + }, + "minecraft:glistering_melon_slice": { + "runtime_id": 444, + "component_based": false + }, + "minecraft:globe_banner_pattern": { + "runtime_id": 605, + "component_based": false + }, + "minecraft:glow_berries": { + "runtime_id": 771, + "component_based": false + }, + "minecraft:glow_frame": { + "runtime_id": 644, + "component_based": true + }, + "minecraft:glow_ink_sac": { + "runtime_id": 520, + "component_based": false + }, + "minecraft:glow_lichen": { + "runtime_id": -411, + "component_based": false + }, + "minecraft:glow_squid_spawn_egg": { + "runtime_id": 515, + "component_based": false + }, + "minecraft:glow_stick": { + "runtime_id": 622, + "component_based": false + }, + "minecraft:glowingobsidian": { + "runtime_id": 246, + "component_based": false + }, + "minecraft:glowstone": { + "runtime_id": 89, + "component_based": false + }, + "minecraft:glowstone_dust": { + "runtime_id": 403, + "component_based": false + }, + "minecraft:goat_horn": { + "runtime_id": 648, + "component_based": false + }, + "minecraft:goat_spawn_egg": { + "runtime_id": 514, + "component_based": false + }, + "minecraft:gold_block": { + "runtime_id": 41, + "component_based": false + }, + "minecraft:gold_ingot": { + "runtime_id": 313, + "component_based": false + }, + "minecraft:gold_nugget": { + "runtime_id": 435, + "component_based": false + }, + "minecraft:gold_ore": { + "runtime_id": 14, + "component_based": false + }, + "minecraft:golden_apple": { + "runtime_id": 263, + "component_based": false + }, + "minecraft:golden_axe": { + "runtime_id": 333, + "component_based": false + }, + "minecraft:golden_boots": { + "runtime_id": 362, + "component_based": false + }, + "minecraft:golden_carrot": { + "runtime_id": 288, + "component_based": false + }, + "minecraft:golden_chestplate": { + "runtime_id": 360, + "component_based": false + }, + "minecraft:golden_helmet": { + "runtime_id": 359, + "component_based": false + }, + "minecraft:golden_hoe": { + "runtime_id": 341, + "component_based": false + }, + "minecraft:golden_horse_armor": { + "runtime_id": 549, + "component_based": false + }, + "minecraft:golden_leggings": { + "runtime_id": 361, + "component_based": false + }, + "minecraft:golden_pickaxe": { + "runtime_id": 332, + "component_based": false + }, + "minecraft:golden_rail": { + "runtime_id": 27, + "component_based": false + }, + "minecraft:golden_shovel": { + "runtime_id": 331, + "component_based": false + }, + "minecraft:golden_sword": { + "runtime_id": 330, + "component_based": false + }, + "minecraft:granite": { + "runtime_id": -590, + "component_based": false + }, + "minecraft:granite_double_slab": { + "runtime_id": -923, + "component_based": false + }, + "minecraft:granite_slab": { + "runtime_id": -896, + "component_based": false + }, + "minecraft:granite_stairs": { + "runtime_id": -169, + "component_based": false + }, + "minecraft:grass_block": { + "runtime_id": 2, + "component_based": false + }, + "minecraft:grass_path": { + "runtime_id": 198, + "component_based": false + }, + "minecraft:gravel": { + "runtime_id": 13, + "component_based": false + }, + "minecraft:gray_candle": { + "runtime_id": -420, + "component_based": false + }, + "minecraft:gray_candle_cake": { + "runtime_id": -437, + "component_based": false + }, + "minecraft:gray_carpet": { + "runtime_id": -603, + "component_based": false + }, + "minecraft:gray_concrete": { + "runtime_id": -634, + "component_based": false + }, + "minecraft:gray_concrete_powder": { + "runtime_id": -715, + "component_based": false + }, + "minecraft:gray_dye": { + "runtime_id": 412, + "component_based": false + }, + "minecraft:gray_glazed_terracotta": { + "runtime_id": 227, + "component_based": false + }, + "minecraft:gray_shulker_box": { + "runtime_id": -619, + "component_based": false + }, + "minecraft:gray_stained_glass": { + "runtime_id": -679, + "component_based": false + }, + "minecraft:gray_stained_glass_pane": { + "runtime_id": -649, + "component_based": false + }, + "minecraft:gray_terracotta": { + "runtime_id": -730, + "component_based": false + }, + "minecraft:gray_wool": { + "runtime_id": -553, + "component_based": false + }, + "minecraft:green_candle": { + "runtime_id": -426, + "component_based": false + }, + "minecraft:green_candle_cake": { + "runtime_id": -443, + "component_based": false + }, + "minecraft:green_carpet": { + "runtime_id": -609, + "component_based": false + }, + "minecraft:green_concrete": { + "runtime_id": -640, + "component_based": false + }, + "minecraft:green_concrete_powder": { + "runtime_id": -721, + "component_based": false + }, + "minecraft:green_dye": { + "runtime_id": 406, + "component_based": false + }, + "minecraft:green_glazed_terracotta": { + "runtime_id": 233, + "component_based": false + }, + "minecraft:green_shulker_box": { + "runtime_id": -625, + "component_based": false + }, + "minecraft:green_stained_glass": { + "runtime_id": -685, + "component_based": false + }, + "minecraft:green_stained_glass_pane": { + "runtime_id": -655, + "component_based": false + }, + "minecraft:green_terracotta": { + "runtime_id": -736, + "component_based": false + }, + "minecraft:green_wool": { + "runtime_id": -560, + "component_based": false + }, + "minecraft:grindstone": { + "runtime_id": -195, + "component_based": false + }, + "minecraft:guardian_spawn_egg": { + "runtime_id": 471, + "component_based": false + }, + "minecraft:gunpowder": { + "runtime_id": 336, + "component_based": false + }, + "minecraft:guster_banner_pattern": { + "runtime_id": 607, + "component_based": false + }, + "minecraft:guster_pottery_sherd": { + "runtime_id": 687, + "component_based": false + }, + "minecraft:hanging_roots": { + "runtime_id": -319, + "component_based": false + }, + "minecraft:hard_black_stained_glass": { + "runtime_id": -702, + "component_based": false + }, + "minecraft:hard_black_stained_glass_pane": { + "runtime_id": -672, + "component_based": false + }, + "minecraft:hard_blue_stained_glass": { + "runtime_id": -698, + "component_based": false + }, + "minecraft:hard_blue_stained_glass_pane": { + "runtime_id": -668, + "component_based": false + }, + "minecraft:hard_brown_stained_glass": { + "runtime_id": -699, + "component_based": false + }, + "minecraft:hard_brown_stained_glass_pane": { + "runtime_id": -669, + "component_based": false + }, + "minecraft:hard_cyan_stained_glass": { + "runtime_id": -696, + "component_based": false + }, + "minecraft:hard_cyan_stained_glass_pane": { + "runtime_id": -666, + "component_based": false + }, + "minecraft:hard_glass": { + "runtime_id": 253, + "component_based": false + }, + "minecraft:hard_glass_pane": { + "runtime_id": 190, + "component_based": false + }, + "minecraft:hard_gray_stained_glass": { + "runtime_id": -694, + "component_based": false + }, + "minecraft:hard_gray_stained_glass_pane": { + "runtime_id": -664, + "component_based": false + }, + "minecraft:hard_green_stained_glass": { + "runtime_id": -700, + "component_based": false + }, + "minecraft:hard_green_stained_glass_pane": { + "runtime_id": -670, + "component_based": false + }, + "minecraft:hard_light_blue_stained_glass": { + "runtime_id": -690, + "component_based": false + }, + "minecraft:hard_light_blue_stained_glass_pane": { + "runtime_id": -660, + "component_based": false + }, + "minecraft:hard_light_gray_stained_glass": { + "runtime_id": -695, + "component_based": false + }, + "minecraft:hard_light_gray_stained_glass_pane": { + "runtime_id": -665, + "component_based": false + }, + "minecraft:hard_lime_stained_glass": { + "runtime_id": -692, + "component_based": false + }, + "minecraft:hard_lime_stained_glass_pane": { + "runtime_id": -662, + "component_based": false + }, + "minecraft:hard_magenta_stained_glass": { + "runtime_id": -689, + "component_based": false + }, + "minecraft:hard_magenta_stained_glass_pane": { + "runtime_id": -659, + "component_based": false + }, + "minecraft:hard_orange_stained_glass": { + "runtime_id": -688, + "component_based": false + }, + "minecraft:hard_orange_stained_glass_pane": { + "runtime_id": -658, + "component_based": false + }, + "minecraft:hard_pink_stained_glass": { + "runtime_id": -693, + "component_based": false + }, + "minecraft:hard_pink_stained_glass_pane": { + "runtime_id": -663, + "component_based": false + }, + "minecraft:hard_purple_stained_glass": { + "runtime_id": -697, + "component_based": false + }, + "minecraft:hard_purple_stained_glass_pane": { + "runtime_id": -667, + "component_based": false + }, + "minecraft:hard_red_stained_glass": { + "runtime_id": -701, + "component_based": false + }, + "minecraft:hard_red_stained_glass_pane": { + "runtime_id": -671, + "component_based": false + }, + "minecraft:hard_stained_glass": { + "runtime_id": 763, + "component_based": false + }, + "minecraft:hard_stained_glass_pane": { + "runtime_id": 764, + "component_based": false + }, + "minecraft:hard_white_stained_glass": { + "runtime_id": 254, + "component_based": false + }, + "minecraft:hard_white_stained_glass_pane": { + "runtime_id": 191, + "component_based": false + }, + "minecraft:hard_yellow_stained_glass": { + "runtime_id": -691, + "component_based": false + }, + "minecraft:hard_yellow_stained_glass_pane": { + "runtime_id": -661, + "component_based": false + }, + "minecraft:hardened_clay": { + "runtime_id": 172, + "component_based": false + }, + "minecraft:hay_block": { + "runtime_id": 170, + "component_based": false + }, + "minecraft:heart_of_the_sea": { + "runtime_id": 588, + "component_based": false + }, + "minecraft:heart_pottery_sherd": { + "runtime_id": 688, + "component_based": false + }, + "minecraft:heartbreak_pottery_sherd": { + "runtime_id": 689, + "component_based": false + }, + "minecraft:heavy_core": { + "runtime_id": -316, + "component_based": false + }, + "minecraft:heavy_weighted_pressure_plate": { + "runtime_id": 148, + "component_based": false + }, + "minecraft:hoglin_spawn_egg": { + "runtime_id": 507, + "component_based": false + }, + "minecraft:honey_block": { + "runtime_id": -220, + "component_based": false + }, + "minecraft:honey_bottle": { + "runtime_id": 612, + "component_based": false + }, + "minecraft:honeycomb": { + "runtime_id": 611, + "component_based": false + }, + "minecraft:honeycomb_block": { + "runtime_id": -221, + "component_based": false + }, + "minecraft:hopper": { + "runtime_id": 544, + "component_based": true + }, + "minecraft:hopper_minecart": { + "runtime_id": 543, + "component_based": false + }, + "minecraft:horn_coral": { + "runtime_id": -584, + "component_based": false + }, + "minecraft:horn_coral_block": { + "runtime_id": -852, + "component_based": false + }, + "minecraft:horn_coral_fan": { + "runtime_id": -843, + "component_based": false + }, + "minecraft:horn_coral_wall_fan": { + "runtime_id": -137, + "component_based": false + }, + "minecraft:horse_spawn_egg": { + "runtime_id": 468, + "component_based": false + }, + "minecraft:host_armor_trim_smithing_template": { + "runtime_id": 717, + "component_based": false + }, + "minecraft:howl_pottery_sherd": { + "runtime_id": 690, + "component_based": false + }, + "minecraft:husk_spawn_egg": { + "runtime_id": 474, + "component_based": false + }, + "minecraft:ice": { + "runtime_id": 79, + "component_based": false + }, + "minecraft:ice_bomb": { + "runtime_id": 616, + "component_based": false + }, + "minecraft:infested_chiseled_stone_bricks": { + "runtime_id": -862, + "component_based": false + }, + "minecraft:infested_cobblestone": { + "runtime_id": -858, + "component_based": false + }, + "minecraft:infested_cracked_stone_bricks": { + "runtime_id": -861, + "component_based": false + }, + "minecraft:infested_deepslate": { + "runtime_id": -454, + "component_based": false + }, + "minecraft:infested_mossy_stone_bricks": { + "runtime_id": -860, + "component_based": false + }, + "minecraft:infested_stone": { + "runtime_id": 97, + "component_based": false + }, + "minecraft:infested_stone_bricks": { + "runtime_id": -859, + "component_based": false + }, + "minecraft:info_update": { + "runtime_id": 248, + "component_based": false + }, + "minecraft:info_update2": { + "runtime_id": 249, + "component_based": false + }, + "minecraft:ink_sac": { + "runtime_id": 422, + "component_based": false + }, + "minecraft:invisible_bedrock": { + "runtime_id": 95, + "component_based": false + }, + "minecraft:iron_axe": { + "runtime_id": 305, + "component_based": false + }, + "minecraft:iron_bars": { + "runtime_id": 101, + "component_based": false + }, + "minecraft:iron_block": { + "runtime_id": 42, + "component_based": false + }, + "minecraft:iron_boots": { + "runtime_id": 354, + "component_based": false + }, + "minecraft:iron_chestplate": { + "runtime_id": 352, + "component_based": false + }, + "minecraft:iron_door": { + "runtime_id": 380, + "component_based": false + }, + "minecraft:iron_golem_spawn_egg": { + "runtime_id": 516, + "component_based": false + }, + "minecraft:iron_helmet": { + "runtime_id": 351, + "component_based": false + }, + "minecraft:iron_hoe": { + "runtime_id": 339, + "component_based": false + }, + "minecraft:iron_horse_armor": { + "runtime_id": 548, + "component_based": false + }, + "minecraft:iron_ingot": { + "runtime_id": 312, + "component_based": false + }, + "minecraft:iron_leggings": { + "runtime_id": 353, + "component_based": false + }, + "minecraft:iron_nugget": { + "runtime_id": 586, + "component_based": false + }, + "minecraft:iron_ore": { + "runtime_id": 15, + "component_based": false + }, + "minecraft:iron_pickaxe": { + "runtime_id": 304, + "component_based": false + }, + "minecraft:iron_shovel": { + "runtime_id": 303, + "component_based": false + }, + "minecraft:iron_sword": { + "runtime_id": 314, + "component_based": false + }, + "minecraft:iron_trapdoor": { + "runtime_id": 167, + "component_based": false + }, + "minecraft:item.acacia_door": { + "runtime_id": 196, + "component_based": false + }, + "minecraft:item.bed": { + "runtime_id": 26, + "component_based": false + }, + "minecraft:item.beetroot": { + "runtime_id": 244, + "component_based": false + }, + "minecraft:item.birch_door": { + "runtime_id": 194, + "component_based": false + }, + "minecraft:item.brewing_stand": { + "runtime_id": 117, + "component_based": false + }, + "minecraft:item.cake": { + "runtime_id": 92, + "component_based": false + }, + "minecraft:item.camera": { + "runtime_id": 242, + "component_based": false + }, + "minecraft:item.campfire": { + "runtime_id": -209, + "component_based": false + }, + "minecraft:item.cauldron": { + "runtime_id": 118, + "component_based": false + }, + "minecraft:item.chain": { + "runtime_id": -286, + "component_based": false + }, + "minecraft:item.crimson_door": { + "runtime_id": -244, + "component_based": false + }, + "minecraft:item.dark_oak_door": { + "runtime_id": 197, + "component_based": false + }, + "minecraft:item.flower_pot": { + "runtime_id": 140, + "component_based": false + }, + "minecraft:item.frame": { + "runtime_id": 199, + "component_based": false + }, + "minecraft:item.glow_frame": { + "runtime_id": -339, + "component_based": false + }, + "minecraft:item.hopper": { + "runtime_id": 154, + "component_based": false + }, + "minecraft:item.iron_door": { + "runtime_id": 71, + "component_based": false + }, + "minecraft:item.jungle_door": { + "runtime_id": 195, + "component_based": false + }, + "minecraft:item.kelp": { + "runtime_id": -138, + "component_based": false + }, + "minecraft:item.mangrove_door": { + "runtime_id": -493, + "component_based": false + }, + "minecraft:item.nether_sprouts": { + "runtime_id": -238, + "component_based": false + }, + "minecraft:item.nether_wart": { + "runtime_id": 115, + "component_based": false + }, + "minecraft:item.reeds": { + "runtime_id": 83, + "component_based": false + }, + "minecraft:item.skull": { + "runtime_id": 144, + "component_based": false + }, + "minecraft:item.soul_campfire": { + "runtime_id": -290, + "component_based": false + }, + "minecraft:item.spruce_door": { + "runtime_id": 193, + "component_based": false + }, + "minecraft:item.warped_door": { + "runtime_id": -245, + "component_based": false + }, + "minecraft:item.wheat": { + "runtime_id": 59, + "component_based": false + }, + "minecraft:item.wooden_door": { + "runtime_id": 64, + "component_based": false + }, + "minecraft:jigsaw": { + "runtime_id": -211, + "component_based": false + }, + "minecraft:jukebox": { + "runtime_id": 84, + "component_based": false + }, + "minecraft:jungle_boat": { + "runtime_id": 386, + "component_based": false + }, + "minecraft:jungle_button": { + "runtime_id": -143, + "component_based": false + }, + "minecraft:jungle_chest_boat": { + "runtime_id": 661, + "component_based": false + }, + "minecraft:jungle_door": { + "runtime_id": 572, + "component_based": false + }, + "minecraft:jungle_double_slab": { + "runtime_id": -811, + "component_based": false + }, + "minecraft:jungle_fence": { + "runtime_id": -578, + "component_based": false + }, + "minecraft:jungle_fence_gate": { + "runtime_id": 185, + "component_based": false + }, + "minecraft:jungle_hanging_sign": { + "runtime_id": -503, + "component_based": false + }, + "minecraft:jungle_leaves": { + "runtime_id": -802, + "component_based": false + }, + "minecraft:jungle_log": { + "runtime_id": -571, + "component_based": false + }, + "minecraft:jungle_planks": { + "runtime_id": -741, + "component_based": false + }, + "minecraft:jungle_pressure_plate": { + "runtime_id": -153, + "component_based": false + }, + "minecraft:jungle_sapling": { + "runtime_id": -827, + "component_based": false + }, + "minecraft:jungle_sign": { + "runtime_id": 595, + "component_based": false + }, + "minecraft:jungle_slab": { + "runtime_id": -806, + "component_based": false + }, + "minecraft:jungle_stairs": { + "runtime_id": 136, + "component_based": false + }, + "minecraft:jungle_standing_sign": { + "runtime_id": -188, + "component_based": false + }, + "minecraft:jungle_trapdoor": { + "runtime_id": -148, + "component_based": false + }, + "minecraft:jungle_wall_sign": { + "runtime_id": -189, + "component_based": false + }, + "minecraft:jungle_wood": { + "runtime_id": -816, + "component_based": false + }, + "minecraft:kelp": { + "runtime_id": 391, + "component_based": true + }, + "minecraft:ladder": { + "runtime_id": 65, + "component_based": false + }, + "minecraft:lantern": { + "runtime_id": -208, + "component_based": false + }, + "minecraft:lapis_block": { + "runtime_id": 22, + "component_based": false + }, + "minecraft:lapis_lazuli": { + "runtime_id": 423, + "component_based": false + }, + "minecraft:lapis_ore": { + "runtime_id": 21, + "component_based": false + }, + "minecraft:large_amethyst_bud": { + "runtime_id": -330, + "component_based": false + }, + "minecraft:large_fern": { + "runtime_id": -865, + "component_based": false + }, + "minecraft:lava": { + "runtime_id": 11, + "component_based": false + }, + "minecraft:lava_bucket": { + "runtime_id": 371, + "component_based": false + }, + "minecraft:lead": { + "runtime_id": 564, + "component_based": false + }, + "minecraft:leather": { + "runtime_id": 390, + "component_based": false + }, + "minecraft:leather_boots": { + "runtime_id": 346, + "component_based": false + }, + "minecraft:leather_chestplate": { + "runtime_id": 344, + "component_based": false + }, + "minecraft:leather_helmet": { + "runtime_id": 343, + "component_based": false + }, + "minecraft:leather_horse_armor": { + "runtime_id": 547, + "component_based": false + }, + "minecraft:leather_leggings": { + "runtime_id": 345, + "component_based": false + }, + "minecraft:leaves": { + "runtime_id": 744, + "component_based": false + }, + "minecraft:leaves2": { + "runtime_id": 745, + "component_based": false + }, + "minecraft:lectern": { + "runtime_id": -194, + "component_based": false + }, + "minecraft:lever": { + "runtime_id": 69, + "component_based": false + }, + "minecraft:light_block": { + "runtime_id": 765, + "component_based": false + }, + "minecraft:light_block_0": { + "runtime_id": -215, + "component_based": false + }, + "minecraft:light_block_1": { + "runtime_id": -929, + "component_based": false + }, + "minecraft:light_block_10": { + "runtime_id": -938, + "component_based": false + }, + "minecraft:light_block_11": { + "runtime_id": -939, + "component_based": false + }, + "minecraft:light_block_12": { + "runtime_id": -940, + "component_based": false + }, + "minecraft:light_block_13": { + "runtime_id": -941, + "component_based": false + }, + "minecraft:light_block_14": { + "runtime_id": -942, + "component_based": false + }, + "minecraft:light_block_15": { + "runtime_id": -943, + "component_based": false + }, + "minecraft:light_block_2": { + "runtime_id": -930, + "component_based": false + }, + "minecraft:light_block_3": { + "runtime_id": -931, + "component_based": false + }, + "minecraft:light_block_4": { + "runtime_id": -932, + "component_based": false + }, + "minecraft:light_block_5": { + "runtime_id": -933, + "component_based": false + }, + "minecraft:light_block_6": { + "runtime_id": -934, + "component_based": false + }, + "minecraft:light_block_7": { + "runtime_id": -935, + "component_based": false + }, + "minecraft:light_block_8": { + "runtime_id": -936, + "component_based": false + }, + "minecraft:light_block_9": { + "runtime_id": -937, + "component_based": false + }, + "minecraft:light_blue_candle": { + "runtime_id": -416, + "component_based": false + }, + "minecraft:light_blue_candle_cake": { + "runtime_id": -433, + "component_based": false + }, + "minecraft:light_blue_carpet": { + "runtime_id": -599, + "component_based": false + }, + "minecraft:light_blue_concrete": { + "runtime_id": -630, + "component_based": false + }, + "minecraft:light_blue_concrete_powder": { + "runtime_id": -711, + "component_based": false + }, + "minecraft:light_blue_dye": { + "runtime_id": 416, + "component_based": false + }, + "minecraft:light_blue_glazed_terracotta": { + "runtime_id": 223, + "component_based": false + }, + "minecraft:light_blue_shulker_box": { + "runtime_id": -615, + "component_based": false + }, + "minecraft:light_blue_stained_glass": { + "runtime_id": -675, + "component_based": false + }, + "minecraft:light_blue_stained_glass_pane": { + "runtime_id": -645, + "component_based": false + }, + "minecraft:light_blue_terracotta": { + "runtime_id": -726, + "component_based": false + }, + "minecraft:light_blue_wool": { + "runtime_id": -562, + "component_based": false + }, + "minecraft:light_gray_candle": { + "runtime_id": -421, + "component_based": false + }, + "minecraft:light_gray_candle_cake": { + "runtime_id": -438, + "component_based": false + }, + "minecraft:light_gray_carpet": { + "runtime_id": -604, + "component_based": false + }, + "minecraft:light_gray_concrete": { + "runtime_id": -635, + "component_based": false + }, + "minecraft:light_gray_concrete_powder": { + "runtime_id": -716, + "component_based": false + }, + "minecraft:light_gray_dye": { + "runtime_id": 411, + "component_based": false + }, + "minecraft:light_gray_shulker_box": { + "runtime_id": -620, + "component_based": false + }, + "minecraft:light_gray_stained_glass": { + "runtime_id": -680, + "component_based": false + }, + "minecraft:light_gray_stained_glass_pane": { + "runtime_id": -650, + "component_based": false + }, + "minecraft:light_gray_terracotta": { + "runtime_id": -731, + "component_based": false + }, + "minecraft:light_gray_wool": { + "runtime_id": -552, + "component_based": false + }, + "minecraft:light_weighted_pressure_plate": { + "runtime_id": 147, + "component_based": false + }, + "minecraft:lightning_rod": { + "runtime_id": -312, + "component_based": false + }, + "minecraft:lilac": { + "runtime_id": -863, + "component_based": false + }, + "minecraft:lily_of_the_valley": { + "runtime_id": -839, + "component_based": false + }, + "minecraft:lime_candle": { + "runtime_id": -418, + "component_based": false + }, + "minecraft:lime_candle_cake": { + "runtime_id": -435, + "component_based": false + }, + "minecraft:lime_carpet": { + "runtime_id": -601, + "component_based": false + }, + "minecraft:lime_concrete": { + "runtime_id": -632, + "component_based": false + }, + "minecraft:lime_concrete_powder": { + "runtime_id": -713, + "component_based": false + }, + "minecraft:lime_dye": { + "runtime_id": 414, + "component_based": false + }, + "minecraft:lime_glazed_terracotta": { + "runtime_id": 225, + "component_based": false + }, + "minecraft:lime_shulker_box": { + "runtime_id": -617, + "component_based": false + }, + "minecraft:lime_stained_glass": { + "runtime_id": -677, + "component_based": false + }, + "minecraft:lime_stained_glass_pane": { + "runtime_id": -647, + "component_based": false + }, + "minecraft:lime_terracotta": { + "runtime_id": -728, + "component_based": false + }, + "minecraft:lime_wool": { + "runtime_id": -559, + "component_based": false + }, + "minecraft:lingering_potion": { + "runtime_id": 579, + "component_based": false + }, + "minecraft:lit_blast_furnace": { + "runtime_id": -214, + "component_based": false + }, + "minecraft:lit_deepslate_redstone_ore": { + "runtime_id": -404, + "component_based": false + }, + "minecraft:lit_furnace": { + "runtime_id": 62, + "component_based": false + }, + "minecraft:lit_pumpkin": { + "runtime_id": 91, + "component_based": false + }, + "minecraft:lit_redstone_lamp": { + "runtime_id": 124, + "component_based": false + }, + "minecraft:lit_redstone_ore": { + "runtime_id": 74, + "component_based": false + }, + "minecraft:lit_smoker": { + "runtime_id": -199, + "component_based": false + }, + "minecraft:llama_spawn_egg": { + "runtime_id": 484, + "component_based": false + }, + "minecraft:lodestone": { + "runtime_id": -222, + "component_based": false + }, + "minecraft:lodestone_compass": { + "runtime_id": 623, + "component_based": false + }, + "minecraft:log": { + "runtime_id": 729, + "component_based": false + }, + "minecraft:log2": { + "runtime_id": 752, + "component_based": false + }, + "minecraft:loom": { + "runtime_id": -204, + "component_based": false + }, + "minecraft:mace": { + "runtime_id": 327, + "component_based": false + }, + "minecraft:magenta_candle": { + "runtime_id": -415, + "component_based": false + }, + "minecraft:magenta_candle_cake": { + "runtime_id": -432, + "component_based": false + }, + "minecraft:magenta_carpet": { + "runtime_id": -598, + "component_based": false + }, + "minecraft:magenta_concrete": { + "runtime_id": -629, + "component_based": false + }, + "minecraft:magenta_concrete_powder": { + "runtime_id": -710, + "component_based": false + }, + "minecraft:magenta_dye": { + "runtime_id": 417, + "component_based": false + }, + "minecraft:magenta_glazed_terracotta": { + "runtime_id": 222, + "component_based": false + }, + "minecraft:magenta_shulker_box": { + "runtime_id": -614, + "component_based": false + }, + "minecraft:magenta_stained_glass": { + "runtime_id": -674, + "component_based": false + }, + "minecraft:magenta_stained_glass_pane": { + "runtime_id": -644, + "component_based": false + }, + "minecraft:magenta_terracotta": { + "runtime_id": -725, + "component_based": false + }, + "minecraft:magenta_wool": { + "runtime_id": -565, + "component_based": false + }, + "minecraft:magma": { + "runtime_id": 213, + "component_based": false + }, + "minecraft:magma_cream": { + "runtime_id": 440, + "component_based": false + }, + "minecraft:magma_cube_spawn_egg": { + "runtime_id": 465, + "component_based": false + }, + "minecraft:mangrove_boat": { + "runtime_id": 656, + "component_based": false + }, + "minecraft:mangrove_button": { + "runtime_id": -487, + "component_based": false + }, + "minecraft:mangrove_chest_boat": { + "runtime_id": 665, + "component_based": false + }, + "minecraft:mangrove_door": { + "runtime_id": 654, + "component_based": false + }, + "minecraft:mangrove_double_slab": { + "runtime_id": -499, + "component_based": false + }, + "minecraft:mangrove_fence": { + "runtime_id": -491, + "component_based": false + }, + "minecraft:mangrove_fence_gate": { + "runtime_id": -492, + "component_based": false + }, + "minecraft:mangrove_hanging_sign": { + "runtime_id": -508, + "component_based": false + }, + "minecraft:mangrove_leaves": { + "runtime_id": -472, + "component_based": false + }, + "minecraft:mangrove_log": { + "runtime_id": -484, + "component_based": false + }, + "minecraft:mangrove_planks": { + "runtime_id": -486, + "component_based": false + }, + "minecraft:mangrove_pressure_plate": { + "runtime_id": -490, + "component_based": false + }, + "minecraft:mangrove_propagule": { + "runtime_id": -474, + "component_based": false + }, + "minecraft:mangrove_roots": { + "runtime_id": -482, + "component_based": false + }, + "minecraft:mangrove_sign": { + "runtime_id": 655, + "component_based": false + }, + "minecraft:mangrove_slab": { + "runtime_id": -489, + "component_based": false + }, + "minecraft:mangrove_stairs": { + "runtime_id": -488, + "component_based": false + }, + "minecraft:mangrove_standing_sign": { + "runtime_id": -494, + "component_based": false + }, + "minecraft:mangrove_trapdoor": { + "runtime_id": -496, + "component_based": false + }, + "minecraft:mangrove_wall_sign": { + "runtime_id": -495, + "component_based": false + }, + "minecraft:mangrove_wood": { + "runtime_id": -497, + "component_based": false + }, + "minecraft:medicine": { + "runtime_id": 620, + "component_based": false + }, + "minecraft:medium_amethyst_bud": { + "runtime_id": -331, + "component_based": false + }, + "minecraft:melon_block": { + "runtime_id": 103, + "component_based": false + }, + "minecraft:melon_seeds": { + "runtime_id": 298, + "component_based": false + }, + "minecraft:melon_slice": { + "runtime_id": 277, + "component_based": false + }, + "minecraft:melon_stem": { + "runtime_id": 105, + "component_based": false + }, + "minecraft:milk_bucket": { + "runtime_id": 369, + "component_based": false + }, + "minecraft:minecart": { + "runtime_id": 378, + "component_based": false + }, + "minecraft:miner_pottery_sherd": { + "runtime_id": 691, + "component_based": false + }, + "minecraft:mob_spawner": { + "runtime_id": 52, + "component_based": false + }, + "minecraft:mojang_banner_pattern": { + "runtime_id": 601, + "component_based": false + }, + "minecraft:monster_egg": { + "runtime_id": 753, + "component_based": false + }, + "minecraft:mooshroom_spawn_egg": { + "runtime_id": 450, + "component_based": false + }, + "minecraft:moss_block": { + "runtime_id": -320, + "component_based": false + }, + "minecraft:moss_carpet": { + "runtime_id": -335, + "component_based": false + }, + "minecraft:mossy_cobblestone": { + "runtime_id": 48, + "component_based": false + }, + "minecraft:mossy_cobblestone_double_slab": { + "runtime_id": -915, + "component_based": false + }, + "minecraft:mossy_cobblestone_slab": { + "runtime_id": -888, + "component_based": false + }, + "minecraft:mossy_cobblestone_stairs": { + "runtime_id": -179, + "component_based": false + }, + "minecraft:mossy_stone_brick_double_slab": { + "runtime_id": -168, + "component_based": false + }, + "minecraft:mossy_stone_brick_slab": { + "runtime_id": -166, + "component_based": false + }, + "minecraft:mossy_stone_brick_stairs": { + "runtime_id": -175, + "component_based": false + }, + "minecraft:mossy_stone_bricks": { + "runtime_id": -868, + "component_based": false + }, + "minecraft:mourner_pottery_sherd": { + "runtime_id": 692, + "component_based": false + }, + "minecraft:moving_block": { + "runtime_id": 250, + "component_based": false + }, + "minecraft:mud": { + "runtime_id": -473, + "component_based": false + }, + "minecraft:mud_brick_double_slab": { + "runtime_id": -479, + "component_based": false + }, + "minecraft:mud_brick_slab": { + "runtime_id": -478, + "component_based": false + }, + "minecraft:mud_brick_stairs": { + "runtime_id": -480, + "component_based": false + }, + "minecraft:mud_brick_wall": { + "runtime_id": -481, + "component_based": false + }, + "minecraft:mud_bricks": { + "runtime_id": -475, + "component_based": false + }, + "minecraft:muddy_mangrove_roots": { + "runtime_id": -483, + "component_based": false + }, + "minecraft:mule_spawn_egg": { + "runtime_id": 477, + "component_based": false + }, + "minecraft:mushroom_stew": { + "runtime_id": 265, + "component_based": false + }, + "minecraft:music_disc_11": { + "runtime_id": 561, + "component_based": true + }, + "minecraft:music_disc_13": { + "runtime_id": 551, + "component_based": true + }, + "minecraft:music_disc_5": { + "runtime_id": 657, + "component_based": true + }, + "minecraft:music_disc_blocks": { + "runtime_id": 553, + "component_based": true + }, + "minecraft:music_disc_cat": { + "runtime_id": 552, + "component_based": true + }, + "minecraft:music_disc_chirp": { + "runtime_id": 554, + "component_based": true + }, + "minecraft:music_disc_creator": { + "runtime_id": 760, + "component_based": true + }, + "minecraft:music_disc_creator_music_box": { + "runtime_id": 761, + "component_based": true + }, + "minecraft:music_disc_far": { + "runtime_id": 555, + "component_based": true + }, + "minecraft:music_disc_mall": { + "runtime_id": 556, + "component_based": true + }, + "minecraft:music_disc_mellohi": { + "runtime_id": 557, + "component_based": true + }, + "minecraft:music_disc_otherside": { + "runtime_id": 647, + "component_based": true + }, + "minecraft:music_disc_pigstep": { + "runtime_id": 641, + "component_based": true + }, + "minecraft:music_disc_precipice": { + "runtime_id": 762, + "component_based": true + }, + "minecraft:music_disc_relic": { + "runtime_id": 720, + "component_based": true + }, + "minecraft:music_disc_stal": { + "runtime_id": 558, + "component_based": true + }, + "minecraft:music_disc_strad": { + "runtime_id": 559, + "component_based": true + }, + "minecraft:music_disc_wait": { + "runtime_id": 562, + "component_based": true + }, + "minecraft:music_disc_ward": { + "runtime_id": 560, + "component_based": true + }, + "minecraft:mutton": { + "runtime_id": 567, + "component_based": false + }, + "minecraft:mycelium": { + "runtime_id": 110, + "component_based": false + }, + "minecraft:name_tag": { + "runtime_id": 565, + "component_based": false + }, + "minecraft:nautilus_shell": { + "runtime_id": 587, + "component_based": false + }, + "minecraft:nether_brick": { + "runtime_id": 112, + "component_based": false + }, + "minecraft:nether_brick_double_slab": { + "runtime_id": -883, + "component_based": false + }, + "minecraft:nether_brick_fence": { + "runtime_id": 113, + "component_based": false + }, + "minecraft:nether_brick_slab": { + "runtime_id": -877, + "component_based": false + }, + "minecraft:nether_brick_stairs": { + "runtime_id": 114, + "component_based": false + }, + "minecraft:nether_gold_ore": { + "runtime_id": -288, + "component_based": false + }, + "minecraft:nether_sprouts": { + "runtime_id": 642, + "component_based": true + }, + "minecraft:nether_star": { + "runtime_id": 535, + "component_based": false + }, + "minecraft:nether_wart": { + "runtime_id": 299, + "component_based": false + }, + "minecraft:nether_wart_block": { + "runtime_id": 214, + "component_based": false + }, + "minecraft:netherbrick": { + "runtime_id": 540, + "component_based": false + }, + "minecraft:netherite_axe": { + "runtime_id": 627, + "component_based": false + }, + "minecraft:netherite_block": { + "runtime_id": -270, + "component_based": false + }, + "minecraft:netherite_boots": { + "runtime_id": 633, + "component_based": false + }, + "minecraft:netherite_chestplate": { + "runtime_id": 631, + "component_based": false + }, + "minecraft:netherite_helmet": { + "runtime_id": 630, + "component_based": false + }, + "minecraft:netherite_hoe": { + "runtime_id": 628, + "component_based": false + }, + "minecraft:netherite_ingot": { + "runtime_id": 629, + "component_based": false + }, + "minecraft:netherite_leggings": { + "runtime_id": 632, + "component_based": false + }, + "minecraft:netherite_pickaxe": { + "runtime_id": 626, + "component_based": false + }, + "minecraft:netherite_scrap": { + "runtime_id": 634, + "component_based": false + }, + "minecraft:netherite_shovel": { + "runtime_id": 625, + "component_based": false + }, + "minecraft:netherite_sword": { + "runtime_id": 624, + "component_based": false + }, + "minecraft:netherite_upgrade_smithing_template": { + "runtime_id": 701, + "component_based": false + }, + "minecraft:netherrack": { + "runtime_id": 87, + "component_based": false + }, + "minecraft:netherreactor": { + "runtime_id": 247, + "component_based": false + }, + "minecraft:normal_stone_double_slab": { + "runtime_id": -926, + "component_based": false + }, + "minecraft:normal_stone_slab": { + "runtime_id": -899, + "component_based": false + }, + "minecraft:normal_stone_stairs": { + "runtime_id": -180, + "component_based": false + }, + "minecraft:noteblock": { + "runtime_id": 25, + "component_based": false + }, + "minecraft:npc_spawn_egg": { + "runtime_id": 481, + "component_based": false + }, + "minecraft:oak_boat": { + "runtime_id": 384, + "component_based": false + }, + "minecraft:oak_chest_boat": { + "runtime_id": 659, + "component_based": false + }, + "minecraft:oak_double_slab": { + "runtime_id": 157, + "component_based": false + }, + "minecraft:oak_fence": { + "runtime_id": 85, + "component_based": false + }, + "minecraft:oak_hanging_sign": { + "runtime_id": -500, + "component_based": false + }, + "minecraft:oak_leaves": { + "runtime_id": 18, + "component_based": false + }, + "minecraft:oak_log": { + "runtime_id": 17, + "component_based": false + }, + "minecraft:oak_planks": { + "runtime_id": 5, + "component_based": false + }, + "minecraft:oak_sapling": { + "runtime_id": 6, + "component_based": false + }, + "minecraft:oak_sign": { + "runtime_id": 366, + "component_based": false + }, + "minecraft:oak_slab": { + "runtime_id": 158, + "component_based": false + }, + "minecraft:oak_stairs": { + "runtime_id": 53, + "component_based": false + }, + "minecraft:oak_wood": { + "runtime_id": -212, + "component_based": false + }, + "minecraft:observer": { + "runtime_id": 251, + "component_based": false + }, + "minecraft:obsidian": { + "runtime_id": 49, + "component_based": false + }, + "minecraft:ocelot_spawn_egg": { + "runtime_id": 461, + "component_based": false + }, + "minecraft:ochre_froglight": { + "runtime_id": -471, + "component_based": false + }, + "minecraft:ominous_bottle": { + "runtime_id": 613, + "component_based": false + }, + "minecraft:ominous_trial_key": { + "runtime_id": 259, + "component_based": true + }, + "minecraft:orange_candle": { + "runtime_id": -414, + "component_based": false + }, + "minecraft:orange_candle_cake": { + "runtime_id": -431, + "component_based": false + }, + "minecraft:orange_carpet": { + "runtime_id": -597, + "component_based": false + }, + "minecraft:orange_concrete": { + "runtime_id": -628, + "component_based": false + }, + "minecraft:orange_concrete_powder": { + "runtime_id": -709, + "component_based": false + }, + "minecraft:orange_dye": { + "runtime_id": 418, + "component_based": false + }, + "minecraft:orange_glazed_terracotta": { + "runtime_id": 221, + "component_based": false + }, + "minecraft:orange_shulker_box": { + "runtime_id": -613, + "component_based": false + }, + "minecraft:orange_stained_glass": { + "runtime_id": -673, + "component_based": false + }, + "minecraft:orange_stained_glass_pane": { + "runtime_id": -643, + "component_based": false + }, + "minecraft:orange_terracotta": { + "runtime_id": -724, + "component_based": false + }, + "minecraft:orange_tulip": { + "runtime_id": -834, + "component_based": false + }, + "minecraft:orange_wool": { + "runtime_id": -557, + "component_based": false + }, + "minecraft:oxeye_daisy": { + "runtime_id": -837, + "component_based": false + }, + "minecraft:oxidized_chiseled_copper": { + "runtime_id": -763, + "component_based": false + }, + "minecraft:oxidized_copper": { + "runtime_id": -343, + "component_based": false + }, + "minecraft:oxidized_copper_bulb": { + "runtime_id": -779, + "component_based": false + }, + "minecraft:oxidized_copper_door": { + "runtime_id": -787, + "component_based": false + }, + "minecraft:oxidized_copper_grate": { + "runtime_id": -771, + "component_based": false + }, + "minecraft:oxidized_copper_trapdoor": { + "runtime_id": -795, + "component_based": false + }, + "minecraft:oxidized_cut_copper": { + "runtime_id": -350, + "component_based": false + }, + "minecraft:oxidized_cut_copper_slab": { + "runtime_id": -364, + "component_based": false + }, + "minecraft:oxidized_cut_copper_stairs": { + "runtime_id": -357, + "component_based": false + }, + "minecraft:oxidized_double_cut_copper_slab": { + "runtime_id": -371, + "component_based": false + }, + "minecraft:packed_ice": { + "runtime_id": 174, + "component_based": false + }, + "minecraft:packed_mud": { + "runtime_id": -477, + "component_based": false + }, + "minecraft:painting": { + "runtime_id": 365, + "component_based": false + }, + "minecraft:panda_spawn_egg": { + "runtime_id": 500, + "component_based": false + }, + "minecraft:paper": { + "runtime_id": 395, + "component_based": false + }, + "minecraft:parrot_spawn_egg": { + "runtime_id": 489, + "component_based": false + }, + "minecraft:pearlescent_froglight": { + "runtime_id": -469, + "component_based": false + }, + "minecraft:peony": { + "runtime_id": -867, + "component_based": false + }, + "minecraft:petrified_oak_double_slab": { + "runtime_id": -903, + "component_based": false + }, + "minecraft:petrified_oak_slab": { + "runtime_id": -902, + "component_based": false + }, + "minecraft:phantom_membrane": { + "runtime_id": 591, + "component_based": false + }, + "minecraft:phantom_spawn_egg": { + "runtime_id": 497, + "component_based": false + }, + "minecraft:pig_spawn_egg": { + "runtime_id": 447, + "component_based": false + }, + "minecraft:piglin_banner_pattern": { + "runtime_id": 604, + "component_based": false + }, + "minecraft:piglin_brute_spawn_egg": { + "runtime_id": 510, + "component_based": false + }, + "minecraft:piglin_spawn_egg": { + "runtime_id": 508, + "component_based": false + }, + "minecraft:pillager_spawn_egg": { + "runtime_id": 502, + "component_based": false + }, + "minecraft:pink_candle": { + "runtime_id": -419, + "component_based": false + }, + "minecraft:pink_candle_cake": { + "runtime_id": -436, + "component_based": false + }, + "minecraft:pink_carpet": { + "runtime_id": -602, + "component_based": false + }, + "minecraft:pink_concrete": { + "runtime_id": -633, + "component_based": false + }, + "minecraft:pink_concrete_powder": { + "runtime_id": -714, + "component_based": false + }, + "minecraft:pink_dye": { + "runtime_id": 413, + "component_based": false + }, + "minecraft:pink_glazed_terracotta": { + "runtime_id": 226, + "component_based": false + }, + "minecraft:pink_petals": { + "runtime_id": -549, + "component_based": false + }, + "minecraft:pink_shulker_box": { + "runtime_id": -618, + "component_based": false + }, + "minecraft:pink_stained_glass": { + "runtime_id": -678, + "component_based": false + }, + "minecraft:pink_stained_glass_pane": { + "runtime_id": -648, + "component_based": false + }, + "minecraft:pink_terracotta": { + "runtime_id": -729, + "component_based": false + }, + "minecraft:pink_tulip": { + "runtime_id": -836, + "component_based": false + }, + "minecraft:pink_wool": { + "runtime_id": -566, + "component_based": false + }, + "minecraft:piston": { + "runtime_id": 33, + "component_based": false + }, + "minecraft:piston_arm_collision": { + "runtime_id": 34, + "component_based": false + }, + "minecraft:pitcher_crop": { + "runtime_id": -574, + "component_based": false + }, + "minecraft:pitcher_plant": { + "runtime_id": -612, + "component_based": false + }, + "minecraft:pitcher_pod": { + "runtime_id": 302, + "component_based": false + }, + "minecraft:planks": { + "runtime_id": 749, + "component_based": false + }, + "minecraft:plenty_pottery_sherd": { + "runtime_id": 693, + "component_based": false + }, + "minecraft:podzol": { + "runtime_id": 243, + "component_based": false + }, + "minecraft:pointed_dripstone": { + "runtime_id": -308, + "component_based": false + }, + "minecraft:poisonous_potato": { + "runtime_id": 287, + "component_based": false + }, + "minecraft:polar_bear_spawn_egg": { + "runtime_id": 483, + "component_based": false + }, + "minecraft:polished_andesite": { + "runtime_id": -595, + "component_based": false + }, + "minecraft:polished_andesite_double_slab": { + "runtime_id": -919, + "component_based": false + }, + "minecraft:polished_andesite_slab": { + "runtime_id": -892, + "component_based": false + }, + "minecraft:polished_andesite_stairs": { + "runtime_id": -174, + "component_based": false + }, + "minecraft:polished_basalt": { + "runtime_id": -235, + "component_based": false + }, + "minecraft:polished_blackstone": { + "runtime_id": -291, + "component_based": false + }, + "minecraft:polished_blackstone_brick_double_slab": { + "runtime_id": -285, + "component_based": false + }, + "minecraft:polished_blackstone_brick_slab": { + "runtime_id": -284, + "component_based": false + }, + "minecraft:polished_blackstone_brick_stairs": { + "runtime_id": -275, + "component_based": false + }, + "minecraft:polished_blackstone_brick_wall": { + "runtime_id": -278, + "component_based": false + }, + "minecraft:polished_blackstone_bricks": { + "runtime_id": -274, + "component_based": false + }, + "minecraft:polished_blackstone_button": { + "runtime_id": -296, + "component_based": false + }, + "minecraft:polished_blackstone_double_slab": { + "runtime_id": -294, + "component_based": false + }, + "minecraft:polished_blackstone_pressure_plate": { + "runtime_id": -295, + "component_based": false + }, + "minecraft:polished_blackstone_slab": { + "runtime_id": -293, + "component_based": false + }, + "minecraft:polished_blackstone_stairs": { + "runtime_id": -292, + "component_based": false + }, + "minecraft:polished_blackstone_wall": { + "runtime_id": -297, + "component_based": false + }, + "minecraft:polished_deepslate": { + "runtime_id": -383, + "component_based": false + }, + "minecraft:polished_deepslate_double_slab": { + "runtime_id": -397, + "component_based": false + }, + "minecraft:polished_deepslate_slab": { + "runtime_id": -384, + "component_based": false + }, + "minecraft:polished_deepslate_stairs": { + "runtime_id": -385, + "component_based": false + }, + "minecraft:polished_deepslate_wall": { + "runtime_id": -386, + "component_based": false + }, + "minecraft:polished_diorite": { + "runtime_id": -593, + "component_based": false + }, + "minecraft:polished_diorite_double_slab": { + "runtime_id": -922, + "component_based": false + }, + "minecraft:polished_diorite_slab": { + "runtime_id": -895, + "component_based": false + }, + "minecraft:polished_diorite_stairs": { + "runtime_id": -173, + "component_based": false + }, + "minecraft:polished_granite": { + "runtime_id": -591, + "component_based": false + }, + "minecraft:polished_granite_double_slab": { + "runtime_id": -924, + "component_based": false + }, + "minecraft:polished_granite_slab": { + "runtime_id": -897, + "component_based": false + }, + "minecraft:polished_granite_stairs": { + "runtime_id": -172, + "component_based": false + }, + "minecraft:polished_tuff": { + "runtime_id": -748, + "component_based": false + }, + "minecraft:polished_tuff_double_slab": { + "runtime_id": -750, + "component_based": false + }, + "minecraft:polished_tuff_slab": { + "runtime_id": -749, + "component_based": false + }, + "minecraft:polished_tuff_stairs": { + "runtime_id": -751, + "component_based": false + }, + "minecraft:polished_tuff_wall": { + "runtime_id": -752, + "component_based": false + }, + "minecraft:popped_chorus_fruit": { + "runtime_id": 576, + "component_based": false + }, + "minecraft:poppy": { + "runtime_id": 38, + "component_based": false + }, + "minecraft:porkchop": { + "runtime_id": 267, + "component_based": false + }, + "minecraft:portal": { + "runtime_id": 90, + "component_based": false + }, + "minecraft:potato": { + "runtime_id": 285, + "component_based": false + }, + "minecraft:potatoes": { + "runtime_id": 142, + "component_based": false + }, + "minecraft:potion": { + "runtime_id": 436, + "component_based": false + }, + "minecraft:powder_snow": { + "runtime_id": -306, + "component_based": false + }, + "minecraft:powder_snow_bucket": { + "runtime_id": 376, + "component_based": false + }, + "minecraft:powered_comparator": { + "runtime_id": 150, + "component_based": false + }, + "minecraft:powered_repeater": { + "runtime_id": 94, + "component_based": false + }, + "minecraft:prismarine": { + "runtime_id": 168, + "component_based": false + }, + "minecraft:prismarine_brick_double_slab": { + "runtime_id": -914, + "component_based": false + }, + "minecraft:prismarine_brick_slab": { + "runtime_id": -887, + "component_based": false + }, + "minecraft:prismarine_bricks": { + "runtime_id": -948, + "component_based": false + }, + "minecraft:prismarine_bricks_stairs": { + "runtime_id": -4, + "component_based": false + }, + "minecraft:prismarine_crystals": { + "runtime_id": 566, + "component_based": false + }, + "minecraft:prismarine_double_slab": { + "runtime_id": -912, + "component_based": false + }, + "minecraft:prismarine_shard": { + "runtime_id": 582, + "component_based": false + }, + "minecraft:prismarine_slab": { + "runtime_id": -885, + "component_based": false + }, + "minecraft:prismarine_stairs": { + "runtime_id": -2, + "component_based": false + }, + "minecraft:prize_pottery_sherd": { + "runtime_id": 694, + "component_based": false + }, + "minecraft:pufferfish": { + "runtime_id": 272, + "component_based": false + }, + "minecraft:pufferfish_bucket": { + "runtime_id": 375, + "component_based": false + }, + "minecraft:pufferfish_spawn_egg": { + "runtime_id": 492, + "component_based": false + }, + "minecraft:pumpkin": { + "runtime_id": 86, + "component_based": false + }, + "minecraft:pumpkin_pie": { + "runtime_id": 289, + "component_based": false + }, + "minecraft:pumpkin_seeds": { + "runtime_id": 297, + "component_based": false + }, + "minecraft:pumpkin_stem": { + "runtime_id": 104, + "component_based": false + }, + "minecraft:purple_candle": { + "runtime_id": -423, + "component_based": false + }, + "minecraft:purple_candle_cake": { + "runtime_id": -440, + "component_based": false + }, + "minecraft:purple_carpet": { + "runtime_id": -606, + "component_based": false + }, + "minecraft:purple_concrete": { + "runtime_id": -637, + "component_based": false + }, + "minecraft:purple_concrete_powder": { + "runtime_id": -718, + "component_based": false + }, + "minecraft:purple_dye": { + "runtime_id": 409, + "component_based": false + }, + "minecraft:purple_glazed_terracotta": { + "runtime_id": 219, + "component_based": false + }, + "minecraft:purple_shulker_box": { + "runtime_id": -622, + "component_based": false + }, + "minecraft:purple_stained_glass": { + "runtime_id": -682, + "component_based": false + }, + "minecraft:purple_stained_glass_pane": { + "runtime_id": -652, + "component_based": false + }, + "minecraft:purple_terracotta": { + "runtime_id": -733, + "component_based": false + }, + "minecraft:purple_wool": { + "runtime_id": -564, + "component_based": false + }, + "minecraft:purpur_block": { + "runtime_id": 201, + "component_based": false + }, + "minecraft:purpur_double_slab": { + "runtime_id": -911, + "component_based": false + }, + "minecraft:purpur_slab": { + "runtime_id": -884, + "component_based": false + }, + "minecraft:purpur_stairs": { + "runtime_id": 203, + "component_based": false + }, + "minecraft:quartz": { + "runtime_id": 541, + "component_based": false + }, + "minecraft:quartz_block": { + "runtime_id": 155, + "component_based": false + }, + "minecraft:quartz_bricks": { + "runtime_id": -304, + "component_based": false + }, + "minecraft:quartz_double_slab": { + "runtime_id": -882, + "component_based": false + }, + "minecraft:quartz_ore": { + "runtime_id": 153, + "component_based": false + }, + "minecraft:quartz_pillar": { + "runtime_id": -954, + "component_based": false + }, + "minecraft:quartz_slab": { + "runtime_id": -876, + "component_based": false + }, + "minecraft:quartz_stairs": { + "runtime_id": 156, + "component_based": false + }, + "minecraft:rabbit": { + "runtime_id": 293, + "component_based": false + }, + "minecraft:rabbit_foot": { + "runtime_id": 545, + "component_based": false + }, + "minecraft:rabbit_hide": { + "runtime_id": 546, + "component_based": false + }, + "minecraft:rabbit_spawn_egg": { + "runtime_id": 469, + "component_based": false + }, + "minecraft:rabbit_stew": { + "runtime_id": 295, + "component_based": false + }, + "minecraft:rail": { + "runtime_id": 66, + "component_based": false + }, + "minecraft:raiser_armor_trim_smithing_template": { + "runtime_id": 715, + "component_based": false + }, + "minecraft:rapid_fertilizer": { + "runtime_id": 618, + "component_based": false + }, + "minecraft:ravager_spawn_egg": { + "runtime_id": 504, + "component_based": false + }, + "minecraft:raw_copper": { + "runtime_id": 524, + "component_based": false + }, + "minecraft:raw_copper_block": { + "runtime_id": -452, + "component_based": false + }, + "minecraft:raw_gold": { + "runtime_id": 523, + "component_based": false + }, + "minecraft:raw_gold_block": { + "runtime_id": -453, + "component_based": false + }, + "minecraft:raw_iron": { + "runtime_id": 522, + "component_based": false + }, + "minecraft:raw_iron_block": { + "runtime_id": -451, + "component_based": false + }, + "minecraft:recovery_compass": { + "runtime_id": 667, + "component_based": false + }, + "minecraft:red_candle": { + "runtime_id": -427, + "component_based": false + }, + "minecraft:red_candle_cake": { + "runtime_id": -444, + "component_based": false + }, + "minecraft:red_carpet": { + "runtime_id": -610, + "component_based": false + }, + "minecraft:red_concrete": { + "runtime_id": -641, + "component_based": false + }, + "minecraft:red_concrete_powder": { + "runtime_id": -722, + "component_based": false + }, + "minecraft:red_dye": { + "runtime_id": 405, + "component_based": false + }, + "minecraft:red_flower": { + "runtime_id": 747, + "component_based": false + }, + "minecraft:red_glazed_terracotta": { + "runtime_id": 234, + "component_based": false + }, + "minecraft:red_mushroom": { + "runtime_id": 40, + "component_based": false + }, + "minecraft:red_mushroom_block": { + "runtime_id": 100, + "component_based": false + }, + "minecraft:red_nether_brick": { + "runtime_id": 215, + "component_based": false + }, + "minecraft:red_nether_brick_double_slab": { + "runtime_id": -917, + "component_based": false + }, + "minecraft:red_nether_brick_slab": { + "runtime_id": -890, + "component_based": false + }, + "minecraft:red_nether_brick_stairs": { + "runtime_id": -184, + "component_based": false + }, + "minecraft:red_sand": { + "runtime_id": -949, + "component_based": false + }, + "minecraft:red_sandstone": { + "runtime_id": 179, + "component_based": false + }, + "minecraft:red_sandstone_double_slab": { + "runtime_id": 181, + "component_based": false + }, + "minecraft:red_sandstone_slab": { + "runtime_id": 182, + "component_based": false + }, + "minecraft:red_sandstone_stairs": { + "runtime_id": 180, + "component_based": false + }, + "minecraft:red_shulker_box": { + "runtime_id": -626, + "component_based": false + }, + "minecraft:red_stained_glass": { + "runtime_id": -686, + "component_based": false + }, + "minecraft:red_stained_glass_pane": { + "runtime_id": -656, + "component_based": false + }, + "minecraft:red_terracotta": { + "runtime_id": -737, + "component_based": false + }, + "minecraft:red_tulip": { + "runtime_id": -833, + "component_based": false + }, + "minecraft:red_wool": { + "runtime_id": -556, + "component_based": false + }, + "minecraft:redstone": { + "runtime_id": 381, + "component_based": false + }, + "minecraft:redstone_block": { + "runtime_id": 152, + "component_based": false + }, + "minecraft:redstone_lamp": { + "runtime_id": 123, + "component_based": false + }, + "minecraft:redstone_ore": { + "runtime_id": 73, + "component_based": false + }, + "minecraft:redstone_torch": { + "runtime_id": 76, + "component_based": false + }, + "minecraft:redstone_wire": { + "runtime_id": 55, + "component_based": false + }, + "minecraft:reinforced_deepslate": { + "runtime_id": -466, + "component_based": false + }, + "minecraft:repeater": { + "runtime_id": 428, + "component_based": true + }, + "minecraft:repeating_command_block": { + "runtime_id": 188, + "component_based": false + }, + "minecraft:reserved6": { + "runtime_id": 255, + "component_based": false + }, + "minecraft:respawn_anchor": { + "runtime_id": -272, + "component_based": false + }, + "minecraft:rib_armor_trim_smithing_template": { + "runtime_id": 711, + "component_based": false + }, + "minecraft:rose_bush": { + "runtime_id": -866, + "component_based": false + }, + "minecraft:rotten_flesh": { + "runtime_id": 282, + "component_based": false + }, + "minecraft:saddle": { + "runtime_id": 379, + "component_based": false + }, + "minecraft:salmon": { + "runtime_id": 270, + "component_based": false + }, + "minecraft:salmon_bucket": { + "runtime_id": 373, + "component_based": false + }, + "minecraft:salmon_spawn_egg": { + "runtime_id": 493, + "component_based": false + }, + "minecraft:sand": { + "runtime_id": 12, + "component_based": false + }, + "minecraft:sandstone": { + "runtime_id": 24, + "component_based": false + }, + "minecraft:sandstone_double_slab": { + "runtime_id": -878, + "component_based": false + }, + "minecraft:sandstone_slab": { + "runtime_id": -872, + "component_based": false + }, + "minecraft:sandstone_stairs": { + "runtime_id": 128, + "component_based": false + }, + "minecraft:sapling": { + "runtime_id": 743, + "component_based": false + }, + "minecraft:scaffolding": { + "runtime_id": -165, + "component_based": false + }, + "minecraft:scrape_pottery_sherd": { + "runtime_id": 695, + "component_based": false + }, + "minecraft:sculk": { + "runtime_id": -458, + "component_based": false + }, + "minecraft:sculk_catalyst": { + "runtime_id": -460, + "component_based": false + }, + "minecraft:sculk_sensor": { + "runtime_id": -307, + "component_based": false + }, + "minecraft:sculk_shrieker": { + "runtime_id": -461, + "component_based": false + }, + "minecraft:sculk_vein": { + "runtime_id": -459, + "component_based": false + }, + "minecraft:sea_lantern": { + "runtime_id": 169, + "component_based": false + }, + "minecraft:sea_pickle": { + "runtime_id": -156, + "component_based": false + }, + "minecraft:seagrass": { + "runtime_id": -130, + "component_based": false + }, + "minecraft:sentry_armor_trim_smithing_template": { + "runtime_id": 702, + "component_based": false + }, + "minecraft:shaper_armor_trim_smithing_template": { + "runtime_id": 716, + "component_based": false + }, + "minecraft:sheaf_pottery_sherd": { + "runtime_id": 696, + "component_based": false + }, + "minecraft:shears": { + "runtime_id": 430, + "component_based": false + }, + "minecraft:sheep_spawn_egg": { + "runtime_id": 448, + "component_based": false + }, + "minecraft:shelter_pottery_sherd": { + "runtime_id": 697, + "component_based": false + }, + "minecraft:shield": { + "runtime_id": 363, + "component_based": false + }, + "minecraft:short_grass": { + "runtime_id": 31, + "component_based": false + }, + "minecraft:shroomlight": { + "runtime_id": -230, + "component_based": false + }, + "minecraft:shulker_box": { + "runtime_id": 758, + "component_based": false + }, + "minecraft:shulker_shell": { + "runtime_id": 583, + "component_based": false + }, + "minecraft:shulker_spawn_egg": { + "runtime_id": 480, + "component_based": false + }, + "minecraft:silence_armor_trim_smithing_template": { + "runtime_id": 713, + "component_based": false + }, + "minecraft:silver_glazed_terracotta": { + "runtime_id": 228, + "component_based": false + }, + "minecraft:silverfish_spawn_egg": { + "runtime_id": 453, + "component_based": false + }, + "minecraft:skeleton_horse_spawn_egg": { + "runtime_id": 478, + "component_based": false + }, + "minecraft:skeleton_spawn_egg": { + "runtime_id": 454, + "component_based": false + }, + "minecraft:skull": { + "runtime_id": 533, + "component_based": false + }, + "minecraft:skull_banner_pattern": { + "runtime_id": 600, + "component_based": false + }, + "minecraft:skull_pottery_sherd": { + "runtime_id": 698, + "component_based": false + }, + "minecraft:slime": { + "runtime_id": 165, + "component_based": false + }, + "minecraft:slime_ball": { + "runtime_id": 397, + "component_based": false + }, + "minecraft:slime_spawn_egg": { + "runtime_id": 455, + "component_based": false + }, + "minecraft:small_amethyst_bud": { + "runtime_id": -332, + "component_based": false + }, + "minecraft:small_dripleaf_block": { + "runtime_id": -336, + "component_based": false + }, + "minecraft:smithing_table": { + "runtime_id": -202, + "component_based": false + }, + "minecraft:smoker": { + "runtime_id": -198, + "component_based": false + }, + "minecraft:smooth_basalt": { + "runtime_id": -377, + "component_based": false + }, + "minecraft:smooth_quartz": { + "runtime_id": -955, + "component_based": false + }, + "minecraft:smooth_quartz_double_slab": { + "runtime_id": -925, + "component_based": false + }, + "minecraft:smooth_quartz_slab": { + "runtime_id": -898, + "component_based": false + }, + "minecraft:smooth_quartz_stairs": { + "runtime_id": -185, + "component_based": false + }, + "minecraft:smooth_red_sandstone": { + "runtime_id": -958, + "component_based": false + }, + "minecraft:smooth_red_sandstone_double_slab": { + "runtime_id": -918, + "component_based": false + }, + "minecraft:smooth_red_sandstone_slab": { + "runtime_id": -891, + "component_based": false + }, + "minecraft:smooth_red_sandstone_stairs": { + "runtime_id": -176, + "component_based": false + }, + "minecraft:smooth_sandstone": { + "runtime_id": -946, + "component_based": false + }, + "minecraft:smooth_sandstone_double_slab": { + "runtime_id": -916, + "component_based": false + }, + "minecraft:smooth_sandstone_slab": { + "runtime_id": -889, + "component_based": false + }, + "minecraft:smooth_sandstone_stairs": { + "runtime_id": -177, + "component_based": false + }, + "minecraft:smooth_stone": { + "runtime_id": -183, + "component_based": false + }, + "minecraft:smooth_stone_double_slab": { + "runtime_id": 43, + "component_based": false + }, + "minecraft:smooth_stone_slab": { + "runtime_id": 44, + "component_based": false + }, + "minecraft:sniffer_egg": { + "runtime_id": -596, + "component_based": false + }, + "minecraft:sniffer_spawn_egg": { + "runtime_id": 511, + "component_based": false + }, + "minecraft:snort_pottery_sherd": { + "runtime_id": 699, + "component_based": false + }, + "minecraft:snout_armor_trim_smithing_template": { + "runtime_id": 710, + "component_based": false + }, + "minecraft:snow": { + "runtime_id": 80, + "component_based": false + }, + "minecraft:snow_golem_spawn_egg": { + "runtime_id": 517, + "component_based": false + }, + "minecraft:snow_layer": { + "runtime_id": 78, + "component_based": false + }, + "minecraft:snowball": { + "runtime_id": 382, + "component_based": true + }, + "minecraft:soul_campfire": { + "runtime_id": 643, + "component_based": true + }, + "minecraft:soul_fire": { + "runtime_id": -237, + "component_based": false + }, + "minecraft:soul_lantern": { + "runtime_id": -269, + "component_based": false + }, + "minecraft:soul_sand": { + "runtime_id": 88, + "component_based": false + }, + "minecraft:soul_soil": { + "runtime_id": -236, + "component_based": false + }, + "minecraft:soul_torch": { + "runtime_id": -268, + "component_based": false + }, + "minecraft:sparkler": { + "runtime_id": 621, + "component_based": false + }, + "minecraft:spawn_egg": { + "runtime_id": 769, + "component_based": false + }, + "minecraft:spider_eye": { + "runtime_id": 283, + "component_based": false + }, + "minecraft:spider_spawn_egg": { + "runtime_id": 456, + "component_based": false + }, + "minecraft:spire_armor_trim_smithing_template": { + "runtime_id": 712, + "component_based": false + }, + "minecraft:splash_potion": { + "runtime_id": 578, + "component_based": false + }, + "minecraft:sponge": { + "runtime_id": 19, + "component_based": false + }, + "minecraft:spore_blossom": { + "runtime_id": -321, + "component_based": false + }, + "minecraft:spruce_boat": { + "runtime_id": 387, + "component_based": false + }, + "minecraft:spruce_button": { + "runtime_id": -144, + "component_based": false + }, + "minecraft:spruce_chest_boat": { + "runtime_id": 662, + "component_based": false + }, + "minecraft:spruce_door": { + "runtime_id": 570, + "component_based": false + }, + "minecraft:spruce_double_slab": { + "runtime_id": -809, + "component_based": false + }, + "minecraft:spruce_fence": { + "runtime_id": -579, + "component_based": false + }, + "minecraft:spruce_fence_gate": { + "runtime_id": 183, + "component_based": false + }, + "minecraft:spruce_hanging_sign": { + "runtime_id": -501, + "component_based": false + }, + "minecraft:spruce_leaves": { + "runtime_id": -800, + "component_based": false + }, + "minecraft:spruce_log": { + "runtime_id": -569, + "component_based": false + }, + "minecraft:spruce_planks": { + "runtime_id": -739, + "component_based": false + }, + "minecraft:spruce_pressure_plate": { + "runtime_id": -154, + "component_based": false + }, + "minecraft:spruce_sapling": { + "runtime_id": -825, + "component_based": false + }, + "minecraft:spruce_sign": { + "runtime_id": 593, + "component_based": false + }, + "minecraft:spruce_slab": { + "runtime_id": -804, + "component_based": false + }, + "minecraft:spruce_stairs": { + "runtime_id": 134, + "component_based": false + }, + "minecraft:spruce_standing_sign": { + "runtime_id": -181, + "component_based": false + }, + "minecraft:spruce_trapdoor": { + "runtime_id": -149, + "component_based": false + }, + "minecraft:spruce_wall_sign": { + "runtime_id": -182, + "component_based": false + }, + "minecraft:spruce_wood": { + "runtime_id": -814, + "component_based": false + }, + "minecraft:spyglass": { + "runtime_id": 646, + "component_based": false + }, + "minecraft:squid_spawn_egg": { + "runtime_id": 460, + "component_based": false + }, + "minecraft:stained_glass": { + "runtime_id": 756, + "component_based": false + }, + "minecraft:stained_glass_pane": { + "runtime_id": 757, + "component_based": false + }, + "minecraft:stained_hardened_clay": { + "runtime_id": 721, + "component_based": false + }, + "minecraft:standing_banner": { + "runtime_id": 176, + "component_based": false + }, + "minecraft:standing_sign": { + "runtime_id": 63, + "component_based": false + }, + "minecraft:stick": { + "runtime_id": 328, + "component_based": false + }, + "minecraft:sticky_piston": { + "runtime_id": 29, + "component_based": false + }, + "minecraft:sticky_piston_arm_collision": { + "runtime_id": -217, + "component_based": false + }, + "minecraft:stone": { + "runtime_id": 1, + "component_based": false + }, + "minecraft:stone_axe": { + "runtime_id": 322, + "component_based": false + }, + "minecraft:stone_block_slab": { + "runtime_id": 733, + "component_based": false + }, + "minecraft:stone_block_slab2": { + "runtime_id": 734, + "component_based": false + }, + "minecraft:stone_block_slab3": { + "runtime_id": 735, + "component_based": false + }, + "minecraft:stone_block_slab4": { + "runtime_id": 736, + "component_based": false + }, + "minecraft:stone_brick_double_slab": { + "runtime_id": -881, + "component_based": false + }, + "minecraft:stone_brick_slab": { + "runtime_id": -875, + "component_based": false + }, + "minecraft:stone_brick_stairs": { + "runtime_id": 109, + "component_based": false + }, + "minecraft:stone_bricks": { + "runtime_id": 98, + "component_based": false + }, + "minecraft:stone_button": { + "runtime_id": 77, + "component_based": false + }, + "minecraft:stone_hoe": { + "runtime_id": 338, + "component_based": false + }, + "minecraft:stone_pickaxe": { + "runtime_id": 321, + "component_based": false + }, + "minecraft:stone_pressure_plate": { + "runtime_id": 70, + "component_based": false + }, + "minecraft:stone_shovel": { + "runtime_id": 320, + "component_based": false + }, + "minecraft:stone_stairs": { + "runtime_id": 67, + "component_based": false + }, + "minecraft:stone_sword": { + "runtime_id": 319, + "component_based": false + }, + "minecraft:stonebrick": { + "runtime_id": 731, + "component_based": false + }, + "minecraft:stonecutter": { + "runtime_id": 245, + "component_based": false + }, + "minecraft:stonecutter_block": { + "runtime_id": -197, + "component_based": false + }, + "minecraft:stray_spawn_egg": { + "runtime_id": 472, + "component_based": false + }, + "minecraft:strider_spawn_egg": { + "runtime_id": 506, + "component_based": false + }, + "minecraft:string": { + "runtime_id": 334, + "component_based": true + }, + "minecraft:stripped_acacia_log": { + "runtime_id": -8, + "component_based": false + }, + "minecraft:stripped_acacia_wood": { + "runtime_id": -823, + "component_based": false + }, + "minecraft:stripped_bamboo_block": { + "runtime_id": -528, + "component_based": false + }, + "minecraft:stripped_birch_log": { + "runtime_id": -6, + "component_based": false + }, + "minecraft:stripped_birch_wood": { + "runtime_id": -821, + "component_based": false + }, + "minecraft:stripped_cherry_log": { + "runtime_id": -535, + "component_based": false + }, + "minecraft:stripped_cherry_wood": { + "runtime_id": -545, + "component_based": false + }, + "minecraft:stripped_crimson_hyphae": { + "runtime_id": -300, + "component_based": false + }, + "minecraft:stripped_crimson_stem": { + "runtime_id": -240, + "component_based": false + }, + "minecraft:stripped_dark_oak_log": { + "runtime_id": -9, + "component_based": false + }, + "minecraft:stripped_dark_oak_wood": { + "runtime_id": -824, + "component_based": false + }, + "minecraft:stripped_jungle_log": { + "runtime_id": -7, + "component_based": false + }, + "minecraft:stripped_jungle_wood": { + "runtime_id": -822, + "component_based": false + }, + "minecraft:stripped_mangrove_log": { + "runtime_id": -485, + "component_based": false + }, + "minecraft:stripped_mangrove_wood": { + "runtime_id": -498, + "component_based": false + }, + "minecraft:stripped_oak_log": { + "runtime_id": -10, + "component_based": false + }, + "minecraft:stripped_oak_wood": { + "runtime_id": -819, + "component_based": false + }, + "minecraft:stripped_spruce_log": { + "runtime_id": -5, + "component_based": false + }, + "minecraft:stripped_spruce_wood": { + "runtime_id": -820, + "component_based": false + }, + "minecraft:stripped_warped_hyphae": { + "runtime_id": -301, + "component_based": false + }, + "minecraft:stripped_warped_stem": { + "runtime_id": -241, + "component_based": false + }, + "minecraft:structure_block": { + "runtime_id": 252, + "component_based": false + }, + "minecraft:structure_void": { + "runtime_id": 217, + "component_based": false + }, + "minecraft:sugar": { + "runtime_id": 425, + "component_based": false + }, + "minecraft:sugar_cane": { + "runtime_id": 394, + "component_based": true + }, + "minecraft:sunflower": { + "runtime_id": 175, + "component_based": false + }, + "minecraft:suspicious_gravel": { + "runtime_id": -573, + "component_based": false + }, + "minecraft:suspicious_sand": { + "runtime_id": -529, + "component_based": false + }, + "minecraft:suspicious_stew": { + "runtime_id": 609, + "component_based": false + }, + "minecraft:sweet_berries": { + "runtime_id": 292, + "component_based": false + }, + "minecraft:sweet_berry_bush": { + "runtime_id": -207, + "component_based": false + }, + "minecraft:tadpole_bucket": { + "runtime_id": 651, + "component_based": false + }, + "minecraft:tadpole_spawn_egg": { + "runtime_id": 650, + "component_based": false + }, + "minecraft:tall_grass": { + "runtime_id": -864, + "component_based": false + }, + "minecraft:tallgrass": { + "runtime_id": 751, + "component_based": false + }, + "minecraft:target": { + "runtime_id": -239, + "component_based": false + }, + "minecraft:tide_armor_trim_smithing_template": { + "runtime_id": 709, + "component_based": false + }, + "minecraft:tinted_glass": { + "runtime_id": -334, + "component_based": false + }, + "minecraft:tnt": { + "runtime_id": 46, + "component_based": false + }, + "minecraft:tnt_minecart": { + "runtime_id": 542, + "component_based": false + }, + "minecraft:torch": { + "runtime_id": 50, + "component_based": false + }, + "minecraft:torchflower": { + "runtime_id": -568, + "component_based": false + }, + "minecraft:torchflower_crop": { + "runtime_id": -567, + "component_based": false + }, + "minecraft:torchflower_seeds": { + "runtime_id": 301, + "component_based": false + }, + "minecraft:totem_of_undying": { + "runtime_id": 585, + "component_based": false + }, + "minecraft:trader_llama_spawn_egg": { + "runtime_id": 669, + "component_based": false + }, + "minecraft:trapdoor": { + "runtime_id": 96, + "component_based": false + }, + "minecraft:trapped_chest": { + "runtime_id": 146, + "component_based": false + }, + "minecraft:trial_key": { + "runtime_id": 258, + "component_based": true + }, + "minecraft:trial_spawner": { + "runtime_id": -315, + "component_based": false + }, + "minecraft:trident": { + "runtime_id": 563, + "component_based": false + }, + "minecraft:trip_wire": { + "runtime_id": 132, + "component_based": false + }, + "minecraft:tripwire_hook": { + "runtime_id": 131, + "component_based": false + }, + "minecraft:tropical_fish": { + "runtime_id": 271, + "component_based": false + }, + "minecraft:tropical_fish_bucket": { + "runtime_id": 374, + "component_based": false + }, + "minecraft:tropical_fish_spawn_egg": { + "runtime_id": 490, + "component_based": false + }, + "minecraft:tube_coral": { + "runtime_id": -131, + "component_based": false + }, + "minecraft:tube_coral_block": { + "runtime_id": -132, + "component_based": false + }, + "minecraft:tube_coral_fan": { + "runtime_id": -133, + "component_based": false + }, + "minecraft:tube_coral_wall_fan": { + "runtime_id": -135, + "component_based": false + }, + "minecraft:tuff": { + "runtime_id": -333, + "component_based": false + }, + "minecraft:tuff_brick_double_slab": { + "runtime_id": -756, + "component_based": false + }, + "minecraft:tuff_brick_slab": { + "runtime_id": -755, + "component_based": false + }, + "minecraft:tuff_brick_stairs": { + "runtime_id": -757, + "component_based": false + }, + "minecraft:tuff_brick_wall": { + "runtime_id": -758, + "component_based": false + }, + "minecraft:tuff_bricks": { + "runtime_id": -754, + "component_based": false + }, + "minecraft:tuff_double_slab": { + "runtime_id": -745, + "component_based": false + }, + "minecraft:tuff_slab": { + "runtime_id": -744, + "component_based": false + }, + "minecraft:tuff_stairs": { + "runtime_id": -746, + "component_based": false + }, + "minecraft:tuff_wall": { + "runtime_id": -747, + "component_based": false + }, + "minecraft:turtle_egg": { + "runtime_id": -159, + "component_based": false + }, + "minecraft:turtle_helmet": { + "runtime_id": 590, + "component_based": false + }, + "minecraft:turtle_scute": { + "runtime_id": 589, + "component_based": false + }, + "minecraft:turtle_spawn_egg": { + "runtime_id": 496, + "component_based": false + }, + "minecraft:twisting_vines": { + "runtime_id": -287, + "component_based": false + }, + "minecraft:underwater_torch": { + "runtime_id": 239, + "component_based": false + }, + "minecraft:undyed_shulker_box": { + "runtime_id": 205, + "component_based": false + }, + "minecraft:unknown": { + "runtime_id": -305, + "component_based": false + }, + "minecraft:unlit_redstone_torch": { + "runtime_id": 75, + "component_based": false + }, + "minecraft:unpowered_comparator": { + "runtime_id": 149, + "component_based": false + }, + "minecraft:unpowered_repeater": { + "runtime_id": 93, + "component_based": false + }, + "minecraft:vault": { + "runtime_id": -314, + "component_based": false + }, + "minecraft:verdant_froglight": { + "runtime_id": -470, + "component_based": false + }, + "minecraft:vex_armor_trim_smithing_template": { + "runtime_id": 708, + "component_based": false + }, + "minecraft:vex_spawn_egg": { + "runtime_id": 487, + "component_based": false + }, + "minecraft:villager_spawn_egg": { + "runtime_id": 459, + "component_based": false + }, + "minecraft:vindicator_spawn_egg": { + "runtime_id": 485, + "component_based": false + }, + "minecraft:vine": { + "runtime_id": 106, + "component_based": false + }, + "minecraft:wall_banner": { + "runtime_id": 177, + "component_based": false + }, + "minecraft:wall_sign": { + "runtime_id": 68, + "component_based": false + }, + "minecraft:wandering_trader_spawn_egg": { + "runtime_id": 503, + "component_based": false + }, + "minecraft:ward_armor_trim_smithing_template": { + "runtime_id": 706, + "component_based": false + }, + "minecraft:warden_spawn_egg": { + "runtime_id": 653, + "component_based": false + }, + "minecraft:warped_button": { + "runtime_id": -261, + "component_based": false + }, + "minecraft:warped_door": { + "runtime_id": 638, + "component_based": false + }, + "minecraft:warped_double_slab": { + "runtime_id": -267, + "component_based": false + }, + "minecraft:warped_fence": { + "runtime_id": -257, + "component_based": false + }, + "minecraft:warped_fence_gate": { + "runtime_id": -259, + "component_based": false + }, + "minecraft:warped_fungus": { + "runtime_id": -229, + "component_based": false + }, + "minecraft:warped_fungus_on_a_stick": { + "runtime_id": 639, + "component_based": true + }, + "minecraft:warped_hanging_sign": { + "runtime_id": -507, + "component_based": false + }, + "minecraft:warped_hyphae": { + "runtime_id": -298, + "component_based": false + }, + "minecraft:warped_nylium": { + "runtime_id": -233, + "component_based": false + }, + "minecraft:warped_planks": { + "runtime_id": -243, + "component_based": false + }, + "minecraft:warped_pressure_plate": { + "runtime_id": -263, + "component_based": false + }, + "minecraft:warped_roots": { + "runtime_id": -224, + "component_based": false + }, + "minecraft:warped_sign": { + "runtime_id": 636, + "component_based": false + }, + "minecraft:warped_slab": { + "runtime_id": -265, + "component_based": false + }, + "minecraft:warped_stairs": { + "runtime_id": -255, + "component_based": false + }, + "minecraft:warped_standing_sign": { + "runtime_id": -251, + "component_based": false + }, + "minecraft:warped_stem": { + "runtime_id": -226, + "component_based": false + }, + "minecraft:warped_trapdoor": { + "runtime_id": -247, + "component_based": false + }, + "minecraft:warped_wall_sign": { + "runtime_id": -253, + "component_based": false + }, + "minecraft:warped_wart_block": { + "runtime_id": -227, + "component_based": false + }, + "minecraft:water": { + "runtime_id": 9, + "component_based": false + }, + "minecraft:water_bucket": { + "runtime_id": 370, + "component_based": false + }, + "minecraft:waterlily": { + "runtime_id": 111, + "component_based": false + }, + "minecraft:waxed_chiseled_copper": { + "runtime_id": -764, + "component_based": false + }, + "minecraft:waxed_copper": { + "runtime_id": -344, + "component_based": false + }, + "minecraft:waxed_copper_bulb": { + "runtime_id": -780, + "component_based": false + }, + "minecraft:waxed_copper_door": { + "runtime_id": -788, + "component_based": false + }, + "minecraft:waxed_copper_grate": { + "runtime_id": -772, + "component_based": false + }, + "minecraft:waxed_copper_trapdoor": { + "runtime_id": -796, + "component_based": false + }, + "minecraft:waxed_cut_copper": { + "runtime_id": -351, + "component_based": false + }, + "minecraft:waxed_cut_copper_slab": { + "runtime_id": -365, + "component_based": false + }, + "minecraft:waxed_cut_copper_stairs": { + "runtime_id": -358, + "component_based": false + }, + "minecraft:waxed_double_cut_copper_slab": { + "runtime_id": -372, + "component_based": false + }, + "minecraft:waxed_exposed_chiseled_copper": { + "runtime_id": -765, + "component_based": false + }, + "minecraft:waxed_exposed_copper": { + "runtime_id": -345, + "component_based": false + }, + "minecraft:waxed_exposed_copper_bulb": { + "runtime_id": -781, + "component_based": false + }, + "minecraft:waxed_exposed_copper_door": { + "runtime_id": -789, + "component_based": false + }, + "minecraft:waxed_exposed_copper_grate": { + "runtime_id": -773, + "component_based": false + }, + "minecraft:waxed_exposed_copper_trapdoor": { + "runtime_id": -797, + "component_based": false + }, + "minecraft:waxed_exposed_cut_copper": { + "runtime_id": -352, + "component_based": false + }, + "minecraft:waxed_exposed_cut_copper_slab": { + "runtime_id": -366, + "component_based": false + }, + "minecraft:waxed_exposed_cut_copper_stairs": { + "runtime_id": -359, + "component_based": false + }, + "minecraft:waxed_exposed_double_cut_copper_slab": { + "runtime_id": -373, + "component_based": false + }, + "minecraft:waxed_oxidized_chiseled_copper": { + "runtime_id": -766, + "component_based": false + }, + "minecraft:waxed_oxidized_copper": { + "runtime_id": -446, + "component_based": false + }, + "minecraft:waxed_oxidized_copper_bulb": { + "runtime_id": -783, + "component_based": false + }, + "minecraft:waxed_oxidized_copper_door": { + "runtime_id": -791, + "component_based": false + }, + "minecraft:waxed_oxidized_copper_grate": { + "runtime_id": -775, + "component_based": false + }, + "minecraft:waxed_oxidized_copper_trapdoor": { + "runtime_id": -799, + "component_based": false + }, + "minecraft:waxed_oxidized_cut_copper": { + "runtime_id": -447, + "component_based": false + }, + "minecraft:waxed_oxidized_cut_copper_slab": { + "runtime_id": -449, + "component_based": false + }, + "minecraft:waxed_oxidized_cut_copper_stairs": { + "runtime_id": -448, + "component_based": false + }, + "minecraft:waxed_oxidized_double_cut_copper_slab": { + "runtime_id": -450, + "component_based": false + }, + "minecraft:waxed_weathered_chiseled_copper": { + "runtime_id": -767, + "component_based": false + }, + "minecraft:waxed_weathered_copper": { + "runtime_id": -346, + "component_based": false + }, + "minecraft:waxed_weathered_copper_bulb": { + "runtime_id": -782, + "component_based": false + }, + "minecraft:waxed_weathered_copper_door": { + "runtime_id": -790, + "component_based": false + }, + "minecraft:waxed_weathered_copper_grate": { + "runtime_id": -774, + "component_based": false + }, + "minecraft:waxed_weathered_copper_trapdoor": { + "runtime_id": -798, + "component_based": false + }, + "minecraft:waxed_weathered_cut_copper": { + "runtime_id": -353, + "component_based": false + }, + "minecraft:waxed_weathered_cut_copper_slab": { + "runtime_id": -367, + "component_based": false + }, + "minecraft:waxed_weathered_cut_copper_stairs": { + "runtime_id": -360, + "component_based": false + }, + "minecraft:waxed_weathered_double_cut_copper_slab": { + "runtime_id": -374, + "component_based": false + }, + "minecraft:wayfinder_armor_trim_smithing_template": { + "runtime_id": 714, + "component_based": false + }, + "minecraft:weathered_chiseled_copper": { + "runtime_id": -762, + "component_based": false + }, + "minecraft:weathered_copper": { + "runtime_id": -342, + "component_based": false + }, + "minecraft:weathered_copper_bulb": { + "runtime_id": -778, + "component_based": false + }, + "minecraft:weathered_copper_door": { + "runtime_id": -786, + "component_based": false + }, + "minecraft:weathered_copper_grate": { + "runtime_id": -770, + "component_based": false + }, + "minecraft:weathered_copper_trapdoor": { + "runtime_id": -794, + "component_based": false + }, + "minecraft:weathered_cut_copper": { + "runtime_id": -349, + "component_based": false + }, + "minecraft:weathered_cut_copper_slab": { + "runtime_id": -363, + "component_based": false + }, + "minecraft:weathered_cut_copper_stairs": { + "runtime_id": -356, + "component_based": false + }, + "minecraft:weathered_double_cut_copper_slab": { + "runtime_id": -370, + "component_based": false + }, + "minecraft:web": { + "runtime_id": 30, + "component_based": false + }, + "minecraft:weeping_vines": { + "runtime_id": -231, + "component_based": false + }, + "minecraft:wheat": { + "runtime_id": 342, + "component_based": false + }, + "minecraft:wheat_seeds": { + "runtime_id": 296, + "component_based": false + }, + "minecraft:white_candle": { + "runtime_id": -413, + "component_based": false + }, + "minecraft:white_candle_cake": { + "runtime_id": -430, + "component_based": false + }, + "minecraft:white_carpet": { + "runtime_id": 171, + "component_based": false + }, + "minecraft:white_concrete": { + "runtime_id": 236, + "component_based": false + }, + "minecraft:white_concrete_powder": { + "runtime_id": 237, + "component_based": false + }, + "minecraft:white_dye": { + "runtime_id": 419, + "component_based": false + }, + "minecraft:white_glazed_terracotta": { + "runtime_id": 220, + "component_based": false + }, + "minecraft:white_shulker_box": { + "runtime_id": 218, + "component_based": false + }, + "minecraft:white_stained_glass": { + "runtime_id": 241, + "component_based": false + }, + "minecraft:white_stained_glass_pane": { + "runtime_id": 160, + "component_based": false + }, + "minecraft:white_terracotta": { + "runtime_id": 159, + "component_based": false + }, + "minecraft:white_tulip": { + "runtime_id": -835, + "component_based": false + }, + "minecraft:white_wool": { + "runtime_id": 35, + "component_based": false + }, + "minecraft:wild_armor_trim_smithing_template": { + "runtime_id": 705, + "component_based": false + }, + "minecraft:wind_charge": { + "runtime_id": 260, + "component_based": true + }, + "minecraft:witch_spawn_egg": { + "runtime_id": 462, + "component_based": false + }, + "minecraft:wither_rose": { + "runtime_id": -216, + "component_based": false + }, + "minecraft:wither_skeleton_spawn_egg": { + "runtime_id": 475, + "component_based": false + }, + "minecraft:wither_spawn_egg": { + "runtime_id": 519, + "component_based": false + }, + "minecraft:wolf_armor": { + "runtime_id": 724, + "component_based": true + }, + "minecraft:wolf_spawn_egg": { + "runtime_id": 449, + "component_based": false + }, + "minecraft:wood": { + "runtime_id": 759, + "component_based": false + }, + "minecraft:wooden_axe": { + "runtime_id": 318, + "component_based": false + }, + "minecraft:wooden_button": { + "runtime_id": 143, + "component_based": false + }, + "minecraft:wooden_door": { + "runtime_id": 367, + "component_based": false + }, + "minecraft:wooden_hoe": { + "runtime_id": 337, + "component_based": false + }, + "minecraft:wooden_pickaxe": { + "runtime_id": 317, + "component_based": false + }, + "minecraft:wooden_pressure_plate": { + "runtime_id": 72, + "component_based": false + }, + "minecraft:wooden_shovel": { + "runtime_id": 316, + "component_based": false + }, + "minecraft:wooden_slab": { + "runtime_id": 746, + "component_based": false + }, + "minecraft:wooden_sword": { + "runtime_id": 315, + "component_based": false + }, + "minecraft:wool": { + "runtime_id": 727, + "component_based": false + }, + "minecraft:writable_book": { + "runtime_id": 527, + "component_based": false + }, + "minecraft:written_book": { + "runtime_id": 528, + "component_based": false + }, + "minecraft:yellow_candle": { + "runtime_id": -417, + "component_based": false + }, + "minecraft:yellow_candle_cake": { + "runtime_id": -434, + "component_based": false + }, + "minecraft:yellow_carpet": { + "runtime_id": -600, + "component_based": false + }, + "minecraft:yellow_concrete": { + "runtime_id": -631, + "component_based": false + }, + "minecraft:yellow_concrete_powder": { + "runtime_id": -712, + "component_based": false + }, + "minecraft:yellow_dye": { + "runtime_id": 415, + "component_based": false + }, + "minecraft:yellow_glazed_terracotta": { + "runtime_id": 224, + "component_based": false + }, + "minecraft:yellow_shulker_box": { + "runtime_id": -616, + "component_based": false + }, + "minecraft:yellow_stained_glass": { + "runtime_id": -676, + "component_based": false + }, + "minecraft:yellow_stained_glass_pane": { + "runtime_id": -646, + "component_based": false + }, + "minecraft:yellow_terracotta": { + "runtime_id": -727, + "component_based": false + }, + "minecraft:yellow_wool": { + "runtime_id": -558, + "component_based": false + }, + "minecraft:zoglin_spawn_egg": { + "runtime_id": 509, + "component_based": false + }, + "minecraft:zombie_horse_spawn_egg": { + "runtime_id": 479, + "component_based": false + }, + "minecraft:zombie_pigman_spawn_egg": { + "runtime_id": 458, + "component_based": false + }, + "minecraft:zombie_spawn_egg": { + "runtime_id": 457, + "component_based": false + }, + "minecraft:zombie_villager_spawn_egg": { + "runtime_id": 488, + "component_based": false + } +} diff --git a/legacyver/legacypacket/container_registry_cleanup.go b/legacyver/legacypacket/container_registry_cleanup.go new file mode 100644 index 0000000..56b72e8 --- /dev/null +++ b/legacyver/legacypacket/container_registry_cleanup.go @@ -0,0 +1,24 @@ +package legacypacket + +import ( + "github.com/akmalfairuz/legacy-version/legacyver/proto" + "github.com/sandertv/gophertunnel/minecraft/protocol" + "github.com/sandertv/gophertunnel/minecraft/protocol/packet" +) + +// ContainerRegistryCleanup is sent by the server to trigger a client-side cleanup of the dynamic container +// registry. +type ContainerRegistryCleanup struct { + // RemovedContainers is a list of protocol.FullContainerName's that should be removed from the client-side + // container registry. + RemovedContainers []proto.FullContainerName +} + +// ID ... +func (*ContainerRegistryCleanup) ID() uint32 { + return packet.IDContainerRegistryCleanup +} + +func (pk *ContainerRegistryCleanup) Marshal(io protocol.IO) { + protocol.Slice(io, &pk.RemovedContainers) +} diff --git a/legacyver/legacypacket/emote_packet.go b/legacyver/legacypacket/emote_packet.go new file mode 100644 index 0000000..26f8464 --- /dev/null +++ b/legacyver/legacypacket/emote_packet.go @@ -0,0 +1,49 @@ +package legacypacket + +import ( + "github.com/akmalfairuz/legacy-version/legacyver/proto" + "github.com/sandertv/gophertunnel/minecraft/protocol" + "github.com/sandertv/gophertunnel/minecraft/protocol/packet" +) + +const ( + EmoteFlagServerSide = 1 << iota + EmoteFlagMuteChat +) + +// Emote is sent by both the server and the client. When the client sends an emote, it sends this packet to +// the server, after which the server will broadcast the packet to other players online. +type Emote struct { + // EntityRuntimeID is the entity that sent the emote. When a player sends this packet, it has this field + // set as its own entity runtime ID. + EntityRuntimeID uint64 + // EmoteLength is the number of ticks that the emote lasts for. + EmoteLength uint32 + // EmoteID is the ID of the emote to send. + EmoteID string + // XUID is the Xbox User ID of the player that sent the emote. It is only set when the emote is used by a player that + // is authenticated with Xbox Live. + XUID string + // PlatformID is an identifier only set for particular platforms when using an emote (presumably only for Nintendo + // Switch). It is otherwise an empty string, and is used to decide which players are able to emote with each other. + PlatformID string + // Flags is a combination of flags that change the way the Emote packet operates. When the server sends + // this packet to other players, EmoteFlagServerSide must be present. + Flags byte +} + +// ID ... +func (*Emote) ID() uint32 { + return packet.IDEmote +} + +func (pk *Emote) Marshal(io protocol.IO) { + io.Varuint64(&pk.EntityRuntimeID) + io.String(&pk.EmoteID) + if proto.IsProtoGTE(io, proto.ID729) { + io.Varuint32(&pk.EmoteLength) + } + io.String(&pk.XUID) + io.String(&pk.PlatformID) + io.Uint8(&pk.Flags) +} diff --git a/legacyver/legacypacket/inventory_content.go b/legacyver/legacypacket/inventory_content.go index 653ea4a..5bc8330 100644 --- a/legacyver/legacypacket/inventory_content.go +++ b/legacyver/legacypacket/inventory_content.go @@ -17,7 +17,7 @@ type InventoryContent struct { // the inventory window updated. Content []protocol.ItemInstance // Container is the protocol.FullContainerName that describes the container that the content is for. - Container protocol.FullContainerName + Container proto.FullContainerName // DynamicContainerSize ... DynamicContainerSize uint32 // StorageItem is the item that is acting as the storage container for the inventory. If the inventory is @@ -34,7 +34,9 @@ func (*InventoryContent) ID() uint32 { func (pk *InventoryContent) Marshal(io protocol.IO) { io.Varuint32(&pk.WindowID) protocol.FuncSlice(io, &pk.Content, io.ItemInstance) - protocol.Single(io, &pk.Container) + if proto.IsProtoGTE(io, proto.ID729) { + protocol.Single(io, &pk.Container) + } if proto.IsProtoGTE(io, proto.ID748) { io.ItemInstance(&pk.StorageItem) } else { diff --git a/legacyver/legacypacket/inventory_slot.go b/legacyver/legacypacket/inventory_slot.go index f6d9018..531b1d9 100644 --- a/legacyver/legacypacket/inventory_slot.go +++ b/legacyver/legacypacket/inventory_slot.go @@ -17,7 +17,7 @@ type InventorySlot struct { // index. Slot uint32 // Container is the protocol.FullContainerName that describes the container that the content is for. - Container protocol.FullContainerName + Container proto.FullContainerName // DynamicContainerSize ... DynamicContainerSize uint32 // StorageItem is the item that is acting as the storage container for the inventory. If the inventory is @@ -37,7 +37,9 @@ func (*InventorySlot) ID() uint32 { func (pk *InventorySlot) Marshal(io protocol.IO) { io.Varuint32(&pk.WindowID) io.Varuint32(&pk.Slot) - protocol.Single(io, &pk.Container) + if proto.IsProtoGTE(io, proto.ID729) { + protocol.Single(io, &pk.Container) + } if proto.IsProtoGTE(io, proto.ID748) { io.ItemInstance(&pk.StorageItem) } else { diff --git a/legacyver/legacypacket/resource_packs_info.go b/legacyver/legacypacket/resource_packs_info.go index 79ee1c0..d23b62f 100644 --- a/legacyver/legacypacket/resource_packs_info.go +++ b/legacyver/legacypacket/resource_packs_info.go @@ -27,6 +27,10 @@ type ResourcePacksInfo struct { // WorldTemplateVersion is the version of the world template that has been used to generate the world. If // the world was not generated from a template, this field is empty. WorldTemplateVersion string + // ForcingServerPacks ... + ForcingServerPacks bool + // BehaviourPacks ... + BehaviourPacks []proto.BehaviourPackInfo // TexturePacks is a list of texture packs that the client needs to download before joining the server. // The order of these texture packs is not relevant in this packet. It is however important in the // ResourcePackStack packet. @@ -49,6 +53,12 @@ func (pk *ResourcePacksInfo) Marshal(io protocol.IO) { io.UUID(&pk.WorldTemplateUUID) io.String(&pk.WorldTemplateVersion) } + if proto.IsProtoLT(io, proto.ID729) { + io.Bool(&pk.ForcingServerPacks) + protocol.SliceUint16Length(io, &pk.BehaviourPacks) + } else { + proto.EmptySlice(io, &pk.BehaviourPacks) + } protocol.SliceUint16Length(io, &pk.TexturePacks) if proto.IsProtoLT(io, proto.ID748) { protocol.Slice(io, &pk.PackURLs) diff --git a/legacyver/legacypacket/transfer.go b/legacyver/legacypacket/transfer.go new file mode 100644 index 0000000..12170ac --- /dev/null +++ b/legacyver/legacypacket/transfer.go @@ -0,0 +1,31 @@ +package legacypacket + +import ( + "github.com/akmalfairuz/legacy-version/legacyver/proto" + "github.com/sandertv/gophertunnel/minecraft/protocol" + "github.com/sandertv/gophertunnel/minecraft/protocol/packet" +) + +// Transfer is sent by the server to transfer a player from the current server to another. Doing so will +// fully disconnect the client, bring it back to the main menu and make it connect to the next server. +type Transfer struct { + // Address is the address of the new server, which might be either a hostname or an actual IP address. + Address string + // Port is the UDP port of the new server. + Port uint16 + // ReloadWorld currently has an unknown usage. + ReloadWorld bool +} + +// ID ... +func (*Transfer) ID() uint32 { + return packet.IDTransfer +} + +func (pk *Transfer) Marshal(io protocol.IO) { + io.String(&pk.Address) + io.Uint16(&pk.Port) + if proto.IsProtoGTE(io, proto.ID729) { + io.Bool(&pk.ReloadWorld) + } +} diff --git a/legacyver/legacypacket/update_attributes.go b/legacyver/legacypacket/update_attributes.go new file mode 100644 index 0000000..1892c46 --- /dev/null +++ b/legacyver/legacypacket/update_attributes.go @@ -0,0 +1,32 @@ +package legacypacket + +import ( + "github.com/akmalfairuz/legacy-version/legacyver/proto" + "github.com/sandertv/gophertunnel/minecraft/protocol" + "github.com/sandertv/gophertunnel/minecraft/protocol/packet" +) + +// UpdateAttributes is sent by the server to update an amount of attributes of any entity in the world. These +// attributes include ones such as the health or the movement speed of the entity. +type UpdateAttributes struct { + // EntityRuntimeID is the runtime ID of the entity. The runtime ID is unique for each world session, and + // entities are generally identified in packets using this runtime ID. + EntityRuntimeID uint64 + // Attributes is a slice of new attributes that the entity gets. It includes attributes such as its + // health, movement speed, etc. Note that only changed attributes have to be sent in this packet. It is + // not required to send attributes that did not have their values changed. + Attributes []proto.Attribute + // Tick is the server tick at which the packet was sent. It is used in relation to CorrectPlayerMovePrediction. + Tick uint64 +} + +// ID ... +func (*UpdateAttributes) ID() uint32 { + return packet.IDUpdateAttributes +} + +func (pk *UpdateAttributes) Marshal(io protocol.IO) { + io.Varuint64(&pk.EntityRuntimeID) + protocol.Slice(io, &pk.Attributes) + io.Varuint64(&pk.Tick) +} diff --git a/legacyver/proto/attribute.go b/legacyver/proto/attribute.go new file mode 100644 index 0000000..2bc7ea9 --- /dev/null +++ b/legacyver/proto/attribute.go @@ -0,0 +1,58 @@ +package proto + +import "github.com/sandertv/gophertunnel/minecraft/protocol" + +// Attribute is an entity attribute, that holds specific data such as the health of the entity. Each attribute +// holds a default value, maximum and minimum value, name and its current value. +type Attribute struct { + protocol.AttributeValue + // DefaultMin is the default minimum value of the attribute. It's not clear why this field must be sent to + // the client, but it is required regardless. + DefaultMin float32 + // DefaultMax is the default maximum value of the attribute. It's not clear why this field must be sent to + // the client, but it is required regardless. + DefaultMax float32 + // Default is the default value of the attribute. It's not clear why this field must be sent to the + // client, but it is required regardless. + Default float32 + // Modifiers is a slice of AttributeModifiers that are applied to the attribute. + Modifiers []protocol.AttributeModifier +} + +func (x *Attribute) FromLatest(v protocol.Attribute) Attribute { + x.AttributeValue = v.AttributeValue + x.DefaultMin = v.DefaultMin + x.DefaultMax = v.DefaultMax + x.Default = v.Default + x.Modifiers = v.Modifiers + return *x +} + +func (x *Attribute) ToLatest() protocol.Attribute { + return protocol.Attribute{ + AttributeValue: protocol.AttributeValue{ + Name: x.Name, + Value: x.Value, + Max: x.Max, + Min: x.Min, + }, + DefaultMin: x.DefaultMin, + DefaultMax: x.DefaultMax, + Default: x.Default, + Modifiers: x.Modifiers, + } +} + +// Marshal encodes/decodes an Attribute. +func (x *Attribute) Marshal(r protocol.IO) { + r.Float32(&x.Min) + r.Float32(&x.Max) + r.Float32(&x.Value) + if IsProtoGTE(r, ID729) { + r.Float32(&x.DefaultMin) + r.Float32(&x.DefaultMax) + } + r.Float32(&x.Default) + r.String(&x.Name) + protocol.Slice(r, &x.Modifiers) +} diff --git a/legacyver/proto/camera.go b/legacyver/proto/camera.go index ef68260..0eec059 100644 --- a/legacyver/proto/camera.go +++ b/legacyver/proto/camera.go @@ -53,7 +53,7 @@ type CameraPreset struct { AimAssist protocol.Optional[protocol.CameraPresetAimAssist] } -func (x *CameraPreset) FromLatest(cp protocol.CameraPreset) { +func (x *CameraPreset) FromLatest(cp protocol.CameraPreset) CameraPreset { x.Name = cp.Name x.Parent = cp.Parent x.PosX = cp.PosX @@ -74,6 +74,7 @@ func (x *CameraPreset) FromLatest(cp protocol.CameraPreset) { x.PlayerEffects = cp.PlayerEffects x.AlignTargetAndCameraForward = cp.AlignTargetAndCameraForward x.AimAssist = cp.AimAssist + return *x } func (x *CameraPreset) ToLatest() protocol.CameraPreset { @@ -110,8 +111,10 @@ func (x *CameraPreset) Marshal(r protocol.IO) { protocol.OptionalFunc(r, &x.PosZ, r.Float32) protocol.OptionalFunc(r, &x.RotX, r.Float32) protocol.OptionalFunc(r, &x.RotY, r.Float32) - protocol.OptionalFunc(r, &x.RotationSpeed, r.Float32) - protocol.OptionalFunc(r, &x.SnapToTarget, r.Bool) + if IsProtoGTE(r, ID729) { + protocol.OptionalFunc(r, &x.RotationSpeed, r.Float32) + protocol.OptionalFunc(r, &x.SnapToTarget, r.Bool) + } if IsProtoGTE(r, ID748) { protocol.OptionalFunc(r, &x.HorizontalRotationLimit, r.Vec2) protocol.OptionalFunc(r, &x.VerticalRotationLimit, r.Vec2) @@ -121,7 +124,9 @@ func (x *CameraPreset) Marshal(r protocol.IO) { protocol.OptionalFunc(r, &x.TrackingRadius, r.Float32) } protocol.OptionalFunc(r, &x.ViewOffset, r.Vec2) - protocol.OptionalFunc(r, &x.EntityOffset, r.Vec3) + if IsProtoGTE(r, ID729) { + protocol.OptionalFunc(r, &x.EntityOffset, r.Vec3) + } protocol.OptionalFunc(r, &x.Radius, r.Float32) protocol.OptionalFunc(r, &x.AudioListener, r.Uint8) protocol.OptionalFunc(r, &x.PlayerEffects, r.Bool) diff --git a/legacyver/proto/container.go b/legacyver/proto/container.go new file mode 100644 index 0000000..87f88ba --- /dev/null +++ b/legacyver/proto/container.go @@ -0,0 +1,38 @@ +package proto + +import "github.com/sandertv/gophertunnel/minecraft/protocol" + +// FullContainerName contains information required to identify a container in a StackRequestSlotInfo. +type FullContainerName struct { + // ContainerID is the ID of the container that the slot was in. + ContainerID byte + // DynamicContainerID is the ID of the container if it is dynamic. If the container is not dynamic, this + // field should be left empty. A non-optional value of 0 is assumed to be non-empty. + DynamicContainerID protocol.Optional[uint32] +} + +func (x *FullContainerName) FromLatest(v protocol.FullContainerName) FullContainerName { + x.ContainerID = v.ContainerID + x.DynamicContainerID = v.DynamicContainerID + return *x +} + +func (x *FullContainerName) ToLatest() protocol.FullContainerName { + return protocol.FullContainerName{ + ContainerID: x.ContainerID, + DynamicContainerID: x.DynamicContainerID, + } +} + +func (x *FullContainerName) Marshal(r protocol.IO) { + r.Uint8(&x.ContainerID) + if IsProtoGTE(r, ID729) { + protocol.OptionalFunc(r, &x.DynamicContainerID, r.Uint32) + } else { + dynamicContainerID, _ := x.DynamicContainerID.Value() + r.Uint32(&dynamicContainerID) + if dynamicContainerID != 0 { + x.DynamicContainerID = protocol.Option(dynamicContainerID) + } + } +} diff --git a/legacyver/proto/id.go b/legacyver/proto/id.go index ebdb140..c44a0c3 100644 --- a/legacyver/proto/id.go +++ b/legacyver/proto/id.go @@ -3,12 +3,12 @@ package proto import "github.com/sandertv/gophertunnel/minecraft/protocol" const ( - ID766 = 766 - ID748 = 748 - ID729 = 729 - ID712 = 712 - ID686 = 686 - ID685 = 685 + ID766 = 766 // v1.21.50 + ID748 = 748 // v1.21.40 + ID729 = 729 // v1.21.30 + ID712 = 712 // v1.21.20 + ID686 = 686 // v1.21.2 + ID685 = 685 // v1.21.0 ) func IsProtoGTE(io protocol.IO, proto int32) bool { diff --git a/legacyver/proto/item_stack.go b/legacyver/proto/item_stack.go index 0f1b294..08d750a 100644 --- a/legacyver/proto/item_stack.go +++ b/legacyver/proto/item_stack.go @@ -226,6 +226,32 @@ type ItemStackResponse struct { ContainerInfo []StackResponseContainerInfo } +func (x *ItemStackResponse) FromLatest(y protocol.ItemStackResponse) ItemStackResponse { + ret := ItemStackResponse{ + Status: y.Status, + RequestID: y.RequestID, + ContainerInfo: make([]StackResponseContainerInfo, len(y.ContainerInfo)), + } + for i, v := range y.ContainerInfo { + ret.ContainerInfo[i] = StackResponseContainerInfo{ + Container: (&FullContainerName{}).FromLatest(v.Container), + SlotInfo: make([]StackResponseSlotInfo, len(v.SlotInfo)), + } + for j, w := range v.SlotInfo { + ret.ContainerInfo[i].SlotInfo[j] = StackResponseSlotInfo{ + Slot: w.Slot, + HotbarSlot: w.HotbarSlot, + Count: w.Count, + StackNetworkID: w.StackNetworkID, + CustomName: w.CustomName, + FilteredCustomName: w.FilteredCustomName, + DurabilityCorrection: w.DurabilityCorrection, + } + } + } + return ret +} + func (x *ItemStackResponse) ToLatest() protocol.ItemStackResponse { ret := protocol.ItemStackResponse{ Status: x.Status, @@ -234,7 +260,7 @@ func (x *ItemStackResponse) ToLatest() protocol.ItemStackResponse { } for i, v := range x.ContainerInfo { ret.ContainerInfo[i] = protocol.StackResponseContainerInfo{ - Container: v.Container, + Container: v.Container.ToLatest(), SlotInfo: make([]protocol.StackResponseSlotInfo, len(v.SlotInfo)), } for j, w := range v.SlotInfo { @@ -266,7 +292,7 @@ type StackResponseContainerInfo struct { // Container is the FullContainerName that describes the container that the slots that follow are in. For // the main inventory, the ContainerID seems to be 0x1b. Fur the cursor, this value seems to be 0x3a. For // the crafting grid, this value seems to be 0x0d. - Container protocol.FullContainerName + Container FullContainerName // SlotInfo holds information on what item stack should be present in specific slots in the container. SlotInfo []StackResponseSlotInfo } @@ -635,7 +661,7 @@ func (a *CraftResultsDeprecatedStackRequestAction) Marshal(r protocol.IO) { // StackRequestSlotInfo holds information on a specific slot client-side. type StackRequestSlotInfo struct { // Container is the FullContainerName that describes the container that the slot is in. - Container protocol.FullContainerName + Container FullContainerName // Slot is the index of the slot within the container with the ContainerID above. Slot byte // StackNetworkID is the unique stack ID that the client assumes to be present in this slot. The server diff --git a/legacyver/proto/resource_pack.go b/legacyver/proto/resource_pack.go index 10ae932..a0b4b7c 100644 --- a/legacyver/proto/resource_pack.go +++ b/legacyver/proto/resource_pack.go @@ -38,6 +38,20 @@ type TexturePackInfo struct { DownloadURL string } +func (x *TexturePackInfo) FromLatest(y protocol.TexturePackInfo) TexturePackInfo { + x.UUID = y.UUID + x.Version = y.Version + x.Size = y.Size + x.ContentKey = y.ContentKey + x.SubPackName = y.SubPackName + x.ContentIdentity = y.ContentIdentity + x.HasScripts = y.HasScripts + x.AddonPack = y.AddonPack + x.RTXEnabled = y.RTXEnabled + x.DownloadURL = y.DownloadURL + return *x +} + func (x *TexturePackInfo) ToLatest() protocol.TexturePackInfo { return protocol.TexturePackInfo{ UUID: x.UUID, @@ -79,3 +93,42 @@ func (x *TexturePackInfo) Marshal(r protocol.IO) { r.String(&x.DownloadURL) } } + +// BehaviourPackInfo represents a behaviour pack's info sent over network. It holds information about the +// behaviour pack such as its name, description and version. +type BehaviourPackInfo struct { + // UUID is the UUID of the behaviour pack. Each behaviour pack downloaded must have a different UUID in + // order for the client to be able to handle them properly. + UUID string + // Version is the version of the behaviour pack. The client will cache behaviour packs sent by the server as + // long as they carry the same version. Sending a behaviour pack with a different version than previously + // will force the client to re-download it. + Version string + // Size is the total size in bytes that the behaviour pack occupies. This is the size of the compressed + // archive (zip) of the behaviour pack. + Size uint64 + // ContentKey is the key used to decrypt the behaviour pack if it is encrypted. This is generally the case + // for marketplace behaviour packs. + ContentKey string + // SubPackName ... + SubPackName string + // ContentIdentity ... + ContentIdentity string + // HasScripts specifies if the behaviour packs has any scripts in it. A client will only download the + // behaviour pack if it supports scripts, which, up to 1.11, only includes Windows 10. + HasScripts bool + // AddonPack specifies if the texture pack is from an addon. + AddonPack bool +} + +// Marshal encodes/decodes a BehaviourPackInfo. +func (x *BehaviourPackInfo) Marshal(r protocol.IO) { + r.String(&x.UUID) + r.String(&x.Version) + r.Uint64(&x.Size) + r.String(&x.ContentKey) + r.String(&x.SubPackName) + r.String(&x.ContentIdentity) + r.Bool(&x.HasScripts) + r.Bool(&x.AddonPack) +} diff --git a/legacyver/protocol.go b/legacyver/protocol.go index 17dd9ad..876d9e5 100644 --- a/legacyver/protocol.go +++ b/legacyver/protocol.go @@ -28,6 +28,10 @@ func convertPacketFunc(pid uint32, cur func() packet.Packet) func() packet.Packe return func() packet.Packet { return &legacypacket.CameraAimAssist{} } case packet.IDCameraPresets: return func() packet.Packet { return &legacypacket.CameraPresets{} } + case packet.IDContainerRegistryCleanup: + return func() packet.Packet { return &legacypacket.ContainerRegistryCleanup{} } + case packet.IDEmote: + return func() packet.Packet { return &legacypacket.Emote{} } case packet.IDInventoryContent: return func() packet.Packet { return &legacypacket.InventoryContent{} } case packet.IDInventorySlot: @@ -40,6 +44,10 @@ func convertPacketFunc(pid uint32, cur func() packet.Packet) func() packet.Packe return func() packet.Packet { return &legacypacket.PlayerAuthInput{} } case packet.IDResourcePacksInfo: return func() packet.Packet { return &legacypacket.ResourcePacksInfo{} } + case packet.IDTransfer: + return func() packet.Packet { return &legacypacket.Transfer{} } + case packet.IDUpdateAttributes: + return func() packet.Packet { return &legacypacket.UpdateAttributes{} } default: return cur } @@ -94,7 +102,7 @@ func (p *Protocol) downgradePackets(pks []packet.Packet, conn *minecraft.Conn) [ case *packet.CameraPresets: presets := make([]proto.CameraPreset, len(pk.Presets)) for i, p := range pk.Presets { - presets[i].FromLatest(p) + presets[i] = (&proto.CameraPreset{}).FromLatest(p) } pks[pkIndex] = &legacypacket.CameraPresets{ Presets: presets, @@ -133,49 +141,14 @@ func (p *Protocol) downgradePackets(pks []packet.Packet, conn *minecraft.Conn) [ case *packet.ItemStackResponse: responses := make([]proto.ItemStackResponse, len(pk.Responses)) for i, r := range pk.Responses { - containerInfo := make([]proto.StackResponseContainerInfo, len(r.ContainerInfo)) - for j, c := range r.ContainerInfo { - slotInfo := make([]proto.StackResponseSlotInfo, len(c.SlotInfo)) - for k, s := range c.SlotInfo { - slotInfo[k] = proto.StackResponseSlotInfo{ - Slot: s.Slot, - HotbarSlot: s.HotbarSlot, - Count: s.Count, - StackNetworkID: s.StackNetworkID, - CustomName: s.CustomName, - FilteredCustomName: s.FilteredCustomName, - DurabilityCorrection: s.DurabilityCorrection, - } - } - containerInfo[j] = proto.StackResponseContainerInfo{ - Container: c.Container, - SlotInfo: slotInfo, - } - } - - responses[i] = proto.ItemStackResponse{ - Status: r.Status, - RequestID: r.RequestID, - ContainerInfo: containerInfo, - } + responses[i] = (&proto.ItemStackResponse{}).FromLatest(r) } pks[pkIndex] = &legacypacket.ItemStackResponse{Responses: responses} case *packet.ResourcePacksInfo: texturePacks := make([]proto.TexturePackInfo, len(pk.TexturePacks)) packURLs := make([]protocol.PackURL, 0) for i, t := range pk.TexturePacks { - texturePacks[i] = proto.TexturePackInfo{ - UUID: t.UUID, - Version: t.Version, - Size: t.Size, - ContentKey: t.ContentKey, - SubPackName: t.SubPackName, - ContentIdentity: t.ContentIdentity, - HasScripts: t.HasScripts, - AddonPack: t.AddonPack, - RTXEnabled: t.RTXEnabled, - DownloadURL: t.DownloadURL, - } + texturePacks[i] = (&proto.TexturePackInfo{}).FromLatest(t) if t.DownloadURL != "" { packURLs = append(packURLs, protocol.PackURL{ UUIDVersion: t.UUID.String() + "_" + t.Version, @@ -196,7 +169,7 @@ func (p *Protocol) downgradePackets(pks []packet.Packet, conn *minecraft.Conn) [ pks[pkIndex] = &legacypacket.InventorySlot{ WindowID: pk.WindowID, Slot: pk.Slot, - Container: pk.Container, + Container: (&proto.FullContainerName{}).FromLatest(pk.Container), DynamicContainerSize: 0, StorageItem: pk.StorageItem, NewItem: pk.NewItem, @@ -205,7 +178,7 @@ func (p *Protocol) downgradePackets(pks []packet.Packet, conn *minecraft.Conn) [ pks[pkIndex] = &legacypacket.InventoryContent{ WindowID: pk.WindowID, Content: pk.Content, - Container: pk.Container, + Container: (&proto.FullContainerName{}).FromLatest(pk.Container), DynamicContainerSize: 0, StorageItem: pk.StorageItem, } @@ -227,6 +200,39 @@ func (p *Protocol) downgradePackets(pks []packet.Packet, conn *minecraft.Conn) [ TargetMode: pk.TargetMode, Action: pk.Action, } + case *packet.UpdateAttributes: + attributes := make([]proto.Attribute, len(pk.Attributes)) + for i, a := range pk.Attributes { + attributes[i] = (&proto.Attribute{}).FromLatest(a) + } + pks[pkIndex] = &legacypacket.UpdateAttributes{ + EntityRuntimeID: pk.EntityRuntimeID, + Attributes: attributes, + Tick: pk.Tick, + } + case *packet.ContainerRegistryCleanup: + removedContainers := make([]proto.FullContainerName, len(pk.RemovedContainers)) + for i, c := range pk.RemovedContainers { + removedContainers[i] = (&proto.FullContainerName{}).FromLatest(c) + } + pks[pkIndex] = &legacypacket.ContainerRegistryCleanup{ + RemovedContainers: removedContainers, + } + case *packet.Emote: + pks[pkIndex] = &legacypacket.Emote{ + EntityRuntimeID: pk.EntityRuntimeID, + EmoteLength: pk.EmoteLength, + EmoteID: pk.EmoteID, + XUID: pk.XUID, + PlatformID: pk.PlatformID, + Flags: pk.Flags, + } + case *packet.Transfer: + pks[pkIndex] = &legacypacket.Transfer{ + Address: pk.Address, + Port: pk.Port, + ReloadWorld: pk.ReloadWorld, + } } } @@ -304,7 +310,7 @@ func (p *Protocol) upgradePackets(pks []packet.Packet, conn *minecraft.Conn) []p pks[pkIndex] = &packet.InventorySlot{ WindowID: pk.WindowID, Slot: pk.Slot, - Container: pk.Container, + Container: pk.Container.ToLatest(), StorageItem: pk.StorageItem, NewItem: pk.NewItem, } @@ -312,7 +318,7 @@ func (p *Protocol) upgradePackets(pks []packet.Packet, conn *minecraft.Conn) []p pks[pkIndex] = &packet.InventoryContent{ WindowID: pk.WindowID, Content: pk.Content, - Container: pk.Container, + Container: pk.Container.ToLatest(), StorageItem: pk.StorageItem, } case *legacypacket.MobEffect: @@ -333,6 +339,39 @@ func (p *Protocol) upgradePackets(pks []packet.Packet, conn *minecraft.Conn) []p TargetMode: pk.TargetMode, Action: pk.Action, } + case *legacypacket.UpdateAttributes: + attributes := make([]protocol.Attribute, len(pk.Attributes)) + for i, a := range pk.Attributes { + attributes[i] = a.ToLatest() + } + pks[pkIndex] = &packet.UpdateAttributes{ + EntityRuntimeID: pk.EntityRuntimeID, + Attributes: attributes, + Tick: pk.Tick, + } + case *legacypacket.ContainerRegistryCleanup: + removedContainers := make([]protocol.FullContainerName, len(pk.RemovedContainers)) + for i, c := range pk.RemovedContainers { + removedContainers[i] = c.ToLatest() + } + pks[pkIndex] = &packet.ContainerRegistryCleanup{ + RemovedContainers: removedContainers, + } + case *legacypacket.Emote: + pks[pkIndex] = &packet.Emote{ + EntityRuntimeID: pk.EntityRuntimeID, + EmoteLength: pk.EmoteLength, + EmoteID: pk.EmoteID, + XUID: pk.XUID, + PlatformID: pk.PlatformID, + Flags: pk.Flags, + } + case *legacypacket.Transfer: + pks[pkIndex] = &packet.Transfer{ + Address: pk.Address, + Port: pk.Port, + ReloadWorld: pk.ReloadWorld, + } } } return pks diff --git a/legacyver/v712.go b/legacyver/v712.go new file mode 100644 index 0000000..2aa1cc6 --- /dev/null +++ b/legacyver/v712.go @@ -0,0 +1,36 @@ +package legacyver + +import ( + _ "embed" + "github.com/akmalfairuz/legacy-version/internal/chunk" + "github.com/akmalfairuz/legacy-version/legacyver/proto" + "github.com/akmalfairuz/legacy-version/mapping" +) + +const ( + // ItemVersion712 ... + ItemVersion712 = 201 + // BlockVersion712 ... + BlockVersion712 int32 = (1 << 24) | (21 << 16) | (20 << 8) +) + +var ( + //go:embed data/item_runtime_ids_712.nbt + itemRuntimeIDData712 []byte + //go:embed data/required_item_list_712.json + requiredItemList712 []byte + //go:embed data/block_states_712.nbt + blockStateData712 []byte +) + +func New712(direct bool) *Protocol { + itemMapping := mapping.NewItemMapping(itemRuntimeIDData712, requiredItemList712, ItemVersion712, false) + blockMapping := mapping.NewBlockMapping(blockStateData712) + + return &Protocol{ + ver: "1.21.20", + id: proto.ID712, + blockTranslator: NewBlockTranslator(blockMapping, latestBlockMapping, chunk.NewNetworkPersistentEncoding(blockMapping, BlockVersion712), chunk.NewBlockPaletteEncoding(blockMapping, BlockVersion712), false), + itemTranslator: NewItemTranslator(itemMapping, itemMappingLatest, blockMapping, blockMappingLatest), + } +}