Code Monkey home page Code Monkey logo

floodgate's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

floodgate's Issues

1.12.2 server running ViaVersion cant be joined by Java Edition clients on 1.15.2.

I am running a server with Mohist 1.12.2. The server is running ViaVersion to provide support for 1.15.2 aswell. Although I'm not sure this is the problem, I might as well add it.

Floodgate fails to allow Java clients to join or see the MOTD, spitting this error out: `> [21:31:49 WARN]: Failed to initialize a channel. Closing: [id: 0x1adb1a2f, L:/172.18.0.4:25610 - R:/73.140.237.254:51650]
java.lang.ExceptionInInitializerError: null
at org.geysermc.floodgate.injector.BukkitInjector$2$1.initChannel(BukkitInjector.java:72) ~[?:?]
at io.netty.channel.ChannelInitializer.initChannel(ChannelInitializer.java:113) [minecraft_server.1.12.2.jar:?]
at io.netty.channel.ChannelInitializer.handlerAdded(ChannelInitializer.java:105) [minecraft_server.1.12.2.jar:?]
at io.netty.channel.DefaultChannelPipeline.callHandlerAdded0(DefaultChannelPipeline.java:597) [minecraft_server.1.12.2.jar:?]
at io.netty.channel.DefaultChannelPipeline.access$000(DefaultChannelPipeline.java:44) [minecraft_server.1.12.2.jar:?]
at io.netty.channel.DefaultChannelPipeline$3.run(DefaultChannelPipeline.java:220) [minecraft_server.1.12.2.jar:?]
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_242]
Caused by: java.lang.NullPointerException
at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:84) ~[PluginClassLoader.class:1.12.2-8077ffd]
at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:76) ~[PluginClassLoader.class:1.12.2-8077ffd]
at java.lang.ClassLoader.loadClass(ClassLoader.java:419) ~[?:1.8.0_242]
at java.lang.ClassLoader.loadClass(ClassLoader.java:352) ~[?:1.8.0_242]
at java.lang.Class.forName0(Native Method) ~[?:1.8.0_242]
at java.lang.Class.forName(Class.java:348) ~[?:1.8.0_242]
at red.mohist.bukkit.nms.proxy.ProxyClass.forName(ProxyClass.java:24) ~[ProxyClass.class:1.12.2-8077ffd]
at red.mohist.bukkit.nms.proxy.ProxyClass.forName(ProxyClass.java:20) ~[ProxyClass.class:1.12.2-8077ffd]
at org.geysermc.floodgate.util.ReflectionUtil.getClass(ReflectionUtil.java:23) ~[?:?]
at org.geysermc.floodgate.util.ReflectionUtil.getPrefixedClass(ReflectionUtil.java:18) ~[?:?]
at org.geysermc.floodgate.PacketHandler.(PacketHandler.java:169) ~[?:?]
... 11 more

[21:31:49 WARN]: Failed to initialize a channel. Closing: [id: 0x98ed2661, L:/172.18.0.4:25610 - R:/73.140.237.254:51656]
java.lang.NoClassDefFoundError: Could not initialize class org.geysermc.floodgate.PacketHandler
at org.geysermc.floodgate.injector.BukkitInjector$2$1.initChannel(BukkitInjector.java:72) ~[?:?]
at io.netty.channel.ChannelInitializer.initChannel(ChannelInitializer.java:113) [minecraft_server.1.12.2.jar:?]
at io.netty.channel.ChannelInitializer.handlerAdded(ChannelInitializer.java:105) [minecraft_server.1.12.2.jar:?]
at io.netty.channel.DefaultChannelPipeline.callHandlerAdded0(DefaultChannelPipeline.java:597) [minecraft_server.1.12.2.jar:?]
at io.netty.channel.DefaultChannelPipeline.access$000(DefaultChannelPipeline.java:44) [minecraft_server.1.12.2.jar:?]
at io.netty.channel.DefaultChannelPipeline$PendingHandlerAddedTask.execute(DefaultChannelPipeline.java:1387) [minecraft_server.1.12.2.jar:?]
at io.netty.channel.DefaultChannelPipeline.callHandlerAddedForAllHandlers(DefaultChannelPipeline.java:1122) [minecraft_server.1.12.2.jar:?]
at io.netty.channel.DefaultChannelPipeline.invokeHandlerAddedIfNeeded(DefaultChannelPipeline.java:647) [minecraft_server.1.12.2.jar:?]
at io.netty.channel.AbstractChannel$AbstractUnsafe.register0(AbstractChannel.java:506) [minecraft_server.1.12.2.jar:?]
at io.netty.channel.AbstractChannel$AbstractUnsafe.access$200(AbstractChannel.java:419) [minecraft_server.1.12.2.jar:?]
at io.netty.channel.AbstractChannel$AbstractUnsafe$1.run(AbstractChannel.java:478) [minecraft_server.1.12.2.jar:?]
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_242]
[21:31:49 WARN]: An exception 'java.lang.NullPointerException' [enable DEBUG level for full stacktrace] was thrown by a user handler's exceptionCaught() method while handling the following exception:
java.lang.NullPointerException: null
at net.minecraft.network.NetworkManager.closeChannel(NetworkManager.java:313) ~[gw.class:?]
at net.minecraft.network.NetworkManager.channelInactive(NetworkManager.java:132) ~[gw.class:?]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:245) [minecraft_server.1.12.2.jar:?]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:231) [minecraft_server.1.12.2.jar:?]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelInactive(AbstractChannelHandlerContext.java:224) [minecraft_server.1.12.2.jar:?]
at io.netty.handler.codec.ByteToMessageDecoder.channelInputClosed(ByteToMessageDecoder.java:360) [minecraft_server.1.12.2.jar:?]
at io.netty.handler.codec.ByteToMessageDecoder.channelInactive(ByteToMessageDecoder.java:325) [minecraft_server.1.12.2.jar:?]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:245) [minecraft_server.1.12.2.jar:?]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:231) [minecraft_server.1.12.2.jar:?]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelInactive(AbstractChannelHandlerContext.java:224) [minecraft_server.1.12.2.jar:?]
at io.netty.handler.codec.ByteToMessageDecoder.channelInputClosed(ByteToMessageDecoder.java:360) [minecraft_server.1.12.2.jar:?]
at io.netty.handler.codec.ByteToMessageDecoder.channelInactive(ByteToMessageDecoder.java:325) [minecraft_server.1.12.2.jar:?]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:245) [minecraft_server.1.12.2.jar:?]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:231) [minecraft_server.1.12.2.jar:?]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelInactive(AbstractChannelHandlerContext.java:224) [minecraft_server.1.12.2.jar:?]
at io.netty.channel.ChannelInboundHandlerAdapter.channelInactive(ChannelInboundHandlerAdapter.java:75) [minecraft_server.1.12.2.jar:?]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:245) [minecraft_server.1.12.2.jar:?]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:231) [minecraft_server.1.12.2.jar:?]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelInactive(AbstractChannelHandlerContext.java:224) [minecraft_server.1.12.2.jar:?]
at io.netty.channel.ChannelInboundHandlerAdapter.channelInactive(ChannelInboundHandlerAdapter.java:75) [minecraft_server.1.12.2.jar:?]
at io.netty.handler.timeout.IdleStateHandler.channelInactive(IdleStateHandler.java:278) [minecraft_server.1.12.2.jar:?]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:245) [minecraft_server.1.12.2.jar:?]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:231) [minecraft_server.1.12.2.jar:?]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelInactive(AbstractChannelHandlerContext.java:224) [minecraft_server.1.12.2.jar:?]
at io.netty.channel.DefaultChannelPipeline$HeadContext.channelInactive(DefaultChannelPipeline.java:1329) [minecraft_server.1.12.2.jar:?]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:245) [minecraft_server.1.12.2.jar:?]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:231) [minecraft_server.1.12.2.jar:?]
at io.netty.channel.DefaultChannelPipeline.fireChannelInactive(DefaultChannelPipeline.java:908) [minecraft_server.1.12.2.jar:?]
at io.netty.channel.AbstractChannel$AbstractUnsafe$7.run(AbstractChannel.java:744) [minecraft_server.1.12.2.jar:?]
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_242]`

Any help?

Duplicate handler name

This is tested with:
Paper: git-Paper-314
Geyser: build #197
Floodgate-bukkit: development build #22
To reproduce:
Start the server, wait until it fully loads and then reload the server
There shoudln't be an error message but this comes up.
https://pastebin.com/N263GCFF

Bedrock display username not updating

Hello, I'm having an issue with the Bedrock username not syncing up properly with the server. My current setup is GeyserMC and Floodgate on a Waterfall server, and I do not have Floodgate installed on individual Paper servers.

When the Minecraft Bedrock username is changed either via changing Microsoft Gamertag or by changing the prefix configuraiton, the username is updated on the Waterfall server and partially on the Paper server, but the Paper server doesn't display the new name. I tried clearing user data in the Paper server by deleting playerdata for the bedrock player, but the game still displays the old name in the chat, over their head, and for the tab-completion.

The symptoms only exist for bedrock players who joined the game before either they changed their gamertag, or the prefix configuration was modified. The following does not reflect the new username:

  • Name displayed over the character
  • Name used in chat (and other game messages, e.g. death messages)
  • Name shown in tab complete suggestion

This inconsistency causes issues when running commands with some other plugins, such as LuckPerms and LiteBans. These plugins rely on using the updated username, but the tab complete and the failure to know the name changed will make the user rather unmentionable.

This issue does not exist on Paper servers the player hasn't joined before their username was changed.

Changing the username prefix doesn't seem to work properly

Describe the bug
Changing username-prefix in Floodgate's config.yml doesn't seem to work properly, at least not when you change it to "!"; Bedrock players that join after changing the setting still have the default prefix (*).

To Reproduce

  1. Boot the server with Geyser-Spigot and floodgate-bukkit.
  2. Stop the server.
  3. Configure the plugins to work as intended, and also change username-prefix in Floodgate's config.yml from "*" to "!".
  4. Start the server.
  5. Try to join the server via Bedrock Edition; you should find that you eventually get a sequence of messages like the following, which makes the prefix change initially seem to work properly before reverting back to the default:
