Плагин для серверов Майнкрафт с Velocity, который распределяет игроков между лобби и не отправляет их на недоступные серверы. Он подходит для сетей серверов: выбирает лобби по загрузке, задержке, региону и другим правилам, а также даёт меню выбора, очереди и обслуживание без лишних отключений.
Возможности
- Проверяет доступность каждого сервера через пинг, TCP-подключение, MOTD и, при установке на бэкенд, сигналы от встроенного моста. Недоступное лобби временно исключается из маршрутизации, а после паузы проверяется отдельным подключением.
- Выбирает лобби по режиму
selection_mode: случайный выбор из двух с меньшей загрузкой, наименее заполненный сервер, наименьшее число текущих подключений, взвешенное чередование, постоянное хеширование UUID, минимальная задержка, страна или континент, строгое чередование либо случайный сервер. - Поддерживает закрепление игрока за последним лобби. Если это лобби заполнено, закрыто на обслуживание или выводится из работы, будет выбрано другое.
- Команда
/vn drain <server>закрывает сервер для новых переходов, не выгоняя уже играющих. Для сети или отдельного сервера можно включить режим обслуживания с собственным сообщением при входе и отметкой в MOTD. - Если все лобби заполнены, игроки могут ждать на сервере ожидания; в панели действий и заголовке показываются место в очереди и примерное время. Приоритет дают право
velocitynavigator.queue.priority. - Есть группы игроков: лидер перемещает подключённых участников вместе с собой. При использовании Redis группы могут работать через несколько прокси.
- Для Java доступны меню в виде сундука с состояниями сервера, количеством игроков и страницами. Для игроков Майнкрафт Бедрок через GeyserMC и Floodgate используются удобные сенсорные формы, также есть выбор в чате с подсказками и кликабельными переходами.


При установке того же файла плагина на Paper, Spigot или Folia становятся доступны:
- NPC без Citizens и привязки к внутреннему коду сервера; их можно настроить на переход, открытие меню или выполнение команды;
- меню в YAML-файлах из папки
plugins/VelocityNavigator/menus/с предметами, звуками, моделями, головами и действиями; - плейсхолдеры PlaceholderAPI:
%velocitynavigator_lobby%,%velocitynavigator_party_leader%,%velocitynavigator_party_size%,%velocitynavigator_server_status_<server>%,%velocitynavigator_queue_position%; - веб-панель с состоянием лобби, задержкой и статистикой распределения, а также endpoint
/metricsв формате Prometheus.

Команды
/lobbyи/hub— перейти в подходящее доступное лобби./lobby menu— открыть выбор сервера./party— управление группой: создание, приглашения, вход, выход, исключение, роспуск и чат группы./vn health— диагностика прокси и состояние проверок серверов./vn servers— список загрузки, доступности, вывода из работы и состояния каждого сервера./vn debug player <player>— показать, почему для игрока выбрано конкретное лобби./vn drain <server>— запретить новые переходы на сервер./vn maintenance [server] [on/off]— включить обслуживание для сети или сервера./vn affinity clean— удалить истёкшие закрепления за лобби./vn bridge status— проверить подключения бэкендов./vn config validate— проверить конфигурацию./vn menu validate— проверить файлы меню./vn reload— перезагрузить конфигурации, меню и языки./vn npc create <id> <name>,/vn npc skin <id> <player>,/vn npc delete <id>— создание, оформление и удаление NPC на бэкенде.
Права
velocitynavigator.admin— административные команды/vn.velocitynavigator.queue.priority— приоритет в очереди.- Права для
/lobby,/hub, меню выбора и групп настраиваются в конфигурации.
Настройка
Основные лобби и способ выбора задаются в plugins/velocitynavigator/navigator.toml. Имена серверов должны совпадать с именами в velocity.toml; для маршрутизации используются, в частности, selection_mode и default_lobbies.
Включаемые по необходимости системы — группы, очередь, авторизация, Redis-кластер и веб-панель. Данные игроков, закрепления и учётные записи можно хранить в JSON, SQLite, MySQL/MariaDB или PostgreSQL.
Плагин содержит русский язык: выберите ru среди встроенных локализаций. Свой файл перевода в формате .properties можно поместить в plugins/velocitynavigator/languages/.
Требования
Основная платформа — Velocity и Java 17 или новее. Дополнительная установка на Paper, Spigot или Folia нужна для NPC, YAML-меню, Java-меню и сигналов состояния от бэкенда.
Совместим с GeyserMC, Floodgate, PlaceholderAPI, GeoRestrict, MaxMind GeoLite2, Prometheus и Grafana. Для регионального выбора используется GeoRestrict, база MaxMind GeoLite2 или IP-API; для синхронизации между прокси нужен Redis.
