Návod
Jak vytvořit plugin pro BungeeCord
Aktualizováno 18. října 2026
Plugin pro BungeeCord běží na proxy, která stojí před tvými servery, ne na herním serveru. Vidí, jak se hráči připojují, přepínají servery a odcházejí, takže je to správné místo pro chat napříč sítí, nástroje pro tým, režim údržby, MOTD a přesouvání hráčů mezi servery. Nemá světy ani bloky: hratelnost patří do pluginu na backend serverech.
Uprav příkazy podle své sítě.
Vygeneruj to s CodexeKrok za krokem
1.Ověř, jakou proxy provozuješ
BungeeCord (nebo fork jako Waterfall) a Velocity mají různá API. Plugin pro BungeeCord na Velocity neběží a naopak.
2.Nastav projekt
Projekt Maven nebo Gradle se závislostí
bungeecord-apise scopeprovided. Za běhu ji dodá proxy.3.Napiš hlavní třídu
Třída, která rozšiřuje
net.md_5.bungee.api.plugin.Plugin, sonEnable(), kde se přesgetProxy().getPluginManager()registrují příkazy a posluchače.4.Popiš ho v bungee.yml
name,version,mainaauthor. BungeeCord čte iplugin.yml, alebungee.ymlpředejde záměně s pluginy pro Spigot. Příkazy se registrují v kódu, ne v souboru.5.Napiš příkazy a listenery
Příkazy rozšiřují
Command; posluchače implementujíListeners metodami@EventHandlerpro události jakoPostLoginEventneboServerSwitchEvent.6.Komunikuj s backend servery, pokud je to potřeba
Proxy nevidí inventáře ani světy. Na to slouží malý doprovodný plugin na každém backend serveru, který si s proxy pluginem vyměňuje plugin messages.
7.Nainstaluj ho na proxy
Dej .jar do složky
plugins/proxy a restartuj proxy, ne backend servery.
Užitečné události proxy
| Událost | Kdy se spustí | Typické použití |
|---|---|---|
ProxyPingEvent | Klient obnoví seznam serverů | MOTD, počet hráčů, zpráva o údržbě |
PostLoginEvent | Hráč se připojil na proxy | Uvítací zprávy, načtení dat hráče |
ServerConnectEvent | Hráč se chystá připojit na server | Posílání hráčů do lobby, blokování serverů |
ServerSwitchEvent | Hráč přešel na jiný server | Zprávy „připojil se na server“ napříč sítí |
PlayerDisconnectEvent | Hráč opustil síť | Ukládání dat, upozornění pro tým |
ChatEvent | Hráč pošle zprávu do chatu nebo příkaz | Chat napříč sítí, filtry, chat pro tým |
Jak správně nastavit síť
- Zapni
ip_forwardvconfig.ymlproxy abungeecord: truevespigot.ymlkaždého serveru Spigot nebo Paper, aby se předávala jména hráčů a UUID. - Nastav backend servery na
online-mode=falsea zajisti, aby nebyly dostupné přímo z internetu, jen přes proxy. - Plugin messages putují jen tehdy, když je k danému backend serveru připojený nějaký hráč, takže zpráva na prázdný server nedorazí.
Příklad popisu
„Proxy plugin pro BungeeCord 1.21 jménem NetUtils. /lobby pošle hráče na lobby server. /staffchat <message> (alias /sc) pošle zprávu všem s netutils.staff na jakémkoli serveru. /maintenance on|off ukáže MOTD údržby a vyhodí hráče bez netutils.bypass. Zpráva v chatu týmu, když člen týmu přepne server. Názvy serverů, MOTD a zprávy v config.yml.“
S Codexe
Vyber typ BungeeCord/Velocity a napiš, jakou proxy provozuješ, protože mají různá API. Codexe plugin zkompiluje přes Maven a zkontroluje, že .jar má správný deskriptor, než je Ready; bez verze v zadání se použije API BungeeCordu 1.21. Pokud potřebuješ doprovodný plugin pro backend, požádej o něj jako o samostatný projekt pro Spigot/Paper.
Vyzkoušet hned zatím proxy servery nespouští, takže proxy plugin otestuj na vlastní síti nebo na lokální proxy s jedním backend serverem. Viz také generátor pluginů pro BungeeCord.
Otázky
Může plugin pro BungeeCord měnit bloky nebo inventáře?
Ne, proxy řeší jen připojení a zprávy. Na hratelnost použij backend plugin, a pokud mají ty dva spolupracovat, plugin messages.
Funguje to na Velocity?
Ne. Velocity má vlastní API a velocity-plugin.json. Pokud provozuješ obojí, udělej dva projekty.
Proxy plugin, nebo backend plugin pro chat?
Proxy plugin, pokud chat musí dorazit k hráčům na všech serverech. Backend plugin, pokud chat zůstává na jednom serveru.
Vytvoř plugin pro svou síť
Toto zadání se otevře připravené k odeslání:
“Proxy plugin pro BungeeCord 1.21 jménem NetUtils: /lobby pošle hráče na lobby server, /staffchat (alias /sc) pošle zprávu všem s netutils.staff na jakémkoli serveru, /maintenance on|off ukáže MOTD údržby a vyhodí hráče bez netutils.bypass, přepnutí serveru členem týmu oznámené v chatu týmu, názvy serverů, MOTD a zprávy v config.yml.”
Vygeneruj to s Codexe