Discord
Wiki - Serwery

Zarzadzanie graczami na serwerze Minecraft

Rangi, uprawnienia, prefiksy i moderacja. LuckPerms to standard branzy, a ten poradnik pokaze Ci, jak go skonfigurowac od zera.

Czas czytania: ~15 min Poziom: Średniozaawansowany

Po co system uprawnien?

Wbudowany system Minecrafta zna tylko dwa poziomy dostepu: zwykły gracz i operator (OP). OP ma dostep do wszystkiego: /stop, /ban, /gamemode, bloków komend. Nie ma nic pomiedzy. Na serwerze dla 3 znajomych to wystarczy. Na serwerze publicznym to recepta na katastrofe.

Plugin uprawnien rozwiazuje ten problem, dając granularna kontrole. Możesz stworzyć range "Moderator", która pozwala na /kick i /mute, ale nie na /stop ani /op. Albo range "Budowniczy" z dostepem do WorldEdit, ale bez komend administracyjnych.

LuckPerms to standardowy plugin uprawnien od lat. Jest darmowy, open source, aktywnie rozwijany i obsługuje Paper, Spigot, BungeeCord, Velocity, Fabric i Forge. Nie ma powodu, zeby używać czegos innego.

Instalacja LuckPerms

  1. Pobierz LuckPerms z oficjalnej strony luckperms.net/download. Wybierz wersje odpowiednia dla swojego serwera (Bukkit/Spigot, BungeeCord, Velocity, Fabric, Forge).
  2. Wrzuc plik .jar do folderu plugins/ (lub mods/ dla Fabric/Forge).
  3. Zrestartuj serwer. LuckPerms wygeneruje folder konfiguracyjny plugins/LuckPerms/ z plikiem config.yml.
  4. Sprawdź działanie: wpisz /lp w konsoli. Powinienes zobaczyć informacje o wersji i dostępnych komendach.

Baza danych: Domyslnie LuckPerms używa pliku H2 (lokalnego). Na większych serwerach lub sieciach serwerow przełacz na MySQL/MariaDB w config.yml, zeby moc synchronizowac uprawnienia między serwerami.

Tworzenie rang (grup)

Grupa (group) w LuckPerms to ranga. Każdy gracz należy do co najmniej jednej grupy. Domyslna grupa to default, do której trafiaja wszyscy nowi gracze.

# Stworz grupy /lp creategroup vip /lp creategroup helper /lp creategroup moderator /lp creategroup admin # Usun grupe /lp deletegroup stara_grupa # Lista grup /lp listgroups

Przypisywanie graczy do rang

# Ustaw główna grupe gracza /lp user Gracz parent set vip # Dodaj dodatkowa grupe (gracz może być w wielu grupach) /lp user Gracz parent add helper # Usun grupe od gracza /lp user Gracz parent remove vip # Sprawdź grupy gracza /lp user Gracz parent info # Tymczasowa ranga (np. VIP na 30 dni) /lp user Gracz parent addtemp vip 30d

Tymczasowe rangi to świetny mechanizm dla serwerow ze sklepem. Gracz kupuje VIP na miesiąc, a LuckPerms automatycznie odbierze range po uplywie czasu.

Przypisywanie uprawnien

Każdy plugin definiuje własne permisje (permissions). Na przyklad EssentialsX używa essentials.home, essentials.tpa, essentials.fly. Dodajesz je do grupy tak:

# Dodaj permisje do grupy /lp group default permission set essentials.home /lp group default permission set essentials.tpa /lp group default permission set essentials.spawn # Odmow permisji (jawne zablokowanie) /lp group default permission set essentials.fly false # Usun permisje z grupy /lp group vip permission unset essentials.fly # Dodaj permisje z wildcardem (wszystkie komendy EssentialsX) /lp group admin permission set essentials.* # Sprawdź permisje grupy /lp group default permission info

Gdzie znaleźć permisje pluginow?

  • Dokumentacja pluginu (np. EssentialsX Permissions)
  • Strona pluginu na SpigotMC/BukkitDev (sekcja "Permissions")
  • Plik plugin.yml wewnątrz .jar pluginu
  • Komenda /lp verbose on - pokazuje, jakie permisje sa sprawdzane w czasie rzeczywistym

Verbose to Twoj najlepszy przyjaciel. Nie wiesz, jaka permisja kontroluje dana komende? Włącz /lp verbose on, wykonaj komende jako gracz testowy, a w logach zobaczysz dokładnie, jaka permisja została sprawdzona i czy przeszla. To oszczedza godziny szukania po dokumentacji.

Dziedziczenie rang

Dziedziczenie (inheritance) to mechanizm, dzięki któremu wyższa ranga automatycznie posiada permisje nizszej. Zamiast kopiowac te same permisje do każdej grupy, budujesz hierarchie:

# Moderator dziedziczy po VIP (ma wszystko co VIP + swoje) /lp group moderator parent add vip # Admin dziedziczy po Moderator /lp group admin parent add moderator # VIP dziedziczy po default /lp group vip parent add default

Efekt: Admin ma permisje Admina + Moderatora + VIPa + default. Wystarczy dodać nowa permisje do grupy default, a wszystkie wyższe rangi tez ja dostaną.

Typowa hierarchia rang

default (wszyscy nowi gracze) └── vip (dodatkowe komendy, np. /fly, więcej homow) └── helper (kick, mute, sprawdzanie logow) └── moderator (ban, tempban, vanish, inspekcja) └── admin (pełna kontrola, konfiguracja pluginow)

Wagi rang (weight)

Waga okresla priorytet rangi. Wyższa waga = wazniejsza ranga. Ma znaczenie przy prefiksach (wyswietlany jest prefiks rangi o najwyzszej wadze) i przy konfliktach uprawnien.

