Посібник
Як створити плагін 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 правильний дескриптор, перш ніж проєкт отримає статус «Готово»; якщо версію в запиті не вказано, використовується API BungeeCord 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