Poradnik
Jak zrobić plugin BungeeCord
Zaktualizowano: 18 października 2026
Plugin BungeeCord działa na proxy, które stoi przed twoimi serwerami, a nie na serwerze gry. Widzi, jak gracze się łączą, zmieniają serwery i wychodzą, więc to właściwe miejsce na czat dla całej sieci, narzędzia dla administracji, tryb konserwacji, MOTD i przenoszenie graczy między serwerami. Nie ma światów ani bloków: rozgrywka należy do pluginu na serwerach za proxy.
Zmień komendy pod swoją sieć.
Wygeneruj to w CodexeKrok po kroku
1.Potwierdź, jakiego proxy używasz
BungeeCord (lub fork, taki jak Waterfall) i Velocity to różne API. Plugin BungeeCord nie działa na Velocity i odwrotnie.
2.Przygotuj projekt
Projekt Maven lub Gradle z zależnością
bungeecord-apiw zakresieprovided. Proxy dostarcza ją w czasie działania.3.Napisz klasę główną
Klasa rozszerzająca
net.md_5.bungee.api.plugin.Plugin, zonEnable()rejestrującym komendy i listenery przezgetProxy().getPluginManager().4.Opisz go w bungee.yml
name,version,mainiauthor. BungeeCord czyta teżplugin.yml, alebungee.ymlpozwala uniknąć pomyłek z pluginami Spigot. Komendy rejestruje się w kodzie, a nie w pliku.5.Napisz komendy i listenery
Komendy rozszerzają
Command; listenery implementująListenerz metodami@EventHandlerdla zdarzeń takich jakPostLoginEventczyServerSwitchEvent.6.W razie potrzeby komunikuj się z serwerami za proxy
Proxy nie widzi ekwipunków ani światów. Do tego mały plugin towarzyszący na każdym serwerze za proxy wymienia plugin messages z pluginem proxy.
7.Zainstaluj go na proxy
Wrzuć plik .jar do folderu
plugins/proxy i zrestartuj proxy, a nie serwery za nim.
Przydatne zdarzenia proxy
| Zdarzenie | Kiedy się odpala | Typowe zastosowanie |
|---|---|---|
ProxyPingEvent | Klient odświeża listę serwerów | MOTD, liczba graczy, komunikat o konserwacji |
PostLoginEvent | Gracz dołączył do proxy | Wiadomości powitalne, wczytywanie danych gracza |
ServerConnectEvent | Gracz zaraz połączy się z serwerem | Wysyłanie graczy do lobby, blokowanie serwerów |
ServerSwitchEvent | Gracz przeszedł na inny serwer | Wiadomości „dołączył do serwera” w całej sieci |
PlayerDisconnectEvent | Gracz opuścił sieć | Zapis danych, powiadomienia dla administracji |
ChatEvent | Gracz wysyła wiadomość na czacie lub komendę | Czat sieci, filtry, czat administracji |
Poprawna konfiguracja sieci
- Włącz
ip_forwardwconfig.ymlproxy ibungeecord: truewspigot.ymlkażdego serwera Spigot lub Paper, żeby nazwy graczy i UUID były przekazywane dalej. - Ustaw serwery za proxy na
online-mode=falsei upewnij się, że nie da się się z nimi połączyć bezpośrednio z internetu, tylko przez proxy. - Plugin messages przechodzą tylko wtedy, gdy jakiś gracz jest połączony z danym serwerem za proxy, więc wiadomość do pustego serwera nie zostanie dostarczona.
Przykładowy opis
„Plugin proxy na BungeeCord 1.21 o nazwie NetUtils. /lobby wysyła gracza na serwer lobby. /staffchat <message> (alias /sc) wysyła wiadomość do wszystkich z netutils.staff na dowolnym serwerze. /maintenance on|off pokazuje MOTD konserwacji i wyrzuca graczy bez netutils.bypass. Wiadomość na czacie administracji, gdy członek administracji zmienia serwer. Nazwy serwerów, MOTD i wiadomości w config.yml.”
Z Codexe
Wybierz typ BungeeCord/Velocity i wpisz, jakiego proxy używasz, bo to różne API. Codexe kompiluje plugin przez Maven i sprawdza, czy plik .jar ma właściwy deskryptor, zanim będzie gotowy; bez wersji w prośbie używane jest API BungeeCord 1.21. Jeśli potrzebujesz pluginu towarzyszącego na serwerach za proxy, poproś o niego jako osobny projekt Spigot/Paper.
Wypróbuj teraz nie uruchamia jeszcze serwerów proxy, więc przetestuj plugin proxy w swojej sieci albo na lokalnym proxy z jednym serwerem za nim. Zobacz też generator pluginów BungeeCord.
Pytania
Czy plugin BungeeCord może zmieniać bloki lub ekwipunki?
Nie, proxy obsługuje tylko połączenia i wiadomości. Do rozgrywki użyj pluginu na serwerze za proxy, a plugin messages, jeśli oba mają ze sobą współpracować.
Czy działa na Velocity?
Nie. Velocity ma własne API i velocity-plugin.json. Jeśli używasz obu, zrób dwa projekty.
Plugin proxy czy plugin na serwerze do czatu?
Plugin proxy, jeśli czat ma docierać do graczy na każdym serwerze. Plugin na serwerze, jeśli czat zostaje na jednym serwerze.
Zrób plugin do swojej sieci
Ten prompt otworzy się gotowy do wysłania:
“Plugin proxy na BungeeCord 1.21 o nazwie NetUtils: /lobby wysyła gracza na serwer lobby, /staffchat (alias /sc) wysyła wiadomość do wszystkich z netutils.staff na dowolnym serwerze, /maintenance on|off pokazuje MOTD konserwacji i wyrzuca graczy bez netutils.bypass, zmiany serwera przez administrację ogłaszane na czacie administracji, nazwy serwerów, MOTD i wiadomości w config.yml.”
Wygeneruj to w Codexe