Custom Helicopter Tiers 2

Платное Custom Helicopter Tiers 2 1.5.1

Разрешения

Этот плагин использует систему разрешений Oxide. Предоставляйте или отзывайте разрешения с помощью кнопок oxide.grantи oxide.revoke. Вы можете назначать их отдельным игрокам или группам, используя их Steam ID или имя группы.
  • customhelicoptertiers2.admin- Предоставляет доступ ко всем командам администратора, включая создание уровней, принудительное создание и управление профилями вызовов. Требуется для использования команд cht.heli, cht.tier, cht.callprofile, cht.crateи cht.gib.
  • customhelicoptertiers2.{tier}.{suffix}– Создаётся автоматически при добавлении профиля вызова. Требуется для использования игроками этого профиля вызова через настроенную команду чата или при использовании useCallProfile: trueв callили call2me.

    (Замените {tier}и {suffix}на ваше фактическое имя уровня и суффикс профиля, например customhelicoptertiers2.elite.vip)

Команды

Команды чата начинаются с символа /, а консольные команды можно вводить непосредственно в консоли F1 или консоли сервера. Используйте функцию «Найти <keyword>в консоли» для поиска доступных команд, связанных с плагином. Параметры в < >являются обязательными, а в [ ]— необязательными.
  • /heli.shop — Открывает интерфейс магазина вертолётов для игрока. Показывает доступные уровни, цены и время перезарядки. (Эту команду можно настроить в настройках Heli Shop Chat Command).
  • cht.heli call <tierName|random> <playerNameOrId> [numberToSpawn] [useCallProfile]— Создаёт вертолёты и направляет их к указанному игроку. Можно запустить как с серверной, так и с клиентской консоли.
    • tierName|random- Название уровня, который будет создан, или randomвыбор его случайным образом.
    • playerNameOrId- Частичное имя или ID игрока, которому следует отправить вертолет.
    • numberToSpawn(Необязательно) — Сколько вертолётов создавать. По умолчанию — 1.
    • useCallProfile(Необязательно) — Использовать ли профиль вызова игрока.
  • cht.heli call2me <tierName|random> [numberToSpawn] [useCallProfile]- Вызывает вертолёты непосредственно к игроку с помощью команды. Работает только из клиентской консоли.
    • tierName|random- Уровень появления или randomслучайный уровень.
    • numberToSpawn(Необязательно) - Сколько вертолетов создать.
    • useCallProfile(Необязательно) — если значение true, применяются настройки профиля вызова отправителя команды.
При useCallProfileвключении плагин будет:
  • Проверьте, есть ли у целевого игрока разрешение на соответствующий профиль вызова.
  • Примените стоимость и время восстановления, указанные в этом профиле.
  • Зафиксируйте вертолет на этом игроке/команде, как настроено.
В случае вывода из строя вертолет просто отправляется на свою позицию без возможности захвата цели.
  • cht.tier create <tierName>- Создает новый файл уровня вертолета с использованием настроек по умолчанию.
    • tierName- Имя уровня (используется для имени файла и внутренних ссылок) .
  • cht.callprofile add <tierName> <suffix>- Добавляет новый профиль вызова на уровень.
    • tierName- Название уровня, на который вы хотите добавить профиль.
    • suffix- Короткий идентификатор, используемый для генерации строки разрешения. Пример: vipстановится customhelicoptertiers2.tiername.vip.
  • cht.heli kill <tierName|all> [crash|instant]- Уничтожает активные вертолеты определенного уровня или всех уровней.
    • tierName|all– Укажите название уровня или все, чтобы повлиять на все вертолеты.
    • crash|instant(Необязательно) - краш имитирует огненный крах. Мгновенный просто удаляет их.
  • cht.crate kill <tierName>- Мгновенно убирает все ящики с вертолетного яруса.
    • tierName- Уровень, ящики которого необходимо очистить.
  • cht.crate unlock <tierName>- Тушит огненные шары, прикрепленные к ящикам указанного уровня, делая их доступными для добычи.
  • cht.gib kill <tierName>- Уничтожает все обломки вертолета (обломки) на уровне, заставляя их немедленно исчезнуть.
  • Команды подачи сигналов
  • JSON:
    {  "Item Name": "Elite Signal",
      "Skin Id": 1234567890,
      "Should Explode": false,
      "Run Random Command": false,
      "Commands To Run": [
        {
          "Type": "Server",
          "Command": "cht.heli call Default {PlayerId} 1 true"
        }
      ]
    }
    • Игроку будет вызван вертолет уровня «Элит».
    • У игрока должно быть разрешение на профиль вызова на уровне Элит.
  • Команды кнопок
  • JSON:
    {  "Require Button Powered": true,
      "Disable Power Output On Press": false,
      "Run Random Command": false,
      "Commands": [
        {
          "Type": "Server",
          "Command": "cht.heli call Default {PlayerId} 1 true"
        }
      ]
    }
    • Вертолет уровня «По умолчанию» появляется и отправляется к игроку, нажавшему кнопку.
    • Заполнитель {PlayerId}автоматически заменяется идентификатором нажавшего игрока.
    • true в конце включает использование профиля вызова, поэтому плагин применяет их разрешение, стоимость, время восстановления и поведение блокировки.

