Администраторы и VIP-персоны не обязаны следовать правилам, которые вы установили в конфигурации! Благодаря этим правам, которые могут быть применены к отдельным пользователям/группам, ВЫ решаете, кто и каким образом может использовать те или иные функции! Отличный VIP-стимул!
grapplinghook.use
Если вы хотите разрешить только избранным игрокам использовать захватные крюки (см. раздел "Конфиг"), это разрешение им необходимо. В противном случае его можно игнорировать.
grapplinghook.admin
Это разрешение используется для команд /givehook и /gh_cfg. Владельцам/модераторам сервера оно не нужно.
grapplinghook.everywhere
Это разрешение позволяет игроку делать захваты, даже если он находится в безопасной зоне (если ваш конфиг запрещает это), в заблокированных зданиях (опять же, в соответствии с конфигом) или в зонах, занесенных в черный список менеджера зон (который вы также можете определить).
grapplinghook.ignore_blocks
Это разрешение позволяет игроку обойти проверку на блокирование рейда/боевого блока, прежде чем ему будет разрешено захватывать (если вы используете плагин No Escape и решили использовать его в конфиге).
grapplinghook.infinite_use
Это разрешение не будет повреждать прочность захватов, когда игрок с этим разрешением использует их, что позволяет использовать их бесконечно.
grapplinghook.infinite_length
Игроки, обладающие этим разрешением, могут хвататься за крюки так далеко, как захотят (длина веревки фактически бесконечна). ПРЕДУПРЕЖДЕНИЕ: Не давайте это разрешение обычным игрокам. Физика может стать непредсказуемой при большой длине веревки.
grapplinghook.no_cooldown
Игроки с этим разрешением могут использовать захват так часто, как им хочется, игнорируя кулдаун. ВНИМАНИЕ: не давайте это право обычным игрокам, это один из единственных сценариев, когда спам веревки близко и часто может вызвать лаг.
grapplinghook.instant_projectile
Когда игрок с этим разрешением выстрелит снарядом для захвата, он прилетит в точку цели и мгновенно захватит игрока, при этом время между выстрелом и захватом не пройдет. Если вы хотите, чтобы так было у всех игроков, лучше просто установить скорость снаряда на 0, это даст тот же эффект.
grapplinghook.no_damage_on_impact
Для игроков, не находящихся в режиме бога, которые врезаются в предметы, наличие этого разрешения полностью аннулирует весь урон, получаемый при ударе. Если вы работаете на сервере сборки и хотите добиться одинакового эффекта для всех игроков, лучше отключить урон от удара в конфиге.
grapplinghook.no_ungrapple_on_attacked
Если ваши настройки заставляют атакованных игроков принудительно освобождаться от захвата, наличие этого разрешения отменит эффект, и игрок получит урон, но останется на веревке.
grapplinghook.no_unpgrapple_on_impact
Если вы включили повреждение от ударов (и у игрока с этим разрешением нет разрешения "Не повреждать при ударе"), игроки с этим разрешением не будут принудительно освобождаться.
grapplinghook.silent_grappling
Игроки с этим разрешением не производят никаких эффектов, слышимых/видимых для других игроков, поэтому они могут свободно захватывать, не предупреждая никого о своем присутствии (по крайней мере тех, кто их не видит, но потенциально может услышать).
grapplinghook.impact_damage_in_chat
В основном предназначено как отладочное разрешение для администраторов, чтобы видеть, сколько урона было получено во время удара (так что вы можете поиграть и решить, какие джоули, порог урона и масса тела человека являются смертельными, все они играют роль в расчете урона от удара). Но вы можете дать это право и обычным игрокам - каждый раз, когда обладатель этого права получает урон от удара, превышающий установленный вами порог, он будет видеть подробное сообщение
grapplinghook.instant_dismount
Изначально это разрешение задумывалось как отладочное для администраторов, но, похоже, оно также может иметь некоторые тактические преимущества. После того как игрок с этим разрешением нажмет JUMP, опять же, после снятия захвата, он мгновенно отвалит даже в воздухе, вернувшись в состояние "падение вниз", как если бы игрок только что высадился из миникоптера в воздухе. То же самое произойдет, если игрок упадет в воду или его скорость окажется ниже настраиваемого порога. ПРЕДУПРЕЖДЕНИЕ: Если вы решите дать это разрешение обычным игрокам, имейте в виду, что не так уж сложно злоупотребить им и мгновенно остановиться перед ударом о стену/землю, независимо от того, насколько быстро они едут. В зависимости от того, насколько хорошо они успеют отскочить, они могут даже не получить урона от падения. В зависимости от того, как вы на это посмотрите, это либо полезное разрешение для администраторов, либо то, что вы хотите сделать частью своего игрового процесса. Решать вам!
Конфигурация (oxide/config/GrapplingHook.json и команды чата)
Хотя ничто не мешает вам отредактировать JSON-файл вручную, есть лучшее решение - и вам даже не придется перезагружать свой плагин после этого.
Чтобы запустить любую из команд конфигурации, вам необходимо иметь ownerid или moderatorid (или разрешение grapplinghook.admin).
Если вы хотите запретить игрокам, не имеющим права grapplinghook.everywhere, хвататься за определенные предметы, используйте приведенную ниже команду, чтобы добавить/удалить из черного списка короткие имена префабов. По умолчанию в черном списке находятся следующие префабы: Supply Drop, Cargo Plane, Chinook helicopter, Bradley APC, Patrol Helicopter, Cargo Ship.
/gh_blacklist_shortname add [prefab shortname]
Добавляет префаб с коротким названием в черный список, что означает, что захват этого префаба с этого момента будет запрещен. Если префаб уже существует в черном списке, он сообщит вам об этом. Убедитесь, что вы правильно написали префаб, так как плагин не проверяет валидность.
/gh_blacklist_shortname remove [prefab shortname]
Удаляет существующее сокращенное название префаба из черного списка, что означает, что с этого момента захват этого префаба будет разрешен. Если префаб не существует в черном списке, он сообщит вам об этом.
Аналогично - если в Zone Manager есть зоны, в которые вы не хотите пускать игроков без разрешения grapplinghook.everywhere, есть аналогичная команда для зон:
/gh_blacklist_zone add [Zone Manager Zone ID]
Добавляет ID зоны в черный список, что означает, что с этого момента захват в этой зоне будет запрещен. Если зона уже существует в черном списке, вам будет сообщено об этом. Это не проверяет, существует ли зона в Менеджере зон в данный момент, вы можете определить ее в любое время.
/gh_blacklist_zone remove [ID зоны менеджера зон]
Удаляет ID существующей зоны из черного списка, что означает, что захват в этой зоне будет разрешен с этого момента. Если зона не существует в черном списке, он сообщит вам об этом.
А вот и остальные параметры конфигурации. Введите /gh_cfg в чате. Если вы владелец/модератор сервера или имеете права grapplinghook.admin, вы увидите список всех настроек (и какие значения они имеют в данный момент) и что нужно ввести, чтобы их изменить. Если вы напечатаете /gh_cfg [configValue] без параметров, то увидите подробную информацию о настройке - что она делает, какие типы значений ожидает, верхние и нижние пределы (если применимо). Вы можете изменить любую настройку в любое время, и все изменения будут применены мгновенно, так что смело экспериментируйте с теми, которые лучше всего подходят вашему серверу.
/gh_cfg grapplingRequiresPerm [логические значения (true или false)]
Если значение равно true, игроки без разрешения grapplinghook.use не смогут использовать захватный крюк.
/gh_cfg grapplingEnableFire3 [логические значения (true или false)]
Если значение равно true, игроки смогут использовать захват с помощью FIRE3 (обычно средняя кнопка мыши)
/gh_cfg grapplingEnableCommand [логические значения (true или false)]
Если значение равно true, игроки смогут использовать грапплинг с помощью консольной команды grapple (которая может быть привязана к любой клавише)
/gh_cfg grapplingBuildingBlocked [логические значения (true или false)]
Если значение равно true, игроки смогут использовать крюк для захвата, даже если здание заблокировано
/gh_cfg grapplingSafeZone [логические значения (true или false)]
Если значение равно true, игроки смогут использовать захватный крюк, даже если они находятся в безопасной зоне
/gh_cfg grapplingCooldown [дробь (например, 1.2345) от 0 до 10000]
Это то, как часто (в секундах) игроки без разрешения grapplinghook.no_cooldown смогут снимать крюк
/gh_cfg grapplingItemUses [целые числа (например, 12345) от 1 до 1000000]
Это количество раз, которое можно использовать захватный крюк, прежде чем предмет сломается (если у игрока нет разрешения ;grapplinghook.infinite_use)
/gh_cfg projectileIsInstant [логические значения (true или false)]
Если значение равно true, то игроки без разрешения ;grapplinghook.instant_projectile будут мгновенно захвачены в точку действия, на которую вы смотрите, не дожидаясь, пока туда прилетит снаряд (игнорирует скорость снаряда)
/gh_cfg projectileVelocity [дробь (например, 1.2345) от 0 до 10000]
С какой скоростью (в метрах в секунду) снаряд будет лететь к целевой точке для игроков без ;grapplinghook.instant_projectile perm
/gh_cfg projectileItemID [целые числа (например, 12345) между -2147483648 и 2147483647]
ID метательного предмета (может быть любым выпавшим предметом)
/gh_cfg projectileSkinID [целые числа (например, 12345) между 0 и 18446744073709600000]
ID скина снаряда (длинное число в URL мастерской Steam)
/gh_cfg projectileRotX [дробные числа (например, 1.2345) от -360 до 360]
Визуальная коррекция вращения снаряда X (углы Эйлера)
/gh_cfg projectileRotY [дробь (например, 1.2345) между -360 и 360]
Визуальная коррекция вращения снаряда по оси Y (углы Эйлера)
/gh_cfg projectileRotZ [дробь (например, 1.2345) между -360 и 360]
Визуальная коррекция вращения снаряда по оси Z (углы Эйлера)
/gh_cfg ropeMa