-
Bug
-
Resolution: Fixed
-
1.21.40.21 Preview, 1.21.40.20 Preview, 1.21.21 Hotfix, 1.21.30.25 Preview, 1.21.22 Hotfix, 1.21.30
-
Confirmed
-
Multiple
-
1291639
A "format_version" field was introduced in 1.21.20 for the blocks.json file. This controls how IDs which were flattened, but remained IDs for a single block, are treated. For example, sponge no longer controls wet_sponge as of format_version 1.21.30.
Two blocks still do not work correctly: dirt and its flattened ID, coarse_dirt. In addition, sandstone and red_sandstone only work when the entries are in a specific order.
For example, the following configuration (from the attached sample pack) should cause dirt and coarse_dirt to do different things:
Dirt: Random texture rotation, sculk sounds
Coarse Dirt: No rotation, bamboo sounds
This does not have the intended result in-game. Coarse dirt still rotates and makes sculk sounds:
Blocks which were flattened and retained their original ID as a single ID can be affected by this problem, but only some IDs are affected. Here is a table:
Original ID | Flattened IDs | Flattened IDs Apply Separate Properties |
---|---|---|
dirt | dirt coarse_dirt |
❌(Never works when both IDs are present, regardless of ID order in blocks.json.) |
stone | stone andesite polished_andesite granite polished_granite diorite polished_diorite |
✅ |
prismarine | prismarine prismarine_bricks dark_prismarine |
✅ |
quartz_block | quartz_block chiseled_quartz_block quartz_pillar smooth_quartz |
✅ |
sponge | sponge wet_sponge |
✅ |
anvil | anvil chipped_anvil damaged_anvil deprecated_anvil |
✅ |
purpur_block | purpur_block purpur_pillar deprecated_purpur_block_1 deprecated_purpur_block_2 |
✅ |
sand | sand red_sand |
✅ |
sandstone | sandstone chiseled_sandstone cut_sandstone smooth_sandstone |
❌ (Only works if new ID is placed after original ID in blocks.json. The opposite order fails.) |
red_sandstone | red_sandstone chiseled_red_sandstone cut_red_sandstone smooth_red_sandstone |
❌ (Only works if new ID is placed after original ID in blocks.json. The opposite order fails.) |
cobblestone_wall | cobblestone_wall mossy_cobblestone_wall granite_wall diorite_wall andesite_wall sandstone_wall brick_wall stone_brick_wall mossy_stone_brick_wall nether_brick_wall end_stone_brick_wall prismarine_wall red_sandstone_wall red_nether_brick_wall |
✅ |
Expected Result
When blocks.json format_version is set to 1.21.20 or higher, properties assigned to dirt in will NOT be applied to coarse_dirt, which is a separate block ID as of 1.21.20. Sandstone IDs should do this as well.
Observed Result
In blocks.json with 1.21.20+ format_versions, coarse_dirt properties are still overwritten by dirt, making it impossible to modify properties of both blocks at the same time. sandstone and red_sandstone IDs overwrite properties set earlier in the file for all sandstone variants.