Opas

Miten tehdä BungeeCord-plugin

Päivitetty 18. lokakuuta 2026

BungeeCord-plugin toimii palvelintesi edessä olevalla välityspalvelimella, ei pelipalvelimella. Se näkee pelaajien yhdistävän, vaihtavan palvelinta ja poistuvan, joten se on oikea paikka koko verkoston chatille, henkilökunnan työkaluille, huoltotilalle, MOTD:lle ja pelaajien siirtämiselle palvelimelta toiselle. Siinä ei ole maailmoja eikä kuutioita: pelattavuus kuuluu taustapalvelimien pluginiin.

Vaihda komennot verkostosi mukaisiksi.

Generoi tämä Codexella

Vaihe vaiheelta

  1. 1.Varmista, mitä välityspalvelinta käytät

    BungeeCord (tai sen haarukka, kuten Waterfall) ja Velocity ovat eri API:ita. BungeeCord-plugin ei toimi Velocityssä, eikä toisin päin.

  2. 2.Luo projekti

    Maven- tai Gradle-projekti, jossa on bungeecord-api-riippuvuus provided-näkyvyydellä. Välityspalvelin tarjoaa sen ajon aikana.

  3. 3.Kirjoita pääluokka

    Luokka, joka perii luokan net.md_5.bungee.api.plugin.Plugin, ja jonka onEnable() rekisteröi komennot ja kuuntelijat getProxy().getPluginManager()-kutsun kautta.

  4. 4.Kuvaile se tiedostossa bungee.yml

    name, version, main ja author. BungeeCord lukee myös tiedoston plugin.yml, mutta bungee.yml välttää sekaannuksen Spigot-pluginien kanssa. Komennot rekisteröidään koodissa, ei tiedostossa.

  5. 5.Kirjoita komennot ja kuuntelijat

    Komennot perivät luokan Command; kuuntelijat toteuttavat rajapinnan Listener ja niissä on @EventHandler-metodit tapahtumille, kuten PostLoginEvent tai ServerSwitchEvent.

  6. 6.Viesti tarvittaessa taustapalvelimien kanssa

    Välityspalvelin ei näe inventaarioita eikä maailmoja. Sitä varten jokaisella taustapalvelimella oleva pieni apuplugin vaihtaa plugin-viestejä välityspalvelimen pluginin kanssa.

  7. 7.Asenna se välityspalvelimelle

    Laita .jar välityspalvelimen plugins/-kansioon ja käynnistä välityspalvelin uudelleen, ei taustapalvelimia.

Hyödyllisiä välityspalvelimen tapahtumia

TapahtumaMilloin se laukeaaTyypillinen käyttö
ProxyPingEventAsiakas päivittää palvelinlistanMOTD, pelaajamäärä, huoltoviesti
PostLoginEventPelaaja on liittynyt välityspalvelimelleLiittymisviestit, pelaajadatan lataus
ServerConnectEventPelaaja on yhdistämässä palvelimellePelaajien lähettäminen aulaan, palvelinten estäminen
ServerSwitchEventPelaaja siirtyi toiselle palvelimelleKoko verkoston "liittyi palvelimelle" -viestit
PlayerDisconnectEventPelaaja poistui verkostostaDatan tallennus, ilmoitukset henkilökunnalle
ChatEventPelaaja lähettää chat-viestin tai komennonVerkoston chat, suodattimet, henkilökunnan chat

Verkoston oikea määritys

  • Ota käyttöön ip_forward välityspalvelimen tiedostossa config.yml ja bungeecord: true jokaisen Spigot- tai Paper-palvelimen tiedostossa spigot.yml, jotta pelaajien nimet ja UUID:t välitetään eteenpäin.
  • Aseta taustapalvelimille online-mode=false ja varmista, ettei niihin pääse suoraan internetistä, vain välityspalvelimen kautta.
  • Plugin-viestit kulkevat vain, kun pelaaja on yhdistettynä kyseiselle taustapalvelimelle, joten tyhjälle palvelimelle lähetettyä viestiä ei toimiteta.

Esimerkkikuvaus

"BungeeCord 1.21 -välityspalvelimen plugin nimeltä NetUtils. /lobby lähettää pelaajan aulapalvelimelle. /staffchat <message> (alias /sc) lähettää viestin kaikille, joilla on netutils.staff millä tahansa palvelimella. /maintenance on|off näyttää huolto-MOTD:n ja potkii pelaajat, joilla ei ole oikeutta netutils.bypass. Liittymisviesti henkilökunnan chatissa, kun henkilökunnan jäsen vaihtaa palvelinta. Palvelinten nimet, MOTD ja viestit config.yml-tiedostossa."

Codexella

Valitse tyypiksi BungeeCord/Velocity ja kerro, mitä välityspalvelinta käytät, koska ne ovat eri API:ita. Codexe kääntää pluginin Mavenilla ja tarkistaa, että .jar-tiedostossa on oikea kuvaustiedosto, ennen kuin se on valmis; jos pyynnössä ei ole versiota, käytetään BungeeCord API 1.21:tä. Jos tarvitset taustapalvelimen apupluginin, pyydä sitä erillisenä Spigot/Paper-projektina.

Kokeile heti ei vielä aja välityspalvelimia, joten testaa välityspalvelimen plugin omassa verkostossasi tai paikallisella välityspalvelimella, jossa on yksi taustapalvelin. Katso myös BungeeCord-plugingeneraattori.

Kysymykset

Voiko BungeeCord-plugin muuttaa kuutioita tai inventaarioita?

Ei, välityspalvelin käsittelee vain yhteyksiä ja viestejä. Käytä pelattavuuteen taustapalvelimen pluginia ja plugin-viestejä, jos niiden täytyy toimia yhdessä.

Toimiiko se Velocityssä?

Ei. Velocityllä on oma API ja velocity-plugin.json. Jos käytät molempia, tee kaksi projektia.

Välityspalvelimen vai taustapalvelimen plugin chatille?

Välityspalvelimen plugin, jos chatin täytyy tavoittaa pelaajat jokaisella palvelimella. Taustapalvelimen plugin, jos chat pysyy yhdellä palvelimella.

Tee plugin verkostollesi

Tämä kehote aukeaa valmiina lähetettäväksi:

“BungeeCord 1.21 -välityspalvelimen plugin nimeltä NetUtils: /lobby lähettää pelaajan aulapalvelimelle, /staffchat (alias /sc) lähettää viestin kaikille, joilla on netutils.staff millä tahansa palvelimella, /maintenance on|off näyttää huolto-MOTD:n ja potkii pelaajat, joilla ei ole netutils.bypass-oikeutta, henkilökunnan palvelimen vaihdot ilmoitetaan henkilökunnan chatissa, palvelinten nimet, MOTD ja viestit config.yml-tiedostossa.”

Generoi tämä Codexella
Miten tehdä BungeeCord-plugin verkostollesi | Codexe