Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions docs/login-plugin-integration.md
Original file line number Diff line number Diff line change
Expand Up @@ -221,6 +221,18 @@ build.
Connect has set it. Connect's own re-assert (above) keeps such a plugin from breaking
logins, but exempting Connect explicitly is still the better fix — it keeps the plugin's own
state consistent instead of having its decision quietly reverted.
- **Conflicts with Connect** if it hooks the login **packet** and runs its own authentication
handshake (a premium/online-mode autologin that cancels `LoginStart`, sends its own
`EncryptionRequest` and checks the Mojang sessionserver). The client's login was already
finished at the Connect edge, so that handshake has no peer to answer it, and the re-assert
above cannot help — it restores Connect's own login *decision*, and there is no decision to
restore. On Paper and Spigot the connector completes its own login only when its data handler
receives the login start packet, and a packet-level listener runs upstream of that handler,
so a plugin that consumes the packet leaves the login pending and the player is dropped by
the server's own login timeout (`Took too long to log in`). Such a plugin needs its
premium/online-mode mode disabled for Connect traffic, or a login path that does not start a
second handshake. Operator-facing rule:
[connect.minekube.com/guide/login-plugins](https://connect.minekube.com/guide/login-plugins).
- **Compatible by design** if it only ever acts on offline-mode connections and never
forces online mode.
- **If it has a Floodgate exemption**, ask its author to extend that exemption to
Expand Down
Loading