GriefPrevention — Защита от гриферов

Логотип GriefPrevention

Версия: 1.11.2

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

Приватная территория

Это участок земли, принадлежащий отдельному игроку. Такая собственность не доступна другим игрокам для изменений и взаимодействий с различными объектами. Это позволяет обезопасить себя и свое имущества от чужого посягательства.

В начале игры для создания первого привата, можно использовать сундук. Shift+ПКМ установит его вместе с 2D-зоной 9х9 вокруг. Этот вариант отличается меньшей продолжительностью существования. Об этом подробнее в разделе ограничений ниже.

Основным способом создания и взаимодействия с приватом является золотая лопата. Нужно взять её, и кликнуть ПКМ  по двум блокам, которые станут противоположными углами параллелепипеда. Это означает, что все блоки внутри этой фигуры будут принадлежать только Вам. Особенности применения лопаты следующие:

  • Создание: Нажатие ПКМ по блоку создаст одну из двух меток. Появление второй метки автоматически сделает область приватной.
  • Редактирование: Нажатие ПКМ внутри привата покажет расположение меток. Повторное нажатие ПКМ по одной из меток и еще одно по другому блоку, переместит её на новое место.
  • Сброс выделения: Если вторая точка еще не выбрана, то первую можно сбросить, убрав из рук лопату.

Если все сделано верно, то в оставшихся углах возникнет светопыль, а рядом и между ней блоки золота, указывающие на места прохождения ребер параллелепипеда. Их уничтожение не дает предметов. Через некоторое время, обозначение пропадет и заменится на исходные блоки. Для того что бы вновь включить выделение, нажмите ПКМ по блоку привата с лопатой в руке.

Существует 2 вида локаций, 2D и 3D. Он определяется в момент создания исходя из настроек лопаты. Переключается консольной командой /cuboidclaims.

  • 2D: режим по умолчанию. Высота (разница между двумя метками) не учитывается. Высота такого привата всегда будет в интервале от 5 до максимальной высоты.
  • 3D: Зона определяется по двум противоположным углам/меткам. Очень гибкий вариант для деликатного выделения.

ВАЖНО: При подсчете размера территории не учитывается высота. Это означает, что создание 2D привата 10х10 (от -5 до «потолка») займет ту же площадь, что и 3D приват на 10х10х1. Вывод: всегда используйте 2D, если не требуется точное выделение.

GriefPrevention 2D область

GriefPrevention 3D область

Лопата обладает несколькими режимами работы:

  • Базовый (/bc) — создает и редактирует обычные приватные области.
  • Административный (/sc) — создает административные приваты без ограничений.
  • Разбивающий (/ac) — позволяет создать приват внутри существующего (такая область далее будет называться «подразделением»).

Еще одним инструментом является обычная палка.

  • ПКМ по земле сообщит о том, есть ли в этом месте приват. В случае успеха выделит территорию и сообщит в чате о владельце и дате создания.
  • Shift+ПКМ сообщает в чат количество приватов в радиусе 100 метров.

Для удаления введите /abandonclaim, находясь на территории.

Ограничения

Обычный игрок в начале игры обладает базовым количеством приватных блоков. В процессе игры за каждые 5 минут приобретает порции новых блоков. Это означает, что продолжительная игра на сервере дает возможность распространять свои земли с течением игры. Тем не менее, есть ограничение в виде максимального значения. Если на сервере предусмотрена игровая валюта, то дополнительные блоки можно купить с помощью консольной команды /buyclaim. Кроме того, администрация способна начислять бонусные блоки.

ВАЖНО: запас блоков не повышается, если игрок в течении 5-ти минут не переместился на минимальное расстояние. Это сделано для поощрения активных игроков, а не отсутствующих.

По количеству приватных территорий ограничений нет.

Периодичность начисления, его объем, лимит и прочее задается в конфигурации сервера.

Система доверия

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

  1. Accessors — могут входить на территорию и пользоваться кроватью.
    • /accesstrust <игрок>|<группа> или /at
  2. Container — могут входить на территорию и взаимодействовать с контейнерами, кроватями, растениями, животными, кнопками и рычагами.
    • /containertrust <игрок>|<группа> или /ct
  3. Builders — обладают правом редактировать приватную территорию.
    • /trust <игрок>|<группа> или /t
  4. Managers — способны изменить уровень прав и доступа для других игроков.
    • /permissiontrust <игрок>|<группа> или /pt

