ServerCore

ServerCore

384k Downloads

Crash on start up with Better Nether map

SplendidAlakey opened this issue ยท 2 comments

commented

Describe the bug

When ServerCore and Promenade are used together, the server won't start.

Reproduce

Steps to reproduce the behavior:

  • Install Promenade
  • Install ServerCore
  • Launch the server

Versions -Latest is not a version!

ServerCore: 1.2.1, compiled from source based on commit 9c4151c
Minecraft: 1.17.1

Mod incompatibilities

Promenade.

Relevant log entry

[13:40:56] [main/ERROR]: Mixin apply failed servercore.mixins.json:performance.FilledMapItemMixin -> net.minecraft.class_1806: org.spongepowered.asm.mixin.injection.throwables.InvalidInjectionException @at("INVOKE") on net/minecraft/class_1806::onlyUpdateIfLoaded with priority 1000 cannot inject into net/minecraft/class_1806::method_7998(Lnet/minecraft/class_1937;Lnet/minecraft/class_1297;Lnet/minecraft/class_22;)V merged by com.jummit.nethermap.mixin.FilledMapMixin with priority 1000 [PREINJECT Applicator Phase -> servercore.mixins.json:performance.FilledMapItemMixin -> Prepare Injections -> -> redirect$eep000$onlyUpdateIfLoaded(Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2818; -> Prepare]
org.spongepowered.asm.mixin.injection.throwables.InvalidInjectionException: @at("INVOKE") on net/minecraft/class_1806::onlyUpdateIfLoaded with priority 1000 cannot inject into net/minecraft/class_1806::method_7998(Lnet/minecraft/class_1937;Lnet/minecraft/class_1297;Lnet/minecraft/class_22;)V merged by com.jummit.nethermap.mixin.FilledMapMixin with priority 1000 [PREINJECT Applicator Phase -> servercore.mixins.json:performance.FilledMapItemMixin -> Prepare Injections -> -> redirect$eep000$onlyUpdateIfLoaded(Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2818; -> Prepare]
at Not Enough Crashes deobfuscated stack trace.(1.17.1+build.61) ~[?:?]
at org.spongepowered.asm.mixin.injection.code.Injector.findTargetNodes(Injector.java:305) ~[server.jar:?]
at org.spongepowered.asm.mixin.injection.code.Injector.find(Injector.java:240) ~[server.jar:?]
at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.prepare(InjectionInfo.java:421) ~[server.jar:?]
at org.spongepowered.asm.mixin.transformer.MixinTargetContext.prepareInjections(MixinTargetContext.java:1338) ~[server.jar:?]
at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.prepareInjections(MixinApplicatorStandard.java:1043) ~[server.jar:?]
at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.applyMixin(MixinApplicatorStandard.java:393) ~[server.jar:?]
at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.apply(MixinApplicatorStandard.java:325) ~[server.jar:?]
at org.spongepowered.asm.mixin.transformer.TargetClassContext.apply(TargetClassContext.java:421) ~[server.jar:?]
at org.spongepowered.asm.mixin.transformer.TargetClassContext.applyMixins(TargetClassContext.java:403) ~[server.jar:?]
at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:363) ~[server.jar:?]
at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClass(MixinTransformer.java:234) ~[server.jar:?]
at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClassBytes(MixinTransformer.java:202) ~[server.jar:?]
at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.getPostMixinClassByteArray(KnotClassDelegate.java:222) ~[server.jar:?]
at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.tryLoadClass(KnotClassDelegate.java:133) ~[server.jar:?]
at net.fabricmc.loader.impl.launch.knot.KnotClassLoader.loadClass(KnotClassLoader.java:155) ~[server.jar:?]
at java.lang.ClassLoader.loadClass(ClassLoader.java:519) ~[?:?]
at com.hugman.promenade.object.entity.DuckEntity.(DuckEntity.java:61) ~[promenade-2.1.2.jar:?]
at net.fabricmc.fabric.api.object.builder.v1.entity.FabricEntityTypeBuilder$Living.build(FabricEntityTypeBuilder.java:404) ~[fabric-object-builder-api-v1-1.1+b7ab6121d5-60e1070dcfc9056e.jar:?]
at com.hugman.promenade.init.PromenadeEntities.(PromenadeEntities.java:16) ~[promenade-2.1.2.jar:?]
at net.minecraft.world.gen.feature.DefaultBiomeFeatures.handler$dol000$WE_addDuck(DefaultBiomeFeatures:1119) ~[?:?]
at net.minecraft.world.gen.feature.DefaultBiomeFeatures.addFarmAnimals(DefaultBiomeFeatures:445) ~[?:?]
at net.minecraft.world.gen.feature.DefaultBiomeFeatures.addPlainsMobs(DefaultBiomeFeatures:477) ~[?:?]
at net.minecraft.world.biome.DefaultBiomeCreator.createPlains(DefaultBiomeCreator:370) ~[?:?]
at net.minecraft.world.biome.BuiltinBiomes.(BuiltinBiomes:18) ~[?:?]
at net.minecraft.util.registry.BuiltinRegistries.method_30567(BuiltinRegistries:52) ~[?:?]
at net.minecraft.util.registry.BuiltinRegistries.method_30566(BuiltinRegistries:75) ~[?:?]
at java.util.LinkedHashMap.forEach(LinkedHashMap.java:723) ~[?:?]
at net.minecraft.util.registry.BuiltinRegistries.(BuiltinRegistries:74) ~[?:?]
at net.minecraft.util.registry.Registry.(Registry:266) ~[?:?]
at net.minecraft.Bootstrap.initialize(Bootstrap:44) ~[?:?]
at net.minecraft.server.Main.main(Main:92) [intermediary-vanilla.jar:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:78) ~[?:?]
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
at java.lang.reflect.Method.invoke(Method.java:567) ~[?:?]
at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:568) [server.jar:?]
at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74) [server.jar:?]
at net.fabricmc.loader.impl.launch.knot.KnotServer.main(KnotServer.java:23) [server.jar:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:78) ~[?:?]
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
at java.lang.reflect.Method.invoke(Method.java:567) ~[?:?]
at net.fabricmc.loader.impl.launch.server.FabricServerLauncher.launch(FabricServerLauncher.java:72) [server.jar:?]
at net.fabricmc.loader.impl.launch.server.FabricServerLauncher.setup(FabricServerLauncher.java:98) [server.jar:?]
at net.fabricmc.loader.impl.launch.server.FabricServerLauncher.main(FabricServerLauncher.java:60) [server.jar:?]

Full log: [removed]

commented

I can't reproduce any errors when trying to launch ServerCore and Promenade.
This issue seems to be caused by better-nether-map, which does a massive @Overwrite making all injections in the same method incompatible.

commented

You are correct, removing Better Nether map lets the server launch just fine. I will report it to them. Thanks!