Посібник

Як створити плагін BungeeCord

Оновлено 18 жовтня 2026 р.

Плагін BungeeCord працює на проксі, який стоїть перед вашими серверами, а не на ігровому сервері. Він бачить, як гравці підключаються, переходять між серверами й виходять, тож це правильне місце для чату на всю мережу, інструментів персоналу, режиму техобслуговування, MOTD і переміщення гравців між серверами. У нього немає світів чи блоків: ігровий процес належить до плагіна на серверах за проксі.

Змініть команди під свою мережу.

Згенерувати це в Codexe

Крок за кроком

  1. 1.Уточніть, який у вас проксі

    BungeeCord (або форк, як-от Waterfall) і Velocity мають різні API. Плагін BungeeCord не працює на Velocity, і навпаки.

  2. 2.Налаштуйте проєкт

    Проєкт Maven або Gradle із залежністю bungeecord-api в області provided. Проксі надає її під час роботи.

  3. 3.Напишіть головний клас

    Клас, що розширює net.md_5.bungee.api.plugin.Plugin, з onEnable() для реєстрації команд і слухачів через getProxy().getPluginManager().

  4. 4.Опишіть його в bungee.yml

    name, version, main і author. BungeeCord читає й plugin.yml, але bungee.yml не дає сплутати плагін із плагінами Spigot. Команди реєструються в коді, а не у файлі.

  5. 5.Напишіть команди й слухачі

    Команди розширюють Command; слухачі реалізують Listener з методами @EventHandler для подій, як-от PostLoginEvent або ServerSwitchEvent.

  6. 6.За потреби обмінюйтеся даними із серверами за проксі

    Проксі не бачить інвентарів і світів. Для цього невеликий плагін-компаньйон на кожному сервері за проксі обмінюється plugin messages із проксі-плагіном.

  7. 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
Як створити плагін BungeeCord для своєї мережі | Codexe