Mekanism

Mekanism

111M Downloads

Configurator Causes Loss of Connection on Multiplayer

KittenKoder opened this issue ยท 20 comments

commented

Issue description:

Since 327 this error has been ruining the mod. Considering the other problems faced with the mod, this is game breaking and thus makes me wonder if the dev is even testing it. The connection breaks, no crash, just an error on the console:

  • has disconnected, reason: Internal Exception: io.netty.handler.codec.EncoderException: java.lang.IllegalArgumentException:

Steps to reproduce:

  1. Place pipes on multiplayer server.
  2. Use Configurator on said pipes.
  3. Break.

Version (make sure you are on the latest version before reporting):

Forge: forge-1.12.2-14.23.1.2555-universal.jar
Mekanism: 328 & 327
Other relevant version:

If a (crash)log is relevant for this issue, link it here: (It's almost always relevant)

[gist/pastebin/etc link here]

commented
  1. Leading with a passive aggressive insult is not going to win you any favours.
  2. Gonna need the full log; that single line is only 10% of the actual error.
commented

Getting the same on Forge 2556 and Mekanism 327. All the Mods 3 5.2
Happens with pipes placed previously in a working version too if that helps narrow it.

[09:22:16] [Netty Epoll Server IO #2/ERROR] [FML]: NetworkDispatcher exception
io.netty.handler.codec.EncoderException: java.lang.IllegalArgumentException: Don't know how to serialize BaseComponent{style=Style{hasParent=false, color=null, bold=null, italic=null, underlined=null, obfuscated=null, clickEvent=null, hoverEvent=null, insertion=null}, s$
blings=[TranslatableComponent{key='tooltip.configurator.modeChange', args=[], siblings=[], style=Style{hasParent=true, color=null, bold=null, italic=null, underlined=null, obfuscated=null, clickEvent=null, hoverEvent=null, insertion=null}}, TextComponent{text=' ', sibli$
gs=[], style=Style{hasParent=true, color=null, bold=null, italic=null, underlined=null, obfuscated=null, clickEvent=null, hoverEvent=null, insertion=null}}, TranslatableComponent{key='mekanism.pipe.connectiontype.pull', args=[], siblings=[], style=Style{hasParent=true, $
olor=null, bold=null, italic=null, underlined=null, obfuscated=null, clickEvent=null, hoverEvent=null, insertion=null}}]} as a Component
        at io.netty.handler.codec.MessageToByteEncoder.write(MessageToByteEncoder.java:125) ~[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.invokeWrite(AbstractChannelHandlerContext.java:730) ~[minecraft_server.1.12.2.jar:?]
        at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:816) ~[minecraft_server.1.12.2.jar:?]
        at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:723) ~[minecraft_server.1.12.2.jar:?]
        at net.minecraftforge.fml.common.network.handshake.NetworkDispatcher.write(NetworkDispatcher.java:549) ~[NetworkDispatcher.class:?]
        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.minecraft.network.NetworkManager$4.run(NetworkManager.java:245) [gw$4.class:?]
        at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163) [minecraft_server.1.12.2.jar:?]
        at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:403) [minecraft_server.1.12.2.jar:?]
        at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:304) [minecraft_server.1.12.2.jar:?]
        at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:858) [minecraft_server.1.12.2.jar:?]
        at java.lang.Thread.run(Thread.java:748) [?:1.8.0_144]
Caused by: java.lang.IllegalArgumentException: Don't know how to serialize BaseComponent{style=Style{hasParent=false, color=null, bold=null, italic=null, underlined=null, obfuscated=null, clickEvent=null, hoverEvent=null, insertion=null}, siblings=[TranslatableComponent$
key='tooltip.configurator.modeChange', args=[], siblings=[], style=Style{hasParent=true, color=null, bold=null, italic=null, underlined=null, obfuscated=null, clickEvent=null, hoverEvent=null, insertion=null}}, TextComponent{text=' ', siblings=[], style=Style{hasParent=$
rue, color=null, bold=null, italic=null, underlined=null, obfuscated=null, clickEvent=null, hoverEvent=null, insertion=null}}, TranslatableComponent{key='mekanism.pipe.connectiontype.pull', args=[], siblings=[], style=Style{hasParent=true, color=null, bold=null, italic=$
ull, underlined=null, obfuscated=null, clickEvent=null, hoverEvent=null, insertion=null}}]} as a Component
        at net.minecraft.util.text.ITextComponent$Serializer.serialize(ITextComponent.java:253) ~[hh$a.class:?]
        at net.minecraft.util.text.ITextComponent$Serializer.serialize(ITextComponent.java:43) ~[hh$a.class:?]
        at com.google.gson.internal.bind.TreeTypeAdapter.write(TreeTypeAdapter.java:81) ~[TreeTypeAdapter.class:?]
        at com.google.gson.Gson.toJson(Gson.java:669) ~[Gson.class:?]
        at com.google.gson.Gson.toJson(Gson.java:648) ~[Gson.class:?]
        at com.google.gson.Gson.toJson(Gson.java:603) ~[Gson.class:?]
        at com.google.gson.Gson.toJson(Gson.java:583) ~[Gson.class:?]
        at net.minecraft.util.text.ITextComponent$Serializer.func_150696_a(ITextComponent.java:265) ~[hh$a.class:?]
        at net.minecraft.network.PacketBuffer.func_179256_a(PacketBuffer.java:181) ~[gy.class:?]
        at net.minecraft.network.play.server.SPacketChat.func_148840_b(SourceFile:35) ~[in.class:?]
        at net.minecraft.network.NettyPacketEncoder.encode(NettyPacketEncoder.java:51) ~[ha.class:?]
        at net.minecraft.network.NettyPacketEncoder.encode(NettyPacketEncoder.java:12) ~[ha.class:?]
        at io.netty.handler.codec.MessageToByteEncoder.write(MessageToByteEncoder.java:107) ~[minecraft_server.1.12.2.jar:?]
        ... 18 more
