Как настроить файл permissions yml

Обновлено: 04.07.2024

PermissionsEX (PEX) — плагин для Bukkit, который позволяет легко разграничивать полномочия игроков на сервере. Имеет встроенные дополнения Modifyworld, которое даёт возможность определять, что игроки могут или не могут изменять в игровом мире, а также ChatManager с помощью которого можно разделить чат на локальный и глобальный, раскрасить ники игроков и добавить к ним префиксы и суффиксы.

Содержание

Установка [ ]

Использование [ ]

Для распределения прав игрокам нужно отредактировать файл permissions.yml по адресу plugins/PermissionsEx. Это можно сделать с помощью любого текстового редактора, но для удобности рекомендуется использовать Online YAML Editor
Открыв его мы увидим:

Значение этих строк следующее:
groups: — указывает, что ниже будут идти группы и их права.
default: — название группы, куда попадают все только что зашедшие на сервер игроки, если они не прописаны в других группах. Вы можете менять это название на какое захотите.
default: true — параметр, который задаёт группу, как группу по-умолчанию. То есть, все права этой группы будет иметь любой игрок, для которого не определены другие группы и/или исключения.
permissions: — все, что идёт ниже, это и есть сами "права" для группы, сюда нужно прописывать permissions от различных плагинов установленных на вашем сервере. Значение null означает, что у группы/игрока нет никаких прав.
- modifyworld.* — возможность "модифицировать" мир. Если Вы не намерены конкретно определять, что игроки могут или не могут изменять в игровом мире, то это право лучше оставить как есть, а если намерены, то смотрите в Modifyworld (с версии 1.0 функция плагина modifyworld вшита в плагин PermissionsEx).

Рассмотрим как мы можем отредактировать данный файл:

Здесь мы добавили новую группу Admins, а также права для отдельного игрока BigBoss:.
default: false — означает, что данная группа не является группой по-умолчанию.
inheritance: — параметр, с помощью которого можно установить наследственность прав определённой группы, в данном случае — это группа default. Это значит, что Вам не придётся еще раз прописывать права группы default для группы Admins.
Звездочка ('*') означает, что у группы/игрока есть абсолютно все права на все плагины, установленные на сервере.
users: — означает, что ниже идут права отдельных игроков.
BigBoss: — имя игрока для которого настраиваются отдельные права.
group: Admins — указывает на то, что игрок входит в группу Admins
rank: — ранг игрока.

Если Вы хотите раскрасить ники игроков и добавить к ним префиксы и суффиксы то нужно включить и настроить в permissions.yml Chat Manager.

Важно! В YAML нужно чётко соблюдать последовательность, один лишний пробел — и параметр работать не будет. Поэтому для проверки permissions.yml рекомендуется использовать этот сайт. Там в левое окошко нужно вставить ваш код из permissions.yml, и если в правом окне не выдаст ошибок, то код написан правильно и он будет работать, если будут ошибки, то оно выдаст номер забракованной строки.

Команды и права [ ]

С помощью следующих команд вы можете управлять PEX прямо через консоль или игровой чат, не редактируя файл permissions.yml

  • Добавление префиксов и суффиксов будет работать только если включен Chat Manager или EssentialsChat (начиная с 1.6.4).
  • Значение параметров: <такой> параметр обязателен для указания; [такой] параметр — опциональный.
  • Параметр [world] позволяет локализировать действие команды в определенном мире.
  • Там где упоминается единственное/множественное можно перечислять параметры через запятую.

Служебные [ ]

Управление правами игроков [ ]

Команда Permission Описание
/pex users permissions.manage.users Показывает список всех записанных пользователей. И игроков сервера
/pex user <user> [world] permissions.manage.users Показывает права игрока <user>
/pex user <user> prefix [newprefix] [world] permissions.manage.users.prefix.<user> Установить игроку <user> префикс [newprefix]
/pex user <user> suffix [newsuffix] [world] permissions.manage.users.suffix.<user> Установить игроку <user> суффикс [newsuffix]
/pex user <user> delete permissions.manage.users.<user> Удалить игрока <user> из бэкенда, используемого на данный момент.
/pex user <user> add <permission> [world] permissions.manage.users.permissions.<user> Дать право <permission> игроку <user>
/pex user <user> remove <permission> [world] permissions.manage.users.permissions.<user> Забрать право <permission> у игрока <user>
/pex user <user> group add <permission> [world] [lifetime] permissions.manage.users.permissions.timed.<user> Дать временное право <permission> игроку <user> на время [lifetime] (в сек.) Выставите значение на "" (две двойные скобки) если вы хотите использовать право во всех мирах!
/pex user <user> group remove <permission> permissions.manage.users.permissions.timed.<user> Забрать у игрока <user> временное право <permission>
/pex user <user> set <option> <value> [world] permissions.manage.users.permissions.<user> Выставить опцию <option> на значение <value>. Выставите значение на "" (две двойные кавычки) если вы хотите убрать опцию <option>