Конфигурация

Настройки хранятся в файле конфигурации, находящемся в config/каталоге. Вы можете отредактировать этот файл вручную, а затем перезагрузить плагин, чтобы изменения вступили в силу.
JSON:
{
  "Version": "1.0.0",
  "Enable Debug": false,
  "Global Population Limit": 3,
  "Rarity Weights": {
    "Common": 50,
    "Uncommon": 30,
    "Rare": 15,
    "VeryRare": 5
  },
  "Heli Shop Chat Command": "heli.shop",
  "Disable Vanilla Patrol Helicopter": true
}
  • Enable Debug- Если задано значение true, отображает в реальном времени информацию о вертолете и отладочные наложения (например, траектории движения, состояние здоровья, цели и т. д.), видимые только администраторам с разрешением.
  • Global Population Limit- Ограничивает количество одновременно существующих вертолётов всех уровней. Это включает как автоматически появляющиеся, так и вызываемые вертолёты. По достижении этого числа вертолёты больше появляться не будут.
  • Rarity Weights- Управляет случайным весом редкости добычи в таблицах пользовательских лутов. Эти значения определяют вероятность выбора каждого лута при появлении добычи.
  • Heli Shop Chat Command- Определяет команду чата, которую игроки могут использовать для открытия интерфейса магазина вертолётов. В магазине отображаются доступные им уровни.
  • Disable Vanilla Patrol Helicopter— Если установлено значение true, отключает стандартное событие патрульного вертолёта Rust, так что будут появляться только вертолёты из этого плагина. Оставьте false, если хотите, чтобы активны были как обычные, так и многоуровневые вертолёты.

Здоровье

Определяет запас прочности вертолёта и его уязвимые места. Изменение этих значений влияет на прочность вертолёта и на то, какой урон необходимо нанести игрокам, чтобы уничтожить его.
JSON:
 "Health": {
    "Body Health": 10000.0,
    "Main Rotor Health": 900.0,
    "Tail Rotor Health": 500.0
  },
  • Body Health- Общее здоровье основного корпуса вертолёта. Это основной показатель, который игроки должны снизить, чтобы уничтожить вертолёт.
  • Main Rotor Health- Состояние слабого места несущего винта, представляющего собой разрушаемую дополнительную цель на верхнем винте вертолета.
  • Tail Rotor Health- Состояние слабого места хвостового винта, открытого ротора в задней части вертолета.

Спаун

Управляет тем, как и когда плагин автоматически создает вертолеты этого уровня.
JSON:
 "Spawn": {
    "Enable Automated Spawns": true,
    "Maximum Population": 1,
    "Initial Spawn": false,
    "Minimum Respawn Delay Minutes": 120.0,
    "Maximum Respawn Delay Minutes": 240.0,
    "Minimum Number To Spawn Per Tick": 1,
    "Maximum Number To Spawn Per Tick": 1,
    "Spawn Locations": [
      "Ocean",
      "Mainland"
    ],
    "Minimum Spawn Radius From Caller (used when a heli is called by a player)": 500.0,
    "Maximum Spawn Radius From Caller (used when a heli is called by a player)": 700.0
  },
  • Enable Automated Spawns– Если включено, плагин будет пытаться вызывать вертолёты этого уровня с интервалом, определяемым заданными настройками задержки. Если отключено, запланированное появление вертолётов этого уровня не будет происходить — возможны только ручные или командные появления.
  • Maximum Population– Максимальное количество вертолётов этого уровня, которые могут существовать одновременно. Это работает в сочетании с глобальным лимитом населения, заданным в конфигурации. Вертолёт появится только при соблюдении обоих условий:
    • Население этого уровня ниже этого значения, и
    • Общее количество вертолетов на всех уровнях ниже глобального лимита.
  • Initial Spawn- Должен ли этот уровень вертолета появляться немедленно после перезапуска сервера или перезагрузки плагина.
  • Respawn Delay Range- Случайный временной интервал между каждой попыткой автоматического появления для этого уровня.
  • Spawn Amount Range– Диапазон количества вертолётов, которые могут быть созданы за один цикл автоматического появления. Каждый раз, когда плагин решает создать вертолёты этого уровня, он выбирает случайное число между минимальным и максимальным значениями.
  • Spawn Locations– Список типов локаций, определяющих, где разрешено появление вертолётов данного уровня. Плагин случайным образом выбирает одну из локаций при появлении.
    Поддерживаемые значения:
    • Ocean- Нерестится в открытом море, над глубокой водой.
    • Mainland- Появляется в глубине суши, над местностью.
  • Caller Spawn Radius- Определяет диапазон вокруг вызывающего игрока, где будет появляться вертолет.

