summaryrefslogtreecommitdiffstats
path: root/Common/Config/Core
diff options
context:
space:
mode:
authorhybrid <hybrid@hybridlabs.pro>2026-06-11 19:55:04 +0300
committerhybrid <hybrid@hybridlabs.pro>2026-06-11 19:55:04 +0300
commitb06990293397d4b6d0374097f09d1cc5679216e3 (patch)
tree5719922562e317a8083250c178f24376b6692569 /Common/Config/Core
downloada2wf_saralite-b06990293397d4b6d0374097f09d1cc5679216e3.tar.gz
a2wf_saralite-b06990293397d4b6d0374097f09d1cc5679216e3.tar.bz2
a2wf_saralite-b06990293397d4b6d0374097f09d1cc5679216e3.zip
init
Diffstat (limited to 'Common/Config/Core')
-rw-r--r--Common/Config/Core/Core_ACE_US_D.sqf67
-rw-r--r--Common/Config/Core/Core_ACE_US_W.sqf136
-rw-r--r--Common/Config/Core/Core_ACR.sqf97
-rw-r--r--Common/Config/Core/Core_BAF.sqf135
-rw-r--r--Common/Config/Core/Core_BAFD.sqf124
-rw-r--r--Common/Config/Core/Core_BAFW.sqf152
-rw-r--r--Common/Config/Core/Core_CDF.sqf180
-rw-r--r--Common/Config/Core/Core_CIV.sqf175
-rw-r--r--Common/Config/Core/Core_DeltaForce.sqf65
-rw-r--r--Common/Config/Core/Core_FR.sqf81
-rw-r--r--Common/Config/Core/Core_GUE.sqf137
-rw-r--r--Common/Config/Core/Core_INS.sqf201
-rw-r--r--Common/Config/Core/Core_KSK.sqf47
-rw-r--r--Common/Config/Core/Core_MVD.sqf50
-rw-r--r--Common/Config/Core/Core_PMC.sqf103
-rw-r--r--Common/Config/Core/Core_RU.sqf278
-rw-r--r--Common/Config/Core/Core_Spetsnaz.sqf50
-rw-r--r--Common/Config/Core/Core_TK.sqf249
-rw-r--r--Common/Config/Core/Core_TKA.sqf265
-rw-r--r--Common/Config/Core/Core_TKCIV.sqf133
-rw-r--r--Common/Config/Core/Core_TKGUE.sqf128
-rw-r--r--Common/Config/Core/Core_TKSF.sqf41
-rw-r--r--Common/Config/Core/Core_US.sqf305
-rw-r--r--Common/Config/Core/Core_USMC.sqf254
24 files changed, 3453 insertions, 0 deletions
diff --git a/Common/Config/Core/Core_ACE_US_D.sqf b/Common/Config/Core/Core_ACE_US_D.sqf
new file mode 100644
index 0000000..0cae3f6
--- /dev/null
+++ b/Common/Config/Core/Core_ACE_US_D.sqf
@@ -0,0 +1,67 @@
+/* ACE US Desert Configuration */
+Private ['_c','_get','_i','_p','_z'];
+
+_c = [];
+_i = [];
+
+/* Infantry */
+_c = _c + ['ACE_US_Soldier_M224_G'];
+_i = _i + [['','',220,5,-1,0,0,0.85,'USMC',[]]];
+
+_c = _c + ['ACE_US_Soldier_M224_AG'];
+_i = _i + [['','',220,5,-1,0,0,0.85,'USMC',[]]];
+
+_c = _c + ['ACE_US_Soldier_M224_AB'];
+_i = _i + [['','',220,5,-1,0,0,0.85,'USMC',[]]];
+
+_c = _c + ['ACE_US_Soldier_M252_G'];
+_i = _i + [['','',160,5,-1,0,0,0.83,'USMC',[]]];
+
+_c = _c + ['ACE_US_Soldier_M252_AG'];
+_i = _i + [['','',160,5,-1,0,0,0.83,'USMC',[]]];
+
+_c = _c + ['ACE_US_Soldier_M252_AB'];
+_i = _i + [['','',160,5,-1,0,0,0.83,'USMC',[]]];
+
+/* Heavy Vehicles */
+_c = _c + ['ACE_Stryker_RV_SLAT_D'];
+_i = _i + [['','',1800,25,[false,true,2,0],0,2,0,'US',[]]];
+
+_c = _c + ['ACE_M1A1HA_TUSK_DESERT'];
+_i = _i + [['','',5850,40,-2,2,2,0,'US',[]]];
+
+_c = _c + ['ACE_M1A1HA_TUSK_CSAMM_DESERT'];
+_i = _i + [['','',6450,40,-2,3,2,0,'US',[]]];
+
+/* Air Vehicles */
+_c = _c + ['ACE_AH6_GAU19_FLIR'];
+_i = _i + [['','',29500,50,-2,2,3,0,'US',[]]];
+
+_c = _c + ['ACE_AH6J_DAGR_FLIR'];
+_i = _i + [['','',35500,50,-2,2,3,0,'US',[]]];
+
+for '_z' from 0 to (count _c)-1 do {
+ if (isClass (configFile >> 'CfgVehicles' >> (_c select _z))) then {
+ _get = (_c select _z) Call GetNamespace;
+ if (isNil '_get') then {
+ if ((_i select _z) select 0 == '') then {(_i select _z) set [0, [_c select _z,'displayName'] Call GetConfigInfo]};
+ if (typeName ((_i select _z) select 4) == 'SCALAR') then {
+ if (((_i select _z) select 4) == -2) then {
+ _ret = (_c select _z) Call Compile preprocessFile "Common\Functions\Common_GetConfigVehicleCrewSlot.sqf";
+ (_i select _z) set [4, _ret select 0];
+ (_i select _z) set [9, _ret select 1];
+ };
+ };
+ if (WF_Debug) then {(_i select _z) set [3,1]};
+ _p = if ((_c select _z) isKindOf 'Man') then {'portrait'} else {'picture'};
+ (_i select _z) set [1, [_c select _z,_p] Call GetConfigInfo];
+ [_c select _z,_i select _z] Call SetNamespace;
+ } else {
+ diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_ACE_US_D: Duplicated Element found '%1'",(_c select _z),diag_frameno,diag_tickTime];
+ };
+ } else {
+ diag_log Format ["[WFBE (ERROR)][frameno:%2 | ticktime:%3] Core_ACE_US_D: Element '%1' is not a valid class.",(_c select _z),diag_frameno,diag_tickTime];
+ };
+};
+
+diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_ACE_US_D: Initialization (%1 Elements) - [Done]",count _c,diag_frameno,diag_tickTime]; \ No newline at end of file
diff --git a/Common/Config/Core/Core_ACE_US_W.sqf b/Common/Config/Core/Core_ACE_US_W.sqf
new file mode 100644
index 0000000..fa50509
--- /dev/null
+++ b/Common/Config/Core/Core_ACE_US_W.sqf
@@ -0,0 +1,136 @@
+/* ACE US Woodland Configuration */
+Private ['_c','_get','_i','_p','_z'];
+
+_c = [];
+_i = [];
+
+/* Light Vehicles */
+_c = _c + ['ACE_ATV_Honda'];
+_i = _i + [['','',175,14,-2,0,1,0,'US - Woodland',[]]];
+
+_c = _c + ['ACE_HMMWV_USARMY'];
+_i = _i + [['','',300,15,-2,0,1,0,'US - Woodland',[]]];
+
+_c = _c + ['ACE_HMMWV_MK19_USARMY'];
+_i = _i + [['','',900,18,-2,1,1,0,'US - Woodland',[]]];
+
+_c = _c + ['ACE_HMMWV_GMV'];
+_i = _i + [['','',1050,20,-2,1,1,0,'US - Woodland',[]]];
+
+_c = _c + ['ACE_HMMWV_GMV_MK19'];
+_i = _i + [['','',1050,20,-2,1,1,0,'US - Woodland',[]]];
+
+_c = _c + ['ACE_HMMWV_M2_USARMY'];
+_i = _i + [['','',850,20,-2,0,1,0,'US - Woodland',[]]];
+
+_c = _c + ['ACE_HMMWV_TOW_USARMY'];
+_i = _i + [['','',1450,20,-2,2,1,0,'US - Woodland',[]]];
+
+_c = _c + ['ACE_HMMWV_Ambulance_USARMY'];
+_i = _i + [['','',725,22,-2,2,1,0,'US - Woodland',[]]];
+
+_c = _c + ['ACE_Truck5tOpen'];
+_i = _i + [['','',400,20,-2,0,1,0,'US - Woodland',[]]];
+
+_c = _c + ['ACE_Truck5t'];
+_i = _i + [['','',400,20,-2,0,1,0,'US - Woodland',[]]];
+
+_c = _c + ['ACE_Truck5tMGOpen'];
+_i = _i + [['','',400,20,-2,0,1,0,'US - Woodland',[]]];
+
+_c = _c + ['ACE_Truck5tMG'];
+_i = _i + [['','',400,20,-2,0,1,0,'US - Woodland',[]]];
+
+_c = _c + ['ACE_Truck5tRepair'];
+_i = _i + [['','',525,22,-2,2,1,0,'US - Woodland',[]]];
+
+_c = _c + ['ACE_Truck5tReammo'];
+_i = _i + [['','',550,22,-2,1,1,0,'US - Woodland',[]]];
+
+_c = _c + ['ACE_Truck5tRefuel'];
+_i = _i + [['','',500,22,-2,1,1,0,'US - Woodland',[]]];
+
+/* Heavy Vehicles */
+_c = _c + ['ACE_Stryker_ICV_M2_SLAT'];
+_i = _i + [['','',1650,25,[false,true,2,0],0,2,0,'US - Woodland',[]]];
+
+_c = _c + ['ACE_Stryker_RV'];
+_i = _i + [['','',1800,25,[false,true,2,0],0,2,0,'US - Woodland',[]]];
+
+_c = _c + ['ACE_Stryker_RV_SLAT'];
+_i = _i + [['','',1800,25,[false,true,2,0],0,2,0,'US - Woodland',[]]];
+
+_c = _c + ['ACE_Stryker_ICV_MK19_SLAT'];
+_i = _i + [['','',1950,25,[false,true,2,0],0,2,0,'US - Woodland',[]]];
+
+_c = _c + ['ACE_Stryker_TOW_MG_Slat'];
+_i = _i + [['','',1850,25,-2,2,2,0,'US - Woodland',[]]];
+
+_c = _c + ['ACE_Stryker_TOW_Slat'];
+_i = _i + [['','',1850,25,-2,2,2,0,'US - Woodland',[]]];
+
+_c = _c + ['ACE_Stryker_MGS'];
+_i = _i + [['','',2450,25,-2,2,2,0,'US - Woodland',[]]];
+
+_c = _c + ['ACE_Stryker_MGS_Slat'];
+_i = _i + [['','',2450,25,-2,2,2,0,'US - Woodland',[]]];
+
+_c = _c + ['ACE_M113A3_Ambul'];
+_i = _i + [['','',1950,25,-2,1,2,0,'US - Woodland',[]]];
+
+_c = _c + ['ACE_Vulcan'];
+_i = _i + [['','',1950,25,-2,1,2,0,'US - Woodland',[]]];
+
+_c = _c + ['ACE_M113A3'];
+_i = _i + [['','',1950,25,-2,1,2,0,'US - Woodland',[]]];
+
+_c = _c + ['ACE_M2A2_W'];
+_i = _i + [['','',4450,30,-2,1,2,0,'US - Woodland',[]]];
+
+_c = _c + ['ACE_M2A3_W'];
+_i = _i + [['','',4950,32,-2,2,2,0,'US - Woodland',[]]];
+
+_c = _c + ['ACE_M1A1_NATO'];
+_i = _i + [['','',5650,40,-2,2,2,0,'US - Woodland',[]]];
+
+_c = _c + ['ACE_M1A1HA_TUSK'];
+_i = _i + [['','',5650,40,-2,2,2,0,'US - Woodland',[]]];
+
+_c = _c + ['ACE_M1A1HA_TUSK_CSAMM'];
+_i = _i + [['','',5650,40,-2,2,2,0,'US - Woodland',[]]];
+
+_c = _c + ['ACE_M6A1_W'];
+_i = _i + [['','',8200,35,-2,3,2,0,'US - Woodland',[]]];
+
+/* Air Vehicles */
+_c = _c + ['ACE_AH6_GAU19_FLIR'];
+_i = _i + [['','',29500,50,-2,1,3,0,'US - Woodland',[]]];
+
+_c = _c + ['ACE_AH6J_DAGR_FLIR'];
+_i = _i + [['','',35500,50,-2,1,3,0,'US - Woodland',[]]];
+
+for '_z' from 0 to (count _c)-1 do {
+ if (isClass (configFile >> 'CfgVehicles' >> (_c select _z))) then {
+ _get = (_c select _z) Call GetNamespace;
+ if (isNil '_get') then {
+ if ((_i select _z) select 0 == '') then {(_i select _z) set [0, [_c select _z,'displayName'] Call GetConfigInfo]};
+ if (typeName ((_i select _z) select 4) == 'SCALAR') then {
+ if (((_i select _z) select 4) == -2) then {
+ _ret = (_c select _z) Call Compile preprocessFile "Common\Functions\Common_GetConfigVehicleCrewSlot.sqf";
+ (_i select _z) set [4, _ret select 0];
+ (_i select _z) set [9, _ret select 1];
+ };
+ };
+ if (WF_Debug) then {(_i select _z) set [3,1]};
+ _p = if ((_c select _z) isKindOf 'Man') then {'portrait'} else {'picture'};
+ (_i select _z) set [1, [_c select _z,_p] Call GetConfigInfo];
+ [_c select _z,_i select _z] Call SetNamespace;
+ } else {
+ diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_ACE_US_W: Duplicated Element found '%1'",(_c select _z),diag_frameno,diag_tickTime];
+ };
+ } else {
+ diag_log Format ["[WFBE (ERROR)][frameno:%2 | ticktime:%3] Core_ACE_US_W: Element '%1' is not a valid class.",(_c select _z),diag_frameno,diag_tickTime];
+ };
+};
+
+diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_ACE_US_W: Initialization (%1 Elements) - [Done]",count _c,diag_frameno,diag_tickTime]; \ No newline at end of file
diff --git a/Common/Config/Core/Core_ACR.sqf b/Common/Config/Core/Core_ACR.sqf
new file mode 100644
index 0000000..2da71ca
--- /dev/null
+++ b/Common/Config/Core/Core_ACR.sqf
@@ -0,0 +1,97 @@
+/* ACR Configuration */
+Private ['_c','_get','_i','_p','_z'];
+
+_c = [];
+_i = [];
+
+/* Infantry */
+_c = _c + ['CZ_Soldier_Light_DES_EP1'];
+_i = _i + [['','',125,4,-1,0,0,0.85,'Czech',[]]];
+
+_c = _c + ['CZ_Soldier_DES_EP1'];
+_i = _i + [['','',150,4,-1,0,0,0.85,'Czech',[]]];
+
+_c = _c + ['CZ_Soldier_B_DES_EP1'];
+_i = _i + [['','',150,4,-1,0,0,0.85,'Czech',[]]];
+
+_c = _c + ['CZ_Soldier_AT_DES_EP1'];
+_i = _i + [['','',310,5,-1,0,0,0.87,'Czech',[]]];
+
+_c = _c + ['CZ_Soldier_AMG_DES_EP1'];
+_i = _i + [['','',210,5,-1,1,0,0.85,'Czech',[]]];
+
+_c = _c + ['CZ_Soldier_MG_DES_EP1'];
+_i = _i + [['','',220,5,-1,0,0,0.86,'Czech',[]]];
+
+_c = _c + ['CZ_Soldier_Sniper_EP1'];
+_i = _i + [['','',280,5,-1,1,0,0.88,'Czech',[]]];
+
+_c = _c + ['CZ_Special_Forces_GL_DES_EP1'];
+_i = _i + [['','',290,5,-1,3,0,0.90,'Czech',[]]];
+
+_c = _c + ['CZ_Special_Forces_MG_DES_EP1'];
+_i = _i + [['','',310,5,-1,3,0,0.90,'Czech',[]]];
+
+_c = _c + ['CZ_Special_Forces_DES_EP1'];
+_i = _i + [['','',285,5,-1,3,0,0.89,'Czech',[]]];
+
+_c = _c + ['CZ_Special_Forces_Scout_DES_EP1'];
+_i = _i + [['','',305,5,-1,3,0,0.90,'Czech',[]]];
+
+_c = _c + ['CZ_Special_Forces_TL_DES_EP1'];
+_i = _i + [['','',310,5,-1,3,0,0.91,'Czech',[]]];
+
+_c = _c + ['CZ_Soldier_Pilot_EP1'];
+_i = _i + [['','',120,4,-1,0,0,0.86,'Czech',[]]];
+
+_c = _c + ['CZ_Soldier_Office_DES_EP1'];
+_i = _i + [['','',240,5,-1,1,0,0.88,'Czech',[]]];
+
+_c = _c + ['CZ_Soldier_SL_DES_EP1'];
+_i = _i + [['','',220,5,-1,2,0,0.87,'Czech',[]]];
+
+/* Light Vehicles */
+_c = _c + ['ATV_CZ_EP1'];
+_i = _i + [['','',175,15,-2,0,1,0,'Czech',[]]];
+
+_c = _c + ['HMMWV_M1151_M2_CZ_DES_EP1'];
+_i = _i + [['','',850,20,-2,0,1,0,'Czech',[]]];
+
+_c = _c + ['LandRover_CZ_EP1'];
+_i = _i + [['','',275,18,-2,0,1,0,'Czech',[]]];
+
+_c = _c + ['LandRover_Special_CZ_EP1'];
+_i = _i + [['','',700,20,-2,0,1,0,'Czech',[]]];
+
+/* Air Vehicles */
+_c = _c + ['Mi171Sh_CZ_EP1'];
+_i = _i + [['','',7600,35,-2,1,3,0,'Czech',[]]];
+
+_c = _c + ['Mi171Sh_rockets_CZ_EP1'];
+_i = _i + [['','',26500,40,-2,0,3,0,'Czech',[]]];
+
+for '_z' from 0 to (count _c)-1 do {
+ if (isClass (configFile >> 'CfgVehicles' >> (_c select _z))) then {
+ _get = (_c select _z) Call GetNamespace;
+ if (isNil '_get') then {
+ if ((_i select _z) select 0 == '') then {(_i select _z) set [0, [_c select _z,'displayName'] Call GetConfigInfo]};
+ if (typeName ((_i select _z) select 4) == 'SCALAR') then {
+ if (((_i select _z) select 4) == -2) then {
+ _ret = (_c select _z) Call Compile preprocessFile "Common\Functions\Common_GetConfigVehicleCrewSlot.sqf";
+ (_i select _z) set [4, _ret select 0];
+ (_i select _z) set [9, _ret select 1];
+ };
+ };
+ if (WF_Debug) then {(_i select _z) set [3,1]};
+ _p = if ((_c select _z) isKindOf 'Man') then {'portrait'} else {'picture'};
+ (_i select _z) set [1, [_c select _z,_p] Call GetConfigInfo];
+ [_c select _z,_i select _z] Call SetNamespace;
+ } else {
+ diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_ACR: Duplicated Element found '%1'",(_c select _z),diag_frameno,diag_tickTime];
+ };
+ } else {
+ diag_log Format ["[WFBE (ERROR)][frameno:%2 | ticktime:%3] Core_ACR: Element '%1' is not a valid class.",(_c select _z),diag_frameno,diag_tickTime];
+ };
+};
+
+diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_ACR: Initialization (%1 Elements) - [Done]",count _c,diag_frameno,diag_tickTime]; \ No newline at end of file
diff --git a/Common/Config/Core/Core_BAF.sqf b/Common/Config/Core/Core_BAF.sqf
new file mode 100644
index 0000000..af4bf34
--- /dev/null
+++ b/Common/Config/Core/Core_BAF.sqf
@@ -0,0 +1,135 @@
+/* BAF (MTP) Configuration */
+private ["_c","_get","_i","_p"];
+
+_c = [];
+_i = [];
+
+/* Infantry */
+_c = _c + ['BAF_Soldier_AA_MTP'];
+_i = _i + [['','',410,6,-1,2,0,0.88,'British',[]]];
+
+_c = _c + ['BAF_Soldier_AAA_MTP'];
+_i = _i + [['','',190,6,-1,2,0,0.89,'British',[]]];
+
+_c = _c + ['BAF_Soldier_AAT_MTP'];
+_i = _i + [['','',190,4,-1,2,0,0.84,'British',[]]];
+
+_c = _c + ['BAF_Soldier_AHAT_MTP'];
+_i = _i + [['','',190,6,-1,3,0,0.85,'British',[]]];
+
+_c = _c + ['BAF_Soldier_AAR_MTP'];
+_i = _i + [['','',190,5,-1,2,0,0.88,'British',[]]];
+
+_c = _c + ['BAF_Soldier_AMG_MTP'];
+_i = _i + [['','',190,6,-1,1,0,0.87,'British',[]]];
+
+_c = _c + ['BAF_Soldier_AT_MTP'];
+_i = _i + [['','',360,6,-1,2,0,0.88,'British',[]]];
+
+_c = _c + ['BAF_Soldier_HAT_MTP'];
+_i = _i + [['','',810,6,-1,3,0,0.89,'British',[]]];
+
+_c = _c + ['BAF_Soldier_AR_MTP'];
+_i = _i + [['','',210,5,-1,2,0,0.85,'British',[]]];
+
+_c = _c + ['BAF_crewman_MTP'];
+_i = _i + [['','',125,5,-1,0,0,0.83,'British',[]]];
+
+_c = _c + ['BAF_Soldier_EN_MTP'];
+_i = _i + [['','',230,5,-1,0,0,0.84,'British',[]]];
+
+_c = _c + ['BAF_Soldier_GL_MTP'];
+_i = _i + [['','',170,5,-1,0,0,0.84,'British',[]]];
+
+_c = _c + ['BAF_Soldier_FAC_MTP'];
+_i = _i + [['','',375,6,-1,3,0,0.98,'British',[]]];
+
+_c = _c + ['BAF_Soldier_MG_MTP'];
+_i = _i + [['','',210,5,-1,0,0,0.85,'British',[]]];
+
+_c = _c + ['BAF_Soldier_scout_MTP'];
+_i = _i + [['','',340,6,-1,2,0,0.9,'British',[]]];
+
+_c = _c + ['BAF_Soldier_Marksman_MTP'];
+_i = _i + [['','',370,6,-1,3,0,0.91,'British',[]]];
+
+_c = _c + ['BAF_Soldier_Medic_MTP'];
+_i = _i + [['','',200,6,-1,0,0,0.86,'British',[]]];
+
+_c = _c + ['BAF_Soldier_Officer_MTP'];
+_i = _i + [['','',265,6,-1,2,0,0.86,'British',[]]];
+
+_c = _c + ['BAF_Pilot_MTP'];
+_i = _i + [['','',125,6,-1,0,0,0.84,'British',[]]];
+
+_c = _c + ['BAF_Soldier_MTP'];
+_i = _i + [['','',155,6,-1,0,0,0.85,'British',[]]];
+
+_c = _c + ['BAF_ASoldier_MTP'];
+_i = _i + [['','',160,6,-1,0,0,0.85,'British',[]]];
+
+_c = _c + ['BAF_Soldier_L_MTP'];
+_i = _i + [['','',130,6,-1,0,0,0.85,'British',[]]];
+
+_c = _c + ['BAF_Soldier_N_MTP'];
+_i = _i + [['','',175,6,-1,1,0,0.86,'British',[]]];
+
+_c = _c + ['BAF_Soldier_SL_MTP'];
+_i = _i + [['','',235,6,-1,2,0,0.92,'British',[]]];
+
+_c = _c + ['BAF_Soldier_SniperN_MTP'];
+_i = _i + [['','',390,6,-1,3,0,0.9,'British',[]]];
+
+_c = _c + ['BAF_Soldier_SniperH_MTP'];
+_i = _i + [['','',420,6,-1,2,0,0.9,'British',[]]];
+
+_c = _c + ['BAF_Soldier_Sniper_MTP'];
+_i = _i + [['','',395,6,-1,2,0,0.9,'British',[]]];
+
+_c = _c + ['BAF_Soldier_spotter_MTP'];
+_i = _i + [['','',340,6,-1,2,0,0.88,'British',[]]];
+
+_c = _c + ['BAF_Soldier_spotterN_MTP'];
+_i = _i + [['','',350,6,-1,2,0,0.88,'British',[]]];
+
+_c = _c + ['BAF_Soldier_TL_MTP'];
+_i = _i + [['','',245,6,-1,1,0,0.91,'British',[]]];
+
+/* Air Vehicles */
+_c = _c + ['BAF_Merlin_HC3_D'];
+_i = _i + [['','',21000,45,-2,0,3,0,'British',[]]];
+
+_c = _c + ['CH_47F_BAF'];
+_i = _i + [['','',20000,40,-2,0,3,0,'British',[]]];
+
+_c = _c + ['BAF_Apache_AH1_D'];
+_i = _i + [['','',82500,60,-2,2,3,0,'British',[]]];
+
+_c = _c + ['AW159_Lynx_BAF'];
+_i = _i + [['','',75000,35,-2,1,3,0,'British',[]]];
+
+for '_z' from 0 to (count _c)-1 do {
+ if (isClass (configFile >> 'CfgVehicles' >> (_c select _z))) then {
+ _get = (_c select _z) Call GetNamespace;
+ if (isNil '_get') then {
+ if ((_i select _z) select 0 == '') then {(_i select _z) set [0, [_c select _z,'displayName'] Call GetConfigInfo]};
+ if (typeName ((_i select _z) select 4) == 'SCALAR') then {
+ if (((_i select _z) select 4) == -2) then {
+ _ret = (_c select _z) Call Compile preprocessFile "Common\Functions\Common_GetConfigVehicleCrewSlot.sqf";
+ (_i select _z) set [4, _ret select 0];
+ (_i select _z) set [9, _ret select 1];
+ };
+ };
+ if (WF_Debug) then {(_i select _z) set [3,1]};
+ _p = if ((_c select _z) isKindOf 'Man') then {'portrait'} else {'picture'};
+ (_i select _z) set [1, [_c select _z,_p] Call GetConfigInfo];
+ [_c select _z,_i select _z] Call SetNamespace;
+ } else {
+ diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_BAF: Duplicated Element found '%1'",(_c select _z),diag_frameno,diag_tickTime];
+ };
+ } else {
+ diag_log Format ["[WFBE (ERROR)][frameno:%2 | ticktime:%3] Core_BAF: Element '%1' is not a valid class.",(_c select _z),diag_frameno,diag_tickTime];
+ };
+};
+
+diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_BAF: Initialization (%1 Elements) - [Done]",count _c,diag_frameno,diag_tickTime]; \ No newline at end of file
diff --git a/Common/Config/Core/Core_BAFD.sqf b/Common/Config/Core/Core_BAFD.sqf
new file mode 100644
index 0000000..0d44fbf
--- /dev/null
+++ b/Common/Config/Core/Core_BAFD.sqf
@@ -0,0 +1,124 @@
+/* BAF (Desert) Configuration */
+private ["_c","_get","_i","_p"];
+
+_c = [];
+_i = [];
+
+/* Infantry */
+_c = _c + ['BAF_Soldier_AA_DDPM'];
+_i = _i + [['','',410,6,-1,2,0,0.88,'British (Desert)',[]]];
+
+_c = _c + ['BAF_Soldier_AAA_DDPM'];
+_i = _i + [['','',440,6,-1,2,0,0.87,'British (Desert)',[]]];
+
+_c = _c + ['BAF_Soldier_AAT_DDPM'];
+_i = _i + [['','',190,4,-1,2,0,0.84,'British (Desert)',[]]];
+
+_c = _c + ['BAF_Soldier_AHAT_DDPM'];
+_i = _i + [['','',190,6,-1,3,0,0.85,'British (Desert)',[]]];
+
+_c = _c + ['BAF_Soldier_AAR_DDPM'];
+_i = _i + [['','',190,5,-1,2,0,0.88,'British (Desert)',[]]];
+
+_c = _c + ['BAF_Soldier_AMG_DDPM'];
+_i = _i + [['','',190,6,-1,1,0,0.87,'British (Desert)',[]]];
+
+_c = _c + ['BAF_Soldier_AT_DDPM'];
+_i = _i + [['','',360,6,-1,2,0,0.87,'British (Desert)',[]]];
+
+_c = _c + ['BAF_Soldier_HAT_DDPM'];
+_i = _i + [['','',810,6,-1,3,0,0.89,'British (Desert)',[]]];
+
+_c = _c + ['BAF_Soldier_AR_DDPM'];
+_i = _i + [['','',210,5,-1,2,0,0.85,'British (Desert)',[]]];
+
+_c = _c + ['BAF_crewman_DDPM'];
+_i = _i + [['','',125,5,-1,0,0,0.83,'British (Desert)',[]]];
+
+_c = _c + ['BAF_Soldier_EN_DDPM'];
+_i = _i + [['','',230,5,-1,0,0,0.84,'British (Desert)',[]]];
+
+_c = _c + ['BAF_Soldier_GL_DDPM'];
+_i = _i + [['','',170,5,-1,0,0,0.84,'British (Desert)',[]]];
+
+_c = _c + ['BAF_Soldier_FAC_DDPM'];
+_i = _i + [['','',375,6,-1,3,0,0.98,'British (Desert)',[]]];
+
+_c = _c + ['BAF_Soldier_MG_DDPM'];
+_i = _i + [['','',210,5,-1,0,0,0.85,'British (Desert)',[]]];
+
+_c = _c + ['BAF_Soldier_scout_DDPM'];
+_i = _i + [['','',340,6,-1,2,0,0.9,'British (Desert)',[]]];
+
+_c = _c + ['BAF_Soldier_Marksman_DDPM'];
+_i = _i + [['','',370,6,-1,3,0,0.91,'British (Desert)',[]]];
+
+_c = _c + ['BAF_Soldier_Medic_DDPM'];
+_i = _i + [['','',200,6,-1,0,0,0.86,'British (Desert)',[]]];
+
+_c = _c + ['BAF_Soldier_Officer_DDPM'];
+_i = _i + [['','',265,6,-1,2,0,0.86,'British (Desert)',[]]];
+
+_c = _c + ['BAF_Pilot_DDPM'];
+_i = _i + [['','',125,6,-1,0,0,0.84,'British (Desert)',[]]];
+
+_c = _c + ['BAF_Soldier_DDPM'];
+_i = _i + [['','',155,6,-1,0,0,0.85,'British (Desert)',[]]];
+
+_c = _c + ['BAF_ASoldier_DDPM'];
+_i = _i + [['','',160,6,-1,0,0,0.85,'British (Desert)',[]]];
+
+_c = _c + ['BAF_Soldier_L_DDPM'];
+_i = _i + [['','',130,6,-1,0,0,0.85,'British (Desert)',[]]];
+
+_c = _c + ['BAF_Soldier_N_DDPM'];
+_i = _i + [['','',175,6,-1,1,0,0.86,'British (Desert)',[]]];
+
+_c = _c + ['BAF_Soldier_SL_DDPM'];
+_i = _i + [['','',235,6,-1,2,0,0.92,'British (Desert)',[]]];
+
+_c = _c + ['BAF_Soldier_TL_DDPM'];
+_i = _i + [['','',245,6,-1,1,0,0.91,'British (Desert)',[]]];
+
+/* Light Vehicles */
+_c = _c + ['BAF_ATV_D'];
+_i = _i + [['','',175,12,-2,0,1,0,'British (Desert)',[]]];
+
+_c = _c + ['BAF_Offroad_D'];
+_i = _i + [['','',375,13,-2,0,1,0,'British (Desert)',[]]];
+
+_c = _c + ['BAF_Jackal2_GMG_D'];
+_i = _i + [['','',965,20,-2,1,1,0,'British (Desert)',[]]];
+
+_c = _c + ['BAF_Jackal2_L2A1_D'];
+_i = _i + [['','',725,21,-2,0,1,0,'British (Desert)',[]]];
+
+/* Heavy Vehicles */
+_c = _c + ['BAF_FV510_D'];
+_i = _i + [['','',4950,30,-2,2,2,0,'British (Desert)',[]]];
+
+for '_z' from 0 to (count _c)-1 do {
+ if (isClass (configFile >> 'CfgVehicles' >> (_c select _z))) then {
+ _get = (_c select _z) Call GetNamespace;
+ if (isNil '_get') then {
+ if ((_i select _z) select 0 == '') then {(_i select _z) set [0, [_c select _z,'displayName'] Call GetConfigInfo]};
+ if (typeName ((_i select _z) select 4) == 'SCALAR') then {
+ if (((_i select _z) select 4) == -2) then {
+ _ret = (_c select _z) Call Compile preprocessFile "Common\Functions\Common_GetConfigVehicleCrewSlot.sqf";
+ (_i select _z) set [4, _ret select 0];
+ (_i select _z) set [9, _ret select 1];
+ };
+ };
+ if (WF_Debug) then {(_i select _z) set [3,1]};
+ _p = if ((_c select _z) isKindOf 'Man') then {'portrait'} else {'picture'};
+ (_i select _z) set [1, [_c select _z,_p] Call GetConfigInfo];
+ [_c select _z,_i select _z] Call SetNamespace;
+ } else {
+ diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_BAFD: Duplicated Element found '%1'",(_c select _z),diag_frameno,diag_tickTime];
+ };
+ } else {
+ diag_log Format ["[WFBE (ERROR)][frameno:%2 | ticktime:%3] Core_BAFD: Element '%1' is not a valid class.",(_c select _z),diag_frameno,diag_tickTime];
+ };
+};
+
+diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_BAFD: Initialization (%1 Elements) - [Done]",count _c,diag_frameno,diag_tickTime]; \ No newline at end of file
diff --git a/Common/Config/Core/Core_BAFW.sqf b/Common/Config/Core/Core_BAFW.sqf
new file mode 100644
index 0000000..138e73d
--- /dev/null
+++ b/Common/Config/Core/Core_BAFW.sqf
@@ -0,0 +1,152 @@
+/* BAF (Woodland) Configuration */
+private ["_c","_get","_i","_p"];
+
+_c = [];
+_i = [];
+
+/* Infantry */
+_c = _c + ['BAF_Soldier_AA_W'];
+_i = _i + [['','',410,6,-1,2,0,0.88,'British (Woodland)',[]]];
+
+_c = _c + ['BAF_Soldier_AAA_W'];
+_i = _i + [['','',190,6,-1,2,0,0.87,'British (Woodland)',[]]];
+
+_c = _c + ['BAF_Soldier_AAT_W'];
+_i = _i + [['','',190,4,-1,2,0,0.84,'British (Woodland)',[]]];
+
+_c = _c + ['BAF_Soldier_AHAT_W'];
+_i = _i + [['','',190,6,-1,3,0,0.85,'British (Woodland)',[]]];
+
+_c = _c + ['BAF_Soldier_AAR_W'];
+_i = _i + [['','',190,5,-1,2,0,0.86,'British (Woodland)',[]]];
+
+_c = _c + ['BAF_Soldier_AMG_W'];
+_i = _i + [['','',190,6,-1,1,0,0.87,'British (Woodland)',[]]];
+
+_c = _c + ['BAF_Soldier_AT_W'];
+_i = _i + [['','',360,6,-1,2,0,0.87,'British (Woodland)',[]]];
+
+_c = _c + ['BAF_Soldier_HAT_W'];
+_i = _i + [['','',810,6,-1,3,0,0.9,'British (Woodland)',[]]];
+
+_c = _c + ['BAF_Soldier_AR_W'];
+_i = _i + [['','',210,5,-1,2,0,0.85,'British (Woodland)',[]]];
+
+_c = _c + ['BAF_crewman_W'];
+_i = _i + [['','',125,5,-1,0,0,0.83,'British (Woodland)',[]]];
+
+_c = _c + ['BAF_Soldier_EN_W'];
+_i = _i + [['','',230,5,-1,0,0,0.84,'British (Woodland)',[]]];
+
+_c = _c + ['BAF_Soldier_GL_W'];
+_i = _i + [['','',170,5,-1,0,0,0.84,'British (Woodland)',[]]];
+
+_c = _c + ['BAF_Soldier_FAC_W'];
+_i = _i + [['','',375,6,-1,3,0,0.98,'British (Woodland)',[]]];
+
+_c = _c + ['BAF_Soldier_MG_W'];
+_i = _i + [['','',210,5,-1,0,0,0.85,'British (Woodland)',[]]];
+
+_c = _c + ['BAF_Soldier_scout_W'];
+_i = _i + [['','',340,6,-1,2,0,0.9,'British (Woodland)',[]]];
+
+_c = _c + ['BAF_Soldier_Marksman_W'];
+_i = _i + [['','',370,6,-1,3,0,0.91,'British (Woodland)',[]]];
+
+_c = _c + ['BAF_Soldier_Medic_W'];
+_i = _i + [['','',200,6,-1,0,0,0.86,'British (Woodland)',[]]];
+
+_c = _c + ['BAF_Soldier_Officer_W'];
+_i = _i + [['','',265,6,-1,2,0,0.86,'British (Woodland)',[]]];
+
+_c = _c + ['BAF_Pilot_W'];
+_i = _i + [['','',125,6,-1,0,0,0.84,'British (Woodland)',[]]];
+
+_c = _c + ['BAF_Soldier_W'];
+_i = _i + [['','',155,6,-1,0,0,0.85,'British (Woodland)',[]]];
+
+_c = _c + ['BAF_ASoldier_W'];
+_i = _i + [['','',160,6,-1,0,0,0.85,'British (Woodland)',[]]];
+
+_c = _c + ['BAF_Soldier_L_W'];
+_i = _i + [['','',130,6,-1,0,0,0.85,'British (Woodland)',[]]];
+
+_c = _c + ['BAF_Soldier_N_W'];
+_i = _i + [['','',175,6,-1,1,0,0.86,'British (Woodland)',[]]];
+
+_c = _c + ['BAF_Soldier_SL_W'];
+_i = _i + [['','',235,6,-1,2,0,0.92,'British (Woodland)',[]]];
+
+_c = _c + ['BAF_Soldier_SniperN_W'];
+_i = _i + [['','',390,6,-1,3,0,0.9,'British (Woodland)',[]]];
+
+_c = _c + ['BAF_Soldier_SniperH_W'];
+_i = _i + [['','',420,6,-1,2,0,0.9,'British (Woodland)',[]]];
+
+_c = _c + ['BAF_Soldier_Sniper_W'];
+_i = _i + [['','',395,6,-1,2,0,0.9,'British (Woodland)',[]]];
+
+_c = _c + ['BAF_Soldier_spotter_W'];
+_i = _i + [['','',340,6,-1,2,0,0.88,'British (Woodland)',[]]];
+
+_c = _c + ['BAF_Soldier_spotterN_W'];
+_i = _i + [['','',350,6,-1,2,0,0.88,'British (Woodland)',[]]];
+
+_c = _c + ['BAF_Soldier_TL_W'];
+_i = _i + [['','',245,6,-1,1,0,0.91,'British (Woodland)',[]]];
+
+/* Light Vehicles */
+_c = _c + ['BAF_ATV_W'];
+_i = _i + [['','',175,12,-2,0,1,0,'British (Woodland)',[]]];
+
+_c = _c + ['BAF_Offroad_W'];
+_i = _i + [['','',375,13,-2,0,1,0,'British (Woodland)',[]]];
+
+_c = _c + ['BAF_Jackal2_GMG_W'];
+_i = _i + [['','',965,20,-2,1,1,0,'British (Woodland)',[]]];
+
+_c = _c + ['BAF_Jackal2_L2A1_W'];
+_i = _i + [['','',725,21,-2,0,1,0,'British (Woodland)',[]]];
+
+/* Heavy Vehicles */
+_c = _c + ['BAF_FV510_W'];
+_i = _i + [['','',4950,30,-2,2,2,0,'British (Woodland)',[]]];
+
+/* Static Defenses */
+_c = _c + ['BAF_GPMG_Minitripod_W'];
+_i = _i + [['','',225,0,1,0,'Defense',0,'British (Woodland)',[]]];
+
+_c = _c + ['BAF_GMG_Tripod_W'];
+_i = _i + [['','',250,0,1,0,'Defense',0,'British (Woodland)',[]]];
+
+_c = _c + ['BAF_L2A1_Minitripod_W'];
+_i = _i + [['','',300,0,1,0,'Defense',0,'British (Woodland)',[]]];
+
+_c = _c + ['BAF_L2A1_Tripod_W'];
+_i = _i + [['','',325,0,1,0,'Defense',0,'British (Woodland)',[]]];
+
+for '_z' from 0 to (count _c)-1 do {
+ if (isClass (configFile >> 'CfgVehicles' >> (_c select _z))) then {
+ _get = (_c select _z) Call GetNamespace;
+ if (isNil '_get') then {
+ if ((_i select _z) select 0 == '') then {(_i select _z) set [0, [_c select _z,'displayName'] Call GetConfigInfo]};
+ if (typeName ((_i select _z) select 4) == 'SCALAR') then {
+ if (((_i select _z) select 4) == -2) then {
+ _ret = (_c select _z) Call Compile preprocessFile "Common\Functions\Common_GetConfigVehicleCrewSlot.sqf";
+ (_i select _z) set [4, _ret select 0];
+ (_i select _z) set [9, _ret select 1];
+ };
+ };
+ if (WF_Debug) then {(_i select _z) set [3,1]};
+ _p = if ((_c select _z) isKindOf 'Man') then {'portrait'} else {'picture'};
+ (_i select _z) set [1, [_c select _z,_p] Call GetConfigInfo];
+ [_c select _z,_i select _z] Call SetNamespace;
+ } else {
+ diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_BAFW: Duplicated Element found '%1'",(_c select _z),diag_frameno,diag_tickTime];
+ };
+ } else {
+ diag_log Format ["[WFBE (ERROR)][frameno:%2 | ticktime:%3] Core_BAFW: Element '%1' is not a valid class.",(_c select _z),diag_frameno,diag_tickTime];
+ };
+};
+
+diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_BAFW: Initialization (%1 Elements) - [Done]",count _c,diag_frameno,diag_tickTime]; \ No newline at end of file
diff --git a/Common/Config/Core/Core_CDF.sqf b/Common/Config/Core/Core_CDF.sqf
new file mode 100644
index 0000000..b0e8cae
--- /dev/null
+++ b/Common/Config/Core/Core_CDF.sqf
@@ -0,0 +1,180 @@
+/* CDF Configuration */
+private ["_c","_get","_i","_p"];
+
+_c = [];
+_i = [];
+
+/* Infantry */
+_c = _c + ['CDF_Soldier'];
+_i = _i + [['','',150,4,-1,0,0,0.65,'CDF',[]]];
+
+_c = _c + ['CDF_Soldier_Engineer'];
+_i = _i + [['','',225,5,-1,0,0,0.66,'CDF',[]]];
+
+_c = _c + ['CDF_Soldier_Light'];
+_i = _i + [['','',175,4,-1,0,0,0.65,'CDF',[]]];
+
+_c = _c + ['CDF_Soldier_GL'];
+_i = _i + [['','',180,4,-1,0,0,0.65,'CDF',[]]];
+
+_c = _c + ['CDF_Soldier_Militia'];
+_i = _i + [['','',160,3,-1,0,0,0.62,'CDF',[]]];
+
+_c = _c + ['CDF_Soldier_Medic'];
+_i = _i + [['','',210,4,-1,0,0,0.69,'CDF',[]]];
+
+_c = _c + ['CDF_Soldier_Sniper'];
+_i = _i + [['','',230,5,-1,1,0,0.72,'CDF',[]]];
+
+_c = _c + ['CDF_Soldier_Spotter'];
+_i = _i + [['','',240,6,-1,1,0,0.71,'CDF',[]]];
+
+_c = _c + ['CDF_Soldier_Marksman'];
+_i = _i + [['','',235,7,-1,3,0,0.69,'CDF',[]]];
+
+_c = _c + ['CDF_Soldier_RPG'];
+_i = _i + [['','',250,6,-1,1,0,0.64,'CDF',[]]];
+
+_c = _c + ['CDF_Soldier_Strela'];
+_i = _i + [['','',400,6,-1,2,0,0.68,'CDF',[]]];
+
+_c = _c + ['CDF_Soldier_AR'];
+_i = _i + [['','',165,6,-1,1,0,0.64,'CDF',[]]];
+
+_c = _c + ['CDF_Soldier_MG'];
+_i = _i + [['','',180,5,-1,0,0,0.65,'CDF',[]]];
+
+_c = _c + ['CDF_Soldier_TL'];
+_i = _i + [['','',210,6,-1,2,0,0.73,'CDF',[]]];
+
+_c = _c + ['CDF_Soldier_Officer'];
+_i = _i + [['','',230,7,-1,1,0,0.74,'CDF',[]]];
+
+_c = _c + ['CDF_Commander'];
+_i = _i + [['','',280,7,-1,3,0,0.75,'CDF',[]]];
+
+_c = _c + ['CDF_Soldier_Pilot'];
+_i = _i + [['','',130,5,-1,0,0,0.62,'CDF',[]]];
+
+_c = _c + ['CDF_Soldier_Crew'];
+_i = _i + [['','',130,5,-1,0,0,0.63,'CDF',[]]];
+
+/* Light Vehicles */
+_c = _c + ['UAZ_CDF'];
+_i = _i + [['','',150,15,-2,0,1,0,'CDF',[]]];
+
+_c = _c + ['UAZ_MG_CDF'];
+_i = _i + [['','',310,17,-2,0,1,0,'CDF',[]]];
+
+_c = _c + ['UAZ_AGS30_CDF'];
+_i = _i + [['','',475,25,-2,1,1,0,'CDF',[]]];
+
+_c = _c + ['Ural_CDF'];
+_i = _i + [['','',300,20,-2,0,1,0,'CDF',[]]];
+
+_c = _c + ['WarfareSalvageTruck_CDF'];
+_i = _i + [['','',450,18,-2,0,1,0,'CDF',[]]];
+
+_c = _c + ['UralRepair_CDF'];
+_i = _i + [['','',525,21,-2,2,1,0,'CDF',[]]];
+
+_c = _c + ['UralReammo_CDF'];
+_i = _i + [['','',550,21,-2,1,1,0,'CDF',[]]];
+
+_c = _c + ['UralRefuel_CDF'];
+_i = _i + [['','',500,21,-2,1,1,0,'CDF',[]]];
+
+_c = _c + ['WarfareSupplyTruck_CDF'];
+_i = _i + [['','',550,21,-2,0,1,0,'CDF',[]]];
+
+_c = _c + ['BRDM2_CDF'];
+_i = _i + [['','',1100,25,-2,1,1,0,'CDF',[]]];
+
+_c = _c + ['BRDM2_ATGM_CDF'];
+_i = _i + [['','',1650,25,-2,2,1,0,'CDF',[]]];
+
+_c = _c + ['Ural_ZU23_CDF'];
+_i = _i + [['','',1750,20,-2,2,1,0,'CDF',[]]];
+
+_c = _c + ['GRAD_CDF'];
+_i = _i + [['','',4200,35,-2,3,1,0,'CDF',[]]];
+
+/* Heavy Vehicles */
+_c = _c + ['BMP2_Ambul_CDF'];
+_i = _i + [['','',950,20,-2,0,2,0,'CDF',[]]];
+
+_c = _c + ['BMP2_CDF'];
+_i = _i + [['','',2600,30,-2,1,2,0,'CDF',[]]];
+
+_c = _c + ['ZSU_CDF'];
+_i = _i + [['','',3400,35,-2,2,2,0,'CDF',[]]];
+
+_c = _c + ['T72_CDF'];
+_i = _i + [['','',4900,35,-2,3,2,0,'CDF',[]]];
+
+/* Air Vehicles */
+_c = _c + ['Mi17_CDF'];
+_i = _i + [['','',15000,35,-2,0,3,0,'CDF',[]]];
+
+_c = _c + ['Mi17_medevac_CDF'];
+_i = _i + [['','',18000,35,-2,1,3,0,'CDF',[]]];
+
+_c = _c + ['Mi24_D'];
+_i = _i + [['','',65000,40,-2,2,3,0,'CDF',[]]];
+
+_c = _c + ['Su25_CDF'];
+_i = _i + [['','',92000,55,-2,3,3,0,'CDF',[]]];
+
+/* Static Defenses */
+_c = _c + ['CDF_WarfareBMGNest_PK'];
+_i = _i + [['','',300,0,1,0,'Defense',0,'CDF',[]]];
+
+_c = _c + ['DSHkM_Mini_TriPod_CDF'];
+_i = _i + [['','',200,0,1,0,'Defense',0,'CDF',[]]];
+
+_c = _c + ['DSHKM_CDF'];
+_i = _i + [['','',225,0,1,0,'Defense',0,'CDF',[]]];
+
+_c = _c + ['SearchLight_CDF'];
+_i = _i + [['','',125,0,1,0,'Defense',0,'CDF',[]]];
+
+_c = _c + ['AGS_CDF'];
+_i = _i + [['','',700,0,1,0,'Defense',0,'CDF',[]]];
+
+_c = _c + ['SPG9_CDF'];
+_i = _i + [['','',475,0,1,0,'Defense',0,'CDF',[]]];
+
+_c = _c + ['ZU23_CDF'];
+_i = _i + [['','',945,0,1,0,'Defense',0,'CDF',[]]];
+
+_c = _c + ['2b14_82mm_CDF'];
+_i = _i + [['Podnos 2B14','',1150,0,1,0,'Defense',0,'CDF',[]]];
+
+_c = _c + ['D30_CDF'];
+_i = _i + [['','',2250,0,1,0,'Defense',0,'CDF',[]]];
+
+for '_z' from 0 to (count _c)-1 do {
+ if (isClass (configFile >> 'CfgVehicles' >> (_c select _z))) then {
+ _get = (_c select _z) Call GetNamespace;
+ if (isNil '_get') then {
+ if ((_i select _z) select 0 == '') then {(_i select _z) set [0, [_c select _z,'displayName'] Call GetConfigInfo]};
+ if (typeName ((_i select _z) select 4) == 'SCALAR') then {
+ if (((_i select _z) select 4) == -2) then {
+ _ret = (_c select _z) Call Compile preprocessFile "Common\Functions\Common_GetConfigVehicleCrewSlot.sqf";
+ (_i select _z) set [4, _ret select 0];
+ (_i select _z) set [9, _ret select 1];
+ };
+ };
+ if (WF_Debug) then {(_i select _z) set [3,1]};
+ _p = if ((_c select _z) isKindOf 'Man') then {'portrait'} else {'picture'};
+ (_i select _z) set [1, [_c select _z,_p] Call GetConfigInfo];
+ [_c select _z,_i select _z] Call SetNamespace;
+ } else {
+ diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_CDF: Duplicated Element found '%1'",(_c select _z),diag_frameno,diag_tickTime];
+ };
+ } else {
+ diag_log Format ["[WFBE (ERROR)][frameno:%2 | ticktime:%3] Core_CDF: Element '%1' is not a valid class.",(_c select _z),diag_frameno,diag_tickTime];
+ };
+};
+
+diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_CDF: Initialization (%1 Elements) - [Done]",count _c,diag_frameno,diag_tickTime]; \ No newline at end of file
diff --git a/Common/Config/Core/Core_CIV.sqf b/Common/Config/Core/Core_CIV.sqf
new file mode 100644
index 0000000..3eaf2c6
--- /dev/null
+++ b/Common/Config/Core/Core_CIV.sqf
@@ -0,0 +1,175 @@
+/* CIV Configuration */
+private ["_c","_get","_i","_p"];
+
+_c = [];
+_i = [];
+
+/* Infantry */
+_c = _c + ['Worker1'];
+_i = _i + [['','',375,4,-1,0,0,0.4,'Civilians',[]]];
+
+_c = _c + ['Worker2'];
+_i = _i + [['','',375,4,-1,0,0,0.4,'Civilians',[]]];
+
+_c = _c + ['Worker3'];
+_i = _i + [['','',375,4,-1,0,0,0.4,'Civilians',[]]];
+
+_c = _c + ['Worker4'];
+_i = _i + [['','',375,4,-1,0,0,0.4,'Civilians',[]]];
+
+/* Light Vehicles */
+_c = _c + ['MMT_Civ'];
+_i = _i + [['','',50,8,-2,0,1,0,'Civilians',[]]];
+
+_c = _c + ['TT650_Civ'];
+_i = _i + [['','',100,12,-2,0,1,0,'Civilians',[]]];
+
+_c = _c + ['Tractor'];
+_i = _i + [['','',150,15,-2,0,1,0,'Civilians',[]]];
+
+_c = _c + ['Lada1'];
+_i = _i + [['','',175,18,-2,0,1,0,'Civilians',[]]];
+
+_c = _c + ['Lada2'];
+_i = _i + [['','',175,18,-2,0,1,0,'Civilians',[]]];
+
+_c = _c + ['LadaLM'];
+_i = _i + [['','',180,20,-2,0,1,0,'Civilians',[]]];
+
+_c = _c + ['SkodaBlue'];
+_i = _i + [['','',190,17,-2,0,1,0,'Civilians',[]]];
+
+_c = _c + ['SkodaRed'];
+_i = _i + [['','',190,17,-2,0,1,0,'Civilians',[]]];
+
+_c = _c + ['car_sedan'];
+_i = _i + [['','',200,20,-2,0,1,0,'Civilians',[]]];
+
+_c = _c + ['car_hatchback'];
+_i = _i + [['','',220,20,-2,0,1,0,'Civilians',[]]];
+
+_c = _c + ['datsun1_civil_1_open'];
+_i = _i + [['','',250,22,-2,0,1,0,'Civilians',[]]];
+
+_c = _c + ['datsun1_civil_2_covered'];
+_i = _i + [['','',250,22,-2,0,1,0,'Civilians',[]]];
+
+_c = _c + ['datsun1_civil_3_open'];
+_i = _i + [['','',250,22,-2,0,1,0,'Civilians',[]]];
+
+_c = _c + ['VWGolf'];
+_i = _i + [['','',270,23,-2,0,1,0,'Civilians',[]]];
+
+_c = _c + ['hilux1_civil_1_open'];
+_i = _i + [['','',340,25,-2,0,1,0,'Civilians',[]]];
+
+_c = _c + ['hilux1_civil_2_covered'];
+_i = _i + [['','',340,25,-2,0,1,0,'Civilians',[]]];
+
+_c = _c + ['V3S_Civ'];
+_i = _i + [['','',380,22,-2,0,1,0,'Civilians',[]]];
+
+_c = _c + ['UralCivil'];
+_i = _i + [['','',390,25,-2,0,1,0,'Civilians',[]]];
+
+_c = _c + ['Ikarus'];
+_i = _i + [['','',420,25,-2,0,1,0,'Civilians',[]]];
+
+if (paramDLCPMC) then
+{
+ _c = _c + ['ArmoredSUV_PMC'];
+ _i = _i + [['','',1150,20,2,1,1,0,'Civilians']];
+};
+
+/* Defense Structures */
+_c = _c + ['Land_HBarrier3'];
+_i = _i + [['','',20,0,0,0,'Fortification',0,'Civilians',[]]];
+
+_c = _c + ['Land_HBarrier5'];
+_i = _i + [['','',30,0,0,0,'Fortification',0,'Civilians',[]]];
+
+_c = _c + ['Land_HBarrier_large'];
+_i = _i + [['','',50,0,0,0,'Fortification',0,'Civilians',[]]];
+
+_c = _c + ['Land_fort_bagfence_long'];
+_i = _i + [['','',10,0,0,0,'Fortification',0,'Civilians',[]]];
+
+_c = _c + ['Land_fort_bagfence_corner'];
+_i = _i + [['','',8,0,0,0,'Fortification',0,'Civilians',[]]];
+
+_c = _c + ['Land_fort_bagfence_round'];
+_i = _i + [['','',12,0,0,0,'Fortification',0,'Civilians',[]]];
+
+_c = _c + ['Hhedgehog_concreteBig'];
+_i = _i + [['','',95,0,0,0,'Fortification',0,'Civilians',[]]];
+
+_c = _c + ['Hedgehog'];
+_i = _i + [['','',5,0,0,0,'Fortification',0,'Civilians',[]]];
+
+_c = _c + ['HeliH'];
+_i = _i + [['','',15,0,0,0,'Strategic',0,'Civilians',[]]];
+
+_c = _c + ['MASH'];
+_i = _i + [['','',30,0,0,0,'Strategic',0,'Civilians',[]]];
+
+_c = _c + ['Land_Campfire'];
+_i = _i + [['','',3,0,0,0,'Strategic',0,'Civilians',[]]];
+
+_c = _c + ['Base_WarfareBBarrier5x'];
+_i = _i + [['','',15,0,0,0,'Fortification',0,'Civilians',[]]];
+
+_c = _c + ['Base_WarfareBBarrier10x'];
+_i = _i + [['','',25,0,0,0,'Fortification',0,'Civilians',[]]];
+
+_c = _c + ['Base_WarfareBBarrier10xTall'];
+_i = _i + [['','',50,0,0,0,'Fortification',0,'Civilians',[]]];
+
+_c = _c + ['Land_fortified_nest_small'];
+_i = _i + [['','',40,0,0,0,'Fortification',0,'Civilians',[]]];
+
+_c = _c + ['Land_fortified_nest_big'];
+_i = _i + [['','',100,0,0,0,'Fortification',0,'Civilians',[]]];
+
+_c = _c + ['Land_Fort_Watchtower'];
+_i = _i + [['','',125,0,0,0,'Fortification',0,'Civilians',[]]];
+
+_c = _c + ['Land_fort_rampart'];
+_i = _i + [['','',30,0,0,0,'Fortification',0,'Civilians',[]]];
+
+_c = _c + ['Land_fort_artillery_nest'];
+_i = _i + [['','',65,0,0,0,'Fortification',0,'Civilians',[]]];
+
+_c = _c + ['Sign_Danger'];
+_i = _i + [[localize 'STR_WF_Minefield','',1200,0,0,0,'Strategic',0,'Civilians',[]]];
+
+_c = _c + ['Fort_RazorWire'];
+_i = _i + [['','',25,0,0,0,'Fortification',0,'Civilians',[]]];
+
+_c = _c + ['Land_Ind_IlluminantTower'];
+_i = _i + [['','',200,0,0,0,'Fortification',0,'Civilians',[]]];
+
+for '_z' from 0 to (count _c)-1 do {
+ if (isClass (configFile >> 'CfgVehicles' >> (_c select _z))) then {
+ _get = (_c select _z) Call GetNamespace;
+ if (isNil '_get') then {
+ if ((_i select _z) select 0 == '') then {(_i select _z) set [0, [_c select _z,'displayName'] Call GetConfigInfo]};
+ if (typeName ((_i select _z) select 4) == 'SCALAR') then {
+ if (((_i select _z) select 4) == -2) then {
+ _ret = (_c select _z) Call Compile preprocessFile "Common\Functions\Common_GetConfigVehicleCrewSlot.sqf";
+ (_i select _z) set [4, _ret select 0];
+ (_i select _z) set [9, _ret select 1];
+ };
+ };
+ if (WF_Debug) then {(_i select _z) set [3,1]};
+ _p = if ((_c select _z) isKindOf 'Man') then {'portrait'} else {'picture'};
+ (_i select _z) set [1, [_c select _z,_p] Call GetConfigInfo];
+ [_c select _z,_i select _z] Call SetNamespace;
+ } else {
+ diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_CIV: Duplicated Element found '%1'",(_c select _z),diag_frameno,diag_tickTime];
+ };
+ } else {
+ diag_log Format ["[WFBE (ERROR)][frameno:%2 | ticktime:%3] Core_CIV: Element '%1' is not a valid class.",(_c select _z),diag_frameno,diag_tickTime];
+ };
+};
+
+diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_CIV: Initialization (%1 Elements) - [Done]",count _c,diag_frameno,diag_tickTime]; \ No newline at end of file
diff --git a/Common/Config/Core/Core_DeltaForce.sqf b/Common/Config/Core/Core_DeltaForce.sqf
new file mode 100644
index 0000000..c7a440c
--- /dev/null
+++ b/Common/Config/Core/Core_DeltaForce.sqf
@@ -0,0 +1,65 @@
+/* Spetsnaz Configuration */
+private ["_c","_get","_i","_p"];
+
+_c = [];
+_i = [];
+
+/* Infantry */
+_c = _c + ['US_Delta_Force_EP1'];
+_i = _i + [['','',300,6,-1,3,0,0.99,'US Delta Force',[]]];
+
+_c = _c + ['US_Delta_Force_TL_EP1'];
+_i = _i + [['','',360,6,-1,3,0,1.00,'US Delta Force',[]]];
+
+_c = _c + ['US_Delta_Force_Medic_EP1'];
+_i = _i + [['','',320,6,-1,3,0,0.98,'US Delta Force',[]]];
+
+_c = _c + ['US_Delta_Force_Assault_EP1'];
+_i = _i + [['','',335,6,-1,3,0,0.99,'US Delta Force',[]]];
+
+_c = _c + ['US_Delta_Force_SD_EP1'];
+_i = _i + [['','',345,6,-1,3,0,0.99,'US Delta Force',[]]];
+
+_c = _c + ['US_Delta_Force_MG_EP1'];
+_i = _i + [['','',340,6,-1,3,0,0.99,'US Delta Force',[]]];
+
+_c = _c + ['US_Delta_Force_AR_EP1'];
+_i = _i + [['','',330,6,-1,3,0,0.99,'US Delta Force',[]]];
+
+_c = _c + ['US_Delta_Force_Night_EP1'];
+_i = _i + [['','',315,6,-1,3,0,0.99,'US Delta Force',[]]];
+
+_c = _c + ['US_Delta_Force_Marksman_EP1'];
+_i = _i + [['','',320,6,-1,3,0,0.99,'US Delta Force',[]]];
+
+_c = _c + ['US_Delta_Force_M14_EP1'];
+_i = _i + [['','',310,6,-1,3,0,0.99,'US Delta Force',[]]];
+
+_c = _c + ['US_Delta_Force_Air_Controller_EP1'];
+_i = _i + [['','',350,6,-1,3,0,1.0,'US Delta Force',[]]];
+
+for '_z' from 0 to (count _c)-1 do {
+ if (isClass (configFile >> 'CfgVehicles' >> (_c select _z))) then {
+ _get = (_c select _z) Call GetNamespace;
+ if (isNil '_get') then {
+ if ((_i select _z) select 0 == '') then {(_i select _z) set [0, [_c select _z,'displayName'] Call GetConfigInfo]};
+ if (typeName ((_i select _z) select 4) == 'SCALAR') then {
+ if (((_i select _z) select 4) == -2) then {
+ _ret = (_c select _z) Call Compile preprocessFile "Common\Functions\Common_GetConfigVehicleCrewSlot.sqf";
+ (_i select _z) set [4, _ret select 0];
+ (_i select _z) set [9, _ret select 1];
+ };
+ };
+ if (WF_Debug) then {(_i select _z) set [3,1]};
+ _p = if ((_c select _z) isKindOf 'Man') then {'portrait'} else {'picture'};
+ (_i select _z) set [1, [_c select _z,_p] Call GetConfigInfo];
+ [_c select _z,_i select _z] Call SetNamespace;
+ } else {
+ diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_DeltaForce: Duplicated Element found '%1'",(_c select _z),diag_frameno,diag_tickTime];
+ };
+ } else {
+ diag_log Format ["[WFBE (ERROR)][frameno:%2 | ticktime:%3] Core_DeltaForce: Element '%1' is not a valid class.",(_c select _z),diag_frameno,diag_tickTime];
+ };
+};
+
+diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_DeltaForce: Initialization (%1 Elements) - [Done]",count _c,diag_frameno,diag_tickTime]; \ No newline at end of file
diff --git a/Common/Config/Core/Core_FR.sqf b/Common/Config/Core/Core_FR.sqf
new file mode 100644
index 0000000..c5ca87e
--- /dev/null
+++ b/Common/Config/Core/Core_FR.sqf
@@ -0,0 +1,81 @@
+/* FR Configuration */
+private ["_c","_get","_i","_p"];
+
+_c = [];
+_i = [];
+
+/* Infantry */
+_c = _c + ['FR_GL'];
+_i = _i + [['','',260,6,-1,2,0,0.98,'USMC Force Recon',[]]];
+
+_c = _c + ['FR_Corpsman'];
+_i = _i + [['','',270,6,-1,2,0,0.98,'USMC Force Recon',[]]];
+
+_c = _c + ['FR_Commander'];
+_i = _i + [['','',295,6,-1,2,0,1.00,'USMC Force Recon',[]]];
+
+_c = _c + ['FR_TL'];
+_i = _i + [['','',285,6,-1,2,0,1.00,'USMC Force Recon',[]]];
+
+_c = _c + ['FR_Assault_R'];
+_i = _i + [['','',280,6,-1,2,0,0.99,'USMC Force Recon',[]]];
+
+_c = _c + ['FR_Assault_GL'];
+_i = _i + [['','',285,6,-1,2,0,0.99,'USMC Force Recon',[]]];
+
+_c = _c + ['FR_AR'];
+_i = _i + [['','',290,6,-1,2,0,0.98,'USMC Force Recon',[]]];
+
+_c = _c + ['FR_R'];
+_i = _i + [['','',300,6,-1,2,0,0.98,'USMC Force Recon',[]]];
+
+_c = _c + ['FR_Sapper'];
+_i = _i + [['','',310,6,-1,2,0,0.98,'USMC Force Recon',[]]];
+
+_c = _c + ['FR_AC'];
+_i = _i + [['','',320,6,-1,2,0,1.0,'USMC Force Recon',[]]];
+
+_c = _c + ['FR_Marksman'];
+_i = _i + [['','',340,6,-1,2,0,0.99,'USMC Force Recon',[]]];
+
+/* Infantry - Special Characters */
+_c = _c + ['FR_Cooper'];
+_i = _i + [['','',400,6,-1,3,0,1.0,'USMC Force Recon',[]]];
+
+_c = _c + ['FR_Miles'];
+_i = _i + [['','',400,6,-1,3,0,1.0,'USMC Force Recon',[]]];
+
+_c = _c + ['FR_OHara'];
+_i = _i + [['','',400,6,-1,3,0,1.0,'USMC Force Recon',[]]];
+
+_c = _c + ['FR_Rodriguez'];
+_i = _i + [['','',400,6,-1,3,0,1.0,'USMC Force Recon',[]]];
+
+_c = _c + ['FR_Sykes'];
+_i = _i + [['','',400,6,-1,3,0,1.0,'USMC Force Recon',[]]];
+
+for '_z' from 0 to (count _c)-1 do {
+ if (isClass (configFile >> 'CfgVehicles' >> (_c select _z))) then {
+ _get = (_c select _z) Call GetNamespace;
+ if (isNil '_get') then {
+ if ((_i select _z) select 0 == '') then {(_i select _z) set [0, [_c select _z,'displayName'] Call GetConfigInfo]};
+ if (typeName ((_i select _z) select 4) == 'SCALAR') then {
+ if (((_i select _z) select 4) == -2) then {
+ _ret = (_c select _z) Call Compile preprocessFile "Common\Functions\Common_GetConfigVehicleCrewSlot.sqf";
+ (_i select _z) set [4, _ret select 0];
+ (_i select _z) set [9, _ret select 1];
+ };
+ };
+ if (WF_Debug) then {(_i select _z) set [3,1]};
+ _p = if ((_c select _z) isKindOf 'Man') then {'portrait'} else {'picture'};
+ (_i select _z) set [1, [_c select _z,_p] Call GetConfigInfo];
+ [_c select _z,_i select _z] Call SetNamespace;
+ } else {
+ diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_FR: Duplicated Element found '%1'",(_c select _z),diag_frameno,diag_tickTime];
+ };
+ } else {
+ diag_log Format ["[WFBE (ERROR)][frameno:%2 | ticktime:%3] Core_FR: Element '%1' is not a valid class.",(_c select _z),diag_frameno,diag_tickTime];
+ };
+};
+
+diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_FR: Initialization (%1 Elements) - [Done]",count _c,diag_frameno,diag_tickTime]; \ No newline at end of file
diff --git a/Common/Config/Core/Core_GUE.sqf b/Common/Config/Core/Core_GUE.sqf
new file mode 100644
index 0000000..38bcba3
--- /dev/null
+++ b/Common/Config/Core/Core_GUE.sqf
@@ -0,0 +1,137 @@
+/* GUE Configuration */
+private ["_c","_get","_i","_p"];
+
+_c = [];
+_i = [];
+
+/* Infantry */
+_c = _c + ['GUE_Soldier_1'];
+_i = _i + [['','',150,4,-1,0,0,0.55,'Guerilla',[]]];
+
+_c = _c + ['GUE_Soldier_2'];
+_i = _i + [['','',120,4,-1,0,0,0.55,'Guerilla',[]]];
+
+_c = _c + ['GUE_Soldier_3'];
+_i = _i + [['','',140,4,-1,0,0,0.55,'Guerilla',[]]];
+
+_c = _c + ['GUE_Soldier_GL'];
+_i = _i + [['','',150,5,-1,1,0,0.55,'Guerilla',[]]];
+
+_c = _c + ['GUE_Soldier_AT'];
+_i = _i + [['','',220,5,-1,1,0,0.58,'Guerilla',[]]];
+
+_c = _c + ['GUE_Soldier_AA'];
+_i = _i + [['','',250,4,-1,0,0,0.59,'Guerilla',[]]];
+
+_c = _c + ['GUE_Soldier_AR'];
+_i = _i + [['','',150,4,-1,1,0,0.54,'Guerilla',[]]];
+
+_c = _c + ['GUE_Soldier_MG'];
+_i = _i + [['','',190,4,-1,0,0,0.53,'Guerilla',[]]];
+
+_c = _c + ['GUE_Soldier_Sniper'];
+_i = _i + [['','',175,6,-1,1,0,0.62,'Guerilla',[]]];
+
+_c = _c + ['GUE_Soldier_Medic'];
+_i = _i + [['','',160,6,-1,0,0,0.59,'Guerilla',[]]];
+
+_c = _c + ['GUE_Soldier_Crew'];
+_i = _i + [['','',120,5,-1,0,0,0.51,'Guerilla',[]]];
+
+_c = _c + ['GUE_Soldier_Pilot'];
+_i = _i + [['','',120,5,-1,0,0,0.52,'Guerilla',[]]];
+
+_c = _c + ['GUE_Soldier_Scout'];
+_i = _i + [['','',260,5,-1,3,0,0.63,'Guerilla',[]]];
+
+_c = _c + ['GUE_Soldier_Sab'];
+_i = _i + [['','',220,5,-1,2,0,0.64,'Guerilla',[]]];
+
+_c = _c + ['GUE_Commander'];
+_i = _i + [['','',240,5,-1,0,0,0.65,'Guerilla',[]]];
+
+_c = _c + ['GUE_Worker2'];
+_i = _i + [['','',100,5,-1,0,0,0.41,'Guerilla',[]]];
+
+_c = _c + ['GUE_Woodlander3'];
+_i = _i + [['','',100,5,-1,0,0,0.41,'Guerilla',[]]];
+
+_c = _c + ['GUE_Villager3'];
+_i = _i + [['','',100,5,-1,0,0,0.41,'Guerilla',[]]];
+
+_c = _c + ['GUE_Woodlander2'];
+_i = _i + [['','',100,5,-1,0,0,0.41,'Guerilla',[]]];
+
+_c = _c + ['GUE_Woodlander1'];
+_i = _i + [['','',100,5,-1,0,0,0.41,'Guerilla',[]]];
+
+_c = _c + ['GUE_Villager4'];
+_i = _i + [['','',100,5,-1,0,0,0.41,'Guerilla',[]]];
+
+/* Light Vehicles */
+_c = _c + ['TT650_Gue'];
+_i = _i + [['','',150,15,-2,0,1,0,'Guerilla',[]]];
+
+_c = _c + ['V3S_Gue'];
+_i = _i + [['','',175,15,-2,0,1,0,'Guerilla',[]]];
+
+_c = _c + ['Pickup_PK_GUE'];
+_i = _i + [['','',250,17,-2,0,1,0,'Guerilla',[]]];
+
+_c = _c + ['Offroad_DSHKM_Gue'];
+_i = _i + [['','',300,25,-2,1,1,0,'Guerilla',[]]];
+
+_c = _c + ['Offroad_SPG9_Gue'];
+_i = _i + [['','',380,20,-2,2,1,0,'Guerilla',[]]];
+
+_c = _c + ['BRDM2_Gue'];
+_i = _i + [['','',600,25,-2,2,1,0,'Guerilla',[]]];
+
+_c = _c + ['Ural_ZU23_Gue'];
+_i = _i + [['','',950,25,-2,3,1,0,'Guerilla',[]]];
+
+/* Heavy Vehicles */
+_c = _c + ['BMP2_Gue'];
+_i = _i + [['','',2200,30,-2,0,2,0,'Guerilla',[]]];
+
+_c = _c + ['T72_Gue'];
+_i = _i + [['','',3200,35,-2,2,2,0,'Guerilla',[]]];
+
+/* Static Defenses */
+_c = _c + ['GUE_WarfareBMGNest_PK'];
+_i = _i + [['','',300,0,1,0,'Defense',0,'Guerilla',[]]];
+
+_c = _c + ['DSHKM_Gue'];
+_i = _i + [['','',225,0,1,0,'Defense',0,'Guerilla',[]]];
+
+_c = _c + ['SPG9_Gue'];
+_i = _i + [['','',475,0,1,0,'Defense',0,'Guerilla',[]]];
+
+_c = _c + ['ZU23_Gue'];
+_i = _i + [['','',600,0,1,0,'Defense',0,'Guerilla',[]]];
+
+for '_z' from 0 to (count _c)-1 do {
+ if (isClass (configFile >> 'CfgVehicles' >> (_c select _z))) then {
+ _get = (_c select _z) Call GetNamespace;
+ if (isNil '_get') then {
+ if ((_i select _z) select 0 == '') then {(_i select _z) set [0, [_c select _z,'displayName'] Call GetConfigInfo]};
+ if (typeName ((_i select _z) select 4) == 'SCALAR') then {
+ if (((_i select _z) select 4) == -2) then {
+ _ret = (_c select _z) Call Compile preprocessFile "Common\Functions\Common_GetConfigVehicleCrewSlot.sqf";
+ (_i select _z) set [4, _ret select 0];
+ (_i select _z) set [9, _ret select 1];
+ };
+ };
+ if (WF_Debug) then {(_i select _z) set [3,1]};
+ _p = if ((_c select _z) isKindOf 'Man') then {'portrait'} else {'picture'};
+ (_i select _z) set [1, [_c select _z,_p] Call GetConfigInfo];
+ [_c select _z,_i select _z] Call SetNamespace;
+ } else {
+ diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_GUE: Duplicated Element found '%1'",(_c select _z),diag_frameno,diag_tickTime];
+ };
+ } else {
+ diag_log Format ["[WFBE (ERROR)][frameno:%2 | ticktime:%3] Core_GUE: Element '%1' is not a valid class.",(_c select _z),diag_frameno,diag_tickTime];
+ };
+};
+
+diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_GUE: Initialization (%1 Elements) - [Done]",count _c,diag_frameno,diag_tickTime]; \ No newline at end of file
diff --git a/Common/Config/Core/Core_INS.sqf b/Common/Config/Core/Core_INS.sqf
new file mode 100644
index 0000000..1f1d37d
--- /dev/null
+++ b/Common/Config/Core/Core_INS.sqf
@@ -0,0 +1,201 @@
+/* INS Configuration */
+private ["_c","_get","_i","_p"];
+
+_c = [];
+_i = [];
+
+/* Infantry */
+_c = _c + ['Ins_Soldier_1'];
+_i = _i + [['','',150,4,-1,0,0,0.61,'Insurgents',[]]];
+
+_c = _c + ['Ins_Soldier_2'];
+_i = _i + [['','',160,4,-1,0,0,0.61,'Insurgents',[]]];
+
+_c = _c + ['Ins_Soldier_GL'];
+_i = _i + [['','',175,4,-1,0,0,0.65,'Insurgents',[]]];
+
+_c = _c + ['Ins_Soldier_CO'];
+_i = _i + [['','',210,5,-1,1,0,0.7,'Insurgents',[]]];
+
+_c = _c + ['Ins_Commander'];
+_i = _i + [['','',250,5,-1,2,0,0.7,'Insurgents',[]]];
+
+_c = _c + ['Ins_Soldier_Medic'];
+_i = _i + [['','',175,4,-1,0,0,0.62,'Insurgents',[]]];
+
+_c = _c + ['Ins_Soldier_AR'];
+_i = _i + [['','',180,4,-1,1,0,0.61,'Insurgents',[]]];
+
+_c = _c + ['Ins_Soldier_MG'];
+_i = _i + [['','',190,4,-1,0,0,0.60,'Insurgents',[]]];
+
+_c = _c + ['Ins_Soldier_AT'];
+_i = _i + [['','',220,6,-1,1,0,0.60,'Insurgents',[]]];
+
+_c = _c + ['Ins_Soldier_AA'];
+_i = _i + [['','',300,6,-1,2,0,0.62,'Insurgents',[]]];
+
+_c = _c + ['Ins_Soldier_Sniper'];
+_i = _i + [['','',220,6,-1,1,0,0.66,'Insurgents',[]]];
+
+_c = _c + ['Ins_Soldier_Sapper'];
+_i = _i + [['','',190,5,-1,2,0,0.64,'Insurgents',[]]];
+
+_c = _c + ['Ins_Soldier_Sab'];
+_i = _i + [['','',180,5,-1,2,0,0.68,'Insurgents',[]]];
+
+_c = _c + ['Ins_Soldier_Pilot'];
+_i = _i + [['','',130,5,-1,0,0,0.59,'Insurgents',[]]];
+
+_c = _c + ['Ins_Soldier_Crew'];
+_i = _i + [['','',130,5,-1,0,0,0.58,'Insurgents',[]]];
+
+_c = _c + ['INS_Woodlander1'];
+_i = _i + [['','',100,5,-1,0,0,0.58,'Insurgents',[]]];
+
+_c = _c + ['INS_Woodlander2'];
+_i = _i + [['','',100,5,-1,0,0,0.58,'Insurgents',[]]];
+
+_c = _c + ['INS_Woodlander3'];
+_i = _i + [['','',100,5,-1,0,0,0.58,'Insurgents',[]]];
+
+_c = _c + ['INS_Villager3'];
+_i = _i + [['','',100,5,-1,0,0,0.58,'Insurgents',[]]];
+
+_c = _c + ['INS_Villager4'];
+_i = _i + [['','',100,5,-1,0,0,0.58,'Insurgents',[]]];
+
+_c = _c + ['INS_Worker2'];
+_i = _i + [['','',100,5,-1,0,0,0.58,'Insurgents',[]]];
+
+/* Light Vehicles */
+_c = _c + ['TT650_Ins'];
+_i = _i + [['','',150,15,-2,0,1,0,'Insurgents',[]]];
+
+_c = _c + ['UAZ_INS'];
+_i = _i + [['','',260,15,-2,0,1,0,'Insurgents',[]]];
+
+_c = _c + ['Pickup_PK_INS'];
+_i = _i + [['','',300,15,-2,0,1,0,'Insurgents',[]]];
+
+_c = _c + ['Offroad_DSHKM_INS'];
+_i = _i + [['','',350,15,-2,0,1,0,'Insurgents',[]]];
+
+_c = _c + ['UAZ_MG_INS'];
+_i = _i + [['','',460,17,-2,0,1,0,'Insurgents',[]]];
+
+_c = _c + ['UAZ_AGS30_INS'];
+_i = _i + [['','',585,25,-2,1,1,0,'Insurgents',[]]];
+
+_c = _c + ['UAZ_SPG9_INS'];
+_i = _i + [['','',650,20,-2,2,1,0,'Insurgents',[]]];
+
+_c = _c + ['UralOpen_INS'];
+_i = _i + [['','',290,20,-2,0,1,0,'Insurgents',[]]];
+
+_c = _c + ['Ural_INS'];
+_i = _i + [['','',300,20,-2,0,1,0,'Insurgents',[]]];
+
+_c = _c + ['WarfareSalvageTruck_INS'];
+_i = _i + [['','',450,18,-2,0,1,0,'Insurgents',[]]];
+
+_c = _c + ['UralRepair_INS'];
+_i = _i + [['','',525,21,-2,2,1,0,'Insurgents',[]]];
+
+_c = _c + ['UralReammo_INS'];
+_i = _i + [['','',550,21,-2,1,1,0,'Insurgents',[]]];
+
+_c = _c + ['UralRefuel_INS'];
+_i = _i + [['','',500,21,-2,1,1,0,'Insurgents',[]]];
+
+_c = _c + ['WarfareSupplyTruck_INS'];
+_i = _i + [['','',550,21,-2,0,1,0,'Insurgents',[]]];
+
+_c = _c + ['BRDM2_INS'];
+_i = _i + [['','',1000,25,-2,2,1,0,'Insurgents',[]]];
+
+_c = _c + ['BRDM2_ATGM_INS'];
+_i = _i + [['','',1550,25,-2,3,1,0,'Insurgents',[]]];
+
+_c = _c + ['Ural_ZU23_INS'];
+_i = _i + [['','',1650,20,-2,2,1,0,'Insurgents',[]]];
+
+_c = _c + ['GRAD_INS'];
+_i = _i + [['','',4000,35,-2,3,1,0,'Insurgents',[]]];
+
+/* Heavy Vehicles */
+_c = _c + ['BMP2_Ambul_INS'];
+_i = _i + [['','',950,20,-2,0,2,0,'Insurgents',[]]];
+
+_c = _c + ['BMP2_INS'];
+_i = _i + [['','',2500,30,-2,1,2,0,'Insurgents',[]]];
+
+_c = _c + ['ZSU_INS'];
+_i = _i + [['','',3200,35,-2,2,2,0,'Insurgents',[]]];
+
+_c = _c + ['T72_INS'];
+_i = _i + [['','',4500,35,-2,3,2,0,'Insurgents',[]]];
+
+/* Air Vehicles */
+_c = _c + ['Mi17_Ins'];
+_i = _i + [['','',15000,35,-2,0,3,0,'Insurgents',[]]];
+
+_c = _c + ['Mi17_medevac_Ins'];
+_i = _i + [['','',18000,35,-2,1,3,0,'Insurgents',[]]];
+
+_c = _c + ['Su25_Ins'];
+_i = _i + [['','',90000,55,-2,3,3,0,'Insurgents',[]]];
+
+/* Static Defenses */
+_c = _c + ['Ins_WarfareBMGNest_PK'];
+_i = _i + [['','',300,0,1,0,'Defense',0,'Insurgents',[]]];
+
+_c = _c + ['DSHkM_Mini_TriPod'];
+_i = _i + [['','',200,0,1,0,'Defense',0,'Insurgents',[]]];
+
+_c = _c + ['DSHKM_Ins'];
+_i = _i + [['','',225,0,1,0,'Defense',0,'Insurgents',[]]];
+
+_c = _c + ['SearchLight_INS'];
+_i = _i + [['','',125,0,1,0,'Defense',0,'Insurgents',[]]];
+
+_c = _c + ['AGS_Ins'];
+_i = _i + [['','',650,0,1,0,'Defense',0,'Insurgents',[]]];
+
+_c = _c + ['SPG9_Ins'];
+_i = _i + [['','',475,0,1,0,'Defense',0,'Insurgents',[]]];
+
+_c = _c + ['ZU23_Ins'];
+_i = _i + [['','',945,0,1,0,'Defense',0,'Insurgents',[]]];
+
+_c = _c + ['2b14_82mm_INS'];
+_i = _i + [['Podnos 2B14','',1025,0,1,0,'Defense',0,'Insurgents',[]]];
+
+_c = _c + ['D30_Ins'];
+_i = _i + [['','',2300,0,1,0,'Defense',0,'Insurgents',[]]];
+
+for '_z' from 0 to (count _c)-1 do {
+ if (isClass (configFile >> 'CfgVehicles' >> (_c select _z))) then {
+ _get = (_c select _z) Call GetNamespace;
+ if (isNil '_get') then {
+ if ((_i select _z) select 0 == '') then {(_i select _z) set [0, [_c select _z,'displayName'] Call GetConfigInfo]};
+ if (typeName ((_i select _z) select 4) == 'SCALAR') then {
+ if (((_i select _z) select 4) == -2) then {
+ _ret = (_c select _z) Call Compile preprocessFile "Common\Functions\Common_GetConfigVehicleCrewSlot.sqf";
+ (_i select _z) set [4, _ret select 0];
+ (_i select _z) set [9, _ret select 1];
+ };
+ };
+ if (WF_Debug) then {(_i select _z) set [3,1]};
+ _p = if ((_c select _z) isKindOf 'Man') then {'portrait'} else {'picture'};
+ (_i select _z) set [1, [_c select _z,_p] Call GetConfigInfo];
+ [_c select _z,_i select _z] Call SetNamespace;
+ } else {
+ diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_INS: Duplicated Element found '%1'",(_c select _z),diag_frameno,diag_tickTime];
+ };
+ } else {
+ diag_log Format ["[WFBE (ERROR)][frameno:%2 | ticktime:%3] Core_INS: Element '%1' is not a valid class.",(_c select _z),diag_frameno,diag_tickTime];
+ };
+};
+
+diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_INS: Initialization (%1 Elements) - [Done]",count _c,diag_frameno,diag_tickTime]; \ No newline at end of file
diff --git a/Common/Config/Core/Core_KSK.sqf b/Common/Config/Core/Core_KSK.sqf
new file mode 100644
index 0000000..03e130b
--- /dev/null
+++ b/Common/Config/Core/Core_KSK.sqf
@@ -0,0 +1,47 @@
+/* KSK Configuration */
+Private ['_c','_get','_i','_p','_z'];
+
+_c = [];
+_i = [];
+
+/* Infantry */
+_c = _c + ['GER_Soldier_MG_EP1'];
+_i = _i + [['','',340,6,-1,2,0,0.95,'KSK',[]]];
+
+_c = _c + ['GER_Soldier_Medic_EP1'];
+_i = _i + [['','',325,6,-1,2,0,0.94,'KSK',[]]];
+
+_c = _c + ['GER_Soldier_EP1'];
+_i = _i + [['','',310,6,-1,2,0,0.94,'KSK',[]]];
+
+_c = _c + ['GER_Soldier_Scout_EP1'];
+_i = _i + [['','',345,6,-1,2,0,0.96,'KSK',[]]];
+
+_c = _c + ['GER_Soldier_TL_EP1'];
+_i = _i + [['','',355,6,-1,2,0,0.98,'KSK',[]]];
+
+for '_z' from 0 to (count _c)-1 do {
+ if (isClass (configFile >> 'CfgVehicles' >> (_c select _z))) then {
+ _get = (_c select _z) Call GetNamespace;
+ if (isNil '_get') then {
+ if ((_i select _z) select 0 == '') then {(_i select _z) set [0, [_c select _z,'displayName'] Call GetConfigInfo]};
+ if (typeName ((_i select _z) select 4) == 'SCALAR') then {
+ if (((_i select _z) select 4) == -2) then {
+ _ret = (_c select _z) Call Compile preprocessFile "Common\Functions\Common_GetConfigVehicleCrewSlot.sqf";
+ (_i select _z) set [4, _ret select 0];
+ (_i select _z) set [9, _ret select 1];
+ };
+ };
+ if (WF_Debug) then {(_i select _z) set [3,1]};
+ _p = if ((_c select _z) isKindOf 'Man') then {'portrait'} else {'picture'};
+ (_i select _z) set [1, [_c select _z,_p] Call GetConfigInfo];
+ [_c select _z,_i select _z] Call SetNamespace;
+ } else {
+ diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_KSK: Duplicated Element found '%1'",(_c select _z),diag_frameno,diag_tickTime];
+ };
+ } else {
+ diag_log Format ["[WFBE (ERROR)][frameno:%2 | ticktime:%3] Core_KSK: Element '%1' is not a valid class.",(_c select _z),diag_frameno,diag_tickTime];
+ };
+};
+
+diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_KSK: Initialization (%1 Elements) - [Done]",count _c,diag_frameno,diag_tickTime]; \ No newline at end of file
diff --git a/Common/Config/Core/Core_MVD.sqf b/Common/Config/Core/Core_MVD.sqf
new file mode 100644
index 0000000..c6aebc0
--- /dev/null
+++ b/Common/Config/Core/Core_MVD.sqf
@@ -0,0 +1,50 @@
+/* MVD Configuration */
+private ["_c","_get","_i","_p"];
+
+_c = [];
+_i = [];
+
+/* Infantry */
+_c = _c + ['MVD_Soldier_GL'];
+_i = _i + [['','',310,7,-1,3,0,0.98,'MVD',[]]];
+
+_c = _c + ['MVD_Soldier_MG'];
+_i = _i + [['','',320,7,-1,3,0,0.98,'MVD',[]]];
+
+_c = _c + ['MVD_Soldier_Marksman'];
+_i = _i + [['','',330,7,-1,3,0,0.99,'MVD',[]]];
+
+_c = _c + ['MVD_Soldier_AT'];
+_i = _i + [['','',345,7,-1,3,0,0.99,'MVD',[]]];
+
+_c = _c + ['MVD_Soldier_Sniper'];
+_i = _i + [['','',350,7,-1,3,0,0.99,'MVD',[]]];
+
+_c = _c + ['MVD_Soldier_TL'];
+_i = _i + [['','',360,7,-1,3,0,1.0,'MVD',[]]];
+
+for '_z' from 0 to (count _c)-1 do {
+ if (isClass (configFile >> 'CfgVehicles' >> (_c select _z))) then {
+ _get = (_c select _z) Call GetNamespace;
+ if (isNil '_get') then {
+ if ((_i select _z) select 0 == '') then {(_i select _z) set [0, [_c select _z,'displayName'] Call GetConfigInfo]};
+ if (typeName ((_i select _z) select 4) == 'SCALAR') then {
+ if (((_i select _z) select 4) == -2) then {
+ _ret = (_c select _z) Call Compile preprocessFile "Common\Functions\Common_GetConfigVehicleCrewSlot.sqf";
+ (_i select _z) set [4, _ret select 0];
+ (_i select _z) set [9, _ret select 1];
+ };
+ };
+ if (WF_Debug) then {(_i select _z) set [3,1]};
+ _p = if ((_c select _z) isKindOf 'Man') then {'portrait'} else {'picture'};
+ (_i select _z) set [1, [_c select _z,_p] Call GetConfigInfo];
+ [_c select _z,_i select _z] Call SetNamespace;
+ } else {
+ diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_MVD: Duplicated Element found '%1'",(_c select _z),diag_frameno,diag_tickTime];
+ };
+ } else {
+ diag_log Format ["[WFBE (ERROR)][frameno:%2 | ticktime:%3] Core_MVD: Element '%1' is not a valid class.",(_c select _z),diag_frameno,diag_tickTime];
+ };
+};
+
+diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_RU: Initialization (%1 Elements) - [Done]",count _c,diag_frameno,diag_tickTime]; \ No newline at end of file
diff --git a/Common/Config/Core/Core_PMC.sqf b/Common/Config/Core/Core_PMC.sqf
new file mode 100644
index 0000000..3627bff
--- /dev/null
+++ b/Common/Config/Core/Core_PMC.sqf
@@ -0,0 +1,103 @@
+/* PMC Configuration */
+Private ['_c','_get','_i','_p','_z'];
+
+_c = [];
+_i = [];
+
+/* Infantry */
+_c = _c + ['Soldier_AA_PMC'];
+_i = _i + [['','',300,6,-1,2,0,0.92,'PMC',[]]];
+
+_c = _c + ['Soldier_AT_PMC'];
+_i = _i + [['','',260,6,-1,0,0,0.90,'PMC',[]]];
+
+_c = _c + ['Soldier_Bodyguard_AA12_PMC'];
+_i = _i + [['','',325,6,-1,3,0,0.94,'PMC',[]]];
+
+_c = _c + ['Soldier_Bodyguard_M4_PMC'];
+_i = _i + [['','',225,6,-1,0,0,0.94,'PMC',[]]];
+
+_c = _c + ['Soldier_Crew_PMC'];
+_i = _i + [['','',170,6,-1,0,0,0.89,'PMC',[]]];
+
+_c = _c + ['Soldier_Engineer_PMC'];
+_i = _i + [['','',270,6,-1,2,0,0.91,'PMC',[]]];
+
+_c = _c + ['Soldier_GL_M16A2_PMC'];
+_i = _i + [['','',185,6,-1,0,0,0.92,'PMC',[]]];
+
+_c = _c + ['Soldier_GL_PMC'];
+_i = _i + [['','',260,6,-1,2,0,0.92,'PMC',[]]];
+
+_c = _c + ['Soldier_M4A3_PMC'];
+_i = _i + [['','',210,6,-1,1,0,0.91,'PMC',[]]];
+
+_c = _c + ['Soldier_Medic_PMC'];
+_i = _i + [['','',255,6,-1,2,0,0.92,'PMC',[]]];
+
+_c = _c + ['Soldier_MG_PKM_PMC'];
+_i = _i + [['','',190,6,-1,0,0,0.90,'PMC',[]]];
+
+_c = _c + ['Soldier_MG_PMC'];
+_i = _i + [['','',260,6,-1,3,0,0.92,'PMC',[]]];
+
+_c = _c + ['Soldier_Pilot_PMC'];
+_i = _i + [['','',175,6,-1,0,0,0.90,'PMC',[]]];
+
+_c = _c + ['Soldier_PMC'];
+_i = _i + [['','',230,6,-1,0,0,0.91,'PMC',[]]];
+
+_c = _c + ['Soldier_Sniper_KSVK_PMC'];
+_i = _i + [['','',290,6,-1,0,0,0.94,'PMC',[]]];
+
+_c = _c + ['Soldier_Sniper_PMC'];
+_i = _i + [['','',275,6,-1,0,0,0.94,'PMC',[]]];
+
+_c = _c + ['Soldier_TL_PMC'];
+_i = _i + [['','',280,6,-1,0,0,0.95,'PMC',[]]];
+
+/* Light Vehicles */
+_c = _c + ['SUV_PMC'];
+_i = _i + [['','',300,20,-2,0,1,0,'PMC',[]]];
+
+_c = _c + ['ArmoredSUV_PMC'];
+_i = _i + [['','',1250,25,-2,0,1,0,'PMC',[]]];
+
+/* Air Vehicles */
+_c = _c + ['Ka137_PMC'];
+_i = _i + [['','',3000,35,-2,0,3,0,'PMC',[]]];
+
+_c = _c + ['Ka137_MG_PMC'];
+_i = _i + [['','',3500,35,-2,0,3,0,'PMC',[]]];
+
+_c = _c + ['Ka60_PMC'];
+_i = _i + [['','',6000,43,-2,0,3,0,'PMC',[]]];
+
+_c = _c + ['Ka60_GL_PMC'];
+_i = _i + [['','',6500,45,-2,0,3,0,'PMC',[]]];
+
+for '_z' from 0 to (count _c)-1 do {
+ if (isClass (configFile >> 'CfgVehicles' >> (_c select _z))) then {
+ _get = (_c select _z) Call GetNamespace;
+ if (isNil '_get') then {
+ if ((_i select _z) select 0 == '') then {(_i select _z) set [0, [_c select _z,'displayName'] Call GetConfigInfo]};
+ if (typeName ((_i select _z) select 4) == 'SCALAR') then {
+ if (((_i select _z) select 4) == -2) then {
+ _ret = (_c select _z) Call Compile preprocessFile "Common\Functions\Common_GetConfigVehicleCrewSlot.sqf";
+ (_i select _z) set [4, _ret select 0];
+ (_i select _z) set [9, _ret select 1];
+ };
+ };
+ if (WF_Debug) then {(_i select _z) set [3,1]};
+ _p = if ((_c select _z) isKindOf 'Man') then {'portrait'} else {'picture'};
+ (_i select _z) set [1, [_c select _z,_p] Call GetConfigInfo];
+ [_c select _z,_i select _z] Call SetNamespace;
+ } else {
+ diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_PMC: Duplicated Element found '%1'",(_c select _z),diag_frameno,diag_tickTime];
+ };
+ } else {
+ diag_log Format ["[WFBE (ERROR)][frameno:%2 | ticktime:%3] Core_PMC: Element '%1' is not a valid class.",(_c select _z),diag_frameno,diag_tickTime];
+ };
+};
+
+diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_PMC: Initialization (%1 Elements) - [Done]",count _c,diag_frameno,diag_tickTime]; \ No newline at end of file
diff --git a/Common/Config/Core/Core_RU.sqf b/Common/Config/Core/Core_RU.sqf
new file mode 100644
index 0000000..980b322
--- /dev/null
+++ b/Common/Config/Core/Core_RU.sqf
@@ -0,0 +1,278 @@
+/* RU Configuration */
+private ["_c","_get","_i","_p"];
+
+_c = [];
+_i = [];
+
+/* Infantry */
+_c = _c + ['RU_Soldier'];
+_i = _i + [['','',150,4,-1,0,0,0.76,'Russians',[]]];
+
+_c = _c + ['RU_Soldier2'];
+_i = _i + [['','',120,4,-1,0,0,0.74,'Russians',[]]];
+
+_c = _c + ['RU_Soldier_LAT'];
+_i = _i + [['','',220,5,-1,0,0,0.78,'Russians',[]]];
+
+_c = _c + ['RU_Soldier_AT'];
+_i = _i + [['','',310,5,-1,1,0,0.8,'Russians',[]]];
+
+_c = _c + ['RU_Soldier_HAT'];
+_i = _i + [['','',620,6,-1,3,0,0.84,'Russians',[]]];
+
+if (WF_ACE) then
+{
+ _c = _c + ['ACE_SoldierE_KonkursG'];
+ _i = _i + [['','',620,6,-1,3,0,0.84,'Russians',[]]];
+
+ _c = _c + ['ACE_SoldierE_KonkursAG'];
+ _i = _i + [['','',620,6,-1,3,0,0.84,'Russians',[]]];
+};
+
+_c = _c + ['RU_Soldier_AA'];
+_i = _i + [['','',425,6,-1,1,0,0.81,'Russians',[]]];
+
+_c = _c + ['RU_Soldier_AR'];
+_i = _i + [['','',210,5,-1,1,0,0.78,'Russians',[]]];
+
+_c = _c + ['RU_Soldier_MG'];
+_i = _i + [['','',220,5,-1,0,0,0.79,'Russians',[]]];
+
+if (WF_ACE) then
+{
+ _c = _c + ['ACE_SoldierE_HMG'];
+ _i = _i + [['','',220,5,-1,0,0,0.79,'Russians',[]]];
+
+ _c = _c + ['ACE_SoldierE_HMGAG'];
+ _i = _i + [['','',220,5,-1,0,0,0.79,'Russians',[]]];
+
+ _c = _c + ['ACE_SoldierE_HMGAB'];
+ _i = _i + [['','',220,5,-1,0,0,0.79,'Russians',[]]];
+};
+
+_c = _c + ['RU_Soldier_GL'];
+_i = _i + [['','',160,5,-1,0,0,0.8,'Russians',[]]];
+
+if (WF_ACE) then
+{
+ _c = _c + ['ACE_SoldierE_AGS'];
+ _i = _i + [['','',160,5,-1,0,0,0.8,'Russians',[]]];
+
+ _c = _c + ['ACE_SoldierE_AGSAG'];
+ _i = _i + [['','',160,5,-1,0,0,0.8,'Russians',[]]];
+
+ _c = _c + ['ACE_SoldierE_AGSAB'];
+ _i = _i + [['','',160,5,-1,0,0,0.8,'Russians',[]]];
+};
+
+_c = _c + ['RU_Soldier_Marksman'];
+_i = _i + [['','',290,5,-1,1,0,0.82,'Russians',[]]];
+
+_c = _c + ['RU_Soldier_Spotter'];
+_i = _i + [['','',295,5,-1,2,0,0.84,'Russians',[]]];
+
+_c = _c + ['RU_Soldier_Sniper'];
+_i = _i + [['','',300,5,-1,2,0,0.84,'Russians',[]]];
+
+_c = _c + ['RU_Soldier_SniperH'];
+_i = _i + [['','',330,5,-1,3,0,0.86,'Russians',[]]];
+
+_c = _c + ['RU_Soldier_Medic'];
+_i = _i + [['','',190,4,-1,0,0,0.79,'Russians',[]]];
+
+_c = _c + ['RU_Soldier_Crew'];
+_i = _i + [['','',120,4,-1,0,0,0.76,'Russians',[]]];
+
+_c = _c + ['RU_Soldier_Pilot'];
+_i = _i + [['','',120,4,-1,0,0,0.77,'Russians',[]]];
+
+_c = _c + ['RU_Soldier_TL'];
+_i = _i + [['','',240,5,-1,1,0,0.9,'Russians',[]]];
+
+_c = _c + ['RU_Soldier_SL'];
+_i = _i + [['','',220,5,-1,2,0,0.89,'Russians',[]]];
+
+/* Light Vehicles */
+_c = _c + ['UAZ_RU'];
+_i = _i + [['','',260,15,-2,0,1,0,'Russians',[]]];
+
+_c = _c + ['PBX'];
+_i = _i + [['','',225,15,-2,0,1,0,'Russians',[]]];
+
+_c = _c + ['UAZ_AGS30_RU'];
+_i = _i + [['','',585,18,-2,1,1,0,'Russians',[]]];
+
+_c = _c + ['Kamaz'];
+_i = _i + [['','',300,15,-2,0,1,0,'Russians',[]]];
+
+_c = _c + ['WarfareSalvageTruck_RU'];
+_i = _i + [['','',450,18,-2,0,1,0,'Russians',[]]];
+
+_c = _c + ['KamazRepair'];
+_i = _i + [['','',525,21,-2,2,1,0,'Russians',[]]];
+
+_c = _c + ['WarfareReammoTruck_RU'];
+_i = _i + [['','',550,21,-2,1,1,0,'Russians',[]]];
+
+_c = _c + ['KamazRefuel'];
+_i = _i + [['','',500,21,-2,1,1,0,'Russians',[]]];
+
+_c = _c + ['WarfareSupplyTruck_RU'];
+_i = _i + [['','',550,21,-2,0,1,0,'Russians',[]]];
+
+_c = _c + ['GAZ_Vodnik_MedEvac'];
+_i = _i + [['','',525,25,-2,2,1,0,'Russians',[]]];
+
+_c = _c + ['GAZ_Vodnik'];
+_i = _i + [['','',1200,22,-2,1,1,0,'Russians',[]]];
+
+_c = _c + ['GAZ_Vodnik_HMG'];
+_i = _i + [['','',1450,24,[false,true,2,0],2,1,0,'Russians',[[0]]]];
+
+_c = _c + ['BTR90'];
+_i = _i + [['','',3250,25,-2,3,1,0,'Russians',[]]];
+
+if (WF_ACE) then
+{
+ _c = _c + ['ACE_BTR70_RU'];
+ _i = _i + [['','',2750,25,-2,2,1,0,'Russians',[]]];
+};
+
+_c = _c + ['GRAD_RU'];
+_i = _i + [['','',4200,25,-2,3,1,0,'Russians',[]]];
+
+/* Heavy Vehicles */
+_c = _c + ['BMP3'];
+_i = _i + [['','',3400,35,-2,if (WF_A2_Vanilla) then {0} else {2},2,0,'Russians',[]]];
+
+_c = _c + ['T72_RU'];
+_i = _i + [['','',4900,40,-2,if (WF_A2_Vanilla) then {1} else {2},2,0,'Russians',[]]];
+
+if (WF_ACE) then
+{
+ _c = _c + ['ACE_T72B_Base'];
+ _i = _i + [['','',4900,40,-2,if (WF_A2_Vanilla) then {1} else {2},2,0,'Russians',[]]];
+
+ _c = _c + ['ACE_T72BA_Base'];
+ _i = _i + [['','',4900,40,-2,if (WF_A2_Vanilla) then {1} else {2},2,0,'Russians',[]]];
+
+ _c = _c + ['ACE_T90A'];
+ _i = _i + [['','',6250,40,-2,if (WF_A2_Vanilla) then {2} else {3},2,0,'Russians',[]]];
+};
+
+_c = _c + ['T90'];
+_i = _i + [['','',6250,40,-2,if (WF_A2_Vanilla) then {2} else {3},2,0,'Russians',[]]];
+
+_c = _c + ['2S6M_Tunguska'];
+_i = _i + [['','',9800,35,-2,3,2,0,'Russians',[]]];
+
+/* Air Vehicles */
+_c = _c + ['Mi17_medevac_RU'];
+_i = _i + [['','',18000,35,-2,0,3,0,'Russians',[]]];
+
+_c = _c + ['Mi17_rockets_RU'];
+_i = _i + [['','',70000,45,-2,1,3,0,'Russians',[]]];
+
+_c = _c + ['Mi24_V'];
+_i = _i + [['','',60000,50,-2,2,3,0,'Russians',[]]];
+
+_c = _c + ['Mi24_P'];
+_i = _i + [['','',64000,52,-2,2,3,0,'Russians',[]]];
+
+_c = _c + ['Su34'];
+_i = _i + [['','',110000,55,-2,3,3,0,'Russians',[]]];
+
+_c = _c + ['Su39'];
+_i = _i + [['','',90000,55,-2,3,3,0,'Russians',[]]];
+
+_c = _c + ['Ka52'];
+_i = _i + [['','',if (paramBalancing) then {85000} else {100000},55,-2,if (paramBalancing) then {2} else {3},3,0,'Russians',[]]];
+
+_c = _c + ['Ka52Black'];
+_i = _i + [['','',if (paramBalancing) then {85000} else {100000},55,-2,if (paramBalancing) then {2} else {3},3,0,'Russians',[]]];
+
+/* Special */
+_c = _c + ['Pchela1T'];
+_i = _i + [['','',9000,35,-2,1,3,0,'Russians',[]]];
+
+/* Static Defenses */
+_c = _c + ['RU_WarfareBMGNest_PK'];
+_i = _i + [['','',300,0,1,0,'Defense',0,'Russians',[]]];
+
+_c = _c + ['KORD'];
+_i = _i + [['KORD','',200,0,1,0,'Defense',0,'Russians',[]]];
+
+_c = _c + ['KORD_high'];
+_i = _i + [['KORD Minitripod','',225,0,1,0,'Defense',0,'Russians',[]]];
+
+_c = _c + ['SearchLight_RUS'];
+_i = _i + [['','',125,0,1,0,'Defense',0,'Russians',[]]];
+
+_c = _c + ['AGS_RU'];
+_i = _i + [['','',650,0,1,0,'Defense',0,'Russians',[]]];
+
+_c = _c + ['Metis'];
+_i = _i + [['Metis-M 9K115-2','',725,0,1,0,'Defense',0,'Russians',[]]];
+
+_c = _c + ['Igla_AA_pod_East'];
+_i = _i + [['Igla AA POD launcher','',815,0,1,0,'Defense',0,'Russians',[]]];
+
+_c = _c + ['2b14_82mm'];
+_i = _i + [['Podnos 2B14','',1025,0,1,0,'Defense',0,'Russians',[]]];
+
+_c = _c + ['D30_RU'];
+_i = _i + [['','',2300,0,1,0,'Defense',0,'Russians',[]]];
+
+/* Defense Structures */
+_c = _c + ['Land_CamoNet_EAST'];
+_i = _i + [['','',35,0,0,0,'Strategic',0,'Russians',[]]];
+
+_c = _c + ['Land_CamoNetVar_EAST'];
+_i = _i + [['','',45,0,0,0,'Strategic',0,'Russians',[]]];
+
+_c = _c + ['Land_CamoNetB_EAST'];
+_i = _i + [['','',55,0,0,0,'Strategic',0,'Russians',[]]];
+
+_c = _c + ['RUOrdnanceBox'];
+_i = _i + [['','',850,0,0,0,'Ammo',0,'Russians',[]]];
+
+_c = _c + ['RUVehicleBox'];
+_i = _i + [['','',1200,0,0,0,'Ammo',0,'Russians',[]]];
+
+_c = _c + ['RUBasicAmmunitionBox'];
+_i = _i + [['','',1950,0,0,0,'Ammo',0,'Russians',[]]];
+
+_c = _c + ['RUBasicWeaponsBox'];
+_i = _i + [['','',2975,0,0,0,'Ammo',0,'Russians',[]]];
+
+_c = _c + ['RULaunchersBox'];
+_i = _i + [['','',6250,0,0,0,'Ammo',0,'Russians',[]]];
+
+_c = _c + ['RUSpecialWeaponsBox'];
+_i = _i + [['','',7200,0,0,0,'Ammo',0,'Russians',[]]];
+
+for '_z' from 0 to (count _c)-1 do {
+ if (isClass (configFile >> 'CfgVehicles' >> (_c select _z))) then {
+ _get = (_c select _z) Call GetNamespace;
+ if (isNil '_get') then {
+ if ((_i select _z) select 0 == '') then {(_i select _z) set [0, [_c select _z,'displayName'] Call GetConfigInfo]};
+ if (typeName ((_i select _z) select 4) == 'SCALAR') then {
+ if (((_i select _z) select 4) == -2) then {
+ _ret = (_c select _z) Call Compile preprocessFile "Common\Functions\Common_GetConfigVehicleCrewSlot.sqf";
+ (_i select _z) set [4, _ret select 0];
+ (_i select _z) set [9, _ret select 1];
+ };
+ };
+ if (WF_Debug) then {(_i select _z) set [3,1]};
+ _p = if ((_c select _z) isKindOf 'Man') then {'portrait'} else {'picture'};
+ (_i select _z) set [1, [_c select _z,_p] Call GetConfigInfo];
+ [_c select _z,_i select _z] Call SetNamespace;
+ } else {
+ diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_RU: Duplicated Element found '%1'",(_c select _z),diag_frameno,diag_tickTime];
+ };
+ } else {
+ diag_log Format ["[WFBE (ERROR)][frameno:%2 | ticktime:%3] Core_RU: Element '%1' is not a valid class.",(_c select _z),diag_frameno,diag_tickTime];
+ };
+};
+
+diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_RU: Initialization (%1 Elements) - [Done]",count _c,diag_frameno,diag_tickTime]; \ No newline at end of file
diff --git a/Common/Config/Core/Core_Spetsnaz.sqf b/Common/Config/Core/Core_Spetsnaz.sqf
new file mode 100644
index 0000000..34b7a9f
--- /dev/null
+++ b/Common/Config/Core/Core_Spetsnaz.sqf
@@ -0,0 +1,50 @@
+/* Spetsnaz Configuration */
+private ["_c","_get","_i","_p"];
+
+_c = [];
+_i = [];
+
+/* Infantry */
+_c = _c + ['RUS_Soldier1'];
+_i = _i + [['','',250,6,-1,2,0,0.98,'Russians Spetsnaz',[]]];
+
+_c = _c + ['RUS_Soldier2'];
+_i = _i + [['','',260,6,-1,3,0,0.98,'Russians Spetsnaz',[]]];
+
+_c = _c + ['RUS_Soldier_GL'];
+_i = _i + [['','',270,6,-1,3,0,0.99,'Russians Spetsnaz',[]]];
+
+_c = _c + ['RUS_Soldier_Marksman'];
+_i = _i + [['','',290,6,-1,3,0,0.99,'Russians Spetsnaz',[]]];
+
+_c = _c + ['RUS_Soldier3'];
+_i = _i + [['','',295,6,-1,3,0,0.98,'Russians Spetsnaz',[]]];
+
+_c = _c + ['RUS_Soldier_TL'];
+_i = _i + [['','',300,6,-1,3,0,1.0,'Russians Spetsnaz',[]]];
+
+for '_z' from 0 to (count _c)-1 do {
+ if (isClass (configFile >> 'CfgVehicles' >> (_c select _z))) then {
+ _get = (_c select _z) Call GetNamespace;
+ if (isNil '_get') then {
+ if ((_i select _z) select 0 == '') then {(_i select _z) set [0, [_c select _z,'displayName'] Call GetConfigInfo]};
+ if (typeName ((_i select _z) select 4) == 'SCALAR') then {
+ if (((_i select _z) select 4) == -2) then {
+ _ret = (_c select _z) Call Compile preprocessFile "Common\Functions\Common_GetConfigVehicleCrewSlot.sqf";
+ (_i select _z) set [4, _ret select 0];
+ (_i select _z) set [9, _ret select 1];
+ };
+ };
+ if (WF_Debug) then {(_i select _z) set [3,1]};
+ _p = if ((_c select _z) isKindOf 'Man') then {'portrait'} else {'picture'};
+ (_i select _z) set [1, [_c select _z,_p] Call GetConfigInfo];
+ [_c select _z,_i select _z] Call SetNamespace;
+ } else {
+ diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_Spetsnaz: Duplicated Element found '%1'",(_c select _z),diag_frameno,diag_tickTime];
+ };
+ } else {
+ diag_log Format ["[WFBE (ERROR)][frameno:%2 | ticktime:%3] Core_Spetsnaz: Element '%1' is not a valid class.",(_c select _z),diag_frameno,diag_tickTime];
+ };
+};
+
+diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_Spetsnaz: Initialization (%1 Elements) - [Done]",count _c,diag_frameno,diag_tickTime]; \ No newline at end of file
diff --git a/Common/Config/Core/Core_TK.sqf b/Common/Config/Core/Core_TK.sqf
new file mode 100644
index 0000000..fbfd9e6
--- /dev/null
+++ b/Common/Config/Core/Core_TK.sqf
@@ -0,0 +1,249 @@
+/* TK Configuration */
+private ["_c","_get","_i","_p"];
+
+_c = [];
+_i = [];
+
+/* Infantry */
+_c = _c + ['TK_Soldier_EP1'];
+_i = _i + [['','',150,4,-1,0,0,0.77,'Takistani']];
+
+_c = _c + ['TK_Soldier_B_EP1'];
+_i = _i + [['','',125,4,-1,0,0,0.77,'Takistani']];
+
+_c = _c + ['TK_Soldier_TWS_EP1'];
+_i = _i + [['','',205,5,-1,0,0,0.82,'Takistani']];
+
+_c = _c + ['TK_Soldier_Engineer_EP1'];
+_i = _i + [['','',155,5,-1,0,0,0.78,'Takistani']];
+
+_c = _c + ['TK_Soldier_LAT_EP1'];
+_i = _i + [['','',225,5,-1,0,0,0.78,'Takistani']];
+
+_c = _c + ['TK_Soldier_AT_EP1'];
+_i = _i + [['','',310,5,-1,1,0,0.8,'Takistani']];
+
+_c = _c + ['TK_Soldier_HAT_EP1'];
+_i = _i + [['','',620,7,-1,3,0,0.83,'Takistani']];
+
+_c = _c + ['TK_Soldier_AA_EP1'];
+_i = _i + [['','',425,6,-1,1,0,0.82,'Takistani']];
+
+_c = _c + ['TK_Soldier_AR_EP1'];
+_i = _i + [['','',210,5,-1,1,0,0.79,'Takistani']];
+
+_c = _c + ['TK_Soldier_MG_EP1'];
+_i = _i + [['','',220,5,-1,0,0,0.8,'Takistani']];
+
+_c = _c + ['TK_Soldier_GL_EP1'];
+_i = _i + [['','',160,5,-1,0,0,0.78,'Takistani']];
+
+_c = _c + ['TK_Soldier_Sniper_EP1'];
+_i = _i + [['','',280,5,-1,1,0,0.88,'Takistani']];
+
+_c = _c + ['TK_Soldier_Spotter_EP1'];
+_i = _i + [['','',290,5,-1,1,0,0.82,'Takistani']];
+
+_c = _c + ['TK_Soldier_Medic_EP1'];
+_i = _i + [['','',190,4,-1,0,0,0.81,'Takistani']];
+
+_c = _c + ['TK_Soldier_Crew_EP1'];
+_i = _i + [['','',120,4,-1,0,0,0.76,'Takistani']];
+
+_c = _c + ['TK_Soldier_Pilot_EP1'];
+_i = _i + [['','',120,4,-1,0,0,0.77,'Takistani']];
+
+_c = _c + ['TK_Soldier_Officer_EP1'];
+_i = _i + [['','',240,5,-1,1,0,0.85,'Takistani']];
+
+_c = _c + ['TK_Soldier_SL_EP1'];
+_i = _i + [['','',220,5,-1,2,0,0.86,'Takistani']];
+
+/* Light Vehicles */
+_c = _c + ['TT650_TK_EP1'];
+_i = _i + [['','',150,15,1,0,1,0,'Takistani']];
+
+_c = _c + ['UAZ_Unarmed_TK_EP1'];
+_i = _i + [['','',260,15,1,0,1,0,'Takistani']];
+
+_c = _c + ['SUV_TK_EP1'];
+_i = _i + [['','',290,15,1,0,1,0,'Takistani']];
+
+_c = _c + ['UAZ_MG_TK_EP1'];
+_i = _i + [['','',460,15,2,0,1,0,'Takistani']];
+
+_c = _c + ['UAZ_AGS30_TK_EP1'];
+_i = _i + [['','',585,15,2,1,1,0,'Takistani']];
+
+_c = _c + ['LandRover_MG_TK_EP1'];
+_i = _i + [['','',550,17,2,0,1,0,'Takistani']];
+
+_c = _c + ['LandRover_SPG9_TK_EP1'];
+_i = _i + [['','',750,17,2,2,1,0,'Takistani']];
+
+_c = _c + ['V3S_TK_EP1'];
+_i = _i + [['','',275,20,1,0,1,0,'Takistani']];
+
+_c = _c + ['V3S_Open_TK_EP1'];
+_i = _i + [['','',250,20,1,0,1,0,'Takistani']];
+
+_c = _c + ['UralRepair_TK_EP1'];
+_i = _i + [['','',1250,21,1,2,1,0,'Takistani']];
+
+_c = _c + ['UralSalvage_TK_EP1'];
+_i = _i + [['','',450,17,1,1,1,0,'Takistani']];
+
+_c = _c + ['UralReammo_TK_EP1'];
+_i = _i + [['','',450,18,1,1,1,0,'Takistani']];
+
+_c = _c + ['UralRefuel_TK_EP1'];
+_i = _i + [['','',400,19,1,1,1,0,'Takistani']];
+
+_c = _c + ['UralSupply_TK_EP1'];
+_i = _i + [['','',450,21,1,0,1,0,'Takistani']];
+
+_c = _c + ['M113Ambul_TK_EP1'];
+_i = _i + [['','',750,25,1,1,1,0,'Takistani']];
+
+_c = _c + ['BRDM2_TK_EP1'];
+_i = _i + [['','',1100,22,2,1,1,0,'Takistani']];
+
+_c = _c + ['BRDM2_ATGM_TK_EP1'];
+_i = _i + [['','',1650,22,2,2,1,0,'Takistani']];
+
+_c = _c + ['BTR60_TK_EP1'];
+_i = _i + [['','',1425,25,3,2,1,0,'Takistani']];
+
+_c = _c + ['Ural_ZU23_TK_EP1'];
+_i = _i + [['','',1750,25,2,2,1,0,'Takistani']];
+
+_c = _c + ['GRAD_TK_EP1'];
+_i = _i + [['','',4200,25,2,3,1,0,'Takistani']];
+
+/* Heavy Vehicles */
+_c = _c + ['M113_TK_EP1'];
+_i = _i + [['','',1100,22,2,0,2,0,'Takistani']];
+
+_c = _c + ['BMP2_TK_EP1'];
+_i = _i + [['','',2600,25,3,if (WF_A2_Arrowhead) then {0} else {1},2,0,'Takistani']];
+
+_c = _c + ['ZSU_TK_EP1'];
+_i = _i + [['','',3400,25,3,1,2,0,'Takistani']];
+
+_c = _c + ['T34_TK_EP1'];
+_i = _i + [['','',3900,25,3,0,2,0,'Takistani']];
+
+_c = _c + ['T55_TK_EP1'];
+_i = _i + [['','',4500,27,3,1,2,0,'Takistani']];
+
+_c = _c + ['T72_TK_EP1'];
+_i = _i + [['','',4900,30,3,2,2,0,'Takistani']];
+
+/* Air Vehicles */
+_c = _c + ['An2_TK_EP1'];
+_i = _i + [['','',6200,35,1,1,3,0,'Takistani']];
+
+_c = _c + ['Mi17_TK_EP1'];
+_i = _i + [['','',7000,35,2,0,3,0,'Takistani']];
+
+_c = _c + ['UH1H_TK_EP1'];
+_i = _i + [['','',7500,35,2,0,3,0,'Takistani']];
+
+_c = _c + ['Mi24_D_TK_EP1'];
+_i = _i + [['','',32800,40,2,1,3,0,'Takistani']];
+
+_c = _c + ['L39_TK_EP1'];
+_i = _i + [['','',38700,50,1,2,3,0,'Takistani']];
+
+_c = _c + ['Su25_TK_EP1'];
+_i = _i + [['','',46400,55,1,3,3,0,'Takistani']];
+
+/* Static Defenses */
+_c = _c + ['WarfareBMGNest_PK_TK_EP1'];
+_i = _i + [['','',300,0,1,0,'Defense',0,'Takistani']];
+
+_c = _c + ['KORD_TK_EP1'];
+_i = _i + [['KORD Minitripod','',200,0,1,0,'Defense',0,'Takistani']];
+
+_c = _c + ['KORD_high_TK_EP1'];
+_i = _i + [['KORD','',225,0,1,0,'Defense',0,'Takistani']];
+
+_c = _c + ['SearchLight_TK_EP1'];
+_i = _i + [['','',125,0,1,0,'Defense',0,'Takistani']];
+
+_c = _c + ['AGS_TK_EP1'];
+_i = _i + [['','',650,0,1,0,'Defense',0,'Takistani']];
+
+_c = _c + ['SPG9_TK_INS_EP1'];
+_i = _i + [['','',475,0,1,0,'Defense',0,'Takistani']];
+
+_c = _c + ['Metis_TK_EP1'];
+_i = _i + [['Metis-M 9K115-2','',725,0,1,0,'Defense',0,'Takistani']];
+
+_c = _c + ['Igla_AA_pod_TK_EP1'];
+_i = _i + [['Igla AA POD launcher','',815,0,1,0,'Defense',0,'Takistani']];
+
+_c = _c + ['ZU23_TK_EP1'];
+_i = _i + [['','',945,0,1,0,'Defense',0,'Takistani']];
+
+_c = _c + ['2b14_82mm_TK_EP1'];
+_i = _i + [['Podnos 2B14','',1025,0,1,0,'Defense',0,'Takistani']];
+
+_c = _c + ['D30_TK_EP1'];
+_i = _i + [['','',2300,0,1,0,'Defense',0,'Takistani']];
+
+/* Defense Structures */
+_c = _c + ['TK_WarfareBBarrier5x_EP1'];
+_i = _i + [['','',15,0,0,0,'Fortification',0,'Takistani']];
+
+_c = _c + ['TK_WarfareBBarrier10x_EP1'];
+_i = _i + [['','',25,0,0,0,'Fortification',0,'Takistani']];
+
+_c = _c + ['TK_WarfareBBarrier10xTall_EP1'];
+_i = _i + [['','',50,0,0,0,'Fortification',0,'Takistani']];
+
+_c = _c + ['Land_CamoNet_EAST_EP1'];
+_i = _i + [['','',35,0,0,0,'Strategic',0,'Takistani']];
+
+_c = _c + ['Land_CamoNetVar_EAST_EP1'];
+_i = _i + [['','',45,0,0,0,'Strategic',0,'Takistani']];
+
+_c = _c + ['Land_CamoNetB_EAST_EP1'];
+_i = _i + [['','',55,0,0,0,'Strategic',0,'Takistani']];
+
+_c = _c + ['TKOrdnanceBox_EP1'];
+_i = _i + [['','',850,0,0,0,'Ammo',0,'Takistani']];
+
+_c = _c + ['TKVehicleBox_EP1'];
+_i = _i + [['','',1200,0,0,0,'Ammo',0,'Takistani']];
+
+_c = _c + ['TKBasicAmmunitionBox_EP1'];
+_i = _i + [['','',1950,0,0,0,'Ammo',0,'Takistani']];
+
+_c = _c + ['TKBasicWeapons_EP1'];
+_i = _i + [['','',2975,0,0,0,'Ammo',0,'Takistani']];
+
+_c = _c + ['TKLaunchers_EP1'];
+_i = _i + [['','',6250,0,0,0,'Ammo',0,'Takistani']];
+
+_c = _c + ['TKSpecialWeapons_EP1'];
+_i = _i + [['','',7200,0,0,0,'Ammo',0,'Takistani']];
+
+for '_z' from 0 to (count _c)-1 do {
+ if (isClass (configFile >> 'CfgVehicles' >> (_c select _z))) then {
+ _get = (_c select _z) Call GetNamespace;
+ if (isNil '_get') then {
+ if ((_i select _z) select 0 == '') then {(_i select _z) set [0, [_c select _z,'displayName'] Call GetConfigInfo]};
+ if (WF_Debug) then {(_i select _z) set [3,1]};
+ _p = if ((_c select _z) isKindOf 'Man') then {'portrait'} else {'picture'};
+ (_i select _z) set [1, [_c select _z,_p] Call GetConfigInfo];
+ [_c select _z,_i select _z] Call SetNamespace;
+ } else {
+ diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_TK: Duplicated Element found '%1'",(_c select _z),diag_frameno,diag_tickTime];
+ };
+ } else {
+ diag_log Format ["[WFBE (ERROR)][frameno:%2 | ticktime:%3] Core_TK: Element '%1' is not a valid class.",(_c select _z),diag_frameno,diag_tickTime];
+ };
+};
+
+diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_TK: Initialization (%1 Elements) - [Done]",count _c,diag_frameno,diag_tickTime]; \ No newline at end of file
diff --git a/Common/Config/Core/Core_TKA.sqf b/Common/Config/Core/Core_TKA.sqf
new file mode 100644
index 0000000..50db7ff
--- /dev/null
+++ b/Common/Config/Core/Core_TKA.sqf
@@ -0,0 +1,265 @@
+/* TKA Configuration */
+Private ['_c','_get','_i','_p','_z'];
+
+_c = [];
+_i = [];
+
+/* Infantry */
+_c = _c + ['TK_Soldier_EP1'];
+_i = _i + [['','',150,4,-1,0,0,0.77,'Takistani Army',[]]];
+
+_c = _c + ['TK_Soldier_B_EP1'];
+_i = _i + [['','',125,4,-1,0,0,0.77,'Takistani Army',[]]];
+
+_c = _c + ['TK_Soldier_TWS_EP1'];
+_i = _i + [['','',205,5,-1,0,0,0.82,'Takistani Army',[]]];
+
+_c = _c + ['TK_Soldier_Engineer_EP1'];
+_i = _i + [['','',155,5,-1,0,0,0.78,'Takistani Army',[]]];
+
+_c = _c + ['TK_Soldier_LAT_EP1'];
+_i = _i + [['','',225,5,-1,0,0,0.78,'Takistani Army',[]]];
+
+_c = _c + ['TK_Soldier_AT_EP1'];
+_i = _i + [['','',310,5,-1,1,0,0.8,'Takistani Army',[]]];
+
+_c = _c + ['TK_Soldier_AAT_EP1'];
+_i = _i + [['','',270,5,-1,1,0,0.8,'Takistani Army',[]]];
+
+_c = _c + ['TK_Soldier_HAT_EP1'];
+_i = _i + [['','',620,7,-1,3,0,0.83,'Takistani Army',[]]];
+
+_c = _c + ['TK_Soldier_AA_EP1'];
+_i = _i + [['','',425,6,-1,1,0,0.82,'Takistani Army',[]]];
+
+_c = _c + ['TK_Soldier_AR_EP1'];
+_i = _i + [['','',210,5,-1,1,0,0.79,'Takistani Army',[]]];
+
+_c = _c + ['TK_Soldier_AMG_EP1'];
+_i = _i + [['','',205,5,-1,0,0,0.8,'Takistani Army',[]]];
+
+_c = _c + ['TK_Soldier_MG_EP1'];
+_i = _i + [['','',220,5,-1,0,0,0.8,'Takistani Army',[]]];
+
+_c = _c + ['TK_Soldier_GL_EP1'];
+_i = _i + [['','',160,5,-1,0,0,0.78,'Takistani Army',[]]];
+
+_c = _c + ['TK_Soldier_Sniper_EP1'];
+_i = _i + [['','',280,5,-1,1,0,0.88,'Takistani Army',[]]];
+
+_c = _c + ['TK_Soldier_SniperH_EP1'];
+_i = _i + [['','',320,5,-1,3,0,0.88,'Takistani Army',[]]];
+
+_c = _c + ['TK_Soldier_Spotter_EP1'];
+_i = _i + [['','',290,5,-1,1,0,0.82,'Takistani Army',[]]];
+
+_c = _c + ['TK_Soldier_Medic_EP1'];
+_i = _i + [['','',190,4,-1,0,0,0.81,'Takistani Army',[]]];
+
+_c = _c + ['TK_Soldier_Crew_EP1'];
+_i = _i + [['','',120,4,-1,0,0,0.76,'Takistani Army',[]]];
+
+_c = _c + ['TK_Soldier_Pilot_EP1'];
+_i = _i + [['','',120,4,-1,0,0,0.77,'Takistani Army',[]]];
+
+_c = _c + ['TK_Soldier_Officer_EP1'];
+_i = _i + [['','',240,5,-1,1,0,0.85,'Takistani Army',[]]];
+
+_c = _c + ['TK_Soldier_SL_EP1'];
+_i = _i + [['','',220,5,-1,2,0,0.86,'Takistani Army',[]]];
+
+/* Light Vehicles */
+_c = _c + ['TT650_TK_EP1'];
+_i = _i + [['','',150,15,-2,0,1,0,'Takistani Army',[]]];
+
+_c = _c + ['UAZ_Unarmed_TK_EP1'];
+_i = _i + [['','',260,15,-2,0,1,0,'Takistani Army',[]]];
+
+_c = _c + ['SUV_TK_EP1'];
+_i = _i + [['','',290,15,-2,0,1,0,'Takistani Army',[]]];
+
+_c = _c + ['UAZ_MG_TK_EP1'];
+_i = _i + [['','',460,15,-2,0,1,0,'Takistani Army',[]]];
+
+_c = _c + ['UAZ_AGS30_TK_EP1'];
+_i = _i + [['','',585,15,-2,1,1,0,'Takistani Army',[]]];
+
+_c = _c + ['LandRover_MG_TK_EP1'];
+_i = _i + [['','',550,17,-2,0,1,0,'Takistani Army',[]]];
+
+_c = _c + ['LandRover_SPG9_TK_EP1'];
+_i = _i + [['','',750,17,-2,2,1,0,'Takistani Army',[]]];
+
+_c = _c + ['V3S_TK_EP1'];
+_i = _i + [['','',275,20,-2,0,1,0,'Takistani Army',[]]];
+
+_c = _c + ['V3S_Open_TK_EP1'];
+_i = _i + [['','',250,20,-2,0,1,0,'Takistani Army',[]]];
+
+_c = _c + ['UralRepair_TK_EP1'];
+_i = _i + [['','',425,17,-2,2,1,0,'Takistani Army',[]]];
+
+_c = _c + ['UralSalvage_TK_EP1'];
+_i = _i + [['','',450,17,-2,1,1,0,'Takistani Army',[]]];
+
+_c = _c + ['UralReammo_TK_EP1'];
+_i = _i + [['','',450,18,-2,1,1,0,'Takistani Army',[]]];
+
+_c = _c + ['UralRefuel_TK_EP1'];
+_i = _i + [['','',400,19,-2,1,1,0,'Takistani Army',[]]];
+
+_c = _c + ['UralSupply_TK_EP1'];
+_i = _i + [['','',450,21,-2,0,1,0,'Takistani Army',[]]];
+
+_c = _c + ['M113Ambul_TK_EP1'];
+_i = _i + [['','',750,25,-2,1,1,0,'Takistani Army',[]]];
+
+_c = _c + ['BRDM2_TK_EP1'];
+_i = _i + [['','',1100,22,-2,1,1,0,'Takistani Army',[]]];
+
+_c = _c + ['BRDM2_ATGM_TK_EP1'];
+_i = _i + [['','',1650,22,-2,2,1,0,'Takistani Army',[]]];
+
+_c = _c + ['BTR60_TK_EP1'];
+_i = _i + [['','',1425,25,-2,2,1,0,'Takistani Army',[]]];
+
+_c = _c + ['Ural_ZU23_TK_EP1'];
+_i = _i + [['','',1750,25,-2,2,1,0,'Takistani Army',[]]];
+
+_c = _c + ['GRAD_TK_EP1'];
+_i = _i + [['','',4200,25,-2,3,1,0,'Takistani Army',[]]];
+
+/* Heavy Vehicles */
+_c = _c + ['M113_TK_EP1'];
+_i = _i + [['','',1100,22,-2,0,2,0,'Takistani Army',[]]];
+
+_c = _c + ['BMP2_TK_EP1'];
+_i = _i + [['','',2600,25,-2,if (WF_A2_Arrowhead) then {0} else {1},2,0,'Takistani Army',[]]];
+
+_c = _c + ['ZSU_TK_EP1'];
+_i = _i + [['','',3400,25,-2,1,2,0,'Takistani Army',[]]];
+
+_c = _c + ['T34_TK_EP1'];
+_i = _i + [['','',3900,25,-2,0,2,0,'Takistani Army',[]]];
+
+_c = _c + ['T55_TK_EP1'];
+_i = _i + [['','',4500,27,-2,1,2,0,'Takistani Army',[]]];
+
+_c = _c + ['T72_TK_EP1'];
+_i = _i + [['','',4900,30,-2,2,2,0,'Takistani Army',[]]];
+
+/* Air Vehicles */
+_c = _c + ['An2_TK_EP1'];
+_i = _i + [['','',15000,35,-2,1,3,0,'Takistani Army',[]]];
+
+_c = _c + ['Mi17_TK_EP1'];
+_i = _i + [['','',15000,33,-2,0,3,0,'Takistani Army',[]]];
+
+_c = _c + ['UH1H_TK_EP1'];
+_i = _i + [['','',12500,30,-2,0,3,0,'Takistani Army',[]]];
+
+_c = _c + ['Mi24_D_TK_EP1'];
+_i = _i + [['','',65000,40,-2,1,3,0,'Takistani Army',[]]];
+
+_c = _c + ['L39_TK_EP1'];
+_i = _i + [['','',70000,50,-2,2,3,0,'Takistani Army',[]]];
+
+_c = _c + ['Su25_TK_EP1'];
+_i = _i + [['','',90000,55,-2,3,3,0,'Takistani Army',[]]];
+
+/* Static Defenses */
+_c = _c + ['WarfareBMGNest_PK_TK_EP1'];
+_i = _i + [['','',300,0,1,0,'Defense',0,'Takistani Army',[]]];
+
+_c = _c + ['KORD_TK_EP1'];
+_i = _i + [['KORD Minitripod','',200,0,1,0,'Defense',0,'Takistani Army',[]]];
+
+_c = _c + ['KORD_high_TK_EP1'];
+_i = _i + [['KORD','',225,0,1,0,'Defense',0,'Takistani Army',[]]];
+
+_c = _c + ['SearchLight_TK_EP1'];
+_i = _i + [['','',125,0,1,0,'Defense',0,'Takistani Army',[]]];
+
+_c = _c + ['AGS_TK_EP1'];
+_i = _i + [['','',650,0,1,0,'Defense',0,'Takistani Army',[]]];
+
+_c = _c + ['SPG9_TK_INS_EP1'];
+_i = _i + [['','',475,0,1,0,'Defense',0,'Takistani Army',[]]];
+
+_c = _c + ['Metis_TK_EP1'];
+_i = _i + [['Metis-M 9K115-2','',725,0,1,0,'Defense',0,'Takistani Army',[]]];
+
+_c = _c + ['Igla_AA_pod_TK_EP1'];
+_i = _i + [['Igla AA POD launcher','',815,0,1,0,'Defense',0,'Takistani Army',[]]];
+
+_c = _c + ['ZU23_TK_EP1'];
+_i = _i + [['','',945,0,1,0,'Defense',0,'Takistani Army',[]]];
+
+_c = _c + ['2b14_82mm_TK_EP1'];
+_i = _i + [['Podnos 2B14','',1025,0,1,0,'Defense',0,'Takistani Army',[]]];
+
+_c = _c + ['D30_TK_EP1'];
+_i = _i + [['','',2300,0,1,0,'Defense',0,'Takistani Army',[]]];
+
+/* Defense Structures */
+_c = _c + ['TK_WarfareBBarrier5x_EP1'];
+_i = _i + [['','',15,0,0,0,'Fortification',0,'Takistani Army',[]]];
+
+_c = _c + ['TK_WarfareBBarrier10x_EP1'];
+_i = _i + [['','',25,0,0,0,'Fortification',0,'Takistani Army',[]]];
+
+_c = _c + ['TK_WarfareBBarrier10xTall_EP1'];
+_i = _i + [['','',50,0,0,0,'Fortification',0,'Takistani Army',[]]];
+
+_c = _c + ['Land_CamoNet_EAST_EP1'];
+_i = _i + [['','',35,0,0,0,'Strategic',0,'Takistani Army',[]]];
+
+_c = _c + ['Land_CamoNetVar_EAST_EP1'];
+_i = _i + [['','',45,0,0,0,'Strategic',0,'Takistani Army',[]]];
+
+_c = _c + ['Land_CamoNetB_EAST_EP1'];
+_i = _i + [['','',55,0,0,0,'Strategic',0,'Takistani Army',[]]];
+
+_c = _c + ['TKOrdnanceBox_EP1'];
+_i = _i + [['','',850,0,0,0,'Ammo',0,'Takistani Army',[]]];
+
+_c = _c + ['TKVehicleBox_EP1'];
+_i = _i + [['','',1200,0,0,0,'Ammo',0,'Takistani Army',[]]];
+
+_c = _c + ['TKBasicAmmunitionBox_EP1'];
+_i = _i + [['','',1950,0,0,0,'Ammo',0,'Takistani Army',[]]];
+
+_c = _c + ['TKBasicWeapons_EP1'];
+_i = _i + [['','',2975,0,0,0,'Ammo',0,'Takistani Army',[]]];
+
+_c = _c + ['TKLaunchers_EP1'];
+_i = _i + [['','',6250,0,0,0,'Ammo',0,'Takistani Army',[]]];
+
+_c = _c + ['TKSpecialWeapons_EP1'];
+_i = _i + [['','',7200,0,0,0,'Ammo',0,'Takistani Army',[]]];
+
+for '_z' from 0 to (count _c)-1 do {
+ if (isClass (configFile >> 'CfgVehicles' >> (_c select _z))) then {
+ _get = (_c select _z) Call GetNamespace;
+ if (isNil '_get') then {
+ if ((_i select _z) select 0 == '') then {(_i select _z) set [0, [_c select _z,'displayName'] Call GetConfigInfo]};
+ if (typeName ((_i select _z) select 4) == 'SCALAR') then {
+ if (((_i select _z) select 4) == -2) then {
+ _ret = (_c select _z) Call Compile preprocessFile "Common\Functions\Common_GetConfigVehicleCrewSlot.sqf";
+ (_i select _z) set [4, _ret select 0];
+ (_i select _z) set [9, _ret select 1];
+ };
+ };
+ if (WF_Debug) then {(_i select _z) set [3,1]};
+ _p = if ((_c select _z) isKindOf 'Man') then {'portrait'} else {'picture'};
+ (_i select _z) set [1, [_c select _z,_p] Call GetConfigInfo];
+ [_c select _z,_i select _z] Call SetNamespace;
+ } else {
+ diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_TKA: Duplicated Element found '%1'",(_c select _z),diag_frameno,diag_tickTime];
+ };
+ } else {
+ diag_log Format ["[WFBE (ERROR)][frameno:%2 | ticktime:%3] Core_TKA: Element '%1' is not a valid class.",(_c select _z),diag_frameno,diag_tickTime];
+ };
+};
+
+diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_TKA: Initialization (%1 Elements) - [Done]",count _c,diag_frameno,diag_tickTime]; \ No newline at end of file
diff --git a/Common/Config/Core/Core_TKCIV.sqf b/Common/Config/Core/Core_TKCIV.sqf
new file mode 100644
index 0000000..e1949e1
--- /dev/null
+++ b/Common/Config/Core/Core_TKCIV.sqf
@@ -0,0 +1,133 @@
+/* CIV Configuration */
+private ["_c","_get","_i","_p"];
+
+_c = [];
+_i = [];
+
+/* Infantry */
+_c = _c + ['TK_CIV_Worker01_EP1'];
+_i = _i + [['','',375,4,-1,0,0,0.4,'Takistani Civilians',[]]];
+
+_c = _c + ['TK_CIV_Worker02_EP1'];
+_i = _i + [['','',375,4,-1,0,0,0.4,'Takistani Civilians',[]]];
+
+/* Light Vehicles */
+_c = _c + ['Old_bike_TK_CIV_EP1'];
+_i = _i + [['','',50,8,-2,0,1,0,'Takistani Civilians',[]]];
+
+_c = _c + ['Old_moto_TK_Civ_EP1'];
+_i = _i + [['','',100,12,-2,0,1,0,'Takistani Civilians',[]]];
+
+_c = _c + ['TT650_TK_CIV_EP1'];
+_i = _i + [['','',110,15,-2,0,1,0,'Takistani Civilians',[]]];
+
+_c = _c + ['Lada1_TK_CIV_EP1'];
+_i = _i + [['','',175,18,-2,0,1,0,'Takistani Civilians',[]]];
+
+_c = _c + ['Lada2_TK_CIV_EP1'];
+_i = _i + [['','',175,18,-2,0,1,0,'Takistani Civilians',[]]];
+
+_c = _c + ['Volha_1_TK_CIV_EP1'];
+_i = _i + [['','',200,21,-2,0,1,0,'Takistani Civilians',[]]];
+
+_c = _c + ['Volha_2_TK_CIV_EP1'];
+_i = _i + [['','',200,21,-2,0,1,0,'Takistani Civilians',[]]];
+
+_c = _c + ['VolhaLimo_TK_CIV_EP1'];
+_i = _i + [['','',200,22,-2,0,1,0,'Takistani Civilians',[]]];
+
+_c = _c + ['LandRover_TK_CIV_EP1'];
+_i = _i + [['','',250,24,-2,0,1,0,'Takistani Civilians',[]]];
+
+_c = _c + ['S1203_TK_CIV_EP1'];
+_i = _i + [['','',320,25,-2,0,1,0,'Takistani Civilians',[]]];
+
+_c = _c + ['V3S_Open_TK_CIV_EP1'];
+_i = _i + [['','',380,25,-2,0,1,0,'Takistani Civilians',[]]];
+
+_c = _c + ['Ural_TK_CIV_EP1'];
+_i = _i + [['','',390,25,-2,0,1,0,'Takistani Civilians',[]]];
+
+_c = _c + ['Ikarus_TK_CIV_EP1'];
+_i = _i + [['','',420,25,-2,0,1,0,'Takistani Civilians',[]]];
+
+/* Defense Structures */
+_c = _c + ['Land_HBarrier3'];
+_i = _i + [['','',20,0,0,0,'Fortification',0,'Takistani Civilians',[]]];
+
+_c = _c + ['Land_HBarrier5'];
+_i = _i + [['','',30,0,0,0,'Fortification',0,'Takistani Civilians',[]]];
+
+_c = _c + ['Land_HBarrier_large'];
+_i = _i + [['','',50,0,0,0,'Fortification',0,'Takistani Civilians',[]]];
+
+_c = _c + ['Land_fort_bagfence_long'];
+_i = _i + [['','',10,0,0,0,'Fortification',0,'Takistani Civilians',[]]];
+
+_c = _c + ['Land_fort_bagfence_corner'];
+_i = _i + [['','',8,0,0,0,'Fortification',0,'Takistani Civilians',[]]];
+
+_c = _c + ['Land_fort_bagfence_round'];
+_i = _i + [['','',12,0,0,0,'Fortification',0,'Takistani Civilians',[]]];
+
+_c = _c + ['Hhedgehog_concreteBig'];
+_i = _i + [['','',95,0,0,0,'Fortification',0,'Takistani Civilians',[]]];
+
+_c = _c + ['Hedgehog_EP1'];
+_i = _i + [['','',5,0,0,0,'Fortification',0,'Takistani Civilians',[]]];
+
+_c = _c + ['HeliH'];
+_i = _i + [['','',15,0,0,0,'Strategic',0,'Takistani Civilians',[]]];
+
+_c = _c + ['MASH_EP1'];
+_i = _i + [['','',30,0,0,0,'Strategic',0,'Takistani Civilians',[]]];
+
+_c = _c + ['Land_Campfire'];
+_i = _i + [['','',3,0,0,0,'Strategic',0,'Civilians',[]]];
+
+_c = _c + ['Land_fort_rampart_EP1'];
+_i = _i + [['','',30,0,0,0,'Fortification',0,'Takistani Civilians',[]]];
+
+_c = _c + ['Land_fort_artillery_nest_EP1'];
+_i = _i + [[localize 'STR_WF_ArtilleryNest','',65,0,0,0,'Fortification',0,'Takistani Civilians',[]]];
+
+_c = _c + ['Land_fortified_nest_small_EP1'];
+_i = _i + [['','',40,0,0,0,'Fortification',0,'Takistani Civilians',[]]];
+
+_c = _c + ['Sign_Danger'];
+_i = _i + [[localize 'STR_WF_Minefield','',1200,0,0,0,'Strategic',0,'Takistani Civilians',[]]];
+
+_c = _c + ['Fort_RazorWire'];
+_i = _i + [['','',25,0,0,0,'Fortification',0,'Takistani Civilians',[]]];
+
+_c = _c + ['Concrete_Wall_EP1'];
+_i = _i + [['','',20,0,0,0,'Fortification',0,'Takistani Civilians',[]]];
+
+_c = _c + ['Land_Ind_IlluminantTower'];
+_i = _i + [['','',200,0,0,0,'Fortification',0,'Takistani Civilians',[]]];
+
+for '_z' from 0 to (count _c)-1 do {
+ if (isClass (configFile >> 'CfgVehicles' >> (_c select _z))) then {
+ _get = (_c select _z) Call GetNamespace;
+ if (isNil '_get') then {
+ if ((_i select _z) select 0 == '') then {(_i select _z) set [0, [_c select _z,'displayName'] Call GetConfigInfo]};
+ if (typeName ((_i select _z) select 4) == 'SCALAR') then {
+ if (((_i select _z) select 4) == -2) then {
+ _ret = (_c select _z) Call Compile preprocessFile "Common\Functions\Common_GetConfigVehicleCrewSlot.sqf";
+ (_i select _z) set [4, _ret select 0];
+ (_i select _z) set [9, _ret select 1];
+ };
+ };
+ if (WF_Debug) then {(_i select _z) set [3,1]};
+ _p = if ((_c select _z) isKindOf 'Man') then {'portrait'} else {'picture'};
+ (_i select _z) set [1, [_c select _z,_p] Call GetConfigInfo];
+ [_c select _z,_i select _z] Call SetNamespace;
+ } else {
+ diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_TKCIV: Duplicated Element found '%1'",(_c select _z),diag_frameno,diag_tickTime];
+ };
+ } else {
+ diag_log Format ["[WFBE (ERROR)][frameno:%2 | ticktime:%3] Core_TKCIV: Element '%1' is not a valid class.",(_c select _z),diag_frameno,diag_tickTime];
+ };
+};
+
+diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_TKCIV: Initialization (%1 Elements) - [Done]",count _c,diag_frameno,diag_tickTime]; \ No newline at end of file
diff --git a/Common/Config/Core/Core_TKGUE.sqf b/Common/Config/Core/Core_TKGUE.sqf
new file mode 100644
index 0000000..d6dbea0
--- /dev/null
+++ b/Common/Config/Core/Core_TKGUE.sqf
@@ -0,0 +1,128 @@
+/* TK GUE Configuration */
+private ["_c","_get","_i","_p"];
+
+_c = [];
+_i = [];
+
+/* Infantry */
+_c = _c + ['TK_GUE_Soldier_EP1'];
+_i = _i + [['','',110,4,-1,0,0,0.48,'Takistani Guerilla',[]]];
+
+_c = _c + ['TK_GUE_Soldier_2_EP1'];
+_i = _i + [['','',120,4,-1,0,0,0.46,'Takistani Guerilla',[]]];
+
+_c = _c + ['TK_GUE_Soldier_3_EP1'];
+_i = _i + [['','',110,4,-1,0,0,0.5,'Takistani Guerilla',[]]];
+
+_c = _c + ['TK_GUE_Soldier_4_EP1'];
+_i = _i + [['','',100,5,-1,0,0,0.49,'Takistani Guerilla',[]]];
+
+_c = _c + ['TK_GUE_Soldier_5_EP1'];
+_i = _i + [['','',100,5,-1,0,0,0.47,'Takistani Guerilla',[]]];
+
+_c = _c + ['TK_GUE_Soldier_AT_EP1'];
+_i = _i + [['','',220,4,-1,1,0,0.52,'Takistani Guerilla',[]]];
+
+_c = _c + ['TK_GUE_Soldier_AAT_EP1'];
+_i = _i + [['','',210,4,-1,2,0,0.51,'Takistani Guerilla',[]]];
+
+_c = _c + ['TK_GUE_Soldier_AA_EP1'];
+_i = _i + [['','',270,4,-1,2,0,0.53,'Takistani Guerilla',[]]];
+
+_c = _c + ['TK_GUE_Soldier_AR_EP1'];
+_i = _i + [['','',190,5,-1,1,0,0.52,'Takistani Guerilla',[]]];
+
+_c = _c + ['TK_GUE_Soldier_MG_EP1'];
+_i = _i + [['','',200,6,-1,0,0,0.53,'Takistani Guerilla',[]]];
+
+_c = _c + ['TK_GUE_Soldier_Sniper_EP1'];
+_i = _i + [['','',180,5,-1,1,0,0.56,'Takistani Guerilla',[]]];
+
+_c = _c + ['TK_GUE_Bonesetter_EP1'];
+_i = _i + [['','',125,5,-1,0,0,0.49,'Takistani Guerilla',[]]];
+
+_c = _c + ['TK_GUE_Soldier_HAT_EP1'];
+_i = _i + [['','',350,5,-1,3,0,0.58,'Takistani Guerilla',[]]];
+
+_c = _c + ['TK_GUE_Soldier_TL_EP1'];
+_i = _i + [['','',200,5,-1,2,0,0.61,'Takistani Guerilla',[]]];
+
+_c = _c + ['TK_GUE_Warlord_EP1'];
+_i = _i + [['','',210,5,-1,1,0,0.59,'Takistani Guerilla',[]]];
+
+/* Light Vehicles */
+_c = _c + ['V3S_TK_GUE_EP1'];
+_i = _i + [['','',175,15,-2,0,1,0,'Takistani Guerilla',[]]];
+
+_c = _c + ['Pickup_PK_TK_GUE_EP1'];
+_i = _i + [['','',250,17,-2,0,1,0,'Takistani Guerilla',[]]];
+
+_c = _c + ['Offroad_DSHKM_TK_GUE_EP1'];
+_i = _i + [['','',300,25,-2,1,1,0,'Takistani Guerilla',[]]];
+
+_c = _c + ['Offroad_SPG9_TK_GUE_EP1'];
+_i = _i + [['','',380,20,-2,2,1,0,'Takistani Guerilla',[]]];
+
+_c = _c + ['BRDM2_TK_GUE_EP1'];
+_i = _i + [['','',600,25,-2,1,1,0,'Takistani Guerilla',[]]];
+
+_c = _c + ['BTR40_TK_GUE_EP1'];
+_i = _i + [['','',650,25,-2,0,1,0,'Takistani Guerilla',[]]];
+
+_c = _c + ['BTR40_MG_TK_GUE_EP1'];
+_i = _i + [['','',800,25,-2,1,1,0,'Takistani Guerilla',[]]];
+
+_c = _c + ['Ural_ZU23_TK_GUE_EP1'];
+_i = _i + [['','',950,25,-2,3,1,0,'Takistani Guerilla',[]]];
+
+/* Heavy Vehicles */
+_c = _c + ['T34_TK_GUE_EP1'];
+_i = _i + [['','',2400,30,-2,0,2,0,'Takistani Guerilla',[]]];
+
+_c = _c + ['T55_TK_GUE_EP1'];
+_i = _i + [['','',2800,35,-2,1,2,0,'Takistani Guerilla',[]]];
+
+/* Static Defenses */
+_c = _c + ['WarfareBMGNest_PK_TK_GUE_EP1'];
+_i = _i + [['','',300,0,1,0,'Defense',0,'Takistani Guerilla',[]]];
+
+_c = _c + ['DSHKM_TK_GUE_EP1'];
+_i = _i + [['','',225,0,1,0,'Defense',0,'Takistani Guerilla',[]]];
+
+_c = _c + ['AGS_TK_GUE_EP1'];
+_i = _i + [['','',650,0,1,0,'Defense',0,'Takistani Guerilla',[]]];
+
+_c = _c + ['SPG9_TK_GUE_EP1'];
+_i = _i + [['','',475,0,1,0,'Defense',0,'Takistani Guerilla',[]]];
+
+_c = _c + ['ZU23_TK_GUE_EP1'];
+_i = _i + [['','',600,0,1,0,'Defense',0,'Takistani Guerilla',[]]];
+
+_c = _c + ['D30_TK_GUE_EP1'];
+_i = _i + [['','',2300,0,1,0,'Defense',0,'Takistani Guerilla',[]]];
+
+for '_z' from 0 to (count _c)-1 do {
+ if (isClass (configFile >> 'CfgVehicles' >> (_c select _z))) then {
+ _get = (_c select _z) Call GetNamespace;
+ if (isNil '_get') then {
+ if ((_i select _z) select 0 == '') then {(_i select _z) set [0, [_c select _z,'displayName'] Call GetConfigInfo]};
+ if (typeName ((_i select _z) select 4) == 'SCALAR') then {
+ if (((_i select _z) select 4) == -2) then {
+ _ret = (_c select _z) Call Compile preprocessFile "Common\Functions\Common_GetConfigVehicleCrewSlot.sqf";
+ (_i select _z) set [4, _ret select 0];
+ (_i select _z) set [9, _ret select 1];
+ };
+ };
+ if (WF_Debug) then {(_i select _z) set [3,1]};
+ _p = if ((_c select _z) isKindOf 'Man') then {'portrait'} else {'picture'};
+ (_i select _z) set [1, [_c select _z,_p] Call GetConfigInfo];
+ [_c select _z,_i select _z] Call SetNamespace;
+ } else {
+ diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_TKGUE: Duplicated Element found '%1'",(_c select _z),diag_frameno,diag_tickTime];
+ };
+ } else {
+ diag_log Format ["[WFBE (ERROR)][frameno:%2 | ticktime:%3] Core_TKGUE: Element '%1' is not a valid class.",(_c select _z),diag_frameno,diag_tickTime];
+ };
+};
+
+diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_TKGUE: Initialization (%1 Elements) - [Done]",count _c,diag_frameno,diag_tickTime]; \ No newline at end of file
diff --git a/Common/Config/Core/Core_TKSF.sqf b/Common/Config/Core/Core_TKSF.sqf
new file mode 100644
index 0000000..f1fb772
--- /dev/null
+++ b/Common/Config/Core/Core_TKSF.sqf
@@ -0,0 +1,41 @@
+/* TK SF Configuration */
+private ["_c","_get","_i","_p"];
+
+_c = [];
+_i = [];
+
+/* Infantry */
+_c = _c + ['TK_Special_Forces_EP1'];
+_i = _i + [['','',280,6,-1,2,0,0.82,'Takistani Special Forces',[]]];
+
+_c = _c + ['TK_Special_Forces_TL_EP1'];
+_i = _i + [['','',300,6,-1,2,0,0.85,'Takistani Special Forces',[]]];
+
+_c = _c + ['TK_Special_Forces_MG_EP1'];
+_i = _i + [['','',305,6,-1,2,0,0.81,'Takistani Special Forces',[]]];
+
+for '_z' from 0 to (count _c)-1 do {
+ if (isClass (configFile >> 'CfgVehicles' >> (_c select _z))) then {
+ _get = (_c select _z) Call GetNamespace;
+ if (isNil '_get') then {
+ if ((_i select _z) select 0 == '') then {(_i select _z) set [0, [_c select _z,'displayName'] Call GetConfigInfo]};
+ if (typeName ((_i select _z) select 4) == 'SCALAR') then {
+ if (((_i select _z) select 4) == -2) then {
+ _ret = (_c select _z) Call Compile preprocessFile "Common\Functions\Common_GetConfigVehicleCrewSlot.sqf";
+ (_i select _z) set [4, _ret select 0];
+ (_i select _z) set [9, _ret select 1];
+ };
+ };
+ if (WF_Debug) then {(_i select _z) set [3,1]};
+ _p = if ((_c select _z) isKindOf 'Man') then {'portrait'} else {'picture'};
+ (_i select _z) set [1, [_c select _z,_p] Call GetConfigInfo];
+ [_c select _z,_i select _z] Call SetNamespace;
+ } else {
+ diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_TKSF: Duplicated Element found '%1'",(_c select _z),diag_frameno,diag_tickTime];
+ };
+ } else {
+ diag_log Format ["[WFBE (ERROR)][frameno:%2 | ticktime:%3] Core_TKSF: Element '%1' is not a valid class.",(_c select _z),diag_frameno,diag_tickTime];
+ };
+};
+
+diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_TKSF: Initialization (%1 Elements) - [Done]",count _c,diag_frameno,diag_tickTime]; \ No newline at end of file
diff --git a/Common/Config/Core/Core_US.sqf b/Common/Config/Core/Core_US.sqf
new file mode 100644
index 0000000..934814b
--- /dev/null
+++ b/Common/Config/Core/Core_US.sqf
@@ -0,0 +1,305 @@
+/* US Configuration */
+private ["_c","_get","_i","_p"];
+
+_c = [];
+_i = [];
+
+/* Infantry */
+_c = _c + ['US_Soldier_Light_EP1'];
+_i = _i + [['','',130,4,-1,0,0,0.86,'US',[]]];
+
+_c = _c + ['US_Soldier_EP1'];
+_i = _i + [['','',150,4,-1,0,0,0.86,'US',[]]];
+
+_c = _c + ['US_Soldier_B_EP1'];
+_i = _i + [['','',155,4,-1,0,0,0.86,'US',[]]];
+
+_c = _c + ['US_Soldier_LAT_EP1'];
+_i = _i + [['','',225,5,-1,0,0,0.88,'US',[]]];
+
+_c = _c + ['US_Soldier_AT_EP1'];
+_i = _i + [['','',350,5,-1,2,0,0.9,'US',[]]];
+
+_c = _c + ['US_Soldier_HAT_EP1'];
+_i = _i + [['','',800,6,-1,3,0,0.92,'US',[]]];
+
+_c = _c + ['US_Soldier_AA_EP1'];
+_i = _i + [['','',400,6,-1,2,0,0.91,'US',[]]];
+
+_c = _c + ['US_Soldier_AR_EP1'];
+_i = _i + [['','',210,5,-1,1,0,0.88,'US',[]]];
+
+_c = _c + ['US_Soldier_MG_EP1'];
+_i = _i + [['','',220,5,-1,0,0,0.89,'US',[]]];
+
+_c = _c + ['US_Soldier_GL_EP1'];
+_i = _i + [['','',160,5,-1,0,0,0.87,'US',[]]];
+
+_c = _c + ['US_Soldier_Sniper_EP1'];
+_i = _i + [['','',320,6,-1,2,0,0.92,'US',[]]];
+
+_c = _c + ['US_Soldier_SniperH_EP1'];
+_i = _i + [['','',350,6,-1,3,0,0.93,'US',[]]];
+
+_c = _c + ['US_Soldier_Sniper_NV_EP1'];
+_i = _i + [['','',370,6,-1,3,0,0.94,'US',[]]];
+
+_c = _c + ['US_Soldier_Marksman_EP1'];
+_i = _i + [['','',330,6,-1,2,0,0.91,'US',[]]];
+
+_c = _c + ['US_Soldier_Medic_EP1'];
+_i = _i + [['','',190,4,-1,0,0,0.89,'US',[]]];
+
+_c = _c + ['US_Soldier_Engineer_EP1'];
+_i = _i + [['','',225,5,-1,0,0,0.87,'US',[]]];
+
+_c = _c + ['US_Soldier_AMG_EP1'];
+_i = _i + [['','',185,6,-1,2,0,0.87,'US',[]]];
+
+_c = _c + ['US_Soldier_AAR_EP1'];
+_i = _i + [['','',185,6,-1,3,0,0.87,'US',[]]];
+
+_c = _c + ['US_Soldier_AHAT_EP1'];
+_i = _i + [['','',185,6,-1,3,0,0.89,'US',[]]];
+
+_c = _c + ['US_Soldier_AAT_EP1'];
+_i = _i + [['','',320,6,-1,3,0,0.88,'US',[]]];
+
+_c = _c + ['US_Soldier_Spotter_EP1'];
+_i = _i + [['','',320,6,-1,3,0,0.91,'US',[]]];
+
+_c = _c + ['US_Soldier_Crew_EP1'];
+_i = _i + [['','',120,4,-1,0,0,0.86,'US',[]]];
+
+_c = _c + ['US_Soldier_Pilot_EP1'];
+_i = _i + [['','',120,4,-1,0,0,0.87,'US',[]]];
+
+_c = _c + ['US_Soldier_TL_EP1'];
+_i = _i + [['','',240,5,-1,1,0,0.94,'US',[]]];
+
+_c = _c + ['US_Soldier_SL_EP1'];
+_i = _i + [['','',220,5,-1,2,0,0.93,'US',[]]];
+
+_c = _c + ['US_Soldier_Officer_EP1'];
+_i = _i + [['','',250,5,-1,1,0,0.92,'US',[]]];
+
+/* Light Vehicles */
+_c = _c + ['M1030_US_DES_EP1'];
+_i = _i + [['','',150,12,-2,0,1,0,'US',[]]];
+
+_c = _c + ['ATV_US_EP1'];
+_i = _i + [['','',175,14,-2,0,1,0,'US',[]]];
+
+_c = _c + ['HMMWV_DES_EP1'];
+_i = _i + [['','',300,15,-2,0,1,0,'US',[]]];
+
+_c = _c + ['HMMWV_M1035_DES_EP1'];
+_i = _i + [['','',350,15,-2,0,1,0,'US',[]]];
+
+_c = _c + ['HMMWV_Terminal_EP1'];
+_i = _i + [['','',400,15,-2,0,1,0,'US',[]]];
+
+_c = _c + ['HMMWV_MK19_DES_EP1'];
+_i = _i + [['','',900,18,-2,1,1,0,'US',[]]];
+
+_c = _c + ['HMMWV_M998A2_SOV_DES_EP1'];
+_i = _i + [['','',1050,20,-2,1,1,0,'US',[]]];
+
+_c = _c + ['HMMWV_M1151_M2_DES_EP1'];
+_i = _i + [['','',850,20,-2,0,1,0,'US',[]]];
+
+_c = _c + ['HMMWV_M998_crows_M2_DES_EP1'];
+_i = _i + [['','',1250,22,-2,1,1,0,'US',[]]];
+
+_c = _c + ['HMMWV_M998_crows_MK19_DES_EP1'];
+_i = _i + [['','',1375,22,-2,1,1,0,'US',[]]];
+
+_c = _c + ['HMMWV_TOW_DES_EP1'];
+_i = _i + [['','',1450,20,-2,2,1,0,'US',[]]];
+
+_c = _c + ['HMMWV_Avenger_DES_EP1'];
+_i = _i + [['','',1750,25,-2,3,1,0,'US',[]]];
+
+_c = _c + ['HMMWV_Ambulance_DES_EP1'];
+_i = _i + [['','',725,22,-2,2,1,0,'US',[]]];
+
+_c = _c + ['MTVR_DES_EP1'];
+_i = _i + [['','',400,20,-2,0,1,0,'US',[]]];
+
+_c = _c + ['MtvrSalvage_DES_EP1'];
+_i = _i + [['','',450,21,-2,0,1,0,'US',[]]];
+
+_c = _c + ['MtvrRepair_DES_EP1'];
+_i = _i + [['','',525,22,-2,2,1,0,'US',[]]];
+
+_c = _c + ['MtvrReammo_DES_EP1'];
+_i = _i + [['','',550,22,-2,1,1,0,'US',[]]];
+
+_c = _c + ['MtvrRefuel_DES_EP1'];
+_i = _i + [['','',500,22,-2,1,1,0,'US',[]]];
+
+_c = _c + ['MtvrSupply_DES_EP1'];
+_i = _i + [['','',550,25,-2,0,1,0,'US',[]]];
+
+/* Heavy Vehicles */
+_c = _c + ['M1126_ICV_M2_EP1'];
+_i = _i + [['','',1650,25,[false,true,2,0],0,2,0,'US',[]]];
+
+_c = _c + ['M1126_ICV_mk19_EP1'];
+_i = _i + [['','',1950,25,[false,true,2,0],0,2,0,'US',[]]];
+
+_c = _c + ['M1129_MC_EP1'];
+_i = _i + [['','',2300,25,-2,1,2,0,'US',[]]];
+
+_c = _c + ['M1135_ATGMV_EP1'];
+_i = _i + [['','',1850,25,-2,2,2,0,'US',[]]];
+
+_c = _c + ['M1128_MGS_EP1'];
+_i = _i + [['','',2450,25,-2,2,2,0,'US',[]]];
+
+_c = _c + ['M1133_MEV_EP1'];
+_i = _i + [['','',1950,25,-2,1,2,0,'US',[]]];
+
+_c = _c + ['M2A2_EP1'];
+_i = _i + [['','',4450,30,-2,1,2,0,'US',[]]];
+
+_c = _c + ['M2A3_EP1'];
+_i = _i + [['','',4950,32,-2,2,2,0,'US',[]]];
+
+_c = _c + ['M1A1_US_DES_EP1'];
+_i = _i + [['','',5650,40,-2,2,2,0,'US',[]]];
+
+_c = _c + ['MLRS_DES_EP1'];
+_i = _i + [['','',5800,40,-2,3,2,0,'US',[]]];
+
+_c = _c + ['M1A2_US_TUSK_MG_EP1'];
+_i = _i + [['','',6950,40,-2,3,2,0,'US',[]]];
+
+_c = _c + ['M6_EP1'];
+_i = _i + [['','',8200,35,-2,3,2,0,'US',[]]];
+
+_c = _c + ['M1128_MGS_EP1'];
+_i = _i + [['','',3650,25,2,2,2,0,'US']];
+
+/* Air Vehicles */
+_c = _c + ['MH6J_EP1'];
+_i = _i + [['','',12500,35,-2,0,3,0,'US',[]]];
+
+_c = _c + ['UH60M_EP1'];
+_i = _i + [['','',15000,35,-2,0,3,0,'US',[]]];
+
+_c = _c + ['UH60M_MEV_EP1'];
+_i = _i + [['','',18000,35,-2,0,3,0,'US',[]]];
+
+_c = _c + ['CH_47F_EP1'];
+_i = _i + [['','',20000,40,-2,0,3,0,'US',[]]];
+
+_c = _c + ['C130J_US_EP1'];
+_i = _i + [['','',26500,55,-2,1,3,0,'US',[]]];
+
+_c = _c + ['AH6X_EP1'];
+_i = _i + [['','',35000,50,-2,1,3,0,'US',[]]];
+
+_c = _c + ['AH6J_EP1'];
+_i = _i + [['','',30000,50,-2,1,3,0,'US',[]]];
+
+_c = _c + ['AH64D_EP1'];
+_i = _i + [['','',80000,60,-2,2,3,0,'US',[]]];
+
+_c = _c + ['A10_US_EP1'];
+_i = _i + [['','',100000,65,-2,3,3,0,'US',[]]];
+
+/* Special */
+_c = _c + ['MQ9PredatorB_US_EP1'];
+_i = _i + [['','',30000,35,-2,2,3,0,'US',[]]];
+
+/* Static Defenses */
+_c = _c + ['WarfareBMGNest_M240_US_EP1'];
+_i = _i + [['','',300,0,1,0,'Defense',0,'US',[]]];
+
+_c = _c + ['M2HD_mini_TriPod_US_EP1'];
+_i = _i + [['','',200,0,1,0,'Defense',0,'US',[]]];
+
+_c = _c + ['M2StaticMG_US_EP1'];
+_i = _i + [['','',225,0,1,0,'Defense',0,'US',[]]];
+
+_c = _c + ['SearchLight_US_EP1'];
+_i = _i + [['','',125,0,1,0,'Defense',0,'US',[]]];
+
+_c = _c + ['MK19_TriPod_US_EP1'];
+_i = _i + [['','',700,0,1,0,'Defense',0,'US',[]]];
+
+_c = _c + ['TOW_TriPod_US_EP1'];
+_i = _i + [['','',800,0,1,0,'Defense',0,'US',[]]];
+
+_c = _c + ['Stinger_Pod_US_EP1'];
+_i = _i + [['','',850,0,1,0,'Defense',0,'US',[]]];
+
+_c = _c + ['M252_US_EP1'];
+_i = _i + [['','',1150,0,1,0,'Defense',0,'US',[]]];
+
+_c = _c + ['M119_US_EP1'];
+_i = _i + [['','',2250,0,1,0,'Defense',0,'US',[]]];
+
+/* Defense Structures */
+_c = _c + ['US_WarfareBBarrier5x_EP1'];
+_i = _i + [['','',15,0,0,0,'Fortification',0,'US',[]]];
+
+_c = _c + ['US_WarfareBBarrier10x_EP1'];
+_i = _i + [['','',25,0,0,0,'Fortification',0,'US',[]]];
+
+_c = _c + ['US_WarfareBBarrier10xTall_EP1'];
+_i = _i + [['','',50,0,0,0,'Fortification',0,'US',[]]];
+
+_c = _c + ['Land_CamoNet_NATO_EP1'];
+_i = _i + [['','',35,0,0,0,'Strategic',0,'US',[]]];
+
+_c = _c + ['Land_CamoNetVar_NATO_EP1'];
+_i = _i + [['','',45,0,0,0,'Strategic',0,'US',[]]];
+
+_c = _c + ['Land_CamoNetB_NATO_EP1'];
+_i = _i + [['','',55,0,0,0,'Strategic',0,'US',[]]];
+
+_c = _c + ['USOrdnanceBox_EP1'];
+_i = _i + [['','',850,0,0,0,'Ammo',0,'US',[]]];
+
+_c = _c + ['USVehicleBox_EP1'];
+_i = _i + [['','',1200,0,0,0,'Ammo',0,'US',[]]];
+
+_c = _c + ['USBasicAmmunitionBox_EP1'];
+_i = _i + [['','',1950,0,0,0,'Ammo',0,'US',[]]];
+
+_c = _c + ['USBasicWeapons_EP1'];
+_i = _i + [['','',2975,0,0,0,'Ammo',0,'US',[]]];
+
+_c = _c + ['USLaunchers_EP1'];
+_i = _i + [['','',6250,0,0,0,'Ammo',0,'US',[]]];
+
+_c = _c + ['USSpecialWeapons_EP1'];
+_i = _i + [['','',7200,0,0,0,'Ammo',0,'US',[]]];
+
+for '_z' from 0 to (count _c)-1 do {
+ if (isClass (configFile >> 'CfgVehicles' >> (_c select _z))) then {
+ _get = (_c select _z) Call GetNamespace;
+ if (isNil '_get') then {
+ if ((_i select _z) select 0 == '') then {(_i select _z) set [0, [_c select _z,'displayName'] Call GetConfigInfo]};
+ if (typeName ((_i select _z) select 4) == 'SCALAR') then {
+ if (((_i select _z) select 4) == -2) then {
+ _ret = (_c select _z) Call Compile preprocessFile "Common\Functions\Common_GetConfigVehicleCrewSlot.sqf";
+ (_i select _z) set [4, _ret select 0];
+ (_i select _z) set [9, _ret select 1];
+ };
+ };
+ if (WF_Debug) then {(_i select _z) set [3,1]};
+ _p = if ((_c select _z) isKindOf 'Man') then {'portrait'} else {'picture'};
+ (_i select _z) set [1, [_c select _z,_p] Call GetConfigInfo];
+ [_c select _z,_i select _z] Call SetNamespace;
+ } else {
+ diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_US: Duplicated Element found '%1'",(_c select _z),diag_frameno,diag_tickTime];
+ };
+ } else {
+ diag_log Format ["[WFBE (ERROR)][frameno:%2 | ticktime:%3] Core_US: Element '%1' is not a valid class.",(_c select _z),diag_frameno,diag_tickTime];
+ };
+};
+
+diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_US: Initialization (%1 Elements) - [Done]",count _c,diag_frameno,diag_tickTime]; \ No newline at end of file
diff --git a/Common/Config/Core/Core_USMC.sqf b/Common/Config/Core/Core_USMC.sqf
new file mode 100644
index 0000000..8009423
--- /dev/null
+++ b/Common/Config/Core/Core_USMC.sqf
@@ -0,0 +1,254 @@
+/* USMC Configuration */
+private ["_c","_get","_i","_p"];
+
+_c = [];
+_i = [];
+
+/* Infantry */
+_c = _c + ['USMC_Soldier'];
+_i = _i + [['','',150,4,-1,0,0,0.83,'USMC',[]]];
+
+_c = _c + ['USMC_Soldier2'];
+_i = _i + [['','',125,4,-1,0,0,0.79,'USMC',[]]];
+
+_c = _c + ['USMC_Soldier_LAT'];
+_i = _i + [['','',225,5,-1,0,0,0.84,'USMC',[]]];
+
+_c = _c + ['USMC_Soldier_AT'];
+_i = _i + [['','',350,5,-1,2,0,0.86,'USMC',[]]];
+
+_c = _c + ['USMC_Soldier_HAT'];
+_i = _i + [['','',800,6,-1,3,0,0.88,'USMC',[]]];
+
+_c = _c + ['USMC_Soldier_AA'];
+_i = _i + [['','',400,6,-1,2,0,0.87,'USMC',[]]];
+
+_c = _c + ['USMC_Soldier_AR'];
+_i = _i + [['','',210,5,-1,1,0,0.84,'USMC',[]]];
+
+_c = _c + ['USMC_Soldier_MG'];
+_i = _i + [['','',220,5,-1,0,0,0.85,'USMC',[]]];
+
+_c = _c + ['USMC_Soldier_GL'];
+_i = _i + [['','',160,5,-1,0,0,0.83,'USMC',[]]];
+
+_c = _c + ['USMC_SoldierS_Sniper'];
+_i = _i + [['','',320,6,-1,2,0,0.88,'USMC',[]]];
+
+_c = _c + ['USMC_SoldierM_Marksman'];
+_i = _i + [['','',350,6,-1,2,0,0.9,'USMC',[]]];
+
+_c = _c + ['USMC_SoldierS_SniperH'];
+_i = _i + [['','',400,6,-1,3,0,0.92,'USMC',[]]];
+
+_c = _c + ['USMC_Soldier_Medic'];
+_i = _i + [['','',190,4,-1,0,0,0.85,'USMC',[]]];
+
+_c = _c + ['USMC_SoldierS_Engineer'];
+_i = _i + [['','',225,5,-1,0,0,0.83,'USMC',[]]];
+
+_c = _c + ['USMC_SoldierS'];
+_i = _i + [['','',300,7,-1,1,0,0.88,'USMC',[]]];
+
+_c = _c + ['USMC_SoldierS_Spotter'];
+_i = _i + [['','',320,6,-1,3,0,0.89,'USMC',[]]];
+
+_c = _c + ['USMC_Soldier_Crew'];
+_i = _i + [['','',120,4,-1,0,0,0.81,'USMC',[]]];
+
+_c = _c + ['USMC_Soldier_Pilot'];
+_i = _i + [['','',120,4,-1,0,0,0.8,'USMC',[]]];
+
+_c = _c + ['USMC_Soldier_TL'];
+_i = _i + [['','',240,5,-1,1,0,0.83,'USMC',[]]];
+
+_c = _c + ['USMC_Soldier_SL'];
+_i = _i + [['','',220,5,-1,2,0,0.92,'USMC',[]]];
+
+/* Light Vehicles */
+_c = _c + ['MMT_USMC'];
+_i = _i + [['','',50,10,-2,0,1,0,'USMC',[]]];
+
+_c = _c + ['M1030'];
+_i = _i + [['','',150,12,-2,0,1,0,'USMC',[]]];
+
+_c = _c + ['HMMWV'];
+_i = _i + [['','',300,15,-2,0,1,0,'USMC',[]]];
+
+_c = _c + ['Zodiac'];
+_i = _i + [['','',225,17,-2,0,1,0,'USMC',[]]];
+
+_c = _c + ['HMMWV_M2'];
+_i = _i + [['','',700,18,-2,0,1,0,'USMC',[]]];
+
+_c = _c + ['HMMWV_Armored'];
+_i = _i + [['','',750,20,-2,1,1,0,'USMC',[]]];
+
+_c = _c + ['HMMWV_MK19'];
+_i = _i + [['','',900,22,-2,1,1,0,'USMC',[]]];
+
+_c = _c + ['HMMWV_TOW'];
+_i = _i + [['','',1450,20,-2,2,1,0,'USMC',[]]];
+
+_c = _c + ['HMMWV_Avenger'];
+_i = _i + [['','',1750,25,-2,3,1,0,'USMC',[]]];
+
+_c = _c + ['HMMWV_Ambulance'];
+_i = _i + [['','',725,22,-2,2,1,0,'USMC',[]]];
+
+_c = _c + ['MTVR'];
+_i = _i + [['','',400,20,-2,0,1,0,'USMC',[]]];
+
+_c = _c + ['WarfareSalvageTruck_USMC'];
+_i = _i + [['','',450,21,-2,0,1,0,'USMC',[]]];
+
+_c = _c + ['MtvrRepair'];
+_i = _i + [['','',525,22,-2,0,1,0,'USMC',[]]];
+
+_c = _c + ['WarfareReammoTruck_USMC'];
+_i = _i + [['','',550,22,-2,1,1,0,'USMC',[]]];
+
+_c = _c + ['MtvrRefuel'];
+_i = _i + [['','',500,22,-2,1,1,0,'USMC',[]]];
+
+_c = _c + ['WarfareSupplyTruck_USMC'];
+_i = _i + [['','',550,25,-2,0,1,0,'USMC',[]]];
+
+_c = _c + ['RHIB'];
+_i = _i + [['','',850,25,-2,1,1,0,'USMC',[]]];
+
+_c = _c + ['RHIB2Turret'];
+_i = _i + [['','',1250,27,-2,2,1,0,'USMC',[]]];
+
+_c = _c + ['LAV25'];
+_i = _i + [['','',1650,27,-2,3,1,0,'USMC',[]]];
+
+/* Heavy Vehicles */
+_c = _c + ['AAV'];
+_i = _i + [['','',2550,25,-2,0,2,0,'USMC',[]]];
+
+_c = _c + ['M1A1'];
+_i = _i + [['','',5650,40,-2,if (WF_A2_Vanilla) then {1} else {2},2,0,'USMC',[]]];
+
+_c = _c + ['MLRS'];
+_i = _i + [['','',5800,40,-2,3,2,0,'USMC',[]]];
+
+_c = _c + ['M1A2_TUSK_MG'];
+_i = _i + [['','',6950,40,-2,if (WF_A2_Vanilla) then {2} else {3},2,0,'USMC',[]]];
+
+/* Air Vehicles */
+_c = _c + ['MH60S'];
+_i = _i + [['','',15000,35,-2,0,3,0,'USMC',[]]];
+
+_c = _c + ['UH1Y'];
+_i = _i + [['','',25000,40,-2,1,3,0,'USMC',[]]];
+
+_c = _c + ['MV22'];
+_i = _i + [['','',25000,43,-2,1,3,0,'USMC',[]]];
+
+_c = _c + ['C130J'];
+_i = _i + [['','',26500,52,-2,1,3,0,'USMC',[]]];
+
+_c = _c + ['AH1Z'];
+_i = _i + [['','',86000,60,-2,2,3,0,'USMC',[]]];
+
+_c = _c + ['AH64D'];
+_i = _i + [['','',80000,60,-2,2,3,0,'USMC',[]]];
+
+_c = _c + ['F35B'];
+_i = _i + [['','',90000,62,-2,3,3,0,'USMC',[]]];
+
+_c = _c + ['AV8B'];
+_i = _i + [['','',95000,65,-2,3,3,0,'USMC',[]]];
+
+_c = _c + ['AV8B2'];
+_i = _i + [['','',130000,65,-2,3,3,0,'USMC',[]]];
+
+_c = _c + ['A10'];
+_i = _i + [['','',100000,70,-2,3,3,0,'USMC',[]]];
+
+/* Special */
+_c = _c + ['MQ9PredatorB'];
+_i = _i + [['','',30000,35,2,2,3,0,'USMC',[]]];
+
+/* Static Defenses */
+_c = _c + ['USMC_WarfareBMGNest_M240'];
+_i = _i + [['','',300,0,1,0,'Defense',0,'USMC',[]]];
+
+_c = _c + ['M2HD_mini_TriPod'];
+_i = _i + [['','',200,0,1,0,'Defense',0,'USMC',[]]];
+
+_c = _c + ['M2StaticMG'];
+_i = _i + [['','',225,0,1,0,'Defense',0,'USMC',[]]];
+
+_c = _c + ['SearchLight'];
+_i = _i + [['','',125,0,1,0,'Defense',0,'USMC',[]]];
+
+_c = _c + ['MK19_TriPod'];
+_i = _i + [['','',700,0,1,0,'Defense',0,'USMC',[]]];
+
+_c = _c + ['TOW_TriPod'];
+_i = _i + [['','',800,0,1,0,'Defense',0,'USMC',[]]];
+
+_c = _c + ['Stinger_Pod'];
+_i = _i + [['','',850,0,1,0,'Defense',0,'USMC',[]]];
+
+_c = _c + ['M252'];
+_i = _i + [['','',1150,0,1,0,'Defense',0,'USMC',[]]];
+
+_c = _c + ['M119'];
+_i = _i + [['','',2250,0,1,0,'Defense',0,'USMC',[]]];
+
+/* Defense Structures */
+_c = _c + ['Land_CamoNet_NATO'];
+_i = _i + [['','',35,0,0,0,'Strategic',0,'USMC',[]]];
+
+_c = _c + ['Land_CamoNetVar_NATO'];
+_i = _i + [['','',45,0,0,0,'Strategic',0,'USMC',[]]];
+
+_c = _c + ['Land_CamoNetB_NATO'];
+_i = _i + [['','',55,0,0,0,'Strategic',0,'USMC',[]]];
+
+_c = _c + ['USOrdnanceBox'];
+_i = _i + [['','',850,0,0,0,'Ammo',0,'USMC',[]]];
+
+_c = _c + ['USVehicleBox'];
+_i = _i + [['','',1200,0,0,0,'Ammo',0,'USMC',[]]];
+
+_c = _c + ['USBasicAmmunitionBox'];
+_i = _i + [['','',1950,0,0,0,'Ammo',0,'USMC',[]]];
+
+_c = _c + ['USBasicWeaponsBox'];
+_i = _i + [['','',2975,0,0,0,'Ammo',0,'USMC',[]]];
+
+_c = _c + ['USLaunchersBox'];
+_i = _i + [['','',6250,0,0,0,'Ammo',0,'USMC',[]]];
+
+_c = _c + ['USSpecialWeaponsBox'];
+_i = _i + [['','',7200,0,0,0,'Ammo',0,'USMC',[]]];
+
+for '_z' from 0 to (count _c)-1 do {
+ if (isClass (configFile >> 'CfgVehicles' >> (_c select _z))) then {
+ _get = (_c select _z) Call GetNamespace;
+ if (isNil '_get') then {
+ if ((_i select _z) select 0 == '') then {(_i select _z) set [0, [_c select _z,'displayName'] Call GetConfigInfo]};
+ if (typeName ((_i select _z) select 4) == 'SCALAR') then {
+ if (((_i select _z) select 4) == -2) then {
+ _ret = (_c select _z) Call Compile preprocessFile "Common\Functions\Common_GetConfigVehicleCrewSlot.sqf";
+ (_i select _z) set [4, _ret select 0];
+ (_i select _z) set [9, _ret select 1];
+ };
+ };
+ if (WF_Debug) then {(_i select _z) set [3,1]};
+ _p = if ((_c select _z) isKindOf 'Man') then {'portrait'} else {'picture'};
+ (_i select _z) set [1, [_c select _z,_p] Call GetConfigInfo];
+ [_c select _z,_i select _z] Call SetNamespace;
+ } else {
+ diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_USMC: Duplicated Element found '%1'",(_c select _z),diag_frameno,diag_tickTime];
+ };
+ } else {
+ diag_log Format ["[WFBE (ERROR)][frameno:%2 | ticktime:%3] Core_USMC: Element '%1' is not a valid class.",(_c select _z),diag_frameno,diag_tickTime];
+ };
+};
+
+diag_log Format ["[WFBE (INIT)][frameno:%2 | ticktime:%3] Core_USMC: Initialization (%1 Elements) - [Done]",count _c,diag_frameno,diag_tickTime]; \ No newline at end of file