diff options
| author | hybrid <hybrid@hybridlabs.pro> | 2026-06-11 19:38:09 +0300 |
|---|---|---|
| committer | hybrid <hybrid@hybridlabs.pro> | 2026-06-11 19:38:09 +0300 |
| commit | a3a91d4f45b22fd487ecbc954ad979be5d03efdd (patch) | |
| tree | a554ab159a347dcd6c00ca1c7c26c1ec3ac0a6bd /Common/Config/Core_Squads | |
| download | a2wf_chernarus-main.tar.gz a2wf_chernarus-main.tar.bz2 a2wf_chernarus-main.zip | |
Diffstat (limited to 'Common/Config/Core_Squads')
| -rw-r--r-- | Common/Config/Core_Squads/Arrowhead/Squad_TK.sqf | 285 | ||||
| -rw-r--r-- | Common/Config/Core_Squads/Arrowhead/Squad_TKA.sqf | 45 | ||||
| -rw-r--r-- | Common/Config/Core_Squads/Arrowhead/Squad_US.sqf | 45 | ||||
| -rw-r--r-- | Common/Config/Core_Squads/CombinedOps/Squad_US_Camo.sqf | 51 | ||||
| -rw-r--r-- | Common/Config/Core_Squads/Squads_GetFactionGroups.sqf | 78 | ||||
| -rw-r--r-- | Common/Config/Core_Squads/Vanilla/Squad_CDF.sqf | 45 | ||||
| -rw-r--r-- | Common/Config/Core_Squads/Vanilla/Squad_INS.sqf | 45 | ||||
| -rw-r--r-- | Common/Config/Core_Squads/Vanilla/Squad_RU.sqf | 70 | ||||
| -rw-r--r-- | Common/Config/Core_Squads/Vanilla/Squad_USMC.sqf | 51 |
9 files changed, 715 insertions, 0 deletions
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 |
