yesdog / Waterdog

Waterdog, a Yesdog fork of Waterfall/BungeeCord that adds Bedrock support.
MIT License
186 stars 37 forks source link

Cancelling the LoginEvent causes issues on MCPE #59

Closed juliarn closed 4 years ago

juliarn commented 4 years ago

Version of Waterdog git:Waterdog-Bootstrap:1.14-SNAPSHOT:85410b6:278

Expected Behavior Normally, you would just be kicked with the set cancel-reason.

Actual Behavior The "Disconnected from server" screen is shown for a short moment, you don't see the cancel-reason. Then, you get stuck in the "loading-resources-screen" (I attached a screenshot below). To be able to play again, you have to restart MCPE.

To Reproduce Just cancel the login-event, set a cancel reason and try to join.

Screenshots Screenshot_20190906-223921_Minecraft

Server software used: Nukkit

EOT3000 commented 4 years ago

I can confirm this. I have worked with the bedrock protocol, and this has happened before. Can be mismatched protocol version????

Xernium commented 4 years ago

This is unlikely to be caused by version mismatch. This loop happens when the connection is closed and the correct abort packet never gets to the client. I still have no idea why the connection closes before that is sent (or its sent incorrectly) but this does happen. I need to look into this more

lukeeey commented 4 years ago

Client bug, the disconnection screen has been fucked for years

Alemiz112 commented 4 years ago

Closing as no new activity here. Also I have not noticed this since 1.13.

Wertzui123 commented 3 years ago

So, I've noticed when cancelling the login event on a pocketmine server, it normally shows the correct message but only enters this weird bug state when using Waterdog. This means this is still an issue and seems to be caused by the proxy, not directly by the client.

Wertzui123 commented 3 years ago

Looks like it doesn't work on normal pocketmine either, just cancelling the PreLoginEvent does, but still not on Waterdog.