Патруль

Управляет тем, как вертолет выбирает пункты патрулирования, когда у него нет конкретных целей.
JSON:
"Patrol": {
    "Chance To Pick Monument Instead Of Random Position": 60,
    "No Go Monuments": []
  },
  • Chance To Pick Monument Instead Of Random Position- Процентная вероятность (от 0 до 100) того, что вертолёт выберет памятник в качестве следующего пункта патрулирования вместо случайного места на карте. Чем выше значение, тем выше вероятность, что вертолёт будет летать к памятникам между боями.
  • No Go Monuments– Список названий памятников, вблизи которых вертолёту ни в коем случае нельзя осуществлять патрулирование.
    Если вертолёт случайно выберет один из них в качестве потенциального пункта патрулирования, он пропустит его и попробует другой. (Примеры: launch_site, airfield, trainyard, water_treatment_plant)

Пулемет

Управляет поведением левого и правого пулемётов вертолёта, включая скорострельность, логику стрельбы очередями, дальность стрельбы и точность. Эти настройки позволяют сделать турели более или менее опасными в зависимости от вашего уровня.
JSON:
 "Machine Gun": {
    "Time Between Individual Shots Seconds": 0.09,
    "Burst Firing Duration Seconds": 3.0,
    "Cooldown Time Between Bursts Seconds": 4.0,
    "Maximum Target Engagement Range": 150.0,
    "Target Tracking Duration Before Loss Seconds": 5.0,
    "Base Bullet Damage": 20.0,
    "Bullet Spread Accuracy": 2.0
  },
  • Time Between Individual Shots Seconds– Задержка (в секундах) между выстрелами в очереди. Чем меньше значение, тем выше частота выстрелов.
  • Burst Firing Duration Seconds- Продолжительность (в секундах) каждой непрерывной стрельбы.
    По истечении этого времени стрельба прекращается до окончания перезарядки.
  • Cooldown Time Between Bursts SecondsВремя (в секундах), которое должно пройти после окончания очереди, прежде чем оружие сможет снова начать стрелять. Управляет частотой очередей.
  • Maximum Target Engagement Range– Максимальная дистанция (в метрах), на которой орудие может поражать цели. Если игрок находится дальше этого значения, вертолёт не будет по нему стрелять. (Полезно для ограничения дальнего прицеливания на более простых уровнях)
  • Target Tracking Duration Before Loss Seconds- Сколько времени (в секундах) вертолёт помнит цель после потери прямой видимости. Если цель не видна в течение этого времени, вертолёт сбрасывает её из орудий.
  • Base Bullet Damage- Чистый урон, наносимый каждой пулей до применения масштабирования или брони.
    Умножается на глобальный множитель ConVar (heli.bulletdamagescale) .
  • Bullet Spread Accuracy- Насколько точны пулемёты при стрельбе. Более низкие значения означают более точное прицеливание (более точную стрельбу) , более высокие значения означают больший разброс пуль.

Обстрел

Управляет тем, как вертолёт выполняет ракетные атаки по целям. Вы можете настроить количество ракет, время запуска, вероятность повышения до орбитальных атак, использование напалма и многое другое. Эти настройки определяют агрессивность и тактику ракетных атак вертолёта.
JSON:
"Strafe": {
    "Can Strafe Players Near Enemy Bases": false,
    "Maximum Rockets Fired Per Strafe": 12,
    "Delay Between Rocket Launches Seconds": 0.2,
    "Cooldown Between Strafes Seconds": 20.0,
    "Chance To Upgrade From Strafe To Orbit Strafe": 60,
    "Maximum Rockets Fired Per Orbit Strafe": 18,
    "Delay Between Rocket Launches While Orbiting Seconds": 0.5,
    "Can Use Napalm Rockets": true,
    "Cooldown Between Napalm Strafes Seconds": 30.0
  },
  • Can Strafe Players Near Enemy Bases- Определяет, разрешено ли вертолету атаковать игроков, находящихся вблизи вражеских шкафов с инструментами (т. е. в зонах, «заблокированных зданием») .
  • Maximum Rockets Fired Per Strafe- Количество ракет, выпущенных за стандартный заход на посадку.
    Ракеты запускаются последовательно (не все сразу) , до указанного лимита.
  • Delay Between Rocket Launches Seconds-Время (в секундах) между запусками ракет во время стандартного обстрела. Управляет интервалом между залпами ракет.
  • Cooldown Between Strafes Seconds- Минимальное время (в секундах), которое вертолёт должен выждать, прежде чем снова начать штурм. Предотвращает постоянный обстрел ракетами, обеспечивая паузу между штурмами.
  • Chance To Upgrade From Strafe To Orbit Strafe- Процентный шанс (0–100) того, что стандартный обстрел перерастёт в орбитальный. Орбитальные обстрелы более сложные и динамичные, поскольку вертолёт кружит и ведёт огонь сверху.
  • Maximum Rockets Fired Per Orbit Strafe- Количество ракет, выпущенных при выполнении орбитального стрейфа вместо обычного стрейфа. Обычно немного больше, чем при стандартном стрейфе, из-за более длительного времени нахождения на орбите.
  • Delay Between Rocket Launches While Orbiting Seconds- Время (в секундах) между запусками ракет при движении по орбите. Медленнее, чем при обычном движении по орбите, поскольку движение по орбите охватывает большее расстояние и занимает больше времени.
  • Can Use Napalm Rockets— Если установлено значение «да», вертолёту разрешено использовать напалмовые ракеты во время обстрела или орбитального обстрела. Напалмовые ракеты создают горящие огненные шары, которые наносят урон с течением времени и ограничивают движение. (Отключите этот параметр для уровней, которые должны быть менее разрушительными.)
  • Cooldown Between Napalm Strafes SecondsВремя (в секундах) до того, как вертолёт сможет снова использовать напалмовые ракеты после запуска. Вводит время восстановления, отдельное от времени обычных ракет, ограничивая количество напалмовых ракет.

