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

State switching rework with other bugfixes #128

Merged
merged 17 commits into from
Jan 14, 2024

Conversation

UserNugget
Copy link
Member

@UserNugget UserNugget commented Dec 29, 2023

Basically fix several issues with state switching and has some other improvements

Fixes Elytrium/LimboAuth#134

Require Elytrium/FastPrepareAPI#2 to compile

@UserNugget UserNugget changed the title WIP: State switching rework with other bugfixes State switching rework with other bugfixes Jan 6, 2024
@UserNugget UserNugget marked this pull request as ready for review January 6, 2024 14:55
@hevav hevav merged commit 78231bd into Elytrium:master Jan 14, 2024
1 check failed
mdxd44 pushed a commit that referenced this pull request May 4, 2024
* Properly check for pending disconnection

* Force synchronize rejoin state switching

* Deduplicate prepared config packets

* Don't preserve ConfirmHandler and ClientPlaySessionHandler

Preserving them will cause issues with server switching

* Close "confirming" connection on spam

* Speedup 1.20.3+ world loading by following Vanilla behavior

* Synchronize LOGIN transition

* Ensure that FastPrepareAPI encoder matches current state

* Remove NbtUtils as Velocity now supports 1.20.2 NBT

* Check for a custom PLAY state while sending UpsertPlayerInfo

* Rollback CONFIG handler on server switch

* Move the entire PLAY->CONFIG transition logic to the LimboSessionHandlerImpl

* Fix invalid CONFIG packets being sent at PLAY state

* Mitigate clientside race condition

* Small improvements

* Fix race condition mitigation then rejoin is disabled

* Fix LoginEvent sending a LOGIN disconnect instead of CONFIG/PLAY one

Former-commit-id: 78231bd
mdxd44 pushed a commit that referenced this pull request May 4, 2024
* Properly check for pending disconnection

* Force synchronize rejoin state switching

* Deduplicate prepared config packets

* Don't preserve ConfirmHandler and ClientPlaySessionHandler

Preserving them will cause issues with server switching

* Close "confirming" connection on spam

* Speedup 1.20.3+ world loading by following Vanilla behavior

* Synchronize LOGIN transition

* Ensure that FastPrepareAPI encoder matches current state

* Remove NbtUtils as Velocity now supports 1.20.2 NBT

* Check for a custom PLAY state while sending UpsertPlayerInfo

* Rollback CONFIG handler on server switch

* Move the entire PLAY->CONFIG transition logic to the LimboSessionHandlerImpl

* Fix invalid CONFIG packets being sent at PLAY state

* Mitigate clientside race condition

* Small improvements

* Fix race condition mitigation then rejoin is disabled

* Fix LoginEvent sending a LOGIN disconnect instead of CONFIG/PLAY one

Former-commit-id: 78231bd
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[BUG] Player kick IndexOutOfBoundsException with LuckPerms
2 participants