commented

Would you prefer I list all the problems with Mekanism that have been plaguing multiplayer in the newest versions?

Have they been reported already? If not then of course I'd love you to report the issues! We're developers, not psychics.

When developers are more interested in adding more features rather than testing their own projects

Most of the commits in the past few months have been bug fixes, so I really don't know what you're on about there. That said, we have lives outside this project, so we'll work on what we want to work on, thanks very much.

then the developers are at fault for the errors and problems contained in said project.

I didn't say we weren't? I implied you're a terrible person because you lead with an insult instead of just describing the problem. What's more, your report was terrible as you didn't even include the full error line let alone post the full stack trace.

commented

Would you prefer I list all the problems with Mekanism that have been plaguing multiplayer in the newest versions? When developers are more interested in adding more features rather than testing their own projects, then the developers are at fault for the errors and problems contained in said project.

commented

Playing on the Official All The Mods 3 Server. Can confirm this has happened to me too.

commented

Thanks. It's already been fixed in dev, just needs another release, which is something I can't do myself at current.

commented

Well.. Links to cute cats do always help.. Altough I'm more a dog person :P

commented

@thiakil don't get yourself annoyed by one dude who does not know how to appreciate your work. There are thousands (or millions) of people enjoying your work (even if they do not collaborate passively here...)

I am experiencing the same issue with forge 14.23.0.2486-1.12.2 and latest mekanism build (1.12.2-9.4.2.328).
Tell me if you need anything further. Another log? A cookie? A link to cute catcontent?
Keep up the good work!

greetings
pflonk
(and those who play alongside me)

commented

Thank you!

Thats not an issue - i just replaced the Mod .jars directly in the server and client mod folders.
Curse/Twitch might be a great tool but it surely has understandable limits in some areas :)

I now tested it on mechanical and logistical pipes - works(TM) :)

Thank you!
--stephan

commented

Curse/Twitch might be a great tool but it surely has understandable limits in some areas

I actually don't mind in this case; because Mekanism is now hosted on curse, it falls under the condition that you can only put actual curse releases in packs, to prevent unsupported build / hacks etc.

commented

Yea, with limits i mean occurences like now - testing a dev build in a pack or so - never meant to be pushed on curse. Its not aimed at developers and testers in this regard and that is totally fine,

commented

Hi @thiakil,
is there an automated CI creating builds for these commits?

I am also on ATM 3 5.2 - 1.12.2 with forge 14.12.1.2556 and Mekanism(+Generators and Tools) 1.12.2-9.4.2.327 and would like to test this build as I am also seeing this annoyance - using the configurator works but disconnects me each time ;)

Having to use the EU2 pipes is annoying in that case.

Thank you very much for you work and time. I am enjoying Mekanism quite a bit.

-- stephan

commented

@stephan48 Currently there isn't anything automated set up. We have it on a list of stuff we want to do any time soon.

You can always break pipes with pickaxes in the mean time, that should also work and don't crash.

commented

Sadly i need to configure the pipes - that also caues the Issue. Breaking I always do with pickaxes.

Currently theres an issue with the host tehnut.info (for downloading Hwyla - http://tehnut.info/maven/mcp/mobius/waila/Hwyla/1.8.22-B37_1.12/Hwyla-1.8.22-B37_1.12.pom) down and I can't build it myself.

Can you maybe provide me with a build based on the 1.12.2 branch?

-- stephan

commented

I sadly do not have a copy of that hwyla version locally, maybe Thiakil has one. But, due to timezones, I do not expect a reply from him in the next couple hours.

commented

Hi :)

The host is online again - inital test on a mechanical pipe tells me it works - no longer disconnects me. Will try more advanced stuff now.

-- stephan

commented

I did try to push to master to trigger a build to Aidan's site, but looks like that's not working.

I did put a build on my maven the other day, but keep in mind Curse probably won't let you put it into a pack. http://maven.thiakil.com/Mekanism/1.12.2-9.4.3.329-thiakil/

commented

Thanks thiakil!

Copying in the mekanism.class from the original release fixed the problem for me.

No proper solution but worked :D

Best regards!

commented

@thiakil

Hi and thanks for the fix

I did put a build on my maven the other day, but keep in mind Curse probably won't let you put it into a pack. http://maven.thiakil.com/Mekanism/1.12.2-9.4.3.329-thiakil/

the things is i cant use it cause SodiumCraft wont recognize this as a mekanism 9.4 and above version

[02:19:59] [main/FATAL]: The mod sodiumcraft (SodiumCraft) requires mod versions [mekanism@[9.4,)] to be available

i tried hard and copied in some files like mcmod.info from the original :/ but couldnt fix.

any ideas?

best regards and keep on :)

commented

any ideas?

Looks like an issue for them. Possibly a forge issue, but idk on that. The only change I made was that the version reported to the forge system now contains the build number, where it did not previously. So potentially Forge is failing to realise 9.4.x.y is still > 9.4