Таргетинг

Управляет тем, как вертолёт идентифицирует, удерживает и сбрасывает цели из списка активных угроз. Эти настройки определяют, как долго игроки остаются целями, на каком расстоянии вертолёт может их обнаружить и должен ли он атаковать первым или только реагировать на угрозы.
JSON:
 "Targeting": {
    "Target Acquisition Range": 150.0,
    "Seconds Before Dropping Unseen Targets": 6.0,
    "Chance Of Final Strafe Before Dropping Target": 100,
    "Only Retaliate If Attacked": false
  },
  • Target Acquisition Range- Максимальное расстояние (в метрах), на котором вертолёт может обнаруживать и атаковать новых игроков. Игроки, находящиеся за пределами этого расстояния, не будут добавлены в список целей вертолёта, даже если они видны или активны.
  • Seconds Before Dropping Unseen Targets- Время (в секундах), в течение которого цель может оставаться вне поля зрения, прежде чем вертолёт прекратит её отслеживать. Если вертолёт теряет игрока из поля зрения, и тот остаётся скрытым в течение этого времени, он будет исключён из списка целей.
    (Это помогает предотвратить бесконечное преследование вертолётами игроков, которые бегают и прячутся.)
  • Chance Of Final Strafe Before Dropping Target- Процентный шанс (0–100) совершить обстрел в последнюю минуту перед сбросом цели. Это позволяет вертолёту сделать прощальный выстрел, если он вот-вот забудет игрока, — полезно для усиления тактики «бей и беги».
  • Only Retaliate If Attacked– Если установлено значение true, вертолёт не будет атаковать игроков, пока они его не атаковали. Даже если игрок полностью виден или находится в пределах досягаемости цели, вертолёт будет игнорировать его, пока он не нанесёт ему урон. Это полезно для пассивных патрульных уровней, которые должны отвечать только на провокации.

    Примечание: этот параметр игнорируется, если Lock On Callerон включён — вертолёт всегда будет отслеживать вызвавшего игрока и, при необходимости, его команду, если настроено.

Возвращение домой

Контролирует реакцию вертолета на самонаводящиеся ракеты, включая возможность их захвата и необходимость выпускать осветительные ракеты для защиты.
JSON:
  "Homing": {
    "Can Be Homing Targeted": true,
    "Can Defend With Flares": true,
    "Flare Duration Seconds": 5.0
  },
  • Can Be Homing Targeted- Если это правда, то вертолет может быть целью самонаводящихся ракет.
  • Can Defend With Flares- Если это правда, вертолет автоматически выпустит осветительные ракеты для защиты от приближающихся самонаводящихся ракет.
  • Flare Duration Seconds- Продолжительность действия сигнальных ракет (в секундах). В активном состоянии они снижают вероятность поражения самонаводящимися ракетами.

Опасная зона