/lp group default meta setweight 1 /lp group vip meta setweight 10 /lp group helper meta setweight 20 /lp group moderator meta setweight 30 /lp group admin meta setweight 100

Prefiksy i formatowanie czatu

Prefiksy to kolorowe tagi przed nickiem gracza na czacie, np. [Admin], [VIP]. LuckPerms przechowuje prefiksy, ale do ich wyswietlania potrzebujesz pluginu czatu.

Ustawianie prefiksow w LuckPerms

# Format: /lp group [grupa] meta setprefix [waga] "[prefiks]" /lp group default meta setprefix 1 "&7[Gracz] " /lp group vip meta setprefix 10 "&6[VIP] " /lp group helper meta setprefix 20 "&a[Helper] " /lp group moderator meta setprefix 30 "&c[Mod] " /lp group admin meta setprefix 100 "&4[Admin] " # Sufiksy (po nicku) /lp group vip meta setsuffix 10 " &e*"

Kody kolorów: &0-&9 i &a-&f dla kolorów, &l bold, &o italic, &r reset.

Pluginy czatu

LuckPerms sam nie formatuje czatu. Potrzebujesz jednego z tych pluginow:

  • LPC (LuckPerms Chat Formatter) - minimalistyczny, wbudowany w LuckPerms (włącz w config.yml: apply-wildcards: true). Wystarczy na wiekszosc serwerow.
  • EssentialsX Chat - jeśli juz uzywasz EssentialsX. Format czatu w config.yml EssentialsX.
  • Vault - warstwa abstrakcji między LuckPerms a pluginami czatu/ekonomii. Wiele pluginow pobiera prefiksy przez Vault.

Edytor webowy LuckPerms

Konfiguracja przez komendy działa, ale przy wiekszej liczbie rang i permisji robi się uciazliwa. LuckPerms ma wbudowany edytor webowy, który pokazuje wszystko w przegladarce:

# Otworz edytor webowy /lp editor

Serwer wygeneruje jednorazowy link (np. https://luckperms.net/editor/xxxxx). Otwierasz go w przegladarce i widzisz:

  • Wszystkie grupy i ich hierarchie (wizualna drzewo)
  • Permisje każdej grupy (z możliwością dodawania/usuwania)
  • Metadane (prefiksy, sufiksy, wagi)
  • Uprawnienia poszczegolnych graczy

Po wprowadzeniu zmian klikasz "Save" i kopiujesz komende, która wklejasz na serwer. Zmiany sa aplikowane natychmiast. To zdecydowanie najwygodniejszy sposob zarzadzania uprawnieniami.

Wskazówka: Edytor webowy działa nawet na serwerze bez publicznego IP. Link jest generowany przez serwery LuckPerms i zawiera wszystkie dane. Nie potrzebujesz otwierania portow.

Konteksty - uprawnienia per świat

Konteksty (contexts) pozwalaja na przypisanie permisji tylko w okreslonym świecie lub serwerze. Dzięki temu gracz może miec /fly w świecie Creative, ale nie w Survival.

# Permisja tylko w świecie creative /lp group vip permission set essentials.fly true world=world_creative # Permisja tylko w świecie survival /lp group default permission set essentials.home.multiple.5 true world=world # Na konkretnym serwerze w sieci (BungeeCord/Velocity) /lp group vip permission set essentials.fly true server=creative

Konteksty działają z Multiverse i innymi pluginami światów. To potężne narzędzie na serwerach z wieloma światami (więcej o zarzadzaniu światami w poradniku o tworzeniu światów).

Przykladowa konfiguracja serwera

Oto kompletny przyklad konfiguracji rang dla typowego polskiego serwera Survival z pluginami EssentialsX, WorldGuard i CoreProtect:

Grupa default (nowi gracze)

/lp group default permission set essentials.home /lp group default permission set essentials.home.set /lp group default permission set essentials.spawn /lp group default permission set essentials.tpa /lp group default permission set essentials.tpaccept /lp group default permission set essentials.msg /lp group default permission set essentials.mail /lp group default permission set essentials.balance /lp group default permission set essentials.pay /lp group default permission set griefprevention.claims /lp group default meta setprefix 1 "&7[Gracz] " /lp group default meta setweight 1

Grupa VIP

/lp group vip parent add default /lp group vip permission set essentials.fly /lp group vip permission set essentials.home.multiple.5 /lp group vip permission set essentials.nick /lp group vip permission set essentials.hat /lp group vip permission set essentials.workbench /lp group vip meta setprefix 10 "&6[VIP] " /lp group vip meta setweight 10

Grupa Moderator

/lp group moderator parent add vip /lp group moderator permission set essentials.kick /lp group moderator permission set essentials.mute /lp group moderator permission set essentials.tempban /lp group moderator permission set essentials.vanish /lp group moderator permission set essentials.invsee /lp group moderator permission set coreprotect.inspect /lp group moderator permission set coreprotect.rollback /lp group moderator permission set coreprotect.lookup /lp group moderator permission set worldguard.region.bypass.* /lp group moderator meta setprefix 30 "&c[Mod] " /lp group moderator meta setweight 30

Grupa Admin

/lp group admin parent add moderator /lp group admin permission set * /lp group admin meta setprefix 100 "&4[Admin] " /lp group admin meta setweight 100

Uwaga: Permisja * (wildcard) daje dostep do WSZYSTKIEGO. Używaj jej tylko dla grupy Admin. Nigdy dla Moderatora, VIPa czy default. Każda grupa powinna miec tylko te permisje, które naprawde potrzebuje.

Co dalej?

System uprawnien gotowy. Oto co warto zrobić następnie:

Komentarze