Создание привилегий через PermissionsEx

Создавать привилегии на сервера Minecraft можно с помощью плагинов на права. Мы разберем создание привилегий с помощью PermissionsEx arrow-up-rightи LuckPermsarrow-up-right.

PermissionsEx

Работа с группами

Файл permissions.yml с правами и группами игроков находится в plugins/PermissionsEx/. Ниже приведен пример простой группы у которой нет никаких прав. # - комментарии к каждой строке.

groups: #Группы, с данной строки начинается перечисление существующих групп
  default: #Название группы. Именно оно будет использоваться для выдачи группы.
    permissions: #Список прав, каждое новое право выводится по примеру ниже
    - modifyworld.* #Право
    options: #Опции групп. Например, вы можете сделать эту группу по умолчанию
      default: 'true' #True - означает, что новые игроки будут 
                      #получать данную группу при входе на сервер
      prefix: '&7Игрок &f' #Префикс, который будет выводиться в плагинах с поддержкой Vault
      suffix: '&r' #Суффикс, который будет выводиться в плагинах с поддержкой Vault
    inheritance: [] #Наследование прав от других групп

Создание новой группы

Предположим, что нам нужна новая группа, с названием vip - она наследует права default и имеет собственный префикс:

  vip:
    inheritance:
    - default
    permissions:
    - mcstudio.vip
    options:
      prefix: '&9[Вип] &f'
      default: false

Как мы видим, группа vip будет наследовать права из группы default, с помощью inheritance.

circle-info

Не нужно переписывать права из предыдущей группы, если идёт наследование предыдущей группы, это сократит объем файла и вам будет проще работать с ним

Вес группы

После создания новой группы при выдаче через команду /pex user mcstudio group add vip всё равно остаётся префикс "Игрок". Нужно добавить параметр в options - weight.

Чем ниже вес - тем группа выше. Например, вес группы default 100, а у группы vip 95, то группа vip будет выше, чем группа default. Таким образом можно установить необходимый приоритет между группами.

Как это выглядит:

Это основные параметры, которые необходимы для полноценной работы групп. Перейдём к настройке самих прав.

Работа с правами

Каждое право вписывается с новой строки, учитывайте синтаксис, чтобы не было лишних пробелов или символов.

triangle-exclamation

Где найти права

Права к каждому плагину хранятся на официальной странице плагина. Для примера мы рассмотрим EssentialsXarrow-up-right.

Зачастую разработчик оставляет ссылку на Wiki или права (permissions). Дабы не тратить много времени вы можете использовать сочетание клавиш Ctrl + F для поиска по странице необходимой информации.

Переходим на официальную документацию EssentialsXarrow-up-right, в левом углу выбираем "Permissions", и попадаем на страницу с правами и командамиarrow-up-right.

Если рассматривать интерфейс данной страницы, то:

— "Module" - модуль в котором есть это право либо команда, например, для использования права "essentials.build" нужно установить модуль EssentialsAntiBuild, он идёт в архиве с самим Essentials; — "Command" - какая команда отвечает за это право, здесь отображается основная команда, но не алиасы, алиасы для команд можете найти тутarrow-up-right; — "Permissions" - право, которое нужно для работы команды, но не всегда одного права хватает для этой работы, например, чтобы заработало право "essentials.afk.auto", нам нужно и право "essentials.afk"; — "Description" - краткое описание команды, более детальное описание лучше смотреть на отдельной странице с меню. Используйте поиск для более быстрого поиска необходимого права.

Не все разработчики используют отдельные сайты либо страницы для команд и прав, кто-то выводится права и команды прямо на странице плагина. Некоторые разработчики размещают описание команд и прав на GitHub, и подобных сервисах.

circle-exclamation

Выдача прав

Для примера выдадим группе default право на использование команды /spawn, а для vip переключение между режимами выживание и креатива, вот как это будет выглядеть:

Если установить только "essentials.gamemode", то игрок сможет использовать команду /gamemode, но не устанавливать себе необходимый ему режим. Если установить "essentials.gamemode и essentials.gamemode.creative", то игрок может переходить только в /gamemode creative

Запрещение права

Помимо выдачи права, можно и запретить право на использование чего-либо. Например, у нас есть право "essentials.enchantments.*" на выдачу предметов с любыми чарами, но нам нужно отключить infinity, который можно назначить луку. Для этого нам нужно перед правом поставить "-", таким образом это будет означать, что данное право отключено, пример:

Группа со всеми правами

Чтобы создать группу со всеми правами, ей не нужно назначать наследование (inheritance). Вам нужно просто в permissions указать '*', вот как это выглядит:

LuckPerms

Гайд по созданию привилегий через LuckPerms:

Создание привилегий через LuckPermschevron-right

Last updated