Comments (22)
Should be resolved in the latest build. Thanks for reporting!
from floodgate.
Yes, this is happening here too. I'm desperate because my players, both Java and Bedrock, can't log in. I even went so far as to blame ViaVersion.
from floodgate.
Can you post full logs and a Geyser dump if relevant?
from floodgate.
@Camotoy Sorry but it's not the Geyser dump. This is what is happening on my Proxy. Kicks players as they enter.
[21:16:46 ERROR]: [/0.0.0.0|frestxl] <-> DownstreamBridge <-> [lobby] - encountered exception
java.lang.NullPointerException: Cannot invoke "java.util.Locale.getLanguage()" because "locale" is null
at org.geysermc.floodgate.util.Utils.getLocale(Utils.java:87) ~[?:?]
at org.geysermc.floodgate.util.BungeeCommandUtil.getUserAudience(BungeeCommandUtil.java:66) ~[?:?]
at org.geysermc.floodgate.player.audience.FloodgateSenderMapper.map(FloodgateSenderMapper.java:44) ~[?:?]
at org.geysermc.floodgate.player.audience.FloodgateSenderMapper.map(FloodgateSenderMapper.java:34) ~[?:?]
at org.geysermc.floodgate.shadow.org.incendo.cloud.bungee.BungeeCommand.hasPermission(BungeeCommand.java:83) ~[?:?]
at net.md_5.bungee.connection.DownstreamBridge.handle(DownstreamBridge.java:806) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
at net.md_5.bungee.protocol.packet.Commands.handle(Commands.java:230) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
at net.md_5.bungee.netty.HandlerBoss.channelRead(HandlerBoss.java:127) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:289) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:442) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:346) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:333) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:455) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:290) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:440) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:801) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:501) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:399) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
at java.lang.Thread.run(Thread.java:840) [?:?]
from floodgate.
@Camotoy Sorry but it's not the Geyser dump. This is what is happening on my Proxy. Kicks players as they enter.
[21:16:46 ERROR]: [/0.0.0.0|frestxl] <-> DownstreamBridge <-> [lobby] - encountered exception java.lang.NullPointerException: Cannot invoke "java.util.Locale.getLanguage()" because "locale" is null at org.geysermc.floodgate.util.Utils.getLocale(Utils.java:87) ~[?:?] at org.geysermc.floodgate.util.BungeeCommandUtil.getUserAudience(BungeeCommandUtil.java:66) ~[?:?] at org.geysermc.floodgate.player.audience.FloodgateSenderMapper.map(FloodgateSenderMapper.java:44) ~[?:?] at org.geysermc.floodgate.player.audience.FloodgateSenderMapper.map(FloodgateSenderMapper.java:34) ~[?:?] at org.geysermc.floodgate.shadow.org.incendo.cloud.bungee.BungeeCommand.hasPermission(BungeeCommand.java:83) ~[?:?] at net.md_5.bungee.connection.DownstreamBridge.handle(DownstreamBridge.java:806) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577] at net.md_5.bungee.protocol.packet.Commands.handle(Commands.java:230) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577] at net.md_5.bungee.netty.HandlerBoss.channelRead(HandlerBoss.java:127) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577] at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577] at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:289) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:442) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577] at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577] at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577] at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577] at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:346) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577] at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:333) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577] at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:455) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577] at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:290) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577] at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577] at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:440) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577] at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577] at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:801) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577] at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:501) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577] at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:399) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577] at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577] at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577] at java.lang.Thread.run(Thread.java:840) [?:?]
Exact same issue here.
from floodgate.
Testing a few Floodgate builds ago doesn't cause this.
from floodgate.
Testing a few Floodgate builds ago doesn't cause this.
Same here, I've reverted back for now to mitigate the issue.
from floodgate.
Do any of you have disabled commands in your Bungee config?
from floodgate.
There are no commands disabled in my Waterfall config. (Except "bungee" command but this is default).
from floodgate.
Testing a few Floodgate builds ago doesn't cause this.
Same here, I've reverted back for now to mitigate the issue.
Another thing, it was very difficult to find previous builds as there is no download button for other builds on the website. I had to go to Github Actions, download the zipped Build and extract it to get the jar.
from floodgate.
I cannot replicate it. I've tried with forwarding on and off, I've tried with Waterfall and Bungee, I've tried with 1.20.6 and 1.20.4, I've tried with and without LuckPerms. Something's missing - I need all the information on your setups that I can get, that you're comfortable with sharing.
from floodgate.
I cannot replicate it. I've tried with forwarding on and off, I've tried with Waterfall and Bungee, I've tried with 1.20.6 and 1.20.4, I've tried with and without LuckPerms. Something's missing - I need all the information on your setups that I can get, that you're comfortable with sharing.
In my case it is happening in:
Waterfall #577 - Java 17
Backend: 1.12.2(Dionysus git 899c2f4) - Java 17
If you enter 1.20.4 and 1.20.6 in Java you will not have this problem. However, if you enter something like 1.18.2, you will be disconnected with the error described.
In the case of Bedrock players, the same error occurs and they are disconnected.
from floodgate.
We have been talking about the problem here, in my tests you can enter with current clients, but from 1.20.1 onwards it no longer allows entry.
My tests have been on the latest version of both geyser and floodgate and bungeecord and papermc
from floodgate.
I am still unable to replicate this issue, but i think this was caused by bumping cloud from beta.2 to a newer snapshot, which introduced the changes in hasPermission: Incendo/cloud-minecraft@857e537, which invokes the floodgate sender mapper, and then failing here.
The root cause here seems to be that bungee's getLocale()
method returned null here; ill see if i can track that down.
from floodgate.
Was able to replicate with calling getLocale
during the post login event; that returns null. Made a BungeeCord issue: SpigotMC/BungeeCord#3680
I will open a floodgate PR to fall back to the default locale though in this case.
EDIT: This is, apparently, intended. The PR addresses this issue properly by not assuming locale to be NonNull.
from floodgate.
Latest has resolved this issue on our end.
Thank you! :)
from floodgate.
I would just like to point out the difficulty of finding previous builds in cases like this, as the site only has downloads for the most recent version.
from floodgate.
Thank you very much for reviewing and fixing the error!
from floodgate.
I would just like to point out the difficulty of finding previous builds in cases like this, as the site only has downloads for the most recent version.
Thankfully we build the project on our jenkins, so have older builds available for testing.
Would be nice if Floodgate/Geyser had a jenkins/similar.
from floodgate.
Well there is a very badly advertised official jenkins: https://ci.opencollab.dev/job/GeyserMC/
from floodgate.
Neither Floodgate nor Geyser are uploaded to the Jenkins anymore, hence why it is badly advertised. (Even when it did, Geyser only kept the last 20 builds).
Thank you for your suggestions on older builds.
from floodgate.
Making older builds available isn't generally something we're really interested in - since especially Floodgate is compatible all the way back to 1.8.9, and Geyser to 1.16.5, so there isn't a big use for old builds.
However, for cases such as these - or finding regressions - having access to the last 10-20 builds seems reasonable, I agree.
Maybe we could start uploading all builds to modrinth; that would have the benefit - meaning that we wouldn't need our own additional infrastructure/downloads site with a build picker. Not sure though, we'll see
from floodgate.
Related Issues (20)
- Excessive session server lookups (velocity & potential other platforms) HOT 1
- [org.geysermc.floodgate.event.EventBus] Cannot invoke "net.skinsrestorer.shared.storage.adapter.StorageAdapter.getPlayerData(java.util.UUID)" because the return value of "net.skinsrestorer.shared.storage.adapter.AdapterReference.get()" is null HOT 1
- Install floodgate-velocity on velocity cause Java player cannot login HOT 2
- Skins aren't applying if using cape o a special skin (like earth one) on offline servers HOT 2
- Working with uuid and xuid HOT 19
- UnknownHostException leads to players timing out
- Missing locale / Not supported locale
- Bedrock player sees themselves as Steve HOT 12
- Floodgate doesn't load under Spigot 1.21 HOT 1
- Unlinked players are kicked from the server with the message "floodgate.core.not_linked https://link.geysermc.org/".
- Player Gets Kicked Upon Opening Inventory HOT 1
- link command not found in backend server HOT 3
- Add a new linkaccount command to let OP directly link 2 accounts HOT 1
- Where can I get the version with 1.16 support? HOT 5
- Floodgate debug does not work. HOT 1
- Floodgate swallowed my name! HOT 1
- Tried to connect as a Java Edition player! Is Floodgate configured correctly? HOT 2
- Players logged in as floodgate do not seem to check the whitelist HOT 12
- Feature Request: /fop & /fdeop
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from floodgate.