Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
  • Нужна помощь?

    Создайте тему в соответствующем разделе
    Не нужно писать всё в чат!
  • Загляните на торговую площадку

    Там вы можете купить
    всё что касается игровых серверов
  • Не хотите бан?

    Пожалуйста, ознакомьтесь с нашими правилами
    Не нарушайте порядок!
  • Продаёте или покупаете?

    Пользуйтесь услугами гаранта
    Мы сделаем вашу сделку безопасной
DrTauren

A3EAI - Roaming/Vehicle AI Patrols / Патрули ботов (аналог DZAI)

Рекомендованные сообщения

Что такое A3EAI:
A3EAI это аддон миссий, созданный специально для ARMA3: Epoch с учётом его особенностей. Плагин создан на основе DZAI 2.2.1. Если вы пользовались DZAI, то вы точно знаете чего ожидать от этого плагина.

 

Особенности A3EAI:

  • Автоматически генерируемые статические спавны ботов в определённых локациях при наличии игроков вблизи последней
  • Динамический спавн ботов: боты рандомно появляются вблизи игрока и начинают на него охоту
  • Случайный спавн ботов: группы ботов появляются вблизи определённых городов
  • Патрули ботов (воздушные и наземные): патрули на машинах, которые ездят по карте и ищут игроков для охоты. Тем же занимаются воздушные патрули. Из вертолётов могут выпрыгивать десантные группы. Разные группы ботов могут периодически кооперироваться чтобы помочь "своим" в бою
  • Вы также можете сами выбирать к\акие патрули вам нужны и спавнить их в нужных локациях
  • A3EAI использует "эпочевские" таблицы лута для выдачи оного ботам
  • Автоматический поиск ошибок: осуществляется автоматический поиск ошибок в файлах при старте миссии. В случае если ошибка будет найдена, то скрипт запускает восстановление

 

A3EAI-master.zip

Либо скачиваем с GitHub

 

Инструкция по установке:

1) Качаем архив, копируем файлы Addons, A3EAI_config.sqf, A3EAI_custom_defs

