New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[1.20.6] Unify tag namespace and conventions between all loaders #9955
base: 1.20.x
Are you sure you want to change the base?
Conversation
Format the Tags class nicely and make a copy of it for comparison, to help avoid accidentally removing Forge-specific tags and make it easier to keep track of what needs doing.
Ok, so we should also specify just how much we're willing to break for the sake of this PR. |
Apologies for the confusion - OldTags is a temporary backup file I made to make it easier to keep track of what's left to do with the PR. It will be removed once I'm finished. There are some breaking changes such as removals of some Forge tags, however I intend on doing a pass through everything once finished to figure out how to maintain more back-compat. A decent chunk of the actual tags do maintain back-compat through the "optional" method calls in the bottom of the providers. |
In that case, it might be wise to consider a |
Overall it looks fine, would be nice if the people pushing for this central system would have a central repo somewhere where we can see it's changes over time. Which would make things easier to maintain compatibility. But until then,
If it makes modders lives easier without being complicated as hell. Feel free.
Always generate, |
This PR implements support for the common tags spec that has been implemented by other loaders, aiding multiplatform mod devs and datapack authors.
A (hopefully) comprehensive list of tag changes
Click a category to expand it. Roughly 176 additions, 108 removals and 218 renames/namespace moves.
Blocks
forge:barrels
->c:barrels
forge:barrels/wooden
->c:barrels/wooden
forge:bookshelves
->c:bookshelves
N/A
->c:budding_blocks
(N/A
->c:buds
(N/A
->c:chains
(N/A
->c:clusters
(forge:chests
->c:chests
forge:chests/ender
->c:chests/ender
forge:chests/trapped
->c:chests/trapped
forge:chests/wooden
->c:chests/wooden
forge:cobblestone
->c:cobblestones
forge:cobblestone/normal
->c:cobblestones/normal
forge:cobblestone/infested
->c:cobblestones/infested
forge:cobblestone/mossy
->c:cobblestones/mossy
forge:cobblestone/deepslate
->c:cobblestones/deepslate
N/A
->c:dyed
(N/A
->c:dyed/black
(N/A
->c:dyed/blue
(N/A
->c:dyed/brown
(N/A
->c:dyed/cyan
(N/A
->c:dyed/gray
(N/A
->c:dyed/green
(N/A
->c:dyed/light_blue
(N/A
->c:dyed/light_gray
(N/A
->c:dyed/lime
(N/A
->c:dyed/magenta
(N/A
->c:dyed/orange
(N/A
->c:dyed/pink
(N/A
->c:dyed/purple
(N/A
->c:dyed/red
(N/A
->c:dyed/white
(N/A
->c:dyed/yellow
(forge:end_stones
->c:end_stones
forge:fence_gates
->c:fence_gates
forge:fence_gates/wooden
->c:fence_gates/wooden
forge:fences
->c:fences
forge:fences/nether_brick
->c:fences/nether_brick
forge:fences/wooden
->c:fences/wooden
forge:glass
->N/A
(forge:glass/black
->N/A
(forge:glass/blue
->N/A
(forge:glass/brown
->N/A
(forge:glass/colorless
->N/A
(forge:glass/cyan
->N/A
(forge:glass/gray
->N/A
(forge:glass/green
->N/A
(forge:glass/light_blue
->N/A
(forge:glass/light_gray
->N/A
(forge:glass/lime
->N/A
(forge:glass/magenta
->N/A
(forge:glass/orange
->N/A
(forge:glass/pink
->N/A
(forge:glass/purple
->N/A
(forge:glass/red
->N/A
(forge:glass/silica
->N/A
(forge:glass/tinted
->N/A
(forge:glass/white
->N/A
(forge:glass/yellow
->N/A
(N/A
->c:glass_blocks
(N/A
->c:glass_blocks/colorless
(N/A
->c:glass_blocks/cheap
(N/A
->c:glass_blocks/tinted
(forge:glass_panes
->c:glass_panes
forge:glass_panes/colorless
->c:glass_panes/colorless
forge:glass_panes/black
->N/A
(forge:glass_panes/blue
->N/A
(forge:glass_panes/brown
->N/A
(forge:glass_panes/cyan
->N/A
(forge:glass_panes/gray
->N/A
(forge:glass_panes/green
->N/A
(forge:glass_panes/light_blue
->N/A
(forge:glass_panes/light_gray
->N/A
(forge:glass_panes/lime
->N/A
(forge:glass_panes/magenta
->N/A
(forge:glass_panes/orange
->N/A
(forge:glass_panes/pink
->N/A
(forge:glass_panes/purple
->N/A
(forge:glass_panes/red
->N/A
(forge:glass_panes/white
->N/A
(forge:glass_panes/yellow
->N/A
(forge:gravel
->c:gravels
forge:netherrack
->c:netherrack
forge:obsidian
->c:obsidians
forge:ore_bearing_ground/deepslate
->c:ore_bearing_ground/deepslate
forge:ore_bearing_ground/netherrack
->c:ore_bearing_ground/netherrack
forge:ore_bearing_ground/stone
->c:ore_bearing_ground/stone
forge:ore_rates/dense
->c:ore_rates/dense
forge:ore_rates/singular
->c:ore_rates/singular
forge:ore_rates/sparse
->c:ore_rates/sparse
forge:ores
->c:ores
forge:ores/coal
->c:ores/coal
forge:ores/copper
->c:ores/copper
forge:ores/diamond
->c:ores/diamond
forge:ores/emerald
->c:ores/emerald
forge:ores/gold
->c:ores/gold
forge:ores/iron
->c:ores/iron
forge:ores/lapis
->c:ores/lapis
forge:ores/netherite_scrap
->c:ores/netherite_scrap
forge:ores/quartz
->c:ores/quartz
forge:ores/redstone
->c:ores/redstone
forge:ores_in_ground/deepslate
->c:ores_in_ground/deepslate
forge:ores_in_ground/netherrack
->c:ores_in_ground/netherrack
forge:ores_in_ground/stone
->c:ores_in_ground/stone
N/A
->c:player_workstations/crafting_tables
(N/A
->c:player_workstations/furnaces
(N/A
->c:relocation_not_supported
(N/A
->c:ropes
(forge:sand
->c:sands
forge:sand/colorless
->c:sands/colorless
forge:sand/red
->c:sands/red
forge:sandstone
->N/A
(N/A
->c:sandstone/blocks
(N/A
->c:sandstone/slabs
(N/A
->c:sandstone/stairs
(N/A
->c:sandstone/red_blocks
(N/A
->c:sandstone/red_slabs
(N/A
->c:sandstone/red_stairs
(N/A
->c:sandstone/uncolored_blocks
(N/A
->c:sandstone/uncolored_slabs
(N/A
->c:sandstone/uncolored_stairs
(N/A
->c:skulls
(forge:stained_glass
->N/A
(forge:stained_glass_panes
->N/A
(forge:stone
->c:stones
forge:storage_blocks
->c:storage_blocks
forge:storage_blocks/amethyst
->N/A
(N/A
->c:storage_blocks/bone_meal
(forge:storage_blocks/coal
->c:storage_blocks/coal
forge:storage_blocks/copper
->c:storage_blocks/copper
forge:storage_blocks/diamond
->c:storage_blocks/diamond
N/A
->c:storage_blocks/dried_kelp
(forge:storage_blocks/emerald
->c:storage_blocks/emerald
forge:storage_blocks/gold
->c:storage_blocks/gold
forge:storage_blocks/iron
->c:storage_blocks/iron
forge:storage_blocks/lapis
->c:storage_blocks/lapis
forge:storage_blocks/netherite
->c:storage_blocks/netherite
forge:storage_blocks/quartz
->N/A
(forge:storage_blocks/raw_copper
->c:storage_blocks/raw_copper
forge:storage_blocks/raw_gold
->c:storage_blocks/raw_gold
forge:storage_blocks/raw_iron
->c:storage_blocks/raw_iron
forge:storage_blocks/redstone
->c:storage_blocks/redstone
N/A
->c:storage_blocks/slime
(N/A
->c:storage_blocks/wheat
(N/A
->c:villager_job_sites
(N/A
->c:hidden_from_recipe_viewers
(Entity types
forge:bosses
->c:bosses
N/A
->c:minecarts
(N/A
->c:boats
(N/A
->c:capturing_not_supported
(N/A
->c:teleporting_not_supported
(Items
forge:barrels
->c:barrels
forge:barrels/wooden
->c:barrels/wooden
forge:bones
->c:bones
forge:bookshelves
->c:bookshelves
N/A
->c:bricks
(N/A
->c:bricks/normal
(N/A
->c:bricks/nether
(N/A
->c:budding_blocks
(N/A
->c:buds
(N/A
->c:chains
(forge:chests
->c:chests
forge:chests/ender
->c:chests/ender
forge:chests/trapped
->c:chests/trapped
forge:chests/wooden
->c:chests/wooden
forge:cobblestone
->c:cobblestones
forge:cobblestone/normal
->c:cobblestones/normal
forge:cobblestone/infested
->c:cobblestones/infested
forge:cobblestone/mossy
->c:cobblestones/mossy
forge:cobblestone/deepslate
->c:cobblestones/deepslate
N/A
->c:clusters
(forge:crops
->c:crops
forge:crops/beetroot
->c:crops/beetroot
forge:crops/carrot
->c:crops/carrot
forge:crops/potato
->c:crops/potato
forge:crops/wheat
->c:crops/wheat
forge:dusts
->c:dusts
forge:dusts/prismarine
->N/A
(forge:dusts/redstone
->c:dusts/redstone
forge:dusts/glowstone
->c:dusts/glowstone
N/A
->c:dyed
(N/A
->c:dyed/black
(N/A
->c:dyed/blue
(N/A
->c:dyed/brown
(N/A
->c:dyed/cyan
(N/A
->c:dyed/gray
(N/A
->c:dyed/green
(N/A
->c:dyed/light_blue
(N/A
->c:dyed/light_gray
(N/A
->c:dyed/lime
(N/A
->c:dyed/magenta
(N/A
->c:dyed/orange
(N/A
->c:dyed/pink
(N/A
->c:dyed/purple
(N/A
->c:dyed/red
(N/A
->c:dyed/white
(N/A
->c:dyed/yellow
(forge:dyes
->c:dyes
forge:dyes/black
->c:dyes/black
forge:dyes/red
->c:dyes/red
forge:dyes/green
->c:dyes/green
forge:dyes/brown
->c:dyes/brown
forge:dyes/blue
->c:dyes/blue
forge:dyes/purple
->c:dyes/purple
forge:dyes/cyan
->c:dyes/cyan
forge:dyes/light_gray
->c:dyes/light_gray
forge:dyes/gray
->c:dyes/gray
forge:dyes/pink
->c:dyes/pink
forge:dyes/lime
->c:dyes/lime
forge:dyes/yellow
->c:dyes/yellow
forge:dyes/light_blue
->c:dyes/light_blue
forge:dyes/magenta
->c:dyes/magenta
forge:dyes/orange
->c:dyes/orange
forge:dyes/white
->c:dyes/white
forge:eggs
->c:eggs
forge:enchanting_fuels
->N/A
(forge:end_stones
->c:end_stones
forge:ender_pearls
->c:ender_pearls
forge:feathers
->c:feathers
forge:fence_gates
->c:fence_gates
forge:fence_gates/wooden
->c:fence_gates/wooden
forge:fences
->c:fences
forge:fences/nether_brick
->c:fences/nether_brick
forge:fences/wooden
->c:fences/wooden
N/A
->c:foods
(N/A
->c:foods/fruits
(N/A
->c:foods/vegetables
(N/A
->c:foods/berries
(N/A
->c:foods/breads
(N/A
->c:foods/cookies
(N/A
->c:foods/raw_meats
(N/A
->c:foods/cooked_meats
(N/A
->c:foods/raw_fishes
(N/A
->c:foods/cooked_fishes
(N/A
->c:foods/soups
(N/A
->c:foods/candies
(N/A
->c:foods/edible_when_placed
(N/A
->c:foods/food_poisoning
(forge:gems
->c:gems
forge:gems/diamond
->c:gems/diamond
forge:gems/emerald
->c:gems/emerald
forge:gems/amethyst
->c:gems/amethyst
forge:gems/lapis
->c:gems/lapis
forge:gems/prismarine
->c:gems/prismarine
forge:gems/quartz
->c:gems/quartz
forge:glass
->N/A
(forge:glass/black
->N/A
(forge:glass/blue
->N/A
(forge:glass/brown
->N/A
(forge:glass/colorless
->N/A
(forge:glass/cyan
->N/A
(forge:glass/gray
->N/A
(forge:glass/green
->N/A
(forge:glass/light_blue
->N/A
(forge:glass/light_gray
->N/A
(forge:glass/lime
->N/A
(forge:glass/magenta
->N/A
(forge:glass/orange
->N/A
(forge:glass/pink
->N/A
(forge:glass/purple
->N/A
(forge:glass/red
->N/A
(forge:glass/silica
->N/A
(forge:glass/tinted
->N/A
(forge:glass/white
->N/A
(forge:glass/yellow
->N/A
(forge:glass_panes
->c:glass_panes
forge:glass_panes/black
->N/A
(forge:glass_panes/blue
->N/A
(forge:glass_panes/brown
->N/A
(forge:glass_panes/colorless
->c:glass_panes/colorless
forge:glass_panes/cyan
->N/A
(forge:glass_panes/gray
->N/A
(forge:glass_panes/green
->N/A
(forge:glass_panes/light_blue
->N/A
(forge:glass_panes/light_gray
->N/A
(forge:glass_panes/lime
->N/A
(forge:glass_panes/magenta
->N/A
(forge:glass_panes/orange
->N/A
(forge:glass_panes/pink
->N/A
(forge:glass_panes/purple
->N/A
(forge:glass_panes/red
->N/A
(forge:glass_panes/white
->N/A
(forge:glass_panes/yellow
->N/A
(forge:gravel
->c:gravel
N/A
->c:gunpowder
(N/A
->c:hidden_from_recipe_viewers
(forge:ingots
->c:ingots
forge:ingots/brick
->N/A
(forge:ingots/copper
->c:ingots/copper
forge:ingots/gold
->c:ingots/gold
forge:ingots/iron
->c:ingots/iron
forge:ingots/netherite
->c:ingots/netherite
forge:ingots/nether_brick
->N/A
(forge:leather
->c:leather
forge:mushrooms
->c:mushrooms
forge:nether_stars
->c:nether_stars
forge:netherrack
->c:netherrack
forge:nuggets
->c:nuggets
forge:nuggets/gold
->c:nuggets/gold
forge:nuggets/iron
->c:nuggets/iron
forge:obsidian
->c:obsidians
forge:ore_bearing_ground/deepslate
->c:ore_bearing_ground/deepslate
forge:ore_bearing_ground/netherrack
->c:ore_bearing_ground/netherrack
forge:ore_bearing_ground/stone
->c:ore_bearing_ground/stone
forge:ore_rates/dense
->c:ore_rates/dense
forge:ore_rates/singular
->c:ore_rates/singular
forge:ore_rates/sparse
->c:ore_rates/sparse
forge:ores
->c:ores
forge:ores/coal
->c:ores/coal
forge:ores/copper
->c:ores/copper
forge:ores/diamond
->c:ores/diamond
forge:ores/emerald
->c:ores/emerald
forge:ores/gold
->c:ores/gold
forge:ores/iron
->c:ores/iron
forge:ores/lapis
->c:ores/lapis
forge:ores/netherite_scrap
->c:ores/netherite_scrap
forge:ores/quartz
->c:ores/quartz
forge:ores/redstone
->c:ores/redstone
forge:ores_in_ground/deepslate
->c:ores_in_ground/deepslate
forge:ores_in_ground/netherrack
->c:ores_in_ground/netherrack
forge:ores_in_ground/stone
->c:ores_in_ground/stone
N/A
->c:player_workstations/crafting_tables
(N/A
->c:player_workstations/furnaces
(N/A
->c:raw_blocks
(N/A
->c:raw_blocks/copper
(N/A
->c:raw_blocks/gold
(N/A
->c:raw_blocks/iron
(forge:raw_materials
->c:raw_materials
forge:raw_materials/copper
->c:raw_materials/copper
forge:raw_materials/gold
->c:raw_materials/gold
forge:raw_materials/iron
->c:raw_materials/iron
forge:rods
->c:rods
forge:rods/blaze
->c:rods/blaze
N/A
->c:rods/breeze
(forge:rods/wooden
->c:rods/wooden
N/A
->c:ropes
(forge:sand
->c:sands
forge:sand/colorless
->c:sands/colorless
forge:sand/red
->c:sands/red
forge:sandstone
->N/A
(N/A
->c:sandstone/blocks
(N/A
->c:sandstone/slabs
(N/A
->c:sandstone/stairs
(N/A
->c:sandstone/red_blocks
(N/A
->c:sandstone/red_slabs
(N/A
->c:sandstone/red_stairs
(N/A
->c:sandstone/uncolored_blocks
(N/A
->c:sandstone/uncolored_slabs
(N/A
->c:sandstone/uncolored_stairs
(forge:seeds
->c:seeds
forge:seeds/beetroot
->c:seeds/beetroot
forge:seeds/melon
->c:seeds/melon
forge:seeds/pumpkin
->c:seeds/pumpkin
forge:seeds/wheat
->c:seeds/wheat
forge:shears
->N/A
(forge:slimeballs
->c:slimeballs
forge:stained_glass
->N/A
(forge:stained_glass_panes
->N/A
(forge:stone
->c:stones
forge:storage_blocks
->c:storage_blocks
forge:storage_blocks/amethyst
->N/A
(N/A
->c:storage_blocks/bone_meal
(forge:storage_blocks/coal
->c:storage_blocks/coal
forge:storage_blocks/copper
->c:storage_blocks/copper
forge:storage_blocks/diamond
->c:storage_blocks/diamond
N/A
->c:storage_blocks/dried_kelp
(forge:storage_blocks/emerald
->c:storage_blocks/emerald
forge:storage_blocks/gold
->c:storage_blocks/gold
forge:storage_blocks/iron
->c:storage_blocks/iron
forge:storage_blocks/lapis
->c:storage_blocks/lapis
forge:storage_blocks/netherite
->c:storage_blocks/netherite
forge:storage_blocks/quartz
->N/A
(forge:storage_blocks/raw_copper
->c:storage_blocks/raw_copper
forge:storage_blocks/raw_gold
->c:storage_blocks/raw_gold
forge:storage_blocks/raw_iron
->c:storage_blocks/raw_iron
forge:storage_blocks/redstone
->c:storage_blocks/redstone
N/A
->c:storage_blocks/slime
(N/A
->c:storage_blocks/wheat
(forge:string
->c:strings
N/A
->c:vilager_job_sites
(forge:tools
->c:tools
forge:tools/shields
->c:tools/shields
forge:tools/bows
->c:tools/bows
forge:tools/crossbows
->c:tools/crossbows
forge:tools/fishing_rods
->c:tools/fishing_rods
forge:tools/tridents
->N/A
(N/A
->c:tools/spears
(N/A
->c:tools/shears
(N/A
->c:tools/brushes
(forge:armors
->N/A
(forge:armors/helmets
->N/A
(forge:armors/chestplates
->N/A
(forge:armors/leggings
->N/A
(forge:armors/boots
->N/A
(N/A
->c:enchantables
(Fluids
N/A
->c:water
(N/A
->c:lava
(forge:milk
->c:milk
forge:gaseous
->c:gaseous
N/A
->c:honey
(N/A
->c:potion
(N/A
->c:suspicious_stew
(N/A
->c:mushroom_stew
(N/A
->c:rabbit_stew
(N/A
->c:beetroot_soup
(N/A
->c:hidden_from_recipe_viewers
(Enchantments
N/A
->c:increase_block_drops
(N/A
->c:increase_entity_drops
(N/A
->c:weapon_damage_enhancements
(N/A
->c:entity_speed_enhancements
(N/A
->c:entity_auxiliary_movement_enhancements
(N/A
->c:entity_defense_enhancements
(Biomes
N/A
->c:no_default_monsters
(N/A
->c:hidden_from_locator_selection
(forge:is_void
->c:is_void
forge:is_hot
->c:is_hot
forge:is_hot/overworld
->c:is_hot/overworld
forge:is_hot/nether
->c:is_hot/nether
forge:is_hot/end
->c:is_hot/end
forge:is_cold
->c:is_cold
forge:is_cold/overworld
->c:is_cold/overworld
forge:is_cold/nether
->c:is_cold/nether
forge:is_cold/end
->c:is_cold/end
forge:is_sparse
->N/A
(forge:is_sparse/overworld
->N/A
(forge:is_sparse/nether
->N/A
(forge:is_sparse/end
->N/A
(forge:is_dense
->N/A
(forge:is_dense/overworld
->N/A
(forge:is_dense/nether
->N/A
(forge:is_dense/end
->N/A
(N/A
->c:is_sparse_vegetation
(N/A
->c:is_sparse_vegetation/overworld
(N/A
->c:is_sparse_vegetation/nether
(N/A
->c:is_sparse_vegetation/end
(N/A
->c:is_dense_vegetation
(N/A
->c:is_dense_vegetation/overworld
(N/A
->c:is_dense_vegetation/nether
(N/A
->c:is_dense_vegetation/end
(forge:is_wet
->c:is_wet
forge:is_wet/overworld
->c:is_wet/overworld
forge:is_wet/nether
->c:is_wet/nether
forge:is_wet/end
->c:is_wet/end
forge:is_dry
->c:is_dry
forge:is_dry/overworld
->c:is_dry/overworld
forge:is_dry/nether
->c:is_dry/nether
forge:is_dry/end
->c:is_dry/end
forge:is_coniferous
->N/A
(N/A
->c:is_overworld
(forge:is_spooky
->c:is_spooky
forge:is_dead
->N/A
(forge:is_lush
->N/A
(N/A
->c:is_tree/coniferous
(N/A
->c:is_tree/savanna
(N/A
->c:is_tree/jungle
(N/A
->c:is_tree/deciduous
(N/A
->c:is_mountain
(N/A
->c:is_mountain/peak
(N/A
->c:is_mountain/slope
(forge:is_plains
->c:is_plains
N/A
->c:is_snowy_plains
(N/A
->c:is_forest
(N/A
->c:is_birch_forest
(N/A
->c:is_flower_forest
(N/A
->c:is_taiga
(N/A
->c:is_old_growth
(N/A
->c:is_hill
(N/A
->c:is_windswept
(N/A
->c:is_jungle
(N/A
->c:is_savanna
(forge:is_swamp
->c:is_swamp
forge:is_desert
->c:is_desert
N/A
->c:is_badlands
(N/A
->c:is_beach
(N/A
->c:is_stony_shores
(forge:is_mushroom
->c:is_mushroom
N/A
->c:is_river
(N/A
->c:is_ocean
(N/A
->c:is_deep_ocean
(N/A
->c:is_shallow_ocean
(forge:is_underground
->c:is_underground
forge:is_cave
->c:is_cave
(N/A
->c:is_lush
(forge:is_magical
->c:is_magical
forge:is_rare
->c:is_rare
forge:is_plateau
->c:is_plateau
forge:is_modified
->c:is_modified
forge:is_water
->N/A
(forge:is_wasteland
->c:is_wasteland
N/A
->c:is_icy
(N/A
->c:is_aquatic
(N/A
->c:is_aquatic_icy
(forge:is_peak
->N/A
(forge:is_slope
->N/A
(forge:is_mountain
->N/A
(N/A
->c:is_nether
(N/A
->c:is_nether_forest
(N/A
->c:is_end
(N/A
->c:is_outer_end_island
(Structures
N/A
->c:hidden_from_displayers
(N/A
->c:hidden_from_locator_selection
(