
VelocityCommandForward
Плагин для Майнкрафт, который пробрасывает команды с бэкенд-сервера (Paper) на прокси (Velocity). Решает проблему выполнения прокси-команд из игры или через сторонние плагины.
VelocityCommandForward - узкоспециализированный, но крайне полезный плагин для Майнкрафт, который решает одну из главных головных болей админов прокси-серверов: передачу команд с бэкенда на прокси. Если у вас построена сеть на Velocity с серверами на Paper, вы наверняка сталкивались с ситуацией, когда нужно дернуть команду на самом прокси-сервере, находясь при этом в игре на одном из бэкендов.
Зачем это вообще нужно?
По факту, плагин работает как мост. Разработчик приводил отличный пример из личного опыта: у него бот Discord работал на бэкенд-сервере и мог выполнять майнкрафт-команды, если игрок онлайн. Проблема возникла с командами самого прокси, вроде /skin. Этот плагин позволяет запускать такие команды напрямую с бэкенда.
Еще один частый кейс - использование плагина TAB на Velocity. Когда вам нужно отправить команду с бэкенд-сервера на прокси (например, /btab scoreboard для переключения скорборда), ручной ввод работает нормально. Но если вы привязываете эту команду к кастомным предметам из других плагинов, обычная передача часто слетает. Тут на сцену выходит VelocityCommandForward - он перехватывает команду и аккуратно отправляет ее пакетом на прокси, решая проблему с отказом команд TAB.
Основные фичи
- Кастомные команды и сообщения - настраивайте под себя.
- Тихий режим - можно вынести определенные команды в фильтр, чтобы они отправлялись без сообщений в чат и логов консоли. Крайне удобно для автоматизации.
- Гибкое выполнение - и игроки, и консоль могут запускать прокси-команды (плагин отправляет пакет на прокси для выполнения от имени игрока или консоли).
Установка на сервер
Тут все чуть сложнее, чем с обычными модами, потому что надо закинуть файлы в две разные директории. Нужно скачать обе версии плагина - для Velocity и для Paper.
- Выключите прокси (Velocity) и бэкенд (Paper) сервер.
- Скачайте файлы плагина для обеих платформ.
- Закиньте оба
.jarфайла в папкуpluginsна соответствующих серверах. - Запустите сервера.
Совет от админа: Если вы хостите свой сервер на BungeeHost, то вся эта установка занимает буквально пару кликов через удобный файловый менеджер панели, а сам прокси-сервер Velocity развернется в 1 клик. Если вы искали, как поиграть с друзьями онлайн в Майнкрафт без лагов - это лучший выбор.
Команды и права
Название команды можно менять в конфиге бэкенд-плагина. По дефолту используется proxyexec. Я бы советовал оставить как есть или переименовать во что-то короткое, главное - чтобы не было конфликтов с другими плагинами.
yaml custom-command: proxyexec
| Команда | Описание | Права |
|---|---|---|
/proxyexec reload | Перезагрузка конфига плагина. Если поменяете custom-command, потребуется полный рестарт сервера. | velocitycommandforward.admin (op) |
/proxyexec <command> | Отправка команды на прокси. Пример: /proxyexec tab reload выполнит /tab reload на самом Velocity. | velocitycommandforward.send |
Важный нюанс с консолью
Если вы executes команду из консоли бэкенд-сервера, ответа вы не получите. Результат появится в логах прокси-сервера.
Но тут есть подвох: для отправки пакета с командой на прокси, на сервере должен быть хотя бы один онлайн-игрок. Так работают plugin messaging channels в Minecraft - без живых игроков бэкенд просто не сможет установить канал связи с прокси. Плагин тут бессилен что-то изменить, это ограничение самого движка.
Конфигурация
Конфиг генерируется только для бэкенд-сервера! Изменение custom-command требует рестарта.
yaml
VelocityCommandForward
Команда для проброса на прокси.
Требует рестарта сервера для применения.
custom-command: proxyexec
Команды, которые не будут писать в лог и чат.
filtered-commands:
- example_command
{command} = отправленная команда
{sender} = игрок, отправивший команду
Если оставить '', сообщение не будет отправлено.
messages: reload: '&aPlugin messages and filters have been reloaded!' command-sent-as-player: '&2Command sent to proxy &7=> &a/{command}' command-sent-as-console: '&2Command sent as console to proxy &7=> &a/{command}' no-online-player: '&cThere must be at least 1 online player to be able to execute proxy console commands!' console-log: '[{sender}] Sending command packet to proxy => /{command}' velocity-log: '[{sender}] Received proxy command packet => /{command}'
Требования
- Плагин для Velocity собран на Java 17, а версия для Paper - на Java 21.
- Совместим только с Minecraft 1.20.6 и выше. Плагин использует Brigadier (появился в 1.20.6) для построения команд, так что на старых версиях сервера просто будет крашить с ошибками.
Скачайте плагин VelocityCommandForward, если вы строите сеть на Velocity и вам нужна надежная связка между бэкендом и прокси для синхронизации команд.