Другие команды

/untrust <игрок>|<группа> или /ut — отменяет доступ игрока или группы.

/untrustall <игрок>|<группа> или /ut — отменяет доступ игрока или группы ко всем вашим приватам.

/trustlist — показывает полный список доверенных лиц.

Флаги

Они дают тонкий контроль над правами и доступом на территории. К примеру, предоставить права одному игроку или целой группе на строительство, но запретить поджог кроме отдельного игрока.

Виды аргументов

  • <flag> — действие, событие или явление, которое будет разрешено или запрещено. Список с описанием далее в статье.
  • [source] — то, что вызывает <flag>. Например игрок — minecraft:player. Если аргумент не указан, то флаг будет установлен для всех «источников» без какого либо уточнения.
  • <target> — цель флага или то, на что направлено воздействие. Используется id (пример для земли -.minecraft:dirt).для определения предмета, существа или объекта. Если id не указывать, то плагин автоматически возьмет его у предмета из рук. Сочетание клавиш F3+H включяет подробный режим. В нем при наведении видны id под названием предмета.
  • <value> — само разрешение. true — можно, false — нельзя.
  • [context] — дополнительные параметры. Если указать default, то все новые приваты автоматически будут обладать этим правилом.

Консольные команды

  • /claimflagdebug или /cfd — Включение или выключение режима отладки правил.
  • /claimflag [<flag> [<source>] <target> <value> [context]] или /cf — Изменение правила.
  • /claimflaggroup <группа> [<flag> [<source>] <target> <value>] или /cfg — Изменение правил для отдельных групп.
  • /claimflagplayer <игрок> [<flag> [<source>] <target> <value>] или /cfp — Изменение правил для конкретного игрока.
  • /claimflagreset или /cfr — Сбрасывает настройки правил к значениям по умолчанию.

Доступные флаги

Список действий и событий, которые можно разрешить или запретить в регионе. В скобках () обозначен простой пример.

  • block-break — разрушение блоков. (Сломать блок земли.)
  • block-place — размещение блоков. (Установить блок земли.)
  • command-execute — выполнение команд. (Отправить сообщение через /msg.)
  • command-execute-pvp — выполнение команд во время PvP-боя. (Телепортироваться через /tp, сражаясь с игроком.)
  • enter-claim — вход на территорию. (Вход определенных игроков в зону привата.)
  • collide-block — соприкосновение с блоками. (Прохождение сквозь кирпич. Отключает коллизии.)
  • collide-entity — соприкосновение с существами. (Прохождение сквозь монстров. Отключает коллизии.)
  • entity-damage — получение урона от объектов. (Зомби не может нанести урон игрокам. Волки не могут съесть овец.)
  • entity-fall — получение урона от падения. (Игрок падает с большой высоты.)
  • entity-riding — езда на животных и транспорте. (Езда на лошадях, лодках и т.д.)
  • entity-spawn — спавн существ. (Появление моба из яйца, спавнера или других источников.)
  • entity-teleport-from — телепортация с территории.
  • entity-teleport-to — телепортация на территорию.
  • exit-claim — выход с территории. (Выход определенных игроков из зоны привата.)
  • explosion — взрыв. (Взрыв от TNT.)
  • explosion-surface — взрыв на поверхности или в воздухе. (Взрыв TNT под открытом небом.)
  • fire-spread — распространение огня. (Воспламенение соседних блоков.)
  • interact-block-primary — взаимодействие с блоками через ЛКМ. (Ударить Яйцо Дракона.)
  • interact-block-secondary — взаимодействие с блоками через ПКМ. (Открыть сундук.)
  • interact-entity-primary — взаимодействие с существами через ЛКМ. (Ударить цыпленка.)
  • interact-entity-secondary — взаимодействие с существами через ПКМ. (Покормить животное или оседлать его.)
  • interact-item-primary — взаимодействие с предметами через ЛКМ.
  • interact-item-secondary — взаимодействие с предметами через ПКМ.
  • item-drop — выбрасывание предметов. (Игрок выкидывает землю.)
  • item-pickup — подбор предметов. (Игрок подбирает землю.)
  • item-spawn — появление предметов.
  • item-use — применение предметов. (Телепортация жемчугом эндера.)
  • liquid-flow — течение жидкости. (Лава растекается по соседним блокам.)
  • portal-use — применение порталов. (Вход в портал нижнего мира.)
  • projectile-impact-block — попадание снаряда в блок. (Стрела вонзается в землю.)
  • projectile-impact-entity — попадание снаряда в существо. (Стрела вонзается в монстра.)

