Create: Let The Adventure Begin

Create: Let The Adventure Begin

251k Downloads

[Suggestion] Use `minecraft` biome tags and `c` tags for better mod compat

TelepathicGrunt opened this issue · 3 comments

commented

I saw in 1.21.1 NeoForge that your mod hardcodes biomes for the structure to spawn in. Like here:

I wanted to point out that if you make custom tags and pull in the minecraft and c biome tags, your structures will spawn in more modded biomes without needing explicit compat for each biome. For example, using #c:is_jungle as a require-false tag entry in your tag, your structure will spawn in all Overworld modded jungle biomes in that tag.

I think that would greatly help people to find your structure in large modpacks or biome-adding datapacks!

minecraft namespace biome tags:
https://github.com/misode/mcmeta/tree/b7e7f5282f9cc2ca1bd01e9a4911beab4725cb4b/data/minecraft/tags/worldgen/biome

c namespace biome tags:
https://github.com/neoforged/NeoForge/tree/1.21.1/src/generated/resources/data/c/tags/worldgen/biome

commented

Hi thanks for the suggestion
I am now aware of the minecraft tags but when i started this mod i used the "biomes": [ which in hindsight isn't great. I plan to change a lot about the generation of structures and using tags is on the roadmap of changes.

But the c tags are new to me. Are they only on NeoForge and can Fabric, Forge And Quilt use them?

commented

Fabric has the same 'c' tags as well.

https://github.com/FabricMC/fabric/tree/1.21.1/fabric-convention-tags-v2/src/generated/resources/data/c/tags/worldgen/biome

Forge is copying the 'c' tags over

And quilt, no idea about quilt but afaik, it’s kinda a dying loader on all Mc versions so I wouldn’t pay them much attention.

Tag unification across loaders started in 1.20.5. So in 1.21.1+, use the c tags. In 1.20.1 and below, forge uses 'forge' namespaces biome tags and fabric had differently named 'c' tags.

Be sure to pull up the loader’s sources to see what the tags were for whatever Mc version you’re looking at

commented

Wow thanks i will try this when i have the time! Hopefully it will work without to much of a hassle
Thanks again for the suggestion it helps a lot with the development of this project