AtomicStryker's Battle Towers

AtomicStryker's Battle Towers

23M Downloads

[FinderCompass 1.10.2] 'client' crash upon entering an rftools dimension

siccaxe opened this issue ยท 11 comments

commented
`[01:14:50] [Netty Server IO #6/ERROR]: There was a critical exception handling a packet on channel AS_FC
java.lang.NoSuchMethodError: mcjty.lib.compat.CompatMapGenStructure.getClosestStrongholdPos(Lnet/minecraft/world/gen/structure/MapGenStructure;Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;)Lnet/minecraft/util/math/BlockPos;
	at mcjty.rftoolsdim.dimensions.world.GenericChunkGenerator.clGetStrongholdGen(GenericChunkGenerator.java:596) ~[GenericChunkGenerator.class:?]
	at mcjty.lib.compat.CompatChunkGenerator.func_180513_a(CompatChunkGenerator.java:17) ~[CompatChunkGenerator.class:?]
	at net.minecraft.world.gen.ChunkProviderServer.func_180513_a(ChunkProviderServer.java:304) ~[lr.class:?]
	at atomicstryker.findercompass.common.network.StrongholdPacket.readBytes(StrongholdPacket.java:81) ~[StrongholdPacket.class:?]
	at atomicstryker.findercompass.common.network.NetworkHelper$ChannelCodec.decodeInto(NetworkHelper.java:194) ~[NetworkHelper$ChannelCodec.class:?]
	at atomicstryker.findercompass.common.network.NetworkHelper$ChannelCodec.decodeInto(NetworkHelper.java:173) ~[NetworkHelper$ChannelCodec.class:?]
	at net.minecraftforge.fml.common.network.FMLIndexedMessageToMessageCodec.decode(FMLIndexedMessageToMessageCodec.java:103) ~[FMLIndexedMessageToMessageCodec.class:?]
	at net.minecraftforge.fml.common.network.FMLIndexedMessageToMessageCodec.decode(FMLIndexedMessageToMessageCodec.java:40) ~[FMLIndexedMessageToMessageCodec.class:?]
	at io.netty.handler.codec.MessageToMessageCodec$2.decode(MessageToMessageCodec.java:81) ~[MessageToMessageCodec$2.class:4.0.23.Final]
	at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:89) ~[MessageToMessageDecoder.class:4.0.23.Final]
	at io.netty.handler.codec.MessageToMessageCodec.channelRead(MessageToMessageCodec.java:111) ~[MessageToMessageCodec.class:4.0.23.Final]
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:333) ~[AbstractChannelHandlerContext.class:4.0.23.Final]
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:319) ~[AbstractChannelHandlerContext.class:4.0.23.Final]
	at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:787) ~[DefaultChannelPipeline.class:4.0.23.Final]
	at io.netty.channel.embedded.EmbeddedChannel.writeInbound(EmbeddedChannel.java:169) ~[EmbeddedChannel.class:4.0.23.Final]
	at net.minecraftforge.fml.common.network.internal.FMLProxyPacket.func_148833_a(FMLProxyPacket.java:100) [FMLProxyPacket.class:?]
	at net.minecraft.network.NetworkManager.channelRead0(NetworkManager.java:149) [eo.class:?]
	at net.minecraft.network.NetworkManager.channelRead0(NetworkManager.java:51) [eo.class:?]
	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105) [SimpleChannelInboundHandler.class:4.0.23.Final]
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:333) [AbstractChannelHandlerContext.class:4.0.23.Final]
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:319) [AbstractChannelHandlerContext.class:4.0.23.Final]
	at net.minecraftforge.fml.common.network.handshake.NetworkDispatcher.handleServerSideCustomPacket(NetworkDispatcher.java:446) [NetworkDispatcher.class:?]
	at net.minecraftforge.fml.common.network.handshake.NetworkDispatcher.channelRead0(NetworkDispatcher.java:269) [NetworkDispatcher.class:?]
	at net.minecraftforge.fml.common.network.handshake.NetworkDispatcher.channelRead0(NetworkDispatcher.java:73) [NetworkDispatcher.class:?]
	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105) [SimpleChannelInboundHandler.class:4.0.23.Final]
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:333) [AbstractChannelHandlerContext.class:4.0.23.Final]
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:319) [AbstractChannelHandlerContext.class:4.0.23.Final]
	at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:787) [DefaultChannelPipeline.class:4.0.23.Final]
	at io.netty.channel.local.LocalChannel.finishPeerRead(LocalChannel.java:326) [LocalChannel.class:4.0.23.Final]
	at io.netty.channel.local.LocalChannel.access$400(LocalChannel.java:45) [LocalChannel.class:4.0.23.Final]
	at io.netty.channel.local.LocalChannel$5.run(LocalChannel.java:312) [LocalChannel$5.class:4.0.23.Final]
	at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:380) [SingleThreadEventExecutor.class:4.0.23.Final]
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:357) [NioEventLoop.class:4.0.23.Final]
	at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:116) [SingleThreadEventExecutor$2.class:4.0.23.Final]
	at java.lang.Thread.run(Thread.java:745) [?:1.8.0_25]`