У оранжевых правил в качестве цели можно указать сразу целую группу существ. Например, modid:monster | aquatic | ambient | animal и т.д. Т.е. minecraft:animal будет работать сразу со всеми животными ванильного Minecraft.

Примеры использования

Флаги могут быть применены к игрокам или целым группам. Они также могут быть применены к отдельным видам территории (базовым, административным и природным/пустым). Разные  примеры можно найти в игре, введя команду /cf и наведя курсор на различные флаги.

Пример 1

Для того, чтобы предотвратить разрушение лаймовой шерсти, используем команду редактирования привата /cf, флаг block-break, id шерсти minecraft:wool.5 и false в конце для запрета. Результат:
/cf block-break minecraft:wool.5 false

Пример 2

Запретить удары по животным (взаимодействие через ЛКМ — interact-entity-primary). Так как правило нужно для всей фауны, используем в качестве цели minecraft:animal. Чтобы не создавать флаг для каждой территории, дописываем в конце override.

/cf interact-entity-primary minecraft:animal false override

Пример 3

Для того, чтобы запретить игрокам из группы Jailed («заключенные») использовать порталы в другие миры во всех административных зонах, нужно стоя в административном привате использовать флаг portal-use. Используется /cfg для установке правила к группе. В [source] пишем minecraft:player для уточнения того, что правило действует на игроков из этой группы. Запрещены любые порталы — any. Для применения правила ко всем участкам этого типа (административным), приписываем в конце override.

/cfg Jailed portal-use minecraft:player any false override

Пример 4

Запретить игроку Valeryevich спать в любой кровати. Используется /cfp, так как правило interact-block-secondary (клик ПКМ по блоку) должно действовать на конкретного игрока.

/cfp Valeryevich interact-block-secondary minecraft:bed false

Информация о привате

Подробнее о характеристиках и свойствах приватного участка можно узнать, находясь на нем и написав команду — /claiminfo. Таким образом можно узнать название привата, владельца, тип (2D/3D), сообщения приветствия и прощания, дату создания и последней активности, координаты и другое.

Если у игрока есть права администратора, то он может открыть дополнительную информацию и настройки привата нажатием на красную надпись Admin Settings в начале списка. Нажатие на значение справа изменяет настройку.

  • DenyMessages — установка OFF скроет сообщения в чате для всех игроков при попытке сделать запрещенные действия.
  • ClaimExpiration — установка OFF сделает приват независимым от срока. Т.е. станет бессрочным.
  • FlagOverrided — установка OFF отключит переопределение флагов для этого вида привата.
  • PVPOverrided — переопределяет настройки PvP.
    • TRUE — PvP разрешен.
    • FALSE — PvP запрещен.
    • UNDEFINED — Наследует правила от основных PvP настроек. (значение по умолчанию)

Полный список команд

Приватная территория

/abandonclaimУдаляет приват «под ногами».

/abandonallclaimsУдаляет каждый приват, которым Вы владеете.

/abandontoplevelclaim - Удаляет каждый приват и его подразделения.

/banitem [предмет]Запрещает предмет по ID или тот, что в руке, если не указан.

/unbanitem [предмет]Убирает предмет из бан-листа.

/basicclaims или /bcПереключение лопаты в базовый режим.

/claimbook [игрок] - Выводит в чат ссылку на официальный английский путеводитель по плагину. Если не указывать игрока, то сообщение приходит самому себе.

/claimfarewell <"сообщение">Устанавливает прощальное сообщение. Появляется у игроков при выходе с локации.

/claimgreeting <"сообщение">Устанавливает приветственное сообщение. Появляется у игроков при входе на локацию.

/buyclaimblocks [количество_блоков] или /buyclaimПриобретение дополнительных блоков за серверную валюту.

/sellclaimblocks [количество_блоков] или /sellclaimПродать блоки в обмен на серверную валюту.

/cuboidclaims или /cuboidПереключение лопаты в кубовидный режим.

/inheritpermissions или /inheritПереключает подразделение в режим наследования.

/claimlist [<игрок> [мир]]Показывает список приватов в чате. Без указания имени игрока, будет показан собственный список. Можно указать отдельный мир.

