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 Codexe

Pas cu pas

  1. 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. 2.Configurează proiectul

    Un proiect Maven sau Gradle cu dependența bungeecord-api în scope-ul provided. Proxy-ul o furnizează la rulare.

  3. 3.Scrie clasa principală

    O clasă care extinde net.md_5.bungee.api.plugin.Plugin, cu onEnable() pentru a înregistra comenzile și listener-ele prin getProxy().getPluginManager().

  4. 4.Descrie-l în bungee.yml

    name, version, main și author. BungeeCord citește și plugin.yml, dar bungee.yml evită confuzia cu plugin-urile Spigot. Comenzile se înregistrează în cod, nu în fișier.

  5. 5.Scrie comenzile și listener-ele

    Comenzile extind Command; listener-ele implementează Listener cu metode @EventHandler pentru evenimente precum PostLoginEvent sau ServerSwitchEvent.

  6. 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. 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

EvenimentCând se declanșeazăUtilizare tipică
ProxyPingEventUn client reîmprospătează lista de servereMOTD, numărul de jucători, mesaj de mentenanță
PostLoginEventUn jucător a intrat pe proxyMesaje de intrare, încărcarea datelor jucătorului
ServerConnectEventUn jucător urmează să se conecteze la un serverTrimiterea jucătorilor într-un lobby, blocarea serverelor
ServerSwitchEventUn jucător s-a mutat pe alt serverMesaje „a intrat pe server” la nivelul rețelei
PlayerDisconnectEventUn jucător a părăsit rețeauaSalvarea datelor, notificări pentru staff
ChatEventUn 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 în config.yml-ul proxy-ului și bungeecord: true în spigot.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
Cum faci un plugin BungeeCord pentru rețeaua ta | Codexe