Seamless server switches
Turn on Globe's seamless-server-switches option, what players see, which backends it needs and what it skips during a switch.
What it does
On Velocity, a 1.20.2 or newer client that changes server goes back through the configuration phase and shows a loading screen. With seamless switches on, Globe handles the new server's configuration phase itself while the player stays in game.
What happens next depends on the dimension:
- Same dimension. If the new server puts the player in the same dimension they are already in, Globe sends no respawn. The old server's entities and other players' tab-list entries are removed, and the new server's chunks stream in around the player. The world stays loaded.
- Different dimension. Globe falls back to Velocity's normal in-game switch with a respawn, and the client reloads the world. The configuration screen is still skipped.
On 1.21.4 and newer clients, Globe also tells the new server that the player has finished loading, so movement is not held after the switch.
Players on 1.20.1 and older switch exactly as on Velocity.
Turn it on
Add the option
Add seamless-server-switches to the [advanced] section of velocity.toml:
[advanced]
seamless-server-switches = trueKeep your other [advanced] settings; only add this line.
Apply it
Run /velocity reload (permission velocity.), or restart the proxy. Switches started after that use the new setting.
Backends must match
The new server's configuration data never reaches the client. The client keeps the registries, data packs and feature flags it received from the first server it joined. The option applies to every server behind the proxy, so only turn it on when all of them run the same Minecraft version, data packs and registries.
What is skipped during a seamless switch
| Sent by the new server during configuration | What Globe does |
|---|---|
| Resource packs | Dropped |
| Cookies | Dropped |
| Server code of conduct | Accepted for the player, without showing it |
| Registries, tags and other configuration data | Dropped |
When the world stays loaded, Globe only removes the old server's entities and tab-list entries. It does not clear boss bars, scoreboards or titles the old server sent. Have the new server set or replace them when the player arrives.
Notes for plugin developers
- The player never enters the configuration state during a seamless switch, so
PlayerEnteredConfigurationEventdoes not fire for it. Anything your proxy plugins do in the configuration phase on a switch, such as sending resource packs, will not happen. - Send resource packs in play instead, after the player has connected to the server.