plugins/rLogin/config.yml there. None of it belongs on a proxy.
The proxy is a connector. It does exactly two jobs:
Verifies premium accounts
Behind a proxy it is the only place that can. Always on; nothing to
configure.
Routes the login
Makes sure a player logs in once, on a server that can ask, and is never
asked again while switching servers.
plugins/rlogin/config.yml on the proxy.
auth-mode
login-servers
after-login
- stay
- send
- previous
Leave them where they are. Right for networks that log players in on the
lobby they were going to anyway.
never-return-to lists servers previous should never send anyone back to.
Your login servers are already excluded; add anything else that makes no sense
to return to, like a queue or a limbo server.
timing
A working example
An auth server that players should not stay on, and two lobbies:Requirements on the proxy side
1
velocity.toml
online-mode = false, and Modern Forwarding configured as usual.This is not a typo. rLogin verifies each connection individually up here and
forces that player online or offline; with online-mode = true Velocity
has already dropped everyone without an account before rLogin sees them.
Under auth-mode: online the reverse applies — set it to true and let
Velocity do the work.2
Each backend
online-mode: false in server.properties, with the forwarding secret in
place. This is standard Velocity setup, not an rLogin requirement.3
The same jar on every backend
Including the auth server. The proxy has no accounts of its own.
PacketEvents is not needed on any
backend in this setup. The proxy already did the verifying.