[17:09:02 INFO]: [floodgate-bukkit] Added !KeeganTurner 00000000-0000-0000-0009-01fc62f6ed75
[17:09:02 INFO]: UUID of player *KeeganTurner is 00000000-0000-0000-0009-01fc62f6ed75
[17:09:03 INFO]: [Geyser-Spigot] Registering bedrock skin for *KeeganTurner (00000000-0000-0000-0009-01fc62f6ed75)
[17:09:03 INFO]: [Geyser-Spigot] Unable to load bedrock skin for '*KeeganTurner' as they are likely using a customised skin
[17:09:03 ERROR]: [BentoBox] Could not save JSON file: Names *KeeganTurner.json plugins\BentoBox\database\Names\*KeeganTurner.json (The filename, directory name, or volume label syntax is incorrect)
[17:09:03 INFO]: *KeeganTurner joined the game
[17:09:03 INFO]: *KeeganTurner[/0:0:0:0:0:0:0:1:65245] logged in with entity id 1247 at ([world]0.5, 257.0, 0.5)
[17:09:03 INFO]: [Geyser-Spigot] Spawned player at 0.5 257 0.5

Expected behavior
It was expected that changing username-prefix would automatically make all Bedrock players join with the prefix that was specified.

Server Version
Purpur version git-Purpur-770 (MC: 1.16.3) (Implementing API version 1.16.3-R0.1-SNAPSHOT)

Floodgate/Geyser Version
Floodgate: floodgate-bukkit version 1.0-SNAPSHOT, build 25, development branch
Geyser: Geyser-Spigot version 1.1.0, build 403, master branch

Minecraft: Bedrock Edition Version
1.16.40

Additional Context
I need to change the prefix for compatibility reasons; several plugins (in my case, BentoBox and Dynmap), like to save files named after each player, which is problematic with Floodgate's default prefix, as * is a forbidden character in file names on Windows. Here's a Geyser dump in case it'll be useful.

Player cannot link their accounts

I have had her enter /linkaccount username on Java, then /linkaccount username #### on Bedrock. She gets an error that this needs to be initiated run a Java account, even though per console I saw her enter them. I've also tried sending commands via sudo. Tried with and without the asterisk prepend (still unsure which is correct)

This linking has worked for other players. I tested on my own via unlinking and then joining from Windows 10 Bedrock (her platform). One recent time she attempted, the error instead of the above was: you don't have permissions to run this command. So I've explicitly allowed floodgate.linkaccount & floodgate.unlinkaccount in LuckPerms for the default group.

The one oddity in my testing with her process & mine: She cannot be logged into both Java and Bedrock accounts simultaneously. I was able to while unlinked. She gets kicked on the other account upon logging in. Her username for both is the same, as is both my Java and Bedrock accounts.

Floodgate-bukkit not working properly

31.08 21:41:38 [Server] Server thread/FATAL Error occurred while disabling floodgate-bukkit v1.0-SNAPSHOT (Is it up to date?)
31.08 21:41:38 [Server] INFO java.lang.NullPointerException: null
31.08 21:41:38 [Server] INFO at org.geysermc.floodgate.BukkitPlugin.onDisable(BukkitPlugin.java:68) ~[?:?]
31.08 21:41:38 [Server] INFO at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:265) ~[Bukkit4Fabric-1.16.2%20(2).jar:?]
31.08 21:41:38 [Server] INFO at org.bukkit.plugin.java.JavaPluginLoader.disablePlugin(JavaPluginLoader.java:376) ~[Bukkit4Fabric-1.16.2%20(2).jar:?]
31.08 21:41:38 [Server] INFO at org.bukkit.plugin.SimplePluginManager.disablePlugin(SimplePluginManager.java:501) ~[Bukkit4Fabric-1.16.2%20(2).jar:?]
31.08 21:41:38 [Server] INFO at org.geysermc.floodgate.BukkitPlugin.onEnable(BukkitPlugin.java:47) ~[?:?]

I have the latest version of floodgate. I'm playing in 1.16.2.

To Reproduce
Load a 1.16.2 game with geyser and floodgate
Expected behavior
It says it didn't load and doesn't generate any files.

Server Version
his server is running Bukkit4Fabric version git-Bukkit4Fabric-UNKNOWN (MC: 1.16.2) (Implementing API version 1.16.2-R0.1-SNAPSHOT)

Geyser Version
1.1.0 (git-master-2f9ff0c) (Java: 1.16.2, Bedrock: 1.16.0 - 1.16.100). I am using craft bukkit/spigot

Minecraft: Bedrock Edition Version
None(It would be 1.16.20)

java.lang.NullPointerException onDisable onEnable onPreLogin

java.lang.NullPointerException: null
at org.geysermc.floodgate.BungeePlugin.lambda$onPreLogin$0(BungeePlugin.java:87) ~[?:?]
at net.md_5.bungee.scheduler.BungeeTask.run(BungeeTask.java:66) ~[avalanche.jar:git-Avalanche-29]
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) ~[?:1.8.0_181]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) ~[?:1.8.0_181]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_181]

Is being sent to my console every now and then.

Task BungeeTask(sched=net.md_5.bungee.scheduler.BungeeScheduler@70f02c32, id=74, owner=org.geysermc.floodgate.BungeePlugin@e1e2e5e, task=org.geysermc.floodgate.BungeePlugin$$Lambda$668/1195010648@1f93c4ad, delay=0, period=0, running=true) encountered an exception

Also this is thrown, everytime the server closes or opens

java.lang.NullPointerException: null
at org.geysermc.floodgate.BungeePlugin.onDisable(BungeePlugin.java:62) ~[?:?]
at net.md_5.bungee.BungeeCord.independentThreadStop(BungeeCord.java:473) ~[avalanche.jar:git-Avalanche-29]
at net.md_5.bungee.BungeeCord.access$000(BungeeCord.java:100) ~[avalanche.jar:git-Avalanche-29]
at net.md_5.bungee.BungeeCord$5.run(BungeeCord.java:413) ~[avalanche.jar:git-Avalanche-29]

This happens everytime ANY Player tries to log in, Java aswell as Bedrock and they get timed out.

Everything works fine with only Geyser, this only happens as i added Floodgate.

Setup: Waterfall 1.16 Bungee with Geyser and Floodgate. Geyser setup to use Floodgate.
Also have LuckPerms, Protocolize, AutoReconnect and BungeeGuard on the Waterfall
OS: Win10
Java: 8_JDK_181

Floodgate-bungee missing SQLite classes

The jar for floodgate-bungee (from CI or building myself) seems to be missing the necessary classes for SQLite.

Steps to reproduce

The following commands starts a fresh BungeeCord server with floodgate-bungee as the only plugin.

wget https://ci.md-5.net/job/BungeeCord/lastSuccessfulBuild/artifact/bootstrap/target/BungeeCord.jar
mkdir plugins
wget -O plugins/floodgate-bungee.jar https://ci.nukkitx.com/job/GeyserMC/job/Floodgate/job/development/lastSuccessfulBuild/artifact/bungee/target/floodgate-bungee.jar
java -jar BungeeCord.jar 

BungeeCord will print the following errors:

09:06:07 [INFO] Loaded plugin cmd_find version git:cmd_find:1.15-SNAPSHOT:67c2dfd:1499 by SpigotMC
09:06:07 [SEVERE] mai 10, 2020 9:06:07 AM com.fasterxml.jackson.databind.ext.Java7Support <clinit>
WARNING: Unable to load JDK7 types (annotations, java.nio.file.Path): no Java7 support added

09:06:07 [INFO] [floodgate-bungee] Loading Floodgate linked player database...
09:06:07 [SEVERE] [floodgate-bungee] The required class to load the SQLite database wasn't found
09:06:07 [INFO] Loaded plugin floodgate-bungee version 1.0-SNAPSHOT by GeyserMC

Workaround

By downloading a jar with sqlite-jdbc (for example from here), and merging the contents of that jar into the contents of the floodgate-bungee.jar jar, the plugin starts as expected

Investigation

I haven't looked much into this, but I found it interesting that the floodgate-bungee jar actually contains native files for sqlite, for example or/sqlite/native/Linux/x86/libsqlitejdbc.so - which apparently aren't loaded.
I also think that in a lot of cases, floodagte-bungee will be able to use sqlite-jdbc bundled by other plugins.

Whitelist

What feature do you want?
Add a /geyser whitelist command to add Bedrock players to server whitelist

Alternatives?
Would make whitelisting easier.
I own swedens biggest SMP playerwise. We can’t turn off whitelist for security reasons and I’m the only current one WHO can whitelist Bedrock people through config

Crashes when Java player tries to connect (or probe server infos)

Hi,
Thanks for your work, having issue at [09:34:49] in following server log with CraftBukkit 1.15.2 from here : https://getbukkit.org/download/craftbukkit
This happens from java client, once i click [Multiplayer] then it probes for my server infos (server already in list)
also tried previous versions of CraftBukkit > Same
Geyser is loaded as CraftBukkit plugin w/o problem & downloaded from here https://ci.nukkitx.com/job/Geyser/job/master/ (Geyser-Bukkit.jar)
Floodgate has been compiled with success >> See last quote log.

