[Fabric 1.19.2] BcLib tries to load Bumblezone's noise setting before it is parsed and causes crash on world load
chorbintime opened this issue ยท 4 comments
Hello. I am a developer from Luna Pixel Studios and have recently noticed several crashes and datapack errors related to Bumblezone across several modpacks.
The first case was on 8/09/2022 on Better MC Fabric 1.19.2. When joining their world, the user saw "Errors in currently selected datapacks prevented the world from loading". They proceeded to get the following crash:
The game crashed whilst mouseclicked event handler
Error: java.lang.IllegalStateException: Trying to access unbound value 'ResourceKey[minecraft:worldgen/noise_settings / the_bumblezone:bz_noise_settings]' from registry Registry[ResourceKey[minecraft:root / minecraft:worldgen/noise_settings] (Stable)]
Exit Code: 255
I was unable to confirm whether removing Bumblezone fixed the crash for this user.
The second case was on 9/07/2022 on Medieval MC Fabric 1.19.2. They played fine for 4 hours and then received the following crash upon rejoining their world: https://mclo.gs/6joXWOj (Bumblezone version Fabric 6.1.8+1.19.2)
Deleting Bumblezone let them join their world with no other errors.
The third case was today, on 9/10/2022 on Medieval MC Fabric 1.19.2. When joining their world, the user saw the same datapack error as the first user did. They were able to supply a latest.log (https://mclo.gs/rhBWq9H) (Bumblezone version Fabric 6.1.8+1.19.2)
Deleting Bumblezone let them join their world with no other errors.
There were more similar errors/crashes before these, and I am trying to contact the people who experienced them to see if deleting Bumblezone fixes their issues.
This is more likely a mod compat issue as that error of unable to find the bz noise setting in the registry does make any logical sense because the actual noise setting file exists and is parsed and read by minecraft just fine with Bumblezone alone in 1.18.2 and 1.19.2. No one else reported this issue beside those using better minecraft modpacks and only on Fabric. Neither Quilt nor Forge seems to have any reports.
My guess is the modpack has a bad mod in it that is breaking the parsing of some json worldgen files or something in a way that makes it not parse the noise setting file properly before parsing the dimension json file.
The latest.log file one shows bclib as trying to create Bumblezone chunk generator possibly too early before the worldgen json files are parsed. I know their lib had many issues before with chunk generators/biome sources before so I would not be surprised if their lib is still having issues but they need a reproduction case. Please provide a copy of the affected world and exact Better Minecraft version for that world so we can test if removing the bclib will fix the issue
Edit: I got a copy of the affected world and latest.log and was able to reproduce the issue. Issue seems to stem from this line:
at org.betterx.worlds.together.worldPreset.TogetherWorldPreset.loadWorldDimensions(TogetherWorldPreset.java:122) ~[bclib-2.1.0.jar:?]
Linking report made to bclib: quiqueck/BCLib#44
For anyone reading this and has a world affected with this issue, here is a special Bumblezone jar to use (Unzip first to get the jar). This jar will make the game bypass BcLib's world patcher code. Just be sure to make a backup of your world first but this should be ok for existing worlds and should allow people to play again on worlds affected with this BcLib bug.
the_bumblezone_fabric-6.1.13-bclib_modifying+1.19.2.jar.zip