2) Открываем вашу папку @EpochHive

  • Внимание: A3EAI требует что бы серверная папка Epoch`а была названа именно так: @EpochHive (без учёта регистра), так как она и должна быть названа изначально

3) Копируем прямо в эту папку написанные выше файлы. Если система предложит заменить\объеденить файлы, выбираем "Да"

  • Внимание: файлы эпохи не заменяются

4) Настройки скрипта вы можете изменить в файле A3EAI_config.sqf

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах





хорошие миссии, сам такие использую у себя на серве!

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

  • Вы также можете сами выбирать к\акие патрули вам нужны и спавнить их в нужных локациях

что нужно для этого сделать, можно пример?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

хорошие миссии, сам такие использую у себя на серве!

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

  • Вы также можете сами выбирать к\акие патрули вам нужны и спавнить их в нужных локациях

что нужно для этого сделать, можно пример?

В файле где прописан спавн групп сделай свою со своими настройками  :smile:

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

В файле где прописан спавн групп сделай свою со своими настройками  :smile:

это понятно, мне бы пример строчки спавна группы))

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

это понятно, мне бы пример строчки спавна группы))

В этом файле прописывай спавн: a3eai_custom_defs.sqf

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

В этом файле прописывай спавн: a3eai_custom_defs.sqf

я понимаю, в каком файле прописывается спавн, даже знаю, где кастомный файл включается, это все написано redme.txt

мне не понятно, что конкретно нужно писать в a3eai_custom_defs.sqf?  

можно конкретный пример строчки из этого файла? 

просто пример, в котором, грубо говоря, строка, отвечающая за спавн одного бота по заданным координатам

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

В этом файле прописывай спавн: a3eai_custom_defs.sqf

в общем, сделал так:

 

["AreaName1",[3583.73,2181.36,7.53227],20,3,1,true,6000] call A3EAI_createCustomInfantryQueue;
["AreaName2",[3582.92,2180.04,0.382078],20,1,1,true,6000] call A3EAI_createCustomInfantryQueue;
["AreaName3",[3565.68,2155.43,0.00135088],30,4,1,true,6000] call A3EAI_createCustomInfantryQueue;
["AreaName4",[3606.62,2142.95,0.00124693],30,4,1,true,6000] call A3EAI_createCustomInfantryQueue;
["AreaName5",[3660.57,2191.22,0.00154829],30,4,1,true,6000] call A3EAI_createCustomInfantryQueue;
["AreaName6",[3638.29,2188.82,6.97302],50,2,1,true,6000] call A3EAI_createCustomInfantryQueue;
["AreaName7",[3650.12,2221.14,7.09293],5,2,1,true,6000] call A3EAI_createCustomInfantryQueue;
["AreaName8",[3620.71,2233.64,0.00146008],30,5,1,true,6000] call A3EAI_createCustomInfantryQueue;
["AreaName9",[3635.4,2232.5,0.00164032],"B_G_Offroad_01_armed_F",100,[3,1],1,true,6000] call A3EAI_createCustomVehicleQueue;
["AreaName10",[3552.91,2190.53,0.00141716],"B_G_Offroad_01_armed_F",100,[3,1],1,true,6000] call A3EAI_createCustomVehicleQueue;

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

В этом файле прописывай спавн: a3eai_custom_defs.sqf

собственно, не помогло.... сделал все, как в инструкции, в редакторе создал все эти строчки, но кастомные юниты так и не появились.... может я что-то не так сделал?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

это сырые боты, они должны взоимодействовать и с игроками если их не трогать, например помог ты мирным ботам ини и в долгу не останутся, если по вам откроют огонь бандиты боты, мирные прикроют огнем но все за вас не сделают, они также должны бегать лутаться сами строить и даже грабить игроков угонять транспорт я все это прописал но конфигурация не работает

скрипт сырой сам автор это пишет даже

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Поставил, настроил немного. Вертов и машин ставил по 10 и по 15, кроме пеших ботов в игре никого не видел. патрули на вертах и машинах не появляются. Пробовал когда был 1 на серве.  A3EAI_playerCountThreshold = 1 это так поставил. Что не так сделал?

 

 

один верт с ботами увидел все же за 3 часа. пеших хватает. Я думал почаще будет. На машине так и не было.

Изменено пользователем Anton555 (история изменений)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Поставил, настроил немного. Вертов и машин ставил по 10 и по 15, кроме пеших ботов в игре никого не видел. патрули на вертах и машинах не появляются. Пробовал когда был 1 на серве.  A3EAI_playerCountThreshold = 1 это так поставил. Что не так сделал?

 

 

один верт с ботами увидел все же за 3 часа. пеших хватает. Я думал почаще будет. На машине так и не было.

Включи на админке показ техники и увидишь, есть ли боты на технике.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Смотрел постоянно, нету их. Один раз засветился верт с ботами, улетел и исчез с карты. Может какой конфликт, еще стоит sem миссии с сайта epoch.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Смотрел постоянно, нету их. Один раз засветился верт с ботами, улетел и исчез с карты. Может какой конфликт, еще стоит sem миссии с сайта epoch.

У меня установлены VEMF, A3EAI, Blckeagl и SEM. Никаких конфликтов. Скорее всего неправильно установил и сервер не видит файл настроек миссии и, поэтому, загружает дефолтные значения, где нужно 20 человек на сервере. Проверь логи.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

логи вроде в A3Master_  у меня пишется. они пустые. Может смотрю не туда.   Ставил все как выше описано, уж здесь ошибиться врядли. Вот тут еще глядел  http://s-platoon.ru/index.php?/topic/3425-patruli-botov-peshie-vozdushnyea3eai/  дак это тож самое. может гдето надо принудительно показать путь к конфигу?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Насколько я понимаю, то сейчас из папки @epochhive никакие файлы настройки не считываются и миссии считывают дефолтные настройки из своих PBOшек. У меня миссия A3EAI версии 1.0.1. и она находится в корне сервера, цепляется в батнике и конфиг файл лежит в отдельном a3eai_config.pbo.

У тебя же в A3EAI.pbo в папке scripts есть файл verifySettings.sqf. Вот оттуда миссия и считывает настройки. Настрой этот файл и проверь еще раз сервер.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Да. Именно так и есть. Спасибо, буду тебе репу поднимать)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Народ подскажите не запускается этот мод пишет в консоли @epochhive\ a3eai_config.sqf not found хотя это файл там находиться!

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Народ подскажите не запускается этот мод пишет в консоли @epochhive\ a3eai_config.sqf not found хотя это файл там находиться!

А с чего ты взял, что миссия не запускается? Сервер не находит файл и только. Сервер будет загружать настройки из внутреннего файла. Прочти эту тему с 15 поста.

Изменено пользователем zxButchxz (история изменений)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А с чего ты взял, что миссия не запускается? Сервер не находит файл и только. Сервер будет загружать настройки из внутреннего файла. Прочти эту тему с 15 поста.

Можно поподробнее? я что-то туплю) там с новой версией что то обновилось и не работает так как надо по инструкции?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Можно поподробнее? я что-то туплю) там с новой версией что то обновилось и не работает так как надо по инструкции?

Неужели трудно прочесть пост №15?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Неужели трудно прочесть пост №15?

Прочел! Скинул конфиг в ПБО и... (((((  

 

8:39:06 Dedicated host created.

8:39:09 BattlEye Server: Initialized (v1.208)

8:39:09 Host identity created.

8:39:09 Game Port: 2302, Steam Query Port: 2303

8:39:09 Mission Epoch Mod read from bank.

8:39:09 BattlEye Server: Unknown command

8:39:09 Roles assigned.

8:39:09 Reading mission ...

8:39:23 Script @epochhive\A3EAI_config.sqf not found

8:39:23 BattlEye Server: RCon admin #0 (94.25.85.84:13699) logged in

8:39:23 Mission Epoch Mod read from bank.

8:39:23 Roles assigned.

8:39:23 Reading mission ...

8:39:24 Script @epochhive\A3EAI_config.sqf not found

8:39:25 Mission Epoch Mod read from bank.

8:39:25 Roles assigned.

8:39:25 Reading mission ...

8:39:25 Script @epochhive\A3EAI_config.sqf not found

8:39:26 Mission Epoch Mod read from bank.

8:39:26 Roles assigned.

8:39:26 Reading mission ...

8:39:27 Script @epochhive\A3EAI_config.sqf not found

8:39:27 Mission Epoch Mod read from bank.

8:39:27 Roles assigned.

8:39:27 Reading mission ...

8:39:28 Script @epochhive\A3EAI_config.sqf not found

8:39:28 Mission Epoch Mod read from bank.

8:39:28 Roles assigned.

8:39:28 Reading mission ...

8:39:29 Script @epochhive\A3EAI_config.sqf not found

8:39:30 Mission Epoch Mod read from bank.

8:39:30 Roles assigned.

8:39:30 Reading mission ...

8:39:30 Script @epochhive\A3EAI_config.sqf not found

8:39:31 Mission Epoch Mod read from bank.

8:39:31 Roles assigned.

8:39:31 Reading mission ...

8:39:32 Script @epochhive\A3EAI_config.sqf not found

8:39:32 Mission Epoch Mod read from bank.

8:39:32 Roles assigned.

8:39:32 Reading mission ...

8:39:33 Script @epochhive\A3EAI_config.sqf not found

8:39:33 Mission Epoch Mod read from bank.

8:39:34 Roles assigned.

8:39:34 Reading mission ...

8:39:34 Script @epochhive\A3EAI_config.sqf not found

8:39:35 Mission Epoch Mod read from bank.

8:39:35 Roles assigned.

8:39:35 Reading mission ...

8:39:36 Script @epochhive\A3EAI_config.sqf not found

8:39:36 Mission Epoch Mod read from bank.

8:39:36 Roles assigned.

8:39:36 Reading mission ...

8:39:37 Script @epochhive\A3EAI_config.sqf not found

8:39:37 Mission Epoch Mod read from bank.

8:39:37 Roles assigned.

8:39:37 Reading mission ...

8:39:38 Script @epochhive\A3EAI_config.sqf not found

8:39:39 Mission Epoch Mod read from bank.

8:39:39 Roles assigned.

8:39:39 Reading mission ...

8:39:46 Script @epo 8:39:50 Mission Epoch Mod read from bank.

8:39:50 Roles assigned.

8:39:50 Reading mission ...

8:39:51 Script @epochhive\A3EAI_config.sqf not found

8:39:51 Mission Epoch Mod read from bank.

8:39:51 Roles assigned.

8:39:51 Reading mission ...

8:39:52 Script @epochhive\A3EAI_config.sqf not found

8:39:53 Mission Epoch Mod read from bank.

8:39:53 Roles assigned.

8:39:53 Reading mission ...

 

Изменено пользователем Dimm58 (история изменений)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Неужели трудно прочесть пост №15?

Что именно там править сможешь дать пример!!!! 

 

Неужели трудно прочесть пост №15?

 

F:\Arma 3 Server\@epochhive\addons\A3EAI\scripts\verifySettings.sqf

 

Что именно в файле можно пример, я правлю всё равно  Script @epochhive\A3EAI_config.sqf not found

Изменено пользователем XXLXX (история изменений)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

verifySettings.sqf

 

_startTime = diag_tickTime;

//Check value types
{
_value = missionNamespace getVariable (_x select 0);
if ((isNil "_value") or {(typeName _value) != (typeName (_x select 1))}) then {
missionNamespace setVariable [(_x select 0),(_x select 1)];
diag_log format ["[A3EAI] Error found in variable %1, resetting to default value.",(_x select 0)];
};
} forEach [
["A3EAI_debugLevel",0],
["A3EAI_monitorRate",300],
["A3EAI_verifyClassnames",true],
["A3EAI_checkVehicleInit",true],
["A3EAI_cleanupDelay",900],
["A3EAI_dynamicUniformList",true],
["A3EAI_dynamicWeaponList",true],
["A3EAI_dynamicBackpackList",true],
["A3EAI_dynamicVestList",true],
["A3EAI_dynamicHeadgearList",true],
["A3EAI_dynamicFoodList",true],
["A3EAI_dynamicLootList",true],
["A3EAI_dynamicLootLargeList",true],
["A3EAI_dynamicWeaponBlacklist",[]],
["A3EAI_playerCountThreshold",20],
["A3EAI_chanceScalingThreshold",0.50],
["A3EAI_upwardsChanceScaling",true],
["A3EAI_maxAirReinforcements",5],
["A3EAI_airReinforcementVehicles",["B_Heli_Transport_01_F","B_Heli_Light_01_armed_F"]],
["A3EAI_airReinforcementSpawnChance0",0.10],
["A3EAI_airReinforcementSpawnChance1",0.20],
["A3EAI_airReinforcementSpawnChance2",0.30],
["A3EAI_airReinforcementSpawnChance3",0.40],
["A3EAI_airReinforcementAllowedTypes",["static","dynamic","random"]],
["A3EAI_airReinforcementDuration0",120],
["A3EAI_airReinforcementDuration1",180],
["A3EAI_airReinforcementDuration2",240],
["A3EAI_airReinforcementDuration3",300],
["A3EAI_findKiller",true],
["A3EAI_tempNVGs",false],
["A3EAI_GLRequirement",2],
["A3EAI_launcherTypes",[]],
["A3EAI_launcherLevelReq",-1],
["A3EAI_launchersPerGroup",1],
["A3EAI_enableHealing",true],
["A3EAI_radioMsgs",false],
["A3EAI_deathMessages",false],
["A3EAI_loadCustomFile",true],
["A3EAI_enableHC",false],
["A3EAI_waitForHC",false],
["A3EAI_autoGenerateStatic",true],
["A3EAI_minAI_capitalCity",2],
["A3EAI_addAI_capitalCity",1],
["A3EAI_unitLevel_capitalCity",1],
["A3EAI_minAI_city",1],
["A3EAI_addAI_city",2],
["A3EAI_unitLevel_city",1],
["A3EAI_minAI_village",1],
["A3EAI_addAI_village",1],
["A3EAI_unitLevel_village",0],
["A3EAI_minAI_remoteArea",1],
["A3EAI_addAI_remoteArea",1],
["A3EAI_unitLevel_remoteArea",2],
["A3EAI_minAI_wilderness",1],
["A3EAI_addAI_wilderness",1],
["A3EAI_unitLevel_wilderness",2],
["A3EAI_tempBlacklistTime",600],
//["A3EAI_promoteChances",[0.20,0.10,0.10]],
["A3EAI_respawnTimeMin",300],
["A3EAI_respawnTimeMax",600],
["A3EAI_despawnWait",120],
["A3EAI_spawnChance_capitalCity",0.70],
["A3EAI_spawnChance_city",0.60],
["A3EAI_spawnChance_village",0.40],
["A3EAI_spawnChance_remoteArea",0.80],
["A3EAI_spawnChance_wilderness",0.50],
["A3EAI_respawnLimit_village",-1],
["A3EAI_respawnLimit_city",-1],
["A3EAI_respawnLimit_capitalCity",-1],
["A3EAI_respawnLimit_remoteArea",-1],
["A3EAI_staticBlacklistLocations",[]],
["A3EAI_dynMaxSpawns",15],
["A3EAI_dynCooldownTime",900],
["A3EAI_dynResetLastSpawn",3600],
["A3EAI_huntingChance",0.60],
//["A3EAI_airReinforceChance",0.40],
["A3EAI_dynDespawnWait",120],
["A3EAI_maxRandomSpawns",-1],
["A3EAI_randDespawnWait",120],
["A3EAI_minRandSpawnDist",600],
["A3EAI_maxHeliPatrols",0],
["A3EAI_levelChancesAir",[0.00,0.50,0.35,0.15]],
["A3EAI_respawnAirMinTime",600],
["A3EAI_respawnAirMaxTime",900],
["A3EAI_heliList",[
["B_Heli_Light_01_armed_F",5],
["B_Heli_Attack_01_F",2]
]],
["A3EAI_heliGunnerUnits",3],
["A3EAI_removeMissileWeapons",true],
["A3EAI_detectChance",0.70],
["A3EAI_paraDropChance",0.50],
["A3EAI_paraDropCooldown",1800],
["A3EAI_paraDropAmount",3],
["A3EAI_maxLandPatrols",0],
["A3EAI_levelChancesLand",[0.00,0.50,0.35,0.15]],
["A3EAI_respawnLandMinTime",600],
["A3EAI_respawnLandMaxTime",900],
["A3EAI_vehList",[
["C_Van_01_transport_EPOCH",5],
["C_Offroad_01_EPOCH",5],
["C_Hatchback_02_EPOCH",5],
["C_Hatchback_01_EPOCH",5],
["B_Truck_01_transport_EPOCH",5],
["B_Truck_01_mover_EPOCH",5],
["B_Truck_01_covered_EPOCH",5],
["B_Truck_01_box_EPOCH",5]
]],
["A3EAI_vehGunnerUnits",2],
["A3EAI_vehCargoUnits",3],
["A3EAI_waypointBlacklist",[]],
["A3EAI_skill0",[
["aimingAccuracy",0.10,0.15],
["aimingShake",0.50,0.59],
["aimingSpeed",0.50,0.59],
["spotDistance",0.50,0.59],
["spotTime",0.50,0.59],
["courage",0.50,0.59],
["reloadSpeed",0.50,0.59],
["commanding",0.50,0.59],
["general",0.50,0.59]
]],
["A3EAI_skill1",[
["aimingAccuracy",0.15,0.20],
["aimingShake",0.60,0.69],
["aimingSpeed",0.60,0.69],
["spotDistance",0.60,0.69],
["spotTime",0.60,0.69],
["courage",0.60,0.69],
["reloadSpeed",0.60,0.69],
["commanding",0.60,0.69],
["general",0.60,0.69]
]],
["A3EAI_skill2",[
["aimingAccuracy",0.20,0.25],
["aimingShake",0.70,0.85],
["aimingSpeed",0.70,0.85],
["spotDistance",0.70,0.85],
["spotTime",0.70,0.85],
["courage",0.70,0.85],
["reloadSpeed",0.70,0.85],
["commanding",0.70,0.85],
["general",0.70,0.85]
]],
["A3EAI_skill3",[
["aimingAccuracy",0.25,0.30],
["aimingShake",0.85,0.95],
["aimingSpeed",0.85,0.95],
["spotDistance",0.85,0.95],
["spotTime",0.85,0.95],
["courage",0.85,0.95],
["reloadSpeed",0.85,0.95],
["commanding",0.85,0.95],
["general",0.85,0.95]
]],
["A3EAI_useWeaponChance0",[0.20,0.80,0.00,0.00]],
["A3EAI_useWeaponChance1",[0.00,0.90,0.05,0.05]],
["A3EAI_useWeaponChance2",[0.00,0.80,0.10,0.10]],
["A3EAI_useWeaponChance3",[0.00,0.70,0.15,0.15]],
["A3EAI_opticsChance0",0.00],
["A3EAI_opticsChance1",0.25],
["A3EAI_opticsChance2",0.50],
["A3EAI_opticsChance3",0.75],
["A3EAI_pointerChance0",0.00],
["A3EAI_pointerChance1",0.25],
["A3EAI_pointerChance2",0.50],
["A3EAI_pointerChance3",0.75],
["A3EAI_muzzleChance0",0.00],
["A3EAI_muzzleChance1",0.25],
["A3EAI_muzzleChance2",0.50],
["A3EAI_muzzleChance3",0.75],
["A3EAI_underbarrelChance0",0.00],
["A3EAI_underbarrelChance1",0.25],
["A3EAI_underbarrelChance2",0.50],
["A3EAI_underbarrelChance3",0.75],
["A3EAI_kryptoAmount0",25],
["A3EAI_kryptoAmount1",50],
["A3EAI_kryptoAmount2",75],
["A3EAI_kryptoAmount3",100],
["A3EAI_foodLootCount",1],
["A3EAI_miscLootCount1",1],
["A3EAI_miscLootCount2",1],
["A3EAI_chanceFirstAidKit",0.20],
["A3EAI_chanceFoodLoot",0.40],
["A3EAI_chanceMiscLoot1",0.40],
["A3EAI_chanceMiscLoot2",0.30],
["A3EAI_lootPullChance0",0.30],
["A3EAI_lootPullChance1",0.40],
["A3EAI_lootPullChance2",0.50],
["A3EAI_lootPullChance3",0.60],
["A3EAI_uniformTypes0",["U_O_CombatUniform_ocamo", "U_O_GhillieSuit", "U_O_PilotCoveralls", "U_O_Wetsuit", "U_OG_Guerilla1_1", "U_OG_Guerilla2_1", "U_OG_Guerilla2_3", "U_OG_Guerilla3_1", "U_OG_Guerilla3_2", "U_OG_leader", "U_C_Poloshirt_stripped", "U_C_Poloshirt_blue", "U_C_Poloshirt_burgundy", "U_C_Poloshirt_tricolour", "U_C_Poloshirt_salmon", "U_C_Poloshirt_redwhite", "U_C_Poor_1", "U_C_WorkerCoveralls", "U_C_Journalist", "U_C_Scientist", "U_OrestesBody", "U_Wetsuit_uniform", "U_Wetsuit_White", "U_Wetsuit_Blue", "U_Wetsuit_Purp", "U_Wetsuit_Camo", "U_CamoRed_uniform", "U_CamoBrn_uniform", "U_CamoBlue_uniform", "U_Camo_uniform", "U_ghillie1_uniform", "U_ghillie2_uniform", "U_ghillie3_uniform", "U_C_Driver_1", "U_C_Driver_2", "U_C_Driver_3", "U_C_Driver_4", "U_C_Driver_1_black", "U_C_Driver_1_blue", "U_C_Driver_1_green", "U_C_Driver_1_red", "U_C_Driver_1_white", "U_C_Driver_1_yellow", "U_C_Driver_1_orange", "U_C_Driver_1_red"]],
["A3EAI_uniformTypes1",["U_O_CombatUniform_ocamo", "U_O_GhillieSuit", "U_O_PilotCoveralls", "U_O_Wetsuit", "U_OG_Guerilla1_1", "U_OG_Guerilla2_1", "U_OG_Guerilla2_3", "U_OG_Guerilla3_1", "U_OG_Guerilla3_2", "U_OG_leader", "U_C_Poloshirt_stripped", "U_C_Poloshirt_blue", "U_C_Poloshirt_burgundy", "U_C_Poloshirt_tricolour", "U_C_Poloshirt_salmon", "U_C_Poloshirt_redwhite", "U_C_Poor_1", "U_C_WorkerCoveralls", "U_C_Journalist", "U_C_Scientist", "U_OrestesBody", "U_Wetsuit_uniform", "U_Wetsuit_White", "U_Wetsuit_Blue", "U_Wetsuit_Purp", "U_Wetsuit_Camo", "U_CamoRed_uniform", "U_CamoBrn_uniform", "U_CamoBlue_uniform", "U_Camo_uniform", "U_ghillie1_uniform", "U_ghillie2_uniform", "U_ghillie3_uniform", "U_C_Driver_1", "U_C_Driver_2", "U_C_Driver_3", "U_C_Driver_4", "U_C_Driver_1_black", "U_C_Driver_1_blue", "U_C_Driver_1_green", "U_C_Driver_1_red", "U_C_Driver_1_white", "U_C_Driver_1_yellow", "U_C_Driver_1_orange", "U_C_Driver_1_red"]],
["A3EAI_uniformTypes2",["U_O_CombatUniform_ocamo", "U_O_GhillieSuit", "U_O_PilotCoveralls", "U_O_Wetsuit", "U_OG_Guerilla1_1", "U_OG_Guerilla2_1", "U_OG_Guerilla2_3", "U_OG_Guerilla3_1", "U_OG_Guerilla3_2", "U_OG_leader", "U_C_Poloshirt_stripped", "U_C_Poloshirt_blue", "U_C_Poloshirt_burgundy", "U_C_Poloshirt_tricolour", "U_C_Poloshirt_salmon", "U_C_Poloshirt_redwhite", "U_C_Poor_1", "U_C_WorkerCoveralls", "U_C_Journalist", "U_C_Scientist", "U_OrestesBody", "U_Wetsuit_uniform", "U_Wetsuit_White", "U_Wetsuit_Blue", "U_Wetsuit_Purp", "U_Wetsuit_Camo", "U_CamoRed_uniform", "U_CamoBrn_uniform", "U_CamoBlue_uniform", "U_Camo_uniform", "U_ghillie1_uniform", "U_ghillie2_uniform", "U_ghillie3_uniform", "U_C_Driver_1", "U_C_Driver_2", "U_C_Driver_3", "U_C_Driver_4", "U_C_Driver_1_black", "U_C_Driver_1_blue", "U_C_Driver_1_green", "U_C_Driver_1_red", "U_C_Driver_1_white", "U_C_Driver_1_yellow", "U_C_Driver_1_orange", "U_C_Driver_1_red"]],
["A3EAI_uniformTypes3",["U_O_CombatUniform_ocamo", "U_O_GhillieSuit", "U_O_PilotCoveralls", "U_O_Wetsuit", "U_OG_Guerilla1_1", "U_OG_Guerilla2_1", "U_OG_Guerilla2_3", "U_OG_Guerilla3_1", "U_OG_Guerilla3_2", "U_OG_leader", "U_C_Poloshirt_stripped", "U_C_Poloshirt_blue", "U_C_Poloshirt_burgundy", "U_C_Poloshirt_tricolour", "U_C_Poloshirt_salmon", "U_C_Poloshirt_redwhite", "U_C_Poor_1", "U_C_WorkerCoveralls", "U_C_Journalist", "U_C_Scientist", "U_OrestesBody", "U_Wetsuit_uniform", "U_Wetsuit_White", "U_Wetsuit_Blue", "U_Wetsuit_Purp", "U_Wetsuit_Camo", "U_CamoRed_uniform", "U_CamoBrn_uniform", "U_CamoBlue_uniform", "U_Camo_uniform", "U_ghillie1_uniform", "U_ghillie2_uniform", "U_ghillie3_uniform", "U_C_Driver_1", "U_C_Driver_2", "U_C_Driver_3", "U_C_Driver_4", "U_C_Driver_1_black", "U_C_Driver_1_blue", "U_C_Driver_1_green", "U_C_Driver_1_red", "U_C_Driver_1_white", "U_C_Driver_1_yellow", "U_C_Driver_1_orange", "U_C_Driver_1_red"]],
["A3EAI_pistolList",["hgun_Pistol_heavy_01_F","hgun_P07_F","hgun_Rook40_F","hgun_Pistol_heavy_02_F","1911_pistol_epoch","hgun_ACPC2_F","ruger_pistol_epoch"]],
["A3EAI_rifleList",["AKM_EPOCH","sr25_epoch","arifle_Katiba_GL_F","arifle_Katiba_C_F","arifle_Katiba_F","arifle_MX_GL_F","arifle_MX_GL_Black_F","arifle_MXM_Black_F","arifle_MXC_Black_F","arifle_MX_Black_F","arifle_MXM_F","arifle_MXC_F","arifle_MX_F","l85a2_epoch","l85a2_pink_epoch","l85a2_ugl_epoch","m4a3_EPOCH","m16_EPOCH","m16Red_EPOCH","arifle_Mk20_GL_F","arifle_Mk20_GL_plain_F","arifle_Mk20C_F","arifle_Mk20C_plain_F","arifle_Mk20_F","arifle_Mk20_plain_F","arifle_TRG21_GL_F","arifle_TRG21_F","arifle_TRG20_F","arifle_SDAR_F","Rollins_F","SMG_01_F","SMG_02_F","hgun_PDW2000_F"]],
["A3EAI_machinegunList",["LMG_Zafir_F","arifle_MX_SW_F","arifle_MX_SW_Black_F","LMG_Mk200_F","m249_EPOCH","m249Tan_EPOCH","MMG_01_hex_F","MMG_01_tan_F","MMG_02_camo_F","MMG_02_black_F","MMG_02_sand_F"]],
["A3EAI_sniperList",["m107_EPOCH","m107Tan_EPOCH","srifle_DMR_02_F","srifle_DMR_02_camo_F","srifle_DMR_02_sniper_F","srifle_DMR_03_F","srifle_DMR_03_khaki_F","srifle_DMR_03_tan_F","srifle_DMR_03_multicam_F","srifle_DMR_03_woodland_F","srifle_DMR_03_spotter_F","srifle_DMR_04_F","srifle_DMR_04_Tan_F","srifle_DMR_05_blk_F","srifle_DMR_05_hex_F","srifle_DMR_05_tan_f","srifle_DMR_06_camo_F","srifle_DMR_06_olive_F","srifle_LRR_F","srifle_GM6_F","srifle_DMR_01_F","M14_EPOCH","M14Grn_EPOCH","srifle_EBR_F"]],
["A3EAI_weaponOpticsList",["optic_NVS","optic_SOS","optic_LRPS","optic_AMS","optic_AMS_khk","optic_AMS_snd","optic_KHS_blk","optic_KHS_hex","optic_KHS_old","optic_KHS_tan","optic_DMS","optic_Arco","optic_Hamr","Elcan_epoch","Elcan_reflex_epoch","optic_MRCO","optic_Holosight","optic_Holosight_smg","optic_Aco","optic_ACO_grn","optic_Aco_smg","optic_ACO_grn_smg","optic_Yorris","optic_MRD"]],
["A3EAI_backpackTypes0",["B_AssaultPack_cbr", "B_AssaultPack_dgtl", "B_AssaultPack_khk", "B_AssaultPack_mcamo", "B_AssaultPack_ocamo", "B_AssaultPack_rgr", "B_AssaultPack_sgg", "B_Carryall_cbr", "B_Carryall_khk", "B_Carryall_mcamo", "B_Carryall_ocamo", "B_Carryall_oli", "B_Carryall_oucamo", "B_FieldPack_blk", "B_FieldPack_cbr", "B_FieldPack_khk", "B_FieldPack_ocamo", "B_FieldPack_oli", "B_FieldPack_oucamo", "B_Kitbag_cbr", "B_Kitbag_mcamo", "B_Kitbag_rgr", "B_Kitbag_sgg", "B_Parachute", "B_TacticalPack_blk", "B_TacticalPack_mcamo", "B_TacticalPack_ocamo", "B_TacticalPack_oli", "B_TacticalPack_rgr", "smallbackpack_red_epoch", "smallbackpack_green_epoch", "smallbackpack_teal_epoch", "smallbackpack_pink_epoch"]],
["A3EAI_backpackTypes1",["B_AssaultPack_cbr", "B_AssaultPack_dgtl", "B_AssaultPack_khk", "B_AssaultPack_mcamo", "B_AssaultPack_ocamo", "B_AssaultPack_rgr", "B_AssaultPack_sgg", "B_Carryall_cbr", "B_Carryall_khk", "B_Carryall_mcamo", "B_Carryall_ocamo", "B_Carryall_oli", "B_Carryall_oucamo", "B_FieldPack_blk", "B_FieldPack_cbr", "B_FieldPack_khk", "B_FieldPack_ocamo", "B_FieldPack_oli", "B_FieldPack_oucamo", "B_Kitbag_cbr", "B_Kitbag_mcamo", "B_Kitbag_rgr", "B_Kitbag_sgg", "B_Parachute", "B_TacticalPack_blk", "B_TacticalPack_mcamo", "B_TacticalPack_ocamo", "B_TacticalPack_oli", "B_TacticalPack_rgr", "smallbackpack_red_epoch", "smallbackpack_green_epoch", "smallbackpack_teal_epoch", "smallbackpack_pink_epoch"]],
["A3EAI_backpackTypes2",["B_AssaultPack_cbr", "B_AssaultPack_dgtl", "B_AssaultPack_khk", "B_AssaultPack_mcamo", "B_AssaultPack_ocamo", "B_AssaultPack_rgr", "B_AssaultPack_sgg", "B_Carryall_cbr", "B_Carryall_khk", "B_Carryall_mcamo", "B_Carryall_ocamo", "B_Carryall_oli", "B_Carryall_oucamo", "B_FieldPack_blk", "B_FieldPack_cbr", "B_FieldPack_khk", "B_FieldPack_ocamo", "B_FieldPack_oli", "B_FieldPack_oucamo", "B_Kitbag_cbr", "B_Kitbag_mcamo", "B_Kitbag_rgr", "B_Kitbag_sgg", "B_Parachute", "B_TacticalPack_blk", "B_TacticalPack_mcamo", "B_TacticalPack_ocamo", "B_TacticalPack_oli", "B_TacticalPack_rgr", "smallbackpack_red_epoch", "smallbackpack_green_epoch", "smallbackpack_teal_epoch", "smallbackpack_pink_epoch"]],
["A3EAI_backpackTypes3",["B_AssaultPack_cbr", "B_AssaultPack_dgtl", "B_AssaultPack_khk", "B_AssaultPack_mcamo", "B_AssaultPack_ocamo", "B_AssaultPack_rgr", "B_AssaultPack_sgg", "B_Carryall_cbr", "B_Carryall_khk", "B_Carryall_mcamo", "B_Carryall_ocamo", "B_Carryall_oli", "B_Carryall_oucamo", "B_FieldPack_blk", "B_FieldPack_cbr", "B_FieldPack_khk", "B_FieldPack_ocamo", "B_FieldPack_oli", "B_FieldPack_oucamo", "B_Kitbag_cbr", "B_Kitbag_mcamo", "B_Kitbag_rgr", "B_Kitbag_sgg", "B_Parachute", "B_TacticalPack_blk", "B_TacticalPack_mcamo", "B_TacticalPack_ocamo", "B_TacticalPack_oli", "B_TacticalPack_rgr", "smallbackpack_red_epoch", "smallbackpack_green_epoch", "smallbackpack_teal_epoch", "smallbackpack_pink_epoch"]],
["A3EAI_vestTypes0",["V_1_EPOCH", "V_2_EPOCH", "V_3_EPOCH", "V_4_EPOCH", "V_5_EPOCH", "V_6_EPOCH", "V_7_EPOCH", "V_8_EPOCH", "V_9_EPOCH", "V_10_EPOCH", "V_11_EPOCH", "V_12_EPOCH", "V_13_EPOCH", "V_14_EPOCH", "V_15_EPOCH", "V_16_EPOCH", "V_17_EPOCH", "V_18_EPOCH", "V_19_EPOCH", "V_20_EPOCH", "V_21_EPOCH", "V_22_EPOCH", "V_23_EPOCH", "V_24_EPOCH", "V_25_EPOCH", "V_26_EPOCH", "V_27_EPOCH", "V_28_EPOCH", "V_29_EPOCH", "V_30_EPOCH", "V_31_EPOCH", "V_32_EPOCH", "V_33_EPOCH", "V_34_EPOCH", "V_35_EPOCH", "V_36_EPOCH", "V_37_EPOCH", "V_38_EPOCH", "V_39_EPOCH", "V_40_EPOCH"]],
["A3EAI_vestTypes1",["V_1_EPOCH", "V_2_EPOCH", "V_3_EPOCH", "V_4_EPOCH", "V_5_EPOCH", "V_6_EPOCH", "V_7_EPOCH", "V_8_EPOCH", "V_9_EPOCH", "V_10_EPOCH", "V_11_EPOCH", "V_12_EPOCH", "V_13_EPOCH", "V_14_EPOCH", "V_15_EPOCH", "V_16_EPOCH", "V_17_EPOCH", "V_18_EPOCH", "V_19_EPOCH", "V_20_EPOCH", "V_21_EPOCH", "V_22_EPOCH", "V_23_EPOCH", "V_24_EPOCH", "V_25_EPOCH", "V_26_EPOCH", "V_27_EPOCH", "V_28_EPOCH", "V_29_EPOCH", "V_30_EPOCH", "V_31_EPOCH", "V_32_EPOCH", "V_33_EPOCH", "V_34_EPOCH", "V_35_EPOCH", "V_36_EPOCH", "V_37_EPOCH", "V_38_EPOCH", "V_39_EPOCH", "V_40_EPOCH"]],
["A3EAI_vestTypes2",["V_1_EPOCH", "V_2_EPOCH", "V_3_EPOCH", "V_4_EPOCH", "V_5_EPOCH", "V_6_EPOCH", "V_7_EPOCH", "V_8_EPOCH", "V_9_EPOCH", "V_10_EPOCH", "V_11_EPOCH", "V_12_EPOCH", "V_13_EPOCH", "V_14_EPOCH", "V_15_EPOCH", "V_16_EPOCH", "V_17_EPOCH", "V_18_EPOCH", "V_19_EPOCH", "V_20_EPOCH", "V_21_EPOCH", "V_22_EPOCH", "V_23_EPOCH", "V_24_EPOCH", "V_25_EPOCH", "V_26_EPOCH", "V_27_EPOCH", "V_28_EPOCH", "V_29_EPOCH", "V_30_EPOCH", "V_31_EPOCH", "V_32_EPOCH", "V_33_EPOCH", "V_34_EPOCH", "V_35_EPOCH", "V_36_EPOCH", "V_37_EPOCH", "V_38_EPOCH", "V_39_EPOCH", "V_40_EPOCH"]],
["A3EAI_vestTypes3",["V_1_EPOCH", "V_2_EPOCH", "V_3_EPOCH", "V_4_EPOCH", "V_5_EPOCH", "V_6_EPOCH", "V_7_EPOCH", "V_8_EPOCH", "V_9_EPOCH", "V_10_EPOCH", "V_11_EPOCH", "V_12_EPOCH", "V_13_EPOCH", "V_14_EPOCH", "V_15_EPOCH", "V_16_EPOCH", "V_17_EPOCH", "V_18_EPOCH", "V_19_EPOCH", "V_20_EPOCH", "V_21_EPOCH", "V_22_EPOCH", "V_23_EPOCH", "V_24_EPOCH", "V_25_EPOCH", "V_26_EPOCH", "V_27_EPOCH", "V_28_EPOCH", "V_29_EPOCH", "V_30_EPOCH", "V_31_EPOCH", "V_32_EPOCH", "V_33_EPOCH", "V_34_EPOCH", "V_35_EPOCH", "V_36_EPOCH", "V_37_EPOCH", "V_38_EPOCH", "V_39_EPOCH", "V_40_EPOCH"]],
["A3EAI_headgearTypes0",["H_1_EPOCH","H_2_EPOCH","H_3_EPOCH","H_4_EPOCH","H_5_EPOCH","H_6_EPOCH","H_7_EPOCH","H_8_EPOCH","H_9_EPOCH","H_10_EPOCH","H_11_EPOCH","H_12_EPOCH","H_13_EPOCH","H_14_EPOCH","H_15_EPOCH","H_16_EPOCH","H_17_EPOCH","H_18_EPOCH","H_19_EPOCH","H_20_EPOCH","H_21_EPOCH","H_22_EPOCH","H_23_EPOCH","H_24_EPOCH","H_25_EPOCH","H_26_EPOCH","H_27_EPOCH","H_28_EPOCH","H_29_EPOCH","H_30_EPOCH","H_31_EPOCH","H_32_EPOCH","H_33_EPOCH","H_34_EPOCH","H_35_EPOCH","H_36_EPOCH","H_37_EPOCH","H_38_EPOCH","H_39_EPOCH","H_40_EPOCH","H_41_EPOCH","H_42_EPOCH","H_43_EPOCH","H_44_EPOCH","H_45_EPOCH","H_46_EPOCH","H_47_EPOCH","H_48_EPOCH","H_49_EPOCH","H_50_EPOCH","H_51_EPOCH","H_52_EPOCH","H_53_EPOCH","H_54_EPOCH","H_55_EPOCH","H_56_EPOCH","H_57_EPOCH","H_58_EPOCH","H_59_EPOCH","H_60_EPOCH","H_61_EPOCH","H_62_EPOCH","H_63_EPOCH","H_64_EPOCH","H_65_EPOCH","H_66_EPOCH","H_67_EPOCH","H_68_EPOCH","H_69_EPOCH","H_70_EPOCH","H_71_EPOCH","H_72_EPOCH","H_73_EPOCH","H_74_EPOCH","H_75_EPOCH","H_76_EPOCH","H_77_EPOCH","H_78_EPOCH","H_79_EPOCH","H_80_EPOCH","H_81_EPOCH","H_82_EPOCH","H_83_EPOCH","H_84_EPOCH","H_85_EPOCH","H_86_EPOCH","H_87_EPOCH","H_88_EPOCH","H_89_EPOCH","H_90_EPOCH","H_91_EPOCH","H_92_EPOCH","H_93_EPOCH","H_94_EPOCH","H_95_EPOCH","H_96_EPOCH","H_97_EPOCH","H_98_EPOCH","H_99_EPOCH","H_100_EPOCH","H_101_EPOCH","H_102_EPOCH","H_103_EPOCH","H_104_EPOCH"]],
["A3EAI_headgearTypes1",["H_1_EPOCH","H_2_EPOCH","H_3_EPOCH","H_4_EPOCH","H_5_EPOCH","H_6_EPOCH","H_7_EPOCH","H_8_EPOCH","H_9_EPOCH","H_10_EPOCH","H_11_EPOCH","H_12_EPOCH","H_13_EPOCH","H_14_EPOCH","H_15_EPOCH","H_16_EPOCH","H_17_EPOCH","H_18_EPOCH","H_19_EPOCH","H_20_EPOCH","H_21_EPOCH","H_22_EPOCH","H_23_EPOCH","H_24_EPOCH","H_25_EPOCH","H_26_EPOCH","H_27_EPOCH","H_28_EPOCH","H_29_EPOCH","H_30_EPOCH","H_31_EPOCH","H_32_EPOCH","H_33_EPOCH","H_34_EPOCH","H_35_EPOCH","H_36_EPOCH","H_37_EPOCH","H_38_EPOCH","H_39_EPOCH","H_40_EPOCH","H_41_EPOCH","H_42_EPOCH","H_43_EPOCH","H_44_EPOCH","H_45_EPOCH","H_46_EPOCH","H_47_EPOCH","H_48_EPOCH","H_49_EPOCH","H_50_EPOCH","H_51_EPOCH","H_52_EPOCH","H_53_EPOCH","H_54_EPOCH","H_55_EPOCH","H_56_EPOCH","H_57_EPOCH","H_58_EPOCH","H_59_EPOCH","H_60_EPOCH","H_61_EPOCH","H_62_EPOCH","H_63_EPOCH","H_64_EPOCH","H_65_EPOCH","H_66_EPOCH","H_67_EPOCH","H_68_EPOCH","H_69_EPOCH","H_70_EPOCH","H_71_EPOCH","H_72_EPOCH","H_73_EPOCH","H_74_EPOCH","H_75_EPOCH","H_76_EPOCH","H_77_EPOCH","H_78_EPOCH","H_79_EPOCH","H_80_EPOCH","H_81_EPOCH","H_82_EPOCH","H_83_EPOCH","H_84_EPOCH","H_85_EPOCH","H_86_EPOCH","H_87_EPOCH","H_88_EPOCH","H_89_EPOCH","H_90_EPOCH","H_91_EPOCH","H_92_EPOCH","H_93_EPOCH","H_94_EPOCH","H_95_EPOCH","H_96_EPOCH","H_97_EPOCH","H_98_EPOCH","H_99_EPOCH","H_100_EPOCH","H_101_EPOCH","H_102_EPOCH","H_103_EPOCH","H_104_EPOCH"]],
["A3EAI_headgearTypes2",["H_1_EPOCH","H_2_EPOCH","H_3_EPOCH","H_4_EPOCH","H_5_EPOCH","H_6_EPOCH","H_7_EPOCH","H_8_EPOCH","H_9_EPOCH","H_10_EPOCH","H_11_EPOCH","H_12_EPOCH","H_13_EPOCH","H_14_EPOCH","H_15_EPOCH","H_16_EPOCH","H_17_EPOCH","H_18_EPOCH","H_19_EPOCH","H_20_EPOCH","H_21_EPOCH","H_22_EPOCH","H_23_EPOCH","H_24_EPOCH","H_25_EPOCH","H_26_EPOCH","H_27_EPOCH","H_28_EPOCH","H_29_EPOCH","H_30_EPOCH","H_31_EPOCH","H_32_EPOCH","H_33_EPOCH","H_34_EPOCH","H_35_EPOCH","H_36_EPOCH","H_37_EPOCH","H_38_EPOCH","H_39_EPOCH","H_40_EPOCH","H_41_EPOCH","H_42_EPOCH","H_43_EPOCH","H_44_EPOCH","H_45_EPOCH","H_46_EPOCH","H_47_EPOCH","H_48_EPOCH","H_49_EPOCH","H_50_EPOCH","H_51_EPOCH","H_52_EPOCH","H_53_EPOCH","H_54_EPOCH","H_55_EPOCH","H_56_EPOCH","H_57_EPOCH","H_58_EPOCH","H_59_EPOCH","H_60_EPOCH","H_61_EPOCH","H_62_EPOCH","H_63_EPOCH","H_64_EPOCH","H_65_EPOCH","H_66_EPOCH","H_67_EPOCH","H_68_EPOCH","H_69_EPOCH","H_70_EPOCH","H_71_EPOCH","H_72_EPOCH","H_73_EPOCH","H_74_EPOCH","H_75_EPOCH","H_76_EPOCH","H_77_EPOCH","H_78_EPOCH","H_79_EPOCH","H_80_EPOCH","H_81_EPOCH","H_82_EPOCH","H_83_EPOCH","H_84_EPOCH","H_85_EPOCH","H_86_EPOCH","H_87_EPOCH","H_88_EPOCH","H_89_EPOCH","H_90_EPOCH","H_91_EPOCH","H_92_EPOCH","H_93_EPOCH","H_94_EPOCH","H_95_EPOCH","H_96_EPOCH","H_97_EPOCH","H_98_EPOCH","H_99_EPOCH","H_100_EPOCH","H_101_EPOCH","H_102_EPOCH","H_103_EPOCH","H_104_EPOCH"]],
["A3EAI_headgearTypes3",["H_1_EPOCH","H_2_EPOCH","H_3_EPOCH","H_4_EPOCH","H_5_EPOCH","H_6_EPOCH","H_7_EPOCH","H_8_EPOCH","H_9_EPOCH","H_10_EPOCH","H_11_EPOCH","H_12_EPOCH","H_13_EPOCH","H_14_EPOCH","H_15_EPOCH","H_16_EPOCH","H_17_EPOCH","H_18_EPOCH","H_19_EPOCH","H_20_EPOCH","H_21_EPOCH","H_22_EPOCH","H_23_EPOCH","H_24_EPOCH","H_25_EPOCH","H_26_EPOCH","H_27_EPOCH","H_28_EPOCH","H_29_EPOCH","H_30_EPOCH","H_31_EPOCH","H_32_EPOCH","H_33_EPOCH","H_34_EPOCH","H_35_EPOCH","H_36_EPOCH","H_37_EPOCH","H_38_EPOCH","H_39_EPOCH","H_40_EPOCH","H_41_EPOCH","H_42_EPOCH","H_43_EPOCH","H_44_EPOCH","H_45_EPOCH","H_46_EPOCH","H_47_EPOCH","H_48_EPOCH","H_49_EPOCH","H_50_EPOCH","H_51_EPOCH","H_52_EPOCH","H_53_EPOCH","H_54_EPOCH","H_55_EPOCH","H_56_EPOCH","H_57_EPOCH","H_58_EPOCH","H_59_EPOCH","H_60_EPOCH","H_61_EPOCH","H_62_EPOCH","H_63_EPOCH","H_64_EPOCH","H_65_EPOCH","H_66_EPOCH","H_67_EPOCH","H_68_EPOCH","H_69_EPOCH","H_70_EPOCH","H_71_EPOCH","H_72_EPOCH","H_73_EPOCH","H_74_EPOCH","H_75_EPOCH","H_76_EPOCH","H_77_EPOCH","H_78_EPOCH","H_79_EPOCH","H_80_EPOCH","H_81_EPOCH","H_82_EPOCH","H_83_EPOCH","H_84_EPOCH","H_85_EPOCH","H_86_EPOCH","H_87_EPOCH","H_88_EPOCH","H_89_EPOCH","H_90_EPOCH","H_91_EPOCH","H_92_EPOCH","H_93_EPOCH","H_94_EPOCH","H_95_EPOCH","H_96_EPOCH","H_97_EPOCH","H_98_EPOCH","H_99_EPOCH","H_100_EPOCH","H_101_EPOCH","H_102_EPOCH","H_103_EPOCH","H_104_EPOCH"]],
["A3EAI_foodLoot",["FoodSnooter","FoodWalkNSons","FoodBioMeat","ItemSodaOrangeSherbet","ItemSodaPurple","ItemSodaMocha","ItemSodaBurst","ItemSodaRbull","honey_epoch","emptyjar_epoch","sardines_epoch","meatballs_epoch","scam_epoch","sweetcorn_epoch","WhiskeyNoodle","ItemCoolerE"]],
["A3EAI_MiscLoot1",["PaintCanClear","PaintCanBlk","PaintCanBlu","PaintCanBrn","PaintCanGrn","PaintCanOra","PaintCanPur","PaintCanRed","PaintCanTeal","PaintCanYel","ItemDocument","ItemMixOil","emptyjar_epoch","emptyjar_epoch","FoodBioMeat","ItemSodaOrangeSherbet","ItemSodaPurple","ItemSodaMocha","ItemSodaBurst","ItemSodaRbull","sardines_epoch","meatballs_epoch","scam_epoch","sweetcorn_epoch","Towelette","Towelette","Towelette","Towelette","Towelette","HeatPack","HeatPack","HeatPack","ColdPack","ColdPack","VehicleRepair","CircuitParts","ItemCoolerE","ItemScraps","ItemScraps"]],
["A3EAI_MiscLoot2",["MortarBucket","MortarBucket","ItemCorrugated","CinderBlocks","jerrycan_epoch","jerrycan_epoch","VehicleRepair","VehicleRepair","CircuitParts"]],
["A3EAI_tools0",[["ItemWatch",0.70],["ItemCompass",0.50],["ItemMap",0.50],["ItemGPS",0.05],["EpochRadio0",0.05]]],
["A3EAI_tools1",[["ItemWatch",0.80],["ItemCompass",0.60],["ItemMap",0.60],["ItemGPS",0.10],["EpochRadio0",0.10]]],
["A3EAI_tools2",[["ItemWatch",0.80],["ItemCompass",0.70],["ItemMap",0.70],["ItemGPS",0.15],["EpochRadio0",0.15]]],
["A3EAI_tools3",[["ItemWatch",0.80],["ItemCompass",0.80],["ItemMap",0.80],["ItemGPS",0.20],["EpochRadio0",0.20]]],
["A3EAI_gadgets0",[["binocular",0.40],["NVG_EPOCH",0.05]]],
["A3EAI_gadgets1",[["binocular",0.50],["NVG_EPOCH",0.10]]],
["A3EAI_gadgets2",[["binocular",0.60],["NVG_EPOCH",0.15]]],
["A3EAI_gadgets3",[["binocular",0.70],["NVG_EPOCH",0.20]]]
];

if (A3EAI_verifySettings) then {
if !(A3EAI_minAI_capitalCity in [0,1,2,3,4,5]) then {diag_log format ["[A3EAI] Error found in variable A3EAI_minAI_capitalCity, resetting to default value."]; A3EAI_minAI_capitalCity = 2};
if !(A3EAI_addAI_capitalCity in [0,1,2,3,4,5]) then {diag_log format ["[A3EAI] Error found in variable A3EAI_addAI_capitalCity, resetting to default value."]; A3EAI_addAI_capitalCity = 1};
if !(A3EAI_unitLevel_capitalCity in [0,1,2,3]) then {diag_log format ["[A3EAI] Error found in variable A3EAI_unitLevel_capitalCity, resetting to default value."]; A3EAI_unitLevel_capitalCity = 1};
if !(A3EAI_minAI_city in [0,1,2,3,4,5]) then {diag_log format ["[A3EAI] Error found in variable A3EAI_minAI_city, resetting to default value."]; A3EAI_minAI_city = 1};
if !(A3EAI_addAI_city in [0,1,2,3,4,5]) then {diag_log format ["[A3EAI] Error found in variable A3EAI_addAI_city, resetting to default value."]; A3EAI_addAI_city = 2};
if !(A3EAI_unitLevel_city in [0,1,2,3]) then {diag_log format ["[A3EAI] Error found in variable A3EAI_unitLevel_city, resetting to default value."]; A3EAI_unitLevel_city = 1};
if !(A3EAI_minAI_village in [0,1,2,3,4,5]) then {diag_log format ["[A3EAI] Error found in variable A3EAI_minAI_village, resetting to default value."]; A3EAI_minAI_village = 1};
if !(A3EAI_addAI_village in [0,1,2,3,4,5]) then {diag_log format ["[A3EAI] Error found in variable A3EAI_addAI_village, resetting to default value."]; A3EAI_addAI_village = 1};
if !(A3EAI_unitLevel_village in [0,1,2,3]) then {diag_log format ["[A3EAI] Error found in variable A3EAI_unitLevel_village, resetting to default value."]; A3EAI_unitLevel_village = 0};
if !(A3EAI_minAI_remoteArea in [0,1,2,3,4,5]) then {diag_log format ["[A3EAI] Error found in variable A3EAI_minAI_remoteArea, resetting to default value."]; A3EAI_minAI_remoteArea = 1};
if !(A3EAI_addAI_remoteArea in [0,1,2,3,4,5]) then {diag_log format ["[A3EAI] Error found in variable A3EAI_unitLevel_remoteArea, resetting to default value."]; A3EAI_addAI_remoteArea = 1};
if !(A3EAI_unitLevel_remoteArea in [0,1,2,3]) then {diag_log format ["[A3EAI] Error found in variable A3EAI_unitLevel_remoteArea, resetting to default value."]; A3EAI_unitLevel_remoteArea = 2};
if !(A3EAI_minAI_wilderness in [0,1,2,3,4,5]) then {diag_log format ["[A3EAI] Error found in variable A3EAI_minAI_remoteArea, resetting to default value."]; A3EAI_minAI_wilderness = 1};
if !(A3EAI_addAI_wilderness in [0,1,2,3,4,5]) then {diag_log format ["[A3EAI] Error found in variable A3EAI_unitLevel_remoteArea, resetting to default value."]; A3EAI_addAI_wilderness = 1};
if !(A3EAI_unitLevel_wilderness in [0,1,2,3]) then {diag_log format ["[A3EAI] Error found in variable A3EAI_unitLevel_remoteArea, resetting to default value."]; A3EAI_unitLevel_wilderness = 2};
//if !((count A3EAI_promoteChances) isEqualTo 3) then {diag_log format ["[A3EAI] Error found in variable A3EAI_promoteChances, resetting to default value."]; A3EAI_promoteChances = [0.20,0.10,0.10]};
if !((count A3EAI_levelChancesAir) isEqualTo 4) then {diag_log format ["[A3EAI] Error found in variable A3EAI_levelChancesAir, resetting to default value."]; A3EAI_levelChancesAir = [0.00,0.50,0.35,0.15]};
if !((count A3EAI_levelChancesLand) isEqualTo 4) then {diag_log format ["[A3EAI] Error found in variable A3EAI_levelChancesLand, resetting to default value."]; A3EAI_levelChancesAir = [0.00,0.50,0.35,0.15]};
if !((count A3EAI_useWeaponChance0) isEqualTo 4) then {diag_log format ["[A3EAI] Error found in variable A3EAI_useWeaponChance0, resetting to default value."]; A3EAI_useWeaponChance0 = [0.20,0.80,0.00,0.00]};
if !((count A3EAI_useWeaponChance1) isEqualTo 4) then {diag_log format ["[A3EAI] Error found in variable A3EAI_useWeaponChance1, resetting to default value."]; A3EAI_useWeaponChance1 = [0.00,0.90,0.05,0.05]};
if !((count A3EAI_useWeaponChance2) isEqualTo 4) then {diag_log format ["[A3EAI] Error found in variable A3EAI_useWeaponChance2, resetting to default value."]; A3EAI_useWeaponChance2 = [0.00,0.80,0.10,0.10]};
if !((count A3EAI_useWeaponChance3) isEqualTo 4) then {diag_log format ["[A3EAI] Error found in variable A3EAI_useWeaponChance3, resetting to default value."]; A3EAI_useWeaponChance3 = [0.00,0.70,0.15,0.15]};
if ("air_reinforce" in A3EAI_airReinforcementAllowedTypes) then {A3EAI_airReinforcementAllowedTypes = A3EAI_airReinforcementAllowedTypes - ["air_reinforce"]};
};

diag_log format ["[A3EAI] Verified all A3EAI settings in %1 seconds.",(diag_tickTime - _startTime)];

 

 

A3EAI_config.sqf

/*
A3EAI Configuration File

Description: Contains all configurable settings of A3EAI. Contains settings for debugging, customization of AI units, spawning, and loot.


*/

diag_log "[A3EAI] Reading A3EAI configuration file.";

/* A3EAI Settings
--------------------------------------------------------------------------------------------------------------------*/

//Enable or disable event logging to the server RPT file (named arma3server_[date]_[time].rpt). Debug level setting. 0: No debug output, 1: Basic Debug output, 2: Detailed Debug output. (Default: 0)
//Debug output may help finding additional information about A3EAI's background behavior. This output is helpful when asking for help regarding bugs or unexpected behaviors.
A3EAI_debugLevel = 0;

//Frequency of server monitor update to RPT log in seconds. The monitor periodically reports number of max/current AI units and dynamically spawned triggers into RPT log. (Default: 300, 0 = Disable reporting)
A3EAI_monitorRate = 300;

//Enable or disable verification and error-correction of classname tables used by A3EAI. If invalid entries are found, they are removed and logged into the RPT log.
//If disabled, any invalid classnames will not be removed and clients may crash if AI bodies with invalid items are looted. Only disable if a previous scan shows no invalid classnames (Default: true).
A3EAI_verifyClassnames = true;

//Enable filter against vehicles with init statements, which may cause BattlEye kicks. Enable if experiencing BattlEye kicks after adding new vehicle classnames (Default: false).
A3EAI_checkVehicleInit = false;

//Enables checking of all A3EAI config settings. (Default: true)
A3EAI_verifySettings = true;

//Minimum seconds to pass until each dead AI body or destroyed vehicle can be cleaned up by A3EAI's task scheduler. A3EAI will not clean up a body/vehicle if there is a player close by (Default: 900).
A3EAI_cleanupDelay = 900;

//Enabled: A3EAI will load custom spawn/blacklist definitions file on startup (A3EAI_custom_defs.sqf) (Default: false)
A3EAI_loadCustomFile = false;


/* A3EAI HC Settings
--------------------------------------------------------------------------------------------------------------------*/

//Enables A3EAI headless client support. (Default: false)
A3EAI_enableHC = false;

//If HC support enabled, A3EAI will pause during post-initialization until HC has successfully connected. (Default: false)
A3EAI_waitForHC = false;


/* Dynamic Classname Settings

If a setting is disabled, A3EAI will use the corresponding classname table further below. See "AI skin, weapon, loot, and equipment settings" section.
--------------------------------------------------------------------------------------------------------------------*/

//true: Generate AI uniform types from Epoch loot tables (Default)
//false: Uniforms defined by A3EAI_uniformTypes0, A3EAI_uniformTypes1, A3EAI_uniformTypes2, A3EAI_uniformTypes3
A3EAI_dynamicUniformList = true;

//true: Generate AI weapons from Epoch loot tables (Default)
//false: Weapons defined by A3EAI_pistolList, A3EAI_rifleList, A3EAI_machinegunList, A3EAI_sniperList
A3EAI_dynamicWeaponList = true;

//true: Use Epoch loot table data as whitelist for AI-usable weapon scopes (Default)
//false: Scopes defined by A3EAI_weaponOpticsList
A3EAI_dynamicOpticsList = true;

//true: Generate AI backpack types from Epoch loot tables (Default)
//false: Backpacks defined by A3EAI_backpackTypes0, A3EAI_backpackTypes1, A3EAI_backpackTypes2, A3EAI_backpackTypes3
A3EAI_dynamicBackpackList = true;

//true: Generate AI backpack types from Epoch loot tables (Default)
//false: Vests defined by A3EAI_vestTypes0, A3EAI_vestTypes1, A3EAI_vestTypes2, A3EAI_vestTypes3
A3EAI_dynamicVestList = true;

//true: Generate AI headgear types from Epoch loot tables (Default)
//false: Headgear defined by A3EAI_headgearTypes0, A3EAI_headgearTypes1, A3EAI_headgearTypes2, A3EAI_headgearTypes3
A3EAI_dynamicHeadgearList = true;

//true: Generate AI food types from Epoch loot tables (Default)
//false: Food defined by A3EAI_foodLoot
A3EAI_dynamicFoodList = true;

//true: Generate AI generic loot types from Epoch loot tables (Default)
//false: Loot defined by A3EAI_MiscLoot1
A3EAI_dynamicLootList = true;

//true: Generate AI generic loot (large) types from Epoch loot tables (Default)
//false: Loot defined by A3EAI_MiscLoot2
A3EAI_dynamicLootLargeList = true;

//Classnames of weapons to ignore from Epoch loot tables
A3EAI_dynamicWeaponBlacklist = [];


/* Shared AI Unit Settings. These settings affect all AI spawned unless noted otherwise.
--------------------------------------------------------------------------------------------------------------------*/

//Number of online players required for maximum (or minimum) AI spawn chance. Affects Static, Dynamic, Random AI spawns. (Default: 20)
A3EAI_playerCountThreshold = 20;

//If A3EAI_upwardsChanceScaling is true: Initial spawn chance multiplier. If A3EAI_upwardsChanceScaling is false: Final spawn chance multiplier. (Default: 0.50)
A3EAI_chanceScalingThreshold = 0.50;

//true: Spawn chance multiplier scales upwards from the above defined value to 1.00. false: Spawn chance multiplier scales downwards from 1.00 to the above defined value.
A3EAI_upwardsChanceScaling = true;

//(Static/Dynamic/Random Spawns) minAI: Minimum number of units. addAI: maximum number of additional units. unitLevel: Unit level (0-3)
A3EAI_minAI_village = 1; //1
A3EAI_addAI_village = 1; //1
A3EAI_unitLevel_village = 0; //0
A3EAI_spawnChance_village = 0.40; //0.40

//(Static/Dynamic/Random Spawns) minAI: Minimum number of units. addAI: maximum number of additional units. unitLevel: Unit level (0-3)
A3EAI_minAI_city = 1; //1
A3EAI_addAI_city = 2; //2
A3EAI_unitLevel_city = 1; //1
A3EAI_spawnChance_city = 0.60; //0.60

//(Static/Dynamic/Random Spawns) minAI: Minimum number of units. addAI: maximum number of additional units. unitLevel: Unit level (0-3)
A3EAI_minAI_capitalCity = 2; //2
A3EAI_addAI_capitalCity = 1; //1
A3EAI_unitLevel_capitalCity = 1; //1
A3EAI_spawnChance_capitalCity = 0.70; //0.70

//(Static/Dynamic/Random Spawns) minAI: Minimum number of units. addAI: maximum number of additional units. unitLevel: Unit level (0-3)
A3EAI_minAI_remoteArea = 1; //1
A3EAI_addAI_remoteArea = 1; //1
A3EAI_unitLevel_remoteArea = 2; //2
A3EAI_spawnChance_remoteArea = 0.80; //0.80

//(Dynamic/Random Spawns) minAI: Minimum number of units. addAI: maximum number of additional units. unitLevel: Unit level (0-3)
A3EAI_minAI_wilderness = 1; //1
A3EAI_addAI_wilderness = 2; //2
A3EAI_unitLevel_wilderness = 1; //1
A3EAI_spawnChance_wilderness = 0.50; //0.50

//(For dynamic and random spawns only) Defines amount of time to wait in seconds until cleaning up temporary blacklist area after dynamic/random spawn is deactivated (Default: 1200)
A3EAI_tempBlacklistTime = 1200;

//If enabled, AI group will attempt to track down player responsible for killing a group member. (Default: true)
A3EAI_findKiller = true;

//If normal probability check for spawning NVGs fails, then give AI temporary NVGs during night hours. Temporary NVGs are unlootable and will be removed at death (Default: false).
A3EAI_tempNVGs = true;

//Minimum AI unit level requirement to use underslung grenade launchers. Set to -1 to disable completely. (Default: 1)
A3EAI_GLRequirement = 1;

//Minimum AI unit level requirement to use launcher weapons. Set to -1 to disable completely. (Default: -1)
A3EAI_launcherLevelReq = -1;

//List of launcher-type weapons that AI can use.
A3EAI_launcherTypes = [];

//Maximum number of launcher weapons allowed per group (Default: 1)
A3EAI_launchersPerGroup = 1;

//Enable or disable AI self-healing. Level 0 AI cannot self-heal. (Default: true).
A3EAI_enableHealing = true;


/* A3EAI Client Addon features. These features require the A3EAI client addon to be installed in order to work.
--------------------------------------------------------------------------------------------------------------------*/

//Enable or disable radio message receiving. Players with radios (Radio Quartz) will be able to intercept some AI communications. (Default: false)
A3EAI_radioMsgs = false;

//Enable or disable AI death messages. Messages will be sent only to player responsible for killing the unit. Messages will be sent in System chat in the format "(Unit name) was killed." (Default: false)
A3EAI_deathMessages = false;


/* Static AI Spawning Settings
--------------------------------------------------------------------------------------------------------------------*/

//Enable or disable static AI spawns. If enabled, AI spawn points will be generated in cities, towns, and other named areas.
//Enabled: A3EAI automatically generates static spawns at named locations on map. Disabled: No static spawns will be generated. (Default: true)
A3EAI_autoGenerateStatic = true;

//Set minimum and maximum wait time in seconds to respawn an AI group after all units have been killed. Applies to both static AI and custom spawned AI (Default: Min 300, Max 600).
A3EAI_respawnTimeMin = 300;
A3EAI_respawnTimeMax = 600;

//Time to allow spawned AI units to exist in seconds before being despawned when no players are present in a trigger area. Applies to both static AI and custom spawned AI (Default: 120)
A3EAI_despawnWait = 120;

//Respawn Limits. Set to -1 for unlimited respawns. (Default: -1 for each).
A3EAI_respawnLimit_village = -1;
A3EAI_respawnLimit_city = -1;
A3EAI_respawnLimit_capitalCity = -1;
A3EAI_respawnLimit_remoteArea = -1;

//Add name of location as displayed on map prevent static AI spawns from being created in these locations. Location names are case-sensitive (Example: ["Aggelochori","Panochori","Zaros"])
A3EAI_staticBlacklistLocations = [];


/* Dynamic AI Spawning Settings. Probabilities should add up to 1.00
--------------------------------------------------------------------------------------------------------------------*/

//Upper limit of dynamic spawns on map at once. Set to 0 to disable dynamic spawns (Default: 15)
A3EAI_dynMaxSpawns = 15;

//Minimum time (in seconds) that must pass between dynamic spawns for each player (Default: 900)
A3EAI_dynCooldownTime = 900;

//Players offline for this amount of time (seconds) will have their last spawn timestamp reset (Default: 3600)
A3EAI_dynResetLastSpawn = 3600;

//Probability for dynamic AI to actively hunt a targeted player. If probability check fails, dynamic AI will patrol the area instead of hunting (Default: 0.60)
A3EAI_huntingChance = 0.60;

//Time to wait before despawning all AI units in dynamic spawn area when no players are present. (Default: 120)
A3EAI_dynDespawnWait = 120;


/* Random AI Spawning Settings (Feature in development)
--------------------------------------------------------------------------------------------------------------------*/

//Maximum number of placed random spawns on map. Set to -1 for A3EAI to automatically adjust spawn limit according to map size. Set to 0 to disable random spawns. (Default: -1)
A3EAI_maxRandomSpawns = -1;

//Time to wait before despawning all AI units in random spawn area when no players are present. (Default: 120)
A3EAI_randDespawnWait = 120;

//Minimum distance between a random spawn location and other random spawns. (Default: 0)
A3EAI_minRandSpawnDist = 0;


/* AI Air vehicle patrol settings. These AI vehicles will randomly travel between different cities and towns.
--------------------------------------------------------------------------------------------------------------------*/

//Global maximum number of active AI air vehicle patrols. Set at 0 to disable (Default: 0).
A3EAI_maxHeliPatrols = 10;

//Probability of spawning Level 0/1/2/3 AI air vehicle patrol spawns. Probabilities should add up to 1.00
A3EAI_levelChancesAir = [0.00,0.50,0.35,0.15];

//Set minimum and maximum wait time in seconds to respawn an AI vehicle patrol after vehicle is destroyed or disabled. (Default: Min 600, Max 900).
A3EAI_respawnAirMinTime = 600;
A3EAI_respawnAirMaxTime = 900;

//Classnames of air vehicle types to use, with the maximum amount of each type to spawn.
A3EAI_heliList = [
["B_Heli_Light_01_armed_F",5],
["B_Heli_Transport_01_F",5],
["I_Heli_light_03_F",5]
];

//Maximum number of gunner units per air vehicle. Limited by actual number of available gunner positions. (Default: 2)
//Affects: All AI air vehicle patrols, including custom and reinforcement.
A3EAI_heliGunnerUnits = 2;

//If enabled, A3EAI will remove all missile/rocket-type weaponry from spawned air vehicles. Affects all air vehicle types (patrols/custom/etc). (Default: true)
//Affects: All AI air vehicle patrols, including custom and reinforcement.
A3EAI_removeMissileWeapons = true;

//Probability of AI helicopter sucessfully detecting player if there is line-of-sight. AI helicopters will conduct a visual sweep upon arriving at each waypoint and some distance after leaving. (Default: 0.80)
//Affects: All AI air vehicle patrols, including custom and reinforcement.
A3EAI_detectChance = 0.80;

//Probability of AI to deploy units by parachute if players are nearby when helicopter is investigating a waypoint. (Default: 0.50)
//Affects: Air vehicle patrols.
A3EAI_paraDropChance = 0.50;

//Cooldown time for AI paradrop deployment in seconds. Note: Cooldown does not affect helicopter reinforcement for dynamic AI spawns. (Default: 1800).
//Affects: Air vehicle patrols.
A3EAI_paraDropCooldown = 1800;

//Number of AI to paradrop if players are nearby when helicopter is investigating a waypoint, or if helicopter is reinforcing a dynamic AI spawn. Limited by number of cargo seats available in the vehicle. (Default: 3)
//Affects: Air vehicle patrols, air reinforcements.
A3EAI_paraDropAmount = 3;


/*AI Land vehicle patrol settings. These AI vehicles will randomly travel between different cities and towns.
--------------------------------------------------------------------------------------------------------------------*/

//Global maximum number of active AI land vehicle patrols. Set at 0 to disable (Default: 0).
A3EAI_maxLandPatrols = 0;

//Probability of spawning Level 0/1/2/3 AI land vehicle spawns. Probabilities should add up to 1.00
A3EAI_levelChancesLand = [0.00,0.50,0.35,0.15];

//Set minimum and maximum wait time in seconds to respawn an AI vehicle patrol after vehicle is destroyed or disabled. (Default: Min 600, Max 900).
A3EAI_respawnLandMinTime = 600;
A3EAI_respawnLandMaxTime = 900;

//Classnames of land vehicle types to use, with the maximum amount of each type to spawn.
A3EAI_vehList = [
["O_Truck_02_box_EPOCH",5]
];

//Maximum number of gunner units per land vehicle. Limited by actual number of available gunner positions. (Default: 2)
A3EAI_vehGunnerUnits = 2;

//Maximum number of cargo units per land vehicle. Limited by actual number of available cargo positions. (Default: 3)
A3EAI_vehCargoUnits = 3;


/* AI Air Reinforcement Settings
--------------------------------------------------------------------------------------------------------------------*/

//Maximum allowed number of simultaneous active reinforcements (Default: 5)
A3EAI_maxAirReinforcements = 10;

//Air vehicles to use as reinforcement vehicles. Default: ["B_Heli_Transport_01_F","B_Heli_Light_01_armed_F"]
//Armed air vehicles will detect and engage players within reinforcement area. Unarmed air vehicles will deploy an AI paradrop group.
A3EAI_airReinforcementVehicles = ["B_Heli_Transport_01_F","B_Heli_Light_01_armed_F"];

//Probability to spawn reinforcements for each AI level.
A3EAI_airReinforcementSpawnChance0 = 0.10; //Probability of reinforcing Level 0 AI (Default: 0.10)
A3EAI_airReinforcementSpawnChance1 = 0.20; //Probability of reinforcing Level 1 AI (Default: 0.20)
A3EAI_airReinforcementSpawnChance2 = 0.30; //Probability of reinforcing Level 2 AI (Default: 0.30)
A3EAI_airReinforcementSpawnChance3 = 0.40; //Probability of reinforcing Level 3 AI (Default: 0.40)

//AI types permitted to summon reinforcements. Default: ["static","dynamic","random"]
//Usable AI types: "static", "dynamic", "random", "air", "land", "staticcustom", "aircustom", "landcustom", "vehiclecrew"
A3EAI_airReinforcementAllowedTypes = ["static","dynamic","random"];

//Maximum time for reinforcement for armed air vehicles in seconds. AI air vehicle will leave the area after this time if not destroyed.
A3EAI_airReinforcementDuration0 = 120; //Level 0 Default: 120
A3EAI_airReinforcementDuration1 = 180; //Level 1 Default: 180
A3EAI_airReinforcementDuration2 = 240; //Level 2 Default: 240
A3EAI_airReinforcementDuration3 = 300; //Level 3 Default: 300


/* Shared AI Vehicle (Air & Land) Settings
--------------------------------------------------------------------------------------------------------------------*/

//Add name of location as displayed on map prevent AI vehicle patrols from travelling to these locations. Location names are case-sensitive. (Example: ["Aggelochori","Panochori","Zaros"])
//Note: Vehicles may still pass through these areas but will not make stops unless enemies are encountered.
A3EAI_waypointBlacklist = [];


/*
AI skill settings
Skill Level: Description
0: Low-level AI found in villages
1: Medium-level AI found in cities and capital cities
2: High-level AI found in remote areas such as factories and military bases
3: Expert-level AI.

Valid skill range: 0.00 - 1.00.
Hint: For all skill types, higher number = better skill. For skill sub-type explanation, see: https://community.bistudio.com/wiki/AI_Sub-skills
*/

//AI skill settings level 0 (Skill, Minimum skill, Maximum skill). Baseline skill level: 0.40
A3EAI_skill0 = [
["aimingAccuracy",0.05,0.10],
["aimingShake",0.40,0.50],
["aimingSpeed",0.40,0.50],
["spotDistance",0.40,0.50],
["spotTime",0.40,0.50],
["courage",0.40,0.50],
["reloadSpeed",0.40,0.50],
["commanding",0.40,0.50],
["general",0.40,0.50]
];

//AI skill settings level 1 (Skill, Minimum skill, Maximum skill). Baseline skill level: 0.50
A3EAI_skill1 = [
["aimingAccuracy",0.10,0.15],
["aimingShake",0.50,0.60],
["aimingSpeed",0.50,0.60],
["spotDistance",0.50,0.60],
["spotTime",0.50,0.60],
["courage",0.50,0.60],
["reloadSpeed",0.50,0.60],
["commanding",0.50,0.60],
["general",0.50,0.60]
];

//AI skill settings level 2 (Skill, Minimum skill, Maximum skill). Baseline skill level: 0.60
A3EAI_skill2 = [
["aimingAccuracy",0.15,0.20],
["aimingShake",0.60,0.70],
["aimingSpeed",0.60,0.70],
["spotDistance",0.60,0.70],
["spotTime",0.60,0.70],
["courage",0.60,0.70],
["reloadSpeed",0.60,0.70],
["commanding",0.60,0.70],
["general",0.60,0.70]
];

//AI skill settings level 3 (Skill, Minimum skill, Maximum skill). Baseline skill level: 0.70
A3EAI_skill3 = [
["aimingAccuracy",0.20,0.25],
["aimingShake",0.70,0.80],
["aimingSpeed",0.70,0.80],
["spotDistance",0.70,0.80],
["spotTime",0.70,0.80],
["courage",0.70,0.80],
["reloadSpeed",0.70,0.80],
["commanding",0.70,0.80],
["general",0.70,0.80]
];


/*AI weapon type probabilities
--------------------------------------------------------------------------------------------------------------------*/

//Probabilities to equip level 0-3 AI with each weapon type. Order: [pistols, rifles, machineguns, sniper rifles]. Probabilities must add up to 1.00.
A3EAI_useWeaponChance0 = [0.20,0.80,0.00,0.00];
A3EAI_useWeaponChance1 = [0.00,0.90,0.05,0.05];
A3EAI_useWeaponChance2 = [0.00,0.80,0.10,0.10];
A3EAI_useWeaponChance3 = [0.00,0.70,0.15,0.15];


/*AI Weapon attachment settings
--------------------------------------------------------------------------------------------------------------------*/

//Probability to select a random optics attachment (ie: scopes) for level 0-3 AI
A3EAI_opticsChance0 = 0.00;
A3EAI_opticsChance1 = 0.25;
A3EAI_opticsChance2 = 0.50;
A3EAI_opticsChance3 = 0.75;

//Probability to select a random pointer attachment (ie: flashlights) for level 0-3 AI
A3EAI_pointerChance0 = 0.00;
A3EAI_pointerChance1 = 0.25;
A3EAI_pointerChance2 = 0.50;
A3EAI_pointerChance3 = 0.75;

//Probability to select a random muzzle attachment (ie: suppressors) for level 0-3 AI
A3EAI_muzzleChance0 = 0.00;
A3EAI_muzzleChance1 = 0.25;
A3EAI_muzzleChance2 = 0.50;
A3EAI_muzzleChance3 = 0.75;

//Probability to select a random underbarrel attachment (ie: bipods) for level 0-3 AI
A3EAI_underbarrelChance0 = 0.00;
A3EAI_underbarrelChance1 = 0.25;
A3EAI_underbarrelChance2 = 0.50;
A3EAI_underbarrelChance3 = 0.75;


/* AI loot quantity settings
--------------------------------------------------------------------------------------------------------------------*/

//Maximum amount of Krypto generated for level 0-3 AI. Actual amount will be randomized up to the specified amount.
A3EAI_kryptoAmount0 = 25; //Default for level 0 AI: 25
A3EAI_kryptoAmount1 = 50; //Default for level 1 AI: 50
A3EAI_kryptoAmount2 = 75; //Default for level 2 AI: 75
A3EAI_kryptoAmount3 = 100; //Default for level 3 AI: 100

//Maximum number of food loot items found on AI. (Default: 1)
A3EAI_foodLootCount = 1;

//Maximum number of items to select from A3EAI_MiscLoot1 (generic loot) table. (Default: 1)
A3EAI_miscLootCount1 = 1;

//Maximum number of items to select from A3EAI_MiscLoot2 (large generic loot) table. (Default: 1)
A3EAI_miscLootCount2 = 1;


/* AI loot probability settings. AI loot is pre-generated into a pool for each unit and randomly pulled to units as time passes.
--------------------------------------------------------------------------------------------------------------------*/

//Chance to add a single First Aid Kit to group loot pool per unit (Default: 0.20)
A3EAI_chanceFirstAidKit = 0.20;

//Chance to add each edible item to group loot pool per unit (Default: 0.40)
A3EAI_chanceFoodLoot = 0.40;

//Chance to add each generic loot item to group loot pool per unit (Default: 0.40)
A3EAI_chanceMiscLoot1 = 0.40;

//Chance to add each large generic loot item to group loot pool per unit (Default: 0.30)
A3EAI_chanceMiscLoot2 = 0.30;

//Probability to successfully pull a random item from loot pool for level 0-3 AI. Influences the rate at which loot items are added to units.
A3EAI_lootPullChance0 = 0.30; //Default for level 0 AI: 0.30
A3EAI_lootPullChance1 = 0.40; //Default for level 1 AI: 0.40
A3EAI_lootPullChance2 = 0.50; //Default for level 2 AI: 0.50
A3EAI_lootPullChance3 = 0.60; //Default for level 3 AI: 0.60


/*
AI skin, weapon, loot, and equipment settings

Note: Some of the below tables may not be used by A3EAI if a dynamic classname setting is enabled. Check each section below for details.
*/


//AI uniform classnames. Note: A3EAI_uniformTypes0-3 will not be read if A3EAI_dynamicUniformList is enabled.
//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
A3EAI_uniformTypes0 = ["U_O_CombatUniform_ocamo", "U_O_GhillieSuit", "U_O_PilotCoveralls", "U_O_Wetsuit", "U_OG_Guerilla1_1", "U_OG_Guerilla2_1", "U_OG_Guerilla2_3", "U_OG_Guerilla3_1", "U_OG_Guerilla3_2", "U_OG_leader", "U_C_Poloshirt_stripped", "U_C_Poloshirt_blue", "U_C_Poloshirt_burgundy", "U_C_Poloshirt_tricolour", "U_C_Poloshirt_salmon", "U_C_Poloshirt_redwhite", "U_C_Poor_1", "U_C_WorkerCoveralls", "U_C_Journalist", "U_C_Scientist", "U_OrestesBody", "U_Wetsuit_uniform", "U_Wetsuit_White", "U_Wetsuit_Blue", "U_Wetsuit_Purp", "U_Wetsuit_Camo", "U_CamoRed_uniform", "U_CamoBrn_uniform", "U_CamoBlue_uniform", "U_Camo_uniform", "U_ghillie1_uniform", "U_ghillie2_uniform", "U_ghillie3_uniform", "U_C_Driver_1", "U_C_Driver_2", "U_C_Driver_3", "U_C_Driver_4", "U_C_Driver_1_black", "U_C_Driver_1_blue", "U_C_Driver_1_green", "U_C_Driver_1_red", "U_C_Driver_1_white", "U_C_Driver_1_yellow", "U_C_Driver_1_orange", "U_C_Driver_1_red"];
A3EAI_uniformTypes1 = ["U_O_CombatUniform_ocamo", "U_O_GhillieSuit", "U_O_PilotCoveralls", "U_O_Wetsuit", "U_OG_Guerilla1_1", "U_OG_Guerilla2_1", "U_OG_Guerilla2_3", "U_OG_Guerilla3_1", "U_OG_Guerilla3_2", "U_OG_leader", "U_C_Poloshirt_stripped", "U_C_Poloshirt_blue", "U_C_Poloshirt_burgundy", "U_C_Poloshirt_tricolour", "U_C_Poloshirt_salmon", "U_C_Poloshirt_redwhite", "U_C_Poor_1", "U_C_WorkerCoveralls", "U_C_Journalist", "U_C_Scientist", "U_OrestesBody", "U_Wetsuit_uniform", "U_Wetsuit_White", "U_Wetsuit_Blue", "U_Wetsuit_Purp", "U_Wetsuit_Camo", "U_CamoRed_uniform", "U_CamoBrn_uniform", "U_CamoBlue_uniform", "U_Camo_uniform", "U_ghillie1_uniform", "U_ghillie2_uniform", "U_ghillie3_uniform", "U_C_Driver_1", "U_C_Driver_2", "U_C_Driver_3", "U_C_Driver_4", "U_C_Driver_1_black", "U_C_Driver_1_blue", "U_C_Driver_1_green", "U_C_Driver_1_red", "U_C_Driver_1_white", "U_C_Driver_1_yellow", "U_C_Driver_1_orange", "U_C_Driver_1_red"];
A3EAI_uniformTypes2 = ["U_O_CombatUniform_ocamo", "U_O_GhillieSuit", "U_O_PilotCoveralls", "U_O_Wetsuit", "U_OG_Guerilla1_1", "U_OG_Guerilla2_1", "U_OG_Guerilla2_3", "U_OG_Guerilla3_1", "U_OG_Guerilla3_2", "U_OG_leader", "U_C_Poloshirt_stripped", "U_C_Poloshirt_blue", "U_C_Poloshirt_burgundy", "U_C_Poloshirt_tricolour", "U_C_Poloshirt_salmon", "U_C_Poloshirt_redwhite", "U_C_Poor_1", "U_C_WorkerCoveralls", "U_C_Journalist", "U_C_Scientist", "U_OrestesBody", "U_Wetsuit_uniform", "U_Wetsuit_White", "U_Wetsuit_Blue", "U_Wetsuit_Purp", "U_Wetsuit_Camo", "U_CamoRed_uniform", "U_CamoBrn_uniform", "U_CamoBlue_uniform", "U_Camo_uniform", "U_ghillie1_uniform", "U_ghillie2_uniform", "U_ghillie3_uniform", "U_C_Driver_1", "U_C_Driver_2", "U_C_Driver_3", "U_C_Driver_4", "U_C_Driver_1_black", "U_C_Driver_1_blue", "U_C_Driver_1_green", "U_C_Driver_1_red", "U_C_Driver_1_white", "U_C_Driver_1_yellow", "U_C_Driver_1_orange", "U_C_Driver_1_red"];
A3EAI_uniformTypes3 = ["U_O_CombatUniform_ocamo", "U_O_GhillieSuit", "U_O_PilotCoveralls", "U_O_Wetsuit", "U_OG_Guerilla1_1", "U_OG_Guerilla2_1", "U_OG_Guerilla2_3", "U_OG_Guerilla3_1", "U_OG_Guerilla3_2", "U_OG_leader", "U_C_Poloshirt_stripped", "U_C_Poloshirt_blue", "U_C_Poloshirt_burgundy", "U_C_Poloshirt_tricolour", "U_C_Poloshirt_salmon", "U_C_Poloshirt_redwhite", "U_C_Poor_1", "U_C_WorkerCoveralls", "U_C_Journalist", "U_C_Scientist", "U_OrestesBody", "U_Wetsuit_uniform", "U_Wetsuit_White", "U_Wetsuit_Blue", "U_Wetsuit_Purp", "U_Wetsuit_Camo", "U_CamoRed_uniform", "U_CamoBrn_uniform", "U_CamoBlue_uniform", "U_Camo_uniform", "U_ghillie1_uniform", "U_ghillie2_uniform", "U_ghillie3_uniform", "U_C_Driver_1", "U_C_Driver_2", "U_C_Driver_3", "U_C_Driver_4", "U_C_Driver_1_black", "U_C_Driver_1_blue", "U_C_Driver_1_green", "U_C_Driver_1_red", "U_C_Driver_1_white", "U_C_Driver_1_yellow", "U_C_Driver_1_orange", "U_C_Driver_1_red"];


//AI weapon classnames. Note: A3EAI_pistolList, A3EAI_rifleList, A3EAI_machinegunList, A3EAI_sniperList will not be read if A3EAI_dynamicWeaponList is enabled.
//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
A3EAI_pistolList = ["hgun_Pistol_heavy_01_F","hgun_P07_F","hgun_Rook40_F","hgun_Pistol_heavy_02_F","1911_pistol_epoch","hgun_ACPC2_F","ruger_pistol_epoch"];
A3EAI_rifleList = ["AKM_EPOCH","sr25_epoch","arifle_Katiba_GL_F","arifle_Katiba_C_F","arifle_Katiba_F","arifle_MX_GL_F","arifle_MX_GL_Black_F","arifle_MXM_Black_F","arifle_MXC_Black_F","arifle_MX_Black_F","arifle_MXM_F","arifle_MXC_F","arifle_MX_F","l85a2_epoch","l85a2_pink_epoch","l85a2_ugl_epoch","m4a3_EPOCH","m16_EPOCH","m16Red_EPOCH","arifle_Mk20_GL_F","arifle_Mk20_GL_plain_F","arifle_Mk20C_F","arifle_Mk20C_plain_F","arifle_Mk20_F","arifle_Mk20_plain_F","arifle_TRG21_GL_F","arifle_TRG21_F","arifle_TRG20_F","arifle_SDAR_F","Rollins_F","SMG_01_F","SMG_02_F","hgun_PDW2000_F"];
A3EAI_machinegunList = ["LMG_Zafir_F","arifle_MX_SW_F","arifle_MX_SW_Black_F","LMG_Mk200_F","m249_EPOCH","m249Tan_EPOCH","MMG_01_hex_F","MMG_01_tan_F","MMG_02_camo_F","MMG_02_black_F","MMG_02_sand_F"];
A3EAI_sniperList = ["m107_EPOCH","m107Tan_EPOCH","srifle_DMR_02_F","srifle_DMR_02_camo_F","srifle_DMR_02_sniper_F","srifle_DMR_03_F","srifle_DMR_03_khaki_F","srifle_DMR_03_tan_F","srifle_DMR_03_multicam_F","srifle_DMR_03_woodland_F","srifle_DMR_03_spotter_F","srifle_DMR_04_F","srifle_DMR_04_Tan_F","srifle_DMR_05_blk_F","srifle_DMR_05_hex_F","srifle_DMR_05_tan_f","srifle_DMR_06_camo_F","srifle_DMR_06_olive_F","srifle_LRR_F","srifle_GM6_F","srifle_DMR_01_F","M14_EPOCH","M14Grn_EPOCH","srifle_EBR_F"];


//AI weapon scope attachment settings. Note: A3EAI_weaponOpticsList will not be read if A3EAI_dynamicOpticsList is enabled.
A3EAI_weaponOpticsList = ["optic_NVS","optic_SOS","optic_LRPS","optic_AMS","optic_AMS_khk","optic_AMS_snd","optic_KHS_blk","optic_KHS_hex","optic_KHS_old","optic_KHS_tan","optic_DMS","optic_Arco","optic_Hamr","Elcan_epoch","Elcan_reflex_epoch","optic_MRCO","optic_Holosight","optic_Holosight_smg","optic_Aco","optic_ACO_grn","optic_Aco_smg","optic_ACO_grn_smg","optic_Yorris","optic_MRD"];


//AI backpack types (for AI levels 0-3). Note: A3EAI_backpackTypes0-3 will not be read if A3EAI_dynamicBackpackList is enabled.
//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
A3EAI_backpackTypes0 = ["B_AssaultPack_cbr", "B_AssaultPack_dgtl", "B_AssaultPack_khk", "B_AssaultPack_mcamo", "B_AssaultPack_ocamo", "B_AssaultPack_rgr", "B_AssaultPack_sgg", "B_Carryall_cbr", "B_Carryall_khk", "B_Carryall_mcamo", "B_Carryall_ocamo", "B_Carryall_oli", "B_Carryall_oucamo", "B_FieldPack_blk", "B_FieldPack_cbr", "B_FieldPack_khk", "B_FieldPack_ocamo", "B_FieldPack_oli", "B_FieldPack_oucamo", "B_Kitbag_cbr", "B_Kitbag_mcamo", "B_Kitbag_rgr", "B_Kitbag_sgg", "B_Parachute", "B_TacticalPack_blk", "B_TacticalPack_mcamo", "B_TacticalPack_ocamo", "B_TacticalPack_oli", "B_TacticalPack_rgr", "smallbackpack_red_epoch", "smallbackpack_green_epoch", "smallbackpack_teal_epoch", "smallbackpack_pink_epoch"];
A3EAI_backpackTypes1 = ["B_AssaultPack_cbr", "B_AssaultPack_dgtl", "B_AssaultPack_khk", "B_AssaultPack_mcamo", "B_AssaultPack_ocamo", "B_AssaultPack_rgr", "B_AssaultPack_sgg", "B_Carryall_cbr", "B_Carryall_khk", "B_Carryall_mcamo", "B_Carryall_ocamo", "B_Carryall_oli", "B_Carryall_oucamo", "B_FieldPack_blk", "B_FieldPack_cbr", "B_FieldPack_khk", "B_FieldPack_ocamo", "B_FieldPack_oli", "B_FieldPack_oucamo", "B_Kitbag_cbr", "B_Kitbag_mcamo", "B_Kitbag_rgr", "B_Kitbag_sgg", "B_Parachute", "B_TacticalPack_blk", "B_TacticalPack_mcamo", "B_TacticalPack_ocamo", "B_TacticalPack_oli", "B_TacticalPack_rgr", "smallbackpack_red_epoch", "smallbackpack_green_epoch", "smallbackpack_teal_epoch", "smallbackpack_pink_epoch"];
A3EAI_backpackTypes2 = ["B_AssaultPack_cbr", "B_AssaultPack_dgtl", "B_AssaultPack_khk", "B_AssaultPack_mcamo", "B_AssaultPack_ocamo", "B_AssaultPack_rgr", "B_AssaultPack_sgg", "B_Carryall_cbr", "B_Carryall_khk", "B_Carryall_mcamo", "B_Carryall_ocamo", "B_Carryall_oli", "B_Carryall_oucamo", "B_FieldPack_blk", "B_FieldPack_cbr", "B_FieldPack_khk", "B_FieldPack_ocamo", "B_FieldPack_oli", "B_FieldPack_oucamo", "B_Kitbag_cbr", "B_Kitbag_mcamo", "B_Kitbag_rgr", "B_Kitbag_sgg", "B_Parachute", "B_TacticalPack_blk", "B_TacticalPack_mcamo", "B_TacticalPack_ocamo", "B_TacticalPack_oli", "B_TacticalPack_rgr", "smallbackpack_red_epoch", "smallbackpack_green_epoch", "smallbackpack_teal_epoch", "smallbackpack_pink_epoch"];
A3EAI_backpackTypes3 = ["B_AssaultPack_cbr", "B_AssaultPack_dgtl", "B_AssaultPack_khk", "B_AssaultPack_mcamo", "B_AssaultPack_ocamo", "B_AssaultPack_rgr", "B_AssaultPack_sgg", "B_Carryall_cbr", "B_Carryall_khk", "B_Carryall_mcamo", "B_Carryall_ocamo", "B_Carryall_oli", "B_Carryall_oucamo", "B_FieldPack_blk", "B_FieldPack_cbr", "B_FieldPack_khk", "B_FieldPack_ocamo", "B_FieldPack_oli", "B_FieldPack_oucamo", "B_Kitbag_cbr", "B_Kitbag_mcamo", "B_Kitbag_rgr", "B_Kitbag_sgg", "B_Parachute", "B_TacticalPack_blk", "B_TacticalPack_mcamo", "B_TacticalPack_ocamo", "B_TacticalPack_oli", "B_TacticalPack_rgr", "smallbackpack_red_epoch", "smallbackpack_green_epoch", "smallbackpack_teal_epoch", "smallbackpack_pink_epoch"];


//AI vest types (for AI levels 0-3). Note: A3EAI_vestTypes0-3 will not be read if A3EAI_dynamicVestList is enabled.
//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
A3EAI_vestTypes0 = ["V_1_EPOCH", "V_2_EPOCH", "V_3_EPOCH", "V_4_EPOCH", "V_5_EPOCH", "V_6_EPOCH", "V_7_EPOCH", "V_8_EPOCH", "V_9_EPOCH", "V_10_EPOCH", "V_11_EPOCH", "V_12_EPOCH", "V_13_EPOCH", "V_14_EPOCH", "V_15_EPOCH", "V_16_EPOCH", "V_17_EPOCH", "V_18_EPOCH", "V_19_EPOCH", "V_20_EPOCH", "V_21_EPOCH", "V_22_EPOCH", "V_23_EPOCH", "V_24_EPOCH", "V_25_EPOCH", "V_26_EPOCH", "V_27_EPOCH", "V_28_EPOCH", "V_29_EPOCH", "V_30_EPOCH", "V_31_EPOCH", "V_32_EPOCH", "V_33_EPOCH", "V_34_EPOCH", "V_35_EPOCH", "V_36_EPOCH", "V_37_EPOCH", "V_38_EPOCH", "V_39_EPOCH", "V_40_EPOCH"];
A3EAI_vestTypes1 = ["V_1_EPOCH", "V_2_EPOCH", "V_3_EPOCH", "V_4_EPOCH", "V_5_EPOCH", "V_6_EPOCH", "V_7_EPOCH", "V_8_EPOCH", "V_9_EPOCH", "V_10_EPOCH", "V_11_EPOCH", "V_12_EPOCH", "V_13_EPOCH", "V_14_EPOCH", "V_15_EPOCH", "V_16_EPOCH", "V_17_EPOCH", "V_18_EPOCH", "V_19_EPOCH", "V_20_EPOCH", "V_21_EPOCH", "V_22_EPOCH", "V_23_EPOCH", "V_24_EPOCH", "V_25_EPOCH", "V_26_EPOCH", "V_27_EPOCH", "V_28_EPOCH", "V_29_EPOCH", "V_30_EPOCH", "V_31_EPOCH", "V_32_EPOCH", "V_33_EPOCH", "V_34_EPOCH", "V_35_EPOCH", "V_36_EPOCH", "V_37_EPOCH", "V_38_EPOCH", "V_39_EPOCH", "V_40_EPOCH"];
A3EAI_vestTypes2 = ["V_1_EPOCH", "V_2_EPOCH", "V_3_EPOCH", "V_4_EPOCH", "V_5_EPOCH", "V_6_EPOCH", "V_7_EPOCH", "V_8_EPOCH", "V_9_EPOCH", "V_10_EPOCH", "V_11_EPOCH", "V_12_EPOCH", "V_13_EPOCH", "V_14_EPOCH", "V_15_EPOCH", "V_16_EPOCH", "V_17_EPOCH", "V_18_EPOCH", "V_19_EPOCH", "V_20_EPOCH", "V_21_EPOCH", "V_22_EPOCH", "V_23_EPOCH", "V_24_EPOCH", "V_25_EPOCH", "V_26_EPOCH", "V_27_EPOCH", "V_28_EPOCH", "V_29_EPOCH", "V_30_EPOCH", "V_31_EPOCH", "V_32_EPOCH", "V_33_EPOCH", "V_34_EPOCH", "V_35_EPOCH", "V_36_EPOCH", "V_37_EPOCH", "V_38_EPOCH", "V_39_EPOCH", "V_40_EPOCH"];
A3EAI_vestTypes3 = ["V_1_EPOCH", "V_2_EPOCH", "V_3_EPOCH", "V_4_EPOCH", "V_5_EPOCH", "V_6_EPOCH", "V_7_EPOCH", "V_8_EPOCH", "V_9_EPOCH", "V_10_EPOCH", "V_11_EPOCH", "V_12_EPOCH", "V_13_EPOCH", "V_14_EPOCH", "V_15_EPOCH", "V_16_EPOCH", "V_17_EPOCH", "V_18_EPOCH", "V_19_EPOCH", "V_20_EPOCH", "V_21_EPOCH", "V_22_EPOCH", "V_23_EPOCH", "V_24_EPOCH", "V_25_EPOCH", "V_26_EPOCH", "V_27_EPOCH", "V_28_EPOCH", "V_29_EPOCH", "V_30_EPOCH", "V_31_EPOCH", "V_32_EPOCH", "V_33_EPOCH", "V_34_EPOCH", "V_35_EPOCH", "V_36_EPOCH", "V_37_EPOCH", "V_38_EPOCH", "V_39_EPOCH", "V_40_EPOCH"];


//AI head gear types. Note: A3EAI_headgearTypes0-3 will not be read if A3EAI_dynamicHeadgearList is enabled.
A3EAI_headgearTypes0 = ["H_1_EPOCH","H_2_EPOCH","H_3_EPOCH","H_4_EPOCH","H_5_EPOCH","H_6_EPOCH","H_7_EPOCH","H_8_EPOCH","H_9_EPOCH","H_10_EPOCH","H_11_EPOCH","H_12_EPOCH","H_13_EPOCH","H_14_EPOCH","H_15_EPOCH","H_16_EPOCH","H_17_EPOCH","H_18_EPOCH","H_19_EPOCH","H_20_EPOCH","H_21_EPOCH","H_22_EPOCH","H_23_EPOCH","H_24_EPOCH","H_25_EPOCH","H_26_EPOCH","H_27_EPOCH","H_28_EPOCH","H_29_EPOCH","H_30_EPOCH","H_31_EPOCH","H_32_EPOCH","H_33_EPOCH","H_34_EPOCH","H_35_EPOCH","H_36_EPOCH","H_37_EPOCH","H_38_EPOCH","H_39_EPOCH","H_40_EPOCH","H_41_EPOCH","H_42_EPOCH","H_43_EPOCH","H_44_EPOCH","H_45_EPOCH","H_46_EPOCH","H_47_EPOCH","H_48_EPOCH","H_49_EPOCH","H_50_EPOCH","H_51_EPOCH","H_52_EPOCH","H_53_EPOCH","H_54_EPOCH","H_55_EPOCH","H_56_EPOCH","H_57_EPOCH","H_58_EPOCH","H_59_EPOCH","H_60_EPOCH","H_61_EPOCH","H_62_EPOCH","H_63_EPOCH","H_64_EPOCH","H_65_EPOCH","H_66_EPOCH","H_67_EPOCH","H_68_EPOCH","H_69_EPOCH","H_70_EPOCH","H_71_EPOCH","H_72_EPOCH","H_73_EPOCH","H_74_EPOCH","H_75_EPOCH","H_76_EPOCH","H_77_EPOCH","H_78_EPOCH","H_79_EPOCH","H_80_EPOCH","H_81_EPOCH","H_82_EPOCH","H_83_EPOCH","H_84_EPOCH","H_85_EPOCH","H_86_EPOCH","H_87_EPOCH","H_88_EPOCH","H_89_EPOCH","H_90_EPOCH","H_91_EPOCH","H_92_EPOCH","H_93_EPOCH","H_94_EPOCH","H_95_EPOCH","H_96_EPOCH","H_97_EPOCH","H_98_EPOCH","H_99_EPOCH","H_100_EPOCH","H_101_EPOCH","H_102_EPOCH","H_103_EPOCH","H_104_EPOCH"];
A3EAI_headgearTypes1 = ["H_1_EPOCH","H_2_EPOCH","H_3_EPOCH","H_4_EPOCH","H_5_EPOCH","H_6_EPOCH","H_7_EPOCH","H_8_EPOCH","H_9_EPOCH","H_10_EPOCH","H_11_EPOCH","H_12_EPOCH","H_13_EPOCH","H_14_EPOCH","H_15_EPOCH","H_16_EPOCH","H_17_EPOCH","H_18_EPOCH","H_19_EPOCH","H_20_EPOCH","H_21_EPOCH","H_22_EPOCH","H_23_EPOCH","H_24_EPOCH","H_25_EPOCH","H_26_EPOCH","H_27_EPOCH","H_28_EPOCH","H_29_EPOCH","H_30_EPOCH","H_31_EPOCH","H_32_EPOCH","H_33_EPOCH","H_34_EPOCH","H_35_EPOCH","H_36_EPOCH","H_37_EPOCH","H_38_EPOCH","H_39_EPOCH","H_40_EPOCH","H_41_EPOCH","H_42_EPOCH","H_43_EPOCH","H_44_EPOCH","H_45_EPOCH","H_46_EPOCH","H_47_EPOCH","H_48_EPOCH","H_49_EPOCH","H_50_EPOCH","H_51_EPOCH","H_52_EPOCH","H_53_EPOCH","H_54_EPOCH","H_55_EPOCH","H_56_EPOCH","H_57_EPOCH","H_58_EPOCH","H_59_EPOCH","H_60_EPOCH","H_61_EPOCH","H_62_EPOCH","H_63_EPOCH","H_64_EPOCH","H_65_EPOCH","H_66_EPOCH","H_67_EPOCH","H_68_EPOCH","H_69_EPOCH","H_70_EPOCH","H_71_EPOCH","H_72_EPOCH","H_73_EPOCH","H_74_EPOCH","H_75_EPOCH","H_76_EPOCH","H_77_EPOCH","H_78_EPOCH","H_79_EPOCH","H_80_EPOCH","H_81_EPOCH","H_82_EPOCH","H_83_EPOCH","H_84_EPOCH","H_85_EPOCH","H_86_EPOCH","H_87_EPOCH","H_88_EPOCH","H_89_EPOCH","H_90_EPOCH","H_91_EPOCH","H_92_EPOCH","H_93_EPOCH","H_94_EPOCH","H_95_EPOCH","H_96_EPOCH","H_97_EPOCH","H_98_EPOCH","H_99_EPOCH","H_100_EPOCH","H_101_EPOCH","H_102_EPOCH","H_103_EPOCH","H_104_EPOCH"];
A3EAI_headgearTypes2 = ["H_1_EPOCH","H_2_EPOCH","H_3_EPOCH","H_4_EPOCH","H_5_EPOCH","H_6_EPOCH","H_7_EPOCH","H_8_EPOCH","H_9_EPOCH","H_10_EPOCH","H_11_EPOCH","H_12_EPOCH","H_13_EPOCH","H_14_EPOCH","H_15_EPOCH","H_16_EPOCH","H_17_EPOCH","H_18_EPOCH","H_19_EPOCH","H_20_EPOCH","H_21_EPOCH","H_22_EPOCH","H_23_EPOCH","H_24_EPOCH","H_25_EPOCH","H_26_EPOCH","H_27_EPOCH","H_28_EPOCH","H_29_EPOCH","H_30_EPOCH","H_31_EPOCH","H_32_EPOCH","H_33_EPOCH","H_34_EPOCH","H_35_EPOCH","H_36_EPOCH","H_37_EPOCH","H_38_EPOCH","H_39_EPOCH","H_40_EPOCH","H_41_EPOCH","H_42_EPOCH","H_43_EPOCH","H_44_EPOCH","H_45_EPOCH","H_46_EPOCH","H_47_EPOCH","H_48_EPOCH","H_49_EPOCH","H_50_EPOCH","H_51_EPOCH","H_52_EPOCH","H_53_EPOCH","H_54_EPOCH","H_55_EPOCH","H_56_EPOCH","H_57_EPOCH","H_58_EPOCH","H_59_EPOCH","H_60_EPOCH","H_61_EPOCH","H_62_EPOCH","H_63_EPOCH","H_64_EPOCH","H_65_EPOCH","H_66_EPOCH","H_67_EPOCH","H_68_EPOCH","H_69_EPOCH","H_70_EPOCH","H_71_EPOCH","H_72_EPOCH","H_73_EPOCH","H_74_EPOCH","H_75_EPOCH","H_76_EPOCH","H_77_EPOCH","H_78_EPOCH","H_79_EPOCH","H_80_EPOCH","H_81_EPOCH","H_82_EPOCH","H_83_EPOCH","H_84_EPOCH","H_85_EPOCH","H_86_EPOCH","H_87_EPOCH","H_88_EPOCH","H_89_EPOCH","H_90_EPOCH","H_91_EPOCH","H_92_EPOCH","H_93_EPOCH","H_94_EPOCH","H_95_EPOCH","H_96_EPOCH","H_97_EPOCH","H_98_EPOCH","H_99_EPOCH","H_100_EPOCH","H_101_EPOCH","H_102_EPOCH","H_103_EPOCH","H_104_EPOCH"];
A3EAI_headgearTypes3 = ["H_1_EPOCH","H_2_EPOCH","H_3_EPOCH","H_4_EPOCH","H_5_EPOCH","H_6_EPOCH","H_7_EPOCH","H_8_EPOCH","H_9_EPOCH","H_10_EPOCH","H_11_EPOCH","H_12_EPOCH","H_13_EPOCH","H_14_EPOCH","H_15_EPOCH","H_16_EPOCH","H_17_EPOCH","H_18_EPOCH","H_19_EPOCH","H_20_EPOCH","H_21_EPOCH","H_22_EPOCH","H_23_EPOCH","H_24_EPOCH","H_25_EPOCH","H_26_EPOCH","H_27_EPOCH","H_28_EPOCH","H_29_EPOCH","H_30_EPOCH","H_31_EPOCH","H_32_EPOCH","H_33_EPOCH","H_34_EPOCH","H_35_EPOCH","H_36_EPOCH","H_37_EPOCH","H_38_EPOCH","H_39_EPOCH","H_40_EPOCH","H_41_EPOCH","H_42_EPOCH","H_43_EPOCH","H_44_EPOCH","H_45_EPOCH","H_46_EPOCH","H_47_EPOCH","H_48_EPOCH","H_49_EPOCH","H_50_EPOCH","H_51_EPOCH","H_52_EPOCH","H_53_EPOCH","H_54_EPOCH","H_55_EPOCH","H_56_EPOCH","H_57_EPOCH","H_58_EPOCH","H_59_EPOCH","H_60_EPOCH","H_61_EPOCH","H_62_EPOCH","H_63_EPOCH","H_64_EPOCH","H_65_EPOCH","H_66_EPOCH","H_67_EPOCH","H_68_EPOCH","H_69_EPOCH","H_70_EPOCH","H_71_EPOCH","H_72_EPOCH","H_73_EPOCH","H_74_EPOCH","H_75_EPOCH","H_76_EPOCH","H_77_EPOCH","H_78_EPOCH","H_79_EPOCH","H_80_EPOCH","H_81_EPOCH","H_82_EPOCH","H_83_EPOCH","H_84_EPOCH","H_85_EPOCH","H_86_EPOCH","H_87_EPOCH","H_88_EPOCH","H_89_EPOCH","H_90_EPOCH","H_91_EPOCH","H_92_EPOCH","H_93_EPOCH","H_94_EPOCH","H_95_EPOCH","H_96_EPOCH","H_97_EPOCH","H_98_EPOCH","H_99_EPOCH","H_100_EPOCH","H_101_EPOCH","H_102_EPOCH","H_103_EPOCH","H_104_EPOCH"];


//AI Food/Loot item types.
// Note: A3EAI_foodLoot will not be read if A3EAI_dynamicFoodList is enabled.
// Note: A3EAI_MiscLoot1 will not be read if A3EAI_dynamicLootList is enabled.
// Note: A3EAI_MiscLoot2 will not be read if A3EAI_dynamicLootLargeList is enabled.
//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
A3EAI_foodLoot = ["FoodSnooter","FoodWalkNSons","FoodBioMeat","ItemSodaOrangeSherbet","ItemSodaPurple","ItemSodaMocha","ItemSodaBurst","ItemSodaRbull","honey_epoch","emptyjar_epoch","sardines_epoch","meatballs_epoch","scam_epoch","sweetcorn_epoch","WhiskeyNoodle","ItemCoolerE"];
A3EAI_MiscLoot1 = ["PaintCanClear","PaintCanBlk","PaintCanBlu","PaintCanBrn","PaintCanGrn","PaintCanOra","PaintCanPur","PaintCanRed","PaintCanTeal","PaintCanYel","ItemDocument","ItemMixOil","emptyjar_epoch","emptyjar_epoch","FoodBioMeat","ItemSodaOrangeSherbet","ItemSodaPurple","ItemSodaMocha","ItemSodaBurst","ItemSodaRbull","sardines_epoch","meatballs_epoch","scam_epoch","sweetcorn_epoch","Towelette","Towelette","Towelette","Towelette","Towelette","HeatPack","HeatPack","HeatPack","ColdPack","ColdPack","VehicleRepair","CircuitParts","ItemCoolerE","ItemScraps","ItemScraps"];
A3EAI_MiscLoot2 = ["MortarBucket","MortarBucket","ItemCorrugated","CinderBlocks","jerrycan_epoch","jerrycan_epoch","VehicleRepair","VehicleRepair","CircuitParts"];


//AI toolbelt item types. Toolbelt items are added to AI inventory upon death. Format: [item classname, item probability]
//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

A3EAI_tools0 = [
["ItemWatch",0.70],["ItemCompass",0.50],["ItemMap",0.50],["ItemGPS",0.05],["EpochRadio0",0.05]
];
A3EAI_tools1 = [
["ItemWatch",0.80],["ItemCompass",0.60],["ItemMap",0.60],["ItemGPS",0.10],["EpochRadio0",0.10]
];
A3EAI_tools2 = [
["ItemWatch",0.80],["ItemCompass",0.70],["ItemMap",0.70],["ItemGPS",0.15],["EpochRadio0",0.15]
];
A3EAI_tools3 = [
["ItemWatch",0.80],["ItemCompass",0.80],["ItemMap",0.80],["ItemGPS",0.20],["EpochRadio0",0.20]
];


//AI-useable toolbelt item types. These items are added to AI inventory at unit creation and may be used by AI. Format: [item classname, item probability]
//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

A3EAI_gadgets0 = [
["binocular",0.40],["NVG_EPOCH",0.05]
];
A3EAI_gadgets1 = [
["binocular",0.50],["NVG_EPOCH",0.10]
];
A3EAI_gadgets2 = [
["binocular",0.60],["NVG_EPOCH",0.15]
];
A3EAI_gadgets3 = [
["binocular",0.70],["NVG_EPOCH",0.20]
];

//NOTHING TO EDIT BEYOND THIS POINT
diag_log "[A3EAI] A3EAI configuration file loaded.";

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ничего никуда закидывать не нужно. Сервер не считывает файлы настроек миссий из папки @epochhive, а загружает дефолтные настройки из \@epochhive\addons\A3EAI\scripts\verifySettings.sqf (если речь идет о версии A3EAI представленной здесь). Вот в этом файле и настраивайте миссию. Для проверки работы миссии измените минимум количества игроков на сервере, чтобы миссия запустилась с 20 на 1 (["A3EAI_playerCountThreshold",20]).

Затем уже настраивайте количество патрулей на карте.

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

Изменено пользователем zxButchxz (история изменений)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

СПС

 

 

verifySettings.sqf

 

_startTime = diag_tickTime;

//Check value types
{
_value = missionNamespace getVariable (_x select 0);
if ((isNil "_value") or {(typeName _value) != (typeName (_x select 1))}) then {
missionNamespace setVariable [(_x select 0),(_x select 1)];
diag_log format ["[A3EAI] Error found in variable %1, resetting to default value.",(_x select 0)];
};
} forEach [
["A3EAI_debugLevel",0],
["A3EAI_monitorRate",300],
["A3EAI_verifyClassnames",true],
["A3EAI_checkVehicleInit",true],
["A3EAI_cleanupDelay",900],
["A3EAI_dynamicUniformList",true],
["A3EAI_dynamicWeaponList",true],
["A3EAI_dynamicBackpackList",true],
["A3EAI_dynamicVestList",true],
["A3EAI_dynamicHeadgearList",true],
["A3EAI_dynamicFoodList",true],
["A3EAI_dynamicLootList",true],
["A3EAI_dynamicLootLargeList",true],
["A3EAI_dynamicWeaponBlacklist",[]],
["A3EAI_playerCountThreshold",20],
["A3EAI_chanceScalingThreshold",0.50],
["A3EAI_upwardsChanceScaling",true],
["A3EAI_maxAirReinforcements",5],
["A3EAI_airReinforcementVehicles",["B_Heli_Transport_01_F","B_Heli_Light_01_armed_F"]],
["A3EAI_airReinforcementSpawnChance0",0.10],
["A3EAI_airReinforcementSpawnChance1",0.20],
["A3EAI_airReinforcementSpawnChance2",0.30],
["A3EAI_airReinforcementSpawnChance3",0.40],
["A3EAI_airReinforcementAllowedTypes",["static","dynamic","random"]],
["A3EAI_airReinforcementDuration0",120],
["A3EAI_airReinforcementDuration1",180],
["A3EAI_airReinforcementDuration2",240],
["A3EAI_airReinforcementDuration3",300],
["A3EAI_findKiller",true],
["A3EAI_tempNVGs",false],
["A3EAI_GLRequirement",2],
["A3EAI_launcherTypes",[]],
["A3EAI_launcherLevelReq",-1],
["A3EAI_launchersPerGroup",1],
["A3EAI_enableHealing",true],
["A3EAI_radioMsgs",false],
["A3EAI_deathMessages",false],
["A3EAI_loadCustomFile",true],
["A3EAI_enableHC",false],
["A3EAI_waitForHC",false],
["A3EAI_autoGenerateStatic",true],
["A3EAI_minAI_capitalCity",2],
["A3EAI_addAI_capitalCity",1],
["A3EAI_unitLevel_capitalCity",1],
["A3EAI_minAI_city",1],
["A3EAI_addAI_city",2],
["A3EAI_unitLevel_city",1],
["A3EAI_minAI_village",1],
["A3EAI_addAI_village",1],
["A3EAI_unitLevel_village",0],
["A3EAI_minAI_remoteArea",1],
["A3EAI_addAI_remoteArea",1],
["A3EAI_unitLevel_remoteArea",2],
["A3EAI_minAI_wilderness",1],
["A3EAI_addAI_wilderness",1],
["A3EAI_unitLevel_wilderness",2],
["A3EAI_tempBlacklistTime",600],
//["A3EAI_promoteChances",[0.20,0.10,0.10]],
["A3EAI_respawnTimeMin",300],
["A3EAI_respawnTimeMax",600],
["A3EAI_despawnWait",120],
["A3EAI_spawnChance_capitalCity",0.70],
["A3EAI_spawnChance_city",0.60],
["A3EAI_spawnChance_village",0.40],
["A3EAI_spawnChance_remoteArea",0.80],
["A3EAI_spawnChance_wilderness",0.50],
["A3EAI_respawnLimit_village",-1],
["A3EAI_respawnLimit_city",-1],
["A3EAI_respawnLimit_capitalCity",-1],
["A3EAI_respawnLimit_remoteArea",-1],
["A3EAI_staticBlacklistLocations",[]],
["A3EAI_dynMaxSpawns",15],
["A3EAI_dynCooldownTime",900],
["A3EAI_dynResetLastSpawn",3600],
["A3EAI_huntingChance",0.60],
//["A3EAI_airReinforceChance",0.40],
["A3EAI_dynDespawnWait",120],
["A3EAI_maxRandomSpawns",-1],
["A3EAI_randDespawnWait",120],
["A3EAI_minRandSpawnDist",600],
["A3EAI_maxHeliPatrols",0],
["A3EAI_levelChancesAir",[0.00,0.50,0.35,0.15]],
["A3EAI_respawnAirMinTime",600],
["A3EAI_respawnAirMaxTime",900],
["A3EAI_heliList",[
["B_Heli_Light_01_armed_F",5],
["B_Heli_Attack_01_F",2]
]],
["A3EAI_heliGunnerUnits",3],
["A3EAI_removeMissileWeapons",true],
["A3EAI_detectChance",0.70],
["A3EAI_paraDropChance",0.50],
["A3EAI_paraDropCooldown",1800],
["A3EAI_paraDropAmount",3],
["A3EAI_maxLandPatrols",0],
["A3EAI_levelChancesLand",[0.00,0.50,0.35,0.15]],
["A3EAI_respawnLandMinTime",600],
["A3EAI_respawnLandMaxTime",900],
["A3EAI_vehList",[
["C_Van_01_transport_EPOCH",5],
["C_Offroad_01_EPOCH",5],
["C_Hatchback_02_EPOCH",5],
["C_Hatchback_01_EPOCH",5],
["B_Truck_01_transport_EPOCH",5],
["B_Truck_01_mover_EPOCH",5],
["B_Truck_01_covered_EPOCH",5],
["B_Truck_01_box_EPOCH",5]
]],
["A3EAI_vehGunnerUnits",2],
["A3EAI_vehCargoUnits",3],
["A3EAI_waypointBlacklist",[]],
["A3EAI_skill0",[
["aimingAccuracy",0.10,0.15],
["aimingShake",0.50,0.59],
["aimingSpeed",0.50,0.59],
["spotDistance",0.50,0.59],
["spotTime",0.50,0.59],
["courage",0.50,0.59],
["reloadSpeed",0.50,0.59],
["commanding",0.50,0.59],
["general",0.50,0.59]
]],
["A3EAI_skill1",[
["aimingAccuracy",0.15,0.20],
["aimingShake",0.60,0.69],
["aimingSpeed",0.60,0.69],
["spotDistance",0.60,0.69],
["spotTime",0.60,0.69],
["courage",0.60,0.69],
["reloadSpeed",0.60,0.69],
["commanding",0.60,0.69],
["general",0.60,0.69]
]],
["A3EAI_skill2",[
["aimingAccuracy",0.20,0.25],
["aimingShake",0.70,0.85],
["aimingSpeed",0.70,0.85],
["spotDistance",0.70,0.85],
["spotTime",0.70,0.85],
["courage",0.70,0.85],
["reloadSpeed",0.70,0.85],
["commanding",0.70,0.85],
["general",0.70,0.85]
]],
["A3EAI_skill3",[
["aimingAccuracy",0.25,0.30],
["aimingShake",0.85,0.95],
["aimingSpeed",0.85,0.95],
["spotDistance",0.85,0.95],
["spotTime",0.85,0.95],
["courage",0.85,0.95],
["reloadSpeed",0.85,0.95],
["commanding",0.85,0.95],
["general",0.85,0.95]
]],
["A3EAI_useWeaponChance0",[0.20,0.80,0.00,0.00]],
["A3EAI_useWeaponChance1",[0.00,0.90,0.05,0.05]],
["A3EAI_useWeaponChance2",[0.00,0.80,0.10,0.10]],
["A3EAI_useWeaponChance3",[0.00,0.70,0.15,0.15]],
["A3EAI_opticsChance0",0.00],
["A3EAI_opticsChance1",0.25],
["A3EAI_opticsChance2",0.50],
["A3EAI_opticsChance3",0.75],
["A3EAI_pointerChance0",0.00],
["A3EAI_pointerChance1",0.25],
["A3EAI_pointerChance2",0.50],
["A3EAI_pointerChance3",0.75],
["A3EAI_muzzleChance0",0.00],
["A3EAI_muzzleChance1",0.25],
["A3EAI_muzzleChance2",0.50],
["A3EAI_muzzleChance3",0.75],
["A3EAI_underbarrelChance0",0.00],
["A3EAI_underbarrelChance1",0.25],
["A3EAI_underbarrelChance2",0.50],
["A3EAI_underbarrelChance3",0.75],
["A3EAI_kryptoAmount0",25],
["A3EAI_kryptoAmount1",50],
["A3EAI_kryptoAmount2",75],
["A3EAI_kryptoAmount3",100],
["A3EAI_foodLootCount",1],
["A3EAI_miscLootCount1",1],
["A3EAI_miscLootCount2",1],
["A3EAI_chanceFirstAidKit",0.20],
["A3EAI_chanceFoodLoot",0.40],
["A3EAI_chanceMiscLoot1",0.40],
["A3EAI_chanceMiscLoot2",0.30],
["A3EAI_lootPullChance0",0.30],
["A3EAI_lootPullChance1",0.40],
["A3EAI_lootPullChance2",0.50],
["A3EAI_lootPullChance3",0.60],
["A3EAI_uniformTypes0",["U_O_CombatUniform_ocamo", "U_O_GhillieSuit", "U_O_PilotCoveralls", "U_O_Wetsuit", "U_OG_Guerilla1_1", "U_OG_Guerilla2_1", "U_OG_Guerilla2_3", "U_OG_Guerilla3_1", "U_OG_Guerilla3_2", "U_OG_leader", "U_C_Poloshirt_stripped", "U_C_Poloshirt_blue", "U_C_Poloshirt_burgundy", "U_C_Poloshirt_tricolour", "U_C_Poloshirt_salmon", "U_C_Poloshirt_redwhite", "U_C_Poor_1", "U_C_WorkerCoveralls", "U_C_Journalist", "U_C_Scientist", "U_OrestesBody", "U_Wetsuit_uniform", "U_Wetsuit_White", "U_Wetsuit_Blue", "U_Wetsuit_Purp", "U_Wetsuit_Camo", "U_CamoRed_uniform", "U_CamoBrn_uniform", "U_CamoBlue_uniform", "U_Camo_uniform", "U_ghillie1_uniform", "U_ghillie2_uniform", "U_ghillie3_uniform", "U_C_Driver_1", "U_C_Driver_2", "U_C_Driver_3", "U_C_Driver_4", "U_C_Driver_1_black", "U_C_Driver_1_blue", "U_C_Driver_1_green", "U_C_Driver_1_red", "U_C_Driver_1_white", "U_C_Driver_1_yellow", "U_C_Driver_1_orange", "U_C_Driver_1_red"]],
["A3EAI_uniformTypes1",["U_O_CombatUniform_ocamo", "U_O_GhillieSuit", "U_O_PilotCoveralls", "U_O_Wetsuit", "U_OG_Guerilla1_1", "U_OG_Guerilla2_1", "U_OG_Guerilla2_3", "U_OG_Guerilla3_1", "U_OG_Guerilla3_2", "U_OG_leader", "U_C_Poloshirt_stripped", "U_C_Poloshirt_blue", "U_C_Poloshirt_burgundy", "U_C_Poloshirt_tricolour", "U_C_Poloshirt_salmon", "U_C_Poloshirt_redwhite", "U_C_Poor_1", "U_C_WorkerCoveralls", "U_C_Journalist", "U_C_Scientist", "U_OrestesBody", "U_Wetsuit_uniform", "U_Wetsuit_White", "U_Wetsuit_Blue", "U_Wetsuit_Purp", "U_Wetsuit_Camo", "U_CamoRed_uniform", "U_CamoBrn_uniform", "U_CamoBlue_uniform", "U_Camo_uniform", "U_ghillie1_uniform", "U_ghillie2_uniform", "U_ghillie3_uniform", "U_C_Driver_1", "U_C_Driver_2", "U_C_Driver_3", "U_C_Driver_4", "U_C_Driver_1_black", "U_C_Driver_1_blue", "U_C_Driver_1_green", "U_C_Driver_1_red", "U_C_Driver_1_white", "U_C_Driver_1_yellow", "U_C_Driver_1_orange", "U_C_Driver_1_red"]],
["A3EAI_uniformTypes2",["U_O_CombatUniform_ocamo", "U_O_GhillieSuit", "U_O_PilotCoveralls", "U_O_Wetsuit", "U_OG_Guerilla1_1", "U_OG_Guerilla2_1", "U_OG_Guerilla2_3", "U_OG_Guerilla3_1", "U_OG_Guerilla3_2", "U_OG_leader", "U_C_Poloshirt_stripped", "U_C_Poloshirt_blue", "U_C_Poloshirt_burgundy", "U_C_Poloshirt_tricolour", "U_C_Poloshirt_salmon", "U_C_Poloshirt_redwhite", "U_C_Poor_1", "U_C_WorkerCoveralls", "U_C_Journalist", "U_C_Scientist", "U_OrestesBody", "U_Wetsuit_uniform", "U_Wetsuit_White", "U_Wetsuit_Blue", "U_Wetsuit_Purp", "U_Wetsuit_Camo", "U_CamoRed_uniform", "U_CamoBrn_uniform", "U_CamoBlue_uniform", "U_Camo_uniform", "U_ghillie1_uniform", "U_ghillie2_uniform", "U_ghillie3_uniform", "U_C_Driver_1", "U_C_Driver_2", "U_C_Driver_3", "U_C_Driver_4", "U_C_Driver_1_black", "U_C_Driver_1_blue", "U_C_Driver_1_green", "U_C_Driver_1_red", "U_C_Driver_1_white", "U_C_Driver_1_yellow", "U_C_Driver_1_orange", "U_C_Driver_1_red"]],
["A3EAI_uniformTypes3",["U_O_CombatUniform_ocamo", "U_O_GhillieSuit", "U_O_PilotCoveralls", "U_O_Wetsuit", "U_OG_Guerilla1_1", "U_OG_Guerilla2_1", "U_OG_Guerilla2_3", "U_OG_Guerilla3_1", "U_OG_Guerilla3_2", "U_OG_leader", "U_C_Poloshirt_stripped", "U_C_Poloshirt_blue", "U_C_Poloshirt_burgundy", "U_C_Poloshirt_tricolour", "U_C_Poloshirt_salmon", "U_C_Poloshirt_redwhite", "U_C_Poor_1", "U_C_WorkerCoveralls", "U_C_Journalist", "U_C_Scientist", "U_OrestesBody", "U_Wetsuit_uniform", "U_Wetsuit_White", "U_Wetsuit_Blue", "U_Wetsuit_Purp", "U_Wetsuit_Camo", "U_CamoRed_uniform", "U_CamoBrn_uniform", "U_CamoBlue_uniform", "U_Camo_uniform", "U_ghillie1_uniform", "U_ghillie2_uniform", "U_ghillie3_uniform", "U_C_Driver_1", "U_C_Driver_2", "U_C_Driver_3", "U_C_Driver_4", "U_C_Driver_1_black", "U_C_Driver_1_blue", "U_C_Driver_1_green", "U_C_Driver_1_red", "U_C_Driver_1_white", "U_C_Driver_1_yellow", "U_C_Driver_1_orange", "U_C_Driver_1_red"]],
["A3EAI_pistolList",["hgun_Pistol_heavy_01_F","hgun_P07_F","hgun_Rook40_F","hgun_Pistol_heavy_02_F","1911_pistol_epoch","hgun_ACPC2_F","ruger_pistol_epoch"]],
["A3EAI_rifleList",["AKM_EPOCH","sr25_epoch","arifle_Katiba_GL_F","arifle_Katiba_C_F","arifle_Katiba_F","arifle_MX_GL_F","arifle_MX_GL_Black_F","arifle_MXM_Black_F","arifle_MXC_Black_F","arifle_MX_Black_F","arifle_MXM_F","arifle_MXC_F","arifle_MX_F","l85a2_epoch","l85a2_pink_epoch","l85a2_ugl_epoch","m4a3_EPOCH","m16_EPOCH","m16Red_EPOCH","arifle_Mk20_GL_F","arifle_Mk20_GL_plain_F","arifle_Mk20C_F","arifle_Mk20C_plain_F","arifle_Mk20_F","arifle_Mk20_plain_F","arifle_TRG21_GL_F","arifle_TRG21_F","arifle_TRG20_F","arifle_SDAR_F","Rollins_F","SMG_01_F","SMG_02_F","hgun_PDW2000_F"]],
["A3EAI_machinegunList",["LMG_Zafir_F","arifle_MX_SW_F","arifle_MX_SW_Black_F","LMG_Mk200_F","m249_EPOCH","m249Tan_EPOCH","MMG_01_hex_F","MMG_01_tan_F","MMG_02_camo_F","MMG_02_black_F","MMG_02_sand_F"]],
["A3EAI_sniperList",["m107_EPOCH","m107Tan_EPOCH","srifle_DMR_02_F","srifle_DMR_02_camo_F","srifle_DMR_02_sniper_F","srifle_DMR_03_F","srifle_DMR_03_khaki_F","srifle_DMR_03_tan_F","srifle_DMR_03_multicam_F","srifle_DMR_03_woodland_F","srifle_DMR_03_spotter_F","srifle_DMR_04_F","srifle_DMR_04_Tan_F","srifle_DMR_05_blk_F","srifle_DMR_05_hex_F","srifle_DMR_05_tan_f","srifle_DMR_06_camo_F","srifle_DMR_06_olive_F","srifle_LRR_F","srifle_GM6_F","srifle_DMR_01_F","M14_EPOCH","M14Grn_EPOCH","srifle_EBR_F"]],
["A3EAI_weaponOpticsList",["optic_NVS","optic_SOS","optic_LRPS","optic_AMS","optic_AMS_khk","optic_AMS_snd","optic_KHS_blk","optic_KHS_hex","optic_KHS_old","optic_KHS_tan","optic_DMS","optic_Arco","optic_Hamr","Elcan_epoch","Elcan_reflex_epoch","optic_MRCO","optic_Holosight","optic_Holosight_smg","optic_Aco","optic_ACO_grn","optic_Aco_smg","optic_ACO_grn_smg","optic_Yorris","optic_MRD"]],
["A3EAI_backpackTypes0",["B_AssaultPack_cbr", "B_AssaultPack_dgtl", "B_AssaultPack_khk", "B_AssaultPack_mcamo", "B_AssaultPack_ocamo", "B_AssaultPack_rgr", "B_AssaultPack_sgg", "B_Carryall_cbr", "B_Carryall_khk", "B_Carryall_mcamo", "B_Carryall_ocamo", "B_Carryall_oli", "B_Carryall_oucamo", "B_FieldPack_blk", "B_FieldPack_cbr", "B_FieldPack_khk", "B_FieldPack_ocamo", "B_FieldPack_oli", "B_FieldPack_oucamo", "B_Kitbag_cbr", "B_Kitbag_mcamo", "B_Kitbag_rgr", "B_Kitbag_sgg", "B_Parachute", "B_TacticalPack_blk", "B_TacticalPack_mcamo", "B_TacticalPack_ocamo", "B_TacticalPack_oli", "B_TacticalPack_rgr", "smallbackpack_red_epoch", "smallbackpack_green_epoch", "smallbackpack_teal_epoch", "smallbackpack_pink_epoch"]],
["A3EAI_backpackTypes1",["B_AssaultPack_cbr", "B_AssaultPack_dgtl", "B_AssaultPack_khk", "B_AssaultPack_mcamo", "B_AssaultPack_ocamo", "B_AssaultPack_rgr", "B_AssaultPack_sgg", "B_Carryall_cbr", "B_Carryall_khk", "B_Carryall_mcamo", "B_Carryall_ocamo", "B_Carryall_oli", "B_Carryall_oucamo", "B_FieldPack_blk", "B_FieldPack_cbr", "B_FieldPack_khk", "B_FieldPack_ocamo", "B_FieldPack_oli", "B_FieldPack_oucamo", "B_Kitbag_cbr", "B_Kitbag_mcamo", "B_Kitbag_rgr", "B_Kitbag_sgg", "B_Parachute", "B_TacticalPack_blk", "B_TacticalPack_mcamo", "B_TacticalPack_ocamo", "B_TacticalPack_oli", "B_TacticalPack_rgr", "smallbackpack_red_epoch", "smallbackpack_green_epoch", "smallbackpack_teal_epoch", "smallbackpack_pink_epoch"]],
["A3EAI_backpackTypes2",["B_AssaultPack_cbr", "B_AssaultPack_dgtl", "B_AssaultPack_khk", "B_AssaultPack_mcamo", "B_AssaultPack_ocamo", "B_AssaultPack_rgr", "B_AssaultPack_sgg", "B_Carryall_cbr", "B_Carryall_khk", "B_Carryall_mcamo", "B_Carryall_ocamo", "B_Carryall_oli", "B_Carryall_oucamo", "B_FieldPack_blk", "B_FieldPack_cbr", "B_FieldPack_khk", "B_FieldPack_ocamo", "B_FieldPack_oli", "B_FieldPack_oucamo", "B_Kitbag_cbr", "B_Kitbag_mcamo", "B_Kitbag_rgr", "B_Kitbag_sgg", "B_Parachute", "B_TacticalPack_blk", "B_TacticalPack_mcamo", "B_TacticalPack_ocamo", "B_TacticalPack_oli", "B_TacticalPack_rgr", "smallbackpack_red_epoch", "smallbackpack_green_epoch", "smallbackpack_teal_epoch", "smallbackpack_pink_epoch"]],
["A3EAI_backpackTypes3",["B_AssaultPack_cbr", "B_AssaultPack_dgtl", "B_AssaultPack_khk", "B_AssaultPack_mcamo", "B_AssaultPack_ocamo", "B_AssaultPack_rgr", "B_AssaultPack_sgg", "B_Carryall_cbr", "B_Carryall_khk", "B_Carryall_mcamo", "B_Carryall_ocamo", "B_Carryall_oli", "B_Carryall_oucamo", "B_FieldPack_blk", "B_FieldPack_cbr", "B_FieldPack_khk", "B_FieldPack_ocamo", "B_FieldPack_oli", "B_FieldPack_oucamo", "B_Kitbag_cbr", "B_Kitbag_mcamo", "B_Kitbag_rgr", "B_Kitbag_sgg", "B_Parachute", "B_TacticalPack_blk", "B_TacticalPack_mcamo", "B_TacticalPack_ocamo", "B_TacticalPack_oli", "B_TacticalPack_rgr", "smallbackpack_red_epoch", "smallbackpack_green_epoch", "smallbackpack_teal_epoch", "smallbackpack_pink_epoch"]],
["A3EAI_vestTypes0",["V_1_EPOCH", "V_2_EPOCH", "V_3_EPOCH", "V_4_EPOCH", "V_5_EPOCH", "V_6_EPOCH", "V_7_EPOCH", "V_8_EPOCH", "V_9_EPOCH", "V_10_EPOCH", "V_11_EPOCH", "V_12_EPOCH", "V_13_EPOCH", "V_14_EPOCH", "V_15_EPOCH", "V_16_EPOCH", "V_17_EPOCH", "V_18_EPOCH", "V_19_EPOCH", "V_20_EPOCH", "V_21_EPOCH", "V_22_EPOCH", "V_23_EPOCH", "V_24_EPOCH", "V_25_EPOCH", "V_26_EPOCH", "V_27_EPOCH", "V_28_EPOCH", "V_29_EPOCH", "V_30_EPOCH", "V_31_EPOCH", "V_32_EPOCH", "V_33_EPOCH", "V_34_EPOCH", "V_35_EPOCH", "V_36_EPOCH", "V_37_EPOCH", "V_38_EPOCH", "V_39_EPOCH", "V_40_EPOCH"]],
["A3EAI_vestTypes1",["V_1_EPOCH", "V_2_EPOCH", "V_3_EPOCH", "V_4_EPOCH", "V_5_EPOCH", "V_6_EPOCH", "V_7_EPOCH", "V_8_EPOCH", "V_9_EPOCH", "V_10_EPOCH", "V_11_EPOCH", "V_12_EPOCH", "V_13_EPOCH", "V_14_EPOCH", "V_15_EPOCH", "V_16_EPOCH", "V_17_EPOCH", "V_18_EPOCH", "V_19_EPOCH", "V_20_EPOCH", "V_21_EPOCH", "V_22_EPOCH", "V_23_EPOCH", "V_24_EPOCH", "V_25_EPOCH", "V_26_EPOCH", "V_27_EPOCH", "V_28_EPOCH", "V_29_EPOCH", "V_30_EPOCH", "V_31_EPOCH", "V_32_EPOCH", "V_33_EPOCH", "V_34_EPOCH", "V_35_EPOCH", "V_36_EPOCH", "V_37_EPOCH", "V_38_EPOCH", "V_39_EPOCH", "V_40_EPOCH"]],
["A3EAI_vestTypes2",["V_1_EPOCH", "V_2_EPOCH", "V_3_EPOCH", "V_4_EPOCH", "V_5_EPOCH", "V_6_EPOCH", "V_7_EPOCH", "V_8_EPOCH", "V_9_EPOCH", "V_10_EPOCH", "V_11_EPOCH", "V_12_EPOCH", "V_13_EPOCH", "V_14_EPOCH", "V_15_EPOCH", "V_16_EPOCH", "V_17_EPOCH", "V_18_EPOCH", "V_19_EPOCH", "V_20_EPOCH", "V_21_EPOCH", "V_22_EPOCH", "V_23_EPOCH", "V_24_EPOCH", "V_25_EPOCH", "V_26_EPOCH", "V_27_EPOCH", "V_28_EPOCH", "V_29_EPOCH", "V_30_EPOCH", "V_31_EPOCH", "V_32_EPOCH", "V_33_EPOCH", "V_34_EPOCH", "V_35_EPOCH", "V_36_EPOCH", "V_37_EPOCH", "V_38_EPOCH", "V_39_EPOCH", "V_40_EPOCH"]],
["A3EAI_vestTypes3",["V_1_EPOCH", "V_2_EPOCH", "V_3_EPOCH", "V_4_EPOCH", "V_5_EPOCH", "V_6_EPOCH", "V_7_EPOCH", "V_8_EPOCH", "V_9_EPOCH", "V_10_EPOCH", "V_11_EPOCH", "V_12_EPOCH", "V_13_EPOCH", "V_14_EPOCH", "V_15_EPOCH", "V_16_EPOCH", "V_17_EPOCH", "V_18_EPOCH", "V_19_EPOCH", "V_20_EPOCH", "V_21_EPOCH", "V_22_EPOCH", "V_23_EPOCH", "V_24_EPOCH", "V_25_EPOCH", "V_26_EPOCH", "V_27_EPOCH", "V_28_EPOCH", "V_29_EPOCH", "V_30_EPOCH", "V_31_EPOCH", "V_32_EPOCH", "V_33_EPOCH", "V_34_EPOCH", "V_35_EPOCH", "V_36_EPOCH", "V_37_EPOCH", "V_38_EPOCH", "V_39_EPOCH", "V_40_EPOCH"]],
["A3EAI_headgearTypes0",["H_1_EPOCH","H_2_EPOCH","H_3_EPOCH","H_4_EPOCH","H_5_EPOCH","H_6_EPOCH","H_7_EPOCH","H_8_EPOCH","H_9_EPOCH","H_10_EPOCH","H_11_EPOCH","H_12_EPOCH","H_13_EPOCH","H_14_EPOCH","H_15_EPOCH","H_16_EPOCH","H_17_EPOCH","H_18_EPOCH","H_19_EPOCH","H_20_EPOCH","H_21_EPOCH","H_22_EPOCH","H_23_EPOCH","H_24_EPOCH","H_25_EPOCH","H_26_EPOCH","H_27_EPOCH","H_28_EPOCH","H_29_EPOCH","H_30_EPOCH","H_31_EPOCH","H_32_EPOCH","H_33_EPOCH","H_34_EPOCH","H_35_EPOCH","H_36_EPOCH","H_37_EPOCH","H_38_EPOCH","H_39_EPOCH","H_40_EPOCH","H_41_EPOCH","H_42_EPOCH","H_43_EPOCH","H_44_EPOCH","H_45_EPOCH","H_46_EPOCH","H_47_EPOCH","H_48_EPOCH","H_49_EPOCH","H_50_EPOCH","H_51_EPOCH","H_52_EPOCH","H_53_EPOCH","H_54_EPOCH","H_55_EPOCH","H_56_EPOCH","H_57_EPOCH","H_58_EPOCH","H_59_EPOCH","H_60_EPOCH","H_61_EPOCH","H_62_EPOCH","H_63_EPOCH","H_64_EPOCH","H_65_EPOCH","H_66_EPOCH","H_67_EPOCH","H_68_EPOCH","H_69_EPOCH","H_70_EPOCH","H_71_EPOCH","H_72_EPOCH","H_73_EPOCH","H_74_EPOCH","H_75_EPOCH","H_76_EPOCH","H_77_EPOCH","H_78_EPOCH","H_79_EPOCH","H_80_EPOCH","H_81_EPOCH","H_82_EPOCH","H_83_EPOCH","H_84_EPOCH","H_85_EPOCH","H_86_EPOCH","H_87_EPOCH","H_88_EPOCH","H_89_EPOCH","H_90_EPOCH","H_91_EPOCH","H_92_EPOCH","H_93_EPOCH","H_94_EPOCH","H_95_EPOCH","H_96_EPOCH","H_97_EPOCH","H_98_EPOCH","H_99_EPOCH","H_100_EPOCH","H_101_EPOCH","H_102_EPOCH","H_103_EPOCH","H_104_EPOCH"]],
["A3EAI_headgearTypes1",["H_1_EPOCH","H_2_EPOCH","H_3_EPOCH","H_4_EPOCH","H_5_EPOCH","H_6_EPOCH","H_7_EPOCH","H_8_EPOCH","H_9_EPOCH","H_10_EPOCH","H_11_EPOCH","H_12_EPOCH","H_13_EPOCH","H_14_EPOCH","H_15_EPOCH","H_16_EPOCH","H_17_EPOCH","H_18_EPOCH","H_19_EPOCH","H_20_EPOCH","H_21_EPOCH","H_22_EPOCH","H_23_EPOCH","H_24_EPOCH","H_25_EPOCH","H_26_EPOCH","H_27_EPOCH","H_28_EPOCH","H_29_EPOCH","H_30_EPOCH","H_31_EPOCH","H_32_EPOCH","H_33_EPOCH","H_34_EPOCH","H_35_EPOCH","H_36_EPOCH","H_37_EPOCH","H_38_EPOCH","H_39_EPOCH","H_40_EPOCH","H_41_EPOCH","H_42_EPOCH","H_43_EPOCH","H_44_EPOCH","H_45_EPOCH","H_46_EPOCH","H_47_EPOCH","H_48_EPOCH","H_49_EPOCH","H_50_EPOCH","H_51_EPOCH","H_52_EPOCH","H_53_EPOCH","H_54_EPOCH","H_55_EPOCH","H_56_EPOCH","H_57_EPOCH","H_58_EPOCH","H_59_EPOCH","H_60_EPOCH","H_61_EPOCH","H_62_EPOCH","H_63_EPOCH","H_64_EPOCH","H_65_EPOCH","H_66_EPOCH","H_67_EPOCH","H_68_EPOCH","H_69_EPOCH","H_70_EPOCH","H_71_EPOCH","H_72_EPOCH","H_73_EPOCH","H_74_EPOCH","H_75_EPOCH","H_76_EPOCH","H_77_EPOCH","H_78_EPOCH","H_79_EPOCH","H_80_EPOCH","H_81_EPOCH","H_82_EPOCH","H_83_EPOCH","H_84_EPOCH","H_85_EPOCH","H_86_EPOCH","H_87_EPOCH","H_88_EPOCH","H_89_EPOCH","H_90_EPOCH","H_91_EPOCH","H_92_EPOCH","H_93_EPOCH","H_94_EPOCH","H_95_EPOCH","H_96_EPOCH","H_97_EPOCH","H_98_EPOCH","H_99_EPOCH","H_100_EPOCH","H_101_EPOCH","H_102_EPOCH","H_103_EPOCH","H_104_EPOCH"]],
["A3EAI_headgearTypes2",["H_1_EPOCH","H_2_EPOCH","H_3_EPOCH","H_4_EPOCH","H_5_EPOCH","H_6_EPOCH","H_7_EPOCH","H_8_EPOCH","H_9_EPOCH","H_10_EPOCH","H_11_EPOCH","H_12_EPOCH","H_13_EPOCH","H_14_EPOCH","H_15_EPOCH","H_16_EPOCH","H_17_EPOCH","H_18_EPOCH","H_19_EPOCH","H_20_EPOCH","H_21_EPOCH","H_22_EPOCH","H_23_EPOCH","H_24_EPOCH","H_25_EPOCH","H_26_EPOCH","H_27_EPOCH","H_28_EPOCH","H_29_EPOCH","H_30_EPOCH","H_31_EPOCH","H_32_EPOCH","H_33_EPOCH","H_34_EPOCH","H_35_EPOCH","H_36_EPOCH","H_37_EPOCH","H_38_EPOCH","H_39_EPOCH","H_40_EPOCH","H_41_EPOCH","H_42_EPOCH","H_43_EPOCH","H_44_EPOCH","H_45_EPOCH","H_46_EPOCH","H_47_EPOCH","H_48_EPOCH","H_49_EPOCH","H_50_EPOCH","H_51_EPOCH","H_52_EPOCH","H_53_EPOCH","H_54_EPOCH","H_55_EPOCH","H_56_EPOCH","H_57_EPOCH","H_58_EPOCH","H_59_EPOCH","H_60_EPOCH","H_61_EPOCH","H_62_EPOCH","H_63_EPOCH","H_64_EPOCH","H_65_EPOCH","H_66_EPOCH","H_67_EPOCH","H_68_EPOCH","H_69_EPOCH","H_70_EPOCH","H_71_EPOCH","H_72_EPOCH","H_73_EPOCH","H_74_EPOCH","H_75_EPOCH","H_76_EPOCH","H_77_EPOCH","H_78_EPOCH","H_79_EPOCH","H_80_EPOCH","H_81_EPOCH","H_82_EPOCH","H_83_EPOCH","H_84_EPOCH","H_85_EPOCH","H_86_EPOCH","H_87_EPOCH","H_88_EPOCH","H_89_EPOCH","H_90_EPOCH","H_91_EPOCH","H_92_EPOCH","H_93_EPOCH","H_94_EPOCH","H_95_EPOCH","H_96_EPOCH","H_97_EPOCH","H_98_EPOCH","H_99_EPOCH","H_100_EPOCH","H_101_EPOCH","H_102_EPOCH","H_103_EPOCH","H_104_EPOCH"]],
["A3EAI_headgearTypes3",["H_1_EPOCH","H_2_EPOCH","H_3_EPOCH","H_4_EPOCH","H_5_EPOCH","H_6_EPOCH","H_7_EPOCH","H_8_EPOCH","H_9_EPOCH","H_10_EPOCH","H_11_EPOCH","H_12_EPOCH","H_13_EPOCH","H_14_EPOCH","H_15_EPOCH","H_16_EPOCH","H_17_EPOCH","H_18_EPOCH","H_19_EPOCH","H_20_EPOCH","H_21_EPOCH","H_22_EPOCH","H_23_EPOCH","H_24_EPOCH","H_25_EPOCH","H_26_EPOCH","H_27_EPOCH","H_28_EPOCH","H_29_EPOCH","H_30_EPOCH","H_31_EPOCH","H_32_EPOCH","H_33_EPOCH","H_34_EPOCH","H_35_EPOCH","H_36_EPOCH","H_37_EPOCH","H_38_EPOCH","H_39_EPOCH","H_40_EPOCH","H_41_EPOCH","H_42_EPOCH","H_43_EPOCH","H_44_EPOCH","H_45_EPOCH","H_46_EPOCH","H_47_EPOCH","H_48_EPOCH","H_49_EPOCH","H_50_EPOCH","H_51_EPOCH","H_52_EPOCH","H_53_EPOCH","H_54_EPOCH","H_55_EPOCH","H_56_EPOCH","H_57_EPOCH","H_58_EPOCH","H_59_EPOCH","H_60_EPOCH","H_61_EPOCH","H_62_EPOCH","H_63_EPOCH","H_64_EPOCH","H_65_EPOCH","H_66_EPOCH","H_67_EPOCH","H_68_EPOCH","H_69_EPOCH","H_70_EPOCH","H_71_EPOCH","H_72_EPOCH","H_73_EPOCH","H_74_EPOCH","H_75_EPOCH","H_76_EPOCH","H_77_EPOCH","H_78_EPOCH","H_79_EPOCH","H_80_EPOCH","H_81_EPOCH","H_82_EPOCH","H_83_EPOCH","H_84_EPOCH","H_85_EPOCH","H_86_EPOCH","H_87_EPOCH","H_88_EPOCH","H_89_EPOCH","H_90_EPOCH","H_91_EPOCH","H_92_EPOCH","H_93_EPOCH","H_94_EPOCH","H_95_EPOCH","H_96_EPOCH","H_97_EPOCH","H_98_EPOCH","H_99_EPOCH","H_100_EPOCH","H_101_EPOCH","H_102_EPOCH","H_103_EPOCH","H_104_EPOCH"]],
["A3EAI_foodLoot",["FoodSnooter","FoodWalkNSons","FoodBioMeat","ItemSodaOrangeSherbet","ItemSodaPurple","ItemSodaMocha","ItemSodaBurst","ItemSodaRbull","honey_epoch","emptyjar_epoch","sardines_epoch","meatballs_epoch","scam_epoch","sweetcorn_epoch","WhiskeyNoodle","ItemCoolerE"]],
["A3EAI_MiscLoot1",["PaintCanClear","PaintCanBlk","PaintCanBlu","PaintCanBrn","PaintCanGrn","PaintCanOra","PaintCanPur","PaintCanRed","PaintCanTeal","PaintCanYel","ItemDocument","ItemMixOil","emptyjar_epoch","emptyjar_epoch","FoodBioMeat","ItemSodaOrangeSherbet","ItemSodaPurple","ItemSodaMocha","ItemSodaBurst","ItemSodaRbull","sardines_epoch","meatballs_epoch","scam_epoch","sweetcorn_epoch","Towelette","Towelette","Towelette","Towelette","Towelette","HeatPack","HeatPack","HeatPack","ColdPack","ColdPack","VehicleRepair","CircuitParts","ItemCoolerE","ItemScraps","ItemScraps"]],
["A3EAI_MiscLoot2",["MortarBucket","MortarBucket","ItemCorrugated","CinderBlocks","jerrycan_epoch","jerrycan_epoch","VehicleRepair","VehicleRepair","CircuitParts"]],
["A3EAI_tools0",[["ItemWatch",0.70],["ItemCompass",0.50],["ItemMap",0.50],["ItemGPS",0.05],["EpochRadio0",0.05]]],
["A3EAI_tools1",[["ItemWatch",0.80],["ItemCompass",0.60],["ItemMap",0.60],["ItemGPS",0.10],["EpochRadio0",0.10]]],
["A3EAI_tools2",[["ItemWatch",0.80],["ItemCompass",0.70],["ItemMap",0.70],["ItemGPS",0.15],["EpochRadio0",0.15]]],
["A3EAI_tools3",[["ItemWatch",0.80],["ItemCompass",0.80],["ItemMap",0.80],["ItemGPS",0.20],["EpochRadio0",0.20]]],
["A3EAI_gadgets0",[["binocular",0.40],["NVG_EPOCH",0.05]]],
["A3EAI_gadgets1",[["binocular",0.50],["NVG_EPOCH",0.10]]],
["A3EAI_gadgets2",[["binocular",0.60],["NVG_EPOCH",0.15]]],
["A3EAI_gadgets3",[["binocular",0.70],["NVG_EPOCH",0.20]]]
];

if (A3EAI_verifySettings) then {
if !(A3EAI_minAI_capitalCity in [0,1,2,3,4,5]) then {diag_log format ["[A3EAI] Error found in variable A3EAI_minAI_capitalCity, resetting to default value."]; A3EAI_minAI_capitalCity = 2};
if !(A3EAI_addAI_capitalCity in [0,1,2,3,4,5]) then {diag_log format ["[A3EAI] Error found in variable A3EAI_addAI_capitalCity, resetting to default value."]; A3EAI_addAI_capitalCity = 1};
if !(A3EAI_unitLevel_capitalCity in [0,1,2,3]) then {diag_log format ["[A3EAI] Error found in variable A3EAI_unitLevel_capitalCity, resetting to default value."]; A3EAI_unitLevel_capitalCity = 1};
if !(A3EAI_minAI_city in [0,1,2,3,4,5]) then {diag_log format ["[A3EAI] Error found in variable A3EAI_minAI_city, resetting to default value."]; A3EAI_minAI_city = 1};
if !(A3EAI_addAI_city in [0,1,2,3,4,5]) then {diag_log format ["[A3EAI] Error found in variable A3EAI_addAI_city, resetting to default value."]; A3EAI_addAI_city = 2};
if !(A3EAI_unitLevel_city in [0,1,2,3]) then {diag_log format ["[A3EAI] Error found in variable A3EAI_unitLevel_city, resetting to default value."]; A3EAI_unitLevel_city = 1};
if !(A3EAI_minAI_village in [0,1,2,3,4,5]) then {diag_log format ["[A3EAI] Error found in variable A3EAI_minAI_village, resetting to default value."]; A3EAI_minAI_village = 1};
if !(A3EAI_addAI_village in [0,1,2,3,4,5]) then {diag_log format ["[A3EAI] Error found in variable A3EAI_addAI_village, resetting to default value."]; A3EAI_addAI_village = 1};
if !(A3EAI_unitLevel_village in [0,1,2,3]) then {diag_log format ["[A3EAI] Error found in variable A3EAI_unitLevel_village, resetting to default value."]; A3EAI_unitLevel_village = 0};
if !(A3EAI_minAI_remoteArea in [0,1,2,3,4,5]) then {diag_log format ["[A3EAI] Error found in variable A3EAI_minAI_remoteArea, resetting to default value."]; A3EAI_minAI_remoteArea = 1};
if !(A3EAI_addAI_remoteArea in [0,1,2,3,4,5]) then {diag_log format ["[A3EAI] Error found in variable A3EAI_unitLevel_remoteArea, resetting to default value."]; A3EAI_addAI_remoteArea = 1};
if !(A3EAI_unitLevel_remoteArea in [0,1,2,3]) then {diag_log format ["[A3EAI] Error found in variable A3EAI_unitLevel_remoteArea, resetting to default value."]; A3EAI_unitLevel_remoteArea = 2};
if !(A3EAI_minAI_wilderness in [0,1,2,3,4,5]) then {diag_log format ["[A3EAI] Error found in variable A3EAI_minAI_remoteArea, resetting to default value."]; A3EAI_minAI_wilderness = 1};
if !(A3EAI_addAI_wilderness in [0,1,2,3,4,5]) then {diag_log format ["[A3EAI] Error found in variable A3EAI_unitLevel_remoteArea, resetting to default value."]; A3EAI_addAI_wilderness = 1};
if !(A3EAI_unitLevel_wilderness in [0,1,2,3]) then {diag_log format ["[A3EAI] Error found in variable A3EAI_unitLevel_remoteArea, resetting to default value."]; A3EAI_unitLevel_wilderness = 2};
//if !((count A3EAI_promoteChances) isEqualTo 3) then {diag_log format ["[A3EAI] Error found in variable A3EAI_promoteChances, resetting to default value."]; A3EAI_promoteChances = [0.20,0.10,0.10]};
if !((count A3EAI_levelChancesAir) isEqualTo 4) then {diag_log format ["[A3EAI] Error found in variable A3EAI_levelChancesAir, resetting to default value."]; A3EAI_levelChancesAir = [0.00,0.50,0.35,0.15]};
if !((count A3EAI_levelChancesLand) isEqualTo 4) then {diag_log format ["[A3EAI] Error found in variable A3EAI_levelChancesLand, resetting to default value."]; A3EAI_levelChancesAir = [0.00,0.50,0.35,0.15]};
if !((count A3EAI_useWeaponChance0) isEqualTo 4) then {diag_log format ["[A3EAI] Error found in variable A3EAI_useWeaponChance0, resetting to default value."]; A3EAI_useWeaponChance0 = [0.20,0.80,0.00,0.00]};
if !((count A3EAI_useWeaponChance1) isEqualTo 4) then {diag_log format ["[A3EAI] Error found in variable A3EAI_useWeaponChance1, resetting to default value."]; A3EAI_useWeaponChance1 = [0.00,0.90,0.05,0.05]};
if !((count A3EAI_useWeaponChance2) isEqualTo 4) then {diag_log format ["[A3EAI] Error found in variable A3EAI_useWeaponChance2, resetting to default value."]; A3EAI_useWeaponChance2 = [0.00,0.80,0.10,0.10]};
if !((count A3EAI_useWeaponChance3) isEqualTo 4) then {diag_log format ["[A3EAI] Error found in variable A3EAI_useWeaponChance3, resetting to default value."]; A3EAI_useWeaponChance3 = [0.00,0.70,0.15,0.15]};
if ("air_reinforce" in A3EAI_airReinforcementAllowedTypes) then {A3EAI_airReinforcementAllowedTypes = A3EAI_airReinforcementAllowedTypes - ["air_reinforce"]};
};

diag_log format ["[A3EAI] Verified all A3EAI settings in %1 seconds.",(diag_tickTime - _startTime)];

 

 

A3EAI_config.sqf

/*
A3EAI Configuration File

Description: Contains all configurable settings of A3EAI. Contains settings for debugging, customization of AI units, spawning, and loot.


*/

diag_log "[A3EAI] Reading A3EAI configuration file.";

/* A3EAI Settings
--------------------------------------------------------------------------------------------------------------------*/

//Enable or disable event logging to the server RPT file (named arma3server_[date]_[time].rpt). Debug level setting. 0: No debug output, 1: Basic Debug output, 2: Detailed Debug output. (Default: 0)
//Debug output may help finding additional information about A3EAI's background behavior. This output is helpful when asking for help regarding bugs or unexpected behaviors.
A3EAI_debugLevel = 0;

//Frequency of server monitor update to RPT log in seconds. The monitor periodically reports number of max/current AI units and dynamically spawned triggers into RPT log. (Default: 300, 0 = Disable reporting)
A3EAI_monitorRate = 300;

//Enable or disable verification and error-correction of classname tables used by A3EAI. If invalid entries are found, they are removed and logged into the RPT log.
//If disabled, any invalid classnames will not be removed and clients may crash if AI bodies with invalid items are looted. Only disable if a previous scan shows no invalid classnames (Default: true).
A3EAI_verifyClassnames = true;

//Enable filter against vehicles with init statements, which may cause BattlEye kicks. Enable if experiencing BattlEye kicks after adding new vehicle classnames (Default: false).
A3EAI_checkVehicleInit = false;

//Enables checking of all A3EAI config settings. (Default: true)
A3EAI_verifySettings = true;

//Minimum seconds to pass until each dead AI body or destroyed vehicle can be cleaned up by A3EAI's task scheduler. A3EAI will not clean up a body/vehicle if there is a player close by (Default: 900).
A3EAI_cleanupDelay = 900;

//Enabled: A3EAI will load custom spawn/blacklist definitions file on startup (A3EAI_custom_defs.sqf) (Default: false)
A3EAI_loadCustomFile = false;


/* A3EAI HC Settings
--------------------------------------------------------------------------------------------------------------------*/

//Enables A3EAI headless client support. (Default: false)
A3EAI_enableHC = false;

//If HC support enabled, A3EAI will pause during post-initialization until HC has successfully connected. (Default: false)
A3EAI_waitForHC = false;


/* Dynamic Classname Settings

If a setting is disabled, A3EAI will use the corresponding classname table further below. See "AI skin, weapon, loot, and equipment settings" section.
--------------------------------------------------------------------------------------------------------------------*/

//true: Generate AI uniform types from Epoch loot tables (Default)
//false: Uniforms defined by A3EAI_uniformTypes0, A3EAI_uniformTypes1, A3EAI_uniformTypes2, A3EAI_uniformTypes3
A3EAI_dynamicUniformList = true;

//true: Generate AI weapons from Epoch loot tables (Default)
//false: Weapons defined by A3EAI_pistolList, A3EAI_rifleList, A3EAI_machinegunList, A3EAI_sniperList
A3EAI_dynamicWeaponList = true;

//true: Use Epoch loot table data as whitelist for AI-usable weapon scopes (Default)
//false: Scopes defined by A3EAI_weaponOpticsList
A3EAI_dynamicOpticsList = true;

//true: Generate AI backpack types from Epoch loot tables (Default)
//false: Backpacks defined by A3EAI_backpackTypes0, A3EAI_backpackTypes1, A3EAI_backpackTypes2, A3EAI_backpackTypes3
A3EAI_dynamicBackpackList = true;

//true: Generate AI backpack types from Epoch loot tables (Default)
//false: Vests defined by A3EAI_vestTypes0, A3EAI_vestTypes1, A3EAI_vestTypes2, A3EAI_vestTypes3
A3EAI_dynamicVestList = true;

//true: Generate AI headgear types from Epoch loot tables (Default)
//false: Headgear defined by A3EAI_headgearTypes0, A3EAI_headgearTypes1, A3EAI_headgearTypes2, A3EAI_headgearTypes3
A3EAI_dynamicHeadgearList = true;

//true: Generate AI food types from Epoch loot tables (Default)
//false: Food defined by A3EAI_foodLoot
A3EAI_dynamicFoodList = true;

//true: Generate AI generic loot types from Epoch loot tables (Default)
//false: Loot defined by A3EAI_MiscLoot1
A3EAI_dynamicLootList = true;

//true: Generate AI generic loot (large) types from Epoch loot tables (Default)
//false: Loot defined by A3EAI_MiscLoot2
A3EAI_dynamicLootLargeList = true;

//Classnames of weapons to ignore from Epoch loot tables
A3EAI_dynamicWeaponBlacklist = [];


/* Shared AI Unit Settings. These settings affect all AI spawned unless noted otherwise.
--------------------------------------------------------------------------------------------------------------------*/

//Number of online players required for maximum (or minimum) AI spawn chance. Affects Static, Dynamic, Random AI spawns. (Default: 20)
A3EAI_playerCountThreshold = 20;

//If A3EAI_upwardsChanceScaling is true: Initial spawn chance multiplier. If A3EAI_upwardsChanceScaling is false: Final spawn chance multiplier. (Default: 0.50)
A3EAI_chanceScalingThreshold = 0.50;

//true: Spawn chance multiplier scales upwards from the above defined value to 1.00. false: Spawn chance multiplier scales downwards from 1.00 to the above defined value.
A3EAI_upwardsChanceScaling = true;

//(Static/Dynamic/Random Spawns) minAI: Minimum number of units. addAI: maximum number of additional units. unitLevel: Unit level (0-3)
A3EAI_minAI_village = 1; //1
A3EAI_addAI_village = 1; //1
A3EAI_unitLevel_village = 0; //0
A3EAI_spawnChance_village = 0.40; //0.40

//(Static/Dynamic/Random Spawns) minAI: Minimum number of units. addAI: maximum number of additional units. unitLevel: Unit level (0-3)
A3EAI_minAI_city = 1; //1
A3EAI_addAI_city = 2; //2
A3EAI_unitLevel_city = 1; //1
A3EAI_spawnChance_city = 0.60; //0.60

//(Static/Dynamic/Random Spawns) minAI: Minimum number of units. addAI: maximum number of additional units. unitLevel: Unit level (0-3)
A3EAI_minAI_capitalCity = 2; //2
A3EAI_addAI_capitalCity = 1; //1
A3EAI_unitLevel_capitalCity = 1; //1
A3EAI_spawnChance_capitalCity = 0.70; //0.70

//(Static/Dynamic/Random Spawns) minAI: Minimum number of units. addAI: maximum number of additional units. unitLevel: Unit level (0-3)
A3EAI_minAI_remoteArea = 1; //1
A3EAI_addAI_remoteArea = 1; //1
A3EAI_unitLevel_remoteArea = 2; //2
A3EAI_spawnChance_remoteArea = 0.80; //0.80

//(Dynamic/Random Spawns) minAI: Minimum number of units. addAI: maximum number of additional units. unitLevel: Unit level (0-3)
A3EAI_minAI_wilderness = 1; //1
A3EAI_addAI_wilderness = 2; //2
A3EAI_unitLevel_wilderness = 1; //1
A3EAI_spawnChance_wilderness = 0.50; //0.50

//(For dynamic and random spawns only) Defines amount of time to wait in seconds until cleaning up temporary blacklist area after dynamic/random spawn is deactivated (Default: 1200)
A3EAI_tempBlacklistTime = 1200;

//If enabled, AI group will attempt to track down player responsible for killing a group member. (Default: true)
A3EAI_findKiller = true;

//If normal probability check for spawning NVGs fails, then give AI temporary NVGs during night hours. Temporary NVGs are unlootable and will be removed at death (Default: false).
A3EAI_tempNVGs = true;

//Minimum AI unit level requirement to use underslung grenade launchers. Set to -1 to disable completely. (Default: 1)
A3EAI_GLRequirement = 1;

//Minimum AI unit level requirement to use launcher weapons. Set to -1 to disable completely. (Default: -1)
A3EAI_launcherLevelReq = -1;

//List of launcher-type weapons that AI can use.
A3EAI_launcherTypes = [];

//Maximum number of launcher weapons allowed per group (Default: 1)
A3EAI_launchersPerGroup = 1;

//Enable or disable AI self-healing. Level 0 AI cannot self-heal. (Default: true).
A3EAI_enableHealing = true;


/* A3EAI Client Addon features. These features require the A3EAI client addon to be installed in order to work.
--------------------------------------------------------------------------------------------------------------------*/

//Enable or disable radio message receiving. Players with radios (Radio Quartz) will be able to intercept some AI communications. (Default: false)
A3EAI_radioMsgs = false;

//Enable or disable AI death messages. Messages will be sent only to player responsible for killing the unit. Messages will be sent in System chat in the format "(Unit name) was killed." (Default: false)
A3EAI_deathMessages = false;


/* Static AI Spawning Settings
--------------------------------------------------------------------------------------------------------------------*/

//Enable or disable static AI spawns. If enabled, AI spawn points will be generated in cities, towns, and other named areas.
//Enabled: A3EAI automatically generates static spawns at named locations on map. Disabled: No static spawns will be generated. (Default: true)
A3EAI_autoGenerateStatic = true;

//Set minimum and maximum wait time in seconds to respawn an AI group after all units have been killed. Applies to both static AI and custom spawned AI (Default: Min 300, Max 600).
A3EAI_respawnTimeMin = 300;
A3EAI_respawnTimeMax = 600;

//Time to allow spawned AI units to exist in seconds before being despawned when no players are present in a trigger area. Applies to both static AI and custom spawned AI (Default: 120)
A3EAI_despawnWait = 120;

//Respawn Limits. Set to -1 for unlimited respawns. (Default: -1 for each).
A3EAI_respawnLimit_village = -1;
A3EAI_respawnLimit_city = -1;
A3EAI_respawnLimit_capitalCity = -1;
A3EAI_respawnLimit_remoteArea = -1;

//Add name of location as displayed on map prevent static AI spawns from being created in these locations. Location names are case-sensitive (Example: ["Aggelochori","Panochori","Zaros"])
A3EAI_staticBlacklistLocations = [];


/* Dynamic AI Spawning Settings. Probabilities should add up to 1.00
--------------------------------------------------------------------------------------------------------------------*/

//Upper limit of dynamic spawns on map at once. Set to 0 to disable dynamic spawns (Default: 15)
A3EAI_dynMaxSpawns = 15;

//Minimum time (in seconds) that must pass between dynamic spawns for each player (Default: 900)
A3EAI_dynCooldownTime = 900;

//Players offline for this amount of time (seconds) will have their last spawn timestamp reset (Default: 3600)
A3EAI_dynResetLastSpawn = 3600;

//Probability for dynamic AI to actively hunt a targeted player. If probability check fails, dynamic AI will patrol the area instead of hunting (Default: 0.60)
A3EAI_huntingChance = 0.60;

//Time to wait before despawning all AI units in dynamic spawn area when no players are present. (Default: 120)
A3EAI_dynDespawnWait = 120;


/* Random AI Spawning Settings (Feature in development)
--------------------------------------------------------------------------------------------------------------------*/

//Maximum number of placed random spawns on map. Set to -1 for A3EAI to automatically adjust spawn limit according to map size. Set to 0 to disable random spawns. (Default: -1)
A3EAI_maxRandomSpawns = -1;

//Time to wait before despawning all AI units in random spawn area when no players are present. (Default: 120)
A3EAI_randDespawnWait = 120;

//Minimum distance between a random spawn location and other random spawns. (Default: 0)
A3EAI_minRandSpawnDist = 0;


/* AI Air vehicle patrol settings. These AI vehicles will randomly travel between different cities and towns.
--------------------------------------------------------------------------------------------------------------------*/

//Global maximum number of active AI air vehicle patrols. Set at 0 to disable (Default: 0).
A3EAI_maxHeliPatrols = 10;

//Probability of spawning Level 0/1/2/3 AI air vehicle patrol spawns. Probabilities should add up to 1.00
A3EAI_levelChancesAir = [0.00,0.50,0.35,0.15];

//Set minimum and maximum wait time in seconds to respawn an AI vehicle patrol after vehicle is destroyed or disabled. (Default: Min 600, Max 900).
A3EAI_respawnAirMinTime = 600;
A3EAI_respawnAirMaxTime = 900;

//Classnames of air vehicle types to use, with the maximum amount of each type to spawn.
A3EAI_heliList = [
["B_Heli_Light_01_armed_F",5],
["B_Heli_Transport_01_F",5],
["I_Heli_light_03_F",5]
];

//Maximum number of gunner units per air vehicle. Limited by actual number of available gunner positions. (Default: 2)
//Affects: All AI air vehicle patrols, including custom and reinforcement.
A3EAI_heliGunnerUnits = 2;

//If enabled, A3EAI will remove all missile/rocket-type weaponry from spawned air vehicles. Affects all air vehicle types (patrols/custom/etc). (Default: true)
//Affects: All AI air vehicle patrols, including custom and reinforcement.
A3EAI_removeMissileWeapons = true;

//Probability of AI helicopter sucessfully detecting player if there is line-of-sight. AI helicopters will conduct a visual sweep upon arriving at each waypoint and some distance after leaving. (Default: 0.80)
//Affects: All AI air vehicle patrols, including custom and reinforcement.
A3EAI_detectChance = 0.80;

//Probability of AI to deploy units by parachute if players are nearby when helicopter is investigating a waypoint. (Default: 0.50)
//Affects: Air vehicle patrols.
A3EAI_paraDropChance = 0.50;

//Cooldown time for AI paradrop deployment in seconds. Note: Cooldown does not affect helicopter reinforcement for dynamic AI spawns. (Default: 1800).
//Affects: Air vehicle patrols.
A3EAI_paraDropCooldown = 1800;

//Number of AI to paradrop if players are nearby when helicopter is investigating a waypoint, or if helicopter is reinforcing a dynamic AI spawn. Limited by number of cargo seats available in the vehicle. (Default: 3)
//Affects: Air vehicle patrols, air reinforcements.
A3EAI_paraDropAmount = 3;


/*AI Land vehicle patrol settings. These AI vehicles will randomly travel between different cities and towns.
--------------------------------------------------------------------------------------------------------------------*/

//Global maximum number of active AI land vehicle patrols. Set at 0 to disable (Default: 0).
A3EAI_maxLandPatrols = 0;

//Probability of spawning Level 0/1/2/3 AI land vehicle spawns. Probabilities should add up to 1.00
A3EAI_levelChancesLand = [0.00,0.50,0.35,0.15];

//Set minimum and maximum wait time in seconds to respawn an AI vehicle patrol after vehicle is destroyed or disabled. (Default: Min 600, Max 900).
A3EAI_respawnLandMinTime = 600;
A3EAI_respawnLandMaxTime = 900;

//Classnames of land vehicle types to use, with the maximum amount of each type to spawn.
A3EAI_vehList = [
["O_Truck_02_box_EPOCH",5]
];

//Maximum number of gunner units per land vehicle. Limited by actual number of available gunner positions. (Default: 2)
A3EAI_vehGunnerUnits = 2;

//Maximum number of cargo units per land vehicle. Limited by actual number of available cargo positions. (Default: 3)
A3EAI_vehCargoUnits = 3;


/* AI Air Reinforcement Settings
--------------------------------------------------------------------------------------------------------------------*/

//Maximum allowed number of simultaneous active reinforcements (Default: 5)
A3EAI_maxAirReinforcements = 10;

//Air vehicles to use as reinforcement vehicles. Default: ["B_Heli_Transport_01_F","B_Heli_Light_01_armed_F"]
//Armed air vehicles will detect and engage players within reinforcement area. Unarmed air vehicles will deploy an AI paradrop group.
A3EAI_airReinforcementVehicles = ["B_Heli_Transport_01_F","B_Heli_Light_01_armed_F"];

//Probability to spawn reinforcements for each AI level.
A3EAI_airReinforcementSpawnChance0 = 0.10; //Probability of reinforcing Level 0 AI (Default: 0.10)
A3EAI_airReinforcementSpawnChance1 = 0.20; //Probability of reinforcing Level 1 AI (Default: 0.20)
A3EAI_airReinforcementSpawnChance2 = 0.30; //Probability of reinforcing Level 2 AI (Default: 0.30)
A3EAI_airReinforcementSpawnChance3 = 0.40; //Probability of reinforcing Level 3 AI (Default: 0.40)

//AI types permitted to summon reinforcements. Default: ["static","dynamic","random"]
//Usable AI types: "static", "dynamic", "random", "air", "land", "staticcustom", "aircustom", "landcustom", "vehiclecrew"
A3EAI_airReinforcementAllowedTypes = ["static","dynamic","random"];

//Maximum time for reinforcement for armed air vehicles in seconds. AI air vehicle will leave the area after this time if not destroyed.
A3EAI_airReinforcementDuration0 = 120; //Level 0 Default: 120
A3EAI_airReinforcementDuration1 = 180; //Level 1 Default: 180
A3EAI_airReinforcementDuration2 = 240; //Level 2 Default: 240
A3EAI_airReinforcementDuration3 = 300; //Level 3 Default: 300


/* Shared AI Vehicle (Air & Land) Settings
--------------------------------------------------------------------------------------------------------------------*/

//Add name of location as displayed on map prevent AI vehicle patrols from travelling to these locations. Location names are case-sensitive. (Example: ["Aggelochori","Panochori","Zaros"])
//Note: Vehicles may still pass through these areas but will not make stops unless enemies are encountered.
A3EAI_waypointBlacklist = [];


/*
AI skill settings
Skill Level: Description
0: Low-level AI found in villages
1: Medium-level AI found in cities and capital cities
2: High-level AI found in remote areas such as factories and military bases
3: Expert-level AI.

Valid skill range: 0.00 - 1.00.
Hint: For all skill types, higher number = better skill. For skill sub-type explanation, see: https://community.bistudio.com/wiki/AI_Sub-skills
*/

//AI skill settings level 0 (Skill, Minimum skill, Maximum skill). Baseline skill level: 0.40
A3EAI_skill0 = [
["aimingAccuracy",0.05,0.10],
["aimingShake",0.40,0.50],
["aimingSpeed",0.40,0.50],
["spotDistance",0.40,0.50],
["spotTime",0.40,0.50],
["courage",0.40,0.50],
["reloadSpeed",0.40,0.50],
["commanding",0.40,0.50],
["general",0.40,0.50]
];

//AI skill settings level 1 (Skill, Minimum skill, Maximum skill). Baseline skill level: 0.50
A3EAI_skill1 = [
["aimingAccuracy",0.10,0.15],
["aimingShake",0.50,0.60],
["aimingSpeed",0.50,0.60],
["spotDistance",0.50,0.60],
["spotTime",0.50,0.60],
["courage",0.50,0.60],
["reloadSpeed",0.50,0.60],
["commanding",0.50,0.60],
["general",0.50,0.60]
];

//AI skill settings level 2 (Skill, Minimum skill, Maximum skill). Baseline skill level: 0.60
A3EAI_skill2 = [
["aimingAccuracy",0.15,0.20],
["aimingShake",0.60,0.70],
["aimingSpeed",0.60,0.70],
["spotDistance",0.60,0.70],
["spotTime",0.60,0.70],
["courage",0.60,0.70],
["reloadSpeed",0.60,0.70],
["commanding",0.60,0.70],
["general",0.60,0.70]
];

//AI skill settings level 3 (Skill, Minimum skill, Maximum skill). Baseline skill level: 0.70
A3EAI_skill3 = [
["aimingAccuracy",0.20,0.25],
["aimingShake",0.70,0.80],
["aimingSpeed",0.70,0.80],
["spotDistance",0.70,0.80],
["spotTime",0.70,0.80],
["courage",0.70,0.80],
["reloadSpeed",0.70,0.80],
["commanding",0.70,0.80],
["general",0.70,0.80]
];


/*AI weapon type probabilities
--------------------------------------------------------------------------------------------------------------------*/

//Probabilities to equip level 0-3 AI with each weapon type. Order: [pistols, rifles, machineguns, sniper rifles]. Probabilities must add up to 1.00.
A3EAI_useWeaponChance0 = [0.20,0.80,0.00,0.00];
A3EAI_useWeaponChance1 = [0.00,0.90,0.05,0.05];
A3EAI_useWeaponChance2 = [0.00,0.80,0.10,0.10];
A3EAI_useWeaponChance3 = [0.00,0.70,0.15,0.15];


/*AI Weapon attachment settings
--------------------------------------------------------------------------------------------------------------------*/

//Probability to select a random optics attachment (ie: scopes) for level 0-3 AI
A3EAI_opticsChance0 = 0.00;
A3EAI_opticsChance1 = 0.25;
A3EAI_opticsChance2 = 0.50;
A3EAI_opticsChance3 = 0.75;

//Probability to select a random pointer attachment (ie: flashlights) for level 0-3 AI
A3EAI_pointerChance0 = 0.00;
A3EAI_pointerChance1 = 0.25;
A3EAI_pointerChance2 = 0.50;
A3EAI_pointerChance3 = 0.75;

//Probability to select a random muzzle attachment (ie: suppressors) for level 0-3 AI
A3EAI_muzzleChance0 = 0.00;
A3EAI_muzzleChance1 = 0.25;
A3EAI_muzzleChance2 = 0.50;
A3EAI_muzzleChance3 = 0.75;

//Probability to select a random underbarrel attachment (ie: bipods) for level 0-3 AI
A3EAI_underbarrelChance0 = 0.00;
A3EAI_underbarrelChance1 = 0.25;
A3EAI_underbarrelChance2 = 0.50;
A3EAI_underbarrelChance3 = 0.75;


/* AI loot quantity settings
--------------------------------------------------------------------------------------------------------------------*/

//Maximum amount of Krypto generated for level 0-3 AI. Actual amount will be randomized up to the specified amount.
A3EAI_kryptoAmount0 = 25; //Default for level 0 AI: 25
A3EAI_kryptoAmount1 = 50; //Default for level 1 AI: 50
A3EAI_kryptoAmount2 = 75; //Default for level 2 AI: 75
A3EAI_kryptoAmount3 = 100; //Default for level 3 AI: 100

//Maximum number of food loot items found on AI. (Default: 1)
A3EAI_foodLootCount = 1;

//Maximum number of items to select from A3EAI_MiscLoot1 (generic loot) table. (Default: 1)
A3EAI_miscLootCount1 = 1;

//Maximum number of items to select from A3EAI_MiscLoot2 (large generic loot) table. (Default: 1)
A3EAI_miscLootCount2 = 1;


/* AI loot probability settings. AI loot is pre-generated into a pool for each unit and randomly pulled to units as time passes.
--------------------------------------------------------------------------------------------------------------------*/

//Chance to add a single First Aid Kit to group loot pool per unit (Default: 0.20)
A3EAI_chanceFirstAidKit = 0.20;

//Chance to add each edible item to group loot pool per unit (Default: 0.40)
A3EAI_chanceFoodLoot = 0.40;

//Chance to add each generic loot item to group loot pool per unit (Default: 0.40)
A3EAI_chanceMiscLoot1 = 0.40;

//Chance to add each large generic loot item to group loot pool per unit (Default: 0.30)
A3EAI_chanceMiscLoot2 = 0.30;

//Probability to successfully pull a random item from loot pool for level 0-3 AI. Influences the rate at which loot items are added to units.
A3EAI_lootPullChance0 = 0.30; //Default for level 0 AI: 0.30
A3EAI_lootPullChance1 = 0.40; //Default for level 1 AI: 0.40
A3EAI_lootPullChance2 = 0.50; //Default for level 2 AI: 0.50
A3EAI_lootPullChance3 = 0.60; //Default for level 3 AI: 0.60


/*
AI skin, weapon, loot, and equipment settings

Note: Some of the below tables may not be used by A3EAI if a dynamic classname setting is enabled. Check each section below for details.
*/


//AI uniform classnames. Note: A3EAI_uniformTypes0-3 will not be read if A3EAI_dynamicUniformList is enabled.
//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
A3EAI_uniformTypes0 = ["U_O_CombatUniform_ocamo", "U_O_GhillieSuit", "U_O_PilotCoveralls", "U_O_Wetsuit", "U_OG_Guerilla1_1", "U_OG_Guerilla2_1", "U_OG_Guerilla2_3", "U_OG_Guerilla3_1", "U_OG_Guerilla3_2", "U_OG_leader", "U_C_Poloshirt_stripped", "U_C_Poloshirt_blue", "U_C_Poloshirt_burgundy", "U_C_Poloshirt_tricolour", "U_C_Poloshirt_salmon", "U_C_Poloshirt_redwhite", "U_C_Poor_1", "U_C_WorkerCoveralls", "U_C_Journalist", "U_C_Scientist", "U_OrestesBody", "U_Wetsuit_uniform", "U_Wetsuit_White", "U_Wetsuit_Blue", "U_Wetsuit_Purp", "U_Wetsuit_Camo", "U_CamoRed_uniform", "U_CamoBrn_uniform", "U_CamoBlue_uniform", "U_Camo_uniform", "U_ghillie1_uniform", "U_ghillie2_uniform", "U_ghillie3_uniform", "U_C_Driver_1", "U_C_Driver_2", "U_C_Driver_3", "U_C_Driver_4", "U_C_Driver_1_black", "U_C_Driver_1_blue", "U_C_Driver_1_green", "U_C_Driver_1_red", "U_C_Driver_1_white", "U_C_Driver_1_yellow", "U_C_Driver_1_orange", "U_C_Driver_1_red"];
A3EAI_uniformTypes1 = ["U_O_CombatUniform_ocamo", "U_O_GhillieSuit", "U_O_PilotCoveralls", "U_O_Wetsuit", "U_OG_Guerilla1_1", "U_OG_Guerilla2_1", "U_OG_Guerilla2_3", "U_OG_Guerilla3_1", "U_OG_Guerilla3_2", "U_OG_leader", "U_C_Poloshirt_stripped", "U_C_Poloshirt_blue", "U_C_Poloshirt_burgundy", "U_C_Poloshirt_tricolour", "U_C_Poloshirt_salmon", "U_C_Poloshirt_redwhite", "U_C_Poor_1", "U_C_WorkerCoveralls", "U_C_Journalist", "U_C_Scientist", "U_OrestesBody", "U_Wetsuit_uniform", "U_Wetsuit_White", "U_Wetsuit_Blue", "U_Wetsuit_Purp", "U_Wetsuit_Camo", "U_CamoRed_uniform", "U_CamoBrn_uniform", "U_CamoBlue_uniform", "U_Camo_uniform", "U_ghillie1_uniform", "U_ghillie2_uniform", "U_ghillie3_uniform", "U_C_Driver_1", "U_C_Driver_2", "U_C_Driver_3", "U_C_Driver_4", "U_C_Driver_1_black", "U_C_Driver_1_blue", "U_C_Driver_1_green", "U_C_Driver_1_red", "U_C_Driver_1_white", "U_C_Driver_1_yellow", "U_C_Driver_1_orange", "U_C_Driver_1_red"];
A3EAI_uniformTypes2 = ["U_O_CombatUniform_ocamo", "U_O_GhillieSuit", "U_O_PilotCoveralls", "U_O_Wetsuit", "U_OG_Guerilla1_1", "U_OG_Guerilla2_1", "U_OG_Guerilla2_3", "U_OG_Guerilla3_1", "U_OG_Guerilla3_2", "U_OG_leader", "U_C_Poloshirt_stripped", "U_C_Poloshirt_blue", "U_C_Poloshirt_burgundy", "U_C_Poloshirt_tricolour", "U_C_Poloshirt_salmon", "U_C_Poloshirt_redwhite", "U_C_Poor_1", "U_C_WorkerCoveralls", "U_C_Journalist", "U_C_Scientist", "U_OrestesBody", "U_Wetsuit_uniform", "U_Wetsuit_White", "U_Wetsuit_Blue", "U_Wetsuit_Purp", "U_Wetsuit_Camo", "U_CamoRed_uniform", "U_CamoBrn_uniform", "U_CamoBlue_uniform", "U_Camo_uniform", "U_ghillie1_uniform", "U_ghillie2_uniform", "U_ghillie3_uniform", "U_C_Driver_1", "U_C_Driver_2", "U_C_Driver_3", "U_C_Driver_4", "U_C_Driver_1_black", "U_C_Driver_1_blue", "U_C_Driver_1_green", "U_C_Driver_1_red", "U_C_Driver_1_white", "U_C_Driver_1_yellow", "U_C_Driver_1_orange", "U_C_Driver_1_red"];
A3EAI_uniformTypes3 = ["U_O_CombatUniform_ocamo", "U_O_GhillieSuit", "U_O_PilotCoveralls", "U_O_Wetsuit", "U_OG_Guerilla1_1", "U_OG_Guerilla2_1", "U_OG_Guerilla2_3", "U_OG_Guerilla3_1", "U_OG_Guerilla3_2", "U_OG_leader", "U_C_Poloshirt_stripped", "U_C_Poloshirt_blue", "U_C_Poloshirt_burgundy", "U_C_Poloshirt_tricolour", "U_C_Poloshirt_salmon", "U_C_Poloshirt_redwhite", "U_C_Poor_1", "U_C_WorkerCoveralls", "U_C_Journalist", "U_C_Scientist", "U_OrestesBody", "U_Wetsuit_uniform", "U_Wetsuit_White", "U_Wetsuit_Blue", "U_Wetsuit_Purp", "U_Wetsuit_Camo", "U_CamoRed_uniform", "U_CamoBrn_uniform", "U_CamoBlue_uniform", "U_Camo_uniform", "U_ghillie1_uniform", "U_ghillie2_uniform", "U_ghillie3_uniform", "U_C_Driver_1", "U_C_Driver_2", "U_C_Driver_3", "U_C_Driver_4", "U_C_Driver_1_black", "U_C_Driver_1_blue", "U_C_Driver_1_green", "U_C_Driver_1_red", "U_C_Driver_1_white", "U_C_Driver_1_yellow", "U_C_Driver_1_orange", "U_C_Driver_1_red"];


//AI weapon classnames. Note: A3EAI_pistolList, A3EAI_rifleList, A3EAI_machinegunList, A3EAI_sniperList will not be read if A3EAI_dynamicWeaponList is enabled.
//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
A3EAI_pistolList = ["hgun_Pistol_heavy_01_F","hgun_P07_F","hgun_Rook40_F","hgun_Pistol_heavy_02_F","1911_pistol_epoch","hgun_ACPC2_F","ruger_pistol_epoch"];
A3EAI_rifleList = ["AKM_EPOCH","sr25_epoch","arifle_Katiba_GL_F","arifle_Katiba_C_F","arifle_Katiba_F","arifle_MX_GL_F","arifle_MX_GL_Black_F","arifle_MXM_Black_F","arifle_MXC_Black_F","arifle_MX_Black_F","arifle_MXM_F","arifle_MXC_F","arifle_MX_F","l85a2_epoch","l85a2_pink_epoch","l85a2_ugl_epoch","m4a3_EPOCH","m16_EPOCH","m16Red_EPOCH","arifle_Mk20_GL_F","arifle_Mk20_GL_plain_F","arifle_Mk20C_F","arifle_Mk20C_plain_F","arifle_Mk20_F","arifle_Mk20_plain_F","arifle_TRG21_GL_F","arifle_TRG21_F","arifle_TRG20_F","arifle_SDAR_F","Rollins_F","SMG_01_F","SMG_02_F","hgun_PDW2000_F"];
A3EAI_machinegunList = ["LMG_Zafir_F","arifle_MX_SW_F","arifle_MX_SW_Black_F","LMG_Mk200_F","m249_EPOCH","m249Tan_EPOCH","MMG_01_hex_F","MMG_01_tan_F","MMG_02_camo_F","MMG_02_black_F","MMG_02_sand_F"];
A3EAI_sniperList = ["m107_EPOCH","m107Tan_EPOCH","srifle_DMR_02_F","srifle_DMR_02_camo_F","srifle_DMR_02_sniper_F","srifle_DMR_03_F","srifle_DMR_03_khaki_F","srifle_DMR_03_tan_F","srifle_DMR_03_multicam_F","srifle_DMR_03_woodland_F","srifle_DMR_03_spotter_F","srifle_DMR_04_F","srifle_DMR_04_Tan_F","srifle_DMR_05_blk_F","srifle_DMR_05_hex_F","srifle_DMR_05_tan_f","srifle_DMR_06_camo_F","srifle_DMR_06_olive_F","srifle_LRR_F","srifle_GM6_F","srifle_DMR_01_F","M14_EPOCH","M14Grn_EPOCH","srifle_EBR_F"];


//AI weapon scope attachment settings. Note: A3EAI_weaponOpticsList will not be read if A3EAI_dynamicOpticsList is enabled.
A3EAI_weaponOpticsList = ["optic_NVS","optic_SOS","optic_LRPS","optic_AMS","optic_AMS_khk","optic_AMS_snd","optic_KHS_blk","optic_KHS_hex","optic_KHS_old","optic_KHS_tan","optic_DMS","optic_Arco","optic_Hamr","Elcan_epoch","Elcan_reflex_epoch","optic_MRCO","optic_Holosight","optic_Holosight_smg","optic_Aco","optic_ACO_grn","optic_Aco_smg","optic_ACO_grn_smg","optic_Yorris","optic_MRD"];


//AI backpack types (for AI levels 0-3). Note: A3EAI_backpackTypes0-3 will not be read if A3EAI_dynamicBackpackList is enabled.
//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
A3EAI_backpackTypes0 = ["B_AssaultPack_cbr", "B_AssaultPack_dgtl", "B_AssaultPack_khk", "B_AssaultPack_mcamo", "B_AssaultPack_ocamo", "B_AssaultPack_rgr", "B_AssaultPack_sgg", "B_Carryall_cbr", "B_Carryall_khk", "B_Carryall_mcamo", "B_Carryall_ocamo", "B_Carryall_oli", "B_Carryall_oucamo", "B_FieldPack_blk", "B_FieldPack_cbr", "B_FieldPack_khk", "B_FieldPack_ocamo", "B_FieldPack_oli", "B_FieldPack_oucamo", "B_Kitbag_cbr", "B_Kitbag_mcamo", "B_Kitbag_rgr", "B_Kitbag_sgg", "B_Parachute", "B_TacticalPack_blk", "B_TacticalPack_mcamo", "B_TacticalPack_ocamo", "B_TacticalPack_oli", "B_TacticalPack_rgr", "smallbackpack_red_epoch", "smallbackpack_green_epoch", "smallbackpack_teal_epoch", "smallbackpack_pink_epoch"];
A3EAI_backpackTypes1 = ["B_AssaultPack_cbr", "B_AssaultPack_dgtl", "B_AssaultPack_khk", "B_AssaultPack_mcamo", "B_AssaultPack_ocamo", "B_AssaultPack_rgr", "B_AssaultPack_sgg", "B_Carryall_cbr", "B_Carryall_khk", "B_Carryall_mcamo", "B_Carryall_ocamo", "B_Carryall_oli", "B_Carryall_oucamo", "B_FieldPack_blk", "B_FieldPack_cbr", "B_FieldPack_khk", "B_FieldPack_ocamo", "B_FieldPack_oli", "B_FieldPack_oucamo", "B_Kitbag_cbr", "B_Kitbag_mcamo", "B_Kitbag_rgr", "B_Kitbag_sgg", "B_Parachute", "B_TacticalPack_blk", "B_TacticalPack_mcamo", "B_TacticalPack_ocamo", "B_TacticalPack_oli", "B_TacticalPack_rgr", "smallbackpack_red_epoch", "smallbackpack_green_epoch", "smallbackpack_teal_epoch", "smallbackpack_pink_epoch"];
A3EAI_backpackTypes2 = ["B_AssaultPack_cbr", "B_AssaultPack_dgtl", "B_AssaultPack_khk", "B_AssaultPack_mcamo", "B_AssaultPack_ocamo", "B_AssaultPack_rgr", "B_AssaultPack_sgg", "B_Carryall_cbr", "B_Carryall_khk", "B_Carryall_mcamo", "B_Carryall_ocamo", "B_Carryall_oli", "B_Carryall_oucamo", "B_FieldPack_blk", "B_FieldPack_cbr", "B_FieldPack_khk", "B_FieldPack_ocamo", "B_FieldPack_oli", "B_FieldPack_oucamo", "B_Kitbag_cbr", "B_Kitbag_mcamo", "B_Kitbag_rgr", "B_Kitbag_sgg", "B_Parachute", "B_TacticalPack_blk", "B_TacticalPack_mcamo", "B_TacticalPack_ocamo", "B_TacticalPack_oli", "B_TacticalPack_rgr", "smallbackpack_red_epoch", "smallbackpack_green_epoch", "smallbackpack_teal_epoch", "smallbackpack_pink_epoch"];
A3EAI_backpackTypes3 = ["B_AssaultPack_cbr", "B_AssaultPack_dgtl", "B_AssaultPack_khk", "B_AssaultPack_mcamo", "B_AssaultPack_ocamo", "B_AssaultPack_rgr", "B_AssaultPack_sgg", "B_Carryall_cbr", "B_Carryall_khk", "B_Carryall_mcamo", "B_Carryall_ocamo", "B_Carryall_oli", "B_Carryall_oucamo", "B_FieldPack_blk", "B_FieldPack_cbr", "B_FieldPack_khk", "B_FieldPack_ocamo", "B_FieldPack_oli", "B_FieldPack_oucamo", "B_Kitbag_cbr", "B_Kitbag_mcamo", "B_Kitbag_rgr", "B_Kitbag_sgg", "B_Parachute", "B_TacticalPack_blk", "B_TacticalPack_mcamo", "B_TacticalPack_ocamo", "B_TacticalPack_oli", "B_TacticalPack_rgr", "smallbackpack_red_epoch", "smallbackpack_green_epoch", "smallbackpack_teal_epoch", "smallbackpack_pink_epoch"];


//AI vest types (for AI levels 0-3). Note: A3EAI_vestTypes0-3 will not be read if A3EAI_dynamicVestList is enabled.
//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
A3EAI_vestTypes0 = ["V_1_EPOCH", "V_2_EPOCH", "V_3_EPOCH", "V_4_EPOCH", "V_5_EPOCH", "V_6_EPOCH", "V_7_EPOCH", "V_8_EPOCH", "V_9_EPOCH", "V_10_EPOCH", "V_11_EPOCH", "V_12_EPOCH", "V_13_EPOCH", "V_14_EPOCH", "V_15_EPOCH", "V_16_EPOCH", "V_17_EPOCH", "V_18_EPOCH", "V_19_EPOCH", "V_20_EPOCH", "V_21_EPOCH", "V_22_EPOCH", "V_23_EPOCH", "V_24_EPOCH", "V_25_EPOCH", "V_26_EPOCH", "V_27_EPOCH", "V_28_EPOCH", "V_29_EPOCH", "V_30_EPOCH", "V_31_EPOCH", "V_32_EPOCH", "V_33_EPOCH", "V_34_EPOCH", "V_35_EPOCH", "V_36_EPOCH", "V_37_EPOCH", "V_38_EPOCH", "V_39_EPOCH", "V_40_EPOCH"];
A3EAI_vestTypes1 = ["V_1_EPOCH", "V_2_EPOCH", "V_3_EPOCH", "V_4_EPOCH", "V_5_EPOCH", "V_6_EPOCH", "V_7_EPOCH", "V_8_EPOCH", "V_9_EPOCH", "V_10_EPOCH", "V_11_EPOCH", "V_12_EPOCH", "V_13_EPOCH", "V_14_EPOCH", "V_15_EPOCH", "V_16_EPOCH", "V_17_EPOCH", "V_18_EPOCH", "V_19_EPOCH", "V_20_EPOCH", "V_21_EPOCH", "V_22_EPOCH", "V_23_EPOCH", "V_24_EPOCH", "V_25_EPOCH", "V_26_EPOCH", "V_27_EPOCH", "V_28_EPOCH", "V_29_EPOCH", "V_30_EPOCH", "V_31_EPOCH", "V_32_EPOCH", "V_33_EPOCH", "V_34_EPOCH", "V_35_EPOCH", "V_36_EPOCH", "V_37_EPOCH", "V_38_EPOCH", "V_39_EPOCH", "V_40_EPOCH"];
A3EAI_vestTypes2 = ["V_1_EPOCH", "V_2_EPOCH", "V_3_EPOCH", "V_4_EPOCH", "V_5_EPOCH", "V_6_EPOCH", "V_7_EPOCH", "V_8_EPOCH", "V_9_EPOCH", "V_10_EPOCH", "V_11_EPOCH", "V_12_EPOCH", "V_13_EPOCH", "V_14_EPOCH", "V_15_EPOCH", "V_16_EPOCH", "V_17_EPOCH", "V_18_EPOCH", "V_19_EPOCH", "V_20_EPOCH", "V_21_EPOCH", "V_22_EPOCH", "V_23_EPOCH", "V_24_EPOCH", "V_25_EPOCH", "V_26_EPOCH", "V_27_EPOCH", "V_28_EPOCH", "V_29_EPOCH", "V_30_EPOCH", "V_31_EPOCH", "V_32_EPOCH", "V_33_EPOCH", "V_34_EPOCH", "V_35_EPOCH", "V_36_EPOCH", "V_37_EPOCH", "V_38_EPOCH", "V_39_EPOCH", "V_40_EPOCH"];
A3EAI_vestTypes3 = ["V_1_EPOCH", "V_2_EPOCH", "V_3_EPOCH", "V_4_EPOCH", "V_5_EPOCH", "V_6_EPOCH", "V_7_EPOCH", "V_8_EPOCH", "V_9_EPOCH", "V_10_EPOCH", "V_11_EPOCH", "V_12_EPOCH", "V_13_EPOCH", "V_14_EPOCH", "V_15_EPOCH", "V_16_EPOCH", "V_17_EPOCH", "V_18_EPOCH", "V_19_EPOCH", "V_20_EPOCH", "V_21_EPOCH", "V_22_EPOCH", "V_23_EPOCH", "V_24_EPOCH", "V_25_EPOCH", "V_26_EPOCH", "V_27_EPOCH", "V_28_EPOCH", "V_29_EPOCH", "V_30_EPOCH", "V_31_EPOCH", "V_32_EPOCH", "V_33_EPOCH", "V_34_EPOCH", "V_35_EPOCH", "V_36_EPOCH", "V_37_EPOCH", "V_38_EPOCH", "V_39_EPOCH", "V_40_EPOCH"];


//AI head gear types. Note: A3EAI_headgearTypes0-3 will not be read if A3EAI_dynamicHeadgearList is enabled.
A3EAI_headgearTypes0 = ["H_1_EPOCH","H_2_EPOCH","H_3_EPOCH","H_4_EPOCH","H_5_EPOCH","H_6_EPOCH","H_7_EPOCH","H_8_EPOCH","H_9_EPOCH","H_10_EPOCH","H_11_EPOCH","H_12_EPOCH","H_13_EPOCH","H_14_EPOCH","H_15_EPOCH","H_16_EPOCH","H_17_EPOCH","H_18_EPOCH","H_19_EPOCH","H_20_EPOCH","H_21_EPOCH","H_22_EPOCH","H_23_EPOCH","H_24_EPOCH","H_25_EPOCH","H_26_EPOCH","H_27_EPOCH","H_28_EPOCH","H_29_EPOCH","H_30_EPOCH","H_31_EPOCH","H_32_EPOCH","H_33_EPOCH","H_34_EPOCH","H_35_EPOCH","H_36_EPOCH","H_37_EPOCH","H_38_EPOCH","H_39_EPOCH","H_40_EPOCH","H_41_EPOCH","H_42_EPOCH","H_43_EPOCH","H_44_EPOCH","H_45_EPOCH","H_46_EPOCH","H_47_EPOCH","H_48_EPOCH","H_49_EPOCH","H_50_EPOCH","H_51_EPOCH","H_52_EPOCH","H_53_EPOCH","H_54_EPOCH","H_55_EPOCH","H_56_EPOCH","H_57_EPOCH","H_58_EPOCH","H_59_EPOCH","H_60_EPOCH","H_61_EPOCH","H_62_EPOCH","H_63_EPOCH","H_64_EPOCH","H_65_EPOCH","H_66_EPOCH","H_67_EPOCH","H_68_EPOCH","H_69_EPOCH","H_70_EPOCH","H_71_EPOCH","H_72_EPOCH","H_73_EPOCH","H_74_EPOCH","H_75_EPOCH","H_76_EPOCH","H_77_EPOCH","H_78_EPOCH","H_79_EPOCH","H_80_EPOCH","H_81_EPOCH","H_82_EPOCH","H_83_EPOCH","H_84_EPOCH","H_85_EPOCH","H_86_EPOCH","H_87_EPOCH","H_88_EPOCH","H_89_EPOCH","H_90_EPOCH","H_91_EPOCH","H_92_EPOCH","H_93_EPOCH","H_94_EPOCH","H_95_EPOCH","H_96_EPOCH","H_97_EPOCH","H_98_EPOCH","H_99_EPOCH","H_100_EPOCH","H_101_EPOCH","H_102_EPOCH","H_103_EPOCH","H_104_EPOCH"];
A3EAI_headgearTypes1 = ["H_1_EPOCH","H_2_EPOCH","H_3_EPOCH","H_4_EPOCH","H_5_EPOCH","H_6_EPOCH","H_7_EPOCH","H_8_EPOCH","H_9_EPOCH","H_10_EPOCH","H_11_EPOCH","H_12_EPOCH","H_13_EPOCH","H_14_EPOCH","H_15_EPOCH","H_16_EPOCH","H_17_EPOCH","H_18_EPOCH","H_19_EPOCH","H_20_EPOCH","H_21_EPOCH","H_22_EPOCH","H_23_EPOCH","H_24_EPOCH","H_25_EPOCH","H_26_EPOCH","H_27_EPOCH","H_28_EPOCH","H_29_EPOCH","H_30_EPOCH","H_31_EPOCH","H_32_EPOCH","H_33_EPOCH","H_34_EPOCH","H_35_EPOCH","H_36_EPOCH","H_37_EPOCH","H_38_EPOCH","H_39_EPOCH","H_40_EPOCH","H_41_EPOCH","H_42_EPOCH","H_43_EPOCH","H_44_EPOCH","H_45_EPOCH","H_46_EPOCH","H_47_EPOCH","H_48_EPOCH","H_49_EPOCH","H_50_EPOCH","H_51_EPOCH","H_52_EPOCH","H_53_EPOCH","H_54_EPOCH","H_55_EPOCH","H_56_EPOCH","H_57_EPOCH","H_58_EPOCH","H_59_EPOCH","H_60_EPOCH","H_61_EPOCH","H_62_EPOCH","H_63_EPOCH","H_64_EPOCH","H_65_EPOCH","H_66_EPOCH","H_67_EPOCH","H_68_EPOCH","H_69_EPOCH","H_70_EPOCH","H_71_EPOCH","H_72_EPOCH","H_73_EPOCH","H_74_EPOCH","H_75_EPOCH","H_76_EPOCH","H_77_EPOCH","H_78_EPOCH","H_79_EPOCH","H_80_EPOCH","H_81_EPOCH","H_82_EPOCH","H_83_EPOCH","H_84_EPOCH","H_85_EPOCH","H_86_EPOCH","H_87_EPOCH","H_88_EPOCH","H_89_EPOCH","H_90_EPOCH","H_91_EPOCH","H_92_EPOCH","H_93_EPOCH","H_94_EPOCH","H_95_EPOCH","H_96_EPOCH","H_97_EPOCH","H_98_EPOCH","H_99_EPOCH","H_100_EPOCH","H_101_EPOCH","H_102_EPOCH","H_103_EPOCH","H_104_EPOCH"];
A3EAI_headgearTypes2 = ["H_1_EPOCH","H_2_EPOCH","H_3_EPOCH","H_4_EPOCH","H_5_EPOCH","H_6_EPOCH","H_7_EPOCH","H_8_EPOCH","H_9_EPOCH","H_10_EPOCH","H_11_EPOCH","H_12_EPOCH","H_13_EPOCH","H_14_EPOCH","H_15_EPOCH","H_16_EPOCH","H_17_EPOCH","H_18_EPOCH","H_19_EPOCH","H_20_EPOCH","H_21_EPOCH","H_22_EPOCH","H_23_EPOCH","H_24_EPOCH","H_25_EPOCH","H_26_EPOCH","H_27_EPOCH","H_28_EPOCH","H_29_EPOCH","H_30_EPOCH","H_31_EPOCH","H_32_EPOCH","H_33_EPOCH","H_34_EPOCH","H_35_EPOCH","H_36_EPOCH","H_37_EPOCH","H_38_EPOCH","H_39_EPOCH","H_40_EPOCH","H_41_EPOCH","H_42_EPOCH","H_43_EPOCH","H_44_EPOCH","H_45_EPOCH","H_46_EPOCH","H_47_EPOCH","H_48_EPOCH","H_49_EPOCH","H_50_EPOCH","H_51_EPOCH","H_52_EPOCH","H_53_EPOCH","H_54_EPOCH","H_55_EPOCH","H_56_EPOCH","H_57_EPOCH","H_58_EPOCH","H_59_EPOCH","H_60_EPOCH","H_61_EPOCH","H_62_EPOCH","H_63_EPOCH","H_64_EPOCH","H_65_EPOCH","H_66_EPOCH","H_67_EPOCH","H_68_EPOCH","H_69_EPOCH","H_70_EPOCH","H_71_EPOCH","H_72_EPOCH","H_73_EPOCH","H_74_EPOCH","H_75_EPOCH","H_76_EPOCH","H_77_EPOCH","H_78_EPOCH","H_79_EPOCH","H_80_EPOCH","H_81_EPOCH","H_82_EPOCH","H_83_EPOCH","H_84_EPOCH","H_85_EPOCH","H_86_EPOCH","H_87_EPOCH","H_88_EPOCH","H_89_EPOCH","H_90_EPOCH","H_91_EPOCH","H_92_EPOCH","H_93_EPOCH","H_94_EPOCH","H_95_EPOCH","H_96_EPOCH","H_97_EPOCH","H_98_EPOCH","H_99_EPOCH","H_100_EPOCH","H_101_EPOCH","H_102_EPOCH","H_103_EPOCH","H_104_EPOCH"];
A3EAI_headgearTypes3 = ["H_1_EPOCH","H_2_EPOCH","H_3_EPOCH","H_4_EPOCH","H_5_EPOCH","H_6_EPOCH","H_7_EPOCH","H_8_EPOCH","H_9_EPOCH","H_10_EPOCH","H_11_EPOCH","H_12_EPOCH","H_13_EPOCH","H_14_EPOCH","H_15_EPOCH","H_16_EPOCH","H_17_EPOCH","H_18_EPOCH","H_19_EPOCH","H_20_EPOCH","H_21_EPOCH","H_22_EPOCH","H_23_EPOCH","H_24_EPOCH","H_25_EPOCH","H_26_EPOCH","H_27_EPOCH","H_28_EPOCH","H_29_EPOCH","H_30_EPOCH","H_31_EPOCH","H_32_EPOCH","H_33_EPOCH","H_34_EPOCH","H_35_EPOCH","H_36_EPOCH","H_37_EPOCH","H_38_EPOCH","H_39_EPOCH","H_40_EPOCH","H_41_EPOCH","H_42_EPOCH","H_43_EPOCH","H_44_EPOCH","H_45_EPOCH","H_46_EPOCH","H_47_EPOCH","H_48_EPOCH","H_49_EPOCH","H_50_EPOCH","H_51_EPOCH","H_52_EPOCH","H_53_EPOCH","H_54_EPOCH","H_55_EPOCH","H_56_EPOCH","H_57_EPOCH","H_58_EPOCH","H_59_EPOCH","H_60_EPOCH","H_61_EPOCH","H_62_EPOCH","H_63_EPOCH","H_64_EPOCH","H_65_EPOCH","H_66_EPOCH","H_67_EPOCH","H_68_EPOCH","H_69_EPOCH","H_70_EPOCH","H_71_EPOCH","H_72_EPOCH","H_73_EPOCH","H_74_EPOCH","H_75_EPOCH","H_76_EPOCH","H_77_EPOCH","H_78_EPOCH","H_79_EPOCH","H_80_EPOCH","H_81_EPOCH","H_82_EPOCH","H_83_EPOCH","H_84_EPOCH","H_85_EPOCH","H_86_EPOCH","H_87_EPOCH","H_88_EPOCH","H_89_EPOCH","H_90_EPOCH","H_91_EPOCH","H_92_EPOCH","H_93_EPOCH","H_94_EPOCH","H_95_EPOCH","H_96_EPOCH","H_97_EPOCH","H_98_EPOCH","H_99_EPOCH","H_100_EPOCH","H_101_EPOCH","H_102_EPOCH","H_103_EPOCH","H_104_EPOCH"];


//AI Food/Loot item types.
// Note: A3EAI_foodLoot will not be read if A3EAI_dynamicFoodList is enabled.
// Note: A3EAI_MiscLoot1 will not be read if A3EAI_dynamicLootList is enabled.
// Note: A3EAI_MiscLoot2 will not be read if A3EAI_dynamicLootLargeList is enabled.
//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
A3EAI_foodLoot = ["FoodSnooter","FoodWalkNSons","FoodBioMeat","ItemSodaOrangeSherbet","ItemSodaPurple","ItemSodaMocha","ItemSodaBurst","ItemSodaRbull","honey_epoch","emptyjar_epoch","sardines_epoch","meatballs_epoch","scam_epoch","sweetcorn_epoch","WhiskeyNoodle","ItemCoolerE"];
A3EAI_MiscLoot1 = ["PaintCanClear","PaintCanBlk","PaintCanBlu","PaintCanBrn","PaintCanGrn","PaintCanOra","PaintCanPur","PaintCanRed","PaintCanTeal","PaintCanYel","ItemDocument","ItemMixOil","emptyjar_epoch","emptyjar_epoch","FoodBioMeat","ItemSodaOrangeSherbet","ItemSodaPurple","ItemSodaMocha","ItemSodaBurst","ItemSodaRbull","sardines_epoch","meatballs_epoch","scam_epoch","sweetcorn_epoch","Towelette","Towelette","Towelette","Towelette","Towelette","HeatPack","HeatPack","HeatPack","ColdPack","ColdPack","VehicleRepair","CircuitParts","ItemCoolerE","ItemScraps","ItemScraps"];
A3EAI_MiscLoot2 = ["MortarBucket","MortarBucket","ItemCorrugated","CinderBlocks","jerrycan_epoch","jerrycan_epoch","VehicleRepair","VehicleRepair","CircuitParts"];


//AI toolbelt item types. Toolbelt items are added to AI inventory upon death. Format: [item classname, item probability]
//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

A3EAI_tools0 = [
["ItemWatch",0.70],["ItemCompass",0.50],["ItemMap",0.50],["ItemGPS",0.05],["EpochRadio0",0.05]
];
A3EAI_tools1 = [
["ItemWatch",0.80],["ItemCompass",0.60],["ItemMap",0.60],["ItemGPS",0.10],["EpochRadio0",0.10]
];
A3EAI_tools2 = [
["ItemWatch",0.80],["ItemCompass",0.70],["ItemMap",0.70],["ItemGPS",0.15],["EpochRadio0",0.15]
];
A3EAI_tools3 = [
["ItemWatch",0.80],["ItemCompass",0.80],["ItemMap",0.80],["ItemGPS",0.20],["EpochRadio0",0.20]
];


//AI-useable toolbelt item types. These items are added to AI inventory at unit creation and may be used by AI. Format: [item classname, item probability]
//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

A3EAI_gadgets0 = [
["binocular",0.40],["NVG_EPOCH",0.05]
];
A3EAI_gadgets1 = [
["binocular",0.50],["NVG_EPOCH",0.10]
];
A3EAI_gadgets2 = [
["binocular",0.60],["NVG_EPOCH",0.15]
];
A3EAI_gadgets3 = [
["binocular",0.70],["NVG_EPOCH",0.20]
];

//NOTHING TO EDIT BEYOND THIS POINT
diag_log "[A3EAI] A3EAI configuration file loaded.";



Ничего никуда закидывать не нужно. Сервер не считывает файлы настроек миссий из папки @epochhive, а загружает дефолтные настройки из \@epochhive\addons\A3EAI\scripts\verifySettings.sqf (если речь идет о версии A3EAI представленной здесь). Вот в этом файле и настраивайте миссию. Для проверки работы миссии измените минимум количества игроков на сервере, чтобы миссия запустилась с 20 на 1 (["A3EAI_playerCountThreshold",20]).

Затем уже настраивайте количество патрулей на карте.

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

спс!

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Похожие публикации

    • Автор: ZigoFrend
      Что делать если машины с миссий не хотят продаваться ??


    • Автор: Тоха
      Заинтересовал меня этот мод, вторую ночь из-за него не сплю). Суть вопроса в заголовке. Возможно ли прикрутить ботов, желательно патрули да и мисси тоже. Чтоб с минимальной болью. Хотел взять перебрать ботов от Exile, но понял, что переоценил себя. Кто может подсказать как лучше сделать? Рассматриваю еще как вариант создание миссий через редактор армы, но как патрулей запихнуть, примерно понимаю как рандомизировать и прописать вейпоинты, но что то подсказывает опять переоцениваю себя. 
      p/s пока рылся в серверной части натыкался на файлы отвечающие за спавн юнитов и отрядов
      @BreakingPointServer\Addons\breakingpoint_server\functions\AI\fn_spawnAI.sqf
      @BreakingPointServer\Addons\breakingpoint_server\functions\AI\fn_spawnAISquad.sqf
    • Автор: Alex39
      [EXO] Mod

       
      Этот [EXO] Mod Pack позволяет нам предоставлять игрокам на  серверах возможность загружать только меньший файл миссии и при этом иметь много дополнительных на наших серверах, таких как: высококачественные текстуры для нашего сценария Base Painting, Awesome скины транспортных средств, Custom Audio файлы и так далее ... В будущем мы будем добавлять все больше и больше в этот пакет дополнений! 
       
      Всего 412 текстур в 2048x2048 для BasePainting, множество высококачественных скинов для Strider (HMG), Ifrit (HMG), Hunter (HMG), SUV, Offroad (Armed), 4WD (Open & Closed)
       
      https://steamcommunity.com/sharedfiles/filedetails/?id=778466491&searchtext=
       

    • Автор: Jdinovich
      Добрый день,захотел поставить станок стингера на миссии,ввел в каждую миссию в Static guns,но почему-то они не появились вот как я писал
       
      //Static Guns [[ [(_position select 0) + 10, (_position select 1) + 10, 0], [(_position select 0) + 10, (_position select 1) - 10, 0] ],"M2StaticMG","Hard","Bandit","Bandit",0,2,"Random","Random",_mission] call spawn_static; [[[(_position select 0) - 10, (_position select 1) - 10, 0]],"Stinger_Pod","hard","Bandit","Bandit",0,2,"Random","Random",_mission] call spawn_static; //Static Guns [[[(_position select 0) - 10, (_position select 1) + 10, 0]],"M2StaticMG","hard","Bandit","Bandit",0,2,"Random","Random",_mission] call spawn_static; [[[(_position select 0) + 10, (_position select 1) - 10, 0]],"M2StaticMG","hard","Bandit","Bandit",0,2,"Random","Random",_mission] call spawn_static; [[[(_position select 0) + 10, (_position select 1) + 10, 0]],"M2StaticMG","hard","Bandit","Bandit",0,2,"Random","Random",_mission] call spawn_static; [[[(_position select 0) - 10, (_position select 1) - 10, 0]],"M2StaticMG","hard","Bandit","Bandit",0,2,"Random","Random",_mission] call spawn_static; [[[(_position select 0) - 10, (_position select 1) - 10, 0]],"Stinger_Pod","hard","Bandit","Bandit",0,2,"Random","Random",_mission] call spawn_static; это две разные коды разных миссиий
  • Наш выбор

×
×
  • Создать...

Важная информация

Используя этот сайт, вы автоматически обязуетесь соблюдать наши Правила и Политика конфиденциальности.
Чтобы сделать этот веб-сайт лучше, мы разместили cookies на вашем устройстве. Вы можете изменить свои настройки cookies, в противном случае мы будем считать, что вы согласны с этим.