Управление правами групп игроков [ ]

Команда Permission Описание
/pex user <user> group list [world] permissions.manage.membership.<user> Показать список групп в которых состоит игрок <user>
/pex user <user> group add <group> [*] [lifetime] permissions.manage.membership.<user> Добавить игрока <user> в группу <group> на время [lifetime]= [min\hour\day] = [3min]
/pex user <user> group set <group> [world] permissions.manage.membership.<user> Установить группу <group> для игрока <user> (удалит его из остальных групп)
/pex user <user> group remove <group> [world] permissions.manage.membership.<user> Удалить игрока <user> из группы <group>

Управление правами групп [ ]

Управление игроками в группах [ ]

Управление наследственностью миров [ ]

Команда Permission Описание
/pex worlds permissions.manage.worlds Показать загруженные миры
/pex world <world> permissions.manage.worlds Показать информацию о наследственности мира <world>
/pex world <world> inherit <parentWorlds> permissions.manage.worlds.inheritance Установить родительский мир/миры <parentWorlds> для мира <world>

Критика [ ]

Все что в скобках - это описание, из рабочего конфига нужно удалить.

- worldguard.region.info (выводит список владельцов и членов указанного региона)
- worldguard.region.list (показывает регионы сервера)
- worldguard.region.define (опеределяет регион и закрепляет за ним пользователей)
- worldguard.region.redefine.own.* (позволяет владельцам переопределять свои собственные регионы)
- worldguard.region.claim (создать регион)
- worldguard.region.select.own.* (позволяет владельцам выбирать свои собственные регионы)
- worldguard.region.remove.own.* (позволяет владельцам удалять свои собственные регионы)
- worldguard.region.addowner.own.* (добавлять владельца регионы)
- worldguard.region.removeowner.own.* (удалять владельца регионы)
- worldguard.region.addmember.own.* (добавлять пользователя в регион)
- worldguard.region.removemember.own.* (удалять пользователя из региона)
- worldguard.region.setpriority.own.* (позволяет владельцам устанавливать приоритет своих собственных регионов)
- worldguard.region.setparent.own.* (задавать дочерние и родительские регионы)
- worldguard.region.flag.regions.own.* (позволяет владельцам устанавливать флаги для своих собственных регионов)
- worldguard.region.flag.regions.member.*(позволяет участникам устанавливать флаги для своих собственных регионов)
prefix: '&7[Gamer]&f '
VIP:
default: false
inheritance:
- default
prefix: '&6[VIP]&f '
Moder:
default: false
inheritance:
- VIP
permissions:
- lwc.mod (доступ к любой защите, за исключением тех которые принадлежат LWC админу)
prefix: '&2[Moder]&f '
Admins:
default: false
permissions:
- '*'
prefix: '&4[Admin]&f '
users:
Lihodey:
group:
- Admins

Цвета для префиксов:
&0 - Black, &1 - Dark Blue, &2 - Dark Green, &3 - Dark Teal, &4 - Dark Red, &5 - Purple, &6 - Gold, &7 - Gray, &8 - Dark Gray, &9 - Blue, &a - Bright Green, &b - Teal, &c - Red, &d - Pink, &e - Yellow, &f - White.

:)

Настройка PermissionsEx:
Для упрощения настройки можете воспользоваться программой от LordXaosa
Для начала давайте рассмотрим файл permissions.yml по адресу (ваш сервер\plugins\PermissionsEx). Ремарка: файлы с расширением .yml можно просматривать ЛЮБЫМ текстовым редактором, но для удобства рекомендую пользоваться Notepad++ (скачать его можно ТУТ)

Открыв файл мы увидим следующие:

[IMG]

groups: //не трогаем данное слово, оно указывает на то, что ниже будут идти группы и их permissions.
default: //название группы в неё попадают все только что зашедшие на сервер пользователи, если конечно вы не прописали их в другую группу.
default: true // данный параметр задаёт группу, как группу по-умолчанию. это означает, что все права этой группы будет иметь любой игрок, для которого не определены другие группы и/или исключения.
permissions: //всё что идёт ниже, это собственно и есть сами "права" для группы, туда нужно прописывать permissions от различных плагинов установленных на вашем сервере.
- modifyworld.* //возможность "модифицировать" мир, не рекомендую трогать данный параметр. Ремарка: на самом деле у параметра "modifyworld" намного больше значений, но поскольку это небольшой FAQ и здесь рассказывается только об самом главном я не стал пояснять этот параметр, если вам интересно вы можете почитать официальную документацию на английском по ЭТОЙ ссылке.

