Руководство
Как сделать плагин BungeeCord
Обновлено: 18 октября 2026 г.
Плагин BungeeCord работает на прокси, который стоит перед вашими серверами, а не на игровом сервере. Он видит, как игроки подключаются, переходят между серверами и уходят, поэтому именно здесь место для общего чата сети, инструментов персонала, режима техобслуживания, MOTD и отправки игроков между серверами. Миров и блоков у него нет: игровой процесс относится к плагину на бэкенд-серверах.
Подстройте команды под свою сеть.
Сгенерировать это в CodexeШаг за шагом
1.Уточните, какой у вас прокси
BungeeCord (или форк вроде Waterfall) и Velocity это разные API. Плагин BungeeCord не работает на Velocity, и наоборот.
2.Настройте проект
Проект Maven или Gradle с зависимостью
bungeecord-apiв областиprovided. Прокси предоставляет её во время работы.3.Напишите главный класс
Класс, который наследует
net.md_5.bungee.api.plugin.Plugin, сonEnable()для регистрации команд и обработчиков черезgetProxy().getPluginManager().4.Опишите его в bungee.yml
name,version,mainиauthor. BungeeCord читает иplugin.yml, ноbungee.ymlисключает путаницу с плагинами Spigot. Команды регистрируются в коде, а не в файле.5.Напишите команды и слушатели
Команды наследуют
Command; обработчики реализуютListenerс методами@EventHandlerдля событий вродеPostLoginEventилиServerSwitchEvent.6.При необходимости свяжитесь с бэкенд-серверами
Прокси не видит инвентари и миры. Для этого небольшой плагин-компаньон на каждом бэкенд-сервере обменивается plugin messages с плагином прокси.
7.Установите его на прокси
Положите .jar в папку
plugins/прокси и перезапустите прокси, а не бэкенд-серверы.
Полезные события прокси
| Событие | Когда срабатывает | Типичное применение |
|---|---|---|
ProxyPingEvent | Клиент обновляет список серверов | MOTD, число игроков, сообщение о техобслуживании |
PostLoginEvent | Игрок зашёл на прокси | Сообщения о входе, загрузка данных игрока |
ServerConnectEvent | Игрок вот-вот подключится к серверу | Отправка игроков в лобби, блокировка серверов |
ServerSwitchEvent | Игрок перешёл на другой сервер | Сообщения «зашёл на сервер» на всю сеть |
PlayerDisconnectEvent | Игрок покинул сеть | Сохранение данных, уведомления персонала |
ChatEvent | Игрок отправляет сообщение в чат или команду | Общий чат сети, фильтры, чат персонала |
Правильная настройка сети
- Включите
ip_forwardвconfig.ymlпрокси иbungeecord: trueвspigot.ymlкаждого сервера Spigot или Paper, чтобы ники и UUID игроков передавались дальше. - Поставьте на бэкенд-серверах
online-mode=falseи убедитесь, что к ним нельзя подключиться напрямую из интернета, только через прокси. - Plugin messages передаются только пока игрок подключён к этому бэкенд-серверу, поэтому сообщение на пустой сервер не доставляется.
Пример описания
«Плагин для прокси BungeeCord 1.21 под названием NetUtils. /lobby отправляет игрока на сервер-лобби. /staffchat <message> (алиас /sc) отправляет сообщение всем с netutils.staff на любом сервере. /maintenance on|off показывает MOTD техобслуживания и кикает игроков без netutils.bypass. Сообщение в чате персонала, когда сотрудник переходит на другой сервер. Названия серверов, MOTD и сообщения в config.yml.»
С Codexe
Выберите тип BungeeCord/Velocity и укажите, какой у вас прокси, потому что у них разные API. Codexe компилирует плагин через Maven и проверяет, что у .jar правильный дескриптор, прежде чем пометить его как «Готово»; если версия в запросе не указана, используется BungeeCord API 1.21. Если нужен компаньон для бэкенда, попросите его отдельным проектом Spigot/Paper.
«Попробовать сейчас» пока не запускает прокси-серверы, поэтому проверяйте плагин прокси в своей сети или на локальном прокси с одним бэкенд-сервером. См. также генератор плагинов BungeeCord.
Вопросы
Может ли плагин BungeeCord менять блоки или инвентари?
Нет, прокси занимается только подключениями и сообщениями. Для игрового процесса используйте плагин на бэкенде, а plugin messages, если им нужно работать вместе.
Работает ли он на Velocity?
Нет. У Velocity свой API и velocity-plugin.json. Если у вас оба, сделайте два проекта.
Плагин прокси или бэкенда для чата?
Плагин прокси, если чат должен доходить до игроков на всех серверах. Плагин бэкенда, если чат остаётся на одном сервере.
Создайте плагин для своей сети
Этот промпт откроется уже готовым к отправке:
“Плагин для прокси BungeeCord 1.21 под названием NetUtils: /lobby отправляет игрока на сервер-лобби, /staffchat (алиас /sc) отправляет сообщение всем с netutils.staff на любом сервере, /maintenance on|off показывает MOTD техобслуживания и кикает игроков без netutils.bypass, переходы персонала объявляются в чате персонала, названия серверов, MOTD и сообщения в config.yml.”
Сгенерировать это в Codexe