Czołem!
W dzisiejszym poradniku, przedstawię wam plugin
zPermissions. Jest to wtyczka, umożliwiająca stworzenie rang na naszym serwerze.
1.
Dlaczego akurat zPerms a nie PermissionsEx?: Odpowiedź jest jasna - zPermissions jest znacznie lepszym pluginem do permisji. Jest supportowany z MySQL'em na wersjach 1.7 - 1.8. W PermEx tego nie ma, jest tylko na wersje 1.8 wzwyż. Wtyczka umożliwia nam również, nadanie rangi czasowo, czego w PermEx nie ma - potrzebujemy dodatkowego pluginu.
2.
Instalacja:
- Wchodzimy na
tą stronę. Wybieramy wersje odpowiednią dla naszego serwera, oraz pobieramy ją.
- Przenosimy nasz plik, do folderu, gdzie znajduje się nasz serwer (ja swój mam na serwerze Wirtualnym - VPS). Wpisujemy komendę /restart lub /reload.
- W naszym folderze pluginowym, utworzył się folder "zPermissions". W środku znajduje się plik config oraz plik z naszymi permisjami.
Instalacja zakończona!
3.
Konfiguracja:
- Wchodzimy w plik "config.yml" i tutaj zaczynamy konfigurację:
Kod:
# Enable database support. Disabling database support switches
# zPermissions to its flat-file-based permissions store.
database-support: true
Domyślnie ustawione na true, czyli: Czy plugin ma stosować swoją zdolność do połączenia się poprzez MySQL - bazę danych. Jeżeli tak, to zostaw true, jeżeli nie - zmień na false. O połączeniu z MySQL'em, opowiem niżej.
Kod:
# Set to true if this server should be in read-only mode. Only valid when
# actually using a database. If set to read-only, the database account
# for this server should also be granted read-only permissions on
# zPermissions tables. (Not strictly required though.)
database-read-only: false
Czy plugin ma czytać permisje tylko i wyłącznie z bazy danych. Nie polecam ustawiania na true, iż potem będziecie musieli robić rangi poprzez phpmyadmin, czyli stronę naszych baz.
Kod:
# Whether region-based permissions are enabled. Requires a region plugin such
# as WorldGuard or Residence. Setting this to false will save some processing
# if you use a region plugin but don't use region-based permissions. Has no
# effect if a region plugin is not present.
region-support: true
Zostawcie na true. Tłumaczenie - dana permisja będzie działała tylko i wyłącznie na danym regionie.
Kod:
# Similar to group-permission, but only applied to "assigned" groups (groups
# that the player is explicitly a member of, including the default group, but
# not any inherited groups).
# Omit or leave blank ('') to disable this feature.
# This may also be a list of strings to automatically assign multiple
# permissions.
assigned-group-permission: ''
# Set to false if you want your assigned-group-permission (above) to never
# include the default group.
assigned-groups-can-include-default: true
W tych dwóch podpunktach nic nie zmieniajcie.
Kod:
# The default group. Players that are not explicitly members of any group
# are considered members of this group.
default-group: default
W miejsce "default" wpisz nazwę swojej grupy, która jest domyślna, czyli np: "Gracz".
Kod:
# The default track. When the track name is omitted while using the /promote,
# /demote, /setrank, and /unsetrank commands, this is the track used.
default-track: default
Domyślny tor do nadania rangi, to opiszę niżej.
Kod:
# Track definitions. Each key should be the name of the track. The value
# should be a list of group names in ascending order.
tracks:
default:
- default
- somegroup
- someothergroup
Jak widzimy, mamy tu rangi podpisane pod dany tor. Czyli, w miejsca "default", "somegroup" oraz "someothergroup" wpisujemy nasze rangi, może ich być więcej, nie musicie się martwić że tylko 3. Głownie ma to zastosowanie takie, że dana ranga, może mieć dostęp do nadania rang z danego toru, czyli np: "rangi", w których są: Gracz, VIP. I on może nadać te rangi, ale jest też inny tor: "rangispecjalne", w których są: Admin, Właściciel, itp. Do nadania tych rank, potrzebna jest permisja do danego toru.
Kod:
# Interval, in minutes, in which to automatically refresh permissions from
# the database. Set to a non-positive number to disable. Has no effect on
# the flat-file storage method. DO NOT SET IT TOO LOW. Otherwise you run
# the risk of refreshes overlapping or permissions changes inexplicably
# being "forgotten."
# Unless you have an external process modifying zPermissions tables, you
# should have no need to enable this feature! (And even then, its use is
# questionable...)
auto-refresh-interval: -1
# By default, the refreshes set by auto-refresh-interval are conditional.
# That is, the refreshes do not actually occur unless the data version
# number (found in the table named DATA_VERSION by default) is different.
# Set this to true if you wish to perform an unconditional refresh instead.
# (Prior to 1.1, the refreshes were always unconditional.)
auto-refresh-force: false
W pierwszym - co ile minut, baza permisji ma być odświeżana, czyli, nadam sobie rangę na innym serwerze, to muszę poczekać tyle minut, co ustawiłem, aby tą samą range mieć na innym serwerze. Oczywiście ta opcja dotyczy połączonego pluginu z MySQL, czyli bazą danych.
W drugim - jeżeli nastąpi zmiana w bazie danych, plugin automatycznie odświeży bazę. Tak jak wcześniej, ta opcja dotyczy połączonego pluginu z MySQL, czyli bazą danych.
To były najważniejsze punkty konfiguracji.
4.
Połączenie z bazą danych/MySQL:
Ta opcja nie jest dostępna na Windowsie, chyba że masz specjalny program. Ja mam serwer na VPS, gdzie łatwo się instaluje phpmyadmin, MySQL, apache2 itp.
Jeżeli nie masz serwera na VPS'ie, to omiń ten punkt.
Przejdźmy do sedna:
Wchodzimy w nasz plik bukkit.yml, który znajduje się w głównym folderze serwerowym. Zjeżdżamy na sam dół, do:
Kod:
database:
username: bukkit
isolation: SERIALIZABLE
driver: org.sqlite.JDBC
password: walrus
url: jdbc:sqlite:{DIR}{NAME}.db
W username wpisujemy root, jest to domyślny użytkownik. Isolation zostawiamy, Driver zmieniamy na "om.mysql.jdbc.Driver", w password wpisujemy nasze hasło, do logowania się w panelu phpmyadmin, a w url wpisujemy nasz adres do strony z bazami danych, czyli: jdbc:mysql://127.0.0.1:3306/{NAME}, gdzie w {NAME} wpisujemy nazwę bazy danych. Zapisujemy plik, oraz restartujemy/przeładowywujemy serwer.
Do czego tak wogóle, służy baza danych? Dajmy na to, iż macie sieć serwerów, np: Survival, EasyHc, SurvivalGames itd. Nie chce wam się wchodzić na każdy inny tryb, aby nadać innym np. rangę Pomocnika. Dlatego, instalujesz plugin zPerms, łączysz go z bazą danych i już problem z głowy. Tworzysz range Pomocnik na jednym trybie, nadajesz mu permisje, oraz nadajesz tą range graczowi, po jednej minucie (zależy co ile macie odświeżanie) otrzyma tą rangę na każdym trybie, permisje również. To bardzo przydatne.
5.
Komendy:
Wszystkie komendy pluginu znajdziecie na
stronie oficialnej pluginu.
6.
Czasowe permisje oraz rangi:
Wszystko, znajduje się
na tej stronie.
Myślę, że to wszystko w tym poradniku. Następny poradnik będzie o pluginie Essentials.