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


Автор | |
---|---|

Последняя версия |
5.0.147 (4 мая 2020 г.) |

Лицензия |
MIT License |

Исходный код |
Доступен |

Совместимо с |
1.8.8 — 1.15.2 (возможен запуск устаревших версий на 1.7.10) |

Ссылки |


**LuckPerms (LP)** — плагин, предоставляющий множество инструментов для разграничения прав между игроками. Позволяет создавать группы прав и посерверно настраивать их работу, синхронизировать все изменения между серверами различными средствами. Имеет возможность добавлять префиксы и суффиксы при установке любого плагина чат-менеджера. Поддерживает серверные платформы Bukkit, Spigot, Nukkit, Sponge, BungeeCord и Velocity.

### Куда можно установить LuckPerms?

- Если вы используете сеть серверов, вы должны установить LuckPerms в папку плагинов на каждом сервере, на котором вы хотите использовать LuckPerms.
- Если вы также хотите использовать LuckPerms для работы на прокси-сервере
`BungeeCord`

или`Velocity`

, вам следует поместить LuckPermsBungee.jar в папку плагинов BungeeCord. - Если вы решите установить LuckPerms только на прокси-сервер BungeeCord, это не повлияет на проверку прав доступа, выполняемую плагинами на любых внутренних серверах
*(Spigot/Sponge)*. В другом случае потребуется установить LuckPerms на все необходимые сервера.

### Можно ли использовать LuckPerms только на BungeeCord или Velocity?

- Да, можно. Но система разрешений, используемая в BungeeCord, полностью отделена от систем, используемых на внутреннем сервере
`Spigot/Sponge`

, имейте это ввиду.

## Установка

**Примечание:** Плагин работает на версии Java не ниже 8 версии. При первом запуске плагина необходим доступ к Интернету, чтобы загрузить соответствующие библиотеки.

### Установка на все необходимые сервера.

- Загрузите последнюю версию плагина LuckPerms для нужной серверной платформы. Официальная страница для загрузки.
- Поместите плагин с расширением
**.jar**в папку`/plugins/`

или`/mods/`

(в зависимости от серверной платформы). - Полностью перезапустите сервер
*(не используя /reload)*.

### Основные настройки и настройка синхронизации.

Конфигурационные файлы плагина расположены в папке `LuckPerms`

. Главным конфигурационным файлом является `config.yml`

или `config.conf`

(в зависимости от серверной платформы).

После того, как LuckPerms был установлен на все необходимые сервера, можно приступать к этапу настройки синхронизации. Для этого каждый сервер с установленным LuckPerms должен быть подключен к одной системе хранения информации. Это может быть: `MySQL`

, `MariaDB`

, `PostgreSQL`

или `MongoDB`

. Само собой, LP должен быть подключен к одной единой базе данных. Выключите сервер, откройте основной файл конфигурации и обратить особое внимание на следующие параметры:

`server`


Этот параметр отвечает за название сервера. По умолчанию имеет значение `global`

. Этот параметр необходим для посерверной настройки прав.

`storage-method`


Этот параметр отвечает за метод хранения конфигурации прав и групп. В нашем случае, он может иметь следующие значения, в зависимости от типа используемой системы хранения данных: ``mysql``

, ``mariadb``

, ``postgresql``

или ``mongodb``

.

Не забудьте внести аутентификационные данные для подключения к БД в разделе `data`

.

`messaging-service`


«Messaging Service» — это функция LuckPerms, которая позволяет серверам отправлять запрос на другие серверы в сети при внесении изменений. Она также позволяет отправлять записи журнала по сети.

- Если вы используете несколько серверов, которые не подключены к одному прокси, но используют одну и ту же базу данных, установите для этого параметра значение
`sql`

. - Если вы работаете в небольшой сети с одним прокси-сервером BungeeCord/Velocity, вам следует установить значение параметра на
`pluginmsg`

. - Если вы используете прокси-сервер LilyPad, установите значение этого параметра на
`lilypad`

. - Если вы используете сеть с несколькими прокси-серверами BungeeCord, рекомендуется установить сервер Redis и установите значение этого параметра на
`redis`

. Не забудьте внести аутентификационные данные для подключения к Redis в разделе`redis`

.

## Методы хранения данных

За метод хранения данных отвечает вышеупомянутый параметр `storage-method`


Для удаленных систем хранения данных возможны значения:

`MySQL`

`MariaDB`

(предпочтительнее, чем MySQL)`PostgreSQL`

`MongoDB`


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

Для локальных систем хранения данных возможны значения:

`H2`

(предпочтительнее, чем SQLite)`SQLite`


Не рекомендовано использовать вообще, если не знаете зачем это.

Для хранения данных в редактируемых текстовых документах возможны значения:

`YAML`

(.yml файлы)`JSON`

(.json файлы)`HOCON`

(.conf файлы)

Рекомендуется использовать, если вам не нужна синхронизация данных между серверами или у вас просто один сервер.

Примеры редактируемых текстовых файлов можно найти здесь.

## Возможные ошибки

### Использование LuckPerms на ядре CraftBukkit

Если ваш сервер работает на ядре CraftBukkit и настройка `online-mode=false`

(сервер принимает игроков без лицензионной версии игры), LuckPerms не будет работать. Это связано с ошибкой CraftBukkit: `AsyncPlayerPreLoginEvent`

, которая до сих пор не решена.

Это проблема не относится к серверным платформам Spigot, Nukkit, Sponge, BungeeCord и Velocity.

### Essentials и LuckPerms

Если вы используете плагин «Essentials» на своем сервере, вам, возможно, придется выполнить некоторые дополнительные действия, чтобы он хорошо работал с LuckPerms.

#### Если на вашем сервере установлен плагин Essentials

Если вы используете Essentials на своем сервере, необходимо:

- Обновить до EssentialsX
*(форк Essentials)*. - Удалить раздел
`player-commands`

в`config.yml`

плагина EssentialsX.

#### Если вы используете плагин Essentials как чат-менеджер

Если вы используете Essentials для оформления чата, отображения префиксов и суффиксов, его все также необходимо обновить до EssentialsX. Также для корректной работы может потребоваться установка плагина Vault.

### Несовместимость с версии 5

Автор LuckPerms изменил API для возможности другим плагинам работать с ним. В связи с этим, начиная с LuckPerms версии 5 и выше, могут наблюдаться проблемы работы LuckPerms со множеством устаревших плагинов или тех плагинов, что ещё не имеют поддержку нового API.

Однако, проблему совместимости может решить расширение для LuckPerms, официально выпущенное разработчиком. Инструкцию по установке вы можете найти здесь.