Когда вы скачиваете какой-нибудь более-менее комплексный плагин, вам всегда попадается страница с текстом, где расписаны так называемые "permissions" (права доступа). Они позволяют настроить доступ к определенным командам по различным уровням: например, разрешить использовать лаву группам "Админ" и "Модератор", но запретить группам "Игрок", "Донатор" и "Гость". Разберем настройку permissions на примере плагина PermissionsEx.

Устанавливаем PermissionsEx

Для начала скачайте плагин по ссылке. Затем загрузите плагин в папку /plugins/ вашего FTP-сервера. После этого запустите ваш сервер и вы обнаружите новую папку /plugins/PermissionsEx. В ней хранится файл permissions.yml, который вам нужно скачать на ваш компьютер и открыть в каком-нибудь расширенном текстовом редакторе вроде Notepad++.

Файл permissions.yml выглядит примерно так

Скачайте готовый пример

Если вам лень, можно скачать готовый файл и добавить в него своих админов (см. ниже "Как добавить админов"). В файле уже есть один администратор, не забудьте его убрать соответствующей командой. Для полноценной работы сервера с готовым файлом и инструкцией вам также необходимо скачать набор следующих плагинов:

  1. EssentialsX, EssentialsXAntiBuild, EssentialsXChat - жмите на ссылки под словами "Артефакты последней успешной сборки". Команды и права по ссылкам.
  2. Vault - плагин для корректной работы префиксов в EssentialsX.
  3. mcMMO - можно скачать здесь, но нужно зарегистрироваться. Список прав и пояснений смотрите по ссылкам.
  4. WorldEdit - скачайте редактор карты здесь. Права и команды доступны здесь.
  5. AuthMe - скачиваем здесь, нажав на ссылку вида AuthMe-5.6.0-Snapshot.jar. Смотрите права и команды соответственно.

Какие группы мы создаем?

Нужно понимать структуру файла. Мы создаем сервер для друзей, на который можно войти и играть лишь если владелец сервера дал вам такое право. Поэтому в нашем примере мы создаем следующие группы:

  1. Guest. Группа для гостей. Все игроки по умолчанию помещаются в эту группу (видите "default: true" на строчке 11?).
  2. Player. Группа, куда владелец сервера будет переносить игроков после регистрации. Могут делать практически всё. Не могут использовать лаву и редактор карты.
  3. VIP. Группа, где будут игроки, оплатившие донат или приближенные к администратору. Имеют различные дополнительные доступы.
  4. Moderator. Группа с доступом к редактору карт и прочему.
  5. Admin. Группа для владельца сервера, полный доступ.

Настройка группы "Гость"

Теперь попытаемся разобраться, как настроить различные права для группы "Гость". Нам понадобится установить плагин Authme. Жмите на текст вида "AuthMe-5.6.0-SNAPSHOT.jar" для скачивания. Поместите плагин в папку /plugins/ и перезапустите сервер.

Permissions плагина AuthMe можно посмотреть здесь. Отсюда мы и скопируем наши первые четыре права для гостей:

    - authme.player.register
    - authme.player.login
    - authme.player.*
authme.player.* в нашем случае, в принципе, не нужно. Оно здесь лишь для примера

Что же они означают?

  • - authme.player.register - позволяет гостю сервера зарегистрироваться командой /register password password. После регистрации игроку придется перезайти на сервер
  • - authme.player.login - позволяет гостю войти в свой аккаунт командой /login password
  • - authme.player.* - позволяет использовать любые permissions, которые идут после authme.player. Иными словами, мы могли бы не добавлять первые два права доступа, а добавить лишь последнее - и игрок все равно смог бы зарегистрироваться и войти.

Внизу прав доступа в группе "Guest" мы видим следующее:

options:
  prefix: '&f[Guest] &f'
  suffix: '&7'
  default: true
Название группы, префикс, суффикс и статус