Теперь давайте рассмотрим уже настроенный permissions для нескольких плагинов.

Данный Permissions настроен для плагинов: CommandBook, MyHome, VanishNoPickup, Jobs, LWC, WorldEdit, iConomy, iConomy ChestShop, WorldGuard.

Здесь как вы могли заметить появились новые параметры:

info: //параметры группы

prefix: '' //префикс

suffix: '' //суффикс

// для отображения префиксов/суффиксов необходимо включить плагин ChatManager, который входит в состав PEX. Для этого в папке plugins/ChatManager/ в файле config.yml находим enable и меняем его при необходимости с enable: false на enable: true

inheritance: //наследование прав

- Default //в данном случае наследуются все права группы "default"

Так же вы могли заметить что появился параметр users:
под ним нужно указывать никнеймы пользователей, которым вы хотите дать дополнительные права и/или переместить в другую группу. К примеру:

Moderator:
group:
- Moder
permissions: null

где "Moderator"-никнейм игрока, "Moder"- название группы, permissions: null-дополнительные права для этого пользователя, в данном случае их нет.

Запомните! В YAML нужно чётко соблюдать последовательность, один лишний пробел и параметр не будет работать. Для того чтобы было меньше ошибок я РЕКОМЕНДУЮ пользоваться ЭТИМ сайтом. Ремарка: в левое окошко вставляете ваш код, если в правом окне не выдаёт ошибок, значит вы корректно написали код на yaml и он будет работать.

За сим всё, статью написал и подготовил gold-morphin. Надеюсь после прочтения данной статьи у вас отпали многие вопросы.

:)

Если вы сделали всё правильно и увидели созданные плагином папки, то можете считать что плагин установлен.

Настройка PermissionsEx:
Для упрощения настройки можете воспользоваться программой от LordXaosa
Для начала давайте рассмотрим файл permissions.yml по адресу (ваш сервер\plugins\PermissionsEx). Ремарка: файлы с расширением .yml можно просматривать ЛЮБЫМ текстовым редактором, но для удобства рекомендую пользоваться Notepad++ (скачать его можно ТУТ)

Открыв файл мы увидим следующие:

groups: //не трогаем данное слово, оно указывает на то, что ниже будут идти группы и их permissions.

default: //название группы в неё попадают все только что зашедшие на сервер пользователи, если конечно вы не прописали их в другую группу.
default: true // данный параметр задаёт группу, как группу по-умолчанию. это означает, что все права этой группы будет иметь любой игрок, для которого не определены другие группы и/или исключения.
permissions: //всё что идёт ниже, это собственно и есть сами "права" для группы, туда нужно прописывать permissions от различных плагинов установленных на вашем сервере.
- modifyworld.* //возможность "модифицировать" мир, не рекомендую трогать данный параметр. Ремарка: на самом деле у параметра "modifyworld" намного больше значений, но поскольку это небольшой FAQ и здесь рассказывается только об самом главном я не стал пояснять этот параметр, если вам интересно вы можете почитать официальную документацию на английском по ЭТОЙ ссылке.

Данный Permissions настроен для плагинов: CommandBook, MyHome, VanishNoPickup, Jobs, LWC, WorldEdit, iConomy, iConomy ChestShop, WorldGuard.

Здесь как вы могли заметить появились новые параметры:

info: //параметры группы

// для отображения префиксов/суффиксов необходимо включить плагин ChatManager, который входит в состав PEX. Для этого в папке plugins/ChatManager/ в файле config.yml находим enable и меняем его при необходимости с enable: false на enable: true

inheritance: //наследование прав

- Default //в данном случае наследуются все права группы "default"

Так же вы могли заметить что появился параметр users:
под ним нужно указывать никнеймы пользователей, которым вы хотите дать дополнительные права и/или переместить в другую группу. К примеру:

Moderator:
group:
- Moder
permissions: null

где "Moderator"-никнейм игрока, "Moder"- название группы, permissions: null-дополнительные права для этого пользователя, в данном случае их нет.

Запомните! В YAML нужно чётко соблюдать последовательность, один лишний пробел и параметр не будет работать. Для того чтобы было меньше ошибок я РЕКОМЕНДУЮ пользоваться ЭТИМ сайтом. Ремарка: в левое окошко вставляете ваш код, если в правом окне не выдаёт ошибок, значит вы корректно написали код на yaml и он будет работать.

За сим всё, статью написал и подготовил gold-morphin. Надеюсь после прочтения данной статьи у вас отпали многие вопросы.

Читайте также: