Guide
Så gör du ett BungeeCord-plugin
Uppdaterad 18 oktober 2026
Ett BungeeCord-plugin körs på proxyn som står framför dina servrar, inte på en spelserver. Den ser spelare ansluta, byta server och lämna, så det är rätt ställe för chatt i hela nätverket, personalverktyg, underhållsläge, MOTD och att skicka spelare mellan servrar. Den har inga världar eller block: gameplay hör hemma i ett plugin på backend-servrarna.
Anpassa kommandona efter ditt nätverk.
Generera det här med CodexeSteg för steg
1.Bekräfta vilken proxy du kör
BungeeCord (eller en fork som Waterfall) och Velocity är olika API:er. Ett BungeeCord-plugin fungerar inte på Velocity, och tvärtom.
2.Sätt upp projektet
Ett Maven- eller Gradle-projekt med beroendet
bungeecord-apii scopeprovided. Proxyn tillhandahåller det vid körning.3.Skriv huvudklassen
En klass som utökar
net.md_5.bungee.api.plugin.Plugin, medonEnable()för att registrera kommandon och lyssnare viagetProxy().getPluginManager().4.Beskriv det i bungee.yml
name,version,mainochauthor. BungeeCord läser ocksåplugin.yml, menbungee.ymlundviker förväxling med Spigot-plugin. Kommandon registreras i koden, inte i filen.5.Skriv kommandon och lyssnare
Kommandon utökar
Command; lyssnare implementerarListenermed@EventHandler-metoder för händelser somPostLoginEventellerServerSwitchEvent.6.Kommunicera med backend-servrar vid behov
Proxyn kan inte se inventarier eller världar. För det utbyter ett litet kompanjonsplugin på varje backend-server plugin messages med proxypluginet.
7.Installera det på proxyn
Lägg .jar-filen i proxyns mapp
plugins/och starta om proxyn, inte backend-servrarna.
Användbara proxyhändelser
| Händelse | När den utlöses | Typisk användning |
|---|---|---|
ProxyPingEvent | En klient uppdaterar serverlistan | MOTD, antal spelare, underhållsmeddelande |
PostLoginEvent | En spelare har anslutit till proxyn | Välkomstmeddelanden, inläsning av spelardata |
ServerConnectEvent | En spelare håller på att ansluta till en server | Skicka spelare till en lobby, blockera servrar |
ServerSwitchEvent | En spelare har flyttat till en annan server | Meddelanden om ”gick in på servern” i hela nätverket |
PlayerDisconnectEvent | En spelare har lämnat nätverket | Spara data, aviseringar till personalen |
ChatEvent | En spelare skickar ett chattmeddelande eller kommando | Nätverkschatt, filter, personalchatt |
Sätta upp nätverket rätt
- Slå på
ip_forwardi proxynsconfig.ymlochbungeecord: truei varje Spigot- eller Paper-serversspigot.yml, så att spelarnamn och UUID:n skickas vidare. - Sätt backend-servrarna till
online-mode=falseoch se till att de inte kan nås direkt från internet, bara via proxyn. - Plugin messages skickas bara medan en spelare är ansluten till den backend-servern, så ett meddelande till en tom server levereras inte.
Exempelbeskrivning
”Ett proxyplugin för BungeeCord 1.21 som heter NetUtils. /lobby skickar spelaren till lobbyservern. /staffchat <message> (alias /sc) skickar ett meddelande till alla med netutils.staff på vilken server som helst. /maintenance on|off visar en MOTD för underhåll och sparkar ut spelare utan netutils.bypass. Ett meddelande i personalchatten när någon i personalen byter server. Servernamn, MOTD och meddelanden i config.yml.”
Med Codexe
Välj typen BungeeCord/Velocity och ange vilken proxy du kör, eftersom de är olika API:er. Codexe kompilerar pluginet med Maven och kontrollerar att .jar-filen har rätt deskriptor innan den blir Redo; utan version i begäran används BungeeCord-API:et 1.21. Behöver du ett kompanjonsplugin för backend, be om det som ett separat Spigot/Paper-projekt.
Prova nu kör inte proxyservrar än, så testa proxypluginet på ditt eget nätverk eller en lokal proxy med en backend-server. Se också BungeeCord-plugingeneratorn.
Frågor
Kan ett BungeeCord-plugin ändra block eller inventarier?
Nej, proxyn hanterar bara anslutningar och meddelanden. Använd ett backend-plugin för gameplay, och plugin messages om de två måste samarbeta.
Fungerar det på Velocity?
Nej. Velocity har ett eget API och velocity-plugin.json. Kör du båda, gör två projekt.
Proxyplugin eller backend-plugin för chatten?
Ett proxyplugin om chatten ska nå spelare på alla servrar. Ett backend-plugin om chatten stannar på en server.
Gör ett plugin för ditt nätverk
Den här prompten öppnas färdig att skicka:
“Ett proxyplugin för BungeeCord 1.21 som heter NetUtils: /lobby skickar spelaren till lobbyservern, /staffchat (alias /sc) skickar ett meddelande till alla med netutils.staff på vilken server som helst, /maintenance on|off visar en MOTD för underhåll och sparkar ut spelare utan netutils.bypass, serverbyten i personalen meddelas i personalchatten, servernamn, MOTD och meddelanden i config.yml.”
Generera det här med Codexe