Вопрос WorldGuard как разрешить disable-player-trampling для owners региона?

Ядро
Paper

mimik

Пользователь
Сообщения
1
Плагин
worldguard
Ядро сервера
  1. Spigot
  2. Paper
Версия сервера
  1. 1.21
Память сервера ОЗУ
12Gb
Ссылка
https://dev.bukkit.org/projects/worldguard
Подскажите, пожалуйста, возможно ли реализовать следующее: запретить вытаптывание урожая всем игрокам в заприваченном регионе с помощью WorldGuard, но оставить возможность вытаптывать его владельцам и участникам региона? В идеале, чтоб это было по умолчанию, ну или хотя бы с помощью команд-флагов.
Прописал, но по-прежнему, не могу... Возможно ли, что необходимо приоритет поменять, как это сделать?
 
Да, это вполне реализуемо в WorldGuard. Проблема, которую вы описываете, стандартно решается правильной настройкой флагов и приоритетов регионов.

Скорее всего, у вас есть два конфликтующих региона: ваш основной регион и регион с более низким приоритетом (например, глобальный регион global), который запрещает вытаптывание для всех. WorldGuard всегда применяет флаги из региона с наивысшим приоритетом.

Вот пошаговое решение.

Способ 1: Настройка флага trample в вашем регионе (Предпочтительный)​

Это самый прямой и правильный способ.

  1. Создайте или выделите ваш регион.
    Убедитесь, что вы внутри него.
    bash

    Copy

    Download
    /rg pos1
    /rg pos2
    /rg define <имя_региона>
  2. Установите флаг trample для вашего региона.
    Этот флаг контролирует вытаптывание farmland (грядок).
    bash

    Copy

    Download
    # Разрешить вытаптывание ВЛАДЕЛЬЦУ региона
    /rg flag <имя_региона> trample allow

    # Разрешить вытаптывание ЧЛЕНАМ региона (тем, кого вы добавили)
    /rg flag <имя_региона> trample members
    Важно: Не используйте здесь значение deny, так как это будет запрещать всем, включая владельца.
  3. Проверьте список флагов региона:
    bash

    Copy

    Download
    /rg info <имя_региона>
    В списке флагов вы должны увидеть что-то вроде trample = members.
Что происходит: Когда игрок находится внутри вашего региона, WorldGuard проверяет его флаги. Для флага trample он видит правило: "Владельцу и участникам разрешено". Все остальные игроки (не-владельцы и не-участники) не подпадают под это правило, и для них флаг считается как "false" или "not set", что означает запрет.

Способ 2: Решение проблемы с приоритетами (если Способ 1 не сработал)​

Если после настройки флага trample вы (или участники) всё равно не можете вытаптывать грядки, значит, существует другой регион с более высоким приоритетом, который запрещает это действие для всех (trample = deny).

Чаще всего это регион global.

Как это исправить:

  1. Увеличьте приоритет вашего региона. Приоритет по умолчанию у нового региона — 0. Чем число больше, тем приоритет выше.
    bash

    Copy

    Download
    /rg setpriority <имя_региона> 10
    Теперь флаги вашего региона будут иметь приоритет над флагами глобального региона.
  2. Альтернативно, настройте глобальный регион.
    Если вы администратор и хотите глобально запретить вытаптывание, но оставить возможность разрешать его в приватах, нужно правильно настроить global.
    bash

    Copy

    Download
    # В глобальном регионе устанавливаем запрет по умолчанию
    /rg flag global trample deny
    После этого в своих приватных регионах вы сможете "переопределить" этот запрет с помощью Способа 1, так как ваш личный регион будет иметь более высокий приоритет.

Итог и итоговая последовательность команд​

Вероятнее всего, вам нужно выполнить всего две команды:

bash

Copy

Download
# 1. Создать регион (если ещё не создан)
/rg define myfarm

# 2. Установить флаг, разрешающий вытаптывание вам и вашим друзьям
/rg flag myfarm trample members

# 3. (Опционально, если есть конфликт) Повысить приоритет региона
/rg setpriority myfarm 10
После этого:

  • Вы (владелец) и добавленные вами участники (/rg addmember myfarm НикИгрока) сможете вытаптывать грядки.
  • Все остальные игроки не смогут этого делать в пределах вашего региона.
 
Назад
Сверху Снизу