-
Notifications
You must be signed in to change notification settings - Fork 1
Backend Bridge Configuration

The backend bridge is the backend half of the same VelocityNavigator JAR. Install it when you want Java inventory selectors, backend YAML menus, NPCs, PlaceholderAPI values, or Redis server registration. Routing decisions still happen on Velocity.
You do not need the bridge for a proxy-only setup or for the clickable chat selector.
- Stop the proxy and backend.
- Put the same VelocityNavigator JAR in the proxy's
plugins/folder and the backend'splugins/folder. - Start the backend, then start Velocity.
- Join the backend through Velocity.
- Run
/vn bridge statuson the proxy.
The backend should appear as available after a player joins it. If it does not, check both consoles for plugin-channel or startup errors.
The bridge supports Paper, Spigot, and Folia 1.16.5 or newer and requires Java 17 or newer. It does not use version-specific NMS.
The backend creates plugins/VelocityNavigator/config.yml:
enabled: true
inventory_menu_enabled: true
handshake_enabled: true
refresh_enabled: true
handshake_delay_ticks: 20
max_title_length: 32
fallback_material: COMPASS
menus_enabled: true
npcs_enabled: true
npc_look_interval_ticks: 20
bstats_enabled: true
update_check_enabled: true
update_check_interval_minutes: 120| Key | What it controls |
|---|---|
enabled |
Enables the backend plugin |
inventory_menu_enabled |
Allows the proxy to open its Java inventory selector |
handshake_enabled |
Reports bridge availability to /vn bridge status
|
refresh_enabled |
Accepts selector refresh and page actions |
handshake_delay_ticks |
Delay before the bridge announces itself after join |
max_title_length |
Safe maximum for inventory titles |
fallback_material |
Item used when a configured material is unavailable |
menus_enabled |
Enables backend YAML menus in menus/*.yml
|
npcs_enabled |
Enables NPC files in npcs/*.yml
|
npc_look_interval_ticks |
Delay between NPC head-tracking checks |
update_check_enabled |
Enables the backend Modrinth update check |
update_check_interval_minutes |
Delay between update checks, with a minimum of 30 |
The proxy's navigator.toml decides whether players use an inventory or chat selector. Its gui.toml controls that selector's layout, slots, icons, and refresh timing.
| Location | Files to edit |
|---|---|
| Velocity proxy |
plugins/velocitynavigator/navigator.toml, messages.toml, gui.toml, and servers.toml
|
| Paper, Spigot, or Folia backend |
plugins/VelocityNavigator/config.yml, menus/*.yml, and npcs/*.yml
|
Do not copy navigator.toml, messages.toml, or gui.toml into the backend plugin folder. Backend YAML menus and NPCs have their own formats; see Backend Menus and Backend NPCs.
bstats_enabled: trueThe backend bridge and proxy have separate anonymous bStats reports. The Bukkit project ID is built into the plugin. Set bstats_enabled: false here if you do not want the backend report.
Do not add bstats_plugin_id. Old copies of that setting are removed during migration.
Most networks can leave this disabled. It is for backends that announce themselves dynamically to Redis:
redis:
enabled: false
host: 127.0.0.1
port: 6379
username: ''
password: ''
ssl: false
channel_prefix: vn
connect_timeout_ms: 3000
read_timeout_ms: 10000
registration_secret: ''
server_name: ''
advertised_host: ''
advertised_port: 0
group: default
max_players: -1
weight: 1
unregister_on_shutdown: trueOnly enable this when proxy-side Redis registration is also enabled. Match registration_secret exactly, give every backend a unique server_name, and use an advertised_host the proxy can reach. advertised_port: 0 uses the backend's normal server port.
Keep Redis private. Use TLS when traffic leaves a trusted network, and configure the proxy's registration secret and host allowlist before accepting backend announcements.
-
The selector falls back to chat: Confirm the backend has the JAR, a player joined it through Velocity, and
/vn bridge statussees it. -
Menu opens but clicks do nothing: Keep the player on the backend that opened the menu and check the
velocitynavigator:menuplugin channel. -
NPCs do not appear: Check
npcs_enabled, then inspect the backend log for a rejected NPC file. - Placeholder returns nothing: Install PlaceholderAPI on that backend and reconnect through the proxy.
-
Redis registration is rejected: Compare the secret, host allowlist, advertised address, port, and server name. Run
/vn redis statusand/vn redis teston the proxy. -
Material or title problems: Edit the proxy's
gui.toml. The bridge settings are only backend safety limits.
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