EssentialsX: Восстанавливаем доступ к командам /god, /heal и /ext

Руководство EssentialsX: Восстанавливаем доступ к командам /god, /heal и /ext

Поддерживаемые версии
  1. 1.8
  2. 1.9
  3. 1.10
  4. 1.11
  5. 1.12
  6. 1.13
  7. 1.14
  8. 1.15
  9. 1.16
  10. 1.17
  11. 1.18
  12. 1.19
  13. 1.20
  14. 1.21

Введение:​

Так часто бывает, что в EssentialsX перестают работать такие команды как /god, /heal и /ext.
И у этого обычно есть конкретная причина, а именно перехват этих команд другими плагинами. Так плагин WorldGuard перехватывает команды god и heal, а WorldEdit или FAWE перехватывает команду ext. Решить данную проблему возможно 5 способами.​

Способ первый (ленивый):​

*Эффективность данного способа — 100%

Суть данного способа в том, чтобы просто забить на проблему. В плагине EssentialsX предусмотрены запасные команды, алиасы (aliases), именно их в данном варианте я и предлагаю использовать. Они до боли просты, нужно лишь добавить впереди латинскую букву «e» и команды станут egod, eheal и eext. Данный простой метод прекрасно подойдет для школосерверов и серверов где администрация не способна лезть в конфиги и что-то, где-то настроить.

