CardboardPowered / cardboard

The Bukkit/Spigot/Paper API implementation for Fabric
https://cardboardpowered.org
GNU General Public License v3.0
988 stars 57 forks source link

Fabric 1.16.4 Geyser and FloodGate don't allow Bedrock players to join #95

Open aPersonIsHere opened 3 years ago

aPersonIsHere commented 3 years ago

List of Mods used on 1.16.4 Fabric Server: image

CONSOLE: ... [03:35:30] [Worker-Main-14/INFO]: Preparing spawn area: 90% [03:35:30] [Worker-Main-10/INFO]: Preparing spawn area: 98% [03:35:30] [Server thread/INFO]: Time elapsed: 8084 ms [03:35:30] [Server thread/INFO]: [floodgate-bukkit] Enabling floodgate-bukkit v1.0-SNAPSHOT [03:35:30] [Server thread/FATAL]: [floodgate-bukkit] Failed to inject the packet listener! java.lang.NullPointerException: null at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_211] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_211] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_211] at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_211] at org.geysermc.floodgate.util.ReflectionUtil.invokeStatic(ReflectionUtil.java:152) ~[?:?] at org.geysermc.floodgate.injector.BukkitInjector.getServerConnection(BukkitInjector.java:109) ~[?:?] at org.geysermc.floodgate.injector.BukkitInjector.inject(BukkitInjector.java:24) ~[?:?] at org.geysermc.floodgate.BukkitPlugin.onEnable(BukkitPlugin.java:42) ~[?:?] at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:263) ~[Bukkit4Fabric-1.16.4.jar:?] at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:351) ~[Bukkit4Fabric-1.16.4.jar:?] at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:480) ~[Bukkit4Fabric-1.16.4.jar:?] at org.bukkit.craftbukkit.CraftServer.enablePlugin(CraftServer.java:450) ~[Bukkit4Fabric-1.16.4.jar:?] at org.bukkit.craftbukkit.CraftServer.enablePlugins(CraftServer.java:381) ~[Bukkit4Fabric-1.16.4.jar:?] at net.minecraft.server.MinecraftServer.method_3735(MinecraftServer.java:2037) ~[intermediary-minecraft_server.jar:?] at net.minecraft.class_3176.method_3823(class_3176.java:179) ~[intermediary-minecraft_server.jar:?] at net.minecraft.server.MinecraftServer.method_29741(MinecraftServer.java:645) ~[intermediary-minecraft_server.jar:?] at net.minecraft.server.MinecraftServer.method_29739(MinecraftServer.java:257) ~[intermediary-minecraft_server.jar:?] at java.lang.Thread.run(Thread.java:748) [?:1.8.0_211] [03:35:30] [Server thread/INFO]: [floodgate-bukkit] Disabling floodgate-bukkit v1.0-SNAPSHOT [03:35:30] [Server thread/FATAL]: Error occurred while enabling floodgate-bukkit v1.0-SNAPSHOT (Is it up to date?) org.bukkit.plugin.IllegalPluginAccessException: Plugin attempted to register floodgate-bukkit v1.0-SNAPSHOT while not enabled at org.bukkit.plugin.SimplePluginManager.registerEvents(SimplePluginManager.java:612) ~[Bukkit4Fabric-1.16.4.jar:?] at org.geysermc.floodgate.BukkitPlugin.onEnable(BukkitPlugin.java:55) ~[?:?] at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:263) ~[Bukkit4Fabric-1.16.4.jar:?] at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:351) ~[Bukkit4Fabric-1.16.4.jar:?] at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:480) ~[Bukkit4Fabric-1.16.4.jar:?] at org.bukkit.craftbukkit.CraftServer.enablePlugin(CraftServer.java:450) ~[Bukkit4Fabric-1.16.4.jar:?] at org.bukkit.craftbukkit.CraftServer.enablePlugins(CraftServer.java:381) ~[Bukkit4Fabric-1.16.4.jar:?] at net.minecraft.server.MinecraftServer.method_3735(MinecraftServer.java:2037) ~[intermediary-minecraft_server.jar:?] at net.minecraft.class_3176.method_3823(class_3176.java:179) ~[intermediary-minecraft_server.jar:?] at net.minecraft.server.MinecraftServer.method_29741(MinecraftServer.java:645) ~[intermediary-minecraft_server.jar:?] at net.minecraft.server.MinecraftServer.method_29739(MinecraftServer.java:257) ~[intermediary-minecraft_server.jar:?] at java.lang.Thread.run(Thread.java:748) [?:1.8.0_211] [03:35:30] [Server thread/INFO]: [Geyser-Spigot] Enabling Geyser-Spigot v1.2.0-SNAPSHOT [03:35:31] [Server thread/INFO]: [Geyser-Spigot] **

[03:35:31] [Server thread/INFO]: [Geyser-Spigot] Loading Geyser version 1.2.0-SNAPSHOT (git-master-798ae34)

