18 Commits

11 changed files with 241 additions and 140 deletions

View File

@@ -1,13 +1,5 @@
// Custom Arsenal Preset
GRLIB_arsenal_weapons = [
"rhs_weap_ak74n",
"rhs_weap_ak74n_gp25",
"rhs_weap_ak74n_2",
"rhs_weap_ak74n_2_gp25",
"gm_ak74n_wud",
"uk3cb_weap_ak74n_2_1p29",
"uk3cb_weap_ak74n_2_gp25_1p29",
"uk3cb_weap_ak74n_2_1p29_sup",
"arifle_AKM_F",
"arifle_AKM_FL_F",
"rhs_weap_akm",
@@ -17,27 +9,27 @@ GRLIB_arsenal_weapons = [
"rhs_weap_akms",
"rhs_weap_akms_folded",
"rhs_weap_akms_gp25",
"rhs_weap_ak103_base",
"rhs_weap_45th_akm",
"rhs_weap_45th_akm_gp25",
"rhs_weap_45th_akms",
"rhs_weap_m70ab2",
"rhs_weap_m70b1",
"rhs_weap_m76",
"rhs_weap_savz58p",
"rhs_weap_savz58v",
"rhs_weap_m92",
"rhs_weap_savz61",
"rhs_weap_savz61_folded",
"gm_akm_wud",
"gm_akml_wud",
"gm_akmn_wud",
"gm_akms_wud",
"gm_akmsl_wud",
"gm_akmsn_wud",
"gm_akm_pallad_wud",
"uk3cb_weap_akm_sup",
"uk3cb_weap_akm_gp25_sup",
"uk3cb_weap_akmn_sup",
"uk3cb_weap_akmn_gp25_sup",
"uk3cb_weap_akms_sup",
"uk3cb_weap_akmn_gp25_1p29",
"uk3cb_weap_akms_gp25_sup",
"uk3cb_weap_akms_folded_sup",
"uk3cb_weap_akmn_1p29",
"uk3cb_weap_akmn_1p29_sup",
"gm_mpikm_brn",
"gm_mpikm72_brn",
"gm_mpikms72_brn",
@@ -70,14 +62,7 @@ GRLIB_arsenal_weapons = [
"rhs_weap_ak74n_2",
"rhs_weap_ak74n_2_gp25",
"rhs_weap_ak74_3",
"rhs_weap_45th_ak74_ekp1",
"gm_ak74n_wud",
"gm_mpiak74n_brn",
"gm_mpiak74n_blk",
"gm_mpiak74n_prp",
"uk3cb_weap_ak74n_2_1p29",
"uk3cb_weap_ak74n_2_gp25_1p29",
"uk3cb_weap_ak74n_2_1p29_sup",
"rhs_weap_aks74",
"rhs_weap_aks74_folded",
"rhs_weap_aks74_2",
@@ -94,19 +79,9 @@ GRLIB_arsenal_weapons = [
"rhs_weap_aks74un_folded",
"rhs_weap_aks74u_sup",
"rhs_weap_aks74un_sup",
"gm_mpiaks74n_brn",
"gm_mpiaks74nk_brn",
"gm_mpiaks74n_blk",
"gm_mpiaks74nk_blk",
"gm_mpiaks74n_prp",
"gm_mpiaks74nk_prp",
"uk3cb_weap_aks74un_ekp8",
"uk3cb_weap_aks74un_ekp8_sup",
"rhs_weap_asval",
"rhs_weap_asval_folded",
"rhs_asval_pso1",
"rhs_weap_45th_asval",
"rhs_weap_vmf_asval",
"uk3cb_sks_01",
"uk3cb_sks_01_sling",
"rhs_weap_svd",
@@ -118,7 +93,6 @@ GRLIB_arsenal_weapons = [
"uk3cb_weap_svd_old_pso1m2_sup",
"rhs_weap_vss",
"rhs_weap_pkm",
"gm_hmgpkm_prp",
"gm_lmgk500_brn",
"gm_lmgk500_blk",
"gm_lmgk500_prp",
@@ -141,12 +115,8 @@ GRLIB_arsenal_weapons = [
"UK3CB_RPK_74_PLUM",
"UK3CB_RPK_74N",
"UK3CB_RPK_74N_PLUM",
"uk3cb_rpk_74n_plum_ekp802",
"gm_rpk74n_wud",
"UK3CB_RPKN",
"uk3cb_rpkn_ekp802",
"uk3cb_rpkn_blk_ekp802_sup",
"uk3cb_rpkn_blk_ekp802",
"UK3CB_RPKN_PLUM",
"gm_rpkn_wud",
"uk3cb_ppsh41",
@@ -162,13 +132,17 @@ GRLIB_arsenal_weapons = [
"gm_pim_blk",
"gm_pimb_blk",
"rhs_weap_tt33",
"gm_pn3_gry",
"rhs_weap_rsp30_white",
"rhs_weap_rsp30_green",
"rhs_weap_rsp30_red",
"rhs_weap_tr8",
"rhs_weap_Izh18",
//Turrets
//Turrets
"ace_compat_rhs_afrf3_2b14_carry",
"ace_csw_kordCarryTripod",
"ace_csw_kordCarryTripodLow",
"ace_compat_rhs_afrf3_metis_carry",
"ace_compat_rhs_afrf3_kornet_carry",
"ace_compat_rhs_afrf3_ags30_carry",
"ace_compat_rhs_gref3_dshkm_carry",
"ace_csw_carryMortarBaseplate",
@@ -177,7 +151,7 @@ GRLIB_arsenal_weapons = [
"ace_csw_spg9CarryTripod",
"ace_compat_rhs_afrf3_spg9_carry",
//Launchers
//Launchers
"gm_9k32m_oli",
"rhs_weap_igla",
"rhs_weap_rpg18",
@@ -185,15 +159,16 @@ GRLIB_arsenal_weapons = [
"rhs_weap_rpg26",
"rhs_weap_rpg26_used",
"RPG29_Lorad",
"launch_RPG7_F",
"rhs_weap_rpg75",
"rhs_weap_rpg75_used",
"gm_wz78_blk"
"gm_wz78_blk",
"rhs_weap_m80",
"gm_rpg7_wud",
"gm_rpg7_prp"
];
GRLIB_arsenal_magazines = [
//AK74 5.45
//AK74 5.45
"rhs_30Rnd_545x39_AK",
"rhs_30Rnd_545x39_7N6_AK",
"rhs_30Rnd_545x39_7N6M_AK",
@@ -217,12 +192,8 @@ GRLIB_arsenal_magazines = [
"gm_45rnd_545x39mm_ak74_prp",
"gm_45rnd_545x39mm_ak74_org",
"gm_45rnd_545x39mm_ak74_blk",
"rhs_30Rnd_545x39_7N6M_AK",
"rhs_30Rnd_545x39_7N6M_green_AK",
"rhs_30Rnd_545x39_7N6M_plum_AK",
"rhs_45Rnd_545X39_7N6M_AK",
//AKM 7.62
//AKM 7.62
"30Rnd_762x39_Mag_Green_F",
"30Rnd_762x39_Mag_F",
"30Rnd_762x39_Mag_Tracer_Green_F",
@@ -316,7 +287,7 @@ GRLIB_arsenal_magazines = [
"UK3CB_RPK_75rnd_762x39_WT",
"UK3CB_RPK_75rnd_762x39_YT",
//Others
//Others
"uk3cb_10rnd_magazine_sks",
"uk3cb_10rnd_magazine_sks_G",
"uk3cb_10rnd_magazine_sks_R",
@@ -329,8 +300,12 @@ GRLIB_arsenal_magazines = [
"rhssaf_30Rnd_762x39mm_M67",
"rhssaf_30Rnd_762x39mm_M78_tracer",
"rhssaf_30Rnd_762x39_M82_api",
"rhssaf_10Rnd_792x57_m67_tracer",
"rhsgref_10Rnd_792x57_m67",
"rhs_30Rnd_762x39mm_Savz58",
"rhs_30Rnd_762x39mm_Savz58_tracer",
"rhsgref_10rnd_765x17_vz61",
"rhsgref_20rnd_765x17_vz61",
"UK3CB_RPD_100rnd_762x39_G",
"UK3CB_RPD_100rnd_762x39_R",
"UK3CB_RPD_100rnd_762x39_W",
@@ -414,23 +389,13 @@ GRLIB_arsenal_magazines = [
"gm_1Rnd_265mm_smoke_single_vlt_DM24",
"rhs_mag_9x18_12_57N181S",
"rhs_mag_9x18_8_57N181S",
"gm_15Rnd_9x18mm_B_pst_pm63_blk",
"gm_25Rnd_9x18mm_B_pst_pm63_blk",
"gm_8Rnd_9x18mm_B_pst_pm_blk",
"rhs_mag_762x25_8",
"rhs_mag_9k38_rocket",
"rhsgref_1Rnd_00Buck",
"rhsgref_1Rnd_Slug",
//RPG Ammo
"RPG29_AT",
"RPG29_HE_F",
"rhs_pg7_PG7V_mag",
"rhs_pg7_PG7VM_mag",
"rhs_pg7_PG7VS_mag",
"rhs_pg7_PG7VL_mag",
"rhs_pg7_TBG7V_mag",
"gm_1Rnd_72mm_he_9m32m",
//Underbarrel Grenades
//Underbarrel Grenades
"rhs_GDM40",
"rhs_GRD40_Green",
"rhs_GRD40_Red",
@@ -444,8 +409,8 @@ GRLIB_arsenal_magazines = [
"rhs_VG40OP_white",
"rhs_VG40SZ",
"rhs_VG40TB",
"rhs_VG25",
"rhs_VG25P",
"rhs_VOG25",
"rhs_VOG25P",
"1Rnd_SmokeBlue_Grenade_shell",
"1Rnd_SmokeGreen_Grenade_shell",
"1Rnd_SmokeOrange_Grenade_shell",
@@ -453,15 +418,14 @@ GRLIB_arsenal_magazines = [
"1Rnd_SmokeRed_Grenade_shell",
"1Rnd_Smoke_Grenade_shell",
"1Rnd_SmokeYellow_Grenade_shell",
"1Rnd_HE_Grenade_shell",
"UGL_FlareGreen_F",
"UGL_FlareCIR_F",
"UGL_FlareRed_F",
"UGL_FlareWhite_F",
"UGL_FlareYellow_F",
"gm_1Rnd_40x47_he_ngo74",
"gm_1rnd_40x47mm_he_ngo74",
// Grenades
// Grenades
"gm_handgrenade_frag_rgd5",
"rhs_mag_f1",
"rhs_mag_rgn",
@@ -490,7 +454,7 @@ GRLIB_arsenal_magazines = [
"ACE_Chemlight_HiYellow",
"ACE_Chemlight_UltraHiOrange",
// Explosives
// Explosives
"gm_explosive_plnp_charge",
"gm_mine_at_tm46",
"gm_explosive_petn_charge",
@@ -506,7 +470,27 @@ GRLIB_arsenal_magazines = [
"rhs_mine_tm62m_mag",
"rhs_mine_ozm72_a_mag",
"rhs_mine_ozm72_b_mag",
"rhs_mine_ozm72_c_mag"
"rhs_mine_ozm72_c_mag",
// RPG Ammo
"RPG29_AT",
"RPG29_HE_F",
"rhs_rpg7_PG7V_mag",
"rhs_rpg7_PG7VM_mag",
"rhs_rpg7_PG7VS_mag",
"rhs_rpg7_PG7VL_mag",
"rhs_rpg7_TBG7V_mag",
"gm_1Rnd_72mm_he_9m32m",
// CSW weapons
"ace_csw_50Rnd_127x108_mag",
"ACE_1Rnd_82mm_Mo_HE",
"ACE_1Rnd_82mm_Mo_Illum",
"ACE_1Rnd_82mm_Mo_Smoke",
"ace_compat_rhs_afrf3_mag_OG9V",
"ace_compat_rhs_afrf3_mag_PG9N",
"ace_compat_rhs_afrf3_mag_PG9VNT",
"ace_compat_rhs_afrf3_mag_VOG17m_30"
];
GRLIB_arsenal_items = [
@@ -703,10 +687,15 @@ GRLIB_arsenal_items = [
"rhsgref_ssh68_vsr",
//NVG
// NVG
"gm_nsg66_oli",
//Binoculars
// Gloves that are in the NVG slot
"UK3CB_Gloves_black_NVG",
"UK3CB_Gloves_green_NVG",
"UK3CB_Gloves_tan_NVG",
// Binoculars
"rhs_tr8_periscope",
"rhs_tr8_periscope_pip",
"gm_df7x40_blk",
@@ -750,6 +739,10 @@ GRLIB_arsenal_items = [
"JAM_ENVA_H_NVA_KDA_Balaclava_01",
"rhs_balaclava",
"rhs_balaclava1_olive",
"rhs_scarf",
"UK3CB_Gloves_black",
"UK3CB_Gloves_green",
"UK3CB_Gloves_tan",
// Attachments
"gm_pgo7v_blk",
@@ -773,7 +766,9 @@ GRLIB_arsenal_items = [
"rhs_acc_dtk",
"rhs_acc_dtk1983",
"rhs_acc_tgpa",
"rhs_acc_",
"rhs_acc_tgpv",
"rhs_acc_pgs64_74u",
"rhs_acc_pgs64_74un",
"gm_zfk4x25_blk",
"gm_npsu_dovetail_blk",
"gm_npsu_dovetail_gry",
@@ -793,6 +788,10 @@ GRLIB_arsenal_items = [
"gm_suppressor_pbs1_762_blk",
"gm_suppressor_pbs4_545_blk",
"gm_pgo7v_blk",
"gm_pso6x36_1_dovetail_blk",
"gm_pso6x36_1_dovetail_gry",
"gm_pso1_dovetail_blk",
"gm_pso1_dovetail_gry",
// Items
"ToolKit", // Toolkit
@@ -886,7 +885,24 @@ GRLIB_arsenal_items = [
"kat_scalpel",
"kat_stethoscope",
// ACE Items
// Food
"ACE_Canteen",
"ACE_Canteen_Half",
"ACE_Canteen_Empty",
"ACE_WaterBottle",
"ACE_WaterBottle_Half",
"ACE_WaterBottle_Empty",
"ACE_Sunflower_Seeds",
"ACE_MRE_BeefStew",
"ACE_MRE_ChickenTikkaMasala",
"ACE_MRE_CreamChickenSoup",
"ACE_MRE_CreamTomatoSoup",
"ACE_MRE_LambCurry",
"ACE_MRE_MeatballsPasta",
"ACE_MRE_SteakVegetables",
"ACE_MRE_ChickenHerbDumplings",
// ACE Items
"ACE_adenosine", // Adenosine autoinjector
"ACE_artilleryTable", // Artillery Rangetable
"ACE_Banana", // Banana
@@ -895,6 +911,7 @@ GRLIB_arsenal_items = [
"ACE_bloodIV", // Blood IV (1000 ml)
"ACE_bodyBag", // Bodybag
"ACE_CableTie", // Cable Tie
"ACE_Chemlight_Shield", // Chemlight Shield
"ACE_DeadManSwitch", // Dead Man's Switch
"ACE_DefusalKit", // Defusal Kit
"ACE_EarPlugs", // Earplugs
@@ -928,13 +945,13 @@ GRLIB_arsenal_items = [
];
GRLIB_arsenal_backpacks = [
"gm_gc_army_backpack_80_at_str",
"gm_gc_army_backpack_80_lmg_str",
"gm_gc_army_backpack_80_mgk_str",
"gm_gc_army_backpack_80_engineer_str",
"gm_gc_army_backpack_80_demolition_str",
"gm_gc_army_backpack_80_assaultpack_mgk_str",
"gm_gc_army_backpack_80_assaultpack_lmg_str",
"gm_dshkm_aatripod_weaponBag",
"gm_dshkm_weaponBag",
"gm_gc_army_backpack_80_at_empty_str",
"gm_pl_army_backpack_80_at_empty_str",
"gm_gc_army_backpack_80_lmg_empty_str",
"gm_gc_army_backpack_80_assaultpack_mgk_empty_str",
"gm_gc_army_backpack_80_assaultpack_lmg_empty_str",
"gm_fagot_launcher_weaponBag",
"gm_pl_army_backpack_80_oli",
"gm_gc_backpack_r105m_brn",

View File

@@ -38,6 +38,10 @@ _crate setVariable ["KP_liberation_crate_value", _amount, true];
// Add ACE carry functionality
if (KP_liberation_ace) then {[_crate, true, [0, 1.5, 0], 0] remoteExec ["ace_dragging_fnc_setCarryable"];};
// WIP - doesn't seem to work properly
// Change size to 1
[_crate, 1] call ace_cargo_fnc_setSize;
// Process KP object init
[_crate] call KPLIB_fnc_addObjectInit;

View File

@@ -71,9 +71,9 @@ for "_i" from 1 to _amount do {
// Add possible RPG launcher
if ((_tier > 1) && ((random 100) <= KP_liberation_resistance_at_chance)) then {
_unit addBackpack "B_FieldPack_cbr";
for "_i" from 1 to 3 do {_unit addItemToBackpack "RPG7_F";};
_unit addWeapon "launch_RPG7_F";
_unit addBackpack "rhs_rpg_2";
for "_i" from 1 to 3 do {_unit addItemToBackpack "rhs_rpg7_PG7V_mag";};
_unit addWeapon "gm_rpg7_wud";
};
};

View File

@@ -1,4 +1,3 @@
KPLIB_init = false;
// Version of the KP Liberation framework
@@ -57,8 +56,11 @@ if ((isNil {player getVariable "bis_revive_ehHandleHeal"} || isDedicated) && !(b
KPLIB_init = true;
// Enable camera screenshot bypass
null = [] execVM "scripts\client\misc\fnc_initPhotoHandler.sqf";
// Notify clients that server is ready
if (isServer) then {
KPLIB_initServer = true;
publicVariable "KPLIB_initServer";
};
};

View File

@@ -202,7 +202,7 @@ GRLIB_color_friendly = "ColorBLUFOR"; // Frien
GRLIB_color_enemy = "ColorOPFOR"; // Enemy sector marker color.
GRLIB_color_enemy_bright = "ColorRED"; // Enemy sector marker color (activated).
GRLIB_fob_range = 125; // Build range around the main FOB building.
GRLIB_fob_range = 300; // Build range around the main FOB building.
GRLIB_halo_altitude = 2500; // Altitude in metres for the HALO jump.
GRLIB_secondary_missions_costs = [15, 10, 8]; // Intel price for the secondary missions [FOB hunting, Convoy ambush, SAR].
GRLIB_secondary_objective_impact = 0.6; // The percentage impact against enemy combat readiness for a successful FOB hunt.

View File

@@ -55,7 +55,6 @@ light_vehicles = [
["gm_gc_army_bicycle_01_oli",10,0,0], // Service Bicycle
["gm_gc_army_p601",50,0,25], // Trabant
["B_Boat_Transport_01_F",100,0,25], // Assault Boat
//UK3CB Vics
//UAZ
["UK3CB_CW_SOV_O_LATE_UAZ_AGS30",75,100,50],
["UK3CB_CW_SOV_O_LATE_UAZ_Closed",75,0,50],
@@ -94,6 +93,7 @@ light_vehicles = [
heavy_vehicles = [
["UK3CB_CW_SOV_O_LATE_BRDM2",200,50,100], // BRDM2
["UK3CB_CW_SOV_O_LATE_BRDM2_UM",200,0,100], // BRDM2UM
["gm_gc_army_brdm2_9p133",200,400,100], // BRDM2 "Sagger"
["UK3CB_CW_SOV_O_LATE_BRDM2_ATGM",200,500,100], // BRDM2 "Spandrel"
["UK3CB_CW_SOV_O_LATE_BMD1",175,200,125], // BMD-1
["UK3CB_CW_SOV_O_LATE_BMD1P",175,225,125], // BMD-1P
@@ -123,29 +123,34 @@ heavy_vehicles = [
["rhs_t72ba_tv",525,575,350], // T-72A (1984)
["rhs_t72bb_tv",550,575,350], // T-72B (1985)
["rhs_t72bc_tv",575,575,350], // T-72B (1989)
["mkk_t80b_r",600,600,400], // T-80B
["mkk_t80bv_r",625,600,400], // T-80BV
["mkk_t80_u_r",650,600,400], // T-80U
["mkk_t80_ue1_r",675,600,400], // T-80UE-1
["rhs_t80b",600,600,400], // T-80B
["rhs_t80bvk",625,600,400], // T-80BVK
["rhs_t80u",650,600,400], // T-80U
["rhs_t80uk",675,600,400], // T-80UK
["UK3CB_CW_SOV_O_LATE_Gaz66_ZU23",150,200,75], // GAZ-66
["UK3CB_CW_SOV_O_LATE_Ural_Zu23",150,200,100], // ZU-23 URAL
["UK3CB_CW_SOV_O_LATE_MTLB_ZU23",225,200,100], // MT-LB ZU-23
["UK3CB_CW_SOV_O_LATE_BM21",150,900,100], // BM-21
["gm_gc_army_2s1",275,800,200], // 2S1
["UK3CB_CW_SOV_O_LATE_2S3",300,800,225], // 2S3
["red_2s19_r",500,1000,300], // 2S19
["gm_gc_army_2p16",300,1000,300], // 2P16 "LUNA"
["UK3CB_CW_SOV_O_LATE_MAZ_543_SCUD",400,1200,400] // MAZ-543 SCUD
["UK3CB_CW_SOV_O_LATE_MAZ_543_SCUD",400,1200,400], // MAZ-543 SCUD
["rhs_9k79",500,1300,300], // Tochka-U
["rhs_9k79_K",500,1350,300], // Tochka-U Cluster
["rhs_9k79_B",500,1500,300] // Tochka-U Nuke
];
air_vehicles = [
["gm_gc_airforce_mi2p",300,0,175], // Mi-2P
["gm_gc_airforce_mi2sr",300,0,175], // Mi-2SR
["gm_gc_airforce_mi2us",300,100,175], // Mi-2US
["gm_gc_airforce_mi2urn",300,120,175], // Mi-2URN
["gm_pl_airforce_mi2urpg",300,200,175], // Mi-2URPG
["gm_gc_airforce_mi2p",250,0,175], // Mi-2P
["gm_gc_airforce_mi2sr",250,0,175], // Mi-2SR
["gm_gc_airforce_mi2us",250,100,175], // Mi-2US
["gm_gc_airforce_mi2urn",250,120,175], // Mi-2URN
["gm_pl_airforce_mi2urpg",250,200,175], // Mi-2URPG
["len_mi8amt_nva",350,0,250], // Mi8AMT
["gm_gc_airforce_l410s_salon",350,0,200], // L-410S
["gm_gc_airforce_l410t",350,0,200], // L-410T
["len_mi8amt_nva",225,0,125], // Mi8AMT
["pook_Ka29_OPFOR",300,250,200], // Ka-29
["len_mi24d_CAS_nva",550,550,250], // Mi-24D (CAS)
["len_mi24d_AT_nva",550,550,250], // Mi-24D (AT)
["len_mi24d_FAB_nva",550,550,250], // Mi-24D (FAB)
@@ -155,15 +160,27 @@ air_vehicles = [
["len_l39_nva",1200,1250,650], // Aero L-39
["pook_MIG21_OPFOR",1250,1250,700], // MiG-21
["pook_Mig23_OPFOR",1250,1300,725], // MiG-23
["pook_Mig27_OPFOR",1250,1450,725], // MiG-27
["len_mig29a_01_nva",1300,1100,750], // MiG-29A
["pook_Su22_OPFOR",1225,1400,725], // SU-22
["UK3CB_CW_SOV_O_LATE_Su25SM_CAS",1225,1500,600] // SU-25
["pook_Su22_OPFOR",1225,1400,725], // Su-22
["pook_SU24_OPFOR",1300,1500,800], // Su-24
["UK3CB_CW_SOV_O_LATE_Su25SM_CAS",1225,1500,600], // Su-25
["pook_SU27_OPFOR",1400,1400,775], // Su-27
["pook_YAK38_OPFOR",1350,1250,750] // Yak-38
];
static_vehicles = [
["gm_gc_army_fagot_launcher_tripod",50,100,0], // Static FAGOT
["gm_gc_army_dshkm_aatripod",50,50,0], // DSHkM
["gm_gc_army_spg9_tripod",50,75,0] // SPG-9
["gm_gc_army_dshkm_aatripod",50,50,0], // DSHkM HMG
["gm_gc_army_fagot_launcher_tripod",50,100,0], // 9K111 Fagot ATGM
["rhs_SPG9M_MSV",50,75,0], // SPG-9 Recoilles rifle
["tbd_mt12",100,150,0], // MT-12 Anti-tank gun
["gm_gc_army_2b11",50,75,0], // 2B11 Mortar
["tbd_2b9_vasilek",125,150,0], // 2B9 Vasilek automatic mortar (Towable)
["tbd_d20_vanilla",100,200,0], // D-20 Howitzer (Towable)
["rhs_D30_msv",100,250,0], // D-30 Howitzer (Towable)
["rhs_Igla_AA_pod_msv",50,150,0], // Static Igla
["RHS_ZU23_MSV",100,150,0] // ZU-23 (Towable)
["tbd_d20",100,200,25], // D-20 Howitzer (Towable, Advanced verison)
];
buildings = [
@@ -263,9 +280,6 @@ support_vehicles = [
["ACE_Box_82mm_Mo_Illum",50,10,0],
["ACE_Wheel",10,0,0],
["ACE_Track",10,0,0],
["gm_gc_army_ural4320_repair",325,30,75], // Ural Repair
["gm_gc_army_ural375d_refuel",125,0,275], // Ural Fuel
["gm_gc_army_ural4320_reammo",125,200,75], // Ural Ammo
["B_Slingload_01_Repair_F",275,0,0], // Huron Repair
["B_Slingload_01_Fuel_F",75,0,200], // Huron Fuel
["B_Slingload_01_Ammo_F",75,200,0], // Huron Ammo

View File

@@ -223,11 +223,19 @@ KPLIB_b_infantry_classes = KPLIB_b_infantry_classes
/*
Opfor squad compositions
*/
OLD - needs to be reworked to either 80s or 90s
KPLIB_o_squadStd = [opfor_squad_leader, opfor_medic, opfor_machinegunner, opfor_heavygunner, opfor_medic, opfor_marksman, opfor_grenadier, opfor_rpg];
KPLIB_o_squadInf = [opfor_squad_leader, opfor_medic, opfor_machinegunner, opfor_heavygunner, opfor_heavygunner, opfor_marksman, opfor_sharpshooter, opfor_sniper];
KPLIB_o_squadTank = [opfor_squad_leader, opfor_medic, opfor_machinegunner, opfor_rpg, opfor_rpg, opfor_at, opfor_at, opfor_at];
KPLIB_o_squadAir = [opfor_squad_leader, opfor_medic, opfor_machinegunner, opfor_rpg, opfor_rpg, opfor_aa, opfor_aa, opfor_aa];
*/
//
// Mixed squads
KPLIB_o_squadStd = [opfor_squad_leader_late, opfor_medic_late, opfor_machinegunner_late, opfor_heavygunner, opfor_marksman, opfor_grenadier, opfor_rpg, opfor_rpg_assistant];
KPLIB_o_squadInf = [opfor_squad_leader_late, opfor_medic, opfor_machinegunner_late, opfor_heavygunner, opfor_marksman_late, opfor_rifleman, opfor_grenadier_heavy];
KPLIB_o_squadTank = [opfor_squad_leader, opfor_medic_late, opfor_machinegunner_late, opfor_rpg, opfor_rpg_assistant, opfor_at, opfor_at_assistant, opfor_rpg_late];
KPLIB_o_squadAir = [opfor_squad_leader_late, opfor_medic_late, opfor_machinegunner_late, opfor_rpg_late, opfor_rpg_assistant, opfor_aa_late, opfor_aa_late, opfor_aa];
/*
Liberation specific collections
@@ -318,7 +326,7 @@ military_alphabet = ["Alpha", "Bravo", "Charlie", "Delta", "Echo", "Foxtrot", "G
// Misc variables
markers_reset = [99999,99999,0];
zeropos = [0,0,0];
KPLIB_sarWreck = "Land_Wreck_Heli_Attack_01_F";
KPLIB_sarWreck = "Land_Mi8_wreck_F";
KPLIB_sarFire = "test_EmptyObjectForFireBig";
KPLIB_initPresets = true;

View File

@@ -6,24 +6,46 @@
- LEN - Cold War Helicopters (due to lack fo air assets in GM for now) - https://steamcommunity.com/sharedfiles/filedetails/?id=1726445116
*/
// Enemy infantry classes
opfor_officer = "gm_ge_army_officer_p1_90_flk"; // Officer
opfor_squad_leader = "gm_ge_army_squadleader_g36a1_p2a1_90_flk"; // Squad Leader
opfor_team_leader = "gm_ge_army_squadleader_g36a1_p2a1_90_flk"; // Team Leader
opfor_sentry = "gm_ge_army_rifleman_g36a1_90_flk"; // Rifleman (Lite)
opfor_rifleman = "gm_ge_army_rifleman_g36a1_90_flk"; // Rifleman
opfor_rpg = "gm_ge_army_antitank_g36a1_milan_90_flk"; // Rifleman (LAT)
opfor_grenadier = "gm_ge_army_grenadier_hk69a1_90_flk"; // Grenadier
opfor_machinegunner = "gm_ge_army_machinegunner_mg3_90_flk"; // Autorifleman
opfor_heavygunner = "gm_ge_army_machinegunner_mg3_90_flk"; // Heavy Gunner
opfor_marksman = "gm_ge_army_marksman_g3a3_90_flk"; // Marksman
opfor_sharpshooter = "gm_ge_army_marksman_g3a3_90_flk"; // Sharpshooter
opfor_sniper = "gm_ge_army_marksman_g3a3_90_flk"; // Sniper
opfor_at = "gm_ge_army_antitank_g36a1_pzf3_90_flk"; // AT Specialist
opfor_aa = "gm_ge_army_antiair_g36a1_fim43_90_flk"; // AA Specialist
opfor_medic = "gm_ge_army_medic_g36a1_90_flk"; // Combat Life Saver
opfor_engineer = "gm_ge_army_engineer_g36a1_90_flks"; // Engineer
opfor_paratrooper = "gm_ge_army_paratrooper_g36a1_90_flk"; // Paratrooper
// Enemy infantry - 80s
opfor_officer = "gm_ge_army_officer_p1_80_oli"; // Officer
opfor_squad_leader = "gm_ge_army_squadleader_g3a3_p2a1_80_ols"; // Squad Leader
opfor_team_leader = "gm_ge_army_squadleader_g3a3_p2a1_80_ols"; // Team Leader
opfor_sentry = "gm_ge_army_rifleman_g3a3_80_ols"; // Rifleman (Lite)
opfor_rifleman = "gm_ge_army_rifleman_g3a3_80_ols"; // Rifleman
opfor_grenadier = "gm_ge_army_grenadier_g3a3_80_ols"; // Grenadier
opfor_grenadier_heavy = "gm_ge_army_grenadier_hk69a1_80_ols"; // Heavy Grenadier
opfor_machinegunner = "gm_ge_army_machinegunner_mg3_80_ols"; // Autorifleman
opfor_heavygunner = "gm_ge_army_machinegunner_assistant_g3a3_mg3_80_ols"; // Heavy Gunner
opfor_marksman = "gm_ge_army_marksman_g3a3_80_ols"; // Marksman
opfor_sharpshooter = "gm_ge_army_marksman_g3a3_80_ols"; // Sharpshooter
opfor_sniper = "gm_ge_army_marksman_g3a3_80_ols"; // Sniper
opfor_rpg = "gm_ge_army_antitank_g3a3_pzf44_80_ols"; // Rifleman (LAT)
opfor_rpg_assistant = "gm_ge_army_antitank_assistant_g3a3_pzf44_80_ols"; // Rifleman (LAT Assistant)
opfor_at = "gm_ge_army_antitank_g3a3_pzf84_80_ols"; // Rifleman (HAT)
opfor_at_assistant = "gm_ge_army_antitank_assistant_g3a3_pzf84_80_ols"; // Rifleman (HAT Assistant)
opfor_aa = "gm_ge_army_antiair_g3a3_fim43_80_ols"; // AA Specialist
opfor_medic = "gm_ge_army_medic_g3a3_80_ols"; // Combat Life Saver
opfor_engineer = "gm_ge_army_engineer_g3a4_80_ols"; // Engineer
opfor_paratrooper = "gm_ge_army_paratrooper_g3a4_80_ols"; // Paratrooper
// Enemy infantry - 90s
opfor_officer_late = "gm_ge_army_officer_p1_90_flk"; // Officer
opfor_squad_leader_late = "gm_ge_army_squadleader_g36a1_p2a1_90_flk"; // Squad Leader
opfor_team_leader_late = "gm_ge_army_squadleader_g36a1_p2a1_90_flk"; // Team Leader
opfor_sentry_late = "gm_ge_army_rifleman_g36a1_90_flk"; // Rifleman (Lite)
opfor_rifleman_late = "gm_ge_army_rifleman_g36a1_90_flk"; // Rifleman
opfor_rpg_late = "gm_ge_army_antitank_g36a1_pzf3_90_flk"; // Rifleman (LAT)
opfor_grenadier_late = "gm_ge_army_grenadier_hk69a1_90_flk"; // Grenadier
opfor_machinegunner_late = "gm_ge_army_machinegunner_mg3_90_flk"; // Autorifleman
opfor_heavygunner_late = "gm_ge_army_machinegunner_assistant_g36a1_mg3_90_flk"; // Heavy Gunner
opfor_marksman_late = "gm_ge_army_marksman_g3a3_90_flk"; // Marksman
opfor_sharpshooter_late = "gm_ge_army_marksman_g3a3_90_flk"; // Sharpshooter
opfor_sniper_late = "gm_ge_army_marksman_g3a3_90_flk"; // Sniper
opfor_at_late = "gm_ge_army_antitank_g36a1_pzf3_90_flk"; // AT Specialist
opfor_aa_late = "gm_ge_army_antiair_g36a1_fim43_90_flk"; // AA Specialist
opfor_medic_late = "gm_ge_army_medic_g36a1_90_flk"; // Combat Life Saver
opfor_engineer_late = "gm_ge_army_engineer_g36a1_90_flks"; // Engineer
opfor_paratrooper_late = "gm_ge_army_paratrooper_g36a1_90_flk"; // Paratrooper
// Enemy vehicles used by secondary objectives.
opfor_mrap = "gm_ge_army_iltis_cargo"; // Truck 0.5t
@@ -43,15 +65,15 @@ Therefore, adding the same value twice or three times means they are more likely
/* Militia infantry. Lightweight soldier classnames the game will pick from randomly as sector defenders.
Think of them like garrison or military police forces, which are more meant to control the local population instead of fighting enemy armies. */
militia_squad = [
"gm_ge_army_rifleman_g36a1_90_flk", // Rifleman (Lite)
"gm_ge_army_rifleman_g36a1_90_flk", // Rifleman (Lite)
"gm_ge_army_rifleman_g36a1_90_flk", // Rifleman
"gm_ge_army_rifleman_g36a1_90_flk", // Rifleman
"gm_ge_army_antitank_g36a1_pzf3_90_flk", // Rifleman (AT)
"gm_ge_army_machinegunner_mg3_90_flk", // Autorifleman
"gm_ge_army_marksman_g3a3_90_flk", // Marksman
"gm_ge_army_medic_g36a1_90_flk", // Medic
"gm_ge_army_engineer_g36a1_90_flk" // Engineer
"gm_ge_bgs_sf_squadleader_sig551_90_blk", // Squad Leader
"gm_ge_bgs_sf_specialist_hk512_80_blk", // Specialist (HK 512)
"gm_ge_bgs_sf_rifleman_mp5a2_80_blk", // Rifleman
"gm_ge_bgs_sf_rifleman_mp5a2_90_blk", // Rifleman
"gm_ge_army_antitank_g36a1_pzf3_90_blk", // Rifleman (AT)
"gm_ge_bgs_sf_machinegunner_g8_90_blk", // Autorifleman
"gm_ge_bgs_sf_marksman_psg1_90_blk", // Marksman
"gm_ge_army_medic_g36a1_90_blk", // Medic
"gm_ge_bgs_sf_grenadier_hk69a1_80_blk" // Grenadier
];
// Militia vehicles. Lightweight vehicle classnames the game will pick from randomly as sector defenders. Can also be empty for only infantry milita.
@@ -87,7 +109,10 @@ opfor_vehicles = [
"gm_ge_army_Leopard1a1a2", // Leopard 1A1A2
"gm_ge_army_Leopard1a3", // Leopard 1A3
"gm_ge_army_Leopard1a3a1", // Leopard 1A3A1
"gm_ge_army_Leopard1a4", // Leopard 1A4
"gm_ge_army_Leopard1a5", // Leopard 1A5
"gm_dk_army_Leopard1a5dk1_dozer", // Leopard 1A5DK1 Dozer
"gm_ge_army_rakjpz2", // RakJPz 2
"UK3CB_CW_US_B_LATE_M60a3", // M60A3
"UK3CB_CW_US_B_LATE_M1A1" // M1A1
];
@@ -133,11 +158,15 @@ opfor_battlegroup_vehicles = [
"gm_ge_army_Leopard1a1a2", // Leopard 1A1A2
"gm_ge_army_Leopard1a3", // Leopard 1A3
"gm_ge_army_Leopard1a3a1", // Leopard 1A3A1
"gm_ge_army_Leopard1a4", // Leopard 1A4
"gm_ge_army_Leopard1a5", // Leopard 1A5
"gm_dk_army_Leopard1a5dk1_dozer", // Leopard 1A5DK1 Dozer
"gm_ge_army_rakjpz2", // RakJPz 2
"UK3CB_CW_US_B_LATE_M109", // M109A3
"UK3CB_CW_US_B_LATE_M270_MLRS_CLUSTER", // M270 (Cluster)
"UK3CB_CW_US_B_LATE_M270_MLRS_HE", // M270 HE
"gm_ge_army_m109g", // M109G
"gm_ge_army_m113a1g_mortar", // M113A3 (120mm Mortar)
"gm_ge_army_kat1_463_mlrs", // SF2 LARS 2
"UK3CB_CW_US_B_LATE_M60a3", // M60A3
"UK3CB_CW_US_B_LATE_M1A1", // M1A1

View File

@@ -44,8 +44,8 @@ KP_liberation_guerilla_weapons_3 = [
["gm_mpiak74n_prp","gm_30Rnd_545x39mm_B_7N6_ak74_prp",4,"",""],
["gm_g3a3_blk","gm_20Rnd_762x51mm_B_T_DM21_g3_blk",4,"",""],
["gm_g3a3_blk","gm_20Rnd_762x51mm_B_T_DM21_g3_blk",4,"",""],
["gm_lmgrpk_brn","gm_75Rnd_762x39mm_B_M43_ak47_blk",4,"",""],
["gm_lmgrpk_brn","gm_75Rnd_762x39mm_B_M43_ak47_blk",4,"",""]
["gm_lmgrpk_brn","gm_75Rnd_762x39mm_B_57N231_ak47_blk",4,"",""],
["gm_lmgrpk_brn","gm_75Rnd_762x39mm_B_57N231_ak47_blk",4,"",""]
];
// Uniforms
@@ -172,6 +172,7 @@ KP_liberation_guerilla_facegear = [
"",
"",
"",
"",
"G_Bandanna_tan",
"G_Bandanna_khk",
"G_Bandanna_oli",

View File

@@ -0,0 +1,26 @@
// fnc_initPhotoHandler.sqf
// This function is a bypass for gm_moduleSavePictures, because it didn't want to behave.
// The screenshots taken by the camera will be located in User\Documents\Arma 3\Screenshots\gm_photocamera
// You're welcome, Cammie
[missionNamespace, "gm_photocamera_takePicture", {
private _time = date; // [year, month, day, hour, minute]
private _year = _time select 0;
private _month = _time select 1;
private _day = _time select 2;
private _hour = _time select 3;
private _minute = _time select 4;
private _second = floor (diag_tickTime % 60);
if (_month < 10) then {_month = "0" + str _month;} else {_month = str _month;};
if (_day < 10) then {_day = "0" + str _day;} else {_day = str _day;};
if (_hour < 10) then {_hour = "0" + str _hour;} else {_hour = str _hour;};
if (_minute < 10) then {_minute = "0" + str _minute;} else {_minute = str _minute;};
if (_second < 10) then {_second = "0" + str _second;} else {_second = str _second;};
private _timestamp = format ["%1-%2-%3_%4-%5-%6", _year, _month, _day, _hour, _minute, _second];
private _filename = format ["gm_photocamera/photo_%1.png", _timestamp];
screenshot _filename;
systemChat format ["Saved photo: %1", _filename];
}] call BIS_fnc_addScriptedEventHandler;

View File

@@ -36,7 +36,7 @@ if (isNull _chopper_type) then {
private _para_group = createGroup [GRLIB_side_enemy, true];
while {(count (units _para_group)) < 8} do {
[opfor_paratrooper, markerPos _spawnsector, _para_group] call KPLIB_fnc_createManagedUnit;
[opfor_paratrooper_late, markerPos _spawnsector, _para_group] call KPLIB_fnc_createManagedUnit;
};
{removeBackpack _x; _x addBackPack "B_parachute"; _x moveInCargo _newvehicle;} forEach (units _para_group);