Guide

Sådan laver du et BungeeCord-plugin

Opdateret 18. oktober 2026

Et BungeeCord-plugin kører på den proxy, der står foran dine servere, ikke på en spilserver. Det ser spillere forbinde, skifte server og forlade, så det er det rigtige sted til chat på tværs af netværket, staffværktøjer, vedligeholdelsestilstand, MOTD og at sende spillere mellem servere. Det har ingen verdener eller blokke: gameplay hører hjemme i et plugin på backend-serverne.

Tilpas kommandoerne til dit netværk.

Generér dette med Codexe

Trin for trin

  1. 1.Bekræft, hvilken proxy du kører

    BungeeCord (eller en fork som Waterfall) og Velocity er forskellige API'er. Et BungeeCord-plugin kører ikke på Velocity og omvendt.

  2. 2.Sæt projektet op

    Et Maven- eller Gradle-projekt med afhængigheden bungeecord-api i scope provided. Proxyen leverer den under kørsel.

  3. 3.Skriv hovedklassen

    En klasse, der udvider net.md_5.bungee.api.plugin.Plugin, med onEnable() til at registrere kommandoer og listeners via getProxy().getPluginManager().

  4. 4.Beskriv det i bungee.yml

    name, version, main og author. BungeeCord læser også plugin.yml, men bungee.yml undgår forveksling med Spigot-plugins. Kommandoer registreres i koden, ikke i filen.

  5. 5.Skriv kommandoer og listeners

    Kommandoer udvider Command; listeners implementerer Listener med @EventHandler-metoder til events som PostLoginEvent eller ServerSwitchEvent.

  6. 6.Kommunikér med backend-servere, hvis det er nødvendigt

    Proxyen kan ikke se inventories eller verdener. Til det udveksler et lille ledsagerplugin på hver backend-server plugin messages med proxypluginet.

  7. 7.Installér det på proxyen

    Læg .jar-filen i proxyens plugins/-mappe, og genstart proxyen, ikke backend-serverne.

Nyttige proxy-events

HændelseHvornår det udløsesTypisk brug
ProxyPingEventEn klient opdaterer serverlistenMOTD, spillerantal, vedligeholdelsesbesked
PostLoginEventEn spiller har joinet proxyenJoin-beskeder, indlæsning af spillerdata
ServerConnectEventEn spiller er ved at forbinde til en serverSende spillere til en lobby, blokere servere
ServerSwitchEventEn spiller er flyttet til en anden server"Har joinet serveren"-beskeder på tværs af netværket
PlayerDisconnectEventEn spiller har forladt netværketGemme data, notifikationer til staff
ChatEventEn spiller sender en chatbesked eller kommandoNetværkschat, filtre, staffchat

Sådan sætter du netværket rigtigt op

  • Slå ip_forward til i proxyens config.yml og bungeecord: true i hver Spigot- eller Paper-servers spigot.yml, så spillernavne og UUID'er sendes videre.
  • Sæt backend-serverne til online-mode=false, og sørg for, at de ikke kan nås direkte fra internettet, kun via proxyen.
  • Plugin messages sendes kun, mens en spiller er forbundet til den backend-server, så en besked til en tom server bliver ikke leveret.

Eksempel på beskrivelse

"Et BungeeCord 1.21-proxyplugin kaldet NetUtils. /lobby sender spilleren til lobbyserveren. /staffchat <message> (alias /sc) sender en besked til alle med netutils.staff på enhver server. /maintenance on|off viser en vedligeholdelses-MOTD og kicker spillere uden netutils.bypass. En join-besked i staffchatten, når et staffmedlem skifter server. Servernavne, MOTD og beskeder i config.yml."

Med Codexe

Vælg typen BungeeCord/Velocity, og skriv, hvilken proxy du kører, da de er forskellige API'er. Codexe kompilerer pluginet med Maven og tjekker, at .jar-filen har den rigtige descriptor, før det er Klar; uden en version i anmodningen bruges BungeeCord-API'en 1.21. Hvis du har brug for et ledsagerplugin til backend, så bed om det som et separat Spigot/Paper-projekt.

Prøv det nu kører endnu ikke proxyservere, så test proxypluginet på dit eget netværk eller en lokal proxy med én backend-server. Se også BungeeCord-plugingeneratoren.

Spørgsmål

Kan et BungeeCord-plugin ændre blokke eller inventories?

Nej, proxyen håndterer kun forbindelser og beskeder. Brug et backend-plugin til gameplay og plugin messages, hvis de to skal arbejde sammen.

Virker det på Velocity?

Nej. Velocity har sin egen API og velocity-plugin.json. Hvis du kører begge, så lav to projekter.

Proxyplugin eller backend-plugin til chat?

Et proxyplugin, hvis chatten skal nå spillere på alle servere. Et backend-plugin, hvis chatten bliver på én server.

Lav et plugin til dit netværk

Denne prompt åbnes klar til at sende:

“Et BungeeCord 1.21-proxyplugin kaldet NetUtils: /lobby sender spilleren til lobbyserveren, /staffchat (alias /sc) sender en besked til alle med netutils.staff på enhver server, /maintenance on|off viser en vedligeholdelses-MOTD og kicker spillere uden netutils.bypass, staffs serverskift annonceres i staffchatten, servernavne, MOTD og beskeder i config.yml.”

Generér dette med Codexe
Sådan laver du et BungeeCord-plugin til dit netværk | Codexe