From b06990293397d4b6d0374097f09d1cc5679216e3 Mon Sep 17 00:00:00 2001 From: hybrid Date: Thu, 11 Jun 2026 19:55:04 +0300 Subject: init --- Common/Config/Core_Squads/Arrowhead/Squad_TK.sqf | 285 +++++++++++++++++++++ Common/Config/Core_Squads/Arrowhead/Squad_TKA.sqf | 45 ++++ Common/Config/Core_Squads/Arrowhead/Squad_US.sqf | 45 ++++ .../Core_Squads/CombinedOps/Squad_US_Camo.sqf | 51 ++++ .../Config/Core_Squads/Squads_GetFactionGroups.sqf | 78 ++++++ Common/Config/Core_Squads/Vanilla/Squad_CDF.sqf | 45 ++++ Common/Config/Core_Squads/Vanilla/Squad_INS.sqf | 45 ++++ Common/Config/Core_Squads/Vanilla/Squad_RU.sqf | 70 +++++ Common/Config/Core_Squads/Vanilla/Squad_USMC.sqf | 51 ++++ 9 files changed, 715 insertions(+) create mode 100644 Common/Config/Core_Squads/Arrowhead/Squad_TK.sqf create mode 100644 Common/Config/Core_Squads/Arrowhead/Squad_TKA.sqf create mode 100644 Common/Config/Core_Squads/Arrowhead/Squad_US.sqf create mode 100644 Common/Config/Core_Squads/CombinedOps/Squad_US_Camo.sqf create mode 100644 Common/Config/Core_Squads/Squads_GetFactionGroups.sqf create mode 100644 Common/Config/Core_Squads/Vanilla/Squad_CDF.sqf create mode 100644 Common/Config/Core_Squads/Vanilla/Squad_INS.sqf create mode 100644 Common/Config/Core_Squads/Vanilla/Squad_RU.sqf create mode 100644 Common/Config/Core_Squads/Vanilla/Squad_USMC.sqf (limited to 'Common/Config/Core_Squads') diff --git a/Common/Config/Core_Squads/Arrowhead/Squad_TK.sqf b/Common/Config/Core_Squads/Arrowhead/Squad_TK.sqf new file mode 100644 index 0000000..7ba782e --- /dev/null +++ b/Common/Config/Core_Squads/Arrowhead/Squad_TK.sqf @@ -0,0 +1,285 @@ +Private ['_aiTeamTemplateRequires','_aiTeamTemplates','_aiTeamTypes','_aiTeamUpgrades','_d','_f','_l','_u']; + +_aiTeamTemplates = []; +_aiTeamTemplateRequires = []; +_aiTeamTypes = []; +_aiTeamUpgrades = []; + +_d = ["Infantry - Infantry Squad"]; +_u = ["TK_Soldier_SL_EP1"]; +_u = _u + ["TK_Soldier_MG_EP1"]; +_u = _u + ["TK_Soldier_AT_EP1"]; +_u = _u + ["TK_Soldier_LAT_EP1"]; +_u = _u + ["TK_Soldier_Spotter_EP1"]; +_u = _u + ["TK_Soldier_AR_EP1"]; +_u = _u + ["TK_Soldier_GL_EP1"]; +_u = _u + ["TK_Soldier_EP1"]; +_f = [true,false,false,false]; +_l = [0,0,0,0]; + +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [_f]; +_aiTeamTypes = _aiTeamTypes + [0]; +_aiTeamUpgrades = _aiTeamUpgrades + [_l]; + +_d = _d + ["Infantry - Infantry Section"]; +_u = ["TK_Soldier_SL_EP1"]; +_u = _u + ["TK_Soldier_AR_EP1"]; +_u = _u + ["TK_Soldier_AT_EP1"]; +_u = _u + ["TK_Soldier_GL_EP1"]; +_u = _u + ["TK_Soldier_EP1"]; +_f = [true,false,false,false]; +_l = [1,0,0,0]; + +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [_f]; +_aiTeamTypes = _aiTeamTypes + [0]; +_aiTeamUpgrades = _aiTeamUpgrades + [_l]; + +_d = _d + ["Infantry - Infantry Section (AT)"]; +_u = ["TK_Soldier_AT_EP1"]; +_u = _u + ["TK_Soldier_AT_EP1"]; +_u = _u + ["TK_Soldier_LAT_EP1"]; +_u = _u + ["TK_Soldier_EP1"]; +_f = [true,false,false,false]; +_l = [1,0,0,0]; + +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [_f]; +_aiTeamTypes = _aiTeamTypes + [0]; +_aiTeamUpgrades = _aiTeamUpgrades + [_l]; + +_d = _d + ["Infantry - Infantry Section (HAT)"]; +_u = ["TK_Soldier_HAT_EP1"]; +_u = _u + ["TK_Soldier_HAT_EP1"]; +_u = _u + ["TK_Soldier_AT_EP1"]; +_u = _u + ["TK_Soldier_EP1"]; +_f = [true,false,false,false]; +_l = [3,0,0,0]; + +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [_f]; +_aiTeamTypes = _aiTeamTypes + [0]; +_aiTeamUpgrades = _aiTeamUpgrades + [_l]; + +_d = _d + ["Infantry - Infantry Section (AA)"]; +_u = ["TK_Soldier_AA_EP1"]; +_u = _u + ["TK_Soldier_AA_EP1"]; +_u = _u + ["TK_Soldier_AA_EP1"]; +_u = _u + ["TK_Soldier_EP1"]; +_f = [true,false,false,false]; +_l = [2,0,0,0]; + +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [_f]; +_aiTeamTypes = _aiTeamTypes + [0]; +_aiTeamUpgrades = _aiTeamUpgrades + [_l]; + +_d = _d + ["Infantry - Infantry Section (AA/AT)"]; +_u = ["TK_Soldier_SL_EP1"]; +_u = _u + ["TK_Soldier_AA_EP1"]; +_u = _u + ["TK_Soldier_AA_EP1"]; +_u = _u + ["TK_Soldier_LAT_EP1"]; +_u = _u + ["TK_Soldier_AT_EP1"]; +_u = _u + ["TK_Soldier_EP1"]; +_f = [true,false,false,false]; +_l = [2,0,0,0]; + +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [_f]; +_aiTeamTypes = _aiTeamTypes + [0]; +_aiTeamUpgrades = _aiTeamUpgrades + [_l]; + +_d = _d + ["Infantry - Infantry Section (MG)"]; +_u = ["TK_Soldier_SL_EP1"]; +_u = _u + ["TK_Soldier_MG_EP1"]; +_u = _u + ["TK_Soldier_MG_EP1"]; +_u = _u + ["TK_Soldier_GL_EP1"]; +_u = _u + ["TK_Soldier_AT_EP1"]; +_f = [true,false,false,false]; +_l = [1,0,0,0]; + +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [_f]; +_aiTeamTypes = _aiTeamTypes + [0]; +_aiTeamUpgrades = _aiTeamUpgrades + [_l]; + +_d = _d + ["Infantry - Snipers Team"]; +_u = ["TK_Soldier_Spotter_EP1"]; +_u = _u + ["TK_Soldier_Sniper_EP1"]; +_f = [true,false,false,false]; +_l = [2,0,0,0]; + +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [_f]; +_aiTeamTypes = _aiTeamTypes + [0]; +_aiTeamUpgrades = _aiTeamUpgrades + [_l]; + +_d = _d + ["Infantry - Special Ops Team"]; +_u = ["TK_Special_Forces_EP1"]; +_u = _u + ["TK_Special_Forces_TL_EP1"]; +_u = _u + ["TK_Special_Forces_MG_EP1"]; +_f = [true,false,false,false]; +_l = [3,0,0,0]; + +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [_f]; +_aiTeamTypes = _aiTeamTypes + [0]; +_aiTeamUpgrades = _aiTeamUpgrades + [_l]; + +_d = _d + ["Motorized Infantry - Motorized Infantry Squad"]; +_u = ["TK_Soldier_SL_EP1"]; +_u = _u + ["V3S_TK_EP1"]; +_u = _u + ["TK_Soldier_MG_EP1"]; +_u = _u + ["TK_Soldier_AT_EP1"]; +_u = _u + ["TK_Soldier_LAT_EP1"]; +_u = _u + ["TK_Soldier_Spotter_EP1"]; +_u = _u + ["TK_Soldier_MG_EP1"]; +_u = _u + ["TK_Soldier_AR_EP1"]; +_u = _u + ["TK_Soldier_GL_EP1"]; +_u = _u + ["TK_Soldier_EP1"]; +_f = [true,true,false,false]; +_l = [1,0,0,0]; + +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [_f]; +_aiTeamTypes = _aiTeamTypes + [1]; +_aiTeamUpgrades = _aiTeamUpgrades + [_l]; + +_d = _d + ["Motorized Infantry - Motorized Patrol Section"]; +_u = ["TK_Soldier_SL_EP1"]; +_u = _u + ["BRDM2_TK_EP1"]; +_f = [true,true,false,false]; +_l = [0,1,0,0]; + +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [_f]; +_aiTeamTypes = _aiTeamTypes + [1]; +_aiTeamUpgrades = _aiTeamUpgrades + [_l]; + +_d = _d + ["Mechanized Infantry - Motor Rifles (BMP)"]; +_u = ["TK_Soldier_SL_EP1"]; +_u = _u + ["BMP2_TK_EP1"]; +_u = _u + ["TK_Soldier_MG_EP1"]; +_u = _u + ["TK_Soldier_AT_EP1"]; +_u = _u + ["TK_Soldier_LAT_EP1"]; +_u = _u + ["TK_Soldier_GL_EP1"]; +_f = [true,false,true,false]; +_l = [1,0,0,0]; + +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [_f]; +_aiTeamTypes = _aiTeamTypes + [2]; +_aiTeamUpgrades = _aiTeamUpgrades + [_l]; + +_d = _d + ["Mechanized Infantry - Motor Rifles (BTR)"]; +_u = ["TK_Soldier_SL_EP1"]; +_u = _u + ["BTR60_TK_EP1"]; +_u = _u + ["TK_Soldier_MG_EP1"]; +_u = _u + ["TK_Soldier_MG_EP1"]; +_u = _u + ["TK_Soldier_AT_EP1"]; +_u = _u + ["TK_Soldier_LAT_EP1"]; +_u = _u + ["TK_Soldier_GL_EP1"]; +_f = [true,true,false,false]; +_l = [1,2,0,0]; + +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [_f]; +_aiTeamTypes = _aiTeamTypes + [1]; +_aiTeamUpgrades = _aiTeamUpgrades + [_l]; + +_d = _d + ["Armor - IFV Platoon (Light)"]; +_u = ["BMP2_TK_EP1"]; +_u = _u + ["BMP2_TK_EP1"]; +_f = [false,false,true,false]; +_l = [0,0,0,0]; + +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [_f]; +_aiTeamTypes = _aiTeamTypes + [2]; +_aiTeamUpgrades = _aiTeamUpgrades + [_l]; + +_d = _d + ["Armor - Anti Air Platoon"]; +_u = ["ZSU_TK_EP1"]; +_u = _u + ["ZSU_TK_EP1"]; +_f = [false,false,true,false]; +_l = [0,0,1,0]; + +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [_f]; +_aiTeamTypes = _aiTeamTypes + [2]; +_aiTeamUpgrades = _aiTeamUpgrades + [_l]; + +_d = _d + ["Armor - Tank Platoon (Light)"]; +_u = ["T55_TK_EP1"]; +_u = _u + ["T55_TK_EP1"]; +_f = [false,false,true,false]; +_l = [0,0,1,0]; + +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [_f]; +_aiTeamTypes = _aiTeamTypes + [2]; +_aiTeamUpgrades = _aiTeamUpgrades + [_l]; + +_d = _d + ["Armor - Tank Platoon (Heavy)"]; +_u = ["T72_TK_EP1"]; +_u = _u + ["T72_TK_EP1"]; +_f = [false,false,true,false]; +_l = [0,0,2,0]; + +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [_f]; +_aiTeamTypes = _aiTeamTypes + [2]; +_aiTeamUpgrades = _aiTeamUpgrades + [_l]; + +_d = _d + ["Air - Mi-17 Squadron"]; +_u = ["Mi17_TK_EP1"]; +_u = _u + ["TK_Soldier_SL_EP1"]; +_u = _u + ["TK_Soldier_AA_EP1"]; +_u = _u + ["TK_Soldier_AA_EP1"]; +_u = _u + ["TK_Soldier_LAT_EP1"]; +_u = _u + ["TK_Soldier_LAT_EP1"]; +_u = _u + ["TK_Soldier_MG_EP1"]; +_u = _u + ["TK_Soldier_MG_EP1"]; +_f = [true,false,false,true]; +_l = [2,0,0,0]; + +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [_f]; +_aiTeamTypes = _aiTeamTypes + [3]; +_aiTeamUpgrades = _aiTeamUpgrades + [_l]; + +_d = _d + ["Air - Mi-24 Squadron"]; +_u = ["Mi24_D_TK_EP1"]; +_u = _u + ["Mi24_D_TK_EP1"]; +_f = [false,false,false,true]; +_l = [0,0,0,1]; + +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [_f]; +_aiTeamTypes = _aiTeamTypes + [3]; +_aiTeamUpgrades = _aiTeamUpgrades + [_l]; + +_d = _d + ["Air - L39 Squadron"]; +_u = ["L39_TK_EP1"]; +_u = _u + ["L39_TK_EP1"]; +_f = [false,false,false,true]; +_l = [0,0,0,2]; + +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [_f]; +_aiTeamTypes = _aiTeamTypes + [3]; +_aiTeamUpgrades = _aiTeamUpgrades + [_l]; + +_d = _d + ["Air - Sukhoi 25 Squadron"]; +_u = ["Su25_TK_EP1"]; +_u = _u + ["Su25_TK_EP1"]; +_f = [false,false,false,true]; +_l = [0,0,0,3]; + +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [_f]; +_aiTeamTypes = _aiTeamTypes + [3]; +_aiTeamUpgrades = _aiTeamUpgrades + [_l]; + +[_aiTeamTemplates,_aiTeamTemplateRequires,_aiTeamTypes,_aiTeamUpgrades,_d] \ No newline at end of file diff --git a/Common/Config/Core_Squads/Arrowhead/Squad_TKA.sqf b/Common/Config/Core_Squads/Arrowhead/Squad_TKA.sqf new file mode 100644 index 0000000..8360f83 --- /dev/null +++ b/Common/Config/Core_Squads/Arrowhead/Squad_TKA.sqf @@ -0,0 +1,45 @@ +Private ['_aiTeamTemplateRequires','_aiTeamTemplateName','_aiTeamTemplates','_aiTeamTypes','_aiTeamUpgrades','_return','_u']; + +//--- Overall Dump. +_return = ["East", "BIS_TK", ["TK_An2Flight"]] Call Compile preprocessFile "Common\Config\Core_Squads\Squads_GetFactionGroups.sqf"; +_aiTeamTemplates = _return select 0; +_aiTeamTemplateName = _return select 1; +_aiTeamTemplateRequires = _return select 2; +_aiTeamTypes = _return select 3; +_aiTeamUpgrades = _return select 4; + +//--- Custom Groups. +_u = ["BMP2_TK_EP1"]; +_u = _u + ["BMP2_TK_EP1"]; + +_aiTeamTemplateName = _aiTeamTemplateName + ["Armor - IFV Platoon (Light)"]; +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [[false,false,true,false]]; +_aiTeamTypes = _aiTeamTypes + [2]; +_aiTeamUpgrades = _aiTeamUpgrades + [[0,0,0,0]]; + +_u = ["ZSU_TK_EP1"]; +_u = _u + ["ZSU_TK_EP1"]; + +_aiTeamTemplateName = _aiTeamTemplateName + ["Armor - Anti Air Platoon"]; +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [[false,false,true,false]]; +_aiTeamTypes = _aiTeamTypes + [2]; +_aiTeamUpgrades = _aiTeamUpgrades + [[0,0,1,0]]; + +_u = ["Mi17_TK_EP1"]; +_u = _u + ["TK_Soldier_SL_EP1"]; +_u = _u + ["TK_Soldier_AA_EP1"]; +_u = _u + ["TK_Soldier_AA_EP1"]; +_u = _u + ["TK_Soldier_LAT_EP1"]; +_u = _u + ["TK_Soldier_LAT_EP1"]; +_u = _u + ["TK_Soldier_MG_EP1"]; +_u = _u + ["TK_Soldier_MG_EP1"]; + +_aiTeamTemplateName = _aiTeamTemplateName + ["Air - Infantry Mi-17 Squadron"]; +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [[true,false,false,true]]; +_aiTeamTypes = _aiTeamTypes + [3]; +_aiTeamUpgrades = _aiTeamUpgrades + [[2,0,0,0]]; + +[_aiTeamTemplates,_aiTeamTemplateRequires,_aiTeamTypes,_aiTeamUpgrades,_aiTeamTemplateName] \ No newline at end of file diff --git a/Common/Config/Core_Squads/Arrowhead/Squad_US.sqf b/Common/Config/Core_Squads/Arrowhead/Squad_US.sqf new file mode 100644 index 0000000..8003458 --- /dev/null +++ b/Common/Config/Core_Squads/Arrowhead/Squad_US.sqf @@ -0,0 +1,45 @@ +Private ['_aiTeamTemplateRequires','_aiTeamTemplateName','_aiTeamTemplates','_aiTeamTypes','_aiTeamUpgrades','_return','_u']; + +//--- Overall Dump. +_return = ["West", "BIS_US", ["US_AH6XFlight","US_C130JFlight","US_MQ9Flight"]] Call Compile preprocessFile "Common\Config\Core_Squads\Squads_GetFactionGroups.sqf"; +_aiTeamTemplates = _return select 0; +_aiTeamTemplateName = _return select 1; +_aiTeamTemplateRequires = _return select 2; +_aiTeamTypes = _return select 3; +_aiTeamUpgrades = _return select 4; + +//--- Custom Groups. +_u = ["M2A2_EP1"]; +_u = _u + ["M2A2_EP1"]; + +_aiTeamTemplateName = _aiTeamTemplateName + ["Armor - APC Platoon (Bradley)"]; +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [[false,false,true,false]]; +_aiTeamTypes = _aiTeamTypes + [2]; +_aiTeamUpgrades = _aiTeamUpgrades + [[0,0,1,0]]; + +_u = ["M6_EP1"]; +_u = _u + ["M6_EP1"]; + +_aiTeamTemplateName = _aiTeamTemplateName + ["Armor - Anti-Air Platoon"]; +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [[false,false,true,false]]; +_aiTeamTypes = _aiTeamTypes + [2]; +_aiTeamUpgrades = _aiTeamUpgrades + [[0,0,3,0]]; + +_u = ["CH_47F_EP1"]; +_u = _u + ["US_Soldier_TL_EP1"]; +_u = _u + ["US_Soldier_AR_EP1"]; +_u = _u + ["US_Soldier_LAT_EP1"]; +_u = _u + ["US_Soldier_Medic_EP1"]; +_u = _u + ["US_Soldier_EP1"]; +_u = _u + ["US_Soldier_EP1"]; +_u = _u + ["US_Soldier_EP1"]; + +_aiTeamTemplateName = _aiTeamTemplateName + ["Air - Infantry CH-47F Squadron"]; +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [[true,false,false,true]]; +_aiTeamTypes = _aiTeamTypes + [3]; +_aiTeamUpgrades = _aiTeamUpgrades + [[0,0,0,0]]; + +[_aiTeamTemplates,_aiTeamTemplateRequires,_aiTeamTypes,_aiTeamUpgrades,_aiTeamTemplateName] \ No newline at end of file diff --git a/Common/Config/Core_Squads/CombinedOps/Squad_US_Camo.sqf b/Common/Config/Core_Squads/CombinedOps/Squad_US_Camo.sqf new file mode 100644 index 0000000..350bf06 --- /dev/null +++ b/Common/Config/Core_Squads/CombinedOps/Squad_US_Camo.sqf @@ -0,0 +1,51 @@ +Private ['_aiTeamTemplateRequires','_aiTeamTemplateName','_aiTeamTemplates','_aiTeamTypes','_aiTeamUpgrades','_return','_u']; + +//--- Overall Dump. +_return = ["West", "USMC", ["USMC_MQ9Squadron","USMC_FRTeam_Razor"]] Call Compile preprocessFile "Common\Config\Core_Squads\Squads_GetFactionGroups.sqf"; +_aiTeamTemplates = _return select 0; +_aiTeamTemplateName = _return select 1; +_aiTeamTemplateRequires = _return select 2; +_aiTeamTypes = _return select 3; +_aiTeamUpgrades = _return select 4; + +//--- Custom Groups. +_u = ["M1A1"]; +_u = _u + ["M1A1"]; + +_aiTeamTemplateName = _aiTeamTemplateName + ["Armor - M1A1 Section"]; +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [[false,false,true,false]]; +_aiTeamTypes = _aiTeamTypes + [2]; +_aiTeamUpgrades = _aiTeamUpgrades + [[0,0,1,0]]; + +_u = ["UH1Y"]; +_u = _u + ["USMC_Soldier_TL"]; +_u = _u + ["USMC_Soldier_AR"]; +_u = _u + ["USMC_Soldier_LAT"]; +_u = _u + ["USMC_Soldier_Medic"]; +_u = _u + ["USMC_Soldier"]; +_u = _u + ["USMC_Soldier"]; +_u = _u + ["USMC_Soldier"]; + +_aiTeamTemplateName = _aiTeamTemplateName + ["Air - Infantry UH1Y Squadron"]; +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [[true,false,false,true]]; +_aiTeamTypes = _aiTeamTypes + [3]; +_aiTeamUpgrades = _aiTeamUpgrades + [[0,0,0,1]]; + +_u = ["MH60S"]; +_u = _u + ["USMC_Soldier_TL"]; +_u = _u + ["USMC_Soldier_MG"]; +_u = _u + ["USMC_Soldier_AT"]; +_u = _u + ["USMC_Soldier_Medic"]; +_u = _u + ["USMC_Soldier"]; +_u = _u + ["USMC_Soldier"]; +_u = _u + ["USMC_Soldier"]; + +_aiTeamTemplateName = _aiTeamTemplateName + ["Air - Infantry MH-60S Squadron"]; +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [[true,false,false,true]]; +_aiTeamTypes = _aiTeamTypes + [3]; +_aiTeamUpgrades = _aiTeamUpgrades + [[2,0,0,0]]; + +[_aiTeamTemplates,_aiTeamTemplateRequires,_aiTeamTypes,_aiTeamUpgrades,_aiTeamTemplateName] \ No newline at end of file diff --git a/Common/Config/Core_Squads/Squads_GetFactionGroups.sqf b/Common/Config/Core_Squads/Squads_GetFactionGroups.sqf new file mode 100644 index 0000000..cf5df82 --- /dev/null +++ b/Common/Config/Core_Squads/Squads_GetFactionGroups.sqf @@ -0,0 +1,78 @@ +/* Use this file if you wish to set quickly a faction's groups */ +Private ['_aiTeamTemplates','_aiTeamTemplateName','_aiTeamTemplateRequires','_aiTeamTypes','_aiTeamUpgrades','_blacklist','_cfgFaction','_faction','_side']; + +_side = _this select 0; +_faction = _this select 1; +_blacklist = if (count _this > 2) then {_this select 2} else {[]}; + +_cfgFaction = configFile >> "CfgGroups" >> _side >> _faction; + +if !(isClass _cfgFaction) exitWith {diag_log Format ["[WFBE (ERROR)][frameno:%1 | ticktime:%2] Squads_SetFactionGroups: Entry (configFile >> '%3' >> '%4') is not a valid group config.",diag_frameno,diag_tickTime,_side,_faction]}; + +_aiTeamTemplates = []; +_aiTeamTemplateName = []; +_aiTeamTemplateRequires = []; +_aiTeamTypes = []; +_aiTeamUpgrades = []; + +//--- Iterate through the faction's config and grab the group along with it's properties. +for "_i" from 0 to ((count _cfgFaction) - 1) do { + Private ["_classKind"]; + _classKind = _cfgFaction select _i; + + // ACE CSW squads don't work quite right. + if (isClass _classKind && toUpper (configName(_classKind)) != "ACE_CSW_INFANTRY") then { + Private ["_nameKind"]; + _nameKind = getText (_classKind >> "name"); + for "_j" from 0 to ((count _classKind) - 1) do { + Private ["_classType"]; + _classType = _classKind select _j; + if (isClass _classType && !(configName(_classType) in _blacklist)) then { + Private ["_factoryPool","_groupUnits","_levels","_nameGroup","_require"]; + _nameGroup = getText (_classType >> "name"); + _aiTeamTemplateName = _aiTeamTemplateName + [Format ["%1 - %2",_nameKind,_nameGroup]]; + _groupUnits = []; + _require = [false, false, false, false]; + _levels = [0,0,0,0]; + + for "_k" from 0 to ((count _classType) - 1) do { + Private ["_classUnit"]; + _classUnit = _classType select _k; + + if (isClass _classUnit) then { + Private ["_unit"]; + _unit = getText (_classUnit >> "vehicle"); + _groupUnits = _groupUnits + [_unit]; + + _get = _unit Call GetNamespace; + if !(isNil "_get") then { + _type = _get select QUERYUNITFACTORY; + _upgrade = _get select QUERYUNITUPGRADE; + + _require set [_type, true]; + _levels set [_type, _upgrade]; + } else { + diag_log Format ["[WFBE (ERROR)][frameno:%2 | ticktime:%3] Squads_SetFactionGroups: Unit '%1' is not a defined within the core files.",_unit,diag_frameno,diag_tickTime]; + /* TODO, Attempt to define*/ + }; + }; + }; + + _factoryPool = switch (configName _classKind) do { + case "Infantry": {0}; + case "Motorized": {1}; + case "Mechanized": {2}; + case "Armor": {2}; + case "Air": {3}; + default {0}; + }; + _aiTeamTypes = _aiTeamTypes + [_factoryPool]; + _aiTeamUpgrades = _aiTeamUpgrades + [_levels]; + _aiTeamTemplateRequires = _aiTeamTemplateRequires + [_require]; + _aiTeamTemplates = _aiTeamTemplates + [_groupUnits]; + }; + }; + }; +}; + +[_aiTeamTemplates, _aiTeamTemplateName, _aiTeamTemplateRequires, _aiTeamTypes, _aiTeamUpgrades] \ No newline at end of file diff --git a/Common/Config/Core_Squads/Vanilla/Squad_CDF.sqf b/Common/Config/Core_Squads/Vanilla/Squad_CDF.sqf new file mode 100644 index 0000000..2ab99ed --- /dev/null +++ b/Common/Config/Core_Squads/Vanilla/Squad_CDF.sqf @@ -0,0 +1,45 @@ +Private ['_aiTeamTemplateRequires','_aiTeamTemplateName','_aiTeamTemplates','_aiTeamTypes','_aiTeamUpgrades','_return','_u']; + +//--- Overall Dump. +_return = ["West", "CDF"] Call Compile preprocessFile "Common\Config\Core_Squads\Squads_GetFactionGroups.sqf"; +_aiTeamTemplates = _return select 0; +_aiTeamTemplateName = _return select 1; +_aiTeamTemplateRequires = _return select 2; +_aiTeamTypes = _return select 3; +_aiTeamUpgrades = _return select 4; + +//--- Custom Groups. +_u = ["BMP2_CDF"]; +_u = _u + ["BMP2_CDF"]; + +_aiTeamTemplateName = _aiTeamTemplateName + ["Armor - APC Platoon"]; +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTypes = _aiTeamTypes + [2]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [[false,false,true,false]]; +_aiTeamUpgrades = _aiTeamUpgrades + [[0,0,2,0]]; + +_u = ["ZSU_CDF"]; +_u = _u + ["ZSU_CDF"]; + +_aiTeamTemplateName = _aiTeamTemplateName + ["Armor - AA Platoon"]; +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTypes = _aiTeamTypes + [2]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [[false,false,true,false]]; +_aiTeamUpgrades = _aiTeamUpgrades + [[0,0,1,0]]; + +_u = ["Mi17_CDF"]; +_u = _u + ["CDF_Soldier_Medic"]; +_u = _u + ["CDF_Soldier_MG"]; +_u = _u + ["CDF_Soldier_AR"]; +_u = _u + ["CDF_Soldier_RPG"]; +_u = _u + ["CDF_Soldier_RPG"]; +_u = _u + ["CDF_Soldier_Spotter"]; +_u = _u + ["CDF_Soldier"]; + +_aiTeamTemplateName = _aiTeamTemplateName + ["Air - Mi-8 Infantry Squadron"]; +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTypes = _aiTeamTypes + [3]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [[false,false,false,true]]; +_aiTeamUpgrades = _aiTeamUpgrades + [[1,0,0,0]]; + +[_aiTeamTemplates,_aiTeamTemplateRequires,_aiTeamTypes,_aiTeamUpgrades,_aiTeamTemplateName] \ No newline at end of file diff --git a/Common/Config/Core_Squads/Vanilla/Squad_INS.sqf b/Common/Config/Core_Squads/Vanilla/Squad_INS.sqf new file mode 100644 index 0000000..f379743 --- /dev/null +++ b/Common/Config/Core_Squads/Vanilla/Squad_INS.sqf @@ -0,0 +1,45 @@ +Private ['_aiTeamTemplateRequires','_aiTeamTemplateName','_aiTeamTemplates','_aiTeamTypes','_aiTeamUpgrades','_return','_u']; + +//--- Overall Dump. +_return = ["East", "INS"] Call Compile preprocessFile "Common\Config\Core_Squads\Squads_GetFactionGroups.sqf"; +_aiTeamTemplates = _return select 0; +_aiTeamTemplateName = _return select 1; +_aiTeamTemplateRequires = _return select 2; +_aiTeamTypes = _return select 3; +_aiTeamUpgrades = _return select 4; + +//--- Custom Groups. +_u = ["BMP2_INS"]; +_u = _u + ["BMP2_INS"]; + +_aiTeamTemplateName = _aiTeamTemplateName + ["Armor - APC Platoon"]; +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTypes = _aiTeamTypes + [2]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [[false,false,true,false]]; +_aiTeamUpgrades = _aiTeamUpgrades + [[0,0,2,0]]; + +_u = ["ZSU_INS"]; +_u = _u + ["ZSU_INS"]; + +_aiTeamTemplateName = _aiTeamTemplateName + ["Armor - AA Platoon"]; +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTypes = _aiTeamTypes + [2]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [[false,false,true,false]]; +_aiTeamUpgrades = _aiTeamUpgrades + [[0,0,1,0]]; + +_u = ["Mi17_Ins"]; +_u = _u + ["Ins_Soldier_Medic"]; +_u = _u + ["Ins_Soldier_MG"]; +_u = _u + ["Ins_Soldier_AR"]; +_u = _u + ["Ins_Soldier_AT"]; +_u = _u + ["Ins_Soldier_AT"]; +_u = _u + ["Ins_Soldier_Sniper"]; +_u = _u + ["Ins_Soldier_1"]; + +_aiTeamTemplateName = _aiTeamTemplateName + ["Air - Mi-8 Infantry Squadron"]; +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTypes = _aiTeamTypes + [3]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [[false,false,false,true]]; +_aiTeamUpgrades = _aiTeamUpgrades + [[1,0,0,0]]; + +[_aiTeamTemplates,_aiTeamTemplateRequires,_aiTeamTypes,_aiTeamUpgrades,_aiTeamTemplateName] \ No newline at end of file diff --git a/Common/Config/Core_Squads/Vanilla/Squad_RU.sqf b/Common/Config/Core_Squads/Vanilla/Squad_RU.sqf new file mode 100644 index 0000000..39f77bc --- /dev/null +++ b/Common/Config/Core_Squads/Vanilla/Squad_RU.sqf @@ -0,0 +1,70 @@ +Private ['_aiTeamTemplateRequires','_aiTeamTemplateName','_aiTeamTemplates','_aiTeamTypes','_aiTeamUpgrades','_return','_u']; + +//--- Overall Dump. +_return = ["East", "RU", ["RU_Pchela1TSquadron","RU_Ka52Squadron"]] Call Compile preprocessFile "Common\Config\Core_Squads\Squads_GetFactionGroups.sqf"; +_aiTeamTemplates = _return select 0; +_aiTeamTemplateName = _return select 1; +_aiTeamTemplateRequires = _return select 2; +_aiTeamTypes = _return select 3; +_aiTeamUpgrades = _return select 4; + +//--- Custom Groups. +_u = ["2S6M_Tunguska"]; +_u = _u + ["2S6M_Tunguska"]; + +_aiTeamTemplateName = _aiTeamTemplateName + ["Armor - Anti Air Platoon"]; +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [[false,false,true,false]]; +_aiTeamTypes = _aiTeamTypes + [2]; +_aiTeamUpgrades = _aiTeamUpgrades + [[0,0,3,0]]; + +_u = ["T72_RU"]; +_u = _u + ["T72_RU"]; + +_aiTeamTemplateName = _aiTeamTemplateName + ["Armor - Tank Platoon (Light)"]; +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [[false,false,true,false]]; +_aiTeamTypes = _aiTeamTypes + [2]; +_aiTeamUpgrades = _aiTeamUpgrades + [[0,0,1,0]]; + +_u = ["Mi17_Ins"]; +_u = _u + ["MVD_Soldier_TL"]; +_u = _u + ["MVD_Soldier_GL"]; +_u = _u + ["MVD_Soldier_MG"]; +_u = _u + ["MVD_Soldier_MG"]; +_u = _u + ["MVD_Soldier_Marksman"]; +_u = _u + ["MVD_Soldier_AT"]; +_u = _u + ["MVD_Soldier_AT"]; + +_aiTeamTemplateName = _aiTeamTemplateName + ["Air - Infantry Mi-8 Squadron"]; +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [[true,false,false,true]]; +_aiTeamTypes = _aiTeamTypes + [3]; +_aiTeamUpgrades = _aiTeamUpgrades + [[2,0,0,0]]; + +_u = ["Mi17_rockets_RU"]; +_u = _u + ["RU_Soldier_TL"]; +_u = _u + ["RU_Soldier_AA"]; +_u = _u + ["RU_Soldier_LAT"]; +_u = _u + ["RU_Soldier_LAT"]; +_u = _u + ["RU_Soldier_MG"]; +_u = _u + ["RU_Soldier_MG"]; + +_aiTeamTemplateName = _aiTeamTemplateName + ["Air - Infantry Mi-8 Squadron (Rockets)"]; +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [[true,false,false,true]]; +_aiTeamTypes = _aiTeamTypes + [3]; +_aiTeamUpgrades = _aiTeamUpgrades + [[2,0,0,1]]; + +if !(paramRestrictionKamov) then { + _u = ["Ka52Black"]; + _u = _u + ["Ka52"]; + + _aiTeamTemplateName = _aiTeamTemplateName + ["Air - Ka-52 Squadron"]; + _aiTeamTemplates = _aiTeamTemplates + [_u]; + _aiTeamTemplateRequires = _aiTeamTemplateRequires + [[false,false,false,true]]; + _aiTeamTypes = _aiTeamTypes + [3]; + _aiTeamUpgrades = _aiTeamUpgrades + [[0,0,0,3]]; +}; + +[_aiTeamTemplates,_aiTeamTemplateRequires,_aiTeamTypes,_aiTeamUpgrades,_aiTeamTemplateName] \ No newline at end of file diff --git a/Common/Config/Core_Squads/Vanilla/Squad_USMC.sqf b/Common/Config/Core_Squads/Vanilla/Squad_USMC.sqf new file mode 100644 index 0000000..350bf06 --- /dev/null +++ b/Common/Config/Core_Squads/Vanilla/Squad_USMC.sqf @@ -0,0 +1,51 @@ +Private ['_aiTeamTemplateRequires','_aiTeamTemplateName','_aiTeamTemplates','_aiTeamTypes','_aiTeamUpgrades','_return','_u']; + +//--- Overall Dump. +_return = ["West", "USMC", ["USMC_MQ9Squadron","USMC_FRTeam_Razor"]] Call Compile preprocessFile "Common\Config\Core_Squads\Squads_GetFactionGroups.sqf"; +_aiTeamTemplates = _return select 0; +_aiTeamTemplateName = _return select 1; +_aiTeamTemplateRequires = _return select 2; +_aiTeamTypes = _return select 3; +_aiTeamUpgrades = _return select 4; + +//--- Custom Groups. +_u = ["M1A1"]; +_u = _u + ["M1A1"]; + +_aiTeamTemplateName = _aiTeamTemplateName + ["Armor - M1A1 Section"]; +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [[false,false,true,false]]; +_aiTeamTypes = _aiTeamTypes + [2]; +_aiTeamUpgrades = _aiTeamUpgrades + [[0,0,1,0]]; + +_u = ["UH1Y"]; +_u = _u + ["USMC_Soldier_TL"]; +_u = _u + ["USMC_Soldier_AR"]; +_u = _u + ["USMC_Soldier_LAT"]; +_u = _u + ["USMC_Soldier_Medic"]; +_u = _u + ["USMC_Soldier"]; +_u = _u + ["USMC_Soldier"]; +_u = _u + ["USMC_Soldier"]; + +_aiTeamTemplateName = _aiTeamTemplateName + ["Air - Infantry UH1Y Squadron"]; +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [[true,false,false,true]]; +_aiTeamTypes = _aiTeamTypes + [3]; +_aiTeamUpgrades = _aiTeamUpgrades + [[0,0,0,1]]; + +_u = ["MH60S"]; +_u = _u + ["USMC_Soldier_TL"]; +_u = _u + ["USMC_Soldier_MG"]; +_u = _u + ["USMC_Soldier_AT"]; +_u = _u + ["USMC_Soldier_Medic"]; +_u = _u + ["USMC_Soldier"]; +_u = _u + ["USMC_Soldier"]; +_u = _u + ["USMC_Soldier"]; + +_aiTeamTemplateName = _aiTeamTemplateName + ["Air - Infantry MH-60S Squadron"]; +_aiTeamTemplates = _aiTeamTemplates + [_u]; +_aiTeamTemplateRequires = _aiTeamTemplateRequires + [[true,false,false,true]]; +_aiTeamTypes = _aiTeamTypes + [3]; +_aiTeamUpgrades = _aiTeamUpgrades + [[2,0,0,0]]; + +[_aiTeamTemplates,_aiTeamTemplateRequires,_aiTeamTypes,_aiTeamUpgrades,_aiTeamTemplateName] \ No newline at end of file -- cgit v1.3.1