Что это означает:

  • prefix: '&f[Guest] &f' - Префиксом является то, что будет отображаться перед ником игрока, когда он пишет в чат. В нашем случае &f означает текст [Guest] белого цвета - в строчке чата "[Guest] Anton: всем привет" слово "[Guest]" будет отображаться в белом цвете. Смотрите здесь список цветов для плагина EssentialsX.
  • suffix: '&7' - Суффикс отображается после ника игрока. В нашем случае суффикса нет, поэтому можно оставить всё как есть.
  • default: true - эта строчка означает, что все игроки, входящие на сервер, будут по умолчанию помещаться именно в группу "Гость". Если вы хотите, чтоб все игроки по умолчанию могли строить и играть без вашего вмешательства - уберите эту строчку отсюда и вставьте под группу "Player".

Настройка группы "Игрок"

В правах группы "Player" видно следующее:

- essentials.build.*
- authme.player.*
- essentials.tpa
- essentials.tpahere
- essentials.tpaccept
- essentials.back
- essentials.hat
- essentials.home
- essentials.sethome
- essentials.sethome.multiple
- essentials.delhome
- -essentials.build.place.lava
Набор прав доступа для группы "Игрок"

Пояснения по каждому праву доступа:

  • essentials.build.* - эта группа получает право строить на сервере (если установлен плагин EssentialsXAntiBuild)
  • authme.player.* - см. права группы "Гость"
  • essentials.tpa - права на запрос телепорта к другому игроку
  • essentials.tpahere - права на запрос на перенос другого игрока к себе
  • essentials.tpaccept - права на принятие запросов, упомянутых выше
  • essentials.back - права на телепорт в место, которое вы недавно покинули (например, вы были в пещере, написали /home чтобы вернуться домой, а теперь пишете /back чтобы вернуться в пещеру)
  • essentials.hat - права на установку себе определенных видов "шляп"
  • essentials.sethome - права на создание "дома" (места, куда вы телепортируетесь командой /home)
  • essentials.sethome.multiple - права на создание множества домов
  • essentials.delhome - права на удаление ваших домов

Все права плагина EssentialsX можно посмотреть здесь. По последнему же праву посмотрим подробнее.

Сам текст права доступа составлен необычным образом, с двумя черточками перед ним: - -essentials.build.place.lava. Если бы черточка была одна, как и везде, это бы позволяло этому праву работать в этой группе "Игрок". Но так как черточек две, это запрещает работать этому праву. Таким образом, игроки из этой группы не смогут помещать лаву на любые объекты в игре.

Настройка группы "Донатор"

В группе "VIP" будут некоторые дополнительные функции, которые можно разрешить донаторам.

inheritance:
- user
permissions:
- authme.player.*
- essentials.item
- essentials.keepinv
Права для группы "Донатор"

Что такое inheritance? Это наследование прав доступа от другой группы. Например, в нашем случае права наследуются от группы "Игрок", поэтому мы вполне можем не указывать "authme.player.*" в группе "Донатор".

  • essentials.item - позволяет использовать команду /i (например /i cobblestone 64), чтобы выдать себе любые блоки. Команды EssentialsX можно посмотреть здесь.
  • essentials.keepinv - позволяет не потерять инвентарь в случае смерти. Удобно для донаторов.

Настройка группы "Модератор"

Модератор, помимо прав донатора, получает также доступ к редактору карты.

- essentials.item
- essentials.keepinv
- worldedit.*
Звездочка означает доступ ко всем командам WorldEdit

Права редактора карты WorldEdit можно посмотреть здесь.

Настройка группы "Администратор"

Права администратора безграничны - ему разрешено всё.

- '*'
- worldedit.*

Право, выглядящее как - '*' позволяет администратору иметь доступ ко всем командам и права доступа. Второе право - worldedit.* вполне можно удалить - оно дублирует вышенаписанное.

Как добавить админов

Полный список команд плагина PermissionsEx можно посмотреть здесь. А мы же ознакомимся с базовыми командами.

/pex group User user add Oleg444 - команда добавляет игрока Oleg444 в группу "Игрок"

/pex group VIP user add Artem150 - добавляем игрока Artem150 в донаторы.

/pex group User user remove Oleg444 - удаляем Oleg444 из "Игроков". Теперь он в группе по умолчанию "Гости".

Если вкратце, это практически все команды, которые вам понадобятся при работе с PermissionsEx.

С любовью,
команда Ru-hoster ❤