Опасные зоны создаются вертолётом в ответ на повреждения или серьёзные угрозы. Когда вертолёт получает урон в определённой области, он отмечает это место как временную опасную зону и начинает отслеживать количество нанесённого там урона. При накоплении достаточного урона — например, при потере значительной части здоровья — зона становится запретной, и вертолёт будет избегать пролётов над ней. Если он уже находится в запретной зоне, он немедленно покидает её.
JSON:
"Danger Zone": {
    "Maximum Allowed Danger Zones": 20,
    "Base Danger Zone Radius": 20.0,
    "Remove Least Significant Danger Zone When Full": true,
    "Seconds Before Danger Zone Expires": 5.0,
    "No Go Zone Radius": 250.0,
    "Flee Damage Percentage": 35,
    "Seconds Before No Go Zone Expires": 300.0
  },
  • Maximum Allowed Danger Zones- Общее количество опасных зон, которые вертолёт может отслеживать одновременно. При достижении этого лимита и создании новых зон плагин удаляет наименее важную из них (если включен) .
  • Base Danger Zone Radius– Радиус каждой опасной зоны, создаваемой при нанесении урона игроком. Зоны оцениваются на основе общего урона, нанесённого внутри них.
  • Remove Least Significant Danger Zone When Full- Если это правда, то при достижении максимального предела вертолет удалит наименее активную опасную зону, освободив место для новых.
  • Seconds Before Danger Zone Expires- Как долго (в секундах) существует опасная зона, если в ней больше не наносится урон. Если зона неактивна в течение этого времени, она исчезает.
  • No Go Zone Radius— Когда опасная зона получает достаточно повреждений, она становится «запретной зоной» с этим радиусом. Вертолёт будет избегать попадания в эту зону и, оказавшись внутри, уйдёт.
  • Flee Damage Percentage– Процент от общего запаса прочности вертолёта, который необходимо уничтожить в опасной зоне, чтобы он стал запретной зоной. Например, 35 означает, что 35% от общего запаса прочности вертолёта должно быть уничтожено в этой зоне.
  • Seconds Before No Go Zone Expires- Как долго действует запретная зона, прежде чем она будет удалена из списка. Если игроки перестанут наносить урон вертолёту или покинут его, по истечении этого времени зона снова станет безопасной.

Крушение

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

JSON:
  "Crash": {
    "Maximum Fire Balls To Spawn": 8,
    "Fire Ball": {
      "Minimum Lifetime Seconds": 180.0,
      "Maximum Lifetime Seconds": 300.0,
      "Damage Per Second": 8.0,
      "Try To Spread": true,
      "Water To Extinguish": 2500
    }
  },
  • Maximum Fire Balls To Spawn- Сколько огненных шаров разлетается при крушении вертолета?
  • Fire Ball– Управляет поведением отдельных огненных шаров, появляющихся при столкновении. Эти настройки определяют продолжительность их горения, наносимый урон, распространение огня и необходимое количество воды для их тушения.

Обломки

После крушения вертолёта могут появиться обломки, которые игроки могут собирать для добычи. В этом разделе вы можете управлять появлением этих куч обломков, их прочностью, временем, в течение которого они остаются слишком горячими, чтобы их можно было трогать, и тем, что игроки получат, собирая их.
JSON:
 "Debris": {
    "Spawn Gibs": true,
    "Hit Points": 500.0,
    "Cooling Period Seconds": 480.0,
    "Override Default Salvage": false,
    "Salvage Override Items": [
      {
        "Short Name": "charcoal",
        "Display Name": null,
        "Skin Id": 0,
        "Minimum Amount": 24,
        "Maximum Amount": 24,
        "Spawn As Blueprint": false,
        "Rarity": "Common"
      },
      {
        "Short Name": "metal.fragments",
        "Display Name": null,
        "Skin Id": 0,
        "Minimum Amount": 24,
        "Maximum Amount": 24,
        "Spawn As Blueprint": false,
        "Rarity": "Common"
      },
      {
        "Short Name": "metal.refined",
        "Display Name": null,
        "Skin Id": 0,
        "Minimum Amount": 7,
        "Maximum Amount": 7,
        "Spawn As Blueprint": false,
        "Rarity": "Rare"
      }
    ]
  },
  • Spawn Gibs- Если значение true, после крушения вертолёта появляются видимые обломки. Игроки могут находить и обрабатывать эти обломки для сбора материалов.
  • Hit Points- Сколько здоровья у каждой кучи мусора? Игроки должны повреждать обломки, чтобы их собрать. Когда запас здоровья иссякнет, они исчезнут.
  • Cooling Period Seconds- Время (в секундах) после падения, в течение которого обломки слишком горячие для сбора. Игрокам необходимо дождаться их остывания, прежде чем их можно будет собирать.
  • Override Default Salvage- Если значение true, выпадающие по умолчанию ресурсы (например, уголь и фрагменты металла) заменяются вашей собственной добычей.
  • Salvage Override Items- Пользовательский список предметов, которые игроки получают при сборе мусора, используется только если включена опция переопределения.

ПВЕ

Позволяет контролировать, могут ли вертолёты наносить урон игрокам или зданиям, не вызвавшим призыв. Полезно для предотвращения сопутствующего ущерба на PVE-серверах или мероприятиях, где целью должен быть только вызывающий.
JSON:
 "PVE": {
    "Block Damage To Non Caller Players": true,
    "Block Damage To Non Caller Owned Entities": true
  },
  • Block Damage To Non Caller Players- Если да, то вертолет не нанесет урона ни одному игроку, кроме того, кто его вызвал (и, возможно, его команды, в зависимости от настроек профиля вызова) .
  • Block Damage To Non Caller Owned Entities– Если установлено значение «да», вертолёт не повредит базы, развёртываемые объекты или другие объекты, принадлежащие кому-либо, кроме вызывающего (или его команды, если это разрешено) . Это помогает защитить близлежащие здания во время вертолётных боёв.