/claiminfo [id]Показывает информацию приватной территории, на которой находитесь. Можно указать id.

/claimsetspawnУстанавливает точку спавна.

/claimspawnТелепортирует в точку спавна.

/claimsubdivide или /scПереключение лопаты в режим разбиения.

/claimtransfer [игрок] - Перенести приват, на котором стоите, к игроку.

/givepet cancel|<игрок> - Передает прирученное животное другому игроку или «отпускает».

/claimname ["название"]Устанавливает имя для привата «под ногами».

/playerinfo <игрок> <мир>|<игрок>|[<мир>]Показывает подробную информацию об игроке.

/siege <игрок>Инициирует осаду против другого игрока

Флаги

/claimflagdebug или /cfdВключение или выключение режима отладки правил.

/claimflag [<flag> <source> <target> <value> [context] | <target> <value> [context]] или /cfПоказывает флаги участка «под ногами».

/claimflaggroup <группа> <flag> <source> <target> <value> | <target> <value> или /cfgДобавляет разрешение флага для группы.

/claimflagplayer <игрок> <flag> <source> <target> <value> | <target> <value> или /cfpДобавляет разрешение флага для игрока.

/claimflagreset или /cfrСброс настроек правил (фагов).

Доверие

/accesstrust <игрок> <группа> или /atДает право входа на территорию и использования кровати.

/permissiontrust <игрок>|<группа> или /ptДает разрешение  игроку или группе на изменение уровня прав и доступа для других игроков.

/containertrust <игрок>|<группа> или /ctДает игроку или группе право входить на территорию и взаимодействовать с контейнерами, кроватями, растениями, животными, кнопками и рычагами.

/trust <игрок>|<группа> или /tПредоставляет игроку или группе право редактирования привата.

/trustall <игрок>|<группа> или /taПредоставляет игроку или группе право редактирования всех приватных территорий.

/untrust <игрок>|<группа> или /utОтнимает доступ игрока или группы к привату.

/untrustall <игрок>|<группа> или /utaОтнимает доступ игрока или группы ко всем приватным территориям.

/trustlistСписок разрешений привата «под ногами».

Администратор

/adjustbonusclaimblocks <игрок> <разница> [мир] или /acbДобавляет или вычитает бонусные блоки привата у игрока («5», «-71» и т.д.).

/setaccruedclaimblocks <игрок> <разница> [<мир>] или /scbМеняет суммарное количество приватных блоков игрока.

/adminclaims или /ac Переключение режима лопаты в административный.

/adminclaimlist [мир]Список всех административных участков.

/deleteclaim или /dcУдаляет приват «под ногами», даже если он чужой.

/deleteallclaims [игрок] или /dacУдалить все приватные участки отдельного игрока.

/deletealladminclaimsУдаляет все административные приватные территории.

/ignoreclaims или /icВключение или выключение режима игнорирования привата.

/claimclear <target> [<claim> [<мир>]]Позволяет удалить предметы и объекты в пределах одного или нескольких приватных территорий.

/claimpermissiongroup <группа> [<permission> <value>] или /cpgУстанавливает разрешение на группу в контексте привата.

/claimpermissionplayer <игрок> [<permission> <value>] или /cppУстанавливает разрешения на игрока в контексте привата.

/restorenature или /rnПереключение лопаты в режим восстановления.

/restorenatureaggressive или /rnaПереключение лопаты в режим агрессивного восстановления.

/restorenaturefill [радиус] или /rnfПереключение лопаты в режиме заполнения.

/unlockdropsПозволяет другим игрокам подобрать предметы после вашей смерти.

/gpdebug <игрок> <verbose>|[<verbose>]Включает отладку

/gpreloadПерезагружает плагин после изменения конфигурационных настроек.

Чат

/ignoredplayerlist или /ignoredlistСписок игнорируемых игроков.

/ignoreplayer [игрок] или /ignoreСообщения указанного игрока перестают отображаться в чате.

/unignoreplayer [игрок] или /unignoreСообщения указанного игрока вновь приходят.

/separate <игрок1> <игрок2>Принудительно заставляет двух игроков игнорировать друг друга в чате.

/unseparate <игрок1> <игрок2>Снимает принудительное игнорирование.

/softmute <игрок>Будут ли сообщения игрока достигать других игроков с приглушением.

Разное

/gphelpСписок всех команд плагина.