Crash with latest SpongeForge
bluelightning32 opened this issue ยท 15 comments
I tried Farseek-1.12-2.3.2.jar against spongeforge-1.12.2-2838-7.1.7-RC3854.jar.
java.lang.RuntimeException: java.lang.NoSuchMethodException: net.minecraft.world.WorldServer.updateWorldGenerator()
at net.minecraftforge.fml.common.eventhandler.EventBus.forgeBridge$post(EventBus.java:761)
at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:702)
at org.spongepowered.mod.world.gen.SpongeChunkGeneratorForge.replaceBiomeBlocks(SpongeChunkGeneratorForge.java:150)
at org.spongepowered.common.world.gen.SpongeChunkGenerator.generateChunk(SpongeChunkGenerator.java:253)
at net.minecraft.world.gen.ChunkProviderServer.provideChunk(ChunkProviderServer.java:143)
at net.minecraft.server.management.PlayerChunkMapEntry.redirect$forgeImpl$UpdateLoadedChunk$bal000(PlayerChunkMapEntry.java:1576)
at net.minecraft.server.management.PlayerChunkMapEntry.providePlayerChunk(PlayerChunkMapEntry.java:126)
at net.minecraft.server.management.PlayerChunkMap.tick(SourceFile:147)
at net.minecraft.world.WorldServer.tick(WorldServer.java:227)
at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:756)
at net.minecraft.server.dedicated.DedicatedServer.updateTimeLightAndEntities(DedicatedServer.java:397)
at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:668)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:526)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.NoSuchMethodException: net.minecraft.world.WorldServer.updateWorldGenerator()
at java.lang.Class.getMethod(Class.java:1786)
at farseek.world.gen.structure.StructureGenerationChunkProvider$.createSpongeGenerator$lzycompute(StructureGenerationChunkProvider.scala:81)
at farseek.world.gen.structure.StructureGenerationChunkProvider$.createSpongeGenerator(StructureGenerationChunkProvider.scala:81)
at farseek.world.gen.structure.StructureGenerationChunkProvider.createSpongeGenerators(StructureGenerationChunkProvider.scala:43)
at farseek.world.gen.structure.StructureGenerationChunkProvider.<init>(StructureGenerationChunkProvider.scala:34)
at farseek.world.gen.structure.StructureGenerationChunkProvider$$anonfun$apply$2.apply(StructureGenerationChunkProvider.scala:85)
at farseek.world.gen.structure.StructureGenerationChunkProvider$$anonfun$apply$2.apply(StructureGenerationChunkProvider.scala:85)
at scala.collection.mutable.MapLike$class.getOrElseUpdate(MapLike.scala:188)
at scala.collection.mutable.AbstractMap.getOrElseUpdate(Map.scala:80)
at farseek.world.gen.structure.StructureGenerationChunkProvider$.apply(StructureGenerationChunkProvider.scala:85)
at farseek.world.gen.structure.StructureGenerator.onChunkGeneration(StructureGenerator.scala:42)
at farseek.world.gen.structure.StructureGenerator.onChunkGeneration(StructureGenerator.scala:37)
at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_1947_StructureGenerator_onChunkGeneration_ReplaceBiomeBlocks.invoke(.dynamic)
at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:90)
at net.minecraftforge.fml.common.eventhandler.EventBus.forgeBridge$post(EventBus.java:752)
... 13 more
Sorry for the long delay; this should be fixed in the new Farseek 2.4. Please give it a try and let me know.
Using Forge 2487 and the newest (as of January 27th, 2020) SpongeForge-1.12.2-2838-7.19 build, Farseek 2.4 causes a crash on my server. Downgrading Farseek to 2.3 causes things to work correctly.
No crash with spongeforge-1.12.2-2825-7.1.6.jar.
Crashes with spongeforge-1.12.2-2838-7.1.7-RC3835.jar
Nope, it still fails. I've hit it in multiple modpacks that include this mod. In later spongeforge versions, it will start up, then crash with a different exception when it tries to generate a chunk.
I ended up removing this mod and the streams mod (which depends on it). The clients can connect to the server even though the clients have it installed but not the server.
1.12.2-2838-7.1.7-RC3902 with farseek in the new dungeons dragons and space shuttles crashed.. disabled farseek and streams loads alright. https://gist.github.com/pyscho974/476c46c88e98455ac2d9838bd144c043
Sorry for the delay here, I've been away for a bit.
Seems like Sponge changed their internal method for initializing their world chunk generator, which Farseek needs to access to create Stream's copy. If the method was simply renamed it should be an easy fix, otherwise it'll take some more time. I'll take a look this weekend.
I tried using the new name (impl$updateWorldGenerator
instead of updateWorldGenerator
) but got the same crash, so there seems to be something else changed along with the rename. On some Sponge versions I instead get the crash described by pyscho974 instead, so there's two different problems to tackle here.
I'll work on a fix but I'm not sure how long I'll be able to support Sponge compatibility in 1.12, as their continued development might risk breaking more things where Farseek/Streams has to rely on their internals. The more restrictive coremod system in 1.13+ should make these sorts of incompatibilities a lesser concern (or at least, easier to fix when they happen).