[03:35:31] [Server thread/INFO]: [Geyser-Spigot] ** [03:36:14] [Server thread/WARN]: [Geyser-Spigot] Loaded class {0} from {1} which is not a depend, softdepend or loadbefore of this plugin. [03:36:14] [Server thread/INFO]: [STDERR]: SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". [03:36:14] [Server thread/INFO]: [STDERR]: SLF4J: Defaulting to no-operation (NOP) logger implementation [03:36:14] [Server thread/INFO]: [STDERR]: SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details. [03:36:14] [Network Listener - #1/INFO]: [Geyser-Spigot] Started Geyser on 51.81.52.27:25624 [03:36:14] [Server thread/INFO]: [Geyser-Spigot] Done (43.234s)! Run /geyser help for help! ...

Anyways. This might just be an issue with a mod; I tried to get a Bedrock player to join the server. They are able to connect, but are forcefully not able to actually initiate into the world itself. The log generates this error when a Bedrock player tries to connect.

ERROR LOG: ... [03:57:27] [Server thread/INFO]: There are 0 of a max of 20 players online: [03:57:35] [Network Listener - #1/INFO]: [Geyser-Spigot] /99.155.248.56:52701 tried to connect! [03:57:36] [Network Listener - #1/INFO]: [Geyser-Spigot] Player connected with username DrHelper007 [03:57:39] [Network Listener - #1/INFO]: [Geyser-Spigot] Attempting to login using floodgate mode... authentication will be encrypted. [03:57:39] [Thread-84/INFO]: [Geyser-Spigot] Loaded Floodgate key! [03:57:40] [nioEventLoopGroup-2-2/INFO]: [Geyser-Spigot] DrHelper007 (logged in as: DrHelper007) has connected to remote java server on address [03:57:40] [Netty Epoll Server IO #18/INFO]: Failed to sent packet io.netty.handler.codec.DecoderException: The received string length is longer than maximum allowed (462 > 255) at net.minecraft.class_2540.method_10800(class_2540.java:410) ~[intermediary-minecraft_server.jar:?] at net.minecraft.class_2889.method_11053(class_2889.java:33) ~[intermediary-minecraft_server.jar:?] at net.minecraft.class_2543.decode(class_2543.java:40) ~[intermediary-minecraft_server.jar:?] at io.netty.handler.codec.ByteToMessageDecoder.decodeRemovalReentryProtection(ByteToMessageDecoder.java:489) ~[intermediary-minecraft_server.jar:?] at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:428) ~[intermediary-minecraft_server.jar:?] at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:265) ~[intermediary-minecraft_server.jar:?] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [intermediary-minecraft_server.jar:?] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [intermediary-minecraft_server.jar:?] at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) [intermediary-minecraft_server.jar:?] at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310) [intermediary-minecraft_server.jar:?] at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:284) [intermediary-minecraft_server.jar:?] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [intermediary-minecraft_server.jar:?] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [intermediary-minecraft_server.jar:?] at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) [intermediary-minecraft_server.jar:?] at net.minecraft.class_3238.channelRead(class_3238.java:591) [intermediary-minecraft_server.jar:?] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [intermediary-minecraft_server.jar:?] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [intermediary-minecraft_server.jar:?] at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) [intermediary-minecraft_server.jar:?] at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286) [intermediary-minecraft_server.jar:?] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [intermediary-minecraft_server.jar:?] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [intermediary-minecraft_server.jar:?] at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) [intermediary-minecraft_server.jar:?] at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1434) [intermediary-minecraft_server.jar:?] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [intermediary-minecraft_server.jar:?] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [intermediary-minecraft_server.jar:?] at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:965) [intermediary-minecraft_server.jar:?] at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:808) [intermediary-minecraft_server.jar:?] at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:408) [intermediary-minecraft_server.jar:?] at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:308) [intermediary-minecraft_server.jar:?] at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884) [intermediary-minecraft_server.jar:?] at java.lang.Thread.run(Thread.java:748) [?:1.8.0_211] [03:57:40] [nioEventLoopGroup-2-2/WARN]: [Geyser-Spigot] Downstream packet error! Invalid packet id: 25 [03:57:40] [nioEventLoopGroup-2-2/INFO]: [Geyser-Spigot] DrHelper007 has disconnected from remote Java server on address because of Connection closed. [03:57:40] [Network Listener - #1/INFO]: [Geyser-Spigot] Bedrock user with ip: / has disconnected for reason CLOSED_BY_REMOTE_PEER [03:58:14] [Server thread/INFO]: There are 0 of a max of 20 players online:

What I'm saying tldr: GeyserMC (plugin) and FloodGate plugin are having issues in 1.16.4 Fabric Server.

aPersonIsHere commented 3 years ago

ALSO, I've configured the GeyserMC and Floodgate configurations to work fine on another normal Bukkit server, so the config being weird is not a valid reason for the issue's existence.

illumeleet commented 3 years ago

You can't join fabric server with mods from bedrock even using Geyser. I believe this won't be fixed ever & is not bukkitfabric or Geyser issue.

Blue-Beaker commented 3 years ago

You can't join fabric server with mods from bedrock even using Geyser. I believe this won't be fixed ever & is not bukkitfabric or Geyser issue.

Geyser has a port that is compatible with fabric server without any mods that needs clientside. that means serverside mod will work. I don't know whether bukkit geyser support fabric serverside mods, however.

Setadokalo commented 3 years ago

I can reproduce this with just the Fabric API, cardboard, and floodgate - so it definitely does not look like a mod compatibility issue. Having server-side mods with floodgate would be very nice, hopefully this can be fixed.