By zobaczyć linki musisz się zalogować lub zarejestrować
PermissionsEx to plugin, który doda do Twojego serwera Minecraft uprawnienia, czyli permissions. Jest to jeden z podstawowych pluginów, w który powinien być wyposażony każdy serwer. W poradniku poradniku pokażę, jak łatwo zacząć z PeX'em oraz poruszę rzeczy dla osób, które są już doświadczone.
Uprawnienia (jak można się domyślić) dają graczom lub grupą graczy pozwolenie na wykonanie jakiejś czynności na serwerze, np. użycie komendy.
Dzięki temu łatwo możemy ustalać kto ma jakie możliwości. Wszystkie pluginy bazują na uprawnieniach, więc bez nich pluginy będą bezużyteczne, ponieważ nikt nie będzie mógł korzystać z możliwości oferowanych przez wtyczkę.
Poradnik składa się z kilku działów:
1. Instalacja
2. Konfiguracja pliku permissions.yml
* Konfiguracja sekcji 'group'
* Konfiguracja sekcji 'users'
3. Konfiguracja pliku config.yml
4. Rangi
5. Komendy
1. Instalacja
By zobaczyć linki musisz się zalogować lub zarejestrować
Z pobranego archiwum potrzebny nam będzie tylko plik permissionsex.jar. Pliki modifyworld.jar oraz chatmenager.jar można usnąć. Nie są one potrzebne. Pierwszy z nich odpowiada za modyfikację świata, a drugi za Chat. Za zastępstwo drugiego pluginu polecam EssentialsChat. Jak go skonfigurować znajdziecie tutaj.
Plik permissionsex.jar przenosimy do folderu 'plugins' naszego serwera. Zróbmy reset naszego serwera. Utworzyły się nam folder pluginu a w środku 2 pliki. Teraz przejdziemy do ich omówienia.
Zanim zaczniemy konfigurować należy zwrócić uwagę na to, że pliki są zapisywane w formacie .yml. Takie pliki są bardzo wyczulone na składnię. Zrobienie jednego błędu może spowodować niewłaściwe wczytanie pluginu, a w efekcie nie będzie on działał. Nie możemy używać znaków tabulacji - zamiast nich korzystaj ze spacji.
2. Konfiguracja pliku permissions.yml
groups: <- oznacza, że tu zaczyna się sekcja grup, musi zostać default: <- nazwa grupy default: true <- ranga domyślna, czyli każdy nowy gracz, który wejdzie na serwer otrzyma ją permissions: <- oznacza, że tutaj zaczyna się sekcja uprawnień - modifyworld.* <- przykładowe uprawnienie
Zmodyfikujmy trochę nasz plik:
groups: Gracz: <- zmieniona nazwa grupy default: true prefix: '&7Gracz' <- prefix na chacie, '&7' oznacza kolor, a dalej to zwykły napis permissions: - modifyworld.* - essentials.spawn <- przykładowe uprawnienie z pluginu Essentials, możemy dodawać własne
Prefix możemy dodać komendą w KONSOLI:
pex group NazwaGrupy prefix "&7Gracz"
Uprawnienia możemy dodawać komendą w KONSOLI:
pex group NazwaGrupy add "przykladowe.uprawnienie"
Powyższy kod oznacza, że każdy nowy gracz na serwerze dostanie rangę 'Gracz', na chacie będzie miał przedrostek Gracz oraz będzie mógł korzystać z komendy pluginu Essentials - /spawn. Mamy już rangę 'Gracz', więc czas na kolejną rangę - 'Admin'. Możemy to zrobić komendą w KONSOLI (tworzenie nowej grupy):
pex group NazwaGrupy create
Lub kodu dopisujemy od nowej lini (po 2 spacjach) nazwę grupy.
Admin: <- nazwa grupy default: false <- zmieniamy na 'false', gdyż nie chcemy, aby każdy nowy dostawał rangę 'Admin' prefix: '&4Admin' permissions: - '*' <- jest to specjalne uprawnienie, które daje dostęp do wszystkiego
Specjalne uprawnienie możemy dodać komendą w KONSOLI:
pex group NazwaGrupy add "*"
Dodajmy jeszcze rangę VIP (dziedziczenie).
VIP: default: false prefix: '&eVIP' inheritance: <- oznacza to, że ta ranga będzie dziedziczyła uprawnienia po innych rangach - Gracz permissions: - essentials.sethome
VIP dziedziczy uprawnienia Gracza. Oznacza to, że VIP ma wszystkie uprawnienia Gracza + własne uprawnienia (tutaj: essentials.sethome). Uprawnienia Gracza nie ulegają zmianie. Dziedziczność możemy zrobić komendą przy tworzeniu grupy. Komendę należy wpisać w KONSOLI:
pex group NazwaGrupy create NazwaDziedziczonejGrupy
czyli w naszym przypadku:
pex group VIP create Gracz
Czasem jest tak, że pluginy automatycznie przypisują swoje uprawnienia do wszystkich rang. Jednak my pomimo tego chcemy, aby nie wszyscy mogli korzystać z możliwości pluginu. Możemy to zrobić w łatwy sposób - przez nazwą uprawnienia wstawić znak '-', np (zabieranie uprawnień):
Gracz: default: true prefix: '&7Gracz' permissions: - modifyworld.* - essentials.spawn - essentials.home - essentials.sethome VIP: default: false prefix: '&eVIP' inheritance: - Gracz permissions: - essentials.gamemode - -essentials.sethome
Co prawda, VIP dziedziczy po Graczu 'essentials.sethome', ale my mu potem 'odbieramy' to uprawnienie. W efekcie VIP nie może korzystać z komendy /sethome.
Cały nasz plik będzie wyglądał tak:
groups: Gracz: default: true prefix: '&7Gracz' permissions: - modifyworld.* - essentials.spawn - essentials.home - essentials.sethome VIP: default: false prefix: '&eVIP' inheritance: - Gracz permissions: - essentials.gamemode - -essentials.sethome Admin: default: false prefix: '&4Admin' permissions: - '*'
Teraz przejdziemy do ustawiania uprawnień na różnych światach. Wyobraźmy sobie, że na serwerze mamy dwa światy: 'world' oraz 'world_nether'. Chcemy, aby Gracz na mapie 'world' mógł korzystać z komendy /sethome, a na 'world_nether' już nie. Robimy to następująco:
Gracz: default: true prefix: '&7Gracz' permissions: - modifyworld.* - essentials.spawn - essentials.home - essentials.sethome worlds: <- początek sekcji world world_nether: <- nazwa świata permissions: <- początek sekcji z uprawnieniami - -essentials.sethome
Nie dodawałem tutaj świata 'world', ponieważ na nim nie ma żadnych zmian. Tylko w 'world_nether' zabraliśmy jedno uprawnienie.
Nasz końcowy plik permissions.yml może wyglądać następująco:
groups: Gracz: default: true prefix: '&7Gracz' permissions: - essentials.spawn - essentials.home - essentials.sethome worlds: world_nether: permissions: - -essentials.sethome VIP: default: false prefix: '&eVIP' inheritance: - Gracz permissions: - essentials.gamemode Admin: default: false prefix: '&4Admin' permissions: - '*'
Myślę, że wszystko jest jasno wytłumaczone, do każdego zagadnienia macie przykład z zastosowaniem.
2a. Konfiguracja sekcji 'users'
pex user NazwaGracza group set NazwaGrupy
Można to zrobić również w pliku permissions.yml edytując sekcję 'users'.
Sekcja w najprostszej postaci wygląda tak:
users: <- oznacza, że tutaj zaczyna się sekcja użytkowników, musi zostać MaaLee: <- nick gracza group: <- oznacza, że niżej będzie podana grupa, do której ma przypisać gracza - Admin <- nazwa grupy
Możemy dodawać uprawnienia tylko dla konkretnego gracza. Jest to przydatne, gdy chcemy by jeden gracz miał jedno więcej uprawnień niż reszta, a nie chcemy tworzyć kolejnej grupy. Robimy to tak:
users: Troll: group: - Gracz permissions: - przykladowe.uprawnienie
Gracz o nick'u Troll będzie miał wszystkie uprawnienia gracza oraz 'przykladowe.uprawnienie'. Uwaga! Jeśli mamy rangę domyślną, którą otrzymuje każdy nowy gracz, to tego gracza nie ma na liście 'users', gdyż byłoby to nieporęczne przechowywać w tym pliku kilka tysięcy graczy z tą samą zawartością.
3. Konfiguracja pliku config.yml
permissions: backends: <- oznacza, że zaczyna się sekcja file: <- oznacza, że zaczyna się sekcja związana z plikiem file: permissions.yml <- plik, w którym będą nasze uprawnienia, najlep backend: file <- sekcja podległa backends uruchamiana na starcie superperms: <- sekcja ustawień SuperUprawnień enable-wildcards: true disable-unmatched: false enable: true debug: false compatibility-mode: false createUserRecords: false <- sekcja z innymi ustawnieniami allowOps: false debug: false basedir: plugins/PermissionsEx <- nazwa katalogu z uprawnieniami
4. Ranking
Uwaga! Numer 0 oznacza, że nie możemy osoby z tej grupy awansować, ani zniżyć. Po prostu nie jest brana pod uwagę przy rankingu.
Ranking dla grupy ustalamy komendą:
pex group NazwaGrupy rank LiczbaRankingu
Możemy także to zrobić w pliku permissions.yml:
Admin: prefix: '&4Admin' permissions: - '*' options: rank: '1'
gdzie 1 to liczba rankingu.
Awansujemy gracza komendą:
pex promote Nick
A zniżamy grupę komendą:
pex demote Nick
Postaram się wytłumaczyć to wam na przykładzie. Oto nasz plik:
groups: Gracz: default: true permissions: - essentials.spawn - essentials.home - essentials.sethome options: rank: '3' VIP: prefix: '&eVIP' inheritance: - Gracz permissions: - essentials.gamemode options: rank: '2' Admin: prefix: '&4Admin' permissions: - '*' options: rank: '1'
Jak widzimy najważniejszą grupą jest Admin (ma najniższą liczbę), potem VIP i na końcu Gracz. Jest na serwerze nowy Gracz o nicku Troll. Gdy wpiszemy komendę awansu (podaną powyżej) Troll z Gracza stanie się VIPem. Po ponownym wpisaniu komendy będzie już Adminem. Gdy wpiszemy komendę do zniżenia rangi Troll z Admina stanie się VIPem. Wspominałem już o liczbie rankingowej równej 0. Jest to taki sam przypadek, gdy nie ma kodu dotyczącego rankingu, czyli:
VIP: prefix: '&eVIP' permissions: - '*' options: rank: '0'
znaczy to samo co:
VIP: prefix: '&eVIP' permissions: - '*'
Oznacza to, że rangi VIP nie można dostać poprzez awans. Czyli, mamy Gracza Troll. Wpisujemy komendę awansu. VIP nie jest brany pod uwagę, czyli Troll dostanie rangę Admin. Łatwe?
Uwaga! Liczby rankingowe nie mają znaczenia. Ich wartość może być różna. Po prostu, gdy wpiszemy komendę Pex bierze rangę z niższym lub wyższym numerem.
5. Komendy
By zobaczyć linki musisz się zalogować lub zarejestrować
Niestety komendy tutaj zawarte mają opisy po angielsku.