[09:34:07] [Server thread/INFO]: Starting minecraft server version 1.15.2
[09:34:07] [Server thread/INFO]: Loading properties
[09:34:07] [Server thread/INFO]: Default game type: SURVIVAL
[09:34:07] [Server thread/INFO]: Generating keypair
[09:34:08] [Server thread/INFO]: Starting Minecraft server on *:25565
[09:34:08] [Server thread/INFO]: Using epoll channel type
[09:34:08] [Server thread/INFO]: This server is running CraftBukkit version git-Bukkit-8160e29 (MC: 1.15.2) (Implementing API version 1.15.2-R0.1-SNAPSHOT)
[09:34:13] [Server thread/WARN]: Plugin Geyser-Bukkit v1.0-SNAPSHOT does not specify an api-version.
[09:34:13] [Server thread/WARN]: Plugin floodgate-bukkit v1.0-SNAPSHOT does not specify an api-version.
[09:34:13] [Server thread/INFO]: [Geyser-Bukkit] Loading Geyser-Bukkit v1.0-SNAPSHOT
[09:34:13] [Server thread/INFO]: [floodgate-bukkit] Loading floodgate-bukkit v1.0-SNAPSHOT
[09:34:14] [Server thread/WARN]: Unable to load JDK7 types (annotations, java.nio.file.Path): no Java7 support added
[09:34:14] [Server thread/INFO]: Preparing level "world"
[09:34:14] [Server thread/INFO]: Reloading ResourceManager: Default, bukkit
[09:34:15] [Server thread/INFO]: Loaded 6 recipes
[09:34:17] [Server thread/INFO]: Preparing start region for dimension 'world'/minecraft:overworld
[09:34:18] [Server thread/INFO]: Preparing spawn area: 0%
[09:34:19] [Server thread/INFO]: Preparing spawn area: 0%
[09:34:19] [Server thread/INFO]: Preparing spawn area: 0%
[09:34:19] [Server thread/INFO]: Preparing spawn area: 0%
[09:34:22] [Server-Worker-3/INFO]: Preparing spawn area: 0%
[09:34:22] [Server-Worker-1/INFO]: Preparing spawn area: 0%
[09:34:22] [Server-Worker-1/INFO]: Preparing spawn area: 0%
[09:34:22] [Server-Worker-1/INFO]: Preparing spawn area: 0%
[09:34:22] [Server-Worker-1/INFO]: Preparing spawn area: 0%
[09:34:22] [Server-Worker-2/INFO]: Preparing spawn area: 0%
[09:34:22] [Server thread/INFO]: Preparing spawn area: 48%
[09:34:24] [Server-Worker-3/INFO]: Preparing spawn area: 83%
[09:34:24] [Server-Worker-2/INFO]: Preparing spawn area: 83%
[09:34:24] [Server-Worker-1/INFO]: Preparing spawn area: 83%
[09:34:25] [Server-Worker-3/INFO]: Preparing spawn area: 83%
[09:34:25] [Server-Worker-2/INFO]: Preparing spawn area: 83%
[09:34:25] [Server-Worker-2/INFO]: Preparing spawn area: 83%
[09:34:25] [Server-Worker-2/INFO]: Preparing spawn area: 83%
[09:34:26] [Server-Worker-1/INFO]: Preparing spawn area: 83%
[09:34:26] [Server-Worker-3/INFO]: Preparing spawn area: 86%
[09:34:27] [Server-Worker-3/INFO]: Preparing spawn area: 91%
[09:34:27] [Server thread/INFO]: Preparing spawn area: 99%
[09:34:28] [Server thread/INFO]: Time elapsed: 10531 ms
[09:34:28] [Server thread/INFO]: Preparing start region for dimension 'world_nether'/minecraft:the_nether
[09:34:28] [Server thread/INFO]: Preparing spawn area: 0%
[09:34:28] [Server thread/INFO]: Preparing spawn area: 0%
[09:34:29] [Server-Worker-1/INFO]: Preparing spawn area: 83%
[09:34:29] [Server-Worker-3/INFO]: Preparing spawn area: 83%
[09:34:30] [Server-Worker-1/INFO]: Preparing spawn area: 90%
[09:34:30] [Server thread/INFO]: Time elapsed: 2349 ms
[09:34:30] [Server thread/INFO]: Preparing start region for dimension 'world_the_end'/minecraft:the_end
[09:34:30] [Server thread/INFO]: Preparing spawn area: 0%
[09:34:30] [Server-Worker-2/INFO]: Preparing spawn area: 83%
[09:34:31] [Server thread/INFO]: Time elapsed: 833 ms
[09:34:31] [Server thread/INFO]: [Geyser-Bukkit] Enabling Geyser-Bukkit v1.0-SNAPSHOT
[09:34:31] [Server thread/WARN]: SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
[09:34:31] [Server thread/WARN]: SLF4J: Defaulting to no-operation (NOP) logger implementation
[09:34:31] [Server thread/WARN]: SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
[09:34:31] [Server thread/INFO]: [Geyser-Bukkit] ******************************************
[09:34:31] [Server thread/INFO]: [Geyser-Bukkit]
[09:34:31] [Server thread/INFO]: [Geyser-Bukkit] Loading Geyser version 1.0-SNAPSHOT
[09:34:31] [Server thread/INFO]: [Geyser-Bukkit]
[09:34:31] [Server thread/INFO]: [Geyser-Bukkit] ******************************************
[09:34:31] [Server thread/INFO]: [Geyser-Bukkit] Registered command help
[09:34:31] [Server thread/INFO]: [Geyser-Bukkit] Registered command reload
[09:34:31] [Server thread/INFO]: [Geyser-Bukkit] Registered command stop
[09:34:31] [Network Listener - #1/INFO]: [Geyser-Bukkit] Started Geyser on 0.0.0.0:19132
[09:34:31] [Server thread/INFO]: [Geyser-Bukkit] Done (0,59s)! Run /geyser help for help!
[09:34:31] [Server thread/INFO]: [floodgate-bukkit] Enabling floodgate-bukkit v1.0-SNAPSHOT
[09:34:31] [Server thread/INFO]: Server permissions file permissions.yml is empty, ignoring it
[09:34:32] [Server thread/INFO]: Done (17.293s)! For help, type "help"
[09:34:49] [Netty Epoll Server IO #1/WARN]: java.lang.NoSuchMethodException: net.minecraft.server.v1_15_R1.LoginListener.initUUID()
[09:34:49] [Netty Epoll Server IO #1/WARN]: at java.lang.Class.getMethod(Class.java:1786)
[09:34:49] [Netty Epoll Server IO #1/WARN]: at org.geysermc.floodgate.util.ReflectionUtil.getMethod(ReflectionUtil.java:129)
[09:34:49] [Netty Epoll Server IO #1/WARN]: at org.geysermc.floodgate.PacketHandler.(PacketHandler.java:150)
[09:34:49] [Netty Epoll Server IO #1/WARN]: at org.geysermc.floodgate.injector.BukkitInjector$2$1.initChannel(BukkitInjector.java:72)
[09:34:49] [Netty Epoll Server IO #1/WARN]: at io.netty.channel.ChannelInitializer.initChannel(ChannelInitializer.java:113)
[09:34:49] [Netty Epoll Server IO #1/WARN]: at io.netty.channel.ChannelInitializer.handlerAdded(ChannelInitializer.java:105)
[09:34:49] [Netty Epoll Server IO #1/WARN]: at io.netty.channel.DefaultChannelPipeline.callHandlerAdded0(DefaultChannelPipeline.java:637)
[09:34:49] [Netty Epoll Server IO #1/WARN]: at io.netty.channel.DefaultChannelPipeline.access$000(DefaultChannelPipeline.java:46)
[09:34:49] [Netty Epoll Server IO #1/WARN]: at io.netty.channel.DefaultChannelPipeline$3.run(DefaultChannelPipeline.java:229)
[09:34:49] [Netty Epoll Server IO #1/WARN]: at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163)
[09:34:49] [Netty Epoll Server IO #1/WARN]: at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:404)
[09:34:49] [Netty Epoll Server IO #1/WARN]: at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:313)
[09:34:49] [Netty Epoll Server IO #1/WARN]: at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884)
[09:34:49] [Netty Epoll Server IO #1/WARN]: at java.lang.Thread.run(Thread.java:748)
[09:34:49] [Netty Epoll Server IO #1/WARN]: java.lang.ClassNotFoundException: net.minecraft.server.v1_15_R1.LoginListener$LoginHandler
[09:34:49] [Netty Epoll Server IO #1/WARN]: at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:97)
[09:34:49] [Netty Epoll Server IO #1/WARN]: at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:92)
[09:34:49] [Netty Epoll Server IO #1/WARN]: at java.lang.ClassLoader.loadClass(ClassLoader.java:419)
[09:34:49] [Netty Epoll Server IO #1/WARN]: at java.lang.ClassLoader.loadClass(ClassLoader.java:352)
[09:34:49] [Netty Epoll Server IO #1/WARN]: at java.lang.Class.forName0(Native Method)
[09:34:49] [Netty Epoll Server IO #1/WARN]: at java.lang.Class.forName(Class.java:264)
[09:34:49] [Netty Epoll Server IO #1/WARN]: at org.geysermc.floodgate.util.ReflectionUtil.getClass(ReflectionUtil.java:23)
[09:34:49] [Netty Epoll Server IO #1/WARN]: at org.geysermc.floodgate.util.ReflectionUtil.getPrefixedClass(ReflectionUtil.java:18)
[09:34:49] [Netty Epoll Server IO #1/WARN]: at org.geysermc.floodgate.PacketHandler.(PacketHandler.java:169)
[09:34:49] [Netty Epoll Server IO #1/WARN]: at org.geysermc.floodgate.injector.BukkitInjector$2$1.initChannel(BukkitInjector.java:72)
[09:34:49] [Netty Epoll Server IO #1/WARN]: at io.netty.channel.ChannelInitializer.initChannel(ChannelInitializer.java:113)
[09:34:49] [Netty Epoll Server IO #1/WARN]: at io.netty.channel.ChannelInitializer.handlerAdded(ChannelInitializer.java:105)
[09:34:49] [Netty Epoll Server IO #1/WARN]: at io.netty.channel.DefaultChannelPipeline.callHandlerAdded0(DefaultChannelPipeline.java:637)
[09:34:49] [Netty Epoll Server IO #1/WARN]: at io.netty.channel.DefaultChannelPipeline.access$000(DefaultChannelPipeline.java:46)
[09:34:49] [Netty Epoll Server IO #1/WARN]: at io.netty.channel.DefaultChannelPipeline$3.run(DefaultChannelPipeline.java:229)
[09:34:49] [Netty Epoll Server IO #1/WARN]: at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163)
[09:34:49] [Netty Epoll Server IO #1/WARN]: at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:404)
[09:34:49] [Netty Epoll Server IO #1/WARN]: at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:313)
[09:34:49] [Netty Epoll Server IO #1/WARN]: at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884)
[09:34:49] [Netty Epoll Server IO #1/WARN]: at java.lang.Thread.run(Thread.java:748)
[09:34:49] [Netty Epoll Server IO #1/WARN]: Failed to initialize a channel. Closing: [id: 0x67e45dd7, L:/192.168.10.130:25565 - R:/xxx.xxx.xxx.xxx:63942]
java.lang.ExceptionInInitializerError: null
at org.geysermc.floodgate.injector.BukkitInjector$2$1.initChannel(BukkitInjector.java:72) ~[?:?]
at io.netty.channel.ChannelInitializer.initChannel(ChannelInitializer.java:113) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.ChannelInitializer.handlerAdded(ChannelInitializer.java:105) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.DefaultChannelPipeline.callHandlerAdded0(DefaultChannelPipeline.java:637) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.DefaultChannelPipeline.access$000(DefaultChannelPipeline.java:46) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.DefaultChannelPipeline$3.run(DefaultChannelPipeline.java:229) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:404) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:313) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_242]
Caused by: java.lang.NullPointerException
at org.geysermc.floodgate.PacketHandler.(PacketHandler.java:172) ~[?:?]
... 11 more
[09:34:50] [Netty Epoll Server IO #2/WARN]: Failed to initialize a channel. Closing: [id: 0x37ec1fcf, L:/192.168.10.130:25565 - R:/xxx.xxx.xxx.xxx:63943]
java.lang.NoClassDefFoundError: Could not initialize class org.geysermc.floodgate.PacketHandler
at org.geysermc.floodgate.injector.BukkitInjector$2$1.initChannel(BukkitInjector.java:72) ~[?:?]
at io.netty.channel.ChannelInitializer.initChannel(ChannelInitializer.java:113) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.ChannelInitializer.handlerAdded(ChannelInitializer.java:105) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.DefaultChannelPipeline.callHandlerAdded0(DefaultChannelPipeline.java:637) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.DefaultChannelPipeline.access$000(DefaultChannelPipeline.java:46) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.DefaultChannelPipeline$PendingHandlerAddedTask.execute(DefaultChannelPipeline.java:1487) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.DefaultChannelPipeline.callHandlerAddedForAllHandlers(DefaultChannelPipeline.java:1161) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.DefaultChannelPipeline.invokeHandlerAddedIfNeeded(DefaultChannelPipeline.java:686) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.AbstractChannel$AbstractUnsafe.register0(AbstractChannel.java:510) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.AbstractChannel$AbstractUnsafe.access$200(AbstractChannel.java:423) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.AbstractChannel$AbstractUnsafe$1.run(AbstractChannel.java:482) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:404) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:313) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_242]
[09:34:50] [Netty Epoll Server IO #2/WARN]: An exception 'java.lang.NullPointerException' [enable DEBUG level for full stacktrace] was thrown by a user handler's exceptionCaught() method while handling the following exception:
java.lang.NullPointerException: null
at net.minecraft.server.v1_15_R1.NetworkManager.close(NetworkManager.java:236) ~[craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at net.minecraft.server.v1_15_R1.NetworkManager.channelInactive(NetworkManager.java:83) ~[craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:245) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:231) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelInactive(AbstractChannelHandlerContext.java:224) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.handler.codec.ByteToMessageDecoder.channelInputClosed(ByteToMessageDecoder.java:377) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.handler.codec.ByteToMessageDecoder.channelInactive(ByteToMessageDecoder.java:342) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:245) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:231) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelInactive(AbstractChannelHandlerContext.java:224) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.handler.codec.ByteToMessageDecoder.channelInputClosed(ByteToMessageDecoder.java:377) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.handler.codec.ByteToMessageDecoder.channelInactive(ByteToMessageDecoder.java:342) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:245) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:231) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelInactive(AbstractChannelHandlerContext.java:224) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.ChannelInboundHandlerAdapter.channelInactive(ChannelInboundHandlerAdapter.java:75) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:245) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:231) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelInactive(AbstractChannelHandlerContext.java:224) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.ChannelInboundHandlerAdapter.channelInactive(ChannelInboundHandlerAdapter.java:75) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.handler.timeout.IdleStateHandler.channelInactive(IdleStateHandler.java:277) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:245) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:231) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelInactive(AbstractChannelHandlerContext.java:224) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.DefaultChannelPipeline$HeadContext.channelInactive(DefaultChannelPipeline.java:1429) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:245) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:231) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.DefaultChannelPipeline.fireChannelInactive(DefaultChannelPipeline.java:947) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.AbstractChannel$AbstractUnsafe$8.run(AbstractChannel.java:822) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:404) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:313) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_242]
[09:34:56] [Server thread/INFO]: Stopping the server
[09:34:57] [Server thread/INFO]: Stopping server
[09:34:57] [Server thread/INFO]: [floodgate-bukkit] Disabling floodgate-bukkit v1.0-SNAPSHOT
[09:34:57] [Server thread/ERROR]: [floodgate-bukkit] Failed to remove the injection!
java.util.ConcurrentModificationException: null
at java.util.ArrayList$Itr.checkForComodification(ArrayList.java:909) ~[?:1.8.0_242]
at java.util.ArrayList$Itr.next(ArrayList.java:859) ~[?:1.8.0_242]
at org.geysermc.floodgate.injector.BukkitInjector.removeInjection(BukkitInjector.java:87) ~[floodgate-bukkit.jar:?]
at org.geysermc.floodgate.BukkitPlugin.onDisable(BukkitPlugin.java:41) [floodgate-bukkit.jar:?]
at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:265) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at org.bukkit.plugin.java.JavaPluginLoader.disablePlugin(JavaPluginLoader.java:369) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at org.bukkit.plugin.SimplePluginManager.disablePlugin(SimplePluginManager.java:437) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at org.bukkit.plugin.SimplePluginManager.disablePlugins(SimplePluginManager.java:429) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at org.bukkit.craftbukkit.v1_15_R1.CraftServer.disablePlugins(CraftServer.java:391) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at net.minecraft.server.v1_15_R1.MinecraftServer.stop(MinecraftServer.java:690) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at net.minecraft.server.v1_15_R1.DedicatedServer.stop(DedicatedServer.java:674) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at net.minecraft.server.v1_15_R1.MinecraftServer.run(MinecraftServer.java:823) [craftbukkit-1.15.2.jar:git-Bukkit-8160e29]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_242]
[09:34:57] [Server thread/INFO]: [Geyser-Bukkit] Disabling Geyser-Bukkit v1.0-SNAPSHOT
[09:34:57] [Server thread/INFO]: [Geyser-Bukkit] Shutting down Geyser.
[09:34:57] [Server thread/INFO]: Saving players
[09:34:57] [Server thread/INFO]: Saving worlds
[09:34:57] [Server thread/INFO]: Saving chunks for level 'world'/minecraft:overworld
[09:34:57] [Server thread/INFO]: ThreadedAnvilChunkStorage (world): All chunks are saved
[09:34:57] [Server thread/INFO]: Saving chunks for level 'world_nether'/minecraft:the_nether
[09:34:58] [Server thread/INFO]: ThreadedAnvilChunkStorage (DIM-1): All chunks are saved
[09:34:58] [Server thread/INFO]: Saving chunks for level 'world_the_end'/minecraft:the_end
[09:34:58] [Server thread/INFO]: ThreadedAnvilChunkStorage (DIM1): All chunks are saved
[09:34:58] [Server thread/INFO]: ThreadedAnvilChunkStorage (world): All chunks are saved
[09:34:58] [Server thread/INFO]: ThreadedAnvilChunkStorage (DIM-1): All chunks are saved
[09:34:58] [Server thread/INFO]: ThreadedAnvilChunkStorage (DIM1): All chunks are saved

git clone --recursive https://github.com/GeyserMC/Floodgate.git
mvn -l floodgate_compile.log clean install

Compilation log :

[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Build Order:
[INFO]
[INFO] floodgate
[INFO] floodgate-common
[INFO] floodgate-bungee
[INFO] floodgate-bukkit
[INFO] floodgate-velocity
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building floodgate 1.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ floodgate-parent ---
[INFO]
[INFO] --- maven-install-plugin:2.5.2:install (default-install) @ floodgate-parent ---
[INFO] Installing /@_Minecraft/sources/Floodgate/pom.xml to /root/.m2/repository/org/geysermc/floodgate-parent/1.0-SNAPSHOT/floodgate-parent-1.0-SNAPSHOT.pom
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building floodgate-common 1.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ floodgate-common ---
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ floodgate-common ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 1 resource
[INFO]
[INFO] --- maven-compiler-plugin:3.2:compile (default-compile) @ floodgate-common ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 5 source files to /@_Minecraft/sources/Floodgate/common/target/classes
[INFO]
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ floodgate-common ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory /@_Minecraft/sources/Floodgate/common/src/test/resources
[INFO]
[INFO] --- maven-compiler-plugin:3.2:testCompile (default-testCompile) @ floodgate-common ---
[INFO] No sources to compile
[INFO]
[INFO] --- maven-surefire-plugin:2.17:test (default-test) @ floodgate-common ---
[INFO] No tests to run.
[INFO]
[INFO] --- maven-jar-plugin:2.4:jar (default-jar) @ floodgate-common ---
[INFO] Building jar: /@_Minecraft/sources/Floodgate/common/target/floodgate-common-1.0-SNAPSHOT.jar
[INFO]
[INFO] --- maven-shade-plugin:3.2.1:shade (default) @ floodgate-common ---
[INFO] Including org.geysermc:common:jar:1.0-SNAPSHOT in the shaded jar.
[INFO] Including com.google.code.gson:gson:jar:2.8.2 in the shaded jar.
[INFO] Including com.fasterxml.jackson.datatype:jackson-datatype-jsr310:jar:2.9.8 in the shaded jar.
[INFO] Including com.fasterxml.jackson.core:jackson-databind:jar:2.9.10.1 in the shaded jar.
[INFO] Including com.fasterxml.jackson.core:jackson-annotations:jar:2.9.10 in the shaded jar.
[INFO] Including com.fasterxml.jackson.core:jackson-core:jar:2.9.10 in the shaded jar.
[INFO] Including com.fasterxml.jackson.dataformat:jackson-dataformat-yaml:jar:2.9.9 in the shaded jar.
[INFO] Including org.yaml:snakeyaml:jar:1.23 in the shaded jar.
[INFO] Minimizing jar org.geysermc:floodgate-common:jar:1.0-SNAPSHOT
[INFO] Minimized 1332 -> 945 (70%)
[INFO] Replacing /@_Minecraft/sources/Floodgate/common/target/floodgate-common.jar with /@_Minecraft/sources/Floodgate/common/target/floodgate-common-1.0-SNAPSHOT-shaded.jar
[INFO] Attaching shaded artifact.
[INFO]
[INFO] --- maven-install-plugin:2.5.2:install (default-install) @ floodgate-common ---
[INFO] Installing /@_Minecraft/sources/Floodgate/common/target/floodgate-common-1.0-SNAPSHOT.jar to /root/.m2/repository/org/geysermc/floodgate-common/1.0-SNAPSHOT/floodgate-common-1.0-SNAPSHOT.jar
[INFO] Installing /@_Minecraft/sources/Floodgate/common/pom.xml to /root/.m2/repository/org/geysermc/floodgate-common/1.0-SNAPSHOT/floodgate-common-1.0-SNAPSHOT.pom
[INFO] Installing /@_Minecraft/sources/Floodgate/common/target/floodgate-common.jar to /root/.m2/repository/org/geysermc/floodgate-common/1.0-SNAPSHOT/floodgate-common-1.0-SNAPSHOT-shaded.jar
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building floodgate-bungee 1.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ floodgate-bungee ---
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ floodgate-bungee ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 2 resources
[INFO]
[INFO] --- maven-compiler-plugin:3.2:compile (default-compile) @ floodgate-bungee ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 4 source files to /@_Minecraft/sources/Floodgate/bungee/target/classes
[INFO] /@_Minecraft/sources/Floodgate/bungee/src/main/java/org/geysermc/floodgate/BungeePlugin.java: /@_Minecraft/sources/Floodgate/bungee/src/main/java/org/geysermc/floodgate/BungeePlugin.java uses or overrides a deprecated API.
[INFO] /@_Minecraft/sources/Floodgate/bungee/src/main/java/org/geysermc/floodgate/BungeePlugin.java: Recompile with -Xlint:deprecation for details.
[INFO]
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ floodgate-bungee ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory /@_Minecraft/sources/Floodgate/bungee/src/test/resources
[INFO]
[INFO] --- maven-compiler-plugin:3.2:testCompile (default-testCompile) @ floodgate-bungee ---
[INFO] No sources to compile
[INFO]
[INFO] --- maven-surefire-plugin:2.17:test (default-test) @ floodgate-bungee ---
[INFO] No tests to run.
[INFO]
[INFO] --- maven-jar-plugin:2.4:jar (default-jar) @ floodgate-bungee ---
[INFO] Building jar: /@_Minecraft/sources/Floodgate/bungee/target/floodgate-bungee-1.0-SNAPSHOT.jar
[INFO]
[INFO] --- maven-shade-plugin:3.2.1:shade (default) @ floodgate-bungee ---
[INFO] Including com.google.code.gson:gson:jar:2.8.0 in the shaded jar.
[INFO] Including org.yaml:snakeyaml:jar:1.25 in the shaded jar.
[INFO] Including org.geysermc:floodgate-common:jar:1.0-SNAPSHOT in the shaded jar.
[INFO] Including org.geysermc:common:jar:1.0-SNAPSHOT in the shaded jar.
[INFO] Including com.fasterxml.jackson.datatype:jackson-datatype-jsr310:jar:2.9.8 in the shaded jar.
[INFO] Including com.fasterxml.jackson.core:jackson-databind:jar:2.9.10.1 in the shaded jar.
[INFO] Including com.fasterxml.jackson.core:jackson-annotations:jar:2.9.10 in the shaded jar.
[INFO] Including com.fasterxml.jackson.core:jackson-core:jar:2.9.10 in the shaded jar.
[INFO] Including com.fasterxml.jackson.dataformat:jackson-dataformat-yaml:jar:2.9.9 in the shaded jar.
[INFO] Minimizing jar org.geysermc:floodgate-bungee:jar:1.0-SNAPSHOT
[INFO] Minimized 1349 -> 961 (71%)
[INFO] Replacing /@_Minecraft/sources/Floodgate/bungee/target/floodgate-bungee.jar with /@_Minecraft/sources/Floodgate/bungee/target/floodgate-bungee-1.0-SNAPSHOT-shaded.jar
[INFO] Attaching shaded artifact.
[INFO]
[INFO] --- maven-install-plugin:2.5.2:install (default-install) @ floodgate-bungee ---
[INFO] Installing /@_Minecraft/sources/Floodgate/bungee/target/floodgate-bungee-1.0-SNAPSHOT.jar to /root/.m2/repository/org/geysermc/floodgate-bungee/1.0-SNAPSHOT/floodgate-bungee-1.0-SNAPSHOT.jar
[INFO] Installing /@_Minecraft/sources/Floodgate/bungee/pom.xml to /root/.m2/repository/org/geysermc/floodgate-bungee/1.0-SNAPSHOT/floodgate-bungee-1.0-SNAPSHOT.pom
[INFO] Installing /@_Minecraft/sources/Floodgate/bungee/target/floodgate-bungee.jar to /root/.m2/repository/org/geysermc/floodgate-bungee/1.0-SNAPSHOT/floodgate-bungee-1.0-SNAPSHOT-shaded.jar
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building floodgate-bukkit 1.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ floodgate-bukkit ---
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ floodgate-bukkit ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 1 resource
[INFO]
[INFO] --- maven-compiler-plugin:3.2:compile (default-compile) @ floodgate-bukkit ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 5 source files to /@_Minecraft/sources/Floodgate/bukkit/target/classes
[INFO] /@_Minecraft/sources/Floodgate/bukkit/src/main/java/org/geysermc/floodgate/injector/CustomList.java: /@_Minecraft/sources/Floodgate/bukkit/src/main/java/org/geysermc/floodgate/injector/CustomList.java uses unchecked or unsafe operations.
[INFO] /@_Minecraft/sources/Floodgate/bukkit/src/main/java/org/geysermc/floodgate/injector/CustomList.java: Recompile with -Xlint:unchecked for details.
[INFO]
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ floodgate-bukkit ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory /@_Minecraft/sources/Floodgate/bukkit/src/test/resources
[INFO]
[INFO] --- maven-compiler-plugin:3.2:testCompile (default-testCompile) @ floodgate-bukkit ---
[INFO] No sources to compile
[INFO]
[INFO] --- maven-surefire-plugin:2.17:test (default-test) @ floodgate-bukkit ---
[INFO] No tests to run.
[INFO]
[INFO] --- maven-jar-plugin:2.4:jar (default-jar) @ floodgate-bukkit ---
[INFO] Building jar: /@_Minecraft/sources/Floodgate/bukkit/target/floodgate-bukkit-1.0-SNAPSHOT.jar
[INFO]
[INFO] --- maven-shade-plugin:3.2.1:shade (default) @ floodgate-bukkit ---
[INFO] Including com.google.code.gson:gson:jar:2.2.4 in the shaded jar.
[INFO] Including org.yaml:snakeyaml:jar:1.15 in the shaded jar.
[INFO] Including org.geysermc:floodgate-common:jar:1.0-SNAPSHOT in the shaded jar.
[INFO] Including org.geysermc:common:jar:1.0-SNAPSHOT in the shaded jar.
[INFO] Including com.fasterxml.jackson.datatype:jackson-datatype-jsr310:jar:2.9.8 in the shaded jar.
[INFO] Including com.fasterxml.jackson.core:jackson-databind:jar:2.9.10.1 in the shaded jar.
[INFO] Including com.fasterxml.jackson.core:jackson-annotations:jar:2.9.10 in the shaded jar.
[INFO] Including com.fasterxml.jackson.core:jackson-core:jar:2.9.10 in the shaded jar.
[INFO] Including com.fasterxml.jackson.dataformat:jackson-dataformat-yaml:jar:2.9.9 in the shaded jar.
[INFO] Minimizing jar org.geysermc:floodgate-bukkit:jar:1.0-SNAPSHOT
[INFO] Minimized 1313 -> 954 (72%)
[INFO] Replacing /@_Minecraft/sources/Floodgate/bukkit/target/floodgate-bukkit.jar with /@_Minecraft/sources/Floodgate/bukkit/target/floodgate-bukkit-1.0-SNAPSHOT-shaded.jar
[INFO] Attaching shaded artifact.
[INFO]
[INFO] --- maven-install-plugin:2.5.2:install (default-install) @ floodgate-bukkit ---
[INFO] Installing /@_Minecraft/sources/Floodgate/bukkit/target/floodgate-bukkit-1.0-SNAPSHOT.jar to /root/.m2/repository/org/geysermc/floodgate-bukkit/1.0-SNAPSHOT/floodgate-bukkit-1.0-SNAPSHOT.jar
[INFO] Installing /@_Minecraft/sources/Floodgate/bukkit/pom.xml to /root/.m2/repository/org/geysermc/floodgate-bukkit/1.0-SNAPSHOT/floodgate-bukkit-1.0-SNAPSHOT.pom
[INFO] Installing /@_Minecraft/sources/Floodgate/bukkit/target/floodgate-bukkit.jar to /root/.m2/repository/org/geysermc/floodgate-bukkit/1.0-SNAPSHOT/floodgate-bukkit-1.0-SNAPSHOT-shaded.jar
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building floodgate-velocity 1.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ floodgate-velocity ---
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ floodgate-velocity ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 2 resources
[INFO]
[INFO] --- maven-compiler-plugin:3.2:compile (default-compile) @ floodgate-velocity ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 4 source files to /@_Minecraft/sources/Floodgate/velocity/target/classes
[INFO]
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ floodgate-velocity ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory /@_Minecraft/sources/Floodgate/velocity/src/test/resources
[INFO]
[INFO] --- maven-compiler-plugin:3.2:testCompile (default-testCompile) @ floodgate-velocity ---
[INFO] No sources to compile
[INFO]
[INFO] --- maven-surefire-plugin:2.17:test (default-test) @ floodgate-velocity ---
[INFO] No tests to run.
[INFO]
[INFO] --- maven-jar-plugin:2.4:jar (default-jar) @ floodgate-velocity ---
[INFO] Building jar: /@_Minecraft/sources/Floodgate/velocity/target/floodgate-velocity-1.0-SNAPSHOT.jar
[INFO]
[INFO] --- maven-shade-plugin:3.2.1:shade (default) @ floodgate-velocity ---
[INFO] Including com.google.code.gson:gson:jar:2.8.5 in the shaded jar.
[INFO] Including org.yaml:snakeyaml:jar:1.18 in the shaded jar.
[INFO] Including org.javassist:javassist:jar:3.26.0-GA in the shaded jar.
[INFO] Including org.geysermc:floodgate-common:jar:1.0-SNAPSHOT in the shaded jar.
[INFO] Including org.geysermc:common:jar:1.0-SNAPSHOT in the shaded jar.
[INFO] Including com.fasterxml.jackson.datatype:jackson-datatype-jsr310:jar:2.9.8 in the shaded jar.
[INFO] Including com.fasterxml.jackson.core:jackson-databind:jar:2.9.10.1 in the shaded jar.
[INFO] Including com.fasterxml.jackson.core:jackson-annotations:jar:2.9.10 in the shaded jar.
[INFO] Including com.fasterxml.jackson.core:jackson-core:jar:2.9.10 in the shaded jar.
[INFO] Including com.fasterxml.jackson.dataformat:jackson-dataformat-yaml:jar:2.9.9 in the shaded jar.
[INFO] Minimizing jar org.geysermc:floodgate-velocity:jar:1.0-SNAPSHOT
[INFO] Minimized 1774 -> 1292 (72%)
[INFO] Replacing /@_Minecraft/sources/Floodgate/velocity/target/floodgate-velocity.jar with /@_Minecraft/sources/Floodgate/velocity/target/floodgate-velocity-1.0-SNAPSHOT-shaded.jar
[INFO] Attaching shaded artifact.
[INFO]
[INFO] --- maven-install-plugin:2.5.2:install (default-install) @ floodgate-velocity ---
[INFO] Installing /@_Minecraft/sources/Floodgate/velocity/target/floodgate-velocity-1.0-SNAPSHOT.jar to /root/.m2/repository/org/geysermc/floodgate-velocity/1.0-SNAPSHOT/floodgate-velocity-1.0-SNAPSHOT.jar
[INFO] Installing /@_Minecraft/sources/Floodgate/velocity/pom.xml to /root/.m2/repository/org/geysermc/floodgate-velocity/1.0-SNAPSHOT/floodgate-velocity-1.0-SNAPSHOT.pom
[INFO] Installing /@_Minecraft/sources/Floodgate/velocity/target/floodgate-velocity.jar to /root/.m2/repository/org/geysermc/floodgate-velocity/1.0-SNAPSHOT/floodgate-velocity-1.0-SNAPSHOT-shaded.jar
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] floodgate .......................................... SUCCESS [ 0.555 s]
[INFO] floodgate-common ................................... SUCCESS [ 4.116 s]
[INFO] floodgate-bungee ................................... SUCCESS [ 1.596 s]
[INFO] floodgate-bukkit ................................... SUCCESS [ 1.290 s]
[INFO] floodgate-velocity ................................. SUCCESS [ 1.634 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 9.345 s
[INFO] Finished at: 2020-03-22T10:01:54+01:00
[INFO] Final Memory: 31M/201M
[INFO] ------------------------------------------------------------------------

Auto whitelist

What feature do you want?
Automatically re-whitelist everyone in the whitelist with "*" in it

Alternatives?
Allow bedrock players to bypass whitelist (will do but not good alternative)

Username suffixes

What feature do you want?
Just add suffixes in config :з
image
image

Alternatives?
plugins spigot (TAB, nametagEdit)

Add Bedrock Form support to Floodgate

Dear Floodgate Team,

I was wondering if it possible to add an API to Floodgate Bungee and Bukkit.
This is to check if a player is connected to Bedrock or Java and to send a custom GUI.

Thank you for this amazing project!

Kind regards,
Max.

Incompatibility with JPremium

Describe the bug
Incompatibility with JPremium. Jpremium i believe is trying to authenticate bedrock users through its verification system

To Reproduce
Setup Jpremium
Setup geyser-mc
Get bedrock player to join
Error: Connection failed: Invalid session. With a stacktrace error

Expected behavior
Bedrock player able to join without issue

Screenshots / Videos
https://gist.github.com/partridge420x/52814ca3a548f9fe2eb049ab835d8f56

Server Version
waterfall build GeyserMC/Geyser#366
Geyser Version
This server is running Geyser version 1.0.0 (git-master-7fc14d8) (Java: 1.16.1, Bedrock: 1.16.0)
Using floodgate

Minecraft: Bedrock Edition Version
Affects all versions

Additional Context
https://dump.geysermc.org/knMgfrz0doGrIJcsbwpzydWtwOn7TICc

"Failed to remove the injection!" on server stop

Seems not to affect server/plugin behavior but that's here each time i stop server. fyi.

[05:09:45] [Server thread/INFO]: [floodgate-bukkit] Disabling floodgate-bukkit v1.0-SNAPSHOT [05:09:45] [Server thread/ERROR]: [floodgate-bukkit] Failed to remove the injection! java.util.ConcurrentModificationException: null at java.util.ArrayList$Itr.checkForComodification(ArrayList.java:909) ~[?:1.8.0_242] at java.util.ArrayList$Itr.next(ArrayList.java:859) ~[?:1.8.0_242] at org.geysermc.floodgate.injector.BukkitInjector.removeInjection(BukkitInjector.java:87) ~[floodgate-bukkit.jar:?] at org.geysermc.floodgate.BukkitPlugin.onDisable(BukkitPlugin.java:41) [floodgate-bukkit.jar:?] at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:265) [spigot-1.15.2.jar:git-Spigot-800b93f-8160e29] at org.bukkit.plugin.java.JavaPluginLoader.disablePlugin(JavaPluginLoader.java:377) [spigot-1.15.2.jar:git-Spigot-800b93f-8160e29] at org.bukkit.plugin.SimplePluginManager.disablePlugin(SimplePluginManager.java:438) [spigot-1.15.2.jar:git-Spigot-800b93f-8160e29] at org.bukkit.plugin.SimplePluginManager.disablePlugins(SimplePluginManager.java:430) [spigot-1.15.2.jar:git-Spigot-800b93f-8160e29] at org.bukkit.craftbukkit.v1_15_R1.CraftServer.disablePlugins(CraftServer.java:396) [spigot-1.15.2.jar:git-Spigot-800b93f-8160e29] at net.minecraft.server.v1_15_R1.MinecraftServer.stop(MinecraftServer.java:699) [spigot-1.15.2.jar:git-Spigot-800b93f-8160e29] at net.minecraft.server.v1_15_R1.DedicatedServer.stop(DedicatedServer.java:689) [spigot-1.15.2.jar:git-Spigot-800b93f-8160e29] at net.minecraft.server.v1_15_R1.MinecraftServer.run(MinecraftServer.java:864) [spigot-1.15.2.jar:git-Spigot-800b93f-8160e29] at java.lang.Thread.run(Thread.java:748) [?:1.8.0_242]

Simplify the linking procedure

As it is now, specifying a gamertag on the /linkaccount command seems unnecessary (you're already generating a PIN).

I guess the linking procedure could be simplified like so:

  • Simplify the /linkaccount command usage to /linkaccount [PIN].
  • If a Floodgate user uses the command without a PIN, a notice would tell them to specify a PIN.
    If a Java user uses the command without a PIN, then all of the previous generated PINs are discarded (if any) and a new, unique PIN is generated and sent over to the user.
  • If a Floodgate user uses the command with a PIN, if the PIN is valid, link to the Java account which generated it.
    If a Java user uses the command with a PIN, display an error (they're not in a Floodgate session).

Add jitpack to the Floodgate API

Hello! I am a plugin developer and i plan to be using the Floodgate API very soon.

I was just wondering if it could be possible for you to add the jitpack function to this api so we can directly get the latest Jar from Maven/Gradle in our pom.xml.
I believe this would make it much easier for everyone!

For further information on how to do that here's the jitpack website:
https://jitpack.io/

Thanks in advance!

Floodgate API questions

Ok so, I originally thought I would use NukkitX as my server because it had built in support for vanilla bedrock combat, bedrock forms, and as I thought, had the ability to run spigot plugins using pokkit

So I got to work, I first focused on bedrock forms, I did it more than successfully using this:
https://cloudburstmc.org/resources/uiformapi.561/

I then decided to use Pokkit to run spigot plugins, but none of them worked

So here I am using geysermc again : (
I did notice however, that the code in the floodgate wiki is very similar to the code used in UIFormAPI: https://cloudburstmc.org/resources/uiformapi.561/

So would UIFormAPI's code work in on a spigot server with floodgate, or will it not?

Unable to load JDK7 types (annotations, java.nio.file.Path): no Java7 support added

Java 11.0.7 LTS (AdoptOpenJDK)
Waterfall dev 327 (BungeeCord 1.15.2)
Floodgate development dev 5

[18:46:47] [main/WARN] [com.fasterxml.jackson.databind.ext.Java7Support]: Unable to load JDK7 types (annotations, java.nio.file.Path): no Java7 support added
[18:46:47] [main/INFO]: Loaded plugin floodgate-bungee version 1.0-SNAPSHOT by GeyserMC

Admin level account linking

What feature do you want?
Add some kind of /linkaccount subcommand or functionality that would allow server admins to link bedrock and java accounts without requiring players to do it themselves, and without requiring players to log in on both accounts.

Alternatives?
Manually editing the linked-players.db with a tool such as DB Browser for SQLite.

Java 8 support missing

According to GeyserMC chat, one of the reasons I'm unable to get Floodgate working on my server is because I'm missing java 7. Since Minecraft 1.12.2 and newer requires Java 8 to run can we see support for Java 8 added?

[SEVERE] Jun 08, 2020 12:17:59 AM com.fasterxml.jackson.databind.ext.Java7Support WARNING: Unable to load JDK7 types (annotations, java.nio.file.Path): no Java7 support added

Java clients (1.15.2) cannot connect

Using the latest master as of today and Bukkit 1.15.2, built with both OpenJDK 11 and Oracle JDK 13, I am unable to connect to the server with a java client (1.15.2). I receive this message in the client:
image

Internal Exception: io.netty.handler.codec.DecoderException: java.lang.IndexOutOfBoundsException: Index: 27, Size: 5

Here is the debug log from the server: https://gist.github.com/brettp/4d0d49b82954ef1f46e57f1f927b6c30

I am using the standalone version of Geyser, and Floodgate is the only plugin. Bedrock clients can connect.

BungeeCord reflection issue when joining

Describe the bug
I am running a 1.16.1 Paper Spigot server and the latest Waterfall Proxy server which has the Geyser Bungeecord Plugin installed. The server is pinged and found fine. When a user connects to the server, it loads and connects them to the Proxy server, but then gives this error: https://pastebin.com/DXzR7W2z and puts the player in an empty world. Soon timing out with the disconnect message: "Read Timed out" or "Connection Closed."

To Reproduce
Download Waterfall latest and Paper Spigot-114 (MC: 1.16.1).
Setup proxy.
Install Geyser version 1.0.0 (git-master-fe75320) (Java: 1.16.1, Bedrock: 1.16.0).
Use Floodgates Auth.
Join the Waterfall server.
View error in console.

Expected behavior
Join the server on Bedrock with no errors and connect to the Java 1.16.1 Paper server.

Screenshots / Videos
None

Server Version
Paper Spigot-114 (MC: 1.16.1) & Waterfall Build GeyserMC/Geyser#366

Geyser Version
Version: 1.0.0 (git-master-fe75320), Bungeecord

Minecraft: Bedrock Edition Version
v1.16.10

Additional Context
Geyser Dump: https://pastebin.com/Pqit2xt8

using color codes in the username prefix breaks most Strings containing the username

Describe the bug
When using color codes in the username, the text following the username is still colored
you can't use the name in a command (eg /msg §eMari_023) since minecraft java edition doesn't allow you to type the character '§'

To Reproduce

  1. in the floodgate config.yml, set username-prefix to something like "§e"
  2. let a bedrock Player join
  3. see that their name is colored (in the case of §e, yellow)

Expected behavior
the text after the username not to be colored

Screenshots / Videos
colorprefix0
colorprefix1
colorprefix2
colorprefix3
colorprefix4
colorprefix5

Server Version
Waterfall-Bootstrap:1.15-SNAPSHOT:e0795ab:341
git-Spigot-dcd1643-e60fc34 (MC: 1.12.2) and git-Spigot-2040c4c-1872231 (MC: 1.15.2)

Floodgate and Geyser Version
Floodgate pr #30
Geyser 1.0-SNAPSHOT (git-master-43ee7d6)

Minecraft: Bedrock Edition Version
v1.14.60

Alternatives?
a) don't use color codes in username prefix
b) allow for a suffix as well

Additional Context
this also happens if a offline mode java user with color codes in their name joins the server

Add the ability to disable floodgate UUID generation.

Add the ability to disable the generation of separate UUIDs by floodgate so that Java and Bedrock players do not have to pair their accounts via command, the accounts would use the same UUID based on the player's nickname only.

  • This is very necessary for people who need floodgate to see the real IP address of the user.
  • This is helpful for people who have their own user verification system (login and registration).
  • Very helpful for servers with Offline Authentication for Administrators that need bedrock player IP without add-ons.

Feature request: Java/Bedrock account linking

I believe there should be a way to link a player's Java and Bedrock accounts together with Floodgate. This would mean, once linked, the Bedrock account would use the Java account's UUID and username. Some sort of account ownership verification would be required. This feature would allow for a Java player to log off on their computer, and join as the same user on, for example, their phone. While the same thing can be accomplished with online mode, two instances of Geyser would be required, one for the Bedrock only players, and one for the Java/Bedrock players. Not only that, online mode requires the user to log in to their Java account every time, which is inconvenient and (if the Geyser instance is not hosted by the user) insecure. Linking the accounts would skip the Java login process entirely.

Maven build error

I cannot build this project, i get the following error:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3. 1:compile (default-compile) on project floodgate-common: Compilation failure: Co mpilation failure: [ERROR] /home/xevento/temp/Floodgate/common/src/main/java/org/geysermc/floodgate /FloodgatePlayer.java:[4,35] cannot find symbol [ERROR] symbol: class BedrockData [ERROR] location: package org.geysermc.floodgate.util [ERROR] /home/xevento/temp/Floodgate/common/src/main/java/org/geysermc/floodgate /FloodgatePlayer.java:[39,21] cannot find symbol [ERROR] symbol: class BedrockData [ERROR] location: class org.geysermc.floodgate.FloodgatePlayer [ERROR] /home/xevento/temp/Floodgate/common/src/main/java/org/geysermc/floodgate /FloodgateConfig.java:[8,35] cannot find symbol [ERROR] symbol: class EncryptionUtil [ERROR] location: package org.geysermc.floodgate.util [ERROR] -> [Help 1] [ERROR] [ERROR] To see the full stack trace of the errors, re-run Maven with the -e swit ch. [ERROR] Re-run Maven using the -X switch to enable full debug logging. [ERROR] [ERROR] For more information about the errors and possible solutions, please rea d the following articles: [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureExc eption [ERROR] [ERROR] After correcting the problems, you can resume the build with the command [ERROR] mvn <goals> -rf :floodgate-common

replace-spaces missing in config

Java 11.0.7 LTS (AdoptOpenJDK)
Waterfall dev 327 (BungeeCord 1.15.2)
Floodgate development dev 5

replace-spaces: true config option is not generated by default and missing in the config.

38a67ee

/linkaccount doesn't work

I can't get /linkaccount to work. I type /linkaccount MY_GAMERTAG on Java, then go to Bedrock and type /linkaccount MY_JAVA_USERNAME CODE. Instead of linking, it gives me the command usage and doesn't do anything.

image

Add ability to directly link to Mojang account on login

What feature do you want?
This is a request of a functionality which allows directly linking your Bedrock account to your Mojang one instead of having to input your Mojang account's login data to play with your Mojang account or logging in with Floodgate.

Possible ways of doing this:

  • Display an input field which accepts a linking code which you can get when logging in with your Mojang account and running a link command (easy method)
  • Directly link your Xbox account to your Mojang account via Xbox's OAuth (this might be a bit more difficult to do and would require the Geyser software to host a website to get a callback from their API and might even require the server owner to setup their own xbox oauth app or a general geyser one with shared api keys)

Ideally this would be a new auth-type additionally to online, offline and floodgate. Due to the nature of it (requiring a link code from the server side) it might only be possible in the minecraft server/proxy parts or would have to be integrated in Floodgate (maybe it even fits better there, if so feel free to move the issue to that repo. If this would be better in Floodgate then no fake player should ever be visible to the actual server and plugins in order to not cause issues by non-mojang players).

Adding such a feature would enable Geyser to really be usable in front of public servers as it would neither require the user to trust the server by handing over their login data as well as make it compatible with every server plugin which might break due to how Floodgate works.

Alternatives?
A possible alternative would be to use Floodgate and connect players using it to a placeholder server where they can link their account, and only then they could switch to one of the other servers or do anything. This would make the setup way more complex than just having to install Geyser and linking.

the ip arrives late for work

Describe the bug
When a person enters with Geyser, the IP is seen by the machine. If I use a connector or use the bungeecord directly, they receive the IP after actually entering the server with floodgate. Floodgate in fact converts the player afterwards and some plugins that use the prelogin and the login event, give problems because they take the local IP so 127.0.0.1 or IPMACHINE.

To Reproduce

  1. Install a bungeecord with the geyser and floodgate plugin.
  2. Go inside and look at the console.

Expected behavior
The ip must also reach the plugins and the PreLoginEvent

Screenshots / Videos
image

Server Version
[15:48:57 INFO]: This server is running Waterfall version git:Waterfall-Bootstrap:1.16-R0.4-SNAPSHOT:40370a3:388 by md_5

Geyser Version
[15:48:01 INFO]: Questo server usa Geyser versione 1.2.0-SNAPSHOT (git-master-2f294c9) (Java: 1.16.4, Bedrock: 1.16.100/1.16.101 - 1.16.200.56)
I'm 3 versions back, but I don't see big fixes on this as it's floodgate.

Floodgate Version
Floodgate: 1.0 - ALPHA

Minecraft: Bedrock Edition Version
1.16.101

Dump
https://dump.geysermc.org/mKIGWjo2TUzcwFPQ9OOFSR66JUhZOjP8

An idea
I have seen the floodgate GITHUB code and noticed that the priority is on -32 instead of -64. Then, is the PreLoginEvent listener inserted? Could help?

Additional Context
🌵

Add support to MySQL

Hi, i'm a server owner and i have multiple proxyies, this plugin is really revolutionary but the circumstances makes the account linking impossible.

If i have multiple proxies i can't link the account on all the proxies so i might suggest to create a hook with mysql that can link multiple proxies so we can have the benefits of linking account but with multi proxy support.

Downstream packet error! Invalid packet id: 25 & more

Describe the bug

I am on Velocity 1.1.0-SNAPSHOT and Paper 228.
Geyser is installed on Velocity. Floodgate is installed on both Velocity and Paper.
This bug occurs when a Bedrock player attempts to connect to the Velocity proxy. The player connects without anything loaded for a split second, and then disconnects with "Connection closed." message.

Here is a full log of the error on Paper: https://paste.mod.gg/sadecefuha.md.

The Geyser plugin on Velocity spits this out:

[15:00:51 INFO] [geyser]: Attempting to login using floodgate mode... authentication will be encrypted.                                     
[15:00:51 INFO] [geyser]: Loaded Floodgate key!
[15:00:52 INFO] [geyser]: Kot9744 (logged in as: Kot9744) has connected to remote java server on address 127.0.0.1                          
[15:00:53 WARN] [geyser]: Downstream packet error! Invalid packet id: 25                                                                    
[15:00:53 INFO] [geyser]: Kot9744 has disconnected from remote Java server on address 127.0.0.1 because of Connection closed.               
[15:00:53 INFO] [geyser]: Bedrock user with ip: /MY-IP has disconnected for reason CLOSED_BY_REMOTE_PEER

To Reproduce

I have not tried to reproduce this bug, but it is fairly straightforward TMK.

  1. Download Velocity
  2. Download Paper
  3. Install Geyser and Floodgate on Velocity.
  4. Install Floodgate on Paper.
  5. Configure both instances to use Floodgate. Copy the private keys to the floodgates, and the public key to Geyser.
  6. Attempt to connect using a Bedrock client.

Expected behavior

The user can connect to the server.

Server Version

Velocity: Velocity 1.1.0-SNAPSHOT (git-3b1009ca-b262)
Paper: This server is running Paper version git-Paper-228 (MC: 1.16.3) (Implementing API version 1.16.3-R0.1-SNAPSHOT)

Geyser Version

Geyser is on version 1.1.0. Floodgate is on 1.0-SNAPSHOT
I am using Floodgate-Velocity on Velocity, Floodgate-Bukkit on Paper.

Minecraft: Bedrock Edition Version

1.16.40 - I was told there are no protocol revisions between 1.16.2 and 1.16.40.

Additional Context

Here is the Geyser dump. https://dump.geysermc.org/Q6Td3MZ5dLqkxvnBul1fp7UKsvldT93U

"linked-players.db" never seems to get created.

Using latest build of: floodgate-bungee running on waterfall (a bungee fork)

I have enabled account linking and restarted server, however I get a nullpointerexception thrown by org.geysermc.floodgate.link.SQLitePlayerLink.lambda$isLinkedPlayer$1(SQLitePlayerLink.java:60) anytime I try to run linkaccount from within java edition, which makes sense since there isn't a sqlite db in the plugin folder.

Looking at the code, I don't seem to see any mention of creating the linked-players.db sqlite database, only connections and queries against it.

Full stack trace:

waterfall_1    | [12:57:45 ERROR] [floodgate-bungee]: Error while checking if player is a LinkedPlayer
waterfall_1    | java.lang.NullPointerException: null
waterfall_1    |        at org.geysermc.floodgate.link.SQLitePlayerLink.lambda$isLinkedPlayer$1(SQLitePlayerLink.java:60) ~[?:?]
waterfall_1    |        at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1590) ~[?:1.8.0_212]
waterfall_1    |        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) ~[?:1.8.0_212]
waterfall_1    |        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ~[?:1.8.0_212]
waterfall_1    |        at java.lang.Thread.run(Thread.java:748) [?:1.8.0_212]

Update: found the root cause of the problem:
[13:33:30 ERROR] [floodgate-bungee]: The required class to load the SQLite database wasn't found

I have tried compiling from scratch and get the same error

Admin level account information

It would be great to have some admin commands to check if players are Floodgate players.

Ideally it should behave like so:

  • If a player is a legit Java player with nothing to do with Floodgate, a notice is displayed.
  • If a player is a legit Java player, but has Floodgate account(s) linked to it, then display its linked Xbox gamertag(s) and XUID(s).
    If the player is currently playing via Bedrock, an additional notice is displayed stating the current Xbox gamertag being used.
  • If a player is only playing via Bedrock only, a notice is displayed (with gamertag and XUID).

Could you make a Fabric version of this plugin. It would be very useful!

Things that would be possible if this was made a fabric mod:

  1. Using some useful mods that aren't available as plugins such as Gnembon's Carpet Mod
  2. Better performance. Lithium + Phosphor = Omega Server Performance. Sadly Paper ruins a lot of mechanics. Fabric is Vanilla Minecraft with wrapping paper around it and a bow on top.
  3. Even though more people do use Paper, they would much rather use a Vanilla server that doesn't break mechanics. The only reason they use Paper is because it "performs better". Lithium + Phosphor actually performs equally the same.
  4. Who doesn't like modded Minecraft? I mean being able to play with your Bedrock Friends on modded Minecraft! That would be INSANE. I do know that only server side mods are compatible, but there are still really good server side mods!
  5. I have been using Geyser for more than 4 months. I like how fast you guys update bugs and add new content. I feel like this idea would take a decent amount of time.

Alternative: I use this fabric mod called Bukkit4Fabric( https://www.curseforge.com/minecraft/mc-mods/bukkit ). If you could some how make it compatible with this version of bukkit/spigot, that would probably be easier. Of course you could tell me that this will never happen. Would I be upset, 100%. Would I see why you said so, 100%. I feel like you were going to do this anyways, but I just wanted to spark the idea some more. I have committed the other issue post about this, but I feel like they didn't give enough evidence to support their idea. I hope I gave enough. If you do, this is definitely becoming my favorite plugin!

NoSuchMethodError Enabling Floodgate on Velocity

Stacktrace:

java.lang.NoSuchMethodError: com.velocitypowered.api.command.CommandManager.register(Ljava/lang/String;Lcom/velocitypowered/api/command/Command;[Ljava/lang/String;)V
        at org.geysermc.floodgate.VelocityPlugin.onProxyInitialization(VelocityPlugin.java:96) ~[?:?]
        at net.kyori.event.asm.generated.fe6d95e326.VelocityPlugin-onProxyInitialization-ProxyInitializeEvent-4.invoke(Unknown Source) ~[?:?]
        at net.kyori.event.method.SimpleMethodSubscriptionAdapter$MethodEventSubscriber.invoke(SimpleMethodSubscriptionAdapter.java:148) ~[velocity.jar:1.0.10-SNAPSHOT (git-b26c9026-bunknown)]
        at net.kyori.event.SimpleEventBus.post(SimpleEventBus.java:107) ~[velocity.jar:1.0.10-SNAPSHOT (git-b26c9026-bunknown)]
        at com.velocitypowered.proxy.plugin.VelocityEventManager.fireEvent(VelocityEventManager.java:136) ~[velocity.jar:1.0.10-SNAPSHOT (git-b26c9026-bunknown)]
        at com.velocitypowered.proxy.plugin.VelocityEventManager.lambda$fire$0(VelocityEventManager.java:117) ~[velocity.jar:1.0.10-SNAPSHOT (git-b26c9026-bunknown)]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[?:?]
        at java.lang.Thread.run(Thread.java:834) [?:?]

Velocity's modern forwarding doesn't work in combination with send-floodgate-data

Describe the bug
If velocity is connecting using forwarding-mode = "MODERN"
and you set send-floodgate-data to true on velocity.
Then you will be meat with the measge Can't connect to server : The server requires you to connect with velocity. wich resaults in you not being able to join

To Reproduce

  1. Make a velocity server network (make sure to use forwarding mode Modern)
  2. Install floodgate (server and proxy) and geyser (proxy only)
  3. copy floodgate key to all servers(So they match)
  4. open floodgate config and change (send-floodgate-data: false) to true
  5. open bedrock and connect.
  6. see error message

Expected behavior
That floodgate sends trough all the data to the other server and you dont get the Can't connect to server : The server requires you to connect with velocity when joining.

Screenshots / Videos
https://ibb.co/hgSfdgq

Server Version
Paper(284) 1.15.2-RO.1-SNAPSHOT

Floodgate and geyser Version
Geyser #152 and tested on both Floodgate pr30 and #21 (tested 21 with keyfiles and config from pr30, and with a brand new config and key)

Minecraft: Bedrock Edition Version
v1.14.60

Additional Context
i did check that i have the proxy ip and not the servers itself. and only happens when the data pass trough is turned on.

ProtocolSupport is incompatible

Describe the bug
When connecting with MCPE iOS, the user returns the error
Invalid packet id: 27
Only while using Floodgate authentication and the ProtocolSupport plugin. without floodgate, the system both works in online and offline modes. Java Minecraft players can connect in any version, as is supported by ProtocolSupport.

To Reproduce
Install Geyser-Bukkit, Floodgate-Bukkit and ProtocolSupport on a PaperMC server in /plugins/. Configure Geyser to use Floodgate.
When the bug occurs, the output is exactly the same as that of an incorrectly configured Floodgate installation

Server Version
[17:13:44 INFO]: This server is running Paper version git-Paper-301 (MC: 1.15.2) (Implementing API version 1.15.2-R0.1-SNAPSHOT)

Geyser Version

Minecraft: Bedrock Edition Version
1.14.60 hotfix

Changing username-prefix has no effect

Issue description

Floodgate does not change the prefix when updated in config.yml, and stays as *.

Steps to reproduce the issue

  1. Change 'username-prefix' in config.yml
  2. Restart server
  3. Join server using a Bedrock Edition account

What's the expected result?

  • Player name shows prefixed with the selected username-prefix (in my case, BE_)

What's the actual result?

  • Player name shows prefixed with a *

Additional details / screenshot

I am using git-Paper-39 (MC: 1.16.1) with GeyserMC and Floodgate.
Server is running Ubuntu (I am unable to confirm version as I do not have root access).

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.