Установка плагина:
1) Скачать сам плагин, свежую версию ВСЕГДА можно найти по ЭТОЙ ссылке.
После скачивания архива мы обнаружим в нём следующие файлы:
2)Перемещаем (копируем) файлы (ChatManager, Modifyworld, Permissions, PermissionsEx) в папку плагинов вашего сервера (путь для примера: C:\Server\plugins)
3) Запускаем сервер, дожидаемся надписи "Done" в консоли сервера и останавливаем его.
4) Идём в папку Plugins и видим следующие:
Если вы сделали всё правильно и увидели созданные плагином папки, то можете считать что плагин установлен.Настройка PermissionsEx:
Для начала давайте рассмотрим файл permissions.yml по адресу (ваш сервер\plugins\PermissionsEx). Ремарка: файлы с расширением.yml можно просматривать ЛЮБЫМ текстовым редактором, но для удобства рекомендую пользоваться Notepad++ (скачать его можно )Открыв файл мы увидим следующие:
По порядку:groups: //не трогаем данное слово, оно указывает на то, что ниже будут идти группы и их permissions.
default: //название группы в неё попадают все только что зашедшие на сервер пользователи, если конечно вы не прописали их в другую группу.
default: true // данный параметр задаёт группу, как группу по-умолчанию. это означает, что все права этой группы будет иметь любой игрок, для которого не определены другие группы и/или исключения.
permissions: //всё что идёт ниже, это собственно и есть сами "права" для группы, туда нужно прописывать permissions от различных плагинов установленных на вашем сервере.
- modifyworld.* //возможность "модифицировать" мир, не рекомендую трогать данный параметр. Ремарка: на самом деле у параметра "modifyworld" намного больше значений, но поскольку это небольшой FAQ и здесь рассказывается только об самом главном я не стал пояснять этот параметр, если вам интересно вы можете почитать официальную документацию на английском по ЭТОЙ ссылке.Теперь давайте рассмотрим уже настроенный permissions для нескольких плагинов.
groups: default: default: true permissions: - modifyworld.* - commandbook.spawn - commandbook.who - commandbook.say - commandbook.msg - myhome.home.soc.* - iConomy.access - iConomy.bank.access - iConomy.bank.deposit - iConomy.bank.join - iConomy.bank.join.multiple - iConomy.bank.leave - iConomy.bank.list - iConomy.bank.main - iConomy.bank.main.change - iConomy.bank.main.set - iConomy.bank.main.view - iConomy.bank.transfer - iConomy.bank.transfer.multiple - iConomy.bank.withdraw - iConomy.list - iConomy.payment - iConomy.rank - jobs.join.* - jobs.world.* - lwc.protect - iConomyChestShop.shop.create - iConomyChestShop.shop.create. - iConomyChestShop.shop.exclude. - iConomyChestShop.shop.buy - iConomyChestShop.shop.sell - iConomyChestShop.command.iteminfo - commandbook.call - commandbook.time.check - commandbook.rules - myhome.home.basic.home - myhome.home.basic.set - myhome.home.basic.delete - myhome.home.soc.invite Moder: default: false inheritance: - Default permissions: - modifyworld.* - commandbook.kick - commandbook.bans.ban - commandbook.bans.unban - commandbook.shock.other - commandbook.rocket.other - commandbook.shock - commandbook.rocket - commandbook.mute - commandbook.teleport.* - commandbook.spawn - commandbook.kit.list - commandbook.who - commandbook.say - commandbook.msg - worldgurad.god - worldguard.ungod - worldguard.god.other - worldguard.ungod.other - worldguard.heal.* - worldguard.slay.* - myhome.* - iConomy.access - iConomy.bank.access - iConomy.bank.deposit - iConomy.bank.join - iConomy.bank.join.multiple - iConomy.bank.leave - iConomy.bank.list - iConomy.bank.main - iConomy.bank.main.change - iConomy.bank.main.set - iConomy.bank.main.view - iConomy.bank.transfer - iConomy.bank.transfer.multiple - iConomy.bank.withdraw - iConomy.list - iConomy.payment - iConomy.rank - jobs.join.* - jobs.world.* - commandbook.whereami.compass - commandbook.whereami - lwc.protect - iConomyChestShop.shop.create - iConomyChestShop.shop.create. - iConomyChestShop.shop.exclude. - iConomyChestShop.shop.buy - iConomyChestShop.shop.sell - iConomyChestShop.command.iteminfo - commandbook.call - worldedit.navigation.jumpto - worldedit.navigation.thru - commandbook.time.check - commandbook.rules - lwc.mod - myhome.home.basic.home - myhome.home.basic.set - myhome.home.basic.delete - myhome.home.soc.invite - vanish.* Admins: default: false inheritance: - Moder permissions: - "*" users: admin: group: - Admins permissions: null Moderator: group: - Moder permissions: nullДанный 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 и он будет работать.
Данная статья взята с rubukkit.org
What is PermissionsEx?
PermissionsEx (PEX) is a new permissions plugin, based on Permissions ideas and supports all of its features. But PEX is more! It offers different backends, powerful ingame management, fine grained restrictions for world modification.
Please use forum for help/discussions.
Current features
- Support for UUIDs as of version 1.21
- Several backend support. Currently bundled backends is File (YAML) and SQL (MySQL, SQLite). Also it’s possible to add your own.
- YAML backend, with new, fully rethinked, config schema. Now all user, groups and their permissions are stored in one file – permission.yml. File name can also be adjusted.
- SQL backend, most delicious. Currently MySQL and SQLite supported, but other DB (like Postgre) are possible too. PEX deploys the DB scheme (tables and initial data) automatically. This means, that you only need to provide data on how to connect to the db, everything else PEX will handle by itself.
- Flexible architecture and API – you can change a lot programmatically.
- Rich chat/console command interface. You can do almost everything ingame. Command list below.
- Modifyworld – Permission-based restrictions mechanism (we call it “modifyworld”), which provides the possibility to control players abilities, such as destroying/placing blocks, riding carts/boats or even getting spotted by mobs and much more. Available from its project page
- Multigroup inheritance. User, as well as Group, can be member of several groups. And inherit their permissions, options and prefix/suffix.
- Permissions based upon Regular Expressions. This mean you can use regular expressions. Example: modifyworld.blocks.(destroy|place).(3|12) – this permission allow place or destroy only sand (12) or dirt (3) blocks. There is still limitation on dot usage in your regexps – dots are escaped by default. Raw regex flag is also available and explained on the wiki.
- Multiworld permissions. Just don’t specify world and permission would work in any world.
- Multiworld inheritance. You can inherit different groups in different worlds.
- Perfomance friendly. Low-level caching helps a lot when you have 100+ online users
- Promotional/Demotional system. You can assign ranks to groups and promote/demote users to higher/lower ranked group. NEW: new you can make serveral ranking ladders.
- World-inheritance – permissions/option of one world can be inherited by another world.
- Timed Permissions – you can give user permission only for some amount of time.
- As of version 1.21.1, PermissionsEx automatically updates to keep you up to date with the latest bugfixes and new features. The automatic update functionality will only perform updates between minor releases (for example only 1.21.1->1.21.2, not 1.21.3->1.22). To disable it, set the updater option to false in plugins/PermissionsEx/config.yml.
- Bukkit Permissions (SuperPerms) compatible.
To disable error reporting, create a file called `report-disable` in the plugins/PermissionsEx folder. Note that enabling this option means you WILL NOT get any support for errors because the information published (permissions file, configuration, and versions) is essential to resolving issues.
И так, наверно у каждого из вас, кроме опытных держателей серверов имеются проблемы с настройкой прав доступа.
Лично я использую плагин PermissionsEx, так как считаю что это самый лучший плагин распределения прав доступа для серверов.
Что нам понадобится:
1. Notepad++
2. Сам плагин. Последнюю версию можно всегда скачать .
3. Прямые руки. (Обязательный пункт)
И так, начнем.
1. Скачиваем плагин, распаковываем. В папке есть 3 файла:
2. Закидываем файлы в папку с плагинами, запускаем сервер, останавливаем.
Там появились 3 папки:
ChatManager и ModifyWorld
3. Открываем папку PermissionsEx. В этой папке открываем файл permissions.yml с помощью Notepad++
И видим это:
И так, по порядку:
groups:
//не трогаем данное слово, оно указывает на то, что ниже будут идти группы и их permissions.
default:
//название группы в неё попадают все только что зашедшие на сервер пользователи, если конечно вы не прописали их в другую группу.
default: true
// данный параметр задаёт группу, как группу по-умолчанию. это означает, что все права этой группы будет иметь любой игрок, для которого не определены другие группы и/или исключения.
//всё что идёт ниже, это собственно и есть сами «права» для группы, туда нужно прописывать permissions от различных плагинов установленных на вашем сервере.
Groups default: default: true permissions: - modifyworld.* - commandbook.spawn - commandbook.who - commandbook.say - commandbook.msg - myhome.home.soc.* - iConomy.access - iConomy.bank.access - iConomy.bank.deposit - iConomy.bank.join - iConomy.bank.join.multiple - iConomy.bank.leave - iConomy.bank.list - iConomy.bank.main - iConomy.bank.main.change - iConomy.bank.main.set - iConomy.bank.main.view - iConomy.bank.transfer - iConomy.bank.transfer.multiple - iConomy.bank.withdraw - iConomy.list - iConomy.payment - iConomy.rank - jobs.join.* - jobs.world.* - lwc.protect - iConomyChestShop.shop.create - iConomyChestShop.shop.create. - iConomyChestShop.shop.exclude. - iConomyChestShop.shop.buy - iConomyChestShop.shop.sell - iConomyChestShop.command.iteminfo - commandbook.call - commandbook.time.check - commandbook.rules - myhome.home.basic.home - myhome.home.basic.set - myhome.home.basic.delete - myhome.home.soc.invite Moder: default: false inheritance: - Default permissions: - modifyworld.* - commandbook.kick - commandbook.bans.ban - commandbook.bans.unban - commandbook.shock.other - commandbook.rocket.other - commandbook.shock - commandbook.rocket - commandbook.mute - commandbook.teleport.* - commandbook.spawn - commandbook.kit.list - commandbook.who - commandbook.say - commandbook.msg - worldgurad.god - worldguard.ungod - worldguard.god.other - worldguard.ungod.other - worldguard.heal.* - worldguard.slay.* - myhome.* - iConomy.access - iConomy.bank.access - iConomy.bank.deposit - iConomy.bank.join - iConomy.bank.join.multiple - iConomy.bank.leave - iConomy.bank.list - iConomy.bank.main - iConomy.bank.main.change - iConomy.bank.main.set - iConomy.bank.main.view - iConomy.bank.transfer - iConomy.bank.transfer.multiple - iConomy.bank.withdraw - iConomy.list - iConomy.payment - iConomy.rank - jobs.join.* - jobs.world.* - commandbook.whereami.compass - commandbook.whereami - lwc.protect - iConomyChestShop.shop.create - iConomyChestShop.shop.create. - iConomyChestShop.shop.exclude. - iConomyChestShop.shop.buy - iConomyChestShop.shop.sell - iConomyChestShop.command.iteminfo - commandbook.call - worldedit.navigation.jumpto - worldedit.navigation.thru - commandbook.time.check - commandbook.rules - lwc.mod - myhome.home.basic.home - myhome.home.basic.set - myhome.home.basic.delete - myhome.home.soc.invite - vanish.* Admins: default: false inheritance: - Moder permissions: - "*" users: admin: group: - Admins permissions: null Moderator: group: - Moder permissions: null
Данный 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 нужно чётко соблюдать последовательность, один лишний пробел и параметр не будет работать.
Примечание от idg_dima: YAML отлично работает с лишними проблемами или даже с пустыми строками, единственное, от чего он ломается — табуляция.
И приносим свои изменения за задержку при проверки статьи, были очень заняты кое-какими делами, в том числе и подготовкой сервера к переезду.
Все плагины в Minecraft любой версии имеют свои установки прав или разрешений на определённые команды плагина и действия. Эти разрешения необходимо прописывать в файле permissions.yml , который находится в папке от плагина прав (например: PermissionsEx ).
Все права на плагины находятся в файле permissions.yml .
В этом файле должно всё записываться так:
groups:
default:
default: true
permissions:
- lwc.protect
- commandbook.kit
- commandbook.kit.list
- commandbook.spawn
Moder:
inheritance:
- default
default: false
permissions:
- iConomy.holdings.others
- permission: iConomy.accounts.take
- iConomyChestShop.shop.create
- ChestShop.shop.create
Admin:
inheritance:
- Moder
default: false
permissions:
- authme.admin.changepassword
- authme.admin.reload
- authme.admin.unregister
- authme.admin.register
Helper:
inheritance:
- default
default: false
permissions:
- commandbook.mute
- commandbook.unmute
- commandbook.msg
- commandbook.broadcast
- commandbook.return
- commandbook.teleport
- commandbook.teleport.other
users:
Kratos:
group:
- Admin
Nexus:
group:
- Helper
Bezumets:
group:
- Moder
Самое важное в permissions.yml это сохранение табуляции в данных. Если её нарушить то ничего работать не будет.
Как выглядит и что обозначает слово "табуляция" в файле permissions.yml :
Если обьяснять совсем уж простым языком, это сохранение определённого числа пробелов от левого края отдельных разделов и параметров файла. Тоесть должно быть:
(Для простоты понимания перечислю всё в следующем виде)
groups, users: 0 пробелов .
Названия групп в groups, Ники игроков в users: 2 пробела .
Параметры, permissions и прочее: 4 пробела .
Разделы groups и users не могут повторяться и сществуют в 1 экхемпляре. В описываються права группам игроков (Администраторам, Модераторам, Хелперам, VIP), здесь никаких ников игроков быть не может, только сами права permissions плагинов, записанные как:
-<пробел>(permission)
Commandbook.teleport
default: true - означает что это право быдет выдано по умолчанию всем игрокам зашедшим на сервер, оно должно существовать в 1 экземпляре, в остальных группах прав должно быть default: false
inheritance: указывает группу выступающей родительской, как напримере выше, группа Moder берёт права у группы default и дополняет их своими, а Admin берёт за основу своих прав права группы Moder в которую включены права default .
Раздел users содержит в себе ники пользователей и непосредственно группу в которой они состоят. Вместо группы может быть permissions если необходимо указать определённые права какому то пользователю, а не группе. Тут как и в разделе groups необходимо сохранять туже табуляцию.
Все вопросы в комментарии.
Если вы задумали создать свой сервер или проект, то вам скорее всего нужен будет плагин, который делит всех игроков на разные группы. К примеру вам нужны модераторы и хелперы, как же внести их в специальные группы и дать определенные права? На помощь приходит плагин с названием "PermissionsEX". Именно такой плагин и стоит у нас на серверах.
Благодаря этому плагину вы сможете вносить игроков в специальные группы и давать им разные права. Так же вплагин даёт возможность сделать глобальный и локальный чат, изменить цвет ника.
Настраиваем плагин:
Для начала нужно зайти в файл permissions.yml и немного подправить его.
Когда откроете файл, то увидите следующее:
Разберем каждое составляющее.
groups: - После этого параметра будут идти группы и права.
default: - группа по умолчанию. Туда попадут все игроки, которые только зашли.
default:true - с помощью этого параметра можно установить группу по умолчанию.
permissions: - ниже этого параметра можно вписать права для определенной группы.
modifyworld.* - Возможность вносить игрокам изменения в мир. Лучше оставить пустым.
Пример группы
Команды:
Служебные
Команда | Permission | Описание |
---|---|---|
/pex | permissions.manage | Показывает помощь по PEX |
/pex toggle debug | permissions.manage | Вкл./откл. режим отладки (создает много отладочной информации в server.log) |
/pex user |
permissions.manage. |
Проверить право |
/pex reload | permissions.manage.reload | Перезагружает плагин |
/pex config |
permissions.manage.config | Выводит значение |
/pex backend | permissions.manage.backend | Вывести используемые на данный момент бэкенды. |
/pex backend |
permissions.manage.backend | Change the permissions backend on-the-fly (Use with caution!) Note that this will only change the backend on-the-fly, it will not save the change in the config file, nor will it convert anything. This is for testing only.) |
/pex hierarchy | permissions.manage.users | Показывает полную иерархию игроков/групп |
/pex dump |
permissions.manage.dump | Создает дамп пользователей и групп в выбранный формат |
Управление правами игроков
Команда | Permission | Описание |
---|---|---|
/pex users | permissions.manage.users | Показывает список всех записанных пользователей. И игроков сервера |
/pex user |
permissions.manage.users | Показывает права игрока |
/pex user |
permissions.manage.users.prefix. |
Установить игроку |
/pex user |
permissions.manage.users.suffix. |
Установить игроку |
/pex user |
permissions.manage.users. |
Удалить игрока |
/pex user |
Дать право |
|
/pex user |
permissions.manage.users.permissions. |
Забрать право |
/pex user |
Дать временное право |
|
/pex user |
permissions.manage.users.permissions.timed. |
Забрать у игрока |
/pex user |
permissions.manage.users.permissions. |
Выставить опцию |
Управление правами групп игроков
Команда | Permission | Описание |
---|---|---|
/pex user |
Показать список групп в которых состоит игрок |
|
/pex user |
permissions.manage.membership. |
Добавить игрока |
/pex user |
permissions.manage.membership. |
Установить группу |
/pex user |
permissions.manage.membership. |
Удалить игрока |
Управление правами групп
Команда | Permission | Описание |
---|---|---|
/pex groups | permissions.manage.groups.list | Показать все зарегистрированные группы |
/pex default group | Показать группу по-умолчанию | |
/pex set default group |
permissions.manage.groups.inheritance | Установить группу |
/pex group |
permissions.manage.groups.prefix. |
Установить группе |
/pex group |
permissions.manage.groups.suffix. |
Установить группе |
/pex group |
permissions.manageups.create. |
Создать группу |
/pex group |
permissions.manage.groups.remove. |
Удалить группу |
/pex group |
Список родительских групп для группы |
|
/pex group |
permissions.manage.groups.inheritance. |
Установить группе |
/pex group |
Показать все права группы |
|
/pex group |
permissions.manage.groups.permissions. |
Дать право |
/pex group |
permissions.manage.groups.permissions. |
Забрать право |
/pex group |
Дать временное право |
|
/pex group |
permissions.manage.groups.permissions.timed. |
Забрать временное право |
/pex group |
permissions.manage.groups.permissions. |
Выставить опцию |
/pex group |
permissions.manage.groups.weight. |
Показать/установить вес группы |
Управление игроками в группах
Команда | Permission | Описание | ||
---|---|---|---|---|
/pex group |
permissions.manage.membership. |
Показать всех игроков в группе |
||
/pex group |
permissions.manage.membership. |
Добавить игрока/игроков |
||
/pex group |
permissions.manage.membership. |
Удалить игрока/игроков из группы |
||
/pex promote |
permissions.user.promote. |
Повысить игрока |
||
/pex demote |
permissions.user.demote. |
Понизить игрока |
permissions.manage.worlds | Показать информацию о наследственности мира |
/pex world |
permissions.manage.worlds.inheritance | Установить родительский мир/миры |
Установка:
2. Кидаем в папку Plugins.
3. Перезагружаем сервер.