PermissionsEX/Ранг
Система повышений в PermissionsEX базируется на рангах, чем больше значение ранга установлено в **rank:**, тем ниже игрок находится на служебной лестнице. Ранг не может быть меньше 1. При значении 0, ранг удаляется. Также ранги можно присваивать сразу целым группам.


### Групповые ранги

Рассмотрим групповые ранги на конкретном примере настройки permissions.yml:


groups: guest: default: true options: rank: '1000' player: options: rank: '900' moderator: options: rank: '100' admin: options: rank: '1'

Как видим, здесь у нас 4 группы. Группа по-умолчанию **guest:**, куда будут попадать все только что зашедшие на сервер игроки, имеет низший ранг. Соответственно все игроки в этой группе находятся на низшей службной ступени. А группа **admin:** имеет высший ранг.


С помощью команд */pex promote <user> [ladder]* и */pex demote <user> [ladder]*, можно быстро повышать и понижать игроков в звании. При установленном параметре *[ladder]* можно определять присваемое звание, тоесть можно повышать или понижать игроков сразу на несколько служебных ступеней. Если не устанавливать этот параметр, то игрок будет повышен или понижен на следующую или предыдущую служебную ступень соответственно.


### Служебная лестница

С помощью системы рангов можно настроить внутриигровую служебную лестницу.

Например у нас есть два города — CityA и CityB. Для того чтобы не запутаться в правах рекомендуется чтобы во всех городах служебные лестницы были одинаковыми.

В каждом городе есть свой мэр (Major), должностные лица (Sheriff), обычные горожане (Citizen) и новобранцы (Recruit) с низшим рангом. Только мэр или в крайнем случае должностные лица должны иметь право повышать или понижать игроков. Для этого нам понадобится две лестницы "CityA" and "CityB".

Служебные лестницы требуют группы с определенным рангом для каждого служебного положения. Например: CityA-Mayor, CityA-Sheriff, CityA-Member, и CityA-Recruit. Так же и для города CityB.

Вы можете присваивать ранги группам с помощью команд групповой ранжировки. Например:
*/pex group CityA-Major rank 100 CityA*, /*pex group CityA-Sheriff rank 200 CityA* и т.д.
Тоже самое для CityB.

Теперь CityA и CityB не могут вмешиватся в служебные лестницы друг друга. Права и команды для повышения и понижения должны относится к определенным служебным лестницам, указанным в **rank-ladder:**.


groups: CityA-Major: options: rank: '100' rank-ladder: CityA CityB-Major: options: rank: '100' rank-ladder: CityB CityA-Sheriff: options: rank: '200' rank-ladder: CityA CityB-Sheriff: options: rank: '200' rank-ladder: CityB

Если у Вас есть только одна, никак Вами не названая, служебная лестница, то PEX автоматически назовет ее "default". Тогда права, связанные с повышением и понижением, должны относится к default.

Если же служебная лестница названа, даже если она единственная, во всех командах повышения и понижения должно использоватся это название. Например, если у Вас есть единственная служебная лестница с названием CityA, то команда будет */pex promote <user> CityA*.вы также можете проверить yaml с помощью онлайн-инструментов yaml