Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

bedrock players when floodgate is set to "send-data" are disconnected with velocity.error.modern-forwarding-failed #83

Open
gadget78 opened this issue Feb 18, 2023 · 15 comments
Labels
bug Something isn't working

Comments

@gadget78
Copy link

gadget78 commented Feb 18, 2023

Having a issue with bedrock/linked players connecting to fabric servers on our Velocity network..

WHATS HAPPENING
when trying to connect, player connects then gets disconnected from the fabric server;

  • error on proxy is velocity.error.modern-forwarding-failed
  • error on players client your server did not send a forwarding request to the proxy, make sure the server is configured for Velocity forwarding
  • no real error on fabric logs, just notice of connected, Floodgate player logged in, then lost connection: Disconnected

WHEN IT HAPPENS

  • this only happens when floodgate has send-floodgate-data: true set on proxy
  • so yes if floodgate send-floodgate-data: is set to false then bedrock players can connect ok
  • java players are totally unaffected and can join with no issues
  • the fabric server is set up as the landing server, an doesn't connect,
    (but does connect fine with the Paper server which is next in proxy list)

SETUP ;
-VELOCITY PROXY
velocity-3.2.0-SNAPSHOT-229.jar
floodgate 2.2.0-SNAPSHOT (b74-4f36112)
geyser 2.1.0-SNAPSHOT (git-master-e7b8b4e)
tried with and without ViaVersion 4.5.1 plugin

player forwarding is set to modern
floodgate has send-floodgate-data: true

-FABRIC SERVER
also current, and on 1.19.3
with mods;
fabric-api-0.74.0+1.19.3.jar
FabricProxy-Lite-2.4.0.jar
and floodgate-fabric-1.19.3-18thfeb.jar (floodgate 2.2.0-SNAPSHOT)

and it DOES have the same key.pem file as proxy
and has same 24 character text, that is in "forwarding.secret" file on proxy, thats in the file FabricProxy-Lite.toml under secret = ""

-PAPER SERVER
on 1.19.2 many mods etc etc but connect fine to this after failing above

@Tim203 Tim203 transferred this issue from GeyserMC/Floodgate Feb 23, 2023
@gadget78 gadget78 changed the title bedrock players to fabric with floodgate sending data velocity.error.modern-forwarding-failed bedrock players when floodgate is set to "send-data" are disconnected with velocity.error.modern-forwarding-failed Feb 25, 2023
@onebeastchris
Copy link
Member

onebeastchris commented Feb 28, 2023

setting "hackEarlySend" to false in FabricProxyLite's config fixes the issue

@onebeastchris
Copy link
Member

However, that will stop luckperms from properly working.
As for the issue itself, no clue what causes it - however, i've compiled logs of the issue (with and without send-floodgate-data, from both fabric & velocity) and a fully setup .zip with a velocity proxy and 1.19.3 fabric server that is necessary to replicate the issue.

I'm honestly stumped about why send-floodgate-data and hackEarlySend set to true worked before, and stopped now though.

https://1drv.ms/u/s!ApW4KLFOl-B6gfxECify5qijKrn6AQ?e=B4SEVo <- onedrive link to my test setup & logs

@gadget78
Copy link
Author

gadget78 commented Mar 2, 2023

great find, i dont know why i never even trialled the hackEarlySend = false setting !!

just tested it on my server, and can confirm your findings.. :)
plus this works on 1.19.2, and 1.19.3 servers that i tried it on too!

@onebeastchris onebeastchris added bug Something isn't working help wanted Extra attention is needed labels May 26, 2023
@onebeastchris
Copy link
Member

onebeastchris commented May 26, 2023

@gadget78 if you're on 1.19.4, mind testing if this works?
In my tests, this works with java and bedrock, with luckperms and floodgate on all servers.
FabricProxyLite.zip

@onebeastchris onebeastchris removed the help wanted Extra attention is needed label May 26, 2023
@gadget78
Copy link
Author

gadget78 commented Jun 5, 2023

is this the public version 2.5 thats on Modrinth ?
but yes, this does work :)
with newest velocity, with newest floodgate/geyser and send data enabled,
this, floodgate-fabric and luckperms on server and with send-floodgate-data: true,
i CAN now connect ...

althou i am having an issue with bedrock players connecting if there's a mod that uses polymer. (java players are fine)
they connect, but at 0 0 0 and fall, with no world loading..
if i connect direct its fine, or if i remove all mods i can connect via velocity/proxy

@onebeastchris
Copy link
Member

onebeastchris commented Jun 5, 2023

The issue with polymer would be a separate one unrelated to this.
As for this hacky workaround - i wouldn't recommend using it

@gadget78
Copy link
Author

gadget78 commented Jun 5, 2023

i have tried MANY things now to try get to bottom of polymer issue, maybe its best to close this and open a new one ?

but just a couple of questions..
-is your posted one same as the public version 2.5 thats on Modrinth ?
-and what method could i use to try to find fault find polymmer ? as there not even any sign the user joins in logs.

@onebeastchris
Copy link
Member

Since this issue is not yet fixed, don't close it.
No, the mod i sent is not version 2.5 of FabricProxyLite on modrinth, it is a debug build to test a theory.
As for the polymer issue, i do not know. Sorry.

@luneth
Copy link

luneth commented Sep 25, 2023

Hi,
Having the problem as gadget78,
Exact same configuration, and this issue also prevents me of using luckperms.
Is the 2.5.0 debug version you shared recommended for production? If so would you be able to share with us a 2.6.0 patched version?
I would've built it from master but it doesn't seem to be a commit merged related to this issue.
Regards,

@onebeastchris
Copy link
Member

I've used it in production fine, but not sure what side-effects it might have, worked fine for me though.
The issue doesn't lie within FabricProxyLite, but - i assume - rather within Floodgate-Velocity not listening to the player info packet send in the hack mixin here, but only to the one sent here. The hacky fix i did here was to just.. always register the second packet and not rely on the mixin sending it; but that does send the packet twice.

@onebeastchris
Copy link
Member

As for providing a patched version - i personally wont do that, but you can do the same unsafe patch by removing this if statement and always register the sending of the player info packet on ServerLoginConnectionEvents.QUERY_START.

@luneth
Copy link

luneth commented Sep 26, 2023

Thanks,
You mentioned earlier in this issue that you wouldn't recommend using this hacky workaround as a fix in Floodgate-velocity was being worked on, do you have a link? I haven't been able to find it browsing the repo.

@onebeastchris
Copy link
Member

There's no debug/testing version available for Floodgate-Velocity, so your best bet will be this hacky workaround :/

Wesley-Young added a commit to tlmc-dev/FabricProxy-Lite-lp-with-floodgate that referenced this issue Aug 1, 2024
@luneth
Copy link

luneth commented Oct 12, 2024

I can believe this has already been a year.
Wesley-Youg's mentioning reminded me of this issue.
Any progress or lead?
I'd still like very much being able to use Fabric with Geyser/Floodgate + luckperms.

@ArkoSammy12
Copy link

I am having the same issue here 👍🏻

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

4 participants