Однако есть у данного метода и практическая сторона. Все дело в команде ext. В плагине EssentialsX данная команда тушит игрока, а в плагинах WE и FAWE данная команда тушит пожар и предотвращает дальнейшее распространение огня по карте. Да у нее тоже есть алиасы, да и использование версии с двумя слешами (//ext ) тоже никто не отменял, но многим привычней будет формат именно /ext. А потому не вижу ничего плохого если для игрока вы оставите команду eext вместо ext.​

Способ второй (Конфигурация EssentialsX):​

*Эффективность данного способа — 50%. Помогает далеко не всем и частенько может слетать…

Данный способ описывается на большинстве ресурсов и в большинстве своем является самым правильным решением, но к сожалению помогает не всегда и может перестать работать после обновления плагинов или перезагрузки сервера!

Суть данного способа очень проста, перейдите в папку с плагинами вашего сервера и найдите там папку Essentials в ней найдите файл config.yml и откройте его через любой текстовый редактор, но я бы рекомендовал открывать именно через NotePad++. Далее в открывшемся файле найдите строчку overridden-commands и добавьте туда необходимые команды. Должно будет получится примерно так:​

YAML:
overridden-commands:
  - god
  - heal
  - ext

После этого перезагрузите сервер и проверяйте работоспособность.

На будущее вам в конфиге EssentialsX есть два крайне интересных и нужных параметра, а именно overridden-commands который принудительно заставляет те или иные команды работать через EssentialsX и disabled-commands который напротив убирает указанные команды из EssentialsX.​

Способ третий (Правим пермишены):​

*Эффективность данного способа — 20%. В работе данного метода я крайне сомневаюсь, так как мне лично он не помог. Но я знаю людей которые утверждают о его работоспособности, за которую я ручаться не берусь.

Третий способ можно использовать в связке со вторым. Его суть в распределении пермишенов по группам. Вам нужно разрешить пермишены EssentialsX и запретить пермишены WG, WE и FAWE. Сперва разберемся какие пермишены нам нужны у плагина EssentialsX.​

EssentialsX Permissions:​


КомандаПермишенОписание
/godessentials.godДает бессмертие игроку который использует команду.
/god <Игрок>essentials.god.othersДает бессмертие игроку чей ник указан после команды.
/healessentials.healЛечит игрока который использовал команду.
/heal <Игрок>essentials.heal.othersЛечит игрока чей ник указан после команды.
/extessentials.extТушит горящего игрока который использовал команду.
/ext <Игрок>essentials.ext.othersТушит горящего игрока чей ник указан после команды.

Все эти пермишены должны быть распределены по вашим группам и находится в состоянии true для своей работоспособности.

WorldGuard Permissions:​

КомандаПермишенОписание
/godworldguard.godДает бессмертие игроку который использует команду.
/god <Игрок>worldguard.god.otherДает бессмертие игроку чей ник указан после команды.
/healworldguard.healЛечит игрока который использовал команду.
/heal <Игрок>worldguard.heal.otherЛечит игрока чей ник указан после команды.

Данные пермишены также распределите по нужным вам группа, но уже в состоянии false.

WorldEdit / FAWE Permissions​

Команда
Пермишен
Описание
/ext​
worldedit.extinguish​
Помогает гасить огонь.​

Данный пермишен также выдаем нужной группе в состоянии false.
Для вступление в силу измененных параметров необходимо полностью остановить сервер и запустить его заново!
Шансы на успех крайне маленькие, но вроде как они есть. Данный способ не считаю эффективным.

Способ четвертый (Правим commands.yml):​

*Эффективность данного способа — 100%. Из всех выше приведенных способов этот не только самый эффективный, но и самый правильный. Однако на зарубежных форумах встречал утверждения, что он несет в себе опасность для сервера, но какую именно я так и не смог понять.

Сразу скажу, что данный способ по сути своей является костылем, но простым в эксплуатации и легким в настройке. Для начала в корне вашего сервера найдите файл commands.yml и с помощью текстового редактора (желательно использовать NotePad++) откройте его. Нас с вами будет интересовать пункт aliases, все команды указанные в параметре перехватываются на уровне ядра и не смогут быть заняты плагинами.
Так как же мы привяжем команду к EssentialsX чтобы она работала? Очень просто! В первом способе я уже упоминал, что в есть алиасы такие как egod, eheal и eext. Именно на базе них мы и создаем нужные алиасы в файле commands.yml
Если на вашем проекте игроки могут применять данные команды только на себя, но не на других игроков, то ваш конфиг должен будет выглядеть так:​
YAML:
aliases:
  god:
  - egod
  heal:
  - eheal
  ext:
  - eext
Однако если на вашем сервере игроки могут лечить или тушить других игроков, то при попытке ввести команду /heal <ник игрока> вы заметите, что лечите сами себя. Все дело в недостающем параметре $1 который необходимо добавить к алиасу. И тогда конфиг будет выглядеть так:​
YAML:
aliases:
  god:
  - egod $1
  heal:
  - eheal $1
  ext:
  - eext $1
При таком конфиге игроки смогут не только применять команды на себе, но и на других игроках!
Важно, после редактирования данного файла сервер необходимо перезагрузить! Иначе параметры не вступят в силу.

Способ пятый (Используем скрипт пользователя Groundbreaking):​

*Эффективность данного способа — 100%. Но восстанавливает только команды которые перехватывает WorldGuard. Команды WE и FAWE останутся нетронутыми.

Данный способ, по сути, с помощью скрипта пересоберет вам JAR-файл вашего WG, после чего плагин перестанет перехватывать такие команды, как: god, ungod, heal, locate, slay и stack. Как видите, команд даже больше, чем изначально указано в данном руководстве, но тут нет команд, которые перехватывает WE или FAWE. Но благо у вас есть еще четыре способа выше, чтобы вернуть себе контроль над командами.

Как использовать данный способ? Да очень просто! Переходим на этот ресурс:
You must be logged in to see this link.Скачиваем его и действуем строго по инструкции. Затем пересобранный JAR-файл вашего WG помещаем в папку с плагинами и запускаем сервер.​

──────── • ✤ • ────────​

Надеюсь данное руководство вам поможет. Если найдете какие либо ошибки или не точности расскажите о них в комментариях к данному руководству.
Автор
tenshik666
Просмотры
1 993
Первый выпуск
Обновление
Оценка
0.00 звёзд 0 оценок

Другие ресурсы пользователя tenshik666

Поделиться ресурсом

Последние обновления

  1. Пятый способ

    Добавлен пятый способ. Слегка улучшил оформление.
Назад
Сверху Снизу