-
Notifications
You must be signed in to change notification settings - Fork 1
Server Management

VelocityNavigator adds and removes Velocity backends from the proxy console. Changes take effect immediately and write to disk, persisting across restarts.
[server_management]
enabled = true
velocity_config = "velocity.toml"
allow_overwrite = falseRelative paths resolve from the proxy directory. Disable overwrite protection unless you intend to replace the address of an existing Velocity server.
| Operation | velocity.toml |
servers.toml |
Registered now | Added to lobby routing |
|---|---|---|---|---|
add game |
Yes | No | Yes | No |
add lobby |
Yes | Yes | Yes | Yes |
A game backend becomes available to Velocity features and other plugins. VelocityNavigator skips it for lobby routing. A lobby receives a routing group, capacity, and weight.
Preview the operation:
/vn server dry-run game survival-1 10.0.0.31:25565
Execute it:
/vn server add game survival-1 10.0.0.31:25565
This command writes the server under [servers] in velocity.toml and registers it with the running proxy. It skips creating a lobby record.
The shortest form adds an uncapped, weight-1 lobby to the default group:
/vn server add lobby lobby-3 10.0.0.23:25565
The full form sets the group, capacity, and routing weight:
/vn server dry-run lobby lobby-3 10.0.0.23:25565 bedwars_lobbies 100 2
/vn server add lobby lobby-3 10.0.0.23:25565 bedwars_lobbies 100 2
| Value | Default | Meaning |
|---|---|---|
group |
default |
Routing group receiving the lobby |
max_players |
-1 |
Routing capacity; -1 means uncapped |
weight |
1 |
Relative share for weighted routing |
Set a positive capacity to include the lobby in the capacity queue. A contextual group applies when a player's source mapping selects it.
/vn server list
This lists command-managed lobbies as name@group and prints the resolved velocity.toml path. Game servers do not appear because they lack entries in servers.toml.
Use /vn servers [page] for live per-lobby health, players, capacity, drain state, and circuit state. Command-managed and Redis-registered lobbies appear in this status screen.
Running add lobby with the same name and address updates its group, capacity, or weight. The proxy rejects address changes when allow_overwrite = false.
To change an address intentionally, enable overwrite protection, run a dry-run, execute the command, and disable overwrite again. /vn config validate issues a warning when overwrite protection remains off.
/vn server remove lobby-3
Removal deletes the Velocity server entry, clears managed lobby metadata, unregisters the live backend, and drops it from dynamic routing. It ignores Velocity's [forced-hosts] lists. If a forced host references the server, the command reports the hostname for manual updates.
Names accept letters, numbers, dots, underscores, and hyphens. They allow up to 64 characters.
Accepted address formats:
10.0.0.23:25565
lobby-3.internal:25565
[2001:db8::23]:25565
IPv6 addresses require brackets. Ports range from 1 to 65535.
dry-run checks the name, address, type, config path, and overwrite status. It skips file changes and live registration.
Before writing, VelocityNavigator creates timestamped copies in plugins/velocitynavigator/backups/. The plugin replaces files atomically where the operating system allows. Lobby additions and removals preserve the previous velocity.toml, servers.toml, and dynamic lobby sets if multi-step operations fail.
Use backups with identical timestamps when restoring files:
- Stop Velocity to prevent file rewrites.
- Copy the current
velocity.tomlandplugins/velocitynavigator/servers.toml. - In
plugins/velocitynavigator/backups/, locate matchingvelocity.toml.<timestamp>.bakandservers.toml.<timestamp>.bakfiles. - Copy them as
velocity.tomlin the proxy root andservers.tomlinplugins/velocitynavigator/. - Start Velocity. Run
/vn server list,/vn servers, and/vn config validate.
A game-server change creates a velocity.toml backup but ignores servers.toml. Restoring files from different timestamps leaves Velocity servers registered without matching lobby metadata. Keep timestamped pairs together.
After a live change, run:
/vn server list
/vn servers
/vn config validate
For autoscaled lobbies announced by backends, read Redis and Multi-Proxy. To view maintenance interactions with managed lobbies, see Maintenance Mode.
Home · Quick Start · Configuration · Operations · FAQ
Website · GitHub · Support / Discord · Report a Bug
VelocityNavigator v4.5.0 · by DemonZ Development
![]()
Getting Started
Routing
- Routing Algorithms
- Algorithm Visualizations
- Initial Join Balancing
- Contextual Routing Guide
- Player Affinity
- Health & Circuit Breakers
- Retries & Fallbacks
- Geo Routing
Player Experience
- Java & Bedrock Selectors
- Selector Customization
- Backend NPCs
- Backend YAML Menus
- Language Packs
- Party System
- Capacity Queue
Configuration
- Configuration Guide
- Modular Configuration
- MOTD Configuration
- Authentication & Security
- Backend Bridge Configuration
- Migration Guide v3 → v4
- Migration Guide v4.4 → 4.5
Network & Operations
- Advanced Proxy Systems
- Redis & Multi-Proxy
- Common Core Architecture
- NavigatorAPI
- Storage & Databases
- Server Management
- Backend Lifecycle States
- Maintenance Mode
- HTML Dashboard
- Operations Runbook
- Prometheus & Grafana Setup
- Troubleshooting Guide
- FAQ
VelocityNavigator 4.5.0