Добыча

Управляет количеством появляющихся ящиков, их сроком действия и тем, как они заполняются добычей после крушения вертолёта. Вы можете использовать AlphaLoot или создать собственные таблицы добычи.
JSON:
"Loot": {
    "Maximum Crates To Spawn": 4,
    "Crate Lifetime Seconds": 1800.0,
    "Lock Crates To Caller": true,
    "Locking Fire Ball": {
      "Minimum Lifetime Seconds": 180.0,
      "Maximum Lifetime Seconds": 300.0,
      "Damage Per Second": 8.0,
      "Try To Spread": false,
      "Water To Extinguish": 2500
    },
    "Alpha Loot Profile": "",
    "Use Custom Loot Table": false,
    "Custom Loot Table":
  • Maximum Crates To Spawn- Количество ящиков с добычей, которые появятся после уничтожения вертолета.
  • Crate Lifetime Seconds- Сколько времени ящики остаются на месте до исчезновения (в секундах).
  • Lock Crates To Caller- Если установлено значение true, то только игрок, вызвавший вертолёт (и, возможно, его команда) сможет забрать ящики. Все остальные будут заблокированы.
  • Locking Fire Ball- Эффект огненного шара, появляющегося над запертыми ящиками. Это создаёт короткий огненный барьер, задерживающий добычу, пока он не исчезнет или не погаснет.
  • Alpha Loot Profile- Если вы используете Alpha Loot , введите здесь имя профиля добычи. Этот профиль будет использоваться для заполнения ящиков вертолёта.
  • Use Custom Loot Table- Если установлено значение true, плагин будет игнорировать Alpha Loot и вместо этого использовать пользовательскую таблицу добычи, которую вы определите ниже.
  • Custom Loot Table- Список записей в таблице добычи, которые вы определяете вручную. Каждая запись определяет, сколько слотов она занимает и какие предметы в ней могут появляться.

Пользовательская таблица добычи

Каждая запись определяет группу предметов, которые можно случайным образом выбрать и поместить в ящик при использовании пользовательской системы добычи.
JSON:
  "Custom Loot Table": [
      {
        "Rarity": "Common",
        "Minimum Loot Spawn Slots": 4,
        "Maximum Loot Spawn Slots": 4,
        "Items": [
          {
            "Short Name": "ammo.rifle",
            "Display Name": null,
            "Skin Id": 0,
            "Minimum Amount": 120,
            "Maximum Amount": 120,
            "Spawn As Blueprint": false,
            "Rarity": "Common"
          },
          {
            "Short Name": "ammo.rifle.incendiary",
            "Display Name": null,
            "Skin Id": 0,
            "Minimum Amount": 60,
            "Maximum Amount": 60,
            "Spawn As Blueprint": false,
            "Rarity": "Common"
          },
          {
            "Short Name": "ammo.rifle.explosive",
            "Display Name": null,
            "Skin Id": 0,
            "Minimum Amount": 30,
            "Maximum Amount": 30,
            "Spawn As Blueprint": false,
            "Rarity": "Rare"
          },
          {
            "Short Name": "ammo.rifle.hv",
            "Display Name": null,
            "Skin Id": 0,
            "Minimum Amount": 40,
            "Maximum Amount": 40,
            "Spawn As Blueprint": false,
            "Rarity": "Rare"
          }
        ]
  • Rarity- Используется для взвешенного выбора. Плагин случайным образом выбирает предметы в зависимости от редкости, используя веса, заданные в конфигурации плагина.
  • Minimum Loot Spawn Slots- Минимальное количество слотов ящиков для заполнения предметами из этой таблицы.
  • Maximum Loot Spawn Slots- Максимальное количество слотов ящиков, которые можно заполнить предметами из этой таблицы.
  • Items- Список отдельных предметов, которые могут появиться, если выбрана эта запись в таблице добычи.
  • JSON:
     {            "Short Name": "ammo.rifle",
                "Display Name": null,
                "Skin Id": 0,
                "Minimum Amount": 120,
                "Maximum Amount": 120,
                "Spawn As Blueprint": false,
                "Rarity": "Common"
    },
    • Short Name– Внутреннее короткое имя элемента (например, rifle.ak, scrap, ammo.rifle). Это элемент, который будет создан.
    • Display Name (Необязательно) — пользовательское имя, которое будет показано игрокам при получении предмета. Оставьте значение null, чтобы использовать отображаемое имя по умолчанию.
    • Skin Id- ID скина мастерской, который нужно применить к предмету. Используйте 0, чтобы не применять скин.
    • Minimum Amount/ Maximum Amount- При создании предмета будет выбрано случайное число между этими двумя значениями.
    • Spawn As Blueprint- Если true, предмет будет преобразован в чертеж при передаче. Например, вместо оружия вы получите чертеж этого оружия.
    • Rarity- Определяет категорию редкости предмета. Плагин использует её при подборе предметов по весу редкости в таблице добычи.

Профили вызовов

Профили вызовов позволяют игрокам вручную вызывать вертолёты с помощью команд чата или консольных команд. Вы можете создать разные профили с разной стоимостью, временем восстановления и разрешениями для каждого уровня.
JSON:
 "Call Profiles": [
    {
      "Enabled": true,
      "Lock On Caller": true,
      "Include Caller Allies (teammates, friends, clanmates, and clan allies)": true,
      "Suffix": "vip",
      "Number To Spawn": 1,
      "Priority": 1,
      "Cooldown Minutes": 360.0,
      "Cost To Call": [
        {
          "Enabled": true,
          "Name": "scrap",
          "Amount": 100
        },
        {
          "Enabled": true,
          "Name": "coin",
          "Amount": 50
        },
        {
          "Enabled": true,
          "Name": "point",
          "Amount": 50
        }
      ]
    }
  ]
  • Enabled- Можно ли использовать этот профиль?
  • Lock On Caller- Если установлено значение true, вертолёт будет игнорировать свою обычную логику нацеливания и вместо этого отслеживать игрока, вызвавшего его. Этот игрок становится основным объектом внимания вертолёта при принятии решений о движении и нацеливании.
  • Include Caller Team- Если включено, игроки, являющиеся друзьями, состоящими в одном клане или в союзных кланах, считаются союзниками вызывающего. Они будут включены в захват цели, смогут повреждать вертолёт, получат доступ к ящикам с добычей, а их базы не будут защищены, если включены ограничения PvE.

    Примечание: этот режим захвата цели переопределяет такие настройки, как Only Retaliate If Attacked, то есть вертолёт продолжит следовать за вызывающим, даже если обычно он не атакует цели без провокации.

  • Suffix— Используется для создания уникального разрешения для данного профиля вызова. Формат разрешения: customhelicoptertiers2.<TierName>.<Suffix>.
  • Number To Spawn- Сколько вертолетов этот профиль вызова создает за одно использование.
  • Priority- Определяет, какой профиль использовать, если у игрока есть доступ к нескольким. Более высокие значения имеют приоритет.
  • Cooldown Minutes- Время (в минутах), которое игрок должен подождать, прежде чем снова сделать звонок с этим профилем.
  • Cost To Call- Это список валют, которые игроки должны заплатить за использование этого профиля вызова вертолёта.
    Плагин поддерживает:
    • Стоимость на основе предметов - любое допустимое краткое название предмета (например, лом, металл, осколки, камни) будет вычтено из инвентаря игрока.
    • Монеты — если вы используете плагин «Экономика» , включите coinв название , чтобы вычитать монеты из баланса игрока.
    • Очки — если вы используете плагин Server Rewards , включите pointв название , чтобы вычесть очки из баланса игрока.

Смертельные приказы

Вы можете настроить каждый уровень на запуск одного или нескольких наборов команд при уничтожении вертолёта. Каждый набор может содержать несколько команд (чат, сервер или клиент), а при уничтожении вертолёта плагин либо запускает все наборы, либо выбирает один случайным образом в зависимости от вашей конфигурации.
JSON:
"Run Random Death Command Set": false,
"Death Command Sets": [
  {
    "Commands": [
      {
        "Type": "Chat",
        "Command": "I just took down the {TierName} at grid {Grid}!"
      }
    ]
  },
  {
    "Commands": [
      {
        "Type": "Client",
        "Command": "gametip.showtoast 0.3 \"{PlayerName}, you earned that scrap!\""
      },
      {
        "Type": "Server",
        "Command": "inventory.giveto {PlayerId} scrap 100"
      }
    ]
  }
]
  • Run Random Death Command- Если true, плагин выберет один случайный набор команд и выполнит все команды из этого набора. Если false, все наборы команд будут выполнены по порядку.
  • Death Commands– Список сгруппированных наборов команд. Каждый набор содержит список команд, которые можно выполнить вместе. Каждая команда включает:
    • Type- Один из вариантов: чат, клиент или сервер.
    • Command- Фактическая строка команды. Поддерживаемые заполнители:
      • {PlayerName}- Имя игрока, вызвавшего вертолет, или «Неизвестно», если вызывающего нет.
      • {PlayerId}- Steam ID вызывающего игрока или «0», если его нет.
      • {TierName}- Название уровня вертолета.
      • {Grid}- Место крушения вертолета на карте.
      • {PositionX}, {PositionY}, {PositionZ}- Мировые координаты места крушения.

Пример данных уровня

Все значения по умолчанию в данных соответствуют ванильным настройкам.
JSON:
{
  "Name": "Default",
  "Enabled": true,
  "Lifetime Minutes": 30.0,
  "Speed": "Normal",
  "Health": {
    "Body Health": 10000.0,
    "Main Rotor Health": 900.0,
    "Tail Rotor Health": 500.0
  },
  "Spawn": {
    "Enable Automated Spawns": true,
    "Maximum Population": 1,
    "Initial Spawn": false,
    "Minimum Respawn Delay Minutes": 120.0,
    "Maximum Respawn Delay Minutes": 240.0,
    "Minimum Number To Spawn Per Tick": 1,
    "Maximum Number To Spawn Per Tick": 1,
    "Spawn Locations": [
      "Ocean",
      "Mainland"
    ]
  },
  "Patrol": {
    "Chance To Pick Monument Instead Of Random Position": 60,
    "No Go Monuments": []
  },
  "Targeting": {
    "Target Acquisition Range": 150.0,
    "Seconds Before Dropping Unseen Targets": 6.0,
    "Chance Of Final Strafe Before Dropping Target": 100,
    "Only Retaliate If Attacked": false
  },
  "Strafe": {
    "Can Strafe Players Near Enemy Bases": false,
    "Maximum Rockets Fired Per Strafe": 12,
    "Delay Between Rocket Launches Seconds": 0.2,
    "Cooldown Between Strafes Seconds": 20.0,
    "Chance To Upgrade From Strafe To Orbit Strafe": 60,
    "Maximum Rockets Fired Per Orbit Strafe": 18,
    "Delay Between Rocket Launches While Orbiting Seconds": 0.5,
    "Can Use Napalm Rockets": true,
    "Cooldown Between Napalm Strafes Seconds": 30.0
  },
  "Machine Gun": {
    "Time Between Individual Shots Seconds": 0.09,
    "Burst Firing Duration Seconds": 3.0,
    "Cooldown Time Between Bursts Seconds": 4.0,
    "Maximum Target Engagement Range": 150.0,
    "Target Tracking Duration Before Loss Seconds": 5.0,
    "Base Bullet Damage": 20.0,
    "Bullet Spread Accuracy": 2.0
  },
  "Danger Zone": {
    "Maximum Allowed Danger Zones": 20,
    "Base Danger Zone Radius": 20.0,
    "Remove Least Significant Danger Zone When Full": true,
    "Seconds Before Danger Zone Expires": 5.0,
    "No Go Zone Radius": 250.0,
    "Flee Damage Percentage": 35,
    "Seconds Before No Go Zone Expires": 300.0
  },
  "Crash": {
    "Maximum Fire Balls To Spawn": 8,
    "Fire Ball": {
      "Minimum Lifetime Seconds": 180.0,
      "Maximum Lifetime Seconds": 300.0,
      "Damage Per Second": 8.0,
      "Try To Spread": true,
      "Water To Extinguish": 2500
    }
  },
  "Debris": {
    "Spawn Gibs": true,
    "Hit Points": 500.0,
    "Cooling Period Seconds": 480.0,
    "Override Default Salvage": false,
    "Salvage Override Items": [
      {
        "Short Name": "charcoal",
        "Display Name": null,
        "Skin Id": 0,
        "Minimum Amount": 24,
        "Maximum Amount": 24,
        "Spawn As Blueprint": false,
        "Rarity": "Common"
      },
      {
        "Short Name": "metal.fragments",
        "Display Name": null,
        "Skin Id": 0,
        "Minimum Amount": 24,
        "Maximum Amount": 24,
        "Spawn As Blueprint": false,
        "Rarity": "Common"
      },
      {
        "Short Name": "metal.refined",
        "Display Name": null,
        "Skin Id": 0,
        "Minimum Amount": 7,
        "Maximum Amount": 7,
        "Spawn As Blueprint": false,
        "Rarity": "Rare"
      }
    ]
  },
  "PVE": {
    "Block Damage To Non Caller Players": true,
    "Block Damage To Non Caller Owned Entities": true
  },
  "Loot": {
    "Maximum Crates To Spawn": 4,
    "Crate Lifetime Seconds": 1800.0,
    "Lock Crates To Caller": true,
    "Locking Fire Ball": {
      "Minimum Lifetime Seconds": 180.0,
      "Maximum Lifetime Seconds": 300.0,
      "Damage Per Second": 8.0,
      "Try To Spread": false,
      "Water To Extinguish": 2500
    },
    "Alpha Loot Profile": "",
    "Use Custom Loot Table": false,
    "Custom Loot Table": [
    ]
  },
  "Call Profiles": [
    {
      "Enabled": true,
      "Lock On Caller": true,
      "Include Caller Team": true,
      "Suffix": "vip",
      "Number To Spawn": 1,
      "Priority": 1,
      "Cooldown Minutes": 360.0,
      "Cost To Call": [
        {
          "Enabled": true,
          "Name": "scrap",
          "Amount": 100
        },
        {
          "Enabled": true,
          "Name": "coin",
          "Amount": 50
        },
        {
          "Enabled": true,
          "Name": "point",
          "Amount": 50
        }
      ]
    }
  ]
}