
Send Error when player enter server
HuangAdam opened this issue ยท 6 comments
io.netty.handler.codec.EncoderException: java.lang.NoSuchMethodError: com.fantasticsource.mctools.potions.FantasticPotionEffect.func_100011_g()Z
at io.netty.handler.codec.MessageToMessageEncoder.write(MessageToMessageEncoder.java:106) ~[minecraft_server.1.12.2.jar:?]
at io.netty.handler.codec.MessageToMessageCodec.write(MessageToMessageCodec.java:116) ~[minecraft_server.1.12.2.jar:?]
at io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:738) ~[minecraft_server.1.12.2.jar:?]
at io.netty.channel.AbstractChannelHandlerContext.invokeWriteAndFlush(AbstractChannelHandlerContext.java:801) ~[minecraft_server.1.12.2.jar:?]
at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:814) ~[minecraft_server.1.12.2.jar:?]
at io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:794) ~[minecraft_server.1.12.2.jar:?]
at io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:831) ~[minecraft_server.1.12.2.jar:?]
at io.netty.channel.DefaultChannelPipeline.writeAndFlush(DefaultChannelPipeline.java:1032) ~[minecraft_server.1.12.2.jar:?]
at io.netty.channel.AbstractChannel.writeAndFlush(AbstractChannel.java:296) ~[minecraft_server.1.12.2.jar:?]
at net.minecraftforge.fml.common.network.simpleimpl.SimpleNetworkWrapper.sendTo(SimpleNetworkWrapper.java:250) [SimpleNetworkWrapper.class:?]
at com.fantasticsource.dynamicstealth.common.Network.playerLogon(Network.java:134) [Network.class:?]
at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_137_Network_playerLogon_PlayerLoggedInEvent.invoke(.dynamic) [?:?]
at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:90) [ASMEventHandler.class:?]
at net.minecraftforge.fml.common.eventhandler.EventBus.forgeBridge$post(EventBus.java:756) [EventBus.class:?]
at net.minecraftforge.fml.common.eventhandler.EventBus.forgeBridge$post(EventBus.java:711) [EventBus.class:?]
at org.spongepowered.mod.event.SpongeToForgeEventFactory.createAndPostPlayerLoggedInEvent(SpongeToForgeEventFactory.java:891) [SpongeToForgeEventFactory.class:1.12.2-2838-7.3.1-RC4082]
at org.spongepowered.mod.event.SpongeToForgeEventFactory.createAndPostForgeEvent(SpongeToForgeEventFactory.java:276) [SpongeToForgeEventFactory.class:1.12.2-2838-7.3.1-RC4082]
at org.spongepowered.mod.event.SpongeModEventManager.post(SpongeModEventManager.java:339) [SpongeModEventManager.class:1.12.2-2838-7.3.1-RC4082]
at org.spongepowered.mod.event.SpongeModEventManager.extendedPost(SpongeModEventManager.java:450) [SpongeModEventManager.class:1.12.2-2838-7.3.1-RC4082]
at org.spongepowered.mod.event.SpongeModEventManager.post(SpongeModEventManager.java:419) [SpongeModEventManager.class:1.12.2-2838-7.3.1-RC4082]
at org.spongepowered.common.event.SpongeEventManager.post(SpongeEventManager.java:467) [SpongeEventManager.class:1.12.2-2838-7.3.1-RC4082]
at org.spongepowered.common.SpongeImpl.postEvent(SpongeImpl.java:249) [SpongeImpl.class:1.12.2-2838-7.3.1-RC4082]
at org.spongepowered.common.util.NetworkUtil.initializeConnectionToPlayer(NetworkUtil.java:384) [NetworkUtil.class:1.12.2-2838-7.3.1-RC4082]
at net.minecraft.server.management.PlayerList.initializeConnectionToPlayer(PlayerList.java:2907) [pl.class:?]
at net.minecraftforge.fml.common.network.handshake.NetworkDispatcher.completeServerSideConnection(NetworkDispatcher.java:255) [NetworkDispatcher.class:?]
at net.minecraftforge.fml.common.network.handshake.NetworkDispatcher.access$100(NetworkDispatcher.java:72) [NetworkDispatcher.class:?]
at net.minecraftforge.fml.common.network.handshake.NetworkDispatcher$1.update(NetworkDispatcher.java:205) [NetworkDispatcher$1.class:?]
at net.minecraft.network.NetworkManager.processReceivedPackets(NetworkManager.java:285) [gw.class:?]
at net.minecraft.network.NetworkSystem.networkTick(NetworkSystem.java:180) [oz.class:?]
at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:790) [MinecraftServer.class:?]
at net.minecraft.server.dedicated.DedicatedServer.updateTimeLightAndEntities(DedicatedServer.java:397) [nz.class:?]
at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:668) [MinecraftServer.class:?]
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:526) [MinecraftServer.class:?]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_291]
Caused by: java.lang.NoSuchMethodError: com.fantasticsource.mctools.potions.FantasticPotionEffect.func_100011_g()Z
at com.fantasticsource.mctools.component.CFantasticPotionEffect.write(CFantasticPotionEffect.java:35) ~[CFantasticPotionEffect.class:?]
at com.fantasticsource.dynamicstealth.component.CWeaponEntry.write(CWeaponEntry.java:42) ~[CWeaponEntry.class:?]
at com.fantasticsource.dynamicstealth.common.Network$ClientInitPacket.toBytes(Network.java:303) ~[Network$ClientInitPacket.class:?]
at net.minecraftforge.fml.common.network.simpleimpl.SimpleIndexedCodec.encodeInto(SimpleIndexedCodec.java:30) ~[SimpleIndexedCodec.class:?]
at net.minecraftforge.fml.common.network.simpleimpl.SimpleIndexedCodec.encodeInto(SimpleIndexedCodec.java:26) ~[SimpleIndexedCodec.class:?]
at net.minecraftforge.fml.common.network.FMLIndexedMessageToMessageCodec.encode(FMLIndexedMessageToMessageCodec.java:81) ~[FMLIndexedMessageToMessageCodec.class:?]
at io.netty.handler.codec.MessageToMessageCodec$1.encode(MessageToMessageCodec.java:67) ~[minecraft_server.1.12.2.jar:?]
at io.netty.handler.codec.MessageToMessageEncoder.write(MessageToMessageEncoder.java:88) ~[minecraft_server.1.12.2.jar:?]
... 33 more```
Server: Sponge-1.12.2-2838-7.3.1-RC4082
Forge: Forge-14.23.5.2855
Mod: FantasticLib-1.12.2.046
DynamicStealth-1.12.2.114
Unable to reproduce on SP, LAN, or dedicated server, but I was using a standard Forge server, not Sponge, so that could be a factor.
I suspect incompatibility with either Sponge, or with some other mod in the pack. You would have to attempt running with different combinations in order to isolate the compatibility issue, and decide what you want to exclude / change.
This issue involves a "missing" method. Note the quotes. The "missing" method is...
func_100011_g()Z
...which maps to the vanilla method...
PotionEffect.getIsPotionDurationMax()
My class in which this method is "missing" is FantasticPotionEffect, a class which extends the vanilla PotionEffect class, and therefore has the method in question.
Ie. something has gone very, very wrong, because this should never happen. Maybe re-download the FLib and DS jars first to make sure they didn't get corrupted somehow. If that doesn't fix the issue, go the route I mentioned before and disable mods and / or try running on a normal forge server to see which combinations break and which ones don't, then decide for yourself what to keep and what to scrap.
You can download my test sponge server to test: link
Since I am ending all MC mod development, I am no longer debugging other peoples' modpacks for them.
I am also not doing updates for any of my mods for the most part. Exceptions may (but do not necessarily) include fixes for common crashes (ie. multiple reports of the same crash error). Even for those, I will not fix them if they are a complex mod compat issue. I need to focus my efforts on my first attempt at a commercial game so I can take care of my finances.
This issue, with the information at hand, seems to be
- Rare
- A mod compat issue
- Probably complex to fix via code
- Very likely not the fault of any of my mods
...so I will likely not be taking action on this unless new information changes one or more of those, as this could potentially turn into a big time sink on my end if I start looking into the code.
As in my previous post, if you want to take the next step, that step is identifying which parts are not compatible with each other, by selectively disabling them (or in some cases changing their version). The easiest "parts" to test are mods. If you disable all mods other than those I've made and it runs fine, then you know that works, and can start re-adding other mods until you find the one that breaks it.
If it doesn't work even with only my mods enabled, try running on a normal forge server (not sponge).
If THAT doesn't work (though it certainly should), try running specifically on forge 14.23.5.2768