#waterfall-github
1 messages ยท Page 2 of 1
[19:51:04 ERROR]: [/188.69.209.5:52564|vegetafan] <-> DownstreamBridge <-> [s2] - encountered exception
io.netty.handler.codec.CorruptedFrameException: Empty Packet!
at net.md_5.bungee.protocol.Varint21FrameDecoder.decode(Varint21FrameDecoder.java:44) ~[server.jar:git:Waterfall-Bootstrap:1.14-SNAPSHOT:1f16030:286]
at io.netty.handler.codec.ByteToMessageDecoder.decodeRemovalReentryProtection(ByteToMessageDecoder.java:502) ~[server.jar:git:Waterfall-Bootstrap:1.14-SNAPSHOT:1f16030:286]
...
Something on your server caused an empty packet to be sent to the proxy, by default bungee considers this an error, whereas the client will generally just ignore it. There is an option in waterfall.yml to allow such broken state, however you should generally look into finding what is causing it and removing it.
I get this a lot in my logs, and its all the same IP.
[10:58:03] [Netty Worker IO Thread #0/WARN]: Error whilst handling query packet from /195.201.249.154:60159
java.lang.IllegalStateException: No session!
at net.md_5.bungee.query.QueryHandler.handleMessage(QueryHandler.java:99) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.14-SNAPSHOT:1f16030:286]
at net.md_5.bungee.query.QueryHandler.channelRead0(QueryHandler.java:60) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.14-SNAPSHOT:1f16030:286...
There isn't much we can do about invalid traffic being sent to the proxy, we could probably remove the trace itself like other exceptions in this area, but overall, the proxy is working as intended
I have been having issues with people randomly getting kicked from the servers I have under waterfall with:
internal Exeption: java.net.socketException: connection reset
looking up the bungee logs:
I have redacted username and IP:
[13:14:08] [Netty Worker IO Thread #4/INFO]: [/5.66.777.8:51170] <-> InitialHandler is pinging
[13:14:08] [Netty Worker IO Thread #6/INFO]: [/5.66.777.8:51171] <-> InitialHandler has connected
[13:14:09] [Netty Worker IO Thread #6/INFO]: [Usernameredact...
java.net.socketException: connection reset - The connection was improperly closed by a remote, are players actually complaining about this? if so, you'll need their client logs to check for any errors, etc; if they're not complaining, they're probably just closing the client improperly
Changing actual configuration values is not something bungee does on its own, your configuration is also formatted improperly, incorrect tabbing etc, hence why you're getting that exception
What usually happens is a large group gets kicked at once, so if there's 40 online 15 might all be disconnected at the same time in bulk, yes they are complaining, not sure why this was closed? it's quite an annoying bug.
Connection reset means that the connection was improperly closed by a remote node, not by waterfall; Sounds like either something is sending info to clients which is causing them to kill or there is an issue with your network in general, overall I can't see a waterfall issue here given the generic nature of the issue, we'd need more info to confirm that an issue exists with waterfall
Waterfall itself cannot change the file like that, nor does it make any configuration changes itself, are you using some startup scripts that might be modifying the configs or something?
java -server -Xmx2048M -jar waterfall.jar nogui
this is my full startup code
I don't know what's going on with your bungeecord. Both configs you sent are invalid.
In your original config one space at start of the line is missing in lines 4, 20, 32 and 35.
Yaml is space-sensitive.
It is waterfall, like I reported. I disabled use_netty_dns_resolver and I haven't seen a mass kick of users since, time will tell.
I will keep this ticket updated with any more inconsistencies with keeping a user connected to the bungee.
I have noticed this before. Need to fully understand when TCP channels go inActive vs closing... I believe the 'active' state changes immediately, then 'close' doesn't fulfill until the underlying socket itself is closed (which may have to wait on a selector channel).
// Waterfall comment is missing when you do that change.
Hello,
currently our bungeecord is crashed after my research with the help of wrong packets. The crash is so that the proxy is not reachable for about one minute and is then reachable again. Here's the exception:
`io.netty.handler.codec.DecoderException: java.lang.RuntimeException: VarInt too big
at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:98) ~[bungee.jar:git:Waterfall-Bootstrap:1.14-SNAPSHOT:c0c84ca:287]
at io.netty.channel.AbstractChann...
It is not related to the proxy itself, someone is sending invalid packets
@xxDark I am aware of this, but I have a problem with the fact that the proxy is not reachable for about one minute and all players are kicked. If only the error in the console would come, I wouldn't have a problem with it.
And one more thing: how this is useful?
This should help with high memory usage introduced by storing scoreboard teams in memory.
Personally I find that disabling Scoreboard API is bit invasive, team objects could be improved by turning name tag visibility/collision rule flags into enums (which requires de-Lomboking the methods and more care on updates).
This is getting ridiculous now, my last ticket got closed without even looking into this.
This is happening to a LOT of my users.
I have had my server for 6 years and this has just started happening out of the blue, I am the server owner and its happened to me after playing for about 60 mins in a stable internet connection, I know I haven't had this issue before, its Bungee/Waterfall issue.
Searching for the word "WARN" in my latest bungee log brings back 1152 results... This isn't ...
You have to sort this out with your hosting provider.
As with any networking program getting a "Connection reset by peer" is not something you could mitigate at the application layer.
@Black-Hole it's a Dedi box on kimsufi, how do I diagnose the issue? It's basically no support unless you tell them exactly what's wrong. I have no idea how to diagnose this. Ovh the parent company is massive, but it's not Minecraft specific.
I don't know, but as said before Waterfall gets a message from the TCP stack of the operating system that the connection was closed remotly. And there is nothing to do about that in Waterfall.
What's the purpose of this commit? Does it lower cpu or memory consumption? If so, do you have some some tests that's shows this?
What's the purpose of this commit? Does it lower cpu or memory consumption? If so, do you have some some tests that shows this?
Reduces array creation caused by invoking events via reflection, since java.lang.Method.invoke(...) creates new array on each invocation, this commit replaces it with direct MethodAccessor's, and array is created only once.
Will provide tests maybe tomorrow, cuz I'm a bit tired rn
You are missing a bunch of // Waterfalls, also why you exclude classes from compiling? One more thing: you are making new classes which are specific for waterfall under the net.md_5 package, while you should make it under io.github.waterfallmc.waterfall
[10:30:21 ERROR]: Exception in thread "main" java.lang.NoClassDefFoundError: org/jline/terminal/Terminal$MouseTracking
[10:30:21 ERROR]: at org.jline.reader.impl.LineReaderImpl.doCleanup(LineReaderImpl.java:2345)
[10:30:21 ERROR]: at org.jline.reader.impl.LineReaderImpl.cleanup(LineReaderImpl.java:2332)
[10:30:21 ERROR]: at org.jline.reader.impl.LineReaderImpl.readLine(LineReaderImpl.java:626)
[10:30:21 ERROR]: at org.jline.reader.impl.LineReaderImpl.readLi...
The purpose of those classes excluded from jar packing is that he apparanrly didnt find a library for these jdk internal classes to add.
The purpose of those classes excluded from jar packing is that he apparanrly didnt find a library for these jre-internal classes.
Nope, jdk.internal.reflect is sun.reflect since jdk 9, that's why dummy classes was added.
Related: PaperMC/Paper#894 (comment)
My problem is waterfall, and you tag is paper problem mean, i not have paper problem.
The issue is generally the exact same cause, can you reproduce this issue?
Any updates on this?
Even if you have a million entries, assuming the overhead is as high as 64 bytes per entry (way more than it actually is), that's only 64MB of RAM.
I don't see why this change is necessary, and sorting the set each time an entry is added is horrible for performance.
This class has been primed for removal, just; Dreadful mistake of installing Catalina meant that I couldn't make the relevant changes, I'll try and get to this later goes back to huggling mojave
Same changes as in https://github.com/PaperMC/Paper/pull/2299. Update TCA + JLine, replace JNA with Jansi. Also updated Log4j2 while I was at it :)
Hello!
I am having trouble connecting to my Thermos server.
My current network is:
Server 1 : Travertine #105
Server 2: Paper-1.12.2-b1618
Server 3: Thermos build 58
With modpack 1.7.10 I can enter server 2 without problems, but when entering server 3 (thermos) my client crashes.
Client crash: https://pastebin.com/raw/YG0RzTji
Log Travertine: https://pastebin.com/raw/hShKkpwB
Log Paper: https://pastebin.com/raw/kjeEiQbW
Log Thermos: https://pastebin.com/raw/uXDBUERQ
Does connecting directly with a forced host help? Have you tried disabling
entity metadata rewiring in waterfall.yml? Ultimately, forge and bungee in
general are a bit of a sticky topic in which it's mostly down to mods to
handle bungee properly, shamefully, many don't and won't work with bungee
at all as stuff occurs which they don't expect
On Mon, 22 Jul 2019, 22:45 HeberonYT, notifications@github.com wrote:
Hello!
I am having trouble connecting to my Thermos server.
My current ne...
ยฟShould the LOST_CONNECTION message be sent by waterfall after a player disconnects by his own from a server? I thought that it would only be sent if the player loses the connection unexpectedly.
Here is the case, I have a lobby-kick plugin, and it's configured to detect the lost_connection message that I have. When a player disconnects from the whole server, that message is sent and the plugin detects it and tries to send the player to the lobby. It causes "the Unexpected packet received ...
could this theoretically be an issue also with bungeecord? in that case opening an issue there too would be a good idea.
where is your plugin operating? where is the message printed which your plugin detects?
@electronicboy
Thanks for your answer.
This is the configuration of my waterfall.yml
use_netty_dns_resolver: true disable_entity_metadata_rewrite: true disable_modern_tab_limiter: true log_initial_handler_connections: true throttling: tab_complete: 1000 game_version: '' allow_empty_packets: false
I have also tried to remove all mods from the server and client and only leave thermos installed, but crashing is still present on the client.
The only thing I need to try is t...
kpmyon] <-> DownstreamBridge <-> [shengcun] - encountered exception
java.lang.IllegalArgumentException: Unknown meta type 14: Using mods? refer to disable_entity_metadata_rewrite in waterfall.yml
at net.md_5.bungee.entitymap.EntityMap.rewriteMetaVarInt(EntityMap.java:283) ~[waterfall-289.jar:git:Waterfall-Bootstrap:1.14-SNAPSHOT:eb6cf93:289]
at net.md_5.bungee.entitymap.EntityMap.rewriteMetaVarInt(EntityMap.java:135) ~[waterfall-289.jar:git:Waterfall-Bootstrap:1.14-SNAPSHOT...
java.lang.IllegalArgumentException: Unknown meta type 14: Using mods? refer to disable_entity_metadata_rewrite in waterfall.yml disable entity metadata rewriting
What message exactly? How are they disconnecting? (there is a huge difference between clicking disconnect and closing the minecraft window); Logs?
Sorry to bother, I didn't look carefully.
@electronicboy The plugin is set to listen for the message "lost_connection=[Proxy] Lost connection to server."
They are disconnecting clicking disconnect, as I tried it myself.
I don't have a clear log, but I tried to see what happens in the console
`
[23:26:20] [Netty Worker IO Thread #16/INFO]: [/|AlexReq] -> UpstreamBridge has disconnected
[23:26:20] [Netty Worker IO Thread #16/INFO]: [/|AlexReq] <-> DownstreamBridge <-> [murder] has disconnected
[23:26:20] [Netty Worker I...
Can you replicate this without plugins? The logs look normal up until the point that it's trying to move somebody to another server, I believe that there is a case in which waterfall fires an event when bungee doesn't which can cause issues for some plugins
Doesn't happen anymore.
After updating to 289 waterfall seems to ignore what is set in "game_version:" and accepts all connections again.
game_version only controls what's sent to the client for the server list ping, it's part of what displays on a protocol version mismatch
beeing only to display a version at mismatch: colsing does not solve it.
It still not shows the entry 1.14.2 when i load the serverlist with 1.8.9 ... so it still does not work and is an issue since last version? It worked before updating.
Configuration? screenshots?
From what I can see your issue is a misunderstanding of what that configuration does
i do not missunderstand โฆ. it worked before โฆ
it should show a red "1.14.2" instead of the players on the 1.8.9 client shouldn't it ?
Bungee itself doesn't know the version of the backend server, for 1.14.3 on the earlier build it would show that info, but as the newest version of waterfall supports 1.8-1.14.4, it's happy as is; Enabling ping-forwarding in config.yml will make it forward the ping to the server which will return the correct version info
Players are unable to connect using Minecraft 1.7, Travertine shows this error:

I am using Spigot 1.8 with ViaRewind. Is this a Travertine or a ViaRewind problem?
Provided is the error when a user is trying to join 02.08 13:13:53 [Server] WARN [io.netty.util.concurrent.AbstractEventExecutor]: A task raised an exception. Task: net.md_5.bungee.connection.InitialHandler$6$1@4238b77f
02.08 13:13:53 [Server] INFO java.lang.IllegalStateException: Default server not defined
02.08 13:13:53 [Server] INFO at com.google.common.base.Preconditions.checkState(Preconditions.java:444) ~[waterfall-290.jar:git:Waterfall-Bootstrap:1.14-SNAPSHOT:c3d67e5:290]
02.08 13:1...
I closed this thinking I solved it but it still is showing the error sorry about that.
Your configuration file is incorrect and likely doesn't define any priorities in the listener (outside of a plugin), I'd suggest joining discord/using the forums for support
lost connection when chat only full-width space ("ใ")
use version๏ผwaterfall#290
console log๏ผhttps://pastebin.com/JZ94cpj1
image๏ผ

This is intentional, not 100% on why it was done, but there is a good chance that it was treated differently in older client versions than it is now
Doesn't the remaining part of the patch (the String.intern()) create a memory leak, because all names that have ever been added to the Team will never be removed from the memory again?
I'm sure the intern list/map is using weak references.
Should be changed probably to only check is empty in higher client versions.
Hello,
I was wondering if there was a way to disable the item change animation when switching servers? At the moment when I change servers, the playOutHeldItemChange packet gets sent, which looks like it triggers the animation... is there any way to disable it?
Thank you very much in advance.
Half of player were kicked after the error.
Waterfall-290
PaperSpigot 1.14.4
Error log:
06.08 22:18:30 [Server] WARN No client connected for pending server!
06.08 22:18:30 [Server] INFO 0d0100
06.08 22:18:31 [Server] WARN No client connected for pending server!
06.08 22:18:31 [Server] INFO 0d0100
06.08 22:18:31 [Server] WARN No client connected for pending server!
06.08 22:18:31 [Server] INFO 0d0100
Not enough information, please paste your logs/latest.log into gist.github.com
Why would you want to disable that exactly?
This is Widely known "bug" in bungeecord. The main reason is the wrong uuid of players. But I still hope you guys fix it soon, Velocity Proxy have fixed it already, so I belive there's a way to fix it.
We need more information, as this 100% works fine in a properly configured/supported environment
The new server is sending the last known cursor position of the hotbar / the default one / the one set by a plugin on join.
I'm using travetine now.
Proxy config:
ip_forward: true
online_mode: false
Spigot: 1.8.8 paperspigot.
Spigot server.properties
online_mode: false
Spigot spigot.yml
bungeecord: true
online_mode: false You need to have the proxy in online mode for skins, the correct UUID is handled by the proxy and sent to backend servers
I have said "Skins are not showing in offline mode." in the title and I need you guys to make skin works on offline mode. Velocity proxy have fixed this issue already.
Sorry, I didn't read the title properly, there are plugins to achieve this, but you set the proxy into offline mode and told it not to contact mojangs API, I'm not really sure why you're expecting a different behavior
This would be a nice feature because there isnt really another reason to use Waterfall over Bungecord in my opinion
Waterfall does a bunch of performance improvements. Thats why you should be using it
@Janmm14 could you help me as to tell me where that is?
Thank you very much.
Intercept said packet, cancel sending and move handling to plugin installed on the proxy. Should be easily doable, just don't forget to keep slot state sync with backend servers (e.g via plugin messages - tell server about new slot state on join)
SkinsRestorer for example
Where am I able to intercept that packet? I've tried downstreambridge but doesn't seem to be working
@mikroskeem
Where would I be able to find the code to intercept this packet? I've tried downstreambridge.java but it doesn't seem that I can cancel it there.
you have to add a new packet in the protocol module and register it, and then in the proxy module you have to update the interface of downstreambridge for handling, and then you can handle it in downstreambridge
^ Bungee requires that packets are registered in order to be able to "intercept" them, otherwise, they're just passed straight through. Ultimately, the client was never really intended to be used like this, you could test if the disable entity metadata in waterfall.yml provides a nicer transfer experience given that it forces more client state to be in a "we're joining a server" vs "we're switching dimension", or try to control what the client is sent more as above
Looks like this one missed my eyes, basically, the setting works, but it seems to be pretty easy to break with some plugins, shamefully there is very little that I can do about this (without implementing 20 dozen ways for it to detect and avoid rewriting...), bungees design just really makes handling more invasive configurations a challenge around other plugins
This work in progress server was connected to a test Waterfall instance on port 25566 while our main instance was on port 25565. It seems like multiple things including the meta rewriting didn't work as intended on servers connected to the second Waterfall instance. Option works fine on the main Waterfall server and I decided to move any test servers to the main Waterfall as well now.
the 290th update of waterfall made ServerListMotdBungee plugin to stop changing motd, I thought I should report this, works perfectly on 289th
Please provide more information, like proxy log if you can see any errors.
Waterfall made no changes that would impact motds, only internal code; if this impacted a plugin, they need to update to accommodate the changes
[PaperMC/Waterfall] Issue opened: #418 If a player has a potion effect,he will be kicked from server
MC:1.12.2
Forge:14.23.5.2838
SpongeForge:1.12.2-2825-7.1.6
As long as the player gets the potion effect, he will be kicked out.
Waterfull show that bad packet ID, are mods in use!? Did not read all bytes from packet class net.md_5.bungee.protocol.packet.EntityEffect 79 Protocol GAME Direction TO_CLIENT
There are many potion effects in mods which I install in my server.Will this have any impact?
You have a mod which is modifying the contents of the potions packet, waterfall cares about this in order to fix a race condition with forge, which makes this a fun one to solve; Would really need to know what these mods are doing to the packet in order to determine a proper fix
I think I found it.If I install Just Enought IDs,it will happen.After that,I remove that,waterfull work properly.
You have a mod which is modifying the contents of the potions packet, waterfall cares about this in order to fix a race condition with forge, which makes this a fun one to solve; Would really need to know what these mods are doing to the packet in order to determine a proper fix
I have the same problem and same error logs with slashblade and tinkersconstruct
slashblade : when the player is using a sa, he's kicked out
tinkersconstruct๏ผwhen the player triggers some special effects of ce...
this all LGTM. might end up pulling it into Waterdog if it doesnt end up getting merged here
Waterfall improved the ServerKickEvent to cover more cases, (#39), this is great because it lets plugins capture certain situations easier than vs bungee, however;
Specifically, the LOST_CONNECTION cause is generic and fired should the client disconnect from the client, leading to a specific edge case which plugins do not expect: The client has disconnected from the server
I guess this opens a question of what is the best way to go for this:
- Move lost connection to its own event, ...
Removed the try/catch, this woulda incorrectly wrapped exceptions here
fa0711d Speed up packet construction (#373) - mikroskeem
java.lang.IllegalAccessError: class net.md_5.bungee.event.InternalReflectionFactory$1 (in unnamed module @0x32a068d1) cannot access class jdk.internal.reflect.ReflectionFactory (in module java.base) because module java.base does not export jdk.internal.reflect to unnamed module @0x32a068d1
Last couple weeks has been really rough for my server because players are randomly getting kicked. First I checked every Spigot instances but there was no issue. BungeeCord is getting unresponsive for ~10 seconds and then half of the players in the server getting kicked.
It happens almost every 5 to 15 minutes. So it's making the gameplay so painful and players stops playing the server.
I tried to profile it with YourKit. Here is a YourKit snapshot:
https://www.dropbox.com/s/sazf3tcuv...
Tried these:
- Remove ChangeSkin
- Remove PartyAndFriends
- Update ViaVersion to 2.1.3 in spigot servers.
- Downgrade Waterfall to build 276
None of these worked unfortunately.
These might be related: #403
i get this message upon running Waterfall "main WARN Advanced terminal features are not available in this environment". The cmd window boots up fine and goes through all procedures and still says listening on x.x.x.x:25565, however i cannot connect to it no matter what i try to do
https://github.com/SpigotMC/BungeeCord/commit/9e76966e0fc46e4bdc61cfe97f14cd8b98290d8c
@electronicboy you can close this now and merge upstream
I cannot reproduce this. Its your issue
i even completely started a new server with a fresh download of waterfall, it has the same issue every time
java.lang.IllegalAccessError: class net.md_5.bungee.event.InternalReflectionFactory$1 (in unnamed module @0x32a068d1) cannot access class jdk.internal.reflect.ReflectionFactory (in module java.base) because module java.base does not export jdk.internal.reflect to unnamed module @0x32a068d1
You closed PR, and did not allow to fix this?
https://www.youtube.com/watch?v=h3uBr0CCm58
If you have a fix, you're more than welcome to open a new PR, we cannot use those internal classes however.
We need more information beyond "doesn't work", what exactly are you seeing when you try to connect?
if you have been tweaking internal OS stuff and broke something, there really ain't much we can do there, but some level of hopeful doubt that that is relevant
Ill leave some screenshots, so the waterfall server boots up (first screenshot) and gives the message "2019-08-21 18:02:13,625 main WARN Advanced terminal features are not available in this environment". However after that, the server keeps with the startup procedure and says listening on 192.168.0.4:25565, meaning i could usually join the server.
. When i go to join the server ...
"Connection timed out" is a generic network error and means that there was no response to the connection whatsoever
Configure the proxy to bind on 0.0.0.0 and connect on localhost, double check all IP addresses too, e.g. did your ISP change your IP
Is 99.99% also not Java 8 compatible
Java 9 compatibility for this would require a startup flag to import internal jdk modules
You could try putting everything into the classpath instead of the module path. Reflection should work as expected then. At least thats what we see in Java 11.
This PR breaks in several ways in java 9+, breaking compilation is a major one, and indicates that this is not compatible with 9+ as a whole; I'm not really interested in trying to hack around this, or require that users potentially have to start the jar differently
Yes, I completely agree with that. I just wanted to say that this option is available for use when automated modules do not allow reflective access for example for older plugins that do not have a module information file.
This is but a small change to the existing module (cmd-server) that would make a server list message more configurable. There are a lot of servers (including my own) that still use this module to provide an easy way to change servers. While the module itself is really small and fast, it wasn't offering a full way to change the server list message, until now. With this PR accepted people will be able to fully customize the message (including message after the end of the list and possibility to...
This would likely be approved by bungeecord itself.
Hi, I have a couple of changes and additions that I think would benefit server owners regarding tab-completion with waterfall.
- A similar setting to default Spigot's
send-namespaced. This would disable any of the<plugin name>:<command>commands listed in tab completion, and only show the<command>part. This could be helpful if you want to hide the plugins you're using. - A way to hide every player's name by typing nothing and pressing tab. Currently if you run plugins such as Bun...
These suggestions aren't applicable to the proxy;
-
Waterfall/bungee do not send namespaced commands, nor do I believe it's the proxies place to interfere with commands sent by the server itself
-
This is client sided, the completion itself is derived from the player info which is displayed in tab, only way for it to not be displayed would be for it to not have been sent to the client/removed from tab
-
This configuration option changes the response of the bukkit API to suggest pl...
This would likely get approved by bungeecord itself.
I didn't think about that. I'm gonna close this PR for now and reopen it if BungeeCord doesn't accept a similar PR for some reason.
any progress on this?
It's fixed for me after new updates
i still see
[17:51:04] [Netty Worker IO Thread #60/ERROR]: [/79.45.96.127:53816|Killator] <-> DownstreamBridge <-> [hub-1] - encountered exception
java.lang.IllegalArgumentException: Team 718eb already exists in this scoreboard
at com.google.common.base.Preconditions.checkArgument(Preconditions.java:191) ~[waterfall.jar:git:Waterfall-Bootstrap:1.14-SNAPSHOT:c3d67e5:290]
at net.md_5.bungee.api.score.Scoreboard.addTeam(Scoreboard.java:73) ~[waterfall.jar:git:Waterfall-Bootstrap:1.14-SNAP...
Please, before I lose my mind.
Tests were done on windows machine.
Bungee is correct:
Type in "testing123":
https://i.imgur.com/EISLX56.png
And begin pinging server:
Correctly moves down: https://i.imgur.com/1uOFBCM.png
Meanwhile on waterfall:
Type in "testing123":
https://i.imgur.com/Atjn3Uv.png
And begin pinging server:
https://i.imgur.com/VdpFKta.png
Believe this is simply a Windows issue. I've seen it many times when using a Window's console. Why it's different between Bungee and Waterfall, I have no idea.
Bungee, Spigot, and Paper all work fine.
Itโs the recent Waterfall commit that broke it.
log4j 2.12.0 or terminalconsoleappender or jline is broken on Windows 10.
Can confirm, I'm on windows 10 and this started happening after updating to the latest waterfall build.
Although my problem is mostly there being no colors and it says this on startup:
2019-09-12 07:40:53,311 main WARN Advanced terminal features are not available in this environment
Travertine's build number is less that 878, which BAT requires to run. Is there any way I could modify the build number? I tried modifying the BAT code (since its open source) but its throwing errors since the code doesn't work for some reason.
The version check is broken because it assumes nobody would ever do something crazy like modify BungeeCord.
For the record, build 878 of BungeeCord is over 5 years old and few people are using such an ancient version of BungeeCord these days.
Nice, but i think modules are being deprecated...
I do not believe that it's in the interest of the project to accept PRs from members who have been removed from the community
Our Waterfall recently had problems decoding var ints. It was possible that an attacker could send bytes all matching 0x80 bitmask. The cosequence is that it costs really much cpu time.
Old Code: `public static int readVarIntOLD(final ByteBuf input, final int maxBytes) {
int out = 0;
int bytes = 0;
byte in;
do {
in = input.readByte();
out |= (in & 0x7F) << bytes++ * 7;
if (bytes > maxBytes) {
throw new RuntimeExcep...
- What are you trying to say exactly?
- Code blocks are hardly understandable because of formatting issues... besides,
New codeone is equal to the one in current DefinedPacket class?
old and new code are likely nearly equally translated to bytecode, logic seems identical too
@p4skal
ebbf094 Start IllegalPacketEvent - electronicboy
[PaperMC/Waterfall] New branch created: illegal\-packets
DefinedPacket.readVarInt(<netty ByteBuf>)
Done
Was this solved? If so, how did you fix the problem?
If the problem is still present, can you tell us if you have the same problem with BungeeCord or just with Waterfall?
Problem solved after I switched CentOS from Ubuntu. Problem was also exist in BungeeCord. Even with Velocity. So I don't think it's related with proxy servers now. Forgot to close the issue. Thanks for reminder.
Hello, i have a network tha averages 200-260 players sometimes waterfall kicks around half the players off the network. (kicks like 20% from each server). This has started happening since we added more servers to the network and we got more players.
At first I thought it was due to the CPU's load. So i bought a new dedi and i moved my bungeecord there. Issue wasnt fixed, then i thought it was ram, from 4gb i changed it to 2gbs because i thought that it may have been too much. Then i chang...
Connection reset by peer - Something external to the proxy closed the connection, this is not something we can do anything with; General advice is to check the client/server logs, something likely caused the connection to close improperly
Across all servers at the same time?
And i said some of them had the error 90% of them just have "disconnected". I want to send you the logs but they include IPs.
connection reset by peer specifically means that the remote (or something upstream from us) reset the connection, proxy logs are irrelevant here as they'll just be saying that something on the network closed the connection
I can message on your discord, I want you to see the logs, I need assistance from someone who really understands bungee.
I can pay you for your time.
Ok i guess not, i have another question though, if it's a ram or cpu issue would i get an error?
How do i locate what's causing this issue?
I also have the problem with a M.2 SSD, 32GB DDR 4 Ram, I7 8700k CPU and constant 100k line. The normal?
OS?
iptables / firewall?
(ddos protection?)
if disable_entity_metadata_rewrite in waterfall.yml set true , then my Tap plugins doesn't work.
if disable_entity_metadata_rewrite in waterfall.yml set fales , then Some of my servers will be unconnected from time to time.
encountered exception java.lang.IllegalArgumentException: Unknown meta type 14: Using mods? refer to disable_entity_metadata_rewrite in waterfall.yml
Both SkyFactory4 with Mohist and EnigTech with Catserver.
What do you mean with "Tap" plugins?
What do you mean with "Tap" plugins?
Tab?That sounds weird to me.
BungeeTabListPlus
tab...
The players should be inside Server EnigTech but now in the upper left corner.
Sorry for the late response, i was on vacation.
@Janmm14 Your completly right, even from the logic perspective it's identical.
We had profiled our waterfall fork and found out, that there was much time spent in the readVarInt method. So I looked online for a solution and found this code.I seem to just have copy & pasted it, created an issue without analysing it properly. I just wanted to fix it before vacation.
The "old code" is actually from our fork, so it has nothing to do with th...
[23:36:18 ERROR]: [/192.168.2.1:50013|YouTube0099] <-> DownstreamBridge <-> [Hub-1] - encountered exception
io.netty.handler.codec.DecoderException: Error decoding packet unknown with contents:
at net.md_5.bungee.protocol.MinecraftDecoder.decode(MinecraftDecoder.java:69) ~[Travertine.jar:git:Travertine-Bootstrap:1.13-SNAPSHOT:56099f3:67]
at net.md_5.bungee.protocol.MinecraftDecoder.decode(MinecraftDecoder.java:13) ~[Travertine.jar:git:Travertine-Bootstrap:1.13-SNAPSHOT:56099f3:67]
at...
How can I fix this error?
Hi there, we recently setup a Sevtech server and when you go to fly around on the server you will randomly get disconnected and kicked, nothing comes up in the Sevtech console other than user disconnected, but in travertine console it seems to throw an error?

"|Keaton_wizard] <-> DownstreamBridge <-> [Sevtech] - bad packet ID, are mods in use!? Did not read all bytes from p...
I updated but console shows a error then the player got kicked.
Error message: <-> DownstreamBridge <-> [Hub-1] - bad packet ID, are mods in use!? Empty minecraft packet!
I can understand what the message said. But I don't know how to fix it.
Is there a way to fix it or avoid not to get kicked?
Looks like travertine was behind waterfall a build, the configuration option has been removed in favor of making that the standard behavior
hmm
My main server is 1.8.8 spigot.
I am making a custom nick plugin so I made a sign gui like hypixel for getting user input for custom nickname.
I found this: https://www.spigotmc.org/threads/sign-gui-for-user-input.104394/page-2#post-1162152
and I used the API.
//
for(WrappedChatComponent chat : packet.getLines()) {
Bukkit.getConsoleSender().sendMessage(StringEscapeUtils.unescapeJavaScript(chat.getJson()));
}
\
About this section, If I send a messages, players got ki...
Thanks for fixing the issue! <3
Latest jessica client's feature ".figure" crashes bungeecord quite fast (no errors, it just restarts), if there are at least 2 players online.
That feature sends item packets containing shulkerboxes that have books with oversized pages (too long and too many) inside. Seems like a workaround on the now already fixed oversized book exploit.
I think this should be prevented directly on waterfall, because only bungeecord crashes, while the spigot server is fine.
I was able to block this o...
I'm on windows 10 and I do not experience this problem. I use cygwin and I suppose you should use that too.
Why can't e.g plugin deal with this instead?
You can try my plugin https://slava.funtime.su/plugins/FiguresFix/ (ProtocolLib Required). Not sure if it will work for 1.13 and upper, but i hope it will.
Also it looks like that your system runs out of memory and system kill your Bungee/Waterfall process to get some free memory.
cygwin is nothing anyone should have to use to run a java program

This code works perfectly fine, it just only shows up on players using 1.12+ clients
Only tested [1.8, 1.12, 1.14.4]
Just realized that travertine only supports 1.7, closing lol...
Wrong, Travertine supports 1.7.x - 1.14.x
Would more be https://github.com/PaperMC/Waterfall, would also be interesting to know if this occurs on bungee too
It appears setting fadeIn, stay and fadeOut fixed this. It might also be good to note that it seemed to break randomly.
cygwin is nothing anyone should have to use to run a java program
I thought he was using win10 to remotely connect to a linux server, nevermind
This issue is ongoing. Please fix
Workaround already presented in here.
I dont understand the scoreboard fix or how I got about fixing it. I dont use default scoreboard
you need your plugins to use different scoreboard names
I get this error quite a bit which has crashed my server. I am not sure what the fix is, I am VERY new to console errors like this https://pastebin.com/BvDCGpdu
How do I do this @Janmm14. Also which plugins?
Duplicate of #318
Only "fix" is to ensure that servers will have unique team names (Plugins will need to consider bungee setups properly, basically), this is basically a bungeecord issue
whichever plugin is creating the team that is conflicting on the other server, if you copied worlds over and aren't using plugins, potentially wanna consider delating the scoreboard.dat for the servers involved;
The only current fix is for bukkit plugins to take steps to prevent team name collisions across servers, this is an upstream issue
@electronicboy Can you give a bit more of a dummed down version to a newbie please. How do I ensure servers have unique team names? Also how do I make sure plugins consider bungee setups properly?
You would need to speak to the plugin authors of whatever is using scoreboards on your servers to prevent these collisions, there is no real easy fix here, plugins basically need to take steps to avoid this
How do I know what plugins use scoreboards? Also so there is nothing I can do to fix this? I can only rely on devs?
One approach to fixing this is intercepting the Send Scoreboard packet, comparing the scoreboard names and if they match; just mutate the new name by 1 character or so (pretty sure a different name doesn't affect game mechanics) and then cancelling the original packet and sending the new one.
Any teams and objectives should then bind to the new scoreboard in theory.
spongeforge 1.12.2 7.1.7
waterall-295
[issue mod]
https://www.curseforge.com/minecraft/mc-mods/emoticons
https://www.curseforge.com/minecraft/mc-mods/mchorses-mclib
[issue]
in my server, players can see each other's emoticon without waterfall.
but cannot see after install waterfall in front of spongeforge.
without any error log.
Please provide your Waterfall configuration (waterfall.yml) and the list of installed plugins (to rule out other issues). Do you also have IP/profile forwarding enabled (ip_forward in config.yml)?
Hmm I use featherboard and TAB. Not sure how to go about fixing
@electronicboy How do I prevent plugins from creating the same team names on my different servers?
Once again, you would need to speak to plug-in authors to try to mitigate
this;
On Sun, 3 Nov 2019, 16:31 JHarris12345, notifications@github.com wrote:
@electronicboy https://github.com/electronicboy How do I prevent
plugins from creating the same team names on my different servers?โ
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<https://github.com/PaperMC/Waterfall/issues/318?email_source=notifications&email_token=AA...
If this is your suggested fix for the proxy, it would require additional
overheads to remap teams, would also create some potential oddball handling
if bungee plugins come into play
The ultimate fix is going to be to figure how to handle the server switch
better, my current thought is to just queue scoreboard packets and flush
them through, it is it's own set of headaches and mess, but the only other
alternative is to leave this solely on server/plug-in devs
On Sun, 3 Nov 2019, 08:05 Mystif...
Try disabling entity metadata rewriting in waterfall.yml
On Sun, 3 Nov 2019, 13:30 Mark Vainomaa, notifications@github.com wrote:
Please provide your Waterfall configuration (waterfall.yml) and the list
of installed plugins (to rule out other issues). Do you also have
IP/profile forwarding enabled (ip_forward in config.yml)?โ
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<https://github.com/PaperMC/Waterf...
Try disabling entity metadata rewriting in waterfall.yml
thanks. i tried but didn't solve.
Please provide your Waterfall configuration (waterfall.yml) and the list of installed plugins
use_netty_dns_resolver: true
disable_modern_tab_limiter: true
log_initial_handler_connections: true
throttling:
tab_complete: 1000
game_version: ''
disable_entity_metadata_rewrite: true
connection_throttle_limit: 3
online_mode: false
log_commands: false
network_compres...
As this mod seems to be closed source, then try to contact with the mod creator about this issue.
On 3. Nov 2019, at 23:12, Jecvay Liu notifications@github.com wrote:
Try disabling entity metadata rewriting in waterfall.yml
thanks. i tried but didn't solve.
Please provide your Waterfall configuration (waterfall.yml) and the list of installed plugins
use_netty_dns_resolver: true
disable_modern_tab_limiter: true
log_initial_handler_connections: true
throttling:
...
@electronicboy would intercepting the inbound Scoreboard Send work? Compare the previous scoreboard name with the latter and if they match; mutate the name by a character or so and send that packet instead? If I'm correct team/scoreboard packets don't require a scoreboard name they just latch on to the clients current scoreboard and if the client thinks it has a new scoreboard now; the team in theory won't pre exist? Would obviously need to confirm it wasn't the same server sending the Send S...
The client only has a singular scoreboard, teams are shared across all instances; This issue is also not down to the client, this is pretty much 100% a flaw in bungees server connection process; The new target server sends itโs scoreboard data before the proxy has cleaned up the scoreboard on the client, rewriting team names just adds additional complexity, bloat and overheads in the proxy
On 5 Nov 2019, at 11:34, Mystiflow notifications@github.com wrote:
@electronicboy <https://git...
I haven't looked into the client code but what purpose then does the name string serve in the Scoreboard Send packet?
queue scoreboard packets and flush
them through
Do you mean storing each server sent scoreboard packet in a list and then sending the destroy packet for them on server switch?
So you're simply using plugin message channels?
No, I believe the issue here is that my code doesn't get setup properly. I wrote a system that allows for Emoticons to be used when players don't have a mod, so capabilities on the server store whether player have the mod. That code decides whether player has the mod.
It checks whether Emoticons channel gets registered, and if it does, then it can sync the emotes.
I have the same problem on my server.
CasualProtector will help you, just type it on spigotmc or on google.
Another exploit "nullping" adds to the many that can crash bungee, and there's little to no effort on their part to fix these upstream instead of having to deal with them with some obscure plugin or fork.
We have no clear overview about those exploits. Personally I don't want to run or download cheat clients on my personal computer (nor do I have decent sandboxing around) to get the grasp what those exploits actually do - I am not fond of running untrusted code near my personal data what I can get from even less trusted webpages.
If someone wants to help then sure, PaperMC IRC and Discord guild are there for a reason. Provide enough information and someone of us will look into it.
Another exploit "nullping" adds to the many that can crash bungee, and there's little to no effort on their part to fix these upstream instead of having to deal with them with some obscure plugin or fork.
There is little to no effort to do proper bug reports upstream apparantly.
Create an issue on bungeecord repository, provide the cheat client, say the command which crashes your bungee and I'm sure someone (maybe me) would decompile the client then and provide details on ...
I've yet to see this in a capacity to crash the proxy outside of just
making it flood exceptions, in part, this is somewhat unfixable given the
nature of a server softwares goal, the fix is Ultimately going to be to try
to optimize how errors are basically handled in the proxy to make them
being thrown less of a performance hit
On Wed, 20 Nov 2019, 17:26 Janmm14, notifications@github.com wrote:
Another exploit "nullping" adds to the many that can crash bungee, and
there's little to no...
ๆ็ๆๅกๅจไธไนๆๅๆ ท็้ฎ้ข๏ผๅชๆๅจๆดๆขๆๅกๅจๅๆไผๅ็๏ผๅผๅงๆถๅจๅคงๅ ็่ตทๆฅ่ฟไธ้ใ
https://cdn.discordapp.com/attachments/641968803508518913/644205135756656701/unknown.png
I am the same.
You must disable entity metadata rewriting (There is no way to work around this without modifying the proxy to be able to work directly with your mods entity metadata somehow), tab plugins breaking is a side-effect that needs to be looked into when I'm not ill
Currently fixes build & patches applying subcommands.
My server throws out all players and the console is full of it
https://pastebin.com/eMuKSdT3
I suggest increasing connection_throttle in config to 20000 and maybe lowering connection_throttle_limit from 3 to 2
Server randomly kicks people, here's the error in waterfall's console: https://pastebin.com/urAppz9W
I heard that enabling "disable_entity_metadata_rewrite" fixes this.
Is it safe to disable that? I run more moded servers.
What does it do exatcly and why it's important.
That setting disables the entity metadata rewriting in favor of sending a join packet to the client, basically; It offers a more robust solution for modded environments due to the fact that it doesn't rely on a mechanism that required being able to parse entity metadata, which the proxy needs to be able to understand (but can't)
Thank you for the quick response!
Do you recommend disabling that? Can it cause issues?
Also how do I find what mod causes this issue?
it serves to offer a much cleaner server switch to clients, but; There might be some plugin breakages due to them not expecting the changes involved
You would need to see if there is a way to get forge to dump the entity metadata registry or something, outside of tryna dissect your mods
Title says it all i have a link to the full startup log so you can see luck perms complain about it as well as lite bans both of them use MySQL for database storage.
since they are the only two plugins i use MySQL with it could be just them or it could be others i don't know and according to luck perms they think its an issue with waterfall since its both plugins and i agree with them.
Nothing to do with waterfall, waterfall only provides the mysql driver
A quick mysql -h<host> shows that the mysql server isn't accepting connections and is just timing them out, this is likely a misconfiguration with your network setup
So, I've had this issue with many other forks of Bungee and with BungeeCord itself. I just want to know why 1.7.10 players are kicked when 1.8 players connect to the server.
Logs:
[21:27:16] [Netty Worker IO Thread #0/INFO]: [/104.174.5.181:53259] InitialHandler is pinging
[21:27:16] [Netty Worker IO Thread #1/INFO]: [/104.174.5.181:53260] InitialHandler has connected
[21:27:17] [Netty Worker IO Thread #1/INFO]: [SubTheSandwichV2|/104.174.5.181:53260] ServerConnector [lobby] has co...
The kick is from the server and is down to it mishandling some part of the login, nothing we can do about this, nor is protocol hackery supported
ac8e757 Early 1.15 protocol support - electronicboy
[PaperMC/Travertine] New branch created: unsupported
[PaperMC/Waterfall] branch deleted: feature/ConnectionInitEvent
[PaperMC/Waterfall] branch deleted: readme
If the Server is in onlinemode, and a player joined who is cracked. Then not trigger the ProLoginEvent. Pls patch it. Not Trigger!
Wut
On Mon, 16 Dec 2019, 17:16 meerpaluten, notifications@github.com wrote:
If the Server is in onlinemode, and a player joined who is cracked. Then
not trigger the ProLoginEvent. Pls patch it. Not Trigger!โ
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<https://github.com/PaperMC/Waterfall/issues/437?email_source=notifications&email_token=AAJMAZH4N2MQRNG6KDOXXKTQY6ZWLA5CNFSM4J3NG5E2YY3PNVWWK3TUL52HS4DFUVEX...
There is no such event as ProLoginEvent, but there is PreLoginEvent.
Either way, PreLoginEvent should fire regardless of the online mode option.

So perhaps you forgot to register the listener?
how can I make sure that my code is not executed with cracked players? But I can't use any other event either. Because then it would be too late for ban
how can I make sure that my code is not executed with cracked players? But I can't use any other event either. Because then it would be too late for ban
Use LoginEvent - its called when the server recieved and validated EncryptionResponse
Not an issue, The event is a Pre login event, fired before the server attempts to handle authentication against mojang.
Do you know that the player is not using an illegal client modification?
That's an exploit that is being used to crash bungee.
@SrLeojaco I ould not classify this as a bungeecord exploit. It is basically just a DDOS on Layer 7 and Bungeecord just is not that optimized in error handling.
Does Paper Work With Waterfall?
As it gives me the error that the server is in online mode though i clearly set online mode to false.
Please use Paper Discord or IRC (irc.spi.gt#waterfall) for the questions.
5adaf9a Speed up some common exceptions - electronicboy
20db3bf Add system property to allow processing bad pac... - electronicboy
Hi! I've came across an issue with my Waterfall setup.
My users aren't able to connect, as they get kicked:
Error occurred while contacting login servers, are they down?
(Nope, the login servers aren't down)
We get this error if we disconnect from the Lobby once, then try to join again. I have to restart both Waterfall and the Lobby to fix it.
Waterfall prints this exception in console, below 'error authenticating USER with minecraft.net': [Link to Hastebin](https://hastebin.com/fi...
I removed all the modules and let Waterfall reinstall them. So far, the issue seems to be fixed. I'll keep it open in case I come across it again.
Errors point to DNS error, check your server's DNS configuration.
Haven't touched my DNS configuration. Used to host bungee instances on the machine without error. Hosted locally on windows.
I apologize for my lack of knowledge on server hosting by the way. :-)
'sessionserver.mojang.com.Home' isn't a valid site, I don't think .Home is meant to be there.
https://pastebin.com/XhHGux9w (Full log - 20k lines)
10 wrong packets/sec
Issue has already been reported, please use the search function...
Also, update; Some level of mitigation was added last night.
@electronicboy thanks, this fixed the crash. But this create 100 MB log/minute. Please add option to set a less character warn messages for wrong packets.
Reducing the amount of logging ain't going to fix that much, it's basically on your side to mitigate these connection attempts, e.g. configuring fail2ban or using a plugin which will do similar
Hi, can u help me? I have this error.
[20:36:30] [Netty Worker IO Thread #15/ERROR]: [/188.75.186.162:50102] InitialHandler - encountered exception
io.netty.handler.codec.DecoderException: Error decoding packet class Handshake with contents:
+-------------------------------------------------+
| 0 1 2 3 4 5 6 7 8 9 a b c d e f |
+--------+-------------------------------------------------+----------------+
|00000000| 00 ...
Something sent a bad packet
i see you added ConnectionInitEvent to waterfall, i would suggest an improvement
when you use Waterfall behind HAProxy, this event become quite useless as the ip the event see is the ip of the HAProxy server. So if you want to implement a connection throttler, or a macanism that prevents layer 7 flood (eg: handshake error flood) based on the connection IP, you can't. (not a good idea to ban your load-balancer's IP)
So, in case of proxy-protocol enabled, i think an other event should be ...
Hey,
I have following problem:
If I join my server everything is okay, but if I try to join another server that is in another version (1.15.1)
following exception occurres:
Waterdfall (latest version):
encountered exception: net.md_5.bungee.util.QuietException: Unexpected packet received during server login process!
1b8f017b227472616e736c617465223a
Server I will join (also latest version):
lost connection: Internal Exception: io.netty.handler.codec.DecoderException: java...
The proxy didn't expect a kick packet to be sent in the login phase, fix your server
Oh thanks. I did not expected, that it was a plugin error.
My Server is crashing from a crasher. Herer is the log from the proxy.
2020-01-11-4.log.gz
Please use the search feature, this one has been discussed time and time again on github and on discord.
Can we make BungeeCord stop using exceptions for error handling then? People are kicking everyone on my server, and there's literally nothing we can do about it.
I've cut down on the workload by pulling out some of the heavy work around the exceptions, right now it's more the general logger + connection attempts, advice overall is to use fail2ban or something
if you have fail2ban installed, try this
add to: /etc/fail2ban/jail.conf
[bungee] enabled = true port = 25565 filter = bungee logpath = /replace/with/path/to/bungee/logs/latest.log maxretry = 5 findtime = 60 bantime = 600
make file: /etc/fail2ban/filter.d/bungee.conf
`# bungee configuration file
#/etc/fail2ban/filter.d/bungee.conf
[Definition]
Option: failregex
Notes.: regex to match the connection handler messages in the logfile. The
host...
When join server,Client will show:
disconnected with: The server you were previously on went down, you have been connected to a fallback server
And I watch Console,it show:
bad packet ID, are mods in use!? Did not read all bytes from packet class net.md_5.bungee.protocol.packet.EntityEffect 79 Protocol GAME Direction TO_CLIENT
What happen it?

` +-------------------------------------------------+
| 0 1 2 3 4 5 6 7 8 9 a b c d e f |
+--------+-------------------------------------------------+----------------+
|00000000| 26 00 00 00 68 01 00 00 00 00 08 d8 c7 c1 1b 2e |&...h...........|
|00000010| 54 34 f4 04 66 6c 61 74 06 00 01 |T4..flat... |
+--------+-------------...
That's not the full exception, more than likely your server also sent a bad packet, i.e. replicate without plugins
just tested it with the latest build from the website ( #70 ) and the error still persists - https://pastebin.com/raw/nFRf3QiX with the Block#setType
Code: http://prntscr.com/qryfac
Whenever trying to setup Waterfall with a forge 1.15.2 server (also tried with 1.14.4 and 1.15.1) I seem to get the below message displaying in the console and within Minecraft.
[Siriuo|/127.0.0.1:63010] ServerConnector [lobby] - encountered exception: net.md_5.bungee.util.QuietException: Unexpected packet received during server login process!
1bc7017b227472616e736c617465223a
No plugins/mods on either side just fresh installations of both.
Server initiated a kick, likely as bungee doesn't support modern forge support
Bungee, and by extension, Waterfall; does not support IP forwarding for forge clients, this needs to be investigated, especially as upstream has expressed 0 interest in maintaining forge support
logs:
[14:49:50 ERROR]: [] ServerConnector [lobby] - encountered exception: net.md_5.bungee.util.QuietException: Unexpected packet received during server login process!
0d00
Someone sent invalid data to your bungeecord.
When join server,player can play some time,but they will kick out server,it show at log:
[23:15:14 INFO]: [Color_yr] disconnected with: Timed out
I try join Server many times,but it allways show this.
It some bugs?
Timed out
That means that a packet wasn't received in so long, generally more networking/plugin issues.
but if i use vanilla client,is also show this.
Never said anything about your client. This issue tracker is for reporting issues with waterfall, if you require support, please use the forums/irc/discord, however, we can't do much to debug these types of issues for you
I used the latest Waterfall,and the latest BungeeTablistPlus.
The bug is When player change server and player's name will move to top left or bottom right.
This bug only occur on Waterfall, BungeeCord runs well.

re-enable metadata rewriting in waterfall.yml.
Hi, when i update to 1.15 version the server-icon doesn't work, it's normal?
No, that is not normal, but without information, I can't really say... Generally, check your logs for errors, beyond that, make sure you've got the icon in the correct place (with ping-passthrough, you need it on the server)
Something for the issue tracker to be worked on down the track, where you could add servers in the config and /greload no worries. Trying to remove a server would have the server remain in /server.
Using latest Waterfall #318
Tested with and without plugins on Proxy.
This is intended by upstream (bungeecord) because what to do when people are still connected or currently connecting to the server in question of removal?
Error: https://paste.timo.cloud/wukosuvusu.bash
In singelplayer the spigot plugin is work. but on the proxy not.
17d5b78 Updated Upstream (BungeeCord) - electronicboy
[PaperMC/Waterfall] New branch created: pending\-upstream
This causes the build to fail when using upstream's new profile "dest" with the following command:
mvn -P dist package
[WARNING] Javadoc Warnings
[WARNING] C:\Users\artut\Documents\Projects\Minecraft\Waterfall\Waterfall-Proxy\api\src\main\java\net\md_5\bungee\api\scheduler\TaskScheduler.java:93: warning - Parameter "plugin" is documented more than once.
e9ad343 Removed duplicated javadoc param (#456) - Artuto
Not really an issue on our side from what I can see, bad NBT tag?
that stacktrace in travertine log is only info i can find, i went to the location the player logged in there was nothing there
I have updated Waterfall to the lastest commit yesterday, and today my average player latency graph shows constant ping increase and a lot of random spikes.

My plugin calculates the ping average based on ProxiedPlayer::getPing to generate this graph. It is affecting my three Waterfall instances. I have about 600 players playing on each one.
Is there anyone being affected b...
From what commit did you update? There haven't been any significant commits related to networking recently either, so perhaps something still on your end?
This is the commit we have updated to: https://github.com/PaperMC/Waterfall/commit/e9ad343d5e878e8eba5610c970180cf155e4e14b
I'm going to deploy an instance with the old Waterfall version to make some tests today. I'll send the results here.
Let me reword my question... what commit did you use before?
Maybe SpigotMC/BungeeCord@eeb3747 could be the culprit?
Maybe. Probably yes.
Testing results:
- proxy-3 is running https://github.com/PaperMC/Waterfall/commit/6456426ebdf5c4ad3b32a8954607892e70139e63
- proxy-2 and proxy-1 are running https://github.com/PaperMC/Waterfall/commit/e9ad343d5e878e8eba5610c970180cf155e4e14b

. I think the added spikes could in theory be that it just got accurate now and your server sending keepalives more frequent or sth. along those lines.
Something I noticied is that there are no players reporting...
New testing results:
- proxy-1 and proxy-2 are running on the latest commit.
- proxy-3 is running with the latest commit (https://github.com/PaperMC/Waterfall/commit/e9ad343d5e878e8eba5610c970180cf155e4e14b) with https://github.com/SpigotMC/BungeeCord/commit/eeb374798b10786bb87175796b55bed0275d56c7 reverted.

 packets? Do you run ViaVersion on Bungee or similar "heavy" stuff?
- I don't have anything sending keepalive packets afaik.
- I do run ViaVersion on all my spigot servers.
- I noticied that sometimes the average ping is above 1.4 seconds during the spikes.
I'm gonna try to figure out a way to bring more detailed informations here. Unfortunally the tests are being done on a production environment and I can't restart it as frequently as needed. I'll try.
Sure, take your time.
As I was the first one creating the bungee issue about it not letting all the keepalives through, I am just really interested why the average decreased that much.
Can break some bungeecord plugins.
Wrong. The IP the event see is the player's real IP. The event is called at very early stage, even before the HAProxyMessage is received and decoded.
When you use HAProxy in front of your Waterfall/BungeeCord, the IP who init
the connection is the IP of the HAProxy server, not the IP of the Minecraft
Client.
Le sam. 22 fรฉvr. 2020 ร 07:43, MrIvanPlays notifications@github.com a
รฉcrit :
Wrong. The IP the event see is the player's real IP. The event is called
at very early stage, even before the HAProxyMessage is received and decoded.โ
You are receiving this because you authored the thread.
Reply to this email directly, view...
When you use HAProxy in front of your Waterfall/BungeeCord, the IP which init
the connection is the IP of the HAProxy server, not the IP of the Minecraft Client. So, no the ConnectionInitEvent doesn't see the player IP at this early stage of the connection.
Just the same way as Spigot see BungeeCord IP if bungee-protocol is not enabled.
I think it might be better to feed the connection blockage maybe into iptables before HAProxy. That way you're protecting all your bungee's together.
Not sure how HAProxy reacts if the connection is closed immediately: will it maybe try to connect every directly cancelled connection to each other bungee until there's no option left or sth. like that?
When your HAProxy is not managed by you, you can't play with iptable in front of HAProxy.
Also, playing with iptable for a connection throttler seems quite heavy.
I already made some test and it did not caused any problem to close the connection.
This Pull-request is meant to be merge-ready when 1.16 gets released so a usable Bungeecord can be obtained ASAP. The changes in this PR will get lost when Bungeecord gets updated to support 1.16, that is intentional. This is just meant to maybe make @electronicboy s life a little easier ;)
I have a String: te_st
When I press tab the preview is: te_st
And when I confirm that I want the string it places it as this: te\_st
Here a Photo:

Hello,
Since few years now, bots attacks are rly common on Minecraft.
We've nice antibots to prevent that happening, but there's something who antibots don't handle, it's the logs. Some plugins are having errors when there's too many connections & cancelled connections. And then they're flooding the logs and it start to lag Waterfall.
My idea is to add an option to rate-limit the logs to prevent these lags.
Similarly to #350
I have an issue using the 4.1.0 Release Version of SkyFactory 4 (Forge 2838), and Waterfall build 323.
When disable_entity_metadata_rewrite is true, players are not able to see each other at all. When disable_entity_metadata_rewrite is false, players are able to see each other, but are periodically kicked due to the Unknown Meta Type.
I am also able to reproduce this issue using Forge 2838, no Mods, and pure Vanilla 1.12.2.
My config files follow:
config.yml:...
JH_AntiBot v3 have log filter... handle and remove..
Hello:
I am getting this error when I load my WaterFall server.
[21:41:22 ERROR]: Exception in thread "main" java.lang.IllegalStateException: Timer already cancelled.
[21:41:22 ERROR]: at java.util.Timer.sched(Timer.java:397)
[21:41:22 ERROR]: at java.util.Timer.scheduleAtFixedRate(Timer.java:328)
[21:41:22 ERROR]: at net.md_5.bungee.BungeeCord.start(BungeeCord.java:290)
[21:41:22 ERROR]: at net.md_5.bungee.BungeeCordLauncher.main(BungeeCordLauncher.java:6...
The only time that timer is stopped is when the proxy is shutting down, more than likely down to plugins, etc
When player count over about 130 Netty eat all cpu usage and causing lag.
YourKit report https://pastebin.com/ufcYhUUf
Waterfall ver #323
Paper 1.15.2
report doesn't show anything other than your server opening a ton of new socket connections, which is never gonna be super nice if all your IO workers are working on opening connections...
@lucaazalim possible problem identified
https://github.com/SpigotMC/BungeeCord/issues/2783
This is highly wanted ๐ Anything you need to get the support to happen or is it just a waiting game ?
well why not it says it does and you can turn in forge in the config but you cant use it?
Because nobody has added support for it, and upstream (Bungee) has actually dropped maintenance for forge support
#450 PRs welcome
https://github.com/SpigotMC/BungeeCord/pull/2786#issuecomment-598031817
Perhaps the problem comes from that you run ViaVersion in your spigot servers or your server's network is terrible.
I did quite a bit more digging into this and it's actually might be a bit more simple than I think people are realizing.
The error experienced in #449 is a Disconnect packet caused by the server lacking IP Forwarding support. A 1.14+ modded client can connect to a modded server in Vanilla mode just fine it's when you start involving mods you have trouble.
17:06:42 [INFO] Packet ID: 27
17:06:42 [INFO] Text?: {"translate":"disconnect.genericReason","with":["Internal Exception: io.ne...
You don't add those attributes via the proxy, attributes aren't transmitted over the connection, from what I recall, it's basically just a K,V store on the connection, but, that's set here: https://github.com/MinecraftForge/MinecraftForge/blob/1933d05e36245ef7461b29853b4854fa769a807f/src/main/java/net/minecraftforge/fml/network/FMLHandshakeHandler.java#L186
In the case of the new FML protocol you won't be worrying about phases or race conditions for the FML Handshake it's all being done over the Vanilla LoginPayloadRequest and Responses they are blocking operations and are forced to happen in order.
Your really only needing to track the vanilla transition between LOGIN and PLAY as these payloads need to ALL complete during LOGIN.
I've yet to get around to looking over the new protocol, still on the mend from my health issues, sloowly getting there, needless to say, stuff like this is on the back burner
The issue is really reimplementing the login stuff, that all has to be handled by the proxy given the nature of how this all works, not really expecting any issues, it just boils down to getting the time/motivation/energy/brain-juice to do it
I fully understand hence why I've be trying to do as much as the leg work as possible and will continue to do so to try and reduce some of the workload.
This issue is a very significant blockade to our innovation and keeping our players a safe and happy with new content is of the utmost priority. Without this we can't provide them the experience they expect.
With everyone moving on we just want to be able to keep up, wish you the best hope to see you find the time, motivation and energy...
@MrIvanPlays calculations are right (it's a simple average) and our network is fine. I can't test it without ViaVersion. I don't think that testing it with one online player is enough to assume that the problem is with ViaVersion, my network or calculations.
I've done quite a bit more digging today and found a few more things.
Currently it seems that PayloadRequest and Response packets are coming in AFTER the Login Success packet has already been sent here unfortunately that means the client has already gone into a Play state.
The server will attempt 20 times to send fml:loginwrapper...
Extra heart and protection icons no remove after switch server
https://www.youtube.com/watch?v=JNunZMOwPOQ
Replaces a Preconditions API call with the simple if/return statement.
This Pull Request fixes Issue #413
Behavior Changes:
Before
Throws IllegalArgumentException if received an empty chat.
After
The empty chat is ignored quietly.
I dont think a call to a method should be ignored silently
I dont think a call to a method should be ignored silently
@Artuto
Yes, I think so too.
I followed the commit history. But the patch is created by Initial Commit.
I need more help or descriptions for this patch.
I'll add the patch that logs empty messages as warnings.
Spigot 1.15.2:
?
- Tell AWS to create the appropriate new server for a specific gamemode and map?
- Tell Waterfall that that new server exists?
The usecase is as follows:
Say my server has various different gamemodes, such as hg, uhc, bedwars, etc. Some of those gamemodes may have templates for specific maps (hg-jungle, bedwars-city) while some may not (just `uhc...
I was iffy on doing this myself in the past as I wasn't sure of the /why/ of this in the first place
@astei Are you able to give any insights on this?
Is there a better way to dynamically manage servers with Waterfall
Yes, the servers list in waterfall is mutable, allowing you to add/remove servers as your heard desires
- "yes", bungee provides API for pinging servers, not to mention the players list that the proxy itself maintains (however, proxies list is local to the proxy)
- I would imagine that there are java APIs available for that
Is there a code example somewhere of changing servers at runtime?
Not a proper solution to the problem.
BungeeCord API allows adding servers by constructing a server info with ProxyServer.getInstance().constructServerInfo(...) and then calling ProxyServer.getInstance().getServers().add(...)
Removal should be possible too, but make sure nobody is on the servers you remove.
Can you just dump https://github.com/SpigotMC/BungeeCord/pull/2786 's jar in your server and then give data? The problem's not obv waterfall, it's coming from bungee so you test it on bungee level.
I dont know the reason Empty Packet was originally added, but if i recall correctly it is Exploit related.
This check does nothing but break some clients as you can spam any other packet that doesnt explicitly do a ch.close() and it will break all the netty threads preventing anyone from joining the server.
I disabled this on FlameCord and didn't found any issues.
You mean this patch?
That's not for "exploit" prevention, it's there because vanilla server is able to handle empty packets fine while BungeeCord kicks player because of it.
Or rather... vanilla client, not server. When server sends out an empty packet for some reason (that seems to happen with some weird plugin combinations) then proxy<->server connection simply gets dropped because of an exception.
Unfortunately after much discussion modern Forge support currently is not possible with the current climate.
There is no packet currently available to reset the client back into a LOGIN state and without that server switching will never be possible.
While initial logins could be done by having Bungee wait for a Login Success or Join Game packet before sending a login success to the client and moving on to Play this will likely cause lots of confusion.
For some reason this doesnt seem to happen with FlameCord. Weird.
I will close this because it seems that some people might have issues with empty packets. So people without issues just have to allow empty packets.
might have issues with empty packets
I think will be better to use separate VarInt And Packet decoder (extend with override read method) for server <--> proxy with empty packet fix, and for player <--> proxy use original decoders to avoid any potential exploits without readable bytes.
same conclusion I came to on my end before I nodded off last night, but yea, this patch was nothing to do with exploit prevention, but to dull the behavioral difference of bad plugins, people assume that just because it's not kicking a direct connection to the server that something on the server isn't being bad
sounds like it would just leave us in the exact same state of affairs, but, with some level of "we support 1.14+", unless I'm missing something with the older system, the client was never forced back into login
https://paste.ubuntu.com/p/ybyNQhYn6P/
Kick from server to login server
I know to set "disable_entity_metadata_rewrite" as true Can solve this problem
But it makes my tablist sort incorrectly.
image:

Tips after being kicked out

I use the BungeeTablistPlus plugin, But I don't know how to turn to them for help
this is BungeeTabl...
tab list order is a known bug, pretty sure that there is already an issue report open for it
No it wasn't since the FML handshake happened in Game mode since it was all Plugin Messages.
As the "corrupted frame" and bad "packet id" excptions where shortened to one line, i wonder if it is possible to do the same thing for the "Cannot request protocol" exception because it can be used to spam the console and lag the server.
Sample Exception:
`[21:04:52 ERROR]: [/192.254.99.49:35795] InitialHandler - encountered exception
java.lang.IllegalArgumentException: Cannot request protocol 49
at net.md_5.bungee.connection.InitialHandler.handle(InitialHandler.java:354) ~[Wa...
same conclusion I came to on my end before I nodded off last night, but yea, this patch was nothing to do with exploit prevention, but to dull the behavioral difference of bad plugins, people assume that just because it's not kicking a direct connection to the server that something on the server isn't being bad
Agree. Its pretty random and you can't really notice.
I'm using the latest version of waterfall and greload command is not reloading servers ip's, if I want to edit the ip of an existing server, greload won't apply the changes.
Thanks
Honestly, quite stumped. I've never had this in Java before, so I have no clue where this is supposed to be reported, but compiling Waterfall just dies when using OpenJ9 Java 14 from AdoptOpenJDK (I use https://aur.archlinux.org/packages/jdk14-openj9-bin/).
[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Build Order:
[INFO]
[INFO] Waterfall-Super [pom]...
cannot replicate, but, this falls into line with a bug with the JVM, the jit mechanism induced a segmentation fault, which runs into software bugs/potentially hardware issues
I suggest to prefer openjdk aka hotspot over openj9. I heard hotspot is faster and openj9 uses a little less memory.
Will be testing this issue again, when I get home from work in approximately 5 hours.
[PaperMC/Waterfall] New comment on issue #469: Shorten / Speedup "Cannot request protocol" exception
Basically exception shouldn't be thrown, the client should be dropped without exception.
Are you running viaversion? Or have a combination with protocolsupport & skinsrestorer?
Do you have entity metadata rewrite disabled?
Hello, our antibot stopped working with the latest release of your Travertine. Here is the pastebin info:
[04:02:40] [main/WARN]: Exception encountered when loading plugin: AntiBotDeluxe
java.lang.IllegalAccessError: tried to access class net.md_5.bungee.api.plugin.PluginClassloader from class de.fusion.antibotdeluxe.bungee.AntiBotDeluxe
at de.fusion.antibotdeluxe.bungee.AntiBotDeluxe.onEnable(AntiBotDeluxe.java:180) ~[?:?]
at net.md_5.bungee.api.plugin.PluginManager.enablePlugins(...
https://github.com/SpigotMC/BungeeCord/commit/f41b1fc82131842409fed2df1c702cda36b06bd2
Tell your plugin's author to fix the plugin.
Hi can you add the options for remove the prefix in the /alert command by waterfall proxy?
\u00a7h
In game i can use &h before all text for remove the prefix, but in the messages.properties file of Waterfall.jar i can't set the code \u00a7h
so is possible set the code &h for remove the prefix in /alert ?
Thank
In message.properties you should be able to just leave the alert message empty (or use \u00a7f as alert value if it complains about the value being empty).
No sir. Forge server on the back end, or vanilla, same issue occurs. No extra bungee plugins.
I am basically getting my console spammed with this. Server is completely timed out while this is happening.
[20:01:58] [Netty Worker IO Thread #2/ERROR]: [/X.X.X.X:46611] InitialHandler - encountered exception
java.lang.IllegalArgumentException: Cannot request protocol 99
at net.md_5.bungee.connection.InitialHandler.handle(InitialHandler.java:354) ~[waterfall-319.jar:git:Waterfall-Bootstrap:1.15-SNAPSHOT:ea7863f:319]
at net.md_5.bungee.protocol.packet.Handshake.handle(Handshake...
https://github.com/SpigotMC/BungeeCord/issues/2793
I think this is a main cause why all this "exploits" work and actually can drop bungeecord
Hello, i don't know why this feature is not exist in the Bungeecord/ Waterfall yet but i think we should've commands to do these things;
- Create/ Remove Servers, ForcedHosts, Change MOTD
- Create/ Remove Groups, Permissions and change group of the user.
Yes it would be nice to see this in-game , the only way to do this currently is using external plugins.
Yes it would be nice to see this in-game , the only way to do this currently is using external plugins.
Yes and sadly most of the plugins are not that optimized, i believe the real creators can do a lot better job.
Create/ Remove Servers, ForcedHosts, Change MOTD
Waterfall exposes API for the former, the others can already be done by a plugin;
Not really sure that there is much interest in designing commands for this, etc
Create/ Remove Groups, Permissions and change group of the user
The mechanism built into bungeecord is trivial and flawed, I do not consider the built in mechanism as being suitable for production servers as-is, use a permissions plugin which is actually designed to be ro...
Create/ Remove Servers, ForcedHosts, Change MOTD
Waterfall exposes API for the former, the others can already be done by a plugin;
Not really sure that there is much interest in designing commands for this, etcCreate/ Remove Groups, Permissions and change group of the user
The mechanism built into bungeecord is trivial and flawed, I do not consider the built in mechanism as being suitable for production servers as-is, use a permissions plugin which is actually d...
Hi sometimes i get this error on travertine the newest version and sometimes it doesn't happen
I have to reopen this, I'm actually testing the latest version of bungeecord, and after changing the server ip and doing greload, I can access to the new one, this does not happen with waterfall.
I have to reopen this, I'm actually testing the latest version of bungeecord, and after changing the server ip and doing greload, I can access to the new one, this does not happen with waterfall.
When the force default server option is marked as true, waterfall only shows the players connected to the lobby, when a player leaves the lobby for another specific server the ping and the value of their connection is not displayed, thus, if there are 100 players on the rankup server and 1 in the lobby on the server motd still in the multiplayer tab of the user's laucher will mark the total of 1 player connected to the server, while there are 101 players in total. when deactivating the fo...
When the force default server option is marked as true, waterfall only shows the players connected to the lobby, when a player leaves the lobby for another specific server the ping and the value of their connection is not displayed, thus, if there are 100 players on the rankup server and 1 in the lobby on the server motd still in the multiplayer tab of the user's laucher will mark the total of 1 player connected to the server, while there are 101 players in total. when deactivating the fo...
I'm using centos 7
jdk8
And my Travertine worked my perfectly on the win server 2019
But when I change to the Linux.
Every time a player changes the server, it has a chance there will be a io.netty.channel.unix.Errors$NativeIoException
io.netty.channel.unix.Errors$NativeIoException occurs when a network I/O issue occurs outside of our control
Hi, Running without native libs on windows causes quite poor performance. Would it be possible to get native compression and cipher libs in windows?
Update your JRE to the version at least 11 and ask Waterfall developers to use new Inflater/Deflater methods that accept java.nio.ByteBuffer if they are available.
In a recent build there is a ton of text after issuing the /send command. How do we get rid of all this so it just says "Sent to "?
I am unsure if this is an issue with vanilla or Waterfall or it is easily patched. The server is running behind a firewall that requires all requests go through an HTTP proxy. I added the following Java flags:
-Dhttp.proxyHost=my.proxy.com -Dhttp.proxyPort=3128 -Dhttps.proxyHost=my.proxy.com -Dhttps.proxyPort=3128 -Dhttp.nonProxyHosts="localhost|127.*|[::1]"
Some HTTP requests are honored through the firewall and others are not (many from plugins doing version checks). I assume th...
Have you tried with a SOCKS5 Proxy? socksProxyHost? Should be a bit more reliable. Not sure other wise.
This is an enterprise environment where unfortunately only the HTTP proxy is available. I could adapt the HTTP proxy to a SOCKS proxy locally, but that is not very direct, so I would like to avoid that if possible.
This is down to netty, bungee, and by extension waterfall, don't appear to
actually handle proxies in the connection to mojangs auth servers
On Thu, 9 Apr 2020, 03:21 Perry Naseck, notifications@github.com wrote:
This is an enterprise environment where unfortunately only the HTTP proxy
is available. I could adapt the HTTP proxy to a SOCKS proxy locally, but
that is not very direct, so I would like to avoid that if possible.โ
You are receiving this because you are subscribed t...
OK, I just tried using socksify (from Dante package) to no avail. It basically routes all traffic of the program run in it through a proxy. Worked for all the programs I could try it with except Java.
OK, we found a workaround, and its a bit ugly, but it works. We made a custom patch and changed sessionserver.mojang.com to a local server. That server is a reverse proxy that uses the upstream outgoing proxy. It seems to work fine and does not create any security risks.
Proxychains, socksify, and a transparent proxy with iptables all failed for various reasons. Notably that this is a CloudFront CDN address with a shifting IP, and Java would always resolve the IP _before accessing/forwar...
Just tested this issue again today. Latest Waterfall, default settings (except rewrite metadata), with Stoneblock 2 {Forge 14.23.5.2846}. I can confirm the issue is still present.
I've been getting a similar issue to this old one from BungeeCord since one of the recent updates of Waterfall. Easy way to test it is to switch networks via a vpn or other means while connected to a proxy, that seems to break it until you restart your game.
Thank you very much for this cause now i can have 1.16 snapshot support with vanillacord hope it works
Confimation it works with vanillacord and viaversion thanks you very much @Xernium
I should mention that for now you can find builds of this fork at https://jenkins.krusic22.com/job/Travertine-Xernium/ (kindly provided by @krusic22)
The ServerConnectedEvent event is called when player is disconnecting from the proxy and it throws and exception to the console with "No client connected for pending server!".
Waterfall version: build 327
It is not happening in the upstream.
I should add that I'm only tracking all snapshots so far because of accuracy reasons. The unused or obsolete ones can be flattened out rather easily and I will do so before release
I also get the same error:
[21:21:56 ERROR]: Exception in thread "main" java.lang.ClassCastException: java.util.LinkedHashMap cannot be cast to java.util.Collection
[21:21:56 ERROR]: at net.md_5.bungee.conf.YamlConfig.getListeners(YamlConfig.java:245)
[21:21:56 ERROR]: at net.md_5.bungee.conf.Configuration.load(Configuration.java:92)
[21:21:56 ERROR]: at io.github.waterfallmc.waterfall.conf.WaterfallConfiguration.load(WaterfallConfiguration.java:49)
[21:21:56 ERROR]: at net.md_5.bungee.B...
This issue is like... almost 5 years old. Please open a new one instead of necrobumping irrelevant old ones.
21:36:53 [SEVERE] Exception in thread "main"
21:36:53 [SEVERE] java.lang.ClassCastException: java.util.LinkedHashMap cannot be cast to java.util.Collection
21:36:53 [SEVERE] at net.md_5.bungee.conf.YamlConfig.getListeners(YamlConfig.java:234)
21:36:53 [SEVERE] at net.md_5.bungee.conf.Configuration.load(Configuration.java:87)
21:36:53 [SEVERE] at net.md_5.bungee.BungeeCord.start(BungeeCord.java:282)
21:36:53 [SEVERE] at net.md_5.bungee.BungeeCordLauncher.main(BungeeCordLauncher.java:113)
...
Please open a new one instead of necrobumping irrelevant old ones.
Not a waterfall issue, your configuration is invalid
This won't make @electronicboy s life a little easier, but this maybe make @md-5 s life a little easier
@tsao-chi I doubt it; last time @electronicboy hacked together a working bungeecord well ahead of time md-5 was ready with it on his side
That said; I am open to it. Iโll PR my changes th BungeeCord and see what he has to say;
@Xernium You'll get the cold shoulder, with him saying that "updates are handled internally" and your PR will be closed. I didn't need to open a PR to demonstrate this - there are several examples of this.
@astei I wasnโt gonna PR to experience that, I know very well what the outcome would be sadly
That said who cares in the end- Iโll open my PR and get shut down. I knew that thatโs gonna happen from the moment I sent that message. But at least I tried them
Update: Well I got my answer in IRC and Iโll leave it at that. I wonโt attempt to contribute to bungeecord directly again. But oh well at least I showed good faith ยฏ_(ใ)_/ยฏ
You could move the PR to Travertine, as that got 1.15 support before upstream.
...this is literally a Travertine PR.
Thanks for reminding me.
so today mojang session servers been shit, and I assume they updated them a bit ago because the IP changed. However bungee is not updating the resolved IP, as you can see it is different when I use the "host" command, vs what it shows in console for players unable to join
greload does fix it, also probably relevant I do have use netty dns enabled
> host sessionserver.mojang.com sessionserver.mojang.com has address 99.84.223.181
`[17:08:13 ERROR]: Error authenticating A21 with mine...
Unrelated, thats why my console client/magic launcher throwing me invalid session. Darnit Mojang, they always screw up things :/
I would rather be PR'd to Waterfall. Not all of us use Travertine.
Then Travertine will get it from WF.
AcademyCraftโs item Data Terminal will not work properly
When I use BungeCord to connect to the mod server
AcademyCraft Unable to detect data terminal
But when I connect directly to the mod server data terminal proper functioning
This problem also appeared in ShinColle
The error is simply io.netty.channel.unix.Errors$NativeIoException: bind(..) failed: Address already in use
It happens in when I use ProxiedPlayer.connect to send the player to another server,
It usually takes about 10-30 tries before they actually get in.
I'm using
java:
Java(TM) SE Runtime Environment (build 1.8.0_251-b08)
Java HotSpot(TM) 64-Bit Server VM (build 25.251-b08, mixed mode)
os:
CentOS Linux release 7.7.1908 (Core)
Linux localhost.localdomain 3.10.0-1062.el7.x86_6...
io.netty.channel.unix.Errors$NativeIoException: bind(..) failed: Address already in use
That is not a waterfall issue, something somewhere tried to use an address that is already in use.
So what should I check from
If I repeatedly join my Server I after some time get on the Server eventhough I get cancelled the first time, I get on the server after 2-4 times repeatedly joining. My LoginEvent checks if the Player is banned, and then disallows him.
Hello,
Recently I was experimenting with Java 11 and I found out that with this version waterfall will turn on, however, no one will be able to join.
It results this error when a user joins:
java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty
Thanks.
This is not an issue with waterfall, your certificate store is busted and missing certificates, I'd suggest reinstalling java
I don't now if this is something to worry about. Maybe is this something on Mojangs side. It was able to log in after the third time.
Here is my log:
[13:14:06 ERROR]: Error authenticating Pistonmaster with minecraft.net
io.netty.resolver.dns.DnsResolveContext$SearchDomainUnknownHostException: Search domain query failed. Original hostname: 'sessionserver.mojang.com' failed to resolve 'sessionserver.mojang.com' after 2 queries
at io.netty.resolver.dns.DnsResolveContext.finishR...
Your DNS server timed out
@electronicboy is there anything i can do to prevent this?
There is an option in waterfall.yml to disable entity metadata rewriting, I would suggest trying that
You'd need to work out why it timed out, you could disable nettys DNS resolver in waterfall.yml to rely on java/the OSes stack, might offer better caching or something if this occurs often
@electronicboy thanks. I will try this if it occurs multiple times. ๐
I tried to create a Docker image for a waterfall server. I wrote the following Dockerfile which clones the repository and executes waterfall b. Then I copy the waterfall.jar and delete all other files.
The server start fine and also connects to the default server. But I can not execute any commands related to waterfall/bungeecord (e.g. /server, /servers, /glist, /alert). The logs also show nothing interesting, only a plain command now found when executed from the console.
Dockerfile:
`...
The commands are implemented in the modules, not inside the proxy itself; You'll need to copy them over
Wow that was a fast Answer, Thank you!
I want write bukkit multi version from 0, i want analyze int byte to int byte;to create a server 100% autonomous and free of bugs that occur in community edition;
I would like help to establish the tools for the message protocols;what are those "??" in the message data? what tools can i use to read?
is it possible to communicate with the minecraft protocol through json code texts like i saw on some nodejs and wikis servers or do i have to test all int bytes ?
 there is no way to wrap around it to handle exception catching for commands and events.
This patch copies over the exception event (and corresponding exception classes) that exists in paper today and implements it in the places around the proxy codebase that should fire the event.
Couple of notes:
- Bungee's EventBus registration doesn't ever store a reference to the plugin that ...
We need something that prevents stackoverflow: if an error happens during event handling of any event and if there is a faulty plugin always throwing in ProxyExceptionEvent this creates unneccessary long console output and cpu usage. This could be achieved by having a separate, private callEvent method which requires a ProxyExceptionEvent and which gives the eventbus an empty exception handler.
This issue includes the fix for netty/netty#10165, also known as "bungeecrasher" or "bungeespammer" amongst other names.
We need something that prevents stackoverflow: if an error happens during event handling of any event and if there is a faulty plugin always throwing in ProxyExceptionEvent this creates unneccessary long console output and cpu usage.
This could be achieved by having a separate, private callExceptionEvent method which requires a ProxyExceptionEvent and which gives the eventbus an empty exception handler and which is called instead of callEvent for ProxyExceptionEvents.
There is a...
Does this need changes when 20w18a comes out or whatever version for that matter or will the previous version still work?
@TychoWerner Since the snapshots are a highly dynamic element; Yes of course it will change. Thatโs what this pull request is for. If someone had to do one thing to make all future snapshots work then we wouldnโt be here atm. We canโt exactly predict what Mojang will do to that level. So yes there are gonna be updates and yes stuff is going to break (most likely)
Side note; I will move this to Waterfall during the coming weekend as per @aikar s suggestion
@aikar Waterfall has never supported pre-release protocols. The pre-release protocols have always been done in Travertine (dbe27f380f23a37386615e317cc1e5a78a65e636, 32c100ed0360addab7421554ee81c86a018e27e1, ac8e757b85208996874605ed305cfdad12d6c3fd). @Xernium for that reason I say keep this here unless aikar or some other member of the paper team replies.
@JRoy Itโd help if you scrolled up in the conversation a bit ;)
@TychoWerner Since the snapshots are a highly dynamic element; Yes of course it will change. Thatโs what this pull request is for. If someone had to do one thing to make all future snapshots work then we wouldnโt be here atm. We canโt exactly predict what Mojang will do to that level. So yes there are gonna be updates and yes stuff is going to break (most likely)
Thanks for your reply. I was looking at your latest commit (https://github.com/PaperMC/Travertine/pull/120/commits/6af17c8eb97...
@Xernium i got an issue with players being disconnected and it says that they where sent too an fallback server while the serverthey were on didn't go down i am using the last buid as of this moment and have viaversion on my proxy along with someother plugins that shoudn't affect this. hope you can help with this. it's only with 1.16
am atm looking if this is an 1.16 viaversion issue by moving them too the servers intead of the proxy itself cause had more problems with viaversion though it shoudn't interfere with this
@TheCompieter I donโt test with ViaVersion especially since it wasnโt updated yet when I pushed this update. It worked on a vanilla snapshot server. Iโll investigate into it.
thanks if you need any more specific information say so.
also when throwing out an fishing line it doesn't show the line or dobber but does in single player and this is without viaversion and with viaversion.
@TheCompieter The fishing issue might be due to an entity rewriter being broken. I'll have to look at it. Also I can't reproduce your issue. I tried it with a network that has a 1.15.2 paper server with ViaVersion and a Vanillacord 20w17a server. Is there a specific trigger to the issue?
Side note; a productive conversation here using comments isn't going to be easy. If you use Discord please @ me on the ViaVersion or on the PaperMC Discord server, that could speed this up a lot
@TheCompieter The fishing issue might be due to an entity rewriter being broken. I'll have to look at it. Also I can't reproduce your issue. I tried it with a network that has a 1.15.2 paper server with ViaVersion and a Vanillacord 20w17a server. Is there a specific trigger to the issue?
No it's random and no error as far as i know i am now just using it without viaversion and if it still happens i will let you know.
Side note; a productive conversation here using co...
So i have a WaterFall server hosted on 1.15.2 that has a hub and then a flans server. On the flans server i have setup spongeforge and its corresponding settings in order for it to work with waterfall. But for some reason my WaterFall server refuses to connect me to my flans server.
here is what my WaterFall server says:
and here is what my flans server sees:
 ~[BungeeCord.jar:git:Waterfall-Bootstrap:1.15-SNAPSHOT:e45fb1f:340]
at io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:717) ~[BungeeCord.jar:git:Waterfall-Bo...
Please search your log for a full stack trace. This one is not complete, it is missing "at" lines after "Caused by". Stack trace shortening happens when an exception is thorwn thousands of times to improve performance.
io.netty.handler.codec.EncoderException: java.lang.NullPointerException
at io.netty.handler.codec.MessageToByteEncoder.write(MessageToByteEncoder.java:125) ~[BungeeCord.jar:git:Waterfall-Bootstrap:1.15-SNAPSHOT:e45fb1f:340]
at io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:717) ~[BungeeCord.jar:git:Waterfall-Bootstrap:1.15-SNAPSHOT:e45fb1f:340]
at io.netty.channel.AbstractChannelHandlerContext.invokeWriteAndFlush(AbstractChannelHandle...
something on your proxy tried to send a mangled set of properties in the player list packet
This Pull-request is meant to be merge-ready when 1.16 gets released so a usable Bungeecord can be obtained ASAP. The changes in this PR will get lost when Bungeecord gets updated to support 1.16, that is intentional. This is just meant to maybe make @electronicboy s life a little easier ;).
You can view the original Pull-request here.
I still maintain the Travertine fork just so I can backtrack on the changes, but this imp...
Branch will be reworked in favour of https://github.com/PaperMC/Waterfall/pull/494
i have problem with waterfall can somebody help me!
.... [11:49:04 ERROR]: [/149.202.74.183:49608] InitialHandler - encountered exception: net.md_5.bungee.util.QuietException: Unexpected packet received during login process! 6e6f9828dc248ca11153eb922a60c5ef
someone sent invalid data, usually this can be ignored completely
[PaperMC/Travertine] branch deleted: unsupported
[PaperMC/Waterfall] branch deleted: pending\-upstream
We're running a multi proxy setup, and, today, out of the blue, the following issue started occurring on our SkyBlock servers, and we're not exactly sure how to deal with it.
Steps we've taken, in order, have been
- Stopping the server(s)
- Deleting the "scoreboard.dat" file from the main world on all server(s)
- Restarting the server(s)
- Manually removing the team(s) causing issues (they come back quick)
- Temporarily removing Scoreboard, and ...
Which plugins do you use on your servers?
Can you modify them easily so no server has identical internal scoreboard names?
We use FeatherBoard as the main scoreboard, but, other plugins like NametagEdit, and LibsDisguises also modify/create boards
I could look into renaming them. But, it's just weird how it came out of nowhere
I was the one who made the PluginManager final. This was intentional to stop people from modifying it at runtime. Also I don't find a usecase about your pr; exceptions occurring in event handling or command handling should be handled there. A direct example is enforcing an specific argument type for command:
public void execute(CommandSender sender, String[] args) {
// ...
try {
Integer.parseInt(args[0]);
} catch (NumberFormatException e) {
sender.sendMessa...
Looks fine, only real thing is the waterfall comments, they should annotate the set of changes, I'd suggest glancing over the paper contribution guide if you haven't
I put the permission "bungeecoord.command.server" as well as the command "bungeecoord.command.glist" via the configuration file.
I did this because a player could not connect via the "server" command even though I had given him permission with LuckPerms.
Unfortunately, it still does not work.
Is it likely that waterfall is involved?
Today I got kicked by my Waterfall and got the following exception in the log:
https://pastebin.com/raw/Dgd1dx5Y
It happended during switching worlds on a server (but not switching servers)
I did have a look in the waterfall logs and during the last days several players got kicked with this exception. Any ideas why that happens and what I can do to prevent this?
This is the limit on plugin messaging channels which can be registered by players.
Is it possible to list those registered channels to see what might cause it?
Think I got everything with comments now. Let me know if I missed anything
@MrIvanPlays I understand why you made it final. Honestly I think it's a good thing in the long run. However there is a use case to having exceptions being available like this - which is actually what this pr is about.
I make and use a plugin that grabs all of the exceptions from proxies and backend servers and forwards them to sentry so I can proactively keep an eye on issues without having to tail x amount of logs for all the servers that I run. Has been a lifesaver numerous amounts of t...
@MrIvanPlays I understand why you made it final. Honestly I think it's a good thing in the long run. However there is a use case to having exceptions being available like this - which is actually what this pr is about.
I make and use a plugin that grabs all of the exceptions from proxies and backend servers and forwards them to sentry so I can proactively keep an eye on issues without having to tail x amount of logs for all the servers that I run. Has been a lifesaver numerous amount...
however I still think that occurring exceptions should be handled in the source (command, event handling) and not to be suppressed in a event.
Nobody is making the argument that they shouldn't?
Exception handling clearly isn't the use-case of the PR. Read the title: "exception reporting".
The exceptions are not being suppressed, they're just being exposed in an event as well as in a call to the proxy logger.
Latest Waterfall.
No plugins on the Bungee installed
`[11:21:57] [Netty Worker IO Thread #5/INFO]: [Feurixx] disconnected with: DecoderException : net.md_5.bungee.jni.NativeCodeException: Unknown z_stream return code : -3 @ io.netty.handler.codec.MessageToMessageDecoder:98
[11:24:28] [Netty Worker IO Thread #0/INFO]: [Hungerplay] disconnected with: CorruptedFrameException : length wider than 21-bit @ net.md_5.bungee.protocol.Varint21FrameDecoder:53
[11:56:48] [Netty Worker IO Thread #15...
https://www.zlib.net/manual.html#Constants - #define Z_DATA_ERROR (-3)
Brokenly compressed payload. Something mangling the packets?