sisby-folk / antique-atlas

A hand-drawn client-side minecraft world map with biomes, structures, waypoints, and less! A fourth-generation rewrite of Hunternif's Antique Atlas.
https://modrinth.com/mod/antique-atlas-4
Other
30 stars 12 forks source link

Fallbacks don't work for datapack biomes (Terralith) #223

Open catter1 opened 3 weeks ago

catter1 commented 3 weeks ago

First of all, yes, I have read #83! This is exactly why I am making this issue.

Issue

Recently, a couple people have mentioned that Antique Atlas is not recognizing any fallback biome for many of Terralith's biomes. According to the log (linked at bottom of issue), the cause of this is due to the Terralith biome not being listed in any conventional or vanilla tag. This is confirmed and explained further in the aforementioned #83.

However, all of Terralith's biomes are in conventional and vanilla tags. For example, let's take terralith:desert_spires.

  1. In line 132 of the log, Antique Atlas cannot find Desert Spires in any conventional or vanilla tag
  2. Your code checks for c:is_desert, c:is_wasteland, and c:is_dead; as well as the corresponding Forge tags (which are irrelevant here)
  3. Look inside the latest version of Terralith, open up c:is_desert, and see that terralith:desert_spires is inside of it
    • Yes, it's a little bit of a maze, with a couple of linked tags
    • Terralith's GitHub is not updated to the latest version (2.5.5), and I do apologise for that - looking through the mod itself is required

image image image

Note

I did leave out one detail. The warning in the log states "not in ANY [...] tag on the client". Terralith is a datapack pretending to be a mod. As a datapack developer, I know that the tags are typically only loaded onto the server. In this scenario however, the Terralith mod is installed onto the client. The alternative being a player joining a server with Terralith installed, when they do not have it installed.

Another reason this potential cause does not make sense, is because Antique Atlas does find a backup biome for some of Terralith's biomes. This implies it finds those biomes inside of a tag somewhere, meaning at least some tags are loaded and recognized.

I also looked at the biomes Antique Atlas did find a fallback biome (aka a conventional/vanilla tag) for and compared them to the ones it did not find. Yet I could not spot any meaningful differences.

Conclusion

Not sure why this is an issue. From glancing at your code, analyzing Terralith's biome tags, and reading your explanation on how Antique Atlas assigns fallback biomes, this should theoretically not be an issue. I do not know what could cause it. Perhaps I misunderstood something?

Let me know if there's an issue on Terralith's side, and I'll do my best to fix it. I should also note that a couple of texturers were thinking about making custom tiles for Antique Atlas to merge into Terralith's optional resourcepack, but unsure if/when this will ever come to fruition.

Environment

sisby-folk commented 2 weeks ago

could be a sync or timing issue due to being a datapack and not a mod, we'll investigate.