[Crash] Version 1.21: java.lang.IllegalStateException: Biome source config is not set.
wVtcher opened this issue · 9 comments
What happened?
When going to launch a world the game crashes at 0%. Even after removing the other mods that Prism says could cause issues the problem persists. I was able to solve it by removing BetterEnd, and when I added it back it crashed the same. Could be because the version for 1.21 is in alpha.
BetterEnd
21.0.5
BCLib
21.0.9
Fabric API
0.100.7+1.21
Fabric Loader
0.15.11-1.21
Minecraft
1.20.4
Relevant log output
Prism Launcher version: 8.4 (official)
Launched instance in online mode
[01:50:48] [Server thread/WARN]: Method overwrite conflict for removeIf in modernfix-common.mixins.json:bugfix.paper_chunk_patches.SortedArraySetMixin from mod modernfix, previously written by me.jellysquid.mods.lithium.mixin.collections.chunk_tickets.SortedArraySetMixin. Skipping method.
[01:50:48] [Server thread/INFO]: Added 2 Biomes
[01:50:48] [Server thread/INFO]: - minecraft:end_barrens, subbiomes=1
[01:50:48] [Server thread/INFO]: - minecraft:end_midlands, subbiomes=1
[01:50:48] [Server thread/ERROR]: Encountered an unexpected exception
java.lang.IllegalStateException: Biome source config is not set
at org.betterx.betterend.world.generator.TerrainGenerator.initNoise(TerrainGenerator.java:65) ~[better-end-21.0.5.jar:?]
at org.betterx.betterend.world.generator.TerrainGenerator.onServerLevelInit(TerrainGenerator.java:253) ~[better-end-21.0.5.jar:?]
at net.minecraft.class_3218.handler$zfi000$betterend$be_onServerWorldInit(class_3218.java:2331) ~[client-intermediary.jar:?]
at net.minecraft.class_3218.<init>(class_3218.java:274) ~[client-intermediary.jar:?]
at net.minecraft.server.MinecraftServer.method_3786(MinecraftServer.java:417) ~[client-intermediary.jar:?]
at net.minecraft.server.MinecraftServer.method_3735(MinecraftServer.java:342) ~[client-intermediary.jar:?]
at net.minecraft.class_1132.method_3823(class_1132.java:73) ~[client-intermediary.jar:?]
at net.minecraft.server.MinecraftServer.method_29741(MinecraftServer.java:664) ~[client-intermediary.jar:?]
at net.minecraft.server.MinecraftServer.method_29739(MinecraftServer.java:281) ~[client-intermediary.jar:?]
at java.base/java.lang.Thread.run(Thread.java:1583) [?:?]
[01:50:48] [Server thread/ERROR]: This crash report has been saved to: C:\Users\jptkm\AppData\Roaming\PrismLauncher\instances\1.21\.minecraft\crash-reports\crash-2024-07-29_01.50.48-server.txt
[01:50:48] [Server thread/INFO]: Stopping server
[01:50:48] [Server thread/INFO]: Saving players
[01:50:48] [Server thread/INFO]: Saving worlds
[01:50:48] [Server thread/INFO]: Saving chunks for level 'ServerLevel[Build Planner]'/minecraft:overworld
[01:50:48] [Render thread/INFO]: [FastQuit] Exiting FastQuit.
---- Minecraft Crash Report ----
// You should try our sister game, Minceraft!
Time: 2024-07-29 01:50:48
Description: Exception in server tick loop
java.lang.IllegalStateException: Biome source config is not set
at org.betterx.betterend.world.generator.TerrainGenerator.initNoise(TerrainGenerator.java:65)
at org.betterx.betterend.world.generator.TerrainGenerator.onServerLevelInit(TerrainGenerator.java:253)
at net.minecraft.class_3218.handler$zfi000$betterend$be_onServerWorldInit(class_3218.java:2331)
at net.minecraft.class_3218.<init>(class_3218.java:274)
at net.minecraft.server.MinecraftServer.method_3786(MinecraftServer.java:417)
at net.minecraft.server.MinecraftServer.method_3735(MinecraftServer.java:342)
at net.minecraft.class_1132.method_3823(class_1132.java:73)
at net.minecraft.server.MinecraftServer.method_29741(MinecraftServer.java:664)
at net.minecraft.server.MinecraftServer.method_29739(MinecraftServer.java:281)
at java.base/java.lang.Thread.run(Thread.java:1583)
Other Mods
[✔] animatica-0.6.1+1.21
[✔] balm-fabric-1.21-21.0.14
[✔] bclib-21.0.9
[✔] better-end-21.0.5
[✔] bettermounthud-1.2.4
[✔] better-nether-21.0.8
[✔] capes-1.5.4+1.21-fabric
[✔] cloth-config-15.0.128-fabric
[✔] continuity-3.0.0-beta.5+1.21
[✔] Controlify-2.0.0-beta.14+1.21-fabric
[✔] cristellib-fabric-1.2.6
[✔] cubes-without-borders-2.1.1+1.21
[✔] Debugify-1.21+1.0
[✔] dungeons-and-taverns-v4.3
[✔] dynamic-fps-3.6.1+minecraft-1.21.0-fabric
[✔] e4mc_minecraft-5.0.0-fabric
[✔] e4mc_minecraft-5.1.0
[✔] enhancedblockentities-0.10.1+1.21
[✔] entity_model_features_fabric_1.21-2.1.3
[✔] entity_texture_features_fabric_1.21-6.1.3
[✔] entityculling-fabric-1.6.6-mc1.21
[✔] fabric-api-0.100.7+1.21
[✔] fabric-language-kotlin-1.11.0+kotlin.2.0.0
[✔] fabricskyboxes-0.7.4+mc1.21
[✔] fabrishot-1.14.0
[✔] fastquit-3.0.0+1.20.6
[✔] ferritecore-7.0.0-fabric
[✔] fsb-interop-1.4.0+mc1.21-build.54
[✔] ImmediatelyFast-Fabric-1.2.18+1.21
[✔] indium-1.0.34+mc1.21
[✔] iris-1.7.3+mc1.21
[✔] language-reload-1.6.1+1.21
[✔] lithium-fabric-mc1.21-0.12.7
[✔] main-menu-credits-1.2.0
[✔] mixintrace-1.1.1+1.17
[✔] modelfix-1.21-1.6-fabric
[✔] modernfix-fabric-5.18.8+mc1.21
[✔] modmenu-11.0.1
[✔] morechathistory-1.3.1
[✔] moreculling-1.21-0.26.0
[✔] NoChatReports-FABRIC-1.21-v2.8.0
[✔] optigui-2.3.0-beta.2+1.21
[✔] paginatedadvancements-2.4.2
[✔] polytone-1.21-2.1.3-fabric
[✔] puzzle-1.6.3+1.21
[✔] reeses_sodium_options-1.7.3+mc1.21
[✔] rrls-5.0.1+mc1.21-fabric
[✔] sodium-extra-0.5.7+mc1.21
[✔] sodium-fabric-0.5.11+mc1.21
[✔] t_and_t-neoforge-fabric-1.13.2
[✔] waystones-fabric-1.21-21.0.8
[✔] worldweaver-21.0.10
[✔] YetAnotherConfigLib-3.5.0+1.21-fabric
[✔] yosbr-0.1.2
[✔] Zoomify-2.14.0+1.21
To clarify: is this when trying to create a new world or when loading up an existing world created prior to upgrading to 1.21?
If it is for creating a new world, what world type are you selecting?
To clarify: is this when trying to create a new world or when loading up an existing world created prior to upgrading to 1.21?
If it is for creating a new world, what world type are you selecting?
im trying to create a superflat world and resulting this https://mclo.gs/73ce3nR
To clarify: is this when trying to create a new world or when loading up an existing world created prior to upgrading to 1.21?
If it is for creating a new world, what world type are you selecting?
It happened when I was trying to load an existing superflat world already in 1.21. Also, I believe that I had this exact same issue when trying to load a different, already existing, BetterX world. Though I cannot be certain because I didn't look into that crash.
I get this when trying to update a world with an older version of 1.21 BetterEnd, doesn't seem to happen when creating newer worlds however.
I get this when trying to update a world with an older version of 1.21 BetterEnd, doesn't seem to happen when creating newer worlds however.
Upgrading older worlds is not currently implemented. It's something that can be done manually, but I would very much not recommend it, as when I did it, all my BE containers (end wood chests and barrels) had their stack sizes reset, and I'm sure there are other upgrading issues that I haven't yet caught.
How would I manually upgrade an older world if I wanted to do so?
@jamieclipse I cannot stress enough that I do not recommend doing this, and I disclaim any and all responsibility for whatever problems arise from following these directions. That being said, what I did was:
- Back up my existing world!!
- In a fresh 1.21 instance with the latest versions of BetterEnd, BCLib, etc. I created a new BetterX creative world and used
execute in [dimension] run tp @s 1000 200 1000
to quickly visit all three dimensions - Back in my old, 1.20.4 world, I then deleted all files in my
data
folder that weren't maps or vanilla files likeraids.dat
,scoreboard.dat
, etc. I repeated this forDIM-1/data
andDIM1/data
. - I then copied the contents of the data (and
DIMx/data
) folders from the 1.21 "donor" world - Lastly, I used an NBT editor to replace the
Data > WorldGenSettings
NBT tag inlevel.dat
of my 1.20.4 donor world with the value from the "donor" world'slevel.dat
- Finally, I opened my world in Minecraft 1.21 and, using a creative mode copy (or the "Open to LAN" commands hack), verified that everything was where it should be
Why I don't recommend doing this:
- Anything you store in a BetterEnd container (wood chests and barrels) will have their stack sizes reset unless you painstakingly go into the NBT data and change every slot's "Count" component to "count" (I did this via a Python script using the NBT library, but not that that library doesn't work if you have any items, entities, etc. with non-ASCII characters in their name)
- BetterEnd worldgen is not 100% in 1.21. Namely, end caves do not currently generate. Existing caves will port over fine, but unless you're planning on doing a massive world prune—or even a full dimension reset—I wouldn't want to generate any new chunks in the current version of BE.
- There are plenty of other bugs, from blockstates not rendering properly; to broken UIs that cause large portions of the mods' mechanics to be unusable (#435); to armor items having weapon properties (#442). With BetterEnd installed, you also cannot create a world of any other worldtype (#448).
Long story short: I would not consider BetterEnd 1.21 to be in a playable state and would very much suggest sticking with 1.20.4 until such time as these issues are resolved and the "Guardian" world upgrader is functioning.
How would I manually upgrade an older world if I wanted to do so?
@jamieclipse I cannot stress enough that I do not recommend doing this, and I disclaim any and all responsibility for whatever problems arise from following these directions. That being said, what I did was:
0. **Back up my existing world!!** 1. In a fresh 1.21 instance with the latest versions of BetterEnd, BCLib, etc. I created a new BetterX creative world and used `execute in [dimension] run tp @s 1000 200 1000` to quickly visit all three dimensions 2. Back in my old, 1.20.4 world, I then deleted all files in my `data` folder that weren't maps or vanilla files like `raids.dat`, `scoreboard.dat`, etc. I repeated this for `DIM-1/data` and `DIM1/data`. 3. I then _copied_ the contents of the data (and `DIMx/data`) folders from the 1.21 "donor" world 4. Lastly, I used an NBT editor to replace the `Data > WorldGenSettings` NBT tag in `level.dat` of my 1.20.4 donor world with the value from the "donor" world's `level.dat` 5. Finally, I opened my world in Minecraft 1.21 and, using a creative mode copy (or the "Open to LAN" commands hack), verified that everything was where it should be
Why I don't recommend doing this:
* Anything you store in a BetterEnd container (wood chests and barrels) will have their stack sizes reset unless you painstakingly go into the NBT data and change every slot's "Count" component to "count" (I did this via a Python script using the [NBT library](https://github.com/twoolie/NBT), but not that that library doesn't work if you have any items, entities, etc. with non-ASCII characters in their name) * BetterEnd worldgen is _not 100%_ in 1.21. Namely, **end caves do not currently generate.** Existing caves will port over fine, but unless you're planning on doing a massive world prune—or even a full dimension reset—I wouldn't want to generate any new chunks in the current version of BE. * There are plenty of other bugs, from blockstates not rendering properly; to broken UIs that cause large portions of the mods' mechanics to be unusable ([End Stone Smelter and Infusion Pedestal ui wont open #435](https://github.com/quiqueck/BetterEnd/issues/435)); to armor items having weapon properties ([[Bug] Terminite Armor Considered a Weapon #442](https://github.com/quiqueck/BetterEnd/issues/442)). With BetterEnd installed, you also **cannot create a world of any other worldtype** ([[Crash] Version 1.21: java.lang.IllegalStateException: Biome source config is not set. #448](https://github.com/quiqueck/BetterEnd/issues/448)).
Long story short: I would not consider BetterEnd 1.21 to be in a playable state and would very much suggest sticking with 1.20.4 until such time as these issues are resolved and the "Guardian" world upgrader is functioning.
The world I'm upgrading doesn't have an End dimension that's been accessed yet, so hopefully it's a bit safer to upgrade since I can reset the dimension without issue. Thanks for the info!
I get this when trying to update a world with an older version of 1.21 BetterEnd, doesn't seem to happen when creating newer worlds however.
Upgrading older worlds is not currently implemented. It's something that can be done manually, but I would very much not recommend it, as when I did it, all my BE containers (end wood chests and barrels) had their stack sizes reset, and I'm sure there are other upgrading issues that I haven't yet caught.
How would I manually upgrade an older world if I wanted to do so?