I've posted to their github as well. removing FinderCompass stops the errors and the crashes. Full log if needed.

commented

Are you perhaps embedding compatlayer in your own mod? If you do then please don't as that a) defeats the entire purpose of compatlayer, b) causes problems in other mods

commented

Completely unrelated to Finder Compass

commented

Please don't take this the wrong way (tone is a hard thing to carry in a text measage) but how can it be unrelated if the problem stopped upon removing your mod?

Not saying it's Finder Compass' fault, but surely it can't be unrelated. If you have the time, could you let me know how you got to that conclusion?

Thanks! Really like all your work!

commented

Finder compass calls vanilla code. That's where my "responsibility" ends, assuming i didn't feed vanilla MC some broken inputs (this is a reading only method). Now, there's this OTHER mods "mcjty.lib" and "mcjty.rftoolsdim" which alter vanilla behaviour and crash. Thus, unrelated to Finder Compass, other than Finder Compass making the original request leading to the crash. Any mod or vanilla function doing the same would crash too. Try launching an Ender Orb ... whatever the mc item was that detects strongholds.

commented

Ok i don't presume to tell you how your mod works but if you generate chunks you are very much altering vanilla. From my outside point of view it looks like he may be using incompatible versions of your dimensions mod and the lib mod. Have him give you the full logfile with the mod versions in it.

commented

Or to clarify that more. I don't use ASM or anything special

commented

Well technically every mod alters vanilla of course. But rftools dimensions actually doesn't alter them more then any other mod that adds blocks. There is a clean api to add dimensions which is used by my mod

commented

Both mods are the latest version from CurseForge.

I did try to use an eye of ender in the dimension and found that I couldn't, nothing happens in game. When I attempt it, I get a similar error in the log as before (without the crash):

[22:38:42] [Server thread/FATAL]: Error executing task
java.util.concurrent.ExecutionException: java.lang.NoSuchMethodError: mcjty.lib.compat.CompatMapGenStructure.getClosestStrongholdPos(Lnet/minecraft/world/gen/structure/MapGenStructure;Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;)Lnet/minecraft/util/math/BlockPos;

Thanks for taking the time Atomic, I'll let this thread die and head back to McJty's, hopefully he can sort it out and i'll be able to use both mods going forward.

(edit: guess I'm a liar, new version of compatlayer uploaded 3 days before this post had patched the bug. timing's everything I guess)

commented

Thanks for the details, makes perfect sense. I'll try what you recommended and see what happens.

commented

McJtyLib and CompatLayer do not alter vanilla code in any way. They are just libraries and if nothing calls functions from those libraries then nothing happens. Then again if you don't use CompatLayer in finder compass then I have no clue what's going on either