Wyrmroost

Wyrmroost

7M Downloads

[Magma 1.16.5] NoSuchFieldError exception crashes server on inital launch

HerrCraziDev opened this issue ยท 0 comments

commented

Details

I am running the latest release of Wyrmroost, and the latest available beta release of the Magma server (Paper with Forge support).

  • Minecraft : 1.16.5
  • Magma : 1.16.5-36.1.32-275780b-DEV
  • Wyrmroost : 1.2.11
  • Java : 11 (openjdk-11-jdk-headless on a Debian 11 'bullseye' container)

The server crashes at the first launch after throwing several NoSuchFieldError exceptions (logs attached below) when Wyrmroost is present.
The issue does not appears when using Forge (either 36.1.32 or the latest stable, 36.2.0), neither with other mods installed. It appears the combination of Wyrmroost and Magma doesn't seems to work, but I'm unsure which one is the source of the problem, since removing either works fine (Wyrmroost without Magma, ie on "vanilla" Forge, or Magma without Wyrmroost).

I also tried with a custom build of Magma from the current state of the repo, and a second with a custom Magma built against Forge 36.2.0 instead of the current Forge 36.1.32. Both builds were successful and worked fine, but failed just like the others when adding Wyrmroost.

All tests were executed in brand new clean Debian 11 environments with openjdk-11-jdk installed.

Reproduction

Use any of the Magma versions mentionned above, and the last version of Wyrmroost

  • Install Magma in a clean server environment
  • Prime the server by running it once and accepting the EULA.
  • Add Wyrmroost to the mods directory.
  • Launch the server
  • It should crash, producing the output attached below.

Output

Here is a selected output of the exception, which happens several times before halting the server.

[00:59:21] [Worker-Main-10/FATAL] [minecraft/MinecraftServer]: Failed to schedule load callback for chunk [-12, 3]
java.util.concurrent.CompletionException: java.lang.NoSuchFieldError: field_187234_c
        at java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:314) ~[?:?] {}
        at java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:319) ~[?:?] {}
        at java.util.concurrent.CompletableFuture$UniCompose.tryFire(CompletableFuture.java:1081) ~[?:?] {}
        at java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:478) ~[?:?] {}
        at net.minecraft.world.chunk.ChunkTaskPriorityQueueSorter.func_219083_b(SourceFile:58) ~[?:?] {re:classloading}
        at net.minecraft.util.concurrent.DelegatedTaskExecutor.func_213148_e(SourceFile:94) [?:?] {re:classloading}
        at net.minecraft.util.concurrent.DelegatedTaskExecutor.func_213145_a(SourceFile:137) [?:?] {re:classloading}
        at net.minecraft.util.concurrent.DelegatedTaskExecutor.run(SourceFile:105) [?:?] {re:classloading}
        at java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(ForkJoinTask.java:1426) [?:?] {}
        at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290) [?:?] {}
        at java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020) [?:?] {}
        at java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656) [?:?] {}
        at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594) [?:?] {}
        at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183) [?:?] {}
Caused by: java.lang.NoSuchFieldError: field_187234_c
        at com.github.wolfshotz.wyrmroost.entities.dragon.AbstractDragonEntity.hasDataParameter(AbstractDragonEntity.java:165) ~[wyrmroost:1.16.3-1.2.11] {re:classloading}
        at com.github.wolfshotz.wyrmroost.entities.dragon.AbstractDragonEntity.<init>(AbstractDragonEntity.java:111) ~[wyrmroost:1.16.3-1.2.11] {re:classloading}
        at com.github.wolfshotz.wyrmroost.entities.dragon.ButterflyLeviathanEntity.<init>(ButterflyLeviathanEntity.java:75) ~[wyrmroost:1.16.3-1.2.11] {re:classloading}
        at net.minecraft.entity.EntityType.func_200721_a(EntityType.java:453) ~[?:?] {re:classloading,pl:runtimedistcleaner:A}
        at net.minecraft.world.spawner.WorldEntitySpawner.func_77191_a(WorldEntitySpawner.java:404) ~[?:?] {re:classloading}
        at net.minecraft.world.gen.NoiseChunkGenerator.func_230354_a_(NoiseChunkGenerator.java:629) ~[?:?] {re:classloading,pl:runtimedistcleaner:A}
        at net.minecraft.world.chunk.ChunkStatus.func_222602_b(ChunkStatus.java:89) ~[?:?] {re:classloading,pl:accesstransformer:B}
        at net.minecraft.world.chunk.ChunkStatus$ISelectiveWorker.doWork(ChunkStatus.java:240) ~[?:?] {re:classloading}
        at net.minecraft.world.chunk.ChunkStatus.func_223198_a(ChunkStatus.java:198) ~[?:?] {re:classloading,pl:accesstransformer:B}
        at net.minecraft.world.server.ChunkManager.lambda$null$18(ChunkManager.java:561) ~[?:?] {re:classloading,pl:runtimedistcleaner:A}
        at com.mojang.datafixers.util.Either$Left.map(Either.java:38) ~[?:?] {re:classloading}
        at net.minecraft.world.server.ChunkManager.lambda$scheduleChunkGeneration$20(ChunkManager.java:559) ~[?:?] {re:classloading,pl:runtimedistcleaner:A}
        at java.util.concurrent.CompletableFuture$UniCompose.tryFire(CompletableFuture.java:1072) ~[?:?] {}
        ... 11 more

Attached full server logs : https://gist.github.com/HerrCraziDev/59eaf9ca2e96dc43449d51b884c1295c