Can't join minecraft servers with 1.16.1 Fabric API - Invalid payload REGISTER!
SecretlyJealous opened this issue ยท 9 comments
Hi,
When using Fabric 1.16.1 and trying to connect to a server I get this error printed in console and am kicked immediately:
[00:33:57 ERROR]: Couldn't register custom payload
org.bukkit.plugin.messaging.ChannelNameTooLongException: Attempted to send a Plugin Message to a channel that was too large. The maximum length a channel may be is 32 chars (attempted 40 - 'fabric-screen-handler-api-v1:open_screen.
at org.bukkit.plugin.messaging.StandardMessenger.validateAndCorrectChannel(StandardMessenger.java:481) ~[patched_1.13.2.jar:git-Paper-8774c46f]
at org.bukkit.craftbukkit.v1_13_R2.entity.CraftPlayer.addChannel(CraftPlayer.java:1463) ~[patched_1.13.2.jar:git-Paper-8774c46f]
at net.minecraft.server.v1_13_R2.PlayerConnection.a(PlayerConnection.java:2605) ~[patched_1.13.2.jar:git-Paper-8774c46f]
at net.minecraft.server.v1_13_R2.PacketPlayInCustomPayload.a(SourceFile:45) ~[patched_1.13.2.jar:git-Paper-8774c46f]
at net.minecraft.server.v1_13_R2.PacketPlayInCustomPayload.a(SourceFile:9) ~[patched_1.13.2.jar:git-Paper-8774c46f]
at net.minecraft.server.v1_13_R2.PlayerConnectionUtils.lambda$ensureMainThread$0(PlayerConnectionUtils.java:15) ~[patched_1.13.2.jar:git-Paper-8774c46f]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) ~[?:1.8.0_242]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[?:1.8.0_242]
at net.minecraft.server.v1_13_R2.SystemUtils.a(SystemUtils.java:108) ~[patched_1.13.2.jar:git-Paper-8774c46f]
at net.minecraft.server.v1_13_R2.MinecraftServer.b(MinecraftServer.java:1018) ~[patched_1.13.2.jar:git-Paper-8774c46f]
at net.minecraft.server.v1_13_R2.DedicatedServer.b(DedicatedServer.java:439) ~[patched_1.13.2.jar:git-Paper-8774c46f]
at net.minecraft.server.v1_13_R2.MinecraftServer.a(MinecraftServer.java:940) ~[patched_1.13.2.jar:git-Paper-8774c46f]
at net.minecraft.server.v1_13_R2.MinecraftServer.run(MinecraftServer.java:837) ~[patched_1.13.2.jar:git-Paper-8774c46f]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_242]
[00:33:57 INFO]: reiseral lost connection: Invalid payload REGISTER!
From reading the error it seems to be related to the fabric api using a really long channel name.
So this is an issue with Spigot's handling of custom payload packets. They arbitrarily set a packet length limit of 32 characters in 1.13 (now 64 in 1.16). However md5 has refused to remove the limit. The vanilla protocol specifies no maximum length on the channel names.
If you are running any 1.15+ servers, I'd look at paper since they have a system property to increase the channel length limit.
Sorry we can't do anything about this.
Hi, I don't have spigot I use papermc even use papermc for bungeecord version and that issue is still there.... So it's not just spigot.
I do have server version 1.13.2 that uses viaversion to support up to 1.16.1
I'm also having the same "Invalid payload REGISTER!" when connecting to a server that uses PaperMC/Waterfall
I'm using fabric-loader-0.9.0+build.204-1.16.1 with fabric-api-0.15.0+build.379-1.16.1
the log
[16:48:56] [main/INFO]: Connecting to play.ccnetmc.com., 25565
[16:48:56] [Netty Epoll Client IO #0/WARN]: Received invalid identifier in minecraft:register: legacy:fml|hs (Non [a-z0-9/.-] character in path of location: legacy:fml|hs)
[16:48:56] [Netty Epoll Client IO #0/WARN]: Received invalid identifier in minecraft:register: legacy:floxiii|bungeebridge (Non [a-z0-9/.-] character in path of location: legacy:floxiii|bungeebridge)
[16:48:56] [main/WARN]: Received invalid identifier in minecraft:register: legacy:fml|hs (Non [a-z0-9/.-] character in path of location: legacy:fml|hs)
[16:48:56] [main/WARN]: Received invalid identifier in minecraft:register: legacy:floxiii|bungeebridge (Non [a-z0-9/.-] character in path of location: legacy:floxiii|bungeebridge)
[16:48:58] [main/INFO]: Environment: authHost='https://authserver.mojang.com', accountsHost='https://api.mojang.com', sessionHost='https://sessionserver.mojang.com', name='PROD'
[16:49:10] [main/INFO]: Stopping!
So server is sending invalid identifiers. I am pretty sure fabric now ignores those identifiers and just move on. Something else than fabric api is at fault in your case @kittokin
So server is sending invalid identifiers. I am pretty sure fabric now ignores those identifiers and just move on. Something else than fabric api is at fault in your case @kittokin
I only had fabric API in the mods folder when that error happened, and when I removed it from the folders i can join the server with no problem at all...
Yes, because fabric api tells server it can receive some packets and server thinks the message from fabric api is spam. The server is 1.13 and not intended for 1.16 or such clients, so it's the version bridge's problem.