-
Notifications
You must be signed in to change notification settings - Fork 119
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
fix: properly extract kick messages from downstream services #1399
base: nightly
Are you sure you want to change the base?
Conversation
Test Results 47 files ±0 47 suites ±0 1m 33s ⏱️ +5s Results for commit 4603add. ± Comparison against base commit 3e59415. This pull request removes 23 and adds 23 tests. Note that renamed tests count towards both.
|
I ask the developers to fix this problem as soon as possible and add this Pull because plugins on punishment, like LibertyBans and LiteBans outside the proxy system, don't work because of it. LibertyBans 100% does not work. Other plugins on my servers that kick players with a reason don't work either, there are conflicts with messages from CloudNet, for example “proxy-join-disconnect-because-no-hub” in Bridge. If some plugin outside the proxy tries to ban/kick or send a message to the client, the message “proxy-join-disconnect-because-no-hub” will appear or in some cases account lockout may not happen. I don't understand how to make my server support bans/kicks without spending money on my Cloudnet plugin to fix such a serious incompatibility issue with other plugins. That said, I don't want to give up Cloudnet for this. Hopefully the problem will be resolved. |
Motivation
When players are kicked from e.g. a Lobby service, the message the Lobby kicked them with is lost. This is a problem when having issues with version mismatches or plugins kicking someone from a fallback as the kick message is lost there too.
Modification
When getting kicked from a service and no other fallback is available the player will be kicked with the kick message of the downstream service. If there is no kick message, the newly introduced "server-kick-no-other-hub" message will be used.
Also if a player joins and there is no fallback and the "proxy-join-disconnect-because-no-hub" is not set to
null
, the player will be disconnected with the set message. If the message is not set, cloudnet won't do anything. This ensures that other plugins can overwrite the decision.Result
Kick reasons are properly displayed.