Ghid
Cum faci un plugin BungeeCord
Actualizat 18 octombrie 2026
Un plugin BungeeCord rulează pe proxy-ul care stă în fața serverelor tale, nu pe un server de joc. Vede jucătorii când se conectează, schimbă serverul și ies, așa că este locul potrivit pentru chat la nivelul rețelei, unelte de staff, modul de mentenanță, MOTD-ul și trimiterea jucătorilor între servere. Nu are lumi sau blocuri: gameplay-ul aparține unui plugin de pe serverele backend.
Schimbă comenzile după rețeaua ta.
Generează asta cu CodexePas cu pas
1.Confirmă ce proxy rulezi
BungeeCord (sau un fork precum Waterfall) și Velocity au API-uri diferite. Un plugin BungeeCord nu rulează pe Velocity și nici invers.
2.Configurează proiectul
Un proiect Maven sau Gradle cu dependența
bungeecord-apiîn scope-ulprovided. Proxy-ul o furnizează la rulare.3.Scrie clasa principală
O clasă care extinde
net.md_5.bungee.api.plugin.Plugin, cuonEnable()pentru a înregistra comenzile și listener-ele pringetProxy().getPluginManager().4.Descrie-l în bungee.yml
name,version,mainșiauthor. BungeeCord citește șiplugin.yml, darbungee.ymlevită confuzia cu plugin-urile Spigot. Comenzile se înregistrează în cod, nu în fișier.5.Scrie comenzile și listener-ele
Comenzile extind
Command; listener-ele implementeazăListenercu metode@EventHandlerpentru evenimente precumPostLoginEventsauServerSwitchEvent.6.Comunică cu serverele backend dacă e nevoie
Proxy-ul nu poate vedea inventare sau lumi. Pentru asta, un mic plugin însoțitor pe fiecare server backend schimbă plugin messages cu pluginul de proxy.
7.Instalează-l pe proxy
Pune .jar-ul în folderul
plugins/al proxy-ului și repornește proxy-ul, nu serverele backend.
Evenimente de proxy utile
| Eveniment | Când se declanșează | Utilizare tipică |
|---|---|---|
ProxyPingEvent | Un client reîmprospătează lista de servere | MOTD, numărul de jucători, mesaj de mentenanță |
PostLoginEvent | Un jucător a intrat pe proxy | Mesaje de intrare, încărcarea datelor jucătorului |
ServerConnectEvent | Un jucător urmează să se conecteze la un server | Trimiterea jucătorilor într-un lobby, blocarea serverelor |
ServerSwitchEvent | Un jucător s-a mutat pe alt server | Mesaje „a intrat pe server” la nivelul rețelei |
PlayerDisconnectEvent | Un jucător a părăsit rețeaua | Salvarea datelor, notificări pentru staff |
ChatEvent | Un jucător trimite un mesaj în chat sau o comandă | Chat de rețea, filtre, chat de staff |
Configurarea corectă a rețelei
- Activează
ip_forwardînconfig.yml-ul proxy-ului șibungeecord: trueînspigot.yml-ul fiecărui server Spigot sau Paper, ca numele și UUID-urile jucătorilor să fie transmise mai departe. - Setează serverele backend pe
online-mode=falseși asigură-te că nu pot fi accesate direct de pe internet, ci doar prin proxy. - Plugin messages circulă doar cât timp un jucător este conectat la acel server backend, așa că un mesaj către un server gol nu este livrat.
Exemplu de descriere
„Un plugin de proxy BungeeCord 1.21 numit NetUtils. /lobby trimite jucătorul pe serverul de lobby. /staffchat <message> (alias /sc) trimite un mesaj tuturor celor cu netutils.staff, pe orice server. /maintenance on|off afișează un MOTD de mentenanță și dă kick jucătorilor fără netutils.bypass. Un mesaj de intrare în chatul de staff când un membru al staff-ului schimbă serverul. Numele serverelor, MOTD-ul și mesajele în config.yml.”
Cu Codexe
Alege tipul BungeeCord/Velocity și spune ce proxy rulezi, pentru că au API-uri diferite. Codexe compilează pluginul cu Maven și verifică dacă .jar-ul are descriptorul corect înainte să fie Gata; fără o versiune în cerere, se folosește API-ul BungeeCord 1.21. Dacă ai nevoie de un plugin însoțitor pentru backend, cere-l ca proiect Spigot/Paper separat.
Încearcă acum nu rulează încă servere proxy, așa că testează pluginul de proxy pe propria rețea sau pe un proxy local cu un server backend. Vezi și generatorul de plugin-uri BungeeCord.
Întrebări
Poate un plugin BungeeCord să schimbe blocuri sau inventare?
Nu, proxy-ul gestionează doar conexiuni și mesaje. Folosește un plugin de backend pentru gameplay și plugin messages dacă cele două trebuie să lucreze împreună.
Funcționează pe Velocity?
Nu. Velocity are propriul API și velocity-plugin.json. Dacă le rulezi pe amândouă, fă două proiecte.
Plugin de proxy sau plugin de backend pentru chat?
Un plugin de proxy dacă chatul trebuie să ajungă la jucătorii de pe toate serverele. Un plugin de backend dacă chatul rămâne pe un singur server.
Fă un plugin pentru rețeaua ta
Acest prompt se deschide gata de trimis:
“Un plugin de proxy BungeeCord 1.21 numit NetUtils: /lobby trimite jucătorul pe serverul de lobby, /staffchat (alias /sc) trimite un mesaj tuturor celor cu netutils.staff, pe orice server, /maintenance on|off afișează un MOTD de mentenanță și dă kick jucătorilor fără netutils.bypass, schimbările de server ale staff-ului anunțate în chatul de staff, numele serverelor, MOTD-ul și mesajele în config.yml.”
Generează asta cu Codexe