BoP world type breaks dimensions added by mods on dedicated servers
malte0811 opened this issue ยท 10 comments
Bug Report
What's the issue you encountered?
Dimensions added by other mods (and probably datapacks) are ignored on dedicated servers if the biomesoplenty
world type is used. This is probably caused by this function ignoring all user-added dimensions. This was noticed on ForgeCraft 1.
How can the issue be reproduced?
Install BoP for Minecraft 1.16.3 on a dedicated server together with any mod adding a dimension (example), or a non-mod datapack doing so. Set the world type to biomesoplenty
. Run /forge tps
and notice that the dimension is not shown. Launch the same instance with a different world type (e.g. default
) and notice that the dimension will be shown.
Related note: Why does the issue template say "recreating your issue with only Biomes O' Plenty installed"? Do you assume that cross-mod issues do not exist? Alternatively: why are the only existing issue templates for "standalone" installations?
Mod Version
BiomesOPlenty: 1.16.3-12.0.0.408
Forge: 34.1.23
This is also an issue in singleplayer, and causes bop to fail to load any save with the bop world type.
Can confirm for ATM 6 on a dedicated server.
Wouldn't class this as a minor bug since it prevents All Dim driven mods from even functioning.
This is also an issue in singleplayer, and causes bop to fail to load any save with the bop world type.
Yeah ok, ill look into fixing both of these issues since it seems like the mod has gone quiet. No guarantee but ill try my best.
Edit: For some weird reason its not happening on the ATM6 mod-pack.
ATM6 seems to be using 1.16.3-12.0.0.409.
Assuming I'm using the latest 12.x.x version due to src code (which also seems to be 12.0.0.409), there should be no reason for it to not work...
@Forstride Just tested latest version and it seems its fixed. Ive only tested Ratlantis as of now but i will test other mods.
@Forstride Just tested latest version and it seems its fixed. Ive only tested Ratlantis as of now but i will test other mods.
Just tested this with ATM6 1.1.9b and it still has the same problem on 1.16.3-12.0.0.412
--quick update--
server will not spawn dimensions on first start, you have to start twice with ATM6 for dimensions to appear. Could be ATM6 specific.
Release 1.16.4-forge-35.0.15 server + client
BiomesOPlenty-1.16.4-13.0.0.420-universal.jar
mining_dimension-1.16.4-1.0.1.jar
I added "Advanced Mining Dimensions" to my existing world (and a datapack for mining dimensions called more_ores).
When clicking the teleport block it read: Mining Dimension hasn't been made yet.
It seems that this was a minecraft issue and should be fixed with forge 35.0.15 and mining dimension 1.0.1.
After 2 server reboots still no mining world.
I removed the datapack and started the server again. Now a mining dimension was made.
I entered the mining world and mined some then exited back to the overworld.
Shut down the server and added the datapack again.
Now the server won't start anymore.
I removed the datapack - Server won't start
I removed the dimension folder in my world folder - Server won't start
I removed the advanced mining mod - Server won't start
The errors in the log are from biomesoplenty:
[11Nov2020 23:22:27.532] [Server thread/INFO] [biomesoplenty/]: Setting world generator settings to biomesoplenty
[11Nov2020 23:22:27.533] [Server thread/ERROR] [net.minecraftforge.eventbus.EventBus/EVENTBUS]: Exception caught during firing event: Index: 1, Size: 1
Index: 4
Listeners:
0: HIGH
1: net.minecraftforge.eventbus.EventBus$$Lambda$2710/793292236@24db8756
2: NORMAL
3: net.minecraftforge.eventbus.EventBus$$Lambda$2710/793292236@1a11417d
4: net.minecraftforge.eventbus.EventBus$$Lambda$2710/793292236@3f4d97c3
5: net.minecraftforge.eventbus.EventBus$$Lambda$2710/793292236@cee9503
6: net.minecraftforge.eventbus.EventBus$$Lambda$2710/793292236@747752ff
7: ASM: invtweaks.InvTweaksMod@53f70d13 onServerAboutToStart(Lnet/minecraftforge/fml/event/server/FMLServerAboutToStartEvent;)V
8: net.minecraftforge.eventbus.EventBus$$Lambda$2710/793292236@647dffa5
java.lang.IndexOutOfBoundsException: Index: 1, Size: 1
at java.util.ArrayList.rangeCheck(ArrayList.java:659)
at java.util.ArrayList.get(ArrayList.java:435)
at biomesoplenty.common.world.BOPWorldTypeUtil.isUsingBopWorldType(BOPWorldTypeUtil.java:46)
at biomesoplenty.common.world.BOPWorldTypeUtil.setupForDedicatedServer(BOPWorldTypeUtil.java:101)
at biomesoplenty.core.BiomesOPlenty.serverStarting(BiomesOPlenty.java:75)
at net.minecraftforge.eventbus.EventBus.doCastFilter(EventBus.java:247)
at net.minecraftforge.eventbus.EventBus.lambda$addListener$11(EventBus.java:239)
at net.minecraftforge.eventbus.EventBus.post(EventBus.java:297)
at net.minecraftforge.fml.server.ServerLifecycleHooks.handleServerAboutToStart(ServerLifecycleHooks.java:96)
at net.minecraft.server.dedicated.DedicatedServer.func_71197_b(DedicatedServer.java:166)
at net.minecraft.server.MinecraftServer.func_240802_v_(MinecraftServer.java:620)
at net.minecraft.server.MinecraftServer.lambda$startServer$0(MinecraftServer.java:232)
at java.lang.Thread.run(Thread.java:748)
[11Nov2020 23:22:27.534] [Server thread/ERROR] [net.minecraft.server.MinecraftServer/]: Encountered an unexpected exception
java.lang.IndexOutOfBoundsException: Index: 1, Size: 1
at java.util.ArrayList.rangeCheck(ArrayList.java:659) ~[?:1.8.0_272]
at java.util.ArrayList.get(ArrayList.java:435) ~[?:1.8.0_272]
at biomesoplenty.common.world.BOPWorldTypeUtil.isUsingBopWorldType(BOPWorldTypeUtil.java:46) ~[biomesoplenty:?]
at biomesoplenty.common.world.BOPWorldTypeUtil.setupForDedicatedServer(BOPWorldTypeUtil.java:101) ~[biomesoplenty:?]
at biomesoplenty.core.BiomesOPlenty.serverStarting(BiomesOPlenty.java:75) ~[biomesoplenty:?]
at net.minecraftforge.eventbus.EventBus.doCastFilter(EventBus.java:247) ~[eventbus-3.0.5-service.jar:?]
at net.minecraftforge.eventbus.EventBus.lambda$addListener$11(EventBus.java:239) ~[eventbus-3.0.5-service.jar:?]
at net.minecraftforge.eventbus.EventBus.post(EventBus.java:297) ~[eventbus-3.0.5-service.jar:?]
at net.minecraftforge.fml.server.ServerLifecycleHooks.handleServerAboutToStart(ServerLifecycleHooks.java:96) ~[forge:?]
at net.minecraft.server.dedicated.DedicatedServer.func_71197_b(DedicatedServer.java:166) ~[?:?]
at net.minecraft.server.MinecraftServer.func_240802_v_(MinecraftServer.java:620) ~[?:?]
at net.minecraft.server.MinecraftServer.lambda$startServer$0(MinecraftServer.java:232) ~[?:?]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_272]
Found a fix:
AllTheMods/ATM-6#258 (comment)
So in short: I edited my server.properties and changed: level-type=biomesoplenty to level-type=default.
Now the server starts again.
Just putting this here for reference, MinecraftForge/MinecraftForge@93c00b6 should allow for a more proper fix.