#waterfall-github

1 messages ยท Page 3 of 1

buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

Log file doesn't contain any errors other than timeouts. The server connects instantly for any users outside of my local network, but trying to connect to the machine on my network running waterfall causes a read timeout.
Login is registered, I'm connected to one of my proxy servers, and the server begins the login process.
Wireshark shows that after a certain amount of time packets just stop being sent.

buoyant shoreBOT
buoyant shoreBOT
#

Every time I type a space after a proper command I get kicked for:
Method became inaccessible: TabCompleteEvent(super=TargetedEvent(sender=OrangeKale64, receiver=net.md_5.bungee.ServerConnection@451d461e), cancelled=false, cursor=/login , suggestions=[]) @ net.md_5.bungee.event.EventBus:50
As you can see I was trying to login to my server, but I get kicked every time I type the space after and proper command or if I send anything to chat. Some help please.

java.lang.Error:...

buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

I see. Then in the case that

return super.buildReader(builder.appName(proxy.getName()).completer(new ConsoleCommandCompleter(proxy)) used by Waterfall
is advantageous over Bungees consoleReader.addCompleter(new ConsoleCommandCompleter( this)); in the newer Jline version:

The diff could be reduced by 2 lines by removing Waterfalls custom completer impl and setting the completer of Waterfall to Bungees impl and then commenting out the update of the completer within upstream.

buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

Hi. We had a dev set things up who is no longer with us and I'm trying to start a new Stoneblock 2 server but what he setup is blocking us in some way. I guess this isn't so much an issue as it is a plea for help. if I can resolve this, it would be great. Below is some info and a link to the config.yml.

The Waterfall and lobby servers show when a player connects to lobby but shows no attempts to connect them to Stoneblock 2
The Stoneblock 2 server console shows no signs of any connection ...

buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

Modpack:
Error: https://gist.github.com/cooljacob204/090eb932b66f3fd6fadc107b54a98335

config.yml:
`listeners:

  • query_port: 25577
    motd: Default server, you probably have the wrong ip
    tab_list: GLOBAL_PING
    query_enabled: false
    proxy_protocol: true # I tested haproxy directly to make sure it wasn't that
    forced_hosts:
    dimension.lfp2.gg: dimension
    vanilla.lfp2.gg: lobby
    skyblock.lfp2.gg: skyblock
    ping_passthrough: false
    priorities:
    • lobby
      bind_loc...
#

I know that there is sponge, but; potentially too "large" of a mod depending on your needs, not really aware of anything more standalone; This is something that I would maybe speak to the mod dev about, it only ever seems to pass the clients own UUID, so, not really sure /why/ it needs to use the UUID; would be an easy patch, not really sure why looking at it you couldn't just make it grab the players info from the MessageContext

buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

@MrIvanPlays I don't think my code is wrong, it's just a bit of a mess. It sums all the latencies and divides by the number of online players.

Just changed it to:

private static int getPingAverage() {
	return (int) ProxyServer.getInstance().getPlayers()
			.stream()
			.mapToInt(ProxiedPlayer::getPing)
			.average()
			.orElse(0D);
}

But it obviously doesn't fix the problem.

buoyant shoreBOT
#

You're measuring the wrong (and in my opinion, meaningless) statistic, in my opinion.

Averages are well-known for not being a resistant statistic. The presence of extremes in a list will cause its average to increase. You're averaging the ping of all players, which can be extremely skewed. For instance, if I connect on a cable connection to a server close to my location, I will have good latency, but if I'm connecting from a satellite internet connection, my latency will be quite awful ([W...

buoyant shoreBOT
#

@astei this is not meaningless. All my players live in the same country and the ping average directly shows instabilities and network problems. It helps us a lot to identify issues. I know that there are more effective statistics to diagnose network problems, but it doesn't explain why my graph shows that kind of latency spikes on the latest BungeeCord/Waterfall builds.

buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

`
java.lang.IllegalArgumentException: Objective 4f3ade0153dc already exists in this scoreboard
at com.google.common.base.Preconditions.checkArgument(Preconditions.java:191)
at net.md_5.bungee.api.score.Scoreboard.addObjective(Scoreboard.java:55)
at net.md_5.bungee.connection.DownstreamBridge.handle(DownstreamBridge.java:149)
at net.md_5.bungee.protocol.packet.ScoreboardObjective.handle(ScoreboardObjective.java:67)
at net.md_5.bungee.netty.HandlerBoss.channelRead(HandlerBoss.java:10...

buoyant shoreBOT
#

I'm pretty sure thats not bungee/waterfall/whatever fork of those problem. But with the latest changes we made on this topic the data got even acurater, although I think we will need one more change; to clean up some of the old keep alives in order to free up some memory. But this won't affect the data in any way.

I'm pretty sure these spikes are either server or clients' network problem. And I agree with @astei that this statistic is meaningless.

buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

Attributes aren't reset, so the player sees the wrong amount of hearts when switching away from a server that changed the default value to a server without the change (since default attributes are not sent to the client). All of the other attributes either don't affect the client itself or are reset due to non-default values for players, so only the max health attribute is important.

buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

Hello,

Iโ€™m having issues with my servers after enabling IP Forwarding so that i can use multichat, when i try to join through my Waterfall server i start connecting to my main modpack server add see some fml authentication in its console but then iโ€™m kicked just after it said i joined the game, the client gives me the error
โ€œThe server you where previously on went down, you have been connected to a fallback serverโ€

And in the Waterfall console i get
โ€œDownstreamBridge [main] - bad pac...

#

I'm more wondering what these mods are doing, and what versions this is
actually applicable to, as I have a feeling it would be viable to just say
to skip rewriting on those versions, and maybe look at handling the extra
data and just throw it though

On Wed, 10 Jun 2020, 11:37 FivePB (Xer), notifications@github.com wrote:

@electronicboy https://github.com/electronicboy Would you merge a fix
for this that deactivates rewriting for these scenarios? (With or without
config option, th...

buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

Im using:

Forge 2838
spongeforge 2838 for 1.12.2
Waterfall #346

And i receive two different, separate errors when connecting in. The first from the lobby:

Ren_kun lost connection: Internal Exception: io.netty.channel.unix.Errors$NativeIoException: syscall:read(..) failed: Connection reset by peer

and the client gets:

Internal Exception: java.lang.NullPointerException

while waterfall receives:

[|/45.127.94.8:60757]: ServerConnector [lobby] has connected
[/45.127.94.8:6...

buoyant shoreBOT
buoyant shoreBOT
#
[20:22:15] [Netty Client IO #0/INFO] [net.minecraft.advancements.AdvancementList]: Loaded 577 advancements
[20:22:15] [Netty Client IO #0/ERROR] [FML]: Exception caught during firing event net.minecraftforge.fml.common.network.FMLNetworkEvent$ClientConnectedToServerEvent@24f327f:
java.lang.IllegalStateException: null
	at com.google.common.base.Preconditions.checkState(Preconditions.java:429) ~[guava-21.0.jar:?]
	at net.minecraft.advancements.Advancement.getTree(SourceFile:565) ~[i.cl...
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

Hello, I have a problem with the last Waterfall version (353), freshly downloaded from the website.
When I tries to connect to the server (with default configs), It kicks me from it with the reason "Internal Error: java.lang.NPE", I am running on a VPS with java 8. It do the same on my computer. I am playing on 1.8

buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

The issue happened when you were in the nether and you changed from that server to another server that was in the overworld. You would stay stuck endlessly.

In addition, BungeeCord changed how the dimension changed internally, so we can safely cast to an Integer without having to worry about if the dimension was an object or an int.

The issue was in https://github.com/PaperMC/Waterfall/blob/master/BungeeCord-Patches/0046-Provide-an-option-to-disable-entity-metadata-rewriti.patch#L112

...

buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

I have tested builds 358, 357, and 356 all downloaded from https://papermc.io/downloads#Waterfall and they all fail to start with the error:
`>.... [23:23:21 ERROR]: Could not load 'plugins/Waterfall.jar' in folder 'plugins'
org.bukkit.plugin.InvalidDescriptionException: Invalid plugin.yml
at org.bukkit.plugin.java.JavaPluginLoader.getPluginDescription(JavaPluginLoader.java:162) ~[patched_1.16.1.jar:git-Paper-1]
at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java...

buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#
[15:03:58 ERROR]: [Samukage|/189.63.128.200:60378]  ServerConnector [RankUP_OP] - exception processing exception
java.lang.NullPointerException: null
        at net.md_5.bungee.util.ChatComponentTransformer.legacyHoverTransform(ChatComponentTransformer.java:44) ~[bungeecord.jar:git:Waterfall-Bootstrap:1.16-R0.2-SNAPSHOT:d0f82f3:359]
        at net.md_5.bungee.util.ChatComponentTransformer.transform(ChatComponentTransformer.java:111) ~[bungeecord.jar:git:Waterfall-Bootstrap:1.16-R0.2-S...
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

today my server got attacked, a bunch of proxies (all different IP so current throttle wouldnt catch) all requested to login with random usernames. This resulted in 50-700 connections per second fduring the attack and ultimately my bungee IP being blocked by mojang for a bit due to too many requests, as well as bungee freezing due to out of memory. This only took about a minute for the attacker. This could mitigated by adding a configurable rate limit to ANY join (InitialHandler has connected...

buoyant shoreBOT
#

Currently taking some time off, so, probs not gonna really consider this for a little while

I'm not really fond of throwing in config options for this type of stuff, everybody is going to want different behaviors around this, that maintaining that in the core software is really not something I'm super happy fond about, especially when I recently added events to waterfall to allow plugins to handle with this as efficiently as possible, and saves us from having to care about every 'weird' re...

buoyant shoreBOT
#

If every one wants different things isnt that exactly what config options are good for?

There is no way I'm going to set up all sorts of load balancing or whatever that I don't even think would work for a ddos attack that I would never need to do otherwise I only get like 100 players

If this is possible to actually cancel any sort of handling of the connection (before sending request to mojang at least) then that's fine this can be closed I'll try to make a plugin but if not I'd still l...

buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

I believe I have figured out how to do this with iptables, just posting it here for anyone to give it a second look as its not tested as I dont have this attack tool

to create:

iptables -N MCLIMIT
iptables -A INPUT -p tcp --dport 25565 -m state --state NEW -j MCLIMIT
iptables -A MCLIMIT -m limit --limit 10/s --limit-burst 20 -j ACCEPT
iptables -A MCLIMIT -j LOG --log-prefix "MCLIMIT: "
iptables -A MCLIMIT -j REJECT

then here is to remove:

iptables -D INPUT -p tcp --...
buoyant shoreBOT
buoyant shoreBOT
#

Hello, for no apparent reason all the players suddenly have the same IP, this only happened on 1 server in the entire network, and we do not know why, since we have not touched any that has to do with it, only optimization. The problem is that now we cannot ban anyone from ip every time we ban someone, they come back with another account (Yes, it is a non-premium minecraft server). What option do I have so that this does not happen and the error is corrected? :c

buoyant shoreBOT
#

You likely didnโ€™t configure bungee mode on the backend server

On 4 Jul 2020, at 21:08, ToxicPeople notifications@github.com wrote:

Hello, for no apparent reason all the players suddenly have the same IP, this only happened on 1 server in the entire network, and we do not know why, since we have not touched any that has to do with it, only optimization. The problem is that now we cannot ban anyone from ip every time we ban someone, they come back with another account (Yes, it is a...

buoyant shoreBOT
buoyant shoreBOT
#

So, I'll explain the problem in detail, I wanted to be able to edit the messages of BungeeCord, in particular the messages that are shown when the player is kicked, for example because the player is already online on the server or because he is using a non-malicious version etc. So in order not to use a fork of Waterfall / Travertine that are never updated I decided to extract the message.properties file and edit the messages from there, I did not have some type of problem to edit the message...

buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

What behaviour is expected:
Players to be able to use Shulker Boxes from 1.15.2.

What behaviour is observed:
If a player had a Shulker box with NBT data in an inventory [either theirs or in a chest] from 1.15.2, as soon as that inventory is loaded after the 1.16 upgrade the player will crash.
No errors in console other than the player disconnecting.

Steps/models to reproduce:
Load up a 1.15.2 Spigot server
Get a Shulker Box that has some form of NBT data [some of these ...

buoyant shoreBOT
#

Hi,

I saw today a weird bug, that only happens with the latest build 361: https://pastebin.com/dNEQWZG5
Background-Information:
I develop a plugin which gets posts from a grav website to announce it in game. I use json to proper format this message and replace some variables with the given data.

This function looks like this:

`HashMap postdata = getPostData(getLatestPost(a));
if(postdata.get("status").equalsIgnoreCase("ok")){
...

buoyant shoreBOT
#

I couldn't reproduce with both the JSON's in this post:
Here's the code I used to test (it doesn't throw any exception):

    public static void main(String[] args) {
        String json = "[{\"text\":\"Klicke hier um die letzte News \",\"color\":\"white\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://eona-minecraft.de/de/news/creative-und-themona-gehen-wieder-online\"}},{\"text\":\"Creative und Themona gehen wieder online!\",\"bold\":true,\"color\":\"gold\",\"clickEvent\...
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#
[12:58:05] [Netty Worker IO Thread #29/INFO]: merinos executed command: /fr bmsg FIVEFIVE
[12:58:05] [BFriend Pool Thread #0/ERROR]: Task BungeeTask(sched=net.md_5.bungee.scheduler.BungeeScheduler@221a1bb, id=195, owner=at.yawk.bfriend.BFriend@25fc83c2, task=at.yawk.bfriend.BFriend$FriendCommand$$Lambda$441/417352248@26e3de68, delay=0, period=0, running=true) encountered an exception
java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
	at uk.co.thinkofdeath.command...
buoyant shoreBOT
#

I'm leaning towards making the scheduler just a simple wrapper around the JDK's ScheduledExecutorService. It should be per-plugin so plugins don't interfere with each others tasks. I assume wasted threads for plugins that don't use the scheduler isn't a problem.

There is technically potential for API if a plugin uses a lot of blocking tasks but those plugins are kind of dumb and I don't know that we should support them.

If we are worried about potential breakage, we should probably just...

buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

Hi, couldn't you add one option to disable these messages? It's annoying when players are switching servers and it instantly spam proxy console.... Something like you did in waterfall.yml with initial_handler? So something like way to disable logging of these messages?

>.... [01:38:33 INFO]: [playername|/playerIP:port]  ServerConnector [server] has connected
>.... [01:38:33 INFO]: [/playerip:port|playername]  DownstreamBridge  [server] has disconnected
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

comment: only one player gets kicked. Other players remain on the server.

`
java.lang.IllegalStateException: Adding 1 elements would exceed capacity of 128
at com.google.common.base.Preconditions.checkState(Preconditions.java:593) ~[waterfall.jar:git:Waterfall-Bootstrap:1.16-R0.2-SNAPSHOT:9234e50:358]
at net.md_5.bungee.util.BoundedArrayList.checkSize(BoundedArrayList.java:19) ~[waterfall.jar:git:Waterfall-Bootstrap:1.16-R0.2-SNAPSHOT:9234e50:358]
at net.md_5.bungee.util.BoundedArra...

buoyant shoreBOT
buoyant shoreBOT
#

No it is some bug in here:
https://github.com/SpigotMC/BungeeCord/blob/master/proxy/src/main/java/net/md_5/bungee/connection/UpstreamBridge.java#L251
All (not cancelled) minecraft:register or minecraft:brand messages from the client to the bungee since the client connected are stored in a list and sent to the new server after a server switch.

The problem is that those messages are never removed from that list and after every server switch the client resends the minecraft:register and min...

buoyant shoreBOT
buoyant shoreBOT
#

I created a plugin that logs those messages for debugging. The vanilla client definitely sends a minecraft:brand on server switch. Forge/Fabric clients also send one or more minecraft:register packets on server switch.

Vanilla Client:

[playername|/x.x.x.x:50282] <-> ServerConnector [Farmen] has connected
Setting stored Location for playername: Farmen
[/x.x.x.x:50282|playername] <-> DownstreamBridge <-> [Freebuild] has disconnected
[BungeePluginMessages]: Message to playername: minecr...

buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

I use paper's Player#setPlayerProfile() to change skin of a player, using code below

        PlayerProfile profile = player.getPlayerProfile();
        profile.setProperty(new ProfileProperty("textures", skin_value, skin_sign));
        player.setPlayerProfile(profile);

This WORKS without problem when connect to paper directly (offline or online mode), and also works when connect to Waterfall in online mode. But not working in offline mode.

Steps to reproduce:

-...

buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

I have run into situations before where the number of people connections to a proxy at once can sometimes overwhelm certain systems and cause rate limiting from mojangs end.

One of the teams I work for have developed an in house solution to this to load balance Mojang login requests over our internal infrastructure to combat this (which may be open sourced at some point), but to use it we are required to modify this url each time with a custom build.

To keep updating simple (this is li...

buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

Screenshot_20200804-095517

I'll include this as a conversation that occurred in the MinecraftForge Discord, make sure to go there and find these messages for the rest of the conversation and context as there is more.

Essentially a reset packet has to be added to Forge that follows this general idea for any support like this work. At this time they are not interested in spending the t...

buoyant shoreBOT
#

I believe that the best route, which I'm pretty sure we talked to lex about, would be to basically have a server switch packet, the only real caveat is making this work in common proxy environments, the /only/ way I could see this working would be to have some way to pass some data to the client to re-forward on join, that way we can send them to the correct server, which ofc, creates its own "we don't want the client to be able to throw arbitrary data at us and do whatever" issues

buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

Hello everyone,

so I have a problem with starting my Waterfall Proxy Server. I don't know what the problem is so I decided to turn to you guys for some help with the console log.

[16:16:36] [main/INFO]: Using mbed TLS based native cipher.
[16:16:36] [main/INFO]: Using zlib based native compressor.
[16:16:36] [main/INFO]: Enabled Waterfall version git:Waterfall-Bootstrap:1.16-R0.4-SNAPSHOT:8afc4e2:366
[16:16:36] [main/INFO]: Not on Windows, attempting to use enhanced EpollEventLo...
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

Currently using Waterfall#366 for my 1.12.2 modded spigot server. Most packs work just fine, just not sure if this can just be fixed on Waterfall's side (if there isn't already one) without having me to find which mod(s) are conflicting/causing this.

The only other time I have experienced this is when there is too much data (too many packets?) going from the client to the server. But in this case, I know its Waterfall. I can join the server just fine until I use vanish from a plugin such a...

buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

So on our server we have quite a few custom villagers that sell custom items. Their summon command are quite large to fit in all their data. We just recently made our servers into a network with Waterfall. Now when we try to paste our commands into command blocks to summon our villagers, we get kicked and this message pops up.

DecoderException : net.md_5.bungee.protocol.OverflowPacketException: Cannot receive string longer than 2048 (got 8668 characters) @io.netty.handler.codec.MessageToMe...

buoyant shoreBOT
#

Hi, we are facing the same issue on our server. We are running Thermos 1.7.10 on our backend servers. When you join a Bukkit dimension, Thermos sends DimensionRegister packet to client to inform it about the world's provider.

https://github.com/CyberdyneCC/Thermos/blob/bae97f16f0fac984a56083769ef75cb8a8eb1812/patches/net/minecraft/server/management/ServerConfigurationManager.java.patch#L114

I think that either the DimensionRegister packet doesn't get forwarded to the client at all, or ...

buoyant shoreBOT
#

When I tried to connect a 1.16.2 server with waterfall#367, an error occured.

[02:30:02 INFO]: [/180.102.122.78:19374]  InitialHandler has connected
[02:30:02 INFO]: [MAX_XiaoKui|/180.102.122.78:19374]  ServerConnector [survival] has connected
[02:30:03 WARN]: [MAX_XiaoKui|/180.102.122.78:19374]  ServerConnector [survival] - bad packet ID, are mods in use!? Unsupported protocol version 751
[02:30:03 INFO]: [MAX_XiaoKui] disconnected with: Exception Connecting:FastDecoderException : ...
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

Did you update the submodule Waterfall (assuming this is a modified travertine) with ./travertine up and then rebuild your changes? Assuming you just modified travertine, I would suggest you clone the current Travertine repo, put your extra patches in the patches folder, rebuild the patches and go from there

Hi, please explain carefully what i have to do, because i just lost all my changes by doing ./travertine rb :/

buoyant shoreBOT
#

Remove the spaces in the path, that would be my guess

On Fri, 14 Aug 2020, 17:27 LinsaFTW, notifications@github.com wrote:

Up, patch, fix any issues, rebuild

Thats exactly why i asked for more detailed info. I dont understand that
terms. I already readed the CONTRIBUTING.md on how to pull but it gives me
the error i described in the first message.

โ€”
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
<https:...

buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

Okay, after 12 hours of try/fail i now understand the Patch system. But now my problem is that Travertine/Waterfall patch system is broken because it generates the folder path when built so now that i am using another path (moved from downloads to minecraft-workspace) it tries to use the unexistant downloads path.

What can i do from here? It seems now like an issue from Travertine/Waterfall that i can't solve. I don't want to lose the source, i already recoded FlameCord 3 times because of ...

buoyant shoreBOT
buoyant shoreBOT
#

Okay. Thanks for all the help on Discord, Purple. I was able to fix this with the following steps to pull from upstream:

  1. I made my patch as CONTRIBUTING.md specifies.
  2. When i tried to travertine p it gave merge errors with my patch, this is what i did to fix the issues:
    2.1. Open all files listed on the "merge error" message with your favorite text editor.
    2.2. You will see that each file has a "<<< head" text added on the files, this is to identify between the incoming change ...
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

I've been trying to fix this issue for hours now but it seems from all my tests that this problem is because of Travertine.
I'm using the latest build #158 and the problem isn't when I login directly to the Minecraft server. I also used latest buuild of spigot. Normally I'm using Waterfall also the latest build.

What it all comes down to is that when I or other ppl logon we can't see each other. We can see chests opening, fireworks going off and arrows flying. Just not the player doing t...

buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

Waterfall version git:Waterfall-Bootstrap:1.16-R0.4-SNAPSHOT:52a5c6f:371 by md_5

Ive suddenly today had a lot of bungee crashes, which is odd as nothing has changed in months with my waterfall it just sits there, one of my admins mentioned some kid saying "Ill send more packets in a second than you've had hot dinners", pulled the logs for waterfall and its nothing like ive ever seem, 200,000+
Here is 1 seconds worth of logs:
https://gist.github.com/TomLewis/6c4433bdf72dfc1e4196dd8...

buoyant shoreBOT
#

How on earth is it possible to spoof an IP!?

Query is UDP, don't need any form of handshake here

At the end of the day, a piece of software exposed to the internet has one job: to process connections
The only way we could solve this is by attempting to perform stuff like connection rate limiting, which due to the scope of, is

  1. Better handled by the firewall of your server, iptables, etc
  2. failing that, much better for a plugin to deal with given the nature of configurability req...
buoyant shoreBOT
buoyant shoreBOT
#

How on earth is it possible to spoof an IP!?

Query is UDP, don't need any form of handshake here

At the end of the day, a piece of software exposed to the internet has one job: to process connections
The only way we could solve this is by attempting to perform stuff like connection rate limiting, which due to the scope of, is

1. Better handled by the firewall of your server, iptables, etc

2. failing that, much better for a plugin to deal with...
buoyant shoreBOT
#

Just firewall off the port for all but some IPs (vote lists), and have some endpoint such as /api/query returning server info for your website. You can trust the vote sites, and your own code.

But I already do that, I only have open ports that I need on the firewall.... Literally makes no sense why those IPs have random port numbers on them in the logs.

And you're saying to turn off query on the server?
The vote websites will all query in the same way, I would have to reverse engin...

buoyant shoreBOT
#

What solution would you like to have? Mitigating attacks at application layer is too inefficient and must be done at lower layer (your best option - firewall). Query protocol has always been vulnerable to such attacks, your best solution is to firewall it off from others, or turn it off completely, as suggested multiple times already.

I would have to reverse engineer the minecraft query to solve a bug in bungee.

No you don't, it's already documentated

buoyant shoreBOT
#

These "Magic" queries are not legitimate queries, only process legitimate queries is one step in the right direction

That's exactly what is happening with the invalid magic message

the second one is limit the size of packets

At this point, size checks are 100% useless, this would be a micro-optimization at best, the memory and resources required to handle this packet have already been allocated, the existing logic to catch these will drop these packets from being responded to, as...

buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

I get this error on waterfall but i dont know from where.
On BungeeCord i dont have it.

An exception occurred processing Appender File com.google.common.util.concurrent.UncheckedExecutionException: java.lang.IllegalArgumentException
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2217)
	at com.google.common.cache.LocalCache.get(LocalCache.java:4154)
	at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:4158)
	at com.google.common.cache.LocalCache$Loc...
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

Hello i have a problem with watefall lately. A player cant connect to a spigot server and this shows up in my console

`>.... [01:34:09 ERROR]: [/119.92.185.147:49667|Haxxe] DownstreamBridge [survivalB] - encountered exception
java.lang.IllegalArgumentException: Team Feitan already exists in this scoreboard
at com.google.common.base.Preconditions.checkArgument(Preconditions.java:191) ~[waterfall.jar:git:Waterfall-Bootstrap:1.16-R0.4-SNAPSHOT:691ffb1:379]
at net.md_5.bungee.api.score.Sc...

buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

I'm having trouble connecting my forge server to my vanilla hub. I'm not using Sponge/SpongeForge, just Forge. I have seen previous issues about this but I believe they are outdated and they were not helpful to me.

I have multiple other vanilla servers connected to my network fine, however with my forge server online and appearing in the waterfall/bungee server list, and attempting to connect, I get the error "Could not connect to a default or fallback server, please try again later". I h...

buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

[19:33:55 ERROR]: [/:59520] InitialHandler - encountered exception
java.lang.NullPointerException: null
at net.md_5.bungee.connection.InitialHandler$2.done(InitialHandler.java:199) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.16-R0.4-SNAPSHOT:691ffb1:379]
at net.md_5.bungee.connection.InitialHandler$2.done(InitialHandler.java:183) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.16-R0.4-SNAPSHOT:691ffb1:379]
at net.md_5.bungee.api.event.AsyncEvent.postCall(AsyncEvent.java:40) ~[Waterfall.jar:git...

buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

ERROR StatusLogger Catching
java.net.SocketException: No such device (getFlags() failed)
at java.net.NetworkInterface.isLoopback0(Native Method)
at java.net.NetworkInterface.isLoopback(NetworkInterface.java:411)
at org.apache.logging.log4j.core.util.NetUtils.isUpAndNotLoopback(NetUtils.java:134)
at org.apache.logging.log4j.core.util.NetUtils.getMacAddress(NetUtils.java:99)
at org.apache.logging.log4j.core.util.UuidUtil.(UuidUtil.java:67)
...

buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

Been meaning to look into issue templates for way too long, would be nice to have something that allows us to not have to try to pull information out of people,
Common aspects are really a pain, given that many issues can be caused down to server configuration and are not isolated to just proxies

buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

I created a plugin that logs those messages for debugging. The vanilla client definitely sends a minecraft:brand on server switch. Forge/Fabric clients also send one or more minecraft:register packets on server switch.

Vanilla Client:

[playername|/x.x.x.x:50282] <-> ServerConnector [Farmen] has connected
Setting stored Location for playername: Farmen
[/x.x.x.x:50282|playername] <-> DownstreamBridge <-> [Freebuild] has disconnected
[BungeePluginMessages]: Messa...

buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

Hi folks. For some reason Waterfall doesn't announce any sort of version to the game. Do we need to install an additional tool for this or is this a bug? If we write the version specifically to the config.yml file and restart the server, the game still doesn't detect it. Every other server (not ours) have the version detected by the game, even when they're using Bungee network. But our server kind of doesn't. We are using Waterfall + Paper 1.16.4, along with AdvancedNMotd plugin, which only...

buoyant shoreBOT
#

This is a side-effect of how bungee works, it quite simply can't know what version the server is, especially with features like priority lists meaning that you could have multiple versions of the game, nor do we have a 'stable' mapping to game versions, there are many cases where the protocol version is used for multiple versions of the game, etc

However, waterfall.yml does have an option to let you throw a string in there for the messages, but the protocol version is separate, which most ...

#

Well, the thing is that server list website made up versions on its own accord saying 1.8.x-1.16.x, while the server is only 1.16.4 (lower versions are unable to join), misleading new players. So unless there are some ways to recover info about each server (mainly the lobby server used to connect ot every other server in network), the information on the server list website will be misleading.

#

Here we go again;
I'm tracking the changes up to 1.17 so this is merge-ready when its released.
This is a byproduct of https://github.com/VelocityPowered/Velocity/pull/382 which I am prioritizing over this.

If you want to run a build of this either compile it yourself or use one of the milestones from https://github.com/Xernium/Waterfall/releases

If you encounter issues please comment on this PR or open an issue on my fork.

buoyant shoreBOT
#

Hi.

It's a well known issue that plugin messages can be easily spoofed and I think that allowing every IP to send plugin messages packets it's not the best way to handle this kind of stuff.

I propose to add a list of IPs in the config.yml, only the packets from those IPs will be handled by the plugin messaging module.

Let me know if this is a doable proposal and if the packet IP can be spoofed making this proposal not useful at all.

Thanks in advance.
Kindest Regards.

#

Plugin messages are a base part of the game. They are used for some game mechanics as well as mods to communicate with the server. Blocking them in general is not easily possible, plugin authors have to ensure that their plugin messages can only be sent from proper sources (e.g. by blocking the channel on the bungee or by using key/password authentication)

Of course a plugin could also be made to simply block all incoming plugin messages so this doesn't need to be in the proxy to begin with.

buoyant shoreBOT
buoyant shoreBOT
#

Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing

Waterfall Changes:
85f0a0c Capture some script failure states better
7bf2352 Updated Upstream (BungeeCord)
c617bbf Updated Upstream (BungeeCord) (#579)

This time I actually committed the module update... not sure how I missed it in Waterfall.

buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

--- Minecraft Crash Report ----
// Quite honestly, I wouldn't worry myself about that.

Time: 12.11.20 02:23
Description: Ticking screen

java.lang.IndexOutOfBoundsException
at java.nio.Buffer.checkIndex(Buffer.java:540)
at java.nio.DirectIntBufferU.get(DirectIntBufferU.java:253)
at bls.a(SourceFile:270)
at bls.a(SourceFile:220)
at azd.a(SourceFile:1675)
at azd.a(SourceFile:1633)
at biv.a(SourceFile:113)
at gu.a(SourceFile:70)
at gu.a(SourceF...

buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

What phoenix said, plugin messages are a core part of the game, not as much these days but we gotta support back to 1.8 (and .7...), so, disabling plugin messages as a whole is not even remotely viable; The proxy also itself only accepts plugin messages for its messing channel from the server, beyond that, plugins need to ensure that they validate their source, practically 1 one of security

buoyant shoreBOT
#

What @Shevchik is trying to say is what I suspected but didnโ€™t reply for because I didnโ€™t think itโ€™d be caused by this. Go into the video settings and change your render distance to anything on 1.7
It can literally be anything as long as you set it while being on 1.7.
Playing on a newer version, you set the render distance to something 1.7 canโ€™t deal with; this is the fix to it.

buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

when all the players are send to lobby server, some player will face this problem
java.lang.runtimeexception: varint too big
image

waterfall show this:
[10:30:54] [Netty Worker IO Thread #14/INFO]: [PecomcAdmin] disconnected with: IOException : ้ ็ซฏไธปๆฉŸๅทฒๅผทๅˆถ้—œ้–‰ไธ€ๅ€‹็พๅญ˜็š„้€ฃ็ทšใ€‚ @ sun.nio.ch.SocketDispatcher:-2

waterfall version 1.16 #384

buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

Step 1: Put WaterFall.jar in a folder with no files except Waterfall.jar
Step: 2: Run Waterfall.jar

Error Log:
[22:53:08 ERROR]: Exception in thread "main" java.lang.ClassCastException: class java.lang.String cannot be cast to class java.util.Map (java.lang.String and java.util.Map are in module java.base of loader 'bootstrap')
[22:53:08 ERROR]: at net.md_5.bungee.conf.YamlConfig.getListeners(YamlConfig.java:264)
[22:53:08 ERROR]: at net.md_5.bungee.conf.Configuration.load(Configura...

buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
#

I used the StackUp mod to make the size of items more than 64, crash occurs when more than 64 items are discarded at once, Direct connection to the server does not have this problem.
If you have time, please help me look at this,Thanks.

When discarding๏ผš
` DownstreamBridge [1.12server] - encountered exception
java.lang.IndexOutOfBoundsException: readerIndex(35) + length(1) exceeds writerIndex(35): PooledUnsafeDirectByteBuf(ridx: 35, widx: 35, cap: 35)
at io.netty.buffer.Abs...

buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT
buoyant shoreBOT