From 46d81fab5179041295a6685e03fc0cdf771f7212 Mon Sep 17 00:00:00 2001 From: Ghostrider-DbD- Date: Sun, 13 Nov 2016 06:59:40 -0500 Subject: [PATCH 1/3] Added the Static Loot Crate System. --- @epochhive/addons/custom_server.pbo | Bin 0 -> 413937 bytes .../Configs/blck_configs_exile.sqf | 12 +- .../MapAddons/MapAddons_init.sqf | 22 +- .../Altis/mobileRefuelSaltFlats.sqf | 33 ++ .../mapcontent/Altis/smallbaseSaltFlats.sqf | 41 +++ .../custom_server/SLS/SLS_defines_epoch.sqf | 196 ++++++++++++ .../custom_server/SLS/SLS_defines_exile.sqf | 302 ++++++++++++++++++ .../custom_server/SLS/SLS_functions.sqf | 169 ++++++++++ .../addons/custom_server/SLS/SLS_init.sqf | 19 ++ .../custom_server/SLS/SLS_init_epoch.sqf | 4 + .../custom_server/SLS/SLS_init_exile.sqf | 4 + .../addons/custom_server/init/blck_init.sqf | 7 +- 12 files changed, 789 insertions(+), 20 deletions(-) create mode 100644 @epochhive/addons/custom_server.pbo create mode 100644 @epochhive/addons/custom_server/MapAddons/mapcontent/Altis/mobileRefuelSaltFlats.sqf create mode 100644 @epochhive/addons/custom_server/MapAddons/mapcontent/Altis/smallbaseSaltFlats.sqf create mode 100644 @epochhive/addons/custom_server/SLS/SLS_defines_epoch.sqf create mode 100644 @epochhive/addons/custom_server/SLS/SLS_defines_exile.sqf create mode 100644 @epochhive/addons/custom_server/SLS/SLS_functions.sqf create mode 100644 @epochhive/addons/custom_server/SLS/SLS_init.sqf create mode 100644 @epochhive/addons/custom_server/SLS/SLS_init_epoch.sqf create mode 100644 @epochhive/addons/custom_server/SLS/SLS_init_exile.sqf diff --git a/@epochhive/addons/custom_server.pbo b/@epochhive/addons/custom_server.pbo new file mode 100644 index 0000000000000000000000000000000000000000..a51088a3db37bcdf0562cf1b5c13350ca2ddb2c0 GIT binary patch literal 413937 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 >Ymp2D00W6a6s5nv8^Eb$4R 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 "CfgPatches" >> "a3_epoch_server" )) then { diag_log "[blckeagls] Running Map Addons for Epoch"; [_addonsEpoch] call _fnc_runIt; }; -if (_modType isEqualTo "Exile") then + +if not (isNull( configFile >> "CfgPatches" >> "exile_server" )) then { diag_log "[blckeagls] Running Map Addons for Epoch"; [_addonsExile] call _fnc_runIt; diff --git a/@epochhive/addons/custom_server/MapAddons/mapcontent/Altis/mobileRefuelSaltFlats.sqf b/@epochhive/addons/custom_server/MapAddons/mapcontent/Altis/mobileRefuelSaltFlats.sqf new file mode 100644 index 0000000..34b5a62 --- /dev/null +++ b/@epochhive/addons/custom_server/MapAddons/mapcontent/Altis/mobileRefuelSaltFlats.sqf @@ -0,0 +1,33 @@ +// Small bandit base on the salt flats +// by Ghostrider-Dbd- +// 11/8/16 + +private _objects = [ + ["Land_BluntStone_02",[26582.2,24670.5,12.0115],[[0,0.995673,-0.0929294],[-0.130865,0.0921302,0.98711]],[false,false]], + ["Land_BluntStone_02",[25767.7,21581.5,24.3651],[[0,0.999645,0.0266571],[-0.0346456,-0.0266411,0.999045]],[false,false]], + ["Land_BluntStone_02",[24927.3,22961.3,11.2178],[[0,0.999996,0.00265199],[0.031983,-0.00265063,0.999485]],[false,false]], + ["Flag_AAF_F",[22954.8,17041.1,3.19],[[0,1,0],[0,0,1]],[false,false]], + ["Land_CargoBox_V1_F",[22952.6,17016,3.19],[[0,1,0],[0,0,1]],[false,false]], + ["Land_Cargo40_blue_F",[22947.5,17024.9,3.19],[[0,1,0],[0,0,1]],[false,false]], + ["Land_Cargo40_blue_F",[22935.9,17031.2,3.19],[[-0.866282,-0.499555,0],[0,0,1]],[false,false]], + ["Land_Cargo40_blue_F",[22934,17045.2,3.19],[[-0.979295,0.202436,0],[0,0,1]],[false,false]], + ["Land_Cargo40_blue_F",[22942.7,17055.7,3.19],[[0.425964,-0.90474,0],[0,0,1]],[false,false]], + ["Land_Cargo40_blue_F",[22956.6,17059.1,3.19],[[0,1,0],[0,0,1]],[false,false]], + ["Land_Cargo40_blue_F",[22968.8,17054.2,3.19],[[0.658744,0.752367,0],[0,0,1]],[false,false]], + ["Land_WaterTank_F",[22957.9,17020.7,3.19],[[0,1,0],[0,0,1]],[false,false]], + ["Land_WaterBarrel_F",[22973.4,17042.1,3.19],[[0,1,0],[0,0,1]],[false,false]], + ["Land_CncBarrier_F",[22955.9,17026.5,3.19],[[0.627124,-0.778919,0],[0,0,1]],[false,false]], + ["Land_CncBarrierMedium4_F",[22944.5,17023.4,3.19],[[0,1,0],[0,0,1]],[false,false]], + ["Land_CncBarrierMedium4_F",[22960.6,17031.1,3.19],[[0.682042,-0.731313,0],[0,0,1]],[false,false]], + ["Land_CncBarrierMedium4_F",[22966.7,17036.8,3.19],[[0.682042,-0.731313,0],[0,0,1]],[false,false]], + ["Land_CncBarrierMedium4_F",[22971.8,17043.3,3.19],[[-0.855661,0.517537,0],[0,0,1]],[false,false]], + ["Land_FuelStation_Build_F",[22949.7,17049.9,3.19],[[0.551057,-0.834468,0],[0,0,1]],[false,false]], + ["Land_fs_feed_F",[22952.9,17044.6,3.19],[[0.555135,-0.83176,0],[0,0,1]],[false,false]] +]; +{ + private _object = (_x select 0) createVehicle [0,0,0]; + _object setPosASL (_x select 1); + _object setVectorDirAndUp (_x select 2); + _object enableSimulationGlobal ((_x select 3) select 0); + _object allowDamage ((_x select 3) select 1); +} forEach _objects; \ No newline at end of file diff --git a/@epochhive/addons/custom_server/MapAddons/mapcontent/Altis/smallbaseSaltFlats.sqf b/@epochhive/addons/custom_server/MapAddons/mapcontent/Altis/smallbaseSaltFlats.sqf new file mode 100644 index 0000000..eef7696 --- /dev/null +++ b/@epochhive/addons/custom_server/MapAddons/mapcontent/Altis/smallbaseSaltFlats.sqf @@ -0,0 +1,41 @@ +// Small bandit base on the salt flats +// by Ghostrider-Dbd- +// 11/8/16 + +private _objects = [ + ["Land_HBarrier_1_F",[23531.2,18446,3.19],[[0,1,0],[0,0,1]],[false,false]], + ["Land_HBarrier_3_F",[23533.5,18446.1,3.19],[[0,1,0],[0,0,1]],[false,false]], + ["Land_HBarrier_3_F",[23536.8,18445.9,3.19],[[0,1,0],[0,0,1]],[false,false]], + ["Land_HBarrier_3_F",[23540.2,18445.9,3.19],[[0,1,0],[0,0,1]],[false,false]], + ["Land_HBarrier_3_F",[23543.6,18445.9,3.19],[[0,1,0],[0,0,1]],[false,false]], + ["Land_HBarrier_3_F",[23529.6,18431.4,3.19],[[-0.995806,0.0914938,0],[0,0,1]],[false,false]], + ["Land_HBarrier_3_F",[23530.1,18434.7,3.19],[[-0.995806,0.0914938,0],[0,0,1]],[false,false]], + ["Land_HBarrier_3_F",[23530.4,18437.9,3.19],[[-0.995806,0.0914938,0],[0,0,1]],[false,false]], + ["Land_HBarrier_3_F",[23530.7,18441.4,3.19],[[-0.995806,0.0914938,0],[0,0,1]],[false,false]], + ["Land_HBarrier_3_F",[23543.7,18431.2,3.19],[[-0.995806,0.0914938,0],[0,0,1]],[false,false]], + ["Land_HBarrier_3_F",[23544.1,18434.4,3.19],[[-0.995806,0.0914938,0],[0,0,1]],[false,false]], + ["Land_HBarrier_3_F",[23544.5,18437.7,3.19],[[-0.995806,0.0914938,0],[0,0,1]],[false,false]], + ["Land_HBarrier_3_F",[23544.7,18441.2,3.19],[[-0.995806,0.0914938,0],[0,0,1]],[false,false]], + ["Land_HBarrier_3_F",[23530.3,18427.3,3.19],[[0.0644281,0.997922,0],[0,0,1]],[false,false]], + ["Land_HBarrier_3_F",[23533.6,18426.9,3.19],[[0.0644281,0.997922,0],[0,0,1]],[false,false]], + ["Land_HBarrier_3_F",[23536.9,18426.6,3.19],[[0.0644281,0.997922,0],[0,0,1]],[false,false]], + ["Land_HBarrier_3_F",[23540.4,18426.5,3.19],[[0.0644281,0.997922,0],[0,0,1]],[false,false]], + ["Land_HBarrier_01_big_tower_green_F",[23556.9,18453,3.19],[[0,1,0],[0,0,1]],[false,false]], + ["Land_HBarrierTower_F",[23520,18423,3.19],[[0,1,0],[0,0,1]],[false,false]], + ["Land_Scrap_MRAP_01_F",[23536,18434.6,3.19],[[0,1,0],[0,0,1]],[false,false]], + ["Land_PressureWasher_01_F",[23534.2,18427.5,3.19],[[0,1,0],[0,0,1]],[false,false]], + ["Land_PressureWasher_01_F",[23534.2,18427.5,3.19],[[0,1,0],[0,0,1]],[false,false]], + ["Land_ScrapHeap_1_F",[23549.8,18426.8,3.19],[[0,1,0],[0,0,1]],[false,false]], + ["Land_ScrapHeap_2_F",[23524.8,18445.7,3.19],[[0,1,0],[0,0,1]],[false,false]], + ["CamoNet_INDP_Curator_F",[23536.3,18434,3.19],[[-0.998396,0.0566218,0],[0,0,1]],[false,false]], + ["Land_Cargo_House_V3_F",[23556.7,18420.3,3.19],[[0,1,0],[0,0,1]],[false,false]], + ["Land_Cargo_House_V3_F",[23519.2,18449.4,3.19],[[0,1,0],[0,0,1]],[false,false]], + ["Flag_AAF_F",[23538.1,18443,3.19],[[0,1,0],[0,0,1]],[false,false]] +]; +{ + private _object = (_x select 0) createVehicle [0,0,0]; + _object setPosASL (_x select 1); + _object setVectorDirAndUp (_x select 2); + _object enableSimulationGlobal ((_x select 3) select 0); + _object allowDamage ((_x select 3) select 1); +} forEach _objects; \ No newline at end of file diff --git a/@epochhive/addons/custom_server/SLS/SLS_defines_epoch.sqf b/@epochhive/addons/custom_server/SLS/SLS_defines_epoch.sqf new file mode 100644 index 0000000..b3d13ab --- /dev/null +++ b/@epochhive/addons/custom_server/SLS/SLS_defines_epoch.sqf @@ -0,0 +1,196 @@ +/* + Define loot crate configurations for Epoch. +*/ +diag_log "[blckeagls] SLS : Loading Static Loot Container Spawning System for Epoch"; + +_lootBoxes = +[ + /*[ + + "altis", // map name + "Camp1", // a name for this region for logging and debuging purpses and to help identify the definition down the road when changing things on the server + 2, // number of locations specified from the list below at which to spawn crates + [ // format here is [[position x, y, z], direction, exact / loose placement (true/false), smoke near crate (true/false] + [[23555.9,18422.7,0.730287],0,true, false], // loadout (0-4), false=random placement near position, true = show smoke at position + [[23542.1,18435.9,0.00143886],0,true, false], + [[23514,18452.5,0.00143886],0,true, false], + [[23534.2,18418.8,0.00143886],0,false, true] + ] + + ], + [ "altis", + "refuel", + 2, + [ // format here is [[position x, y, z], direction, exact / loose placement (true/false), smoke near crate (true/false] + [[22963.8,17041.3,0.00143886],0,false, false], + [[22942.8,17038,0.00143886],0,false, false], + [[22948.7,17054,0.00143886],0,false, false] + ] // No comma after this last one + ] // No comma after this last one + */ +]; + +private["_loot_uniforms","_loot_pistols","_loot_rifles","_loot_snipers","_loot_LMG","_loot_silencers"]; +// Edit these to your liking +//Uniforms +//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ +_loot_uniforms = ["U_O_CombatUniform_ocamo", "U_O_GhillieSuit", "U_O_PilotCoveralls", "U_O_Wetsuit", "U_OG_Guerilla1_1", "U_OG_Guerilla2_1", "U_OG_Guerilla2_3", "U_OG_Guerilla3_1", "U_OG_Guerilla3_2", "U_OG_leader", "U_C_Poloshirt_stripped", "U_C_Poloshirt_blue", + "U_C_Poloshirt_burgundy", "U_C_Poloshirt_tricolour", "U_C_Poloshirt_salmon", "U_C_Poloshirt_redwhite", "U_C_Poor_1", "U_C_WorkerCoveralls", "U_C_Journalist", "U_C_Scientist", "U_OrestesBody", "U_Wetsuit_uniform", "U_Wetsuit_White", "U_Wetsuit_Blue", + "U_Wetsuit_Purp", "U_Wetsuit_Camo", "U_CamoRed_uniform", "U_CamoBrn_uniform", "U_CamoBlue_uniform", "U_Camo_uniform", "U_ghillie1_uniform", "U_ghillie2_uniform", "U_ghillie3_uniform","U_B_FullGhillie_ard","U_I_FullGhillie_ard","U_O_FullGhillie_ard", + "Full Ghillie Suit Semi-Arid:","U_B_FullGhillie_sard","U_O_FullGhillie_sard","U_I_FullGhillie_sard","Full Ghillie Suit Lush","U_B_FullGhillie_lsh","U_O_FullGhillie_lsh","U_I_FullGhillie_lsh"]; + +//Weapons +//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ + +_loot_pistols = blck_Pistols; + +_loot_rifles = blck_RifleAsault + blck_apexWeapons; +_loot_snipers = blck_RifleSniper + blck_DLC_Sniper; +_loot_LMG = blck_RifleLMG + blck_DLC_MMG; +_loot_magazines = [ // Ignored 5.56, SMG and pistol ammo as most players seem to have little interest in it when given the choice to use higher caliber amo. + "100Rnd_65x39_caseless_mag", + "100Rnd_65x39_caseless_mag_Tracer", + "10Rnd_127x54_Mag", + "10Rnd_338_Mag", + "10Rnd_762x54_Mag", + "10Rnd_93x64_DMR_05_Mag", + "130Rnd_338_Mag", // SPMG + "150Rnd_762x54_Box", + "150Rnd_762x54_Box_Tracer", + "150Rnd_93x64_Mag", // NAVID + "16Rnd_9x21_Mag", + "200Rnd_65x39_cased_Box", + "200Rnd_65x39_cased_Box_Tracer", + "20Rnd_762x51_Mag", + "30Rnd_65x39_caseless_green", + "30Rnd_65x39_caseless_green_mag_Tracer", + "30Rnd_65x39_caseless_mag", + "30Rnd_65x39_caseless_mag_Tracer", + // Apex + "30Rnd_580x42_Mag_F", + "30Rnd_580x42_Mag_Tracer_F", + "100Rnd_580x42_Mag_F", + "100Rnd_580x42_Mag_Tracer_F", + "20Rnd_650x39_Cased_Mag_F", + "10Rnd_50BW_Mag_F", + "150Rnd_556x45_Drum_Mag_F", + "150Rnd_556x45_Drum_Mag_Tracer_F", + "30Rnd_762x39_Mag_F", + "30Rnd_762x39_Mag_Green_F", + "30Rnd_762x39_Mag_Tracer_F", + "30Rnd_762x39_Mag_Tracer_Green_F", + "30Rnd_545x39_Mag_F", + "30Rnd_545x39_Mag_Green_F", + "30Rnd_545x39_Mag_Tracer_F", + "30Rnd_545x39_Mag_Tracer_Green_F", + "200Rnd_556x45_Box_F", + "200Rnd_556x45_Box_Red_F", + "200Rnd_556x45_Box_Tracer_F", + "200Rnd_556x45_Box_Tracer_Red_F", + "10Rnd_9x21_Mag" + ]; + +//Silencers +//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ +_loot_silencers = ["muzzle_sr25S_epoch","muzzle_snds_H","muzzle_snds_M","muzzle_snds_L","muzzle_snds_B","muzzle_snds_H_MG","muzzle_snds_acp","muzzle_snds_93mmg","muzzle_snds_93mmg_tan", + "muzzle_snds_338_black","muzzle_snds_338_greenmuzzle_snds_338_sand"]; + +private["_loot_optics","_loot_backpacks","_loot_vests","_loot_headgear","_loot_food","_loot_misc","_loot_build"]; +//Optics +//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ +_loot_optics = ["optic_NVS","optic_tws","optic_tws_mg","optic_SOS","optic_LRPS","optic_DMS","optic_Arco","optic_Hamr","Elcan_epoch","Elcan_reflex_epoch","optic_MRCO","optic_Holosight", + "optic_Holosight_smg","optic_Aco","optic_ACO_grn","optic_Aco_smg","optic_ACO_grn_smg","optic_Yorris","optic_MRD","optic_AMS","optic_AMS_khk","optic_AMS_snd", + "optic_KHS_blk","optic_KHS_hex","optic_KHS_old","optic_KHS_tan"]; + +//Backpacks +//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ +_loot_backpacks = blck_backpacks; + +//Vests +//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ +_loot_vests = blck_vests; + +//Head Gear +//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ +_loot_headgear = ["H_1_EPOCH","H_2_EPOCH","H_3_EPOCH","H_4_EPOCH","H_5_EPOCH","H_6_EPOCH","H_7_EPOCH","H_8_EPOCH","H_9_EPOCH","H_10_EPOCH","H_11_EPOCH","H_12_EPOCH","H_13_EPOCH","H_14_EPOCH","H_15_EPOCH","H_16_EPOCH","H_17_EPOCH","H_18_EPOCH","H_19_EPOCH","H_20_EPOCH","H_21_EPOCH","H_22_EPOCH","H_23_EPOCH","H_24_EPOCH","H_25_EPOCH","H_26_EPOCH","H_27_EPOCH","H_28_EPOCH","H_29_EPOCH","H_30_EPOCH","H_31_EPOCH","H_32_EPOCH","H_33_EPOCH","H_34_EPOCH","H_35_EPOCH","H_36_EPOCH","H_37_EPOCH","H_38_EPOCH","H_39_EPOCH","H_40_EPOCH","H_41_EPOCH","H_42_EPOCH","H_43_EPOCH","H_44_EPOCH","H_45_EPOCH","H_46_EPOCH","H_47_EPOCH","H_48_EPOCH","H_49_EPOCH","H_50_EPOCH","H_51_EPOCH","H_52_EPOCH","H_53_EPOCH","H_54_EPOCH","H_55_EPOCH","H_56_EPOCH","H_57_EPOCH","H_58_EPOCH","H_59_EPOCH","H_60_EPOCH","H_61_EPOCH","H_62_EPOCH","H_63_EPOCH","H_64_EPOCH","H_65_EPOCH","H_66_EPOCH","H_67_EPOCH","H_68_EPOCH","H_69_EPOCH","H_70_EPOCH","H_71_EPOCH","H_72_EPOCH","H_73_EPOCH","H_74_EPOCH","H_75_EPOCH","H_76_EPOCH","H_77_EPOCH","H_78_EPOCH","H_79_EPOCH","H_80_EPOCH","H_81_EPOCH","H_82_EPOCH","H_83_EPOCH","H_84_EPOCH","H_85_EPOCH","H_86_EPOCH","H_87_EPOCH","H_88_EPOCH","H_89_EPOCH","H_90_EPOCH","H_91_EPOCH","H_92_EPOCH","H_93_EPOCH","H_94_EPOCH","H_95_EPOCH","H_96_EPOCH","H_97_EPOCH","H_98_EPOCH","H_99_EPOCH","H_100_EPOCH","H_101_EPOCH","H_102_EPOCH","H_103_EPOCH","H_104_EPOCH"]; + +//Food +//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ +_loot_food = blck_ConsumableItems; + +// Tools +//-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +_loot_tools = [["Hatchet",2],["MeleeSledge",2],["ChainSaw",1]]; + +//Misc +//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ +_loot_Misc = ["PaintCanClear","PaintCanBlk","PaintCanBlu","PaintCanBrn","PaintCanGrn","PaintCanOra","PaintCanPur","PaintCanRed","PaintCanTeal","PaintCanYel","ItemDocument","ItemMixOil","emptyjar_epoch","FoodBioMeat","ItemSodaOrangeSherbet","ItemSodaPurple","ItemSodaMocha","ItemSodaBurst","ItemSodaRbull","sardines_epoch","meatballs_epoch","scam_epoch","sweetcorn_epoch","Towelette","HeatPack","ColdPack","VehicleRepair","VehicleRepairLg","CircuitParts","ItemCoolerE","ItemScraps","ItemScraps","lighter_epoch","EnergyPack","EnergyPackLg"]; + +//Construction +//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ +_loot_build = blck_epochBuildingSupplies; + +// Explosives +//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ +_loot_explosives = [["HandGrenade",3],["MiniGrenade",3],["SatchelCharge_Remote_Mag",3],["DemoCharge_Remote_Mag",3],["ClaymoreDirectionalMine_Remote_Mag",3]]; +_loot_launchers = ["launch_NLAW_F","launch_RPG32_F","launch_B_Titan_F","launch_Titan_short_F"]; + +// Loot Configuration 1: Heavy Weapons and explosives +_box1_Pistols = 3; +_box1_Rifles = 5; +_box1_LMG = 4; +_box1_Snipers = 3; +_box1_Mags = [2,6]; +_box1_Optics = 6; +_box1_Silencers = 5; +_box1_Explosives = 6; +_box1_FoodDrink = 6; +_box1_Misc = 3; +_box1_Backpacks = 3; +_box1_BuildingSupplies = 3; +_box1_Tools = 0; +_box1_launchers = 0; +// Note that the bonus items are listed in a nexted array within the _box1_cbonus array. It was more difficult to ocde otherwise and would have needed indexing to make it work. +_box1_bonus_items = [["SatchelCharge_Remote_Mag",3],["DemoCharge_Remote_Mag",3],["ClaymoreDirectionalMine_Remote_Mag",3]]; +_box1_bonus = 1; + +// Loot Configuration 2: Sniper Weapons and sniper scopes +_box2_Pistols = 3; +_box2_Rifles = 5; +_box2_LMG = 4; +_box2_Snipers = 3; +_box2_Mags = [2,6]; // [number of times to select a mag, min # of that mag to add, max # of that mag to add] +_box2_Optics = 6; +_box2_Silencers = 5; +_box2_Explosives = 6; +_box2_FoodDrink = 6; +_box2_Misc = 3; +_box2_Backpacks = 3; +_box2_BuildingSupplies = 3; +_box2_Tools = 0; +_box2_Misc = 0; +_box2_launchers = 0; +_box2_bonus_items = [["NVG_EPOCH",2],["ItemGPS",1],["Rangefinder",1],["Hatchet",2],["MeleeSledge",2],["ChainSaw",1],["water_epoch",10]]; +_box2_bonus = 1; + +// Loot Configuration 3: building materials and tools +_box3_Pistols = 2; +_box3_Rifles = 2; +_box3_LMG = 1; +_box3_Snipers = 1; +_box3_Mags = [4,2,6]; +_box3_Optics = 1; +_box3_Silencers = 1; +_box3_Explosives = 2; +_box3_FoodDrink = 3; +_box3_Misc = 3; +_box3_Backpacks = 1; +_box3_BuildingSupplies = [8,15]; // [Number of items, min for item, max for item] +_box3_Tools = 4; +_box3_Misc = 6; +_box3_launchers = 0; +_box3_bonus_items = [["MultiGun",3],["EnergyPack",5],["EnergyPackLg",3],["ItemLockBox",2],["jerrycan_epoch",2],["ItemGoldBar10oz",2],["ItemSilverBar",4],["ItemKiloHemp",4],["Hatchet",2],["MeleeSledge",2],["ChainSaw",1],["water_epoch",10]]; +_box3_bonus = 1; + +//////////////////////////// +// End of configurations \ No newline at end of file diff --git a/@epochhive/addons/custom_server/SLS/SLS_defines_exile.sqf b/@epochhive/addons/custom_server/SLS/SLS_defines_exile.sqf new file mode 100644 index 0000000..bddd23c --- /dev/null +++ b/@epochhive/addons/custom_server/SLS/SLS_defines_exile.sqf @@ -0,0 +1,302 @@ +/* + Define constants for SLS for Exile + uncomment the examples below to see it in action. + or use them as a template for your own. +*/ + +diag_log "[blckeagls] SLS : Loading Static Loot Container Spawning System for Exile"; + +_lootBoxes = +[ + /*[ + + "altis", // map name + "Camp1", // a name for this region for logging and debuging purpses and to help identify the definition down the road when changing things on the server + 2, // number of locations specified from the list below at which to spawn crates + [ // format here is [[position x, y, z], direction, exact / loose placement (true/false), smoke near crate (true/false] + [[23555.9,18422.7,0.730287],0,true, false], // loadout (0-4), false=random placement near position, true = show smoke at position + [[23542.1,18435.9,0.00143886],0,true, false], + [[23514,18452.5,0.00143886],0,true, false], + [[23534.2,18418.8,0.00143886],0,false, true] + ] + + ], + [ "altis", + "refuel", + 2, + [ // format here is [[position x, y, z], direction, exact / loose placement (true/false), smoke near crate (true/false] + [[22963.8,17041.3,0.00143886],0,false, false], + [[22942.8,17038,0.00143886],0,false, false], + [[22948.7,17054,0.00143886],0,false, false] + ] // No comma after this last one + ] // No comma after this last one + */ +]; + +private["_loot_uniforms","_loot_pistols","_loot_rifles","_loot_snipers","_loot_LMG","_loot_silencers"]; +// Edit these to your liking +//Uniforms +//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ +_loot_uniforms = ["U_O_CombatUniform_ocamo", "U_O_GhillieSuit", "U_O_PilotCoveralls", "U_O_Wetsuit", "U_OG_Guerilla1_1", "U_OG_Guerilla2_1", "U_OG_Guerilla2_3", "U_OG_Guerilla3_1", "U_OG_Guerilla3_2", "U_OG_leader", "U_C_Poloshirt_stripped", "U_C_Poloshirt_blue", + "U_C_Poloshirt_burgundy", "U_C_Poloshirt_tricolour", "U_C_Poloshirt_salmon", "U_C_Poloshirt_redwhite", "U_C_Poor_1", "U_C_WorkerCoveralls", "U_C_Journalist", "U_C_Scientist", "U_OrestesBody", "U_Wetsuit_uniform", "U_Wetsuit_White", "U_Wetsuit_Blue", + "U_Wetsuit_Purp", "U_Wetsuit_Camo", "U_CamoRed_uniform", "U_CamoBrn_uniform", "U_CamoBlue_uniform", "U_Camo_uniform", "U_ghillie1_uniform", "U_ghillie2_uniform", "U_ghillie3_uniform","U_B_FullGhillie_ard","U_I_FullGhillie_ard","U_O_FullGhillie_ard", + "Full Ghillie Suit Semi-Arid:","U_B_FullGhillie_sard","U_O_FullGhillie_sard","U_I_FullGhillie_sard","Full Ghillie Suit Lush","U_B_FullGhillie_lsh","U_O_FullGhillie_lsh","U_I_FullGhillie_lsh"]; + +//Weapons +//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ + +_loot_pistols = blck_Pistols; +_loot_rifles = blck_RifleAsault + blck_apexWeapons; +_loot_snipers = blck_RifleSniper + blck_DLC_Sniper; +_loot_LMG = blck_RifleLMG + blck_DLC_MMG; +_loot_magazines = [ // Ignored 5.56, SMG and pistol ammo as most players seem to have little interest in it when given the choice to use higher caliber amo. + "100Rnd_65x39_caseless_mag", + "100Rnd_65x39_caseless_mag_Tracer", + "10Rnd_127x54_Mag", + "10Rnd_338_Mag", + "10Rnd_762x54_Mag", + "10Rnd_93x64_DMR_05_Mag", + "130Rnd_338_Mag", // SPMG + "150Rnd_762x54_Box", + "150Rnd_762x54_Box_Tracer", + "150Rnd_93x64_Mag", // NAVID + "16Rnd_9x21_Mag", + "200Rnd_65x39_cased_Box", + "200Rnd_65x39_cased_Box_Tracer", + "20Rnd_762x51_Mag", + "30Rnd_65x39_caseless_green", + "30Rnd_65x39_caseless_green_mag_Tracer", + "30Rnd_65x39_caseless_mag", + "30Rnd_65x39_caseless_mag_Tracer", + // Apex + "30Rnd_580x42_Mag_F", + "30Rnd_580x42_Mag_Tracer_F", + "100Rnd_580x42_Mag_F", + "100Rnd_580x42_Mag_Tracer_F", + "20Rnd_650x39_Cased_Mag_F", + "10Rnd_50BW_Mag_F", + "150Rnd_556x45_Drum_Mag_F", + "150Rnd_556x45_Drum_Mag_Tracer_F", + "30Rnd_762x39_Mag_F", + "30Rnd_762x39_Mag_Green_F", + "30Rnd_762x39_Mag_Tracer_F", + "30Rnd_762x39_Mag_Tracer_Green_F", + "30Rnd_545x39_Mag_F", + "30Rnd_545x39_Mag_Green_F", + "30Rnd_545x39_Mag_Tracer_F", + "30Rnd_545x39_Mag_Tracer_Green_F", + "200Rnd_556x45_Box_F", + "200Rnd_556x45_Box_Red_F", + "200Rnd_556x45_Box_Tracer_F", + "200Rnd_556x45_Box_Tracer_Red_F", + "10Rnd_9x21_Mag" + ]; + +//Silencers +//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ +_loot_silencers = ["muzzle_sr25S_epoch","muzzle_snds_H","muzzle_snds_M","muzzle_snds_L","muzzle_snds_B","muzzle_snds_H_MG","muzzle_snds_acp","muzzle_snds_93mmg","muzzle_snds_93mmg_tan", + "muzzle_snds_338_black","muzzle_snds_338_greenmuzzle_snds_338_sand"]; + +private["_loot_optics","_loot_backpacks","_loot_vests","_loot_headgear","_loot_food","_loot_misc","_loot_build"]; +//Optics +//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ +_loot_optics = ["optic_NVS","optic_tws","optic_tws_mg","optic_SOS","optic_LRPS","optic_DMS","optic_Arco","optic_Hamr","Elcan_epoch","Elcan_reflex_epoch","optic_MRCO","optic_Holosight", + "optic_Holosight_smg","optic_Aco","optic_ACO_grn","optic_Aco_smg","optic_ACO_grn_smg","optic_Yorris","optic_MRD","optic_AMS","optic_AMS_khk","optic_AMS_snd", + "optic_KHS_blk","optic_KHS_hex","optic_KHS_old","optic_KHS_tan"]; + +//Backpacks +//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ +_loot_backpacks = blck_backpacks; + +//Vests +//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ +_loot_vests = blck_vests; + +//Head Gear +//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ +_loot_headgear = +[ + "H_Cap_blk", + "H_Cap_blk_Raven", + "H_Cap_blu", + "H_Cap_brn_SPECOPS", + "H_Cap_grn", + "H_Cap_headphones", + "H_Cap_khaki_specops_UK", + "H_Cap_oli", + "H_Cap_press", + "H_Cap_red", + "H_Cap_tan", + "H_Cap_tan_specops_US", + "H_Watchcap_blk", + "H_Watchcap_camo", + "H_Watchcap_khk", + "H_Watchcap_sgg", + "H_MilCap_blue", + "H_MilCap_dgtl", + "H_MilCap_mcamo", + "H_MilCap_ocamo", + "H_MilCap_oucamo", + "H_MilCap_rucamo", + "H_Bandanna_camo", + "H_Bandanna_cbr", + "H_Bandanna_gry", + "H_Bandanna_khk", + "H_Bandanna_khk_hs", + "H_Bandanna_mcamo", + "H_Bandanna_sgg", + "H_Bandanna_surfer", + "H_Booniehat_dgtl", + "H_Booniehat_dirty", + "H_Booniehat_grn", + "H_Booniehat_indp", + "H_Booniehat_khk", + "H_Booniehat_khk_hs", + "H_Booniehat_mcamo", + "H_Booniehat_tan", + "H_Hat_blue", + "H_Hat_brown", + "H_Hat_camo", + "H_Hat_checker", + "H_Hat_grey", + "H_Hat_tan", + "H_StrawHat", + "H_StrawHat_dark", + "H_Beret_02", + "H_Beret_blk", + "H_Beret_blk_POLICE", + "H_Beret_brn_SF", + "H_Beret_Colonel", + "H_Beret_grn", + "H_Beret_grn_SF", + "H_Beret_ocamo", + "H_Beret_red", + "H_Shemag_khk", + "H_Shemag_olive", + "H_Shemag_olive_hs", + "H_Shemag_tan", + "H_ShemagOpen_khk", + "H_ShemagOpen_tan", + "H_TurbanO_blk", + "H_HelmetB", + "H_HelmetB_black", + "H_HelmetB_camo", + "H_HelmetB_desert", + "H_HelmetB_grass", + "H_HelmetB_light", + "H_HelmetB_light_black", + "H_HelmetB_light_desert", + "H_HelmetB_light_grass", + "H_HelmetB_light_sand", + "H_HelmetB_light_snakeskin", + "H_HelmetB_paint", + "H_HelmetB_plain_blk", + "H_HelmetB_sand", + "H_HelmetB_snakeskin", + "H_HelmetCrew_B", + "H_HelmetCrew_I", + "H_HelmetCrew_O", + "H_HelmetIA", + "H_HelmetIA_camo", + "H_HelmetIA_net", + "H_HelmetLeaderO_ocamo", + "H_HelmetLeaderO_oucamo", + "H_HelmetO_ocamo", + "H_HelmetO_oucamo", + "H_HelmetSpecB", + "H_HelmetSpecB_blk", + "H_HelmetSpecB_paint1", + "H_HelmetSpecB_paint2", + "H_HelmetSpecO_blk", + "H_HelmetSpecO_ocamo", + "H_CrewHelmetHeli_B", + "H_CrewHelmetHeli_I", + "H_CrewHelmetHeli_O", + "H_HelmetCrew_I", + "H_HelmetCrew_B", + "H_HelmetCrew_O", + "H_PilotHelmetHeli_B", + "H_PilotHelmetHeli_I", + "H_PilotHelmetHeli_O" + ]; + +//Food +//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ +_loot_food = blck_ConsumableItems; + +//Misc +//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ +_loot_Misc = ["Exile_Item_InstaDoc","Exile_Item_Matches","Exile_Item_CookingPot","Exile_Item_CanOpener"]; + +//Construction +//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ +_loot_build = ["Exile_Item_Rope","Exile_Item_DuctTape","Exile_Item_ExtensionCord","Exile_Item_FuelCanisterEmpty", + "Exile_Item_JunkMetal","Exile_Item_LightBulb","Exile_Item_CamoTentKit","Exile_Item_WorkBenchKit", + "Exile_Item_MetalBoard","Exile_Item_MetalPole"]; +_loot_tools = ["Exile_Item_Handsaw","Exile_Item_Pliers","Exile_Item_Grinder","Exile_Item_Foolbox"]; + +// Explosives +//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ +_loot_explosives = [["HandGrenade",3],["MiniGrenade",3],["SatchelCharge_Remote_Mag",3],["DemoCharge_Remote_Mag",3],["ClaymoreDirectionalMine_Remote_Mag",3]]; +_loot_launchers = ["launch_NLAW_F","launch_RPG32_F","launch_B_Titan_F","launch_Titan_short_F"]; + +// Loot Configuration 1: Heavy Weapons and explosives +_box1_Pistols = 3; +_box1_Rifles = 5; +_box1_LMG = 4; +_box1_Snipers = 3; +_box1_Mags = [2,6]; +_box1_Optics = 6; +_box1_Silencers = 5; +_box1_Explosives = 6; +_box1_FoodDrink = 6; +_box1_Misc = 3; +_box1_Backpacks = 3; +_box1_BuildingSupplies = 3; +_box1_Tools = 0; +_box1_launchers = 0; +// Note that the bonus items are listed in a nexted array within the _box1_cbonus array. It was more difficult to ocde otherwise and would have needed indexing to make it work. +_box1_bonus_items = [["ItemGPS",1],["Rangefinder",1],["SatchelCharge_Remote_Mag",3],["DemoCharge_Remote_Mag",3],["ClaymoreDirectionalMine_Remote_Mag",3]]; +_box1_bonus = 1; + +// Loot Configuration 2: Sniper Weapons and sniper scopes +_box2_Pistols = 3; +_box2_Rifles = 5; +_box2_LMG = 4; +_box2_Snipers = 3; +_box2_Mags = [2,6]; // [number of times to select a mag, min # of that mag to add, max # of that mag to add] +_box2_Optics = 6; +_box2_Silencers = 5; +_box2_Explosives = 6; +_box2_FoodDrink = 6; +_box2_Misc = 3; +_box2_Backpacks = 3; +_box2_BuildingSupplies = 3; +_box2_Tools = 0; +_box2_Misc = 0; +_box2_launchers = 0; +_box2_bonus_items = [["ItemGPS",2],["Rangefinder",2],["SatchelCharge_Remote_Mag",1],["DemoCharge_Remote_Mag",10]]; +_box2_bonus = 1; + +// Loot Configuration 3: building materials and tools +_box3_Pistols = 2; +_box3_Rifles = 2; +_box3_LMG = 1; +_box3_Snipers = 1; +_box3_Mags = [4,2,6]; +_box3_Optics = 1; +_box3_Silencers = 1; +_box3_Explosives = 2; +_box3_FoodDrink = 3; +_box3_Misc = 3; +_box3_Backpacks = 1; +_box3_BuildingSupplies = [8,15]; // [Number of items, min for item, max for item] +_box3_Tools = 4; +_box3_Misc = 6; +_box3_launchers = 0; +_box3_bonus_items = [["Exile_Item_Matches",2],[ "Exile_Item_CookingPot",2],["Exile_Item_CanOpener",3],["Exile_Item_Handsaw",2],["Exile_Item_Pliers",2],["Exile_Item_Grinder",1],["Exile_Item_Foolbox",1]]; +_box3_bonus = 1; + + +//////////////////////////// +// End of configurations \ No newline at end of file diff --git a/@epochhive/addons/custom_server/SLS/SLS_functions.sqf b/@epochhive/addons/custom_server/SLS/SLS_functions.sqf new file mode 100644 index 0000000..dfd7f8a --- /dev/null +++ b/@epochhive/addons/custom_server/SLS/SLS_functions.sqf @@ -0,0 +1,169 @@ +//Based on the Random Loot Crates addon by Darth_Rogue & Chisel (tdwhite) +// Re-written by Ghostrider-DBD- to add features and clean up code +// Last updated 11-12-16 + +// Do not touch anything below this line. +/// ******************************************************************************************************************************************************************************************************************************** +_box1_loadout = [[_loot_pistols,_box1_Pistols],[_loot_rifles,_box1_Rifles],[_loot_LMG,_box1_LMG],[_loot_snipers,_box1_Snipers],[_loot_magazines,_box1_Mags],[_loot_optics,_box1_Optics],[_loot_silencers,_box1_Silencers], + [_loot_explosives,_box1_Explosives],[_loot_food,_box1_FoodDrink],[_loot_Misc,_box1_Misc],[_loot_backpacks,_box1_Backpacks],[_loot_build,_box1_BuildingSupplies],[_loot_tools,_box1_Tools],[_loot_Misc,_box1_Misc], + [_loot_launchers,_box1_launchers],[_box1_bonus_items,_box1_bonus]]; +_box2_loadout = [[_loot_pistols,_box2_Pistols],[_loot_rifles,_box2_Rifles],[_loot_LMG,_box2_LMG],[_loot_snipers,_box2_Snipers],[_loot_magazines,_box2_Mags],[_loot_optics,_box2_Optics],[_loot_silencers,_box2_Silencers], + [_loot_explosives,_box2_Explosives],[_loot_food,_box2_FoodDrink],[_loot_Misc,_box2_Misc],[_loot_backpacks,_box2_Backpacks],[_loot_build,_box2_BuildingSupplies],[_loot_tools,_box2_Tools],[_loot_Misc,_box2_Misc], + [_loot_launchers,_box2_launchers],[_box2_bonus_items,_box2_bonus]]; +_box3_loadout = [[_loot_pistols,_box3_Pistols],[_loot_rifles,_box3_Rifles],[_loot_LMG,_box3_LMG],[_loot_snipers,_box3_Snipers],[_loot_magazines,_box3_Mags],[_loot_optics,_box3_Optics],[_loot_silencers,_box3_Silencers], + [_loot_explosives,_box3_Explosives],[_loot_food,_box3_FoodDrink],[_loot_Misc,_box3_Misc],[_loot_backpacks,_box3_Backpacks],[_loot_build,_box3_BuildingSupplies],[_loot_tools,_box3_Tools],[_loot_Misc,_box3_Misc], + [_loot_launchers,_box3_launchers],[_box3_bonus_items,_box3_bonus]]; + +// allows a visible cue to be spawned near the crate +_fn_smokeAtCrate = { // adapted from Ritchies heli crash addon + params["_pos"]; + private["_wreckChoices"]; + _wreckChoices = ["Land_Wreck_Car2_F","Land_Wreck_Car3_F","Land_Wreck_Car_F","Land_Wreck_Offroad2_F","Land_Wreck_Offroad_F","Land_Tyres_F","Land_Pallets_F","Land_MetalBarrel_F"]; + // params["_pos","_mode",["_maxDist",12],["_wreckChoices",_wrecks],["_addFire",false]]; + [_pos,"random",8,_wreckChoices,false] call blck_fnc_smokeAtCrates; +}; + +// fill the crate with something +_fn_spawnCrate = { + private["_crate","_minDistfromCenter","_maxDistfromCenter","_clossestObj","_spawnOnWater","_spawnAtShore","_pos","_px","_py","_pz"]; + + params["_cratePos",["_randomLocation",true]]; + + // Spawn an Empty a Crate + // find a safe location for the crate + _minDistfromCenter = 0; + _maxDistfromCenter = 25; + _clossestObj = 10; + _spawnOnWater = 0; // water mode 0: cannot be in water , 1: can either be in water or not , 2: must be in water + _spawnAtShore = 0; // 0: does not have to be at a shore , 1: must be at a shore + + if (_randomLocation) then{ + _pos = [_cratePos,_minDistfromCenter,_maxDistfromCenter,_clossestObj,_spawnOnWater,20,_spawnAtShore] call BIS_fnc_findSafePos; // find a random loc + if (count _pos < 3) then {_pos pushback 0;}; + } + else + { + _pos = _cratePos; + //diag_log format["crate spawner using exact position %1",_pos]; + }; + if (blck_debugON) then + { + diag_log format["[blckeagls[ SLS :: _fn_spawnCrate %1 _randomLocation %2 crate position %3",_cratePos,_randomLocation,_pos]; + }; + private["_crateTypes","_selectedCrateType"]; + //_crateTypes = ["I_CargoNet_01_ammo_F","O_CargoNet_01_ammo_F","B_CargoNet_01_ammo_F","I_supplyCrate_F","Box_East_AmmoVeh_F","Box_NATO_AmmoVeh_F"]; + _selectedCrateType = selectRandom blck_crateTypes; + _crate = [[0,0,0],_selectedCrateType] call blck_fnc_spawnCrate; + _crate setPosATL _pos; + _crate setDir round(random(360)); + _crate +}; + +_fn_addItemToCrate = { + params["_itemInfo","_crate"]; + private["_isRifle","_isMagazine","_isBackpack"]; + _isWeapon = false; + _isMagazine = false; + _isBackpack = false; + _quant = 0; + diag_log format["_fn_addItemToCrate:: -- >> itemInfor = %1",_itemInfo]; + if (typeName _itemInfo isEqualTo "STRING") then {_item = _itemInfo; _quant = 1}; // case where only the item descriptor was provided + if (typeName _itemInfo isEqualTo "ARRAY") then { + + if (count _itemInfo isEqualTo 2) then {_item = _itemInfo select 0; _quant = _itemInfo select 1;}; // case where item descriptor and quantity were provided + if (count _itemInfo isEqualto 3) then { + _item = _itemInfo select 0; + _quant = (_itemInfo select 1) + round(random((_itemInfo select 2) - (_itemInfo select 1))); + }; // case where item descriptor, min number and max number were provided. + }; + if (((typeName _item) isEqualTo "STRING") && (_item != "")) then + { + if (isClass(configFile >> "CfgWeapons" >> _item)) then {_crate addWeaponCargoGlobal [_item,_quant]; _isWeapon = true;}; + if (_item isKindOf ["Bag_Base", configFile >> "CfgVehicles"]) then {_crate addBackpackCargoGlobal [_item,_quant]; _isBackpack = true;}; + if (isClass(configFile >> "CfgMagazines" >> _item)) then {_crate addMagazineCargoGlobal [_item,_quant]; _isMagazine = true;}; + if (!_isWeapon && !_isMagazine && _isBackpack && isClass(configFile >> "CfgVehicles" >> _item)) then {_crate addItemCargoGlobal [_item,_quant]}; + }; +}; + +_fn_loadLoot = { + params["_loadout","_crate"]; + if ((_loadout select 0) isEqualTo []) exitWith {}; + { + private["_tries","_q","_item"]; + _tries = 0; + diag_log format["_fn_loadLoot:: -- >> now loading for %1",_x]; + _q = _x select 1; // this can be a number or array. + if ( (typeName _q) isEqualTo "ARRAY") then // Assume the array contains a min/max number to add + { + if ((count _q) isEqualTo 2) then {_tries = (_q select 0) + round(random(((_q select 1) - (_q select 0))));} else {_tries = 0;}; + }; + if ((typeName _q) isEqualTo "SCALAR") then + { + _tries = _q; + }; + for "_i" from 1 to _tries do + { + _item = selectRandom (_x select 0); + [_item,_crate] call _fn_addItemToCrate; + }; + }forEach _loadout; +}; + +_fn_setupCrates = { + params["_location","_lootType","_randomPos","_useSmoke"]; + private["_crate"]; + + _crate = [_location,_randomPos] call _fn_SpawnCrate; + if (_lootType isEqualTo 0) then {_lootType = round(random(3));}; + switch(_lootType) do + { + case 1:{[_box1_loadout,_crate] call _fn_loadLoot;}; + case 2:{[_box2_loadout, _crate] call _fn_loadLoot;}; + case 3:{[_box3_loadout, _crate] call _fn_loadLoot;}; + }; + if (_useSmoke) then {[getPos _crate] call _fn_smokeAtCrate;}; + if (blck_debugON) then + { + _blck_localMissionMarker = [format["SLS%1%2",_location select 0, _location select 1],(getPos _crate),"","","ColorGreen",["mil_box",[]]]; + diag_log format["[blckeagls] SLS:: spawning diagnostic marker at %1",getPos _crate]; + // params["_missionType","_markerPos","_markerLabel","_markerLabelType","_markerColor","_markerType"]; + [_blck_localMissionMarker] execVM "debug\spawnMarker.sqf"; + }; + _crate +}; + +private["_cratePosnList","_no","_ar","_x","_cratePos","_lootType","_randomPos","_useSmoke"]; + +{ + _map = _x select 0; + _name = _x select 1; + _no = _x select 2; + _ar = _x select 3; + private["_index"]; + _index = 1; + if (blck_debugON) then + { + //diag_log format["[blckeagls] SLS :: main function: Location name = %3 |count _ar = %1 | _index = %2", count _ar, _index, _name]; + //diag_log format["[blckeagls] SLS :: main function: count _ar = %1", _ar]; + }; + if (_map isEqualto (toLower(worldName))) then + { + _usedLocations = []; + for "_i" from 1 to _no do + { + // Pick a random element and be sure it has not already been selected_crateParams + _crateParams = selectRandom _ar; + while {_crateParams in _usedLocations} do {_crateParams = selectRandom _ar;}; // selectRandom is about 5X faster than BIS_fnc_selectRandom in my testing. + if (blck_debugON) then + { + diag_log format["[blckeagls] SLS:: spawning crate spawning crate at location name %1 with parameters of %2 --->>> %1",_name,_crateParams]; + }; + _usedLocations pushback _crateParams; + _crateParams params["_cratePos","_lootType","_randomPos","_useSmoke"]; // params is about 5x faster in my testing over _this select 0 where many local variables are defined by parsing _this. + [_cratePos,_lootType,_randomPos,_useSmoke] call _fn_setupCrates; + }; + }; +} forEach _lootBoxes; + +blck_SLSComplete = true; +diag_log "[blckeagls] SLS System: Static crates loaded successfully for Epoch!"; diff --git a/@epochhive/addons/custom_server/SLS/SLS_init.sqf b/@epochhive/addons/custom_server/SLS/SLS_init.sqf new file mode 100644 index 0000000..d6b3ae1 --- /dev/null +++ b/@epochhive/addons/custom_server/SLS/SLS_init.sqf @@ -0,0 +1,19 @@ +/* + Static loot crate spawner + by Ghostrider-DbD- + For Arma 3 Exile and Epoch + Last Updated 11/12/16 + Written to be independent of blckeagles functions for now. + However, as written it relies on variables defined in in the configurations files for Epoch / Exile for blckeagls. + It could easily be addapted to other purposes. +*/ + +if not (isNull( configFile >> "CfgPatches" >> "a3_epoch_server" )) then +{ + [] execVM "\q\addons\custom_server\SLS\SLS_init_epoch.sqf"; +}; + +if not (isNull ( configFile >> "CfgPatches" >> "exile_server" ) ) then +{ + [] execVM "q\addons\custom_server\SLS\SLS_init_exile.sqf"; +}; \ No newline at end of file diff --git a/@epochhive/addons/custom_server/SLS/SLS_init_epoch.sqf b/@epochhive/addons/custom_server/SLS/SLS_init_epoch.sqf new file mode 100644 index 0000000..1471018 --- /dev/null +++ b/@epochhive/addons/custom_server/SLS/SLS_init_epoch.sqf @@ -0,0 +1,4 @@ +// Assemble the final executable with Epoch crate configurations and SLS code + +#include "\q\addons\custom_server\SLS\SLS_defines_epoch.sqf"; +#include "\q\addons\custom_server\SLS\SLS_functions.sqf"; diff --git a/@epochhive/addons/custom_server/SLS/SLS_init_exile.sqf b/@epochhive/addons/custom_server/SLS/SLS_init_exile.sqf new file mode 100644 index 0000000..9139466 --- /dev/null +++ b/@epochhive/addons/custom_server/SLS/SLS_init_exile.sqf @@ -0,0 +1,4 @@ +// Assemble the final executable with Epoch crate configurations and SLS code + +#include "\q\addons\custom_server\SLS\SLS_defines_exlie.sqf"; +#include "\q\addons\custom_server\SLS\SLS_functions.sqf"; diff --git a/@epochhive/addons/custom_server/init/blck_init.sqf b/@epochhive/addons/custom_server/init/blck_init.sqf index 5dfb608..2b625b8 100644 --- a/@epochhive/addons/custom_server/init/blck_init.sqf +++ b/@epochhive/addons/custom_server/init/blck_init.sqf @@ -6,11 +6,15 @@ To cynwncler for many helpful comments along the way And mostly importantly, To Vampire, KiloSwiss, blckeagls, theFUCHS, lazylink, Mark311 and Buttface (Face) who wrote the pionering mission and roaming AI systems upon which this one is based and who's code is used with modification in some parts of this addon. */ +if !(isNil "blck_Initialized") exitWith{}; private["_blck_loadingStartTime"]; _blck_loadingStartTime = diag_tickTime; #include "\q\addons\custom_server\init\build.sqf"; diag_log format["[blckeagls] Loading version %1 Build %2",_blck_versionDate,_blck_version]; +// spawn map addons to give the server time to position them before spawning in crates etc. +call compileFinal preprocessFileLineNumbers "\q\addons\custom_server\MapAddons\MapAddons_init.sqf"; + call compileFinal preprocessFileLineNumbers "\q\addons\custom_server\Compiles\blck_variables.sqf"; waitUntil {(isNil "blck_variablesLoaded") isEqualTo false;}; waitUntil{blck_variablesLoaded}; @@ -27,9 +31,6 @@ diag_log format["[blckeagls] debug mode settings:blck_debugON = %1",blck_debugON private["_modType"]; _modType = [] call blck_getModType; -// spawn map addons to give the server time to position them before spawning in crates etc. -call compileFinal preprocessFileLineNumbers "\q\addons\custom_server\MapAddons\MapAddons_init.sqf"; - if (_modType isEqualTo "Epoch") then { diag_log format["[blckeagls] Loading Mission System using Parameters for %1",_modType]; From fb9284e3fbd7c97914c174789ae2d382f88e044b Mon Sep 17 00:00:00 2001 From: Ghostrider-DbD- Date: Mon, 14 Nov 2016 14:04:10 -0500 Subject: [PATCH 2/3] Version 6.44 Removed definitions of blacklisted areas from GMS_fnc_findWorld and added this to the mod-specific config. Added Apex weapons, uniforms, helmets/headgear, optics, weapons, etc. Added scripts to automatically pull locations of traders and spawns from the mission.sqm. see changelog.sqf for details. --- @epochhive/addons/custom_server.pbo | Bin 413937 -> 0 bytes .../Functions/GMS_fnc_findSafePosn.sqf | 2 +- .../Compiles/Functions/GMS_fnc_findWorld.sqf | 168 ++-- .../Functions/getTraderCitesEpoch.sqf | 13 + .../Functions/getTraderCitesExile.sqf | 19 + .../Missions/GMS_fnc_missionSpawner.sqf | 51 +- .../custom_server/Compiles/blck_variables.sqf | 6 +- .../Configs/blck_configs_epoch.sqf | 175 +++- .../Configs/blck_configs_exile.sqf | 751 ++++++++++-------- .../Configs/blck_custom_config.sqf | 14 +- @epochhive/addons/custom_server/changeLog.sqf | 19 +- .../addons/custom_server/init/blck_init.sqf | 5 +- .../addons/custom_server/init/build.sqf | 4 +- changeLog.sqf | 35 + 14 files changed, 767 insertions(+), 495 deletions(-) delete mode 100644 @epochhive/addons/custom_server.pbo create mode 100644 @epochhive/addons/custom_server/Compiles/Functions/getTraderCitesEpoch.sqf create mode 100644 @epochhive/addons/custom_server/Compiles/Functions/getTraderCitesExile.sqf diff --git a/@epochhive/addons/custom_server.pbo b/@epochhive/addons/custom_server.pbo deleted file mode 100644 index a51088a3db37bcdf0562cf1b5c13350ca2ddb2c0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 413937 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 >Ymp2D00W6a6s5nv8^Eb$4R zAV52SOzqa~SQSS}Hp#9#zx~;iH0@cq#V_{D2g}Pc^0ue6me6;tRxx??a_{-!@d19l z-f5k*lIF|pWOt`|{Pbz2;DZ5b6(BnEyv|}dQtEhPNXx10cQ2@~d#=|6wWN*XiI_0y z;&{*hX3T4{M#2(sh^pcvstC>L6r3Loa_qC^S#LCi{SKeTFd&A_VB&%T$UNk+=u}^rVEY8$=xUF8kfqfEN<>PfTE~!-}2FW4Se? z{8yOI{o^Qg``}oHRY=6pR$9JfPca>^qJnRjMoqYQ9m{@46d>H zD&*XYM0pO>4Yo_PPOcq5y$zdB>u);j%gOOBJSqn*5TNeFO)1Th>W1};WE;YF+%aaz zDFY_dc=?V>=7L$?CZNk{+(J8xb0>qLrj`#+$gls`frt>}$|-mVc1@;TiU$6poww<@ z&=D4rs_JNC*U+kKA8o(EWl0ewfaccG7Dy3OC7;K`;XCO6x$mRWdhj7Nf{Z)wZDxa111niP@#3Wm}pGlS-!l%0c zhl-K7Ilq38`ou0DSrM*WF$E?*LSH24kgP&!GECsJW}LOkRi1&?av&!;`RY#M5Vlfx z=!v0uEd`!X!pv*jTHe!C(BMd>qXS`#-5t3B8fyRgf-3r5ivbYZPBdZ$BtWcFE6xeP zt$d)R$0%pIS{n>8RjmbEIg6>of^l$=8c2;K$W&^!m$n>I=G2H3Q)ygVB|SE+s*+z1 ziCh<5)TOGeB)7xW{JN^?x^M)fIuA&8M0bW(y&%KEjBz0qGzWif@PwGoVkr)vn}piV7c5Je z(}U~*|2Lm2)q{oGGYqM(NRO#-aE6-$rh$c4cC*1BtTms#xFPif^F4tpY>Q zsT2)g>NY0td*-eDmO9>$R^8w+8A}$==CHfwtMC*S-lAMYsTf`;4e@~4aU7{ko7Qw%hZPAOpcu;$ts$50Y63@kdLpyt~5&@(J+Q>_DDjUh%% z1H*B;oIKaAJ?b4i9)tsjXz{?=_>!B8ZE!do^x!XG+K#ZZ>A}76H0Ym$hm_@W!@L-m z*G%2fXj~QP;kbmcq1Q2#L?)o7T5H{3; zng0g>T|*Yorp}0i;$@L8EGj8LxSTZ$S-7La{k^T7bXKlm!>(cRYwoQfUbDK`lr2uB znF#q7k}Vw5u~rza)o^z;^&61cVRL{X0h-Jawq(P0JFxAx<`i(4`(!pg!+9s09&T>j zujMR&8YOg;<@hpPfC?xen+^}=8zo^Io`J@*u0`80mlqqixJFEVC)mzxy?B_p_ER1~ z=d>v$<~5>;cQhsU(9Afr*kpiL1s+nF^bv#y*Ozn1nUb_akMe_*no0^6T^ zq1yT1S#LxctjyS}_E!79p$rLs0O*OCMgqaH4ky<*=`i!|NJ%Bk#t?H|*mELIoOJp( zL%TdvNyfrGw>6}lqv@GFkG1G<+_p640G6^GKorI%QO4FeU6+I-I|Qo+arY)P8(jOx ze9yn3HmGm)W$)c^(!A$yPXKn{jqE+(H{;uiE+2^=-X~# z#&6p&?Vfh7z%N1|Vfhr&qpG5lP;i*~NrCq-Ys6R%rX~Pa=7IgZMY)67^L1B)N;W-s zPTkdzCN#I0S+>{ms|kA^)$Y3(fqfSPaH@;YdBy4Gr~*SwLx6IuT;Q3S0(#&D7>82e ztl!_ghIT@)3qu)uq>~83l>X$}H4>*x;zFjX)~x3j-Ck5xm_JSl8;Mh*MnFZ{->8wp zxsAjrVIy%$)W~6OBYUvCpH9ND9cCb#IgrV0{JsZ$skXV-2e{<1C@0<){bWEd%U;U3 zH{6l9*`8Z!#6ve*-C?=}4>BCAhEe7|>DlDhSfbP=w2SjKBnNJ@Z$p#UPVehB6enM! zY{2P6u=s`&B)RqNVF9!4f&RwlVP25nU|YE4t8_;WXb0arj(WyDXzqe|-R9+X$i*<; zjEaSD(VjJpgz&JVAw2AC2p4T(QxBZN(f`U-)Tjf7H9KHftpkR28huP~jRC41(8~&5 zw=Ixz{G7Z1=jG->kego;!V*Wc)2B`=@LG z#trUMN%NY5Pz{WLS-NqBd(Cnv^hhUG?n*>w0(nWgC{n|D4!gQPzdt%Nb4D+T^TscU z!~k(auG_tWeh`I(jBZ17d=A-~(PLo18TSE)>i+kZak*|XI%n(lThrSUXhFEj$VnUD zFRDlJ!a|~at;3d13ZGd_eFw)|xP+LG?E_>mzyCP|5n_vV`L^Bf{bNczO~T99!Ebf~ z2WX$d9>IxRI}{-;IL*PyI#vPs&Fq(7;6w*+Qj_)zR2F{kr@rCggh-Y@QAXUUqHjnD zL3R}cG)mNE7!NgvwqUkmltMrH? zur?2h!Jt-GVU~AEYk}v(A#|5j6m!t+OecTm9gKNABDcqIiNk&~i$nBuQ4(%KqLtG~)h??K+55Go4~=s z?iiX6+0?Dh^b$SFNw~&>nBo?9(xca_Y=+Iv|KS762lz|MCT(8|H>Ec7&-CEPZd_3s%Cp7Yi+UN9<>l zeDm-F?Rz|TFlNxHzPj<#oEvTyEb5}SOhNkg@EqL_XqM~{Xf_7EhC{AV59>MDrzYSv z@C<3IzORR2PuM*>Lu!h7TEM@P;FEV z#i!dl&zrCIPw4CQWalN68V{etx$z+Y@K?LjO3)*i#BRN?X7*3T1FyB-6x$R$58|Cr z-7Z6ERNaRfznw50h2|n$+re_;L+4h^?E5{qt%P>`xH}RL73!14SpIq^P3JRcYu)sI zK?UNZ6bxPGcJfs8>OXeqG+g}XPz|5P`)m-lr7$s>z>1`s{Cv>)*KqtZB|pab>||x~ zzn5P?RZ}pz%5#RVws6e`QJg%>{t(!h()0xmr_94De4nbuC4JwTfJ-o05miot%rp46 z=XjTbid%Pj4zFH4*(AQ@4k!@O*7W8_iXXAJxqulA4j)kQ6x%}o);`@5k6S!L0^@*2 zv05qOF9gV4LyTP5!_Xi`Rdmf|%@@Po0M}61W!8(8S`qp2Uqecvj3j1?s1Czvoq21; za*3sks}v+*t;p)~O&IlwQ{=5MoRZDYUNMbFz7&B=(0z=@tC(QfArE0Rj24p&&ER>( zeM=i{m_Gr^@v%XP1d6MirLzuvaMJtW1vC8(#caktx9LO%f^= zBV($Lv=9EFx~J89VqdwqE=D(s^RDx>s+AgY7^O2=jbM!&7R3KbXIwDW9raVawkp&}+4x%BM%uh+(`~IApc!1# zqLraDiJE((in-oJMLlj8uYeu43bklh1BV$rvx1-h+DUe#(o*%(b&ohwf9JsAT{*aa$91=)o% zI`j&m-PwyziVf(sXBX&3-Kp;`kU7w`P3NAo-c=7+GsAP}$9js=!Ws0sz?xqPQ>LpP z(`Q)9EBY1-^L7HOCHnR0`P!a;U0S}j*MTN4^-Z|sB30XRjz(-yCRaW83+VX9o%$^` zeC?{y4Hc*Mf#n~~@iHe`Cpf9-h|N9CuhiADPgsq_YX(gF0RzPveMOTg$KtFv__?ECxhZ5bd55_ zmUGdFJ}oI4wV2*T?EpdpJln%iYzr~2$r?f-%*}y9q?-eUJU0ibQr(;c%67Ft)am9y zOP{w)5uFx7vBkO;6#7NtU9va4lX#VIUTdruLQAh$Ie~l!dCx_I-ArAO6zZ{OQ;&y` zrveK?)j_H4+4=MY)&)!xv)~{trIMb_@O;+oZ*{12&>h1`C6!U71%v0Hsz8Okj2kkS zR*)*9Zq;PZNfpI)qtHGtS@qg;Qu&H`0@WKh&SB>=O*1;sCLSEFgACd3Gd$=U2r7mj zf^5+cBnMub?@Dh$usxpKm17qd>$}po;phi4rg>Sin92?%n_mN#7PNHhIiGXaqTosgsZCAw%aR=NpLAH4O`jAbJ-U+hFTj_U( zY?fB^f{{(nc_NWaSv&@>57}z``$IO(y+CA>!Z(O)s(XdVCfRq0Y)bqRp|cXvgFY5X z!R#P&U&peI90ku~IjP|jTlhYf&8iP%S$On9mQ9YH$YhN6tT3xV#47=U@@fgm7;# zoB9JE+D6?oc$n)E$iNS^y(^hlELytk-3q}j4Wtypj=H8w6t%_65Px|MM`Vdb`S1ifHq z^5nlp#2ew;)`Y!xPGv}$Qy)_P^it#0S?Nwkh6O9aW1K`{wvWts?8ZAYz_B-d1-r9q zj)1jN^itj2!|3xx(7(Nm8k!7X70uzC|N8se%BXS8mfncmEG?t9_aG;2w(p1F!u+IU z~DNC$cd=x}e&MnMIG-Tq}*x(`pk(P^TSCCRU`% zX*JjY94NzTZbLJs0a0p>YZuk#2()O&oU(IVI#hXzMD$PqkAW>gR z?IX46rPLmdT>d0dd-0+fNIxT?eL69gGUujR5pp^)C9zK@rv>&%H|sp;+XBshg1k9? ztjI{n(>;{N=Z#L~vr;ut} zd&fwZ-6+3fVdu)Uo%_+>T0(8T1nZSOzG*ua!%B3S8I~Q!J@BGMLIL#x4Mbx0#qxh* zpVT9Bu8<;M#BSXre?pOP&|YsGmMu^a%9Z@zEo9F~<*lP=qvvYy^y*D+?eq_=j*jn~ zGv{2{D)n!CgyU(*jC|{XD`u@KqaNsp=0(~EvlhtKX{l>zjj;Z)4Eu)W(RM4w`XAOB z!HRsy?||vI;z|2@KS$IkZ;LDffmiO5{F+3Ks`_I_^Bam9y<9G(4!f|ZF>MKwBN4nq z5E+OPA5GFok{~7_Llla7Bvsd?1kw0Uh@^yHsRYriG?jubHFyIdFSUJ#{X89Dqqk9w zMKr%34PF^UAf(91s?zGepQ*u{78pgcz;t3PjLS{6(z0}7N*1^l<9(^~X&+{SDPQV* zW)^`s2$3z@?0EsYzFwVAJ>T_s$7`qyr)tI+YjrLaK9{1g(?X=#xm5TR`y{X4uqoa$ z;jO?fr8&x*vAFc}6h1{XmQwdrHxgLBr^>WrQ5$y!W=R|Qz)~{y$B>NCIf8mPpqn@6 zPE2j^Q`VqXUN&FHbSY$uBv_@GZlS?PYGP> zE0aqnret#I49^28lv?~=sLNf^Hjk{9BYmo@y}IEWg8IHjt8?+uXZWI} zuGdo6YiYp@v*xeHf|&v>@eO;@L)cDw?!18uDR>DTBcM@_F+4BnGxQw3YWoON1ec(a zr#G4OhH&;dfJ0k2551Tq&l0#!Mu=2KhU)Z_0bHHlcH!=n>ii}d7nWSm0N z#Pm5rmeE<2Sk+lTYc?7U5kHE86$^WVSepFaYcsWf3-{{q?rd|sY@QrSJ+Hgh4!8r? z=@AgYVZ>QaUSVH9v@oxRFByNZ-0s+}A)ZhkSR5dva~n^x+a~6zdSIPm*y`Q%q6dco z{oxgyt%!6VH&4Mz;f>@RUSr|km?2fhJw)rX9$sxERxR!tq8HZ{Dcc-iKE;)B@?kjZBYdm4 zp1na$>QI(b3SY7yjcW!(5#R-9pM(K#!bnkS8ZnCVhiiCE4@pOZ!%jw>4+HpxozP2d z2mWUV{o7;&Z|Sz5H=PlU?n@{aJ`fiGJGsroR$sNo2gj(Xuz&EVskr~IFrzG&V!4O}D9{3VBI zh{!Me$dYY1wFf>iRl|LHBrya4M*x3Ch%#Ussq_W#R&q~1^x!!v`BqDP2S3u^JpJ{X zr%%p1lWqae+QUxahvZk$)Pz%AEQiT;tB3exsK4@W)Sww*Es4;@@0b-J{*e;!rVf|F z>QMPWmoy8O;b}RWO}rWext^6-eX1_V!hB2TW9iJ%H(VM!GpgK+NF))96KWqMid6%!owL zg&!i&ad*l+a`Hn`l@-tgu}z9eMLteATg9X-AL<`jh#554!cGY*)n{e?jZnv&7PS3u z(hFzto2MY`Z)MIdx@WVi!GuxB&SCS<<8<(;1}aP)(4UqL_5yd}0a8X9&gD zke<`(k0ktXeBD=cF!h0sv-3zznmI?TvB7K<_;crB%6QvAme7bCu6mN*n4{C4s31NN zo$imIM#Ngcp-OUO2IC$+;f8d9;O00*u?;Hrn|(M?Z|-fe@mC{h;gcIAt?NNg8exTq zrk&f`8A8zoO>uA)p#B#F34G1#QjDcLe4 zTLc5?foVWMm_GJevLjmW#dtUxF@tr@C>t-AR$On?|K{HA7(AxKksp~!2}W&(Y!dwZ zL=~REM*)OdJHvf`yE*F+J-CDAKlg^36A)%QsWfe zGtq2WdL%O^MRc!3f-Y{KAe@D;6;eWmVcjeUwaa-4erfuFaTv@lC!3kMA%r9Ed~_($ z^TgrArVuA(zfqr{EjKBZ04o41R;uAh0JT`DHsah4Db-Z%4kxt`zo^OKq?T&J<3!Qu zM`(5oY|7wKI1->!4uV>V@ehzuFpG%1h;wKc37~l4>hzG|s(F46ru-a^Ik9NUZ;N4C z>l(4Ea}!304iqPVEkQk45HWZ%8cw%OEX-^Q&ypAlR%ZNNLI zc9Z-NjH@vW)&lRO3WmEc26lvY#!9L57BF(Spi5h^(s2AAE#N5i-ZpWHLD)_eO}C zffd=TCfdL^Pfv#MxCKETXq+j+W?gaj(2EH|67~?|IN_ZE7aYldemnRuz~L_}Jgy}; zOtBY@E@yon-n{hU-hf#1dS{0JPmGQMFou&Ut~t0F<96E_;CB&R2ikv)`xd-u7L%V4 zxU%&D2VzmeF3F&ZWD1_Y+IrC{B96x|w|#{9qNkJbyK1>C2-=)Yr$t~CnoYhW8ujNIcHE*u)b1K9n)6O8ae;1Wg$my~Oa z>!ODky&5cpl7S&43cSpjTPG@kcNRn+`R3{OtHRO#<=fumWv`zUWHs#RJTa_J;XB;6 zdeb+k_E(a}XpE?#)9z^jPIO?CN4i6=;g@wh6=EeNEBD}|zV z%Oq`M5HW;3mkYOCg?YDCBngpUks;%OrTx+^7R2xPLZsbb&qb$@hYT3!5~#=RhIc>& z=K-=2iAo3(;ZVEJg@{LpZ!{jB!`br$Wf5H$j~8P9Ll45;x!OkE9}3 zTJOuLLd+4js+EC)2E9HKaRvKJ-W}}MS+9j))}v&tB+bZll6%KMTx=fjwU06nF@i2< z1H@6ntk`LALrfvaWi;iv!WKYLrkF!gCdHxY&ZQ#TDt8Lfw7Dw_(#^FNwNMHYf^>!W z9RP(XJVfjm^dU=yMn|0F@!d_ChGaYQP?KgQ^;W+VHK)e$*c|)T20zr9+8#+p3I{Fll#sE z;tT5viOO*5m2HW@Zr+(rDTN(%Kws+F`RhmYN37`I2cm-$DOUiAP1?&ygCJhqM7tlm z=dTauZ}o1Ad2V-?pLgM1|8js>s&KcBhhl#&&Z9PwVnV95*fwKxlZ0gbT7V-iJt83` zn~mf^?1SeMwxaXC)9XuMG{e^D^6SEpu48n-l60?zW3XRtdFLa|h-UU#IWcuVr(m{% ziD1a|K#E&3k&biGiChuP()bxKQGEMzE0%P?UukdJ^(5J~Z)9TpU8+wDR`e{Eg7 zzIzTOd7MoSM#%GgVj|% z6U=_k9W~Q&QjU2)Az5-$CMOSx)Gc>q@J;_3qNC672ayDm|H2vwO`fG23HxuMe z+8_UoJI`P$rAc0|!0Sws|4K@vQP*@tMyBZ25aDCbA*lnOu6(K^L}jr_StJW#Uxk_t z;Rt^>2B)AKsjP&25j}2{;i+}n4oFWgxWzUkBG=}3LI34tfq`ucLtF_NY*bnZLjREr|3qW=@=vJ`^4lKzqURPD_Im{!=tvN$bY!d5 zqgRm9!4m-^kTdEn&tXXKCy+2f7|`#Dw1XIe;0j@ynZgIw=SQv29qAc_6Bl^roVILD zwoCc@?|=OlcXo0w@=$_9N#s7gUqm8Npn%@67lEV!$Cx~sL&h*W>-WxIn=5CIOu}s2 zuJODB(~!P>aGra|sp*yqexP+TeAjJGAxqR(TL=$?&XEMku}ED1T5%wp8GJsGv)5)b zb9tl^a2&*D;iN0qy~Eb)zO+jHG`BF97FW$vcXjp7@i+JQmTBHVZ3i{jGzR8|vEKn} z31tJmHd9CvvU7YnK0-=1Z6 z^D;B{iP6c#T4oGWjb5lw>Q`L+u+d@N|H`%UZ&5;cLa5#c-AcEWV9}%elP9@L%H<{> z^yG;Zo>cio=8FFh`V74YY)&F{1?OUaQjn$+03jXAr~W-DtgY0lM*LPTvxy8die47V z09 z`kz#Po{02DPoI_u9zbe5V{pZ?veHC^rGk;XoEW&->prn7I#jeL!;JUUWQ->cbmJ3; zcmFk%&8QfVzm%H!K=6e9P#HcXoF6Gf2Zjad2i2YJotMeZ1y5tJ?ofZg3C>G^J{QOx z3o|8Z7e>yy!WVytHUqIM=hB2MXIXtA;1AyaMHy%W@hR36h!FDCCrt_ePK_ZdO5qNK zcwqz3?M-I{#T)Q3NrC_JtrL;888w~qa%4dUl|O^BT@JPZW`V2$L&5N&|A1=%cM|;=H)#QkW+M z2j6ZazUU?g1v39x7L=A(v_SBN##dKmv@d0}g~{wp$BAKGVmKU{%pb=B77M|`2T71C z=~7e+;d6oXr9>t>k6;R$H`tALjss(joL0_~?-_P4#zMy}pYw@E5T#187_BWlV5lk= z9$-*7miOllRdjcxRp@>J@g2@QCI)(8{0B!n>qjVdLn^ZoX+bFTv>=5seEaXs@C@BP z?p`ADUaQleK1V2a723+{Shj%Z2l34%l^ad)@r36Dwl*^pLYHPHxI(hk<+lF}EXq$*mTRxNp&AFyM0g-lobLg zrmxrDy`N}3Pvox6wWLRyj1huRR}C)ffz;W^K}n~!0#`$@HrdT5PyU^B@qCf|DjzPJ z@9keJf2~5`q6pxUE(XmO3qLE;QIA&lQ0zZ@_Fw;%n1e@_7Zy4+B;~A=XVo7tA@b}+ z@k7v;ikTcdal30zI0}p*TY`g@j{h53cPP>`1I1vJO~81lY0Sr0W^F|QDQ zHGFPYai;gXU#6d|IlrIWH=!wtR}{YAPvy~3Mf95 zX{7}1q0-96MtyC)T6_itgpCUR2k&pE_$XIPjkP+JBsMDeU183~db#`-$@1`5l)v$L zN6Yo~we^+tVx?Sfl+kjfwo+ZIL+Qe{ys=i3CMs)d^>xD8i)szfHR%xGwQ^ZHxlyXs zKdJ57MrD1aTC7wy*2?&|TwbY^*BQ{&jCx~ZV~xWr0YBx94J5Gb@*b2f*ZO*6qr9=$ z@V8v`2hew#-PCL=wVGKd?7eGcQ8di0b`8^HR!gu!tgJOErJ5|3^=cXadtm3+)|8~H zYakTY`NwW$y=*qSDmGZ#3RgZnEv#|du9w&A)dlI0j`vy=!VL#)QSxyUv7uwBZG=14 zO1)k#)z`T^8`WBEt+5!!E+_3vsMXoJ>lGy>Om?upqV9URTGzVE>vwG}dSM`sV3 z^TKWl=A^9F<@_l(Knso*7e07hZ4z_vw1V2IT>h->b2hD<`nVEVA2%<%Rvys58qU2( zt*^>`>GAqk+0gnhD}MXrS-Megl!WoxDAzWs3ohFne1b(~f2+0NlzQCyacH4_o`!b5 z9=Col9l-Y&!cVQrT@(FJab=H%f9#kR|6gQ&_4pP1doJV=@sIi~{yhuzi1k-XymT~b zatX2YgB!+LtyXF1l?MDPu2qY0tvTdxmMeH5Po9rhJ*#E!$+|v%@3DEw;!1IF4@3^^ ziO+gh?I~?P+oG_b$9xs+hz_Uj*_2P-dQYTUx#m^t6%+?{KBKx8G>Av-gX88A?Vn9` zxV>p^ylMpeZK;CL(L z1y3`%=C@xA@nYP5?Kln)sq9F&cYOw3<=0u>FkHe$a0)Miide3J;Wu=Z8fk0vP`=b2~DPG|Qw^L|3gG5L88h0<; zuZj9=V8ZvSbUGnTQKtwk;h$7PnsB=My{#S9nKm=+e81{iVt2692 zz>Zi|nf${cUz6;m5KlGg{bRp_*D_$d4eg$T3Cy?(ZF$NzzwsV7-J*IVbUh1gF*bq5 z(3Brq-gLyg2RZ_R+;?)`8FitXk5^G-HiTv21xjf>7*#^b2)_wIR=~{VGz43_W8-&M z3k+Tkn|s=)kM`#Ppk2IJkEHZq7%R9i^I({%Ogc3i^!Q#O<*uO-b_Mkj=2v^u!C$}&+!6Qs(6clkt$)pEA&JmV#l2~&O=0Q({h!%f3|wTF0bM9bWdB>_(v9~r2{d` zf=xM8U||af4G;B2!dEIc>6~+&h8^(+LFXd!w&S~&EX;J z2J={|;UaG)SHwJ@!8bAE)TjM`Cshf}0kXuaY$q82s~}it65~+&OR{y{J%1;!4>B$# zE(P2PgfX5Zk zkjYsrU&`PSO~IF5sSvW zJ+uds$v}pL9_FB+$jwi+2Dl=j-2zP^QYM!VRSTdes_G9=AxCS@+z{Z=+Y&RZG`8W>44x!wtn&@y6pCJak<|02IRNcraf(J zn*Bx^QuEFqSQ;y@a&iT6${x2Wma8-WM`U1LX%o*W;tsCxzM_rrMp*Pj! zZ+PAw4#(dreSKT|?mN0okYW=%4Wn4lxeeJGwiYI#^t%>Fnq zG0moPl!oJ$4Pz2J=HOFzhRg&qB94)*R(eWy6hO;vFbHK7w94UyIUMo zmJOH|lKzr|$7b+A4xS!npq-S*yDRPGYYxd2^Kh3<*ARl}ekNI_yrNvWzfFOJmuxrJ zalkGA=h<${Lq8(l{cxTWM@r5#+a?ew$ z1Y>3s8}SG&N_~0F`fF4s8gWBCM>gI=|48 zr6}sx*n`g}Kf*IwA~w3XZ$YnlCSDA@qb8m`1zN0*Ge+$6|(_5Li3d_E&(kAN)8 z<5VKZfewa-g_rYUer93b{aJQ@?ZUEu#cb8XxT>X8R4oe0MP{zEUz(@F#p@wVRVb_H z5^-mhC3+lXyq&lUI4*wXQfPB{2-!DQ5(_hpsO~^tJm7rhW|Uk*Ky*g`cXY5uXPpa5 zFewYQ;tXMTVgY7eQ(uEL)8a-Rfr!C*!ptwgRRtWv#i%{SoqobwuhGveudHn}DpX}G z|FJsV&+xum zrgkng(xDwGYN{L5nS{3eLKWt9_gMux%q3_;LhGkqZ>aV>)%L4U=ZC7x#zqO+I-k&8 zeVaCK^ibQcH)_RophQ$tiTHB4+JJKV2Ijk3fv(6sb;BNkehv}c?*gv^l+QM zpoez20RxUQ>@A>X0u{WnuFHD4R;dud(&YsgrWotMxP&A46k3Op&9+&k$r@@rvTqxB5eh*$6uLbeR&HMpZvc|-54*8FmDxJD<=JB6&d9&CR&HK zle>C+fg2!&_}~}ea=={BzT_P+)0jLeNQ-w}1@#fksp5Ij9C2;7&t_w4fe3>Nz6dv>b!hNHGkUEKkLqd?mM*VXELsNNkE+TwdtE7)DyRS~-6xF?R&;9(*!P0D1^bpB zA54;QwT;I&w^!hk!3yG1xdwDMa7o4;vkY52Gr~GPE4U_tC5%TXZkCBB+??8Q5B6ao z7{e^VpcJ`R)=C>y=wShcFm1+Uz>s>QL3?TF@qa>Pu+#(6VHIB2`+KdnUTW}qfR1fc z(A@>=f>BNhR}5Ti>l~$s7|QGDA+Ds2`bwEbdzre-6|OyjQih8L*`mEu) zEF&bVz5%`;wwf>x&l#a1h_*x&HJF0AIn3y*D-DvE_6YY(Ts(0D$FNsGr`aye!8;7s zD`niOVXIwl;EpNdtCt%zQ%9%D6;MlNc%kanDK5S1^;$y|>Z`SNm5ksziTgXq6Gm;g zDP*e%Rn%yU&n3LJR>ZPc=fBbom`T$@6@#J>q?|)c$DLn>;}2MZf*BSn!y>c>=>#L zT>w_yFhRp|#gbU5W8q~`irbbd=p92RR~yGIdP5{FpnehK2vRms={oLPRTwdVWEQH4 z0x~RnSS-V|0DF&^E<>!u&ERcO_M(j(#Khym)vqEe8k@@4_WdgB7zPD?7!SmY*fWXPda2Uj z)Re0jP~OHHBbHS(Aki!1w8MF>XodV2UP|N?sNUZT$gE_)1}!uy*#0>ZbRNV8xhXnP zhD_+5fjk2i=x{*f(vU_=9cvK4tP3XqYQ4V(7$ZWIjg1HcT1R`JF&w`is5tr>b zmbZE{(own>sS*7+%1SsoFrrdvW391K#q`R#s`B%DmoP}J3}HEFs)3C}2(1S8Pe^th zYZBXLW`1%|!##El7RSIR9w@jLrAOF0AsGk3u_`R`OjU{=cRc>))erRvh!4Se;_gP}ga=h$UBmM)FNSO60Eu@zErb33MBNXtm$`~CQ2UVD z*TMG^HMpAK7RkHGC+NYEp`cH85@CA6} zr9RysRlw$!WUiY7mpa$aL69SMjbm58ld%Okvm!}RDwC`>t?lxErmKTb;2xx@g)O9_ z+zXjVMJ2v=8>t7Io-d8hyDDN3rxU-qq0~KAQcA1$@B(6cK3`TQbu5{IaaKKU$qexQ zNo5>M^K;7S{3CeYuEuSO*!1f1s^H(V|^t&D; z-M-@GEB4OiAudxaamlj}zsnR|J3U9t^7*#t1{c3qk;{MH8a;AX4J~Y{k&8}n{@YP# za(o>!u>##|HpmPfac?WRt0!z^G{t^D6B4R{x8~d4B6>GU}^IoTLaEP z)zap_%`GkTBeJylH=Zz;HvdbT|E0~pSnDip{uwaL`y*M}{HJ26dDJXz{+G5)e`H%G zcjNxUiAU!NNAFXCiN&J#<^J<2%!n9oDaiX13-W^4#uTo95i_Mvw&Q<@FfX^UuRw~o zH058K@~4AN&=bMZlz;E#_EFn9XIPr@k2^QrX?Lj|5QY|(xWh~KcQBpk(Ye$YH+EQG zG#KpCf7O4`f7LzKc!vl>b=6JoF~_6T_@h-cpLy2KkiWj`E!^jdbLqyhfr55n z_jqr+AWA-3erwoA#qgXjKePi&L;vx(bDJQJcaM(j6P-jvd7lm$0%mfLfQzb1#@>7a z%o>lD3By`0*^1mKsD4@Iiq(AbTvPur%RRRKVb-jwW{$DHFYx89{k5%y&Hdx-3klca zB7b^=|L8;!+uuYiRi2!}3$4-MMflDqh}*@$>##{!U3EdA4IEHSl7Q5Q5)?XB1c9S* zq3Ct`&^U%2sfdJn-3dyjE8l~v)FdiRf4G~S^LHcs-=rX2W3?~&qpzJmy2o9C-+Y#Q zO^(ZgC0|1hgWJVvVd=AA>9b%l4mHd6d_`{8{f@X~7UcrIs3a=p{QiW@;_?;t5Bv&i zsC%9?D&@Q&V*BOJhtrc6_qN|&K8NA@RObbz*K?#tpYOfEV&iu!N&3(GFA%%fr6+== zCjvwyLwv6LoWUzrZfiNM%Zn-e{ruw! z*p~+MapdCXh}eC^mD)a=jj3xO_I9vwXLR0bjgjsVWVed=?X`8pOt(RyB~W!v_~NuN zFGFpyD574ms&Wk>yq5;_d@GU5{~W9Er2&053ho?KEe+_G2K0=j$4K1t{~0>@TpG|X z4d|B!^h*PJ2z;J*mj?73wd@v|gPNrQJ(XFOF}?n%F}?h~dnwiXt)+Ujj`-RgVlD-H ze`dj6Y)XHZF}>esK1aTnYvF!Z5DFuGdypQ-*hZTFdc=Ca1B?0xgrU$73mWgP{kkly z`m@T$N{s>0At)6taNB5){%T>RA^b}ojqsoKqc=ypb^u9o~Qxdd-9{uXA?7sH!xYu|nMBaFGEE~J+$ z=?v=FzU|szrgWYPDnT9EG&0oF8B8Th-}tNFfAiET`)&J^0w(93QTJeYkqa--q!4wO?4VOCdzx%MC#Cm{Dc4yX~iiNtH2f!m0Zd7oeBLI`dPBLmJG?NE- z0brl!F#n(C0zd|zdc%JN`~MQ`|4aAV|D*M#@&D5JA154l($mv&u~MwQO;*3}56_eG z_p8O^6o6vQf-2vyLR8zk#QN(D-X(exI)@jNRMPxdIgUJt~lkXeek z;y{z;cQISExwktWP1-I!-q&od7Cki}$>&S$bx}r}W^>ye&}Dkp8|?QcQ|>KxN3?17 zn`wDFq|Fzd+Y@wuVN?Gg??R?qLH<9zk^l0mWcRj-&@x%vL ze2)hp66-xj{ylc`sNuIh^Edmm?&BQ#Qq#fm)Q^~EY?;O?xsOdZ8D1vCvwy)|(u8h! z#0O8(nIt%Ol*g9iMcHo4N3({dX*}HmsBqKYT#Bdb#RPIf=hnJUQ+^yTCa=SBzi6%v`^Agz6FW=A9*64}wyfd(z3<*%2Lv_V96fT-GYgN1&Hfk%i#=5{7<&E0f z1|LAHB`6es-YX)W%xd*=rTDD6vbI($@e#LFT5pul2p(@sbv}qL_C{$QZ~w=>-17Oe zT*bpI!mO{?tLW(4;s!cfU#l-xVg93MWo5mDC*~^ZtT)!=$+isJk8160u~x&2YDpBU z??*=7TXSutT8F{MI#5zAR~7N)|G&L!X>KD)&U*#JcVBz4F%#4V_~>o`1SIc9kRU~I zhZGqEXXFVCqoWBlh#moGsv8i=(aL|p7yl$j_~@$-{t5mO{xa*)*$t4=JnS9LLNOzu zvtC)1Sy@?CnOV57Z3A<6<@62?;fwff4;ma(b_Mt)YcyRuAco@Fg!2O+W;L>PdJgDiODaD<*Hg5Sv?!On@%-In2F|*g7zJXh4 zi>i`_uk>9$5?4nhCJer~ss79;_`l#SxS@kJ-Z1CTWb1*`o2ot)tn#5{*zZR-v+!yh zIqySU8z2gFiZh*QG9|kZb#00tri?htHr3KWq&my~kp{1-5SgMZxT=zSxV!0lp0@)J zbL^9_OMvq;j9;~*xx0r zuU98xz%;krLO20;iTBwfm95^7FY@~XL$z{$Uyv!Q_v2UZ$2S^u>ao3Ye_y%3^J=$x zKYr!@zH)!ZalGf_yb$*Y+rCoK+?LBH#7#PLRcDEpq_3~s-+!y_@7UFnnc8pWe2|-NyDfdSz++paPZZ%3Kh!;Fu_df3YQ2I!3r!zXvsR=(&vD2v zyY!SChg#+IpW-*P;8?Ws8+tdySXuBWqu6m(M@LU$gJf&$A>p4)*r!?iW8n z{n2p)e)<9G(x&t~qQBO&(_cZj0DTaeUMIoI@qe5}#dEIZMk>n!3#=Uf>F~U@>F>BO z(P?Zpc3@dV76CXt_h7x_HOPGDk!K~;xjaPCVkn1lwLdD5!)pKViRXDs>mOaLsQuQ; z!h7W`H*Wek?7(4s4W16k?)+$?n>{W2U z;W+rK8jfc%Jkr?xWP+dyQ@GC)ob)pnaCm!!4CG2@qd0TY=o;Ab_c*z}rgm|&32%(6 zIe*;D;TB5Qs{q1FV-$^VoOl4AjCgp@&Kl}bZyEw;klaogMlLAM?I@Z$v^C^<(Ae}k zbC8SNx0R_qQ1cYB)A{5IU585&{9^TZW;gHx8OFG^hD*zYi?QF*RWwd+>4Ep#QQU_w zyYXFOqGU74?8aQ_~=f39rfR%cHaN&Kzz2-!BVSnaq5rGS? zC+ie+XKRRuhNEXSCz~X1BWDUv1I+{?`4UZ6dOgo?G#Z;&s9G>7+$3Av9T=dJz3jFM z;Nx&*XdUFxfiRr)?TtFB=afHbuixDLh1)ae*BrtKMLG;9I7(rncmxMldP?69B2;ajVY#Z?<2+xod13eU?5u_p};URbWJReF|7 z0jj3aa2}1TfP)k8SI?<$@;D^-y(y+PXL&Ra<^!bB zB}7Laq=jUd^&p}>Dg$od6qtlSYc}rpb zLOy>7R%tth3olr zaKBgvmGx2ed|5-`c#=#Pi=@#20)B?33~EVg`qByBBgB zicnaWqXOiQjfVIs48ZFZ*l|-h>lv3iDol(-+<4sOcu-1MnoflUpPQ0HbKdI z>2wJY4J<;7kZZ+J?oz0?6zbu+$-2^3xxV5GI^`ELN(!xkf zZpfkvpY)$8Np94|KuL0^V$#n^vhQXT_XkJgTm&(d?(|^1(6wrTUn*+v%W;+Us{WOzaGgdG z77fPc;S5BqVjD~I<|KV6xljoPco)+}v<*L^yShhXLFO6D6BJL_bj@5#N-n09imGvH zHnxc`JK)Pfp=Fncv9Z1PrU+IvZ8Vy9^+vFt&L^LfTxwd453v)PUhJ+&I3xnu-Y%5; zRJ}TVSuKq^PsqjAMZzb_Ep1&CU)s86VLgBp1j5jIF@=`=*-vLuoeRfatY{%zk`N#fA{(Cp=LxtBByb32+(W?hzoN8O1R9`s7 z7)N&&s9HEV@0{j^X9V(_y0}e8Q+pcJJw{r^40k`QANGs-5=>^!gNt)6z zpe}N9zHfi;%HExHgSR7MRfRCpf(-0f!0@YAU2t@siM~e>)CgUOz7sH%{HEEV)ayMH z{q<=xnVo(RPOL3k0B<6`p}F|9d&uI%^o~EcXRmNL;2h$x^J(|ah(}&qUIlJ&aCX|E zCFE7$iQm5XT^GL_;&)U0-VwiB;&)s8cDLn+Y}u7fyRvOpHtx#SUD>=V+jk`buEfBT z7(ihceU}(`5(7_S;7JTTiGe3E@FWJF#K4yr_!0wOV&F>*e2IZCG4Le@zQh2FY~DHO zr};-+Vo;YDKx-G-BnEYf0W@ZjO=3`&7}O;Ob%{YkV$hHnG$aNMi2=5Yd7}-9K|^BD zkQg*11`UZpQ)1AR7&IjYO^E^an>hwei9u6h(3BW7B?e82!H&dWM`ExeG1!q9>_`lD zBnCSYgB^*%j>KR`V$hNpv?K;Ci9t(Z(2^LmBnB;sK}%xLk{Glk25pH!TVl|b7_=n@ zZHYl!V$hZtv?T^@i9uUpfbFFqDy%CCUlIveRTt6>8ftBS2^I5cFAJn3n>7#Dui1P; z{-j5^bIo}5b1o9xhdj|fZfxjdycu8Lx9z|ZahelH{W}#-R56&nZ}y8Njofj z;ejHN6X*Zp3mbRwbrFTQ;f-G3iipZp5}fWL#-OPMoL~b@$Woh>VQ-$&eTe-&zrsmAzUj=J zPGfDm6Et{5H&hma==+oW<2H(B{RFodW{-Z6+=8oSbZb+E@;EzFd*KeY2>PcES$U49 z1Y#Pp!uK(4w>xp#$7KS7-}4TaknVtoqx1lY+y&h9-_ZW1@G++CRg{m}0c3sYDv{{_D^hS^|CH82OkL%X%{N@HXk6N4^+}+SF6zcuc?r&uKVZ_>W zfCIlNE;6eKu1=yYp2kH;mqp(g5-z=t5RZJ4%py9#)CKkdcqk38T-;A^C9!X8MZz)a zFINJlQl~BBa6W~UMJOJ+8dhJy>*L)wbRcNH&(98_`wGBba1mqQEI|qYBM;ohzSK}liU?j-`AkOe%Hh~u~W+QFleU(h-8SaX(`g1G^x3c@OjC|peGb0;)^>Rxx3jC@f-O`jxjdYpKfs#12)^i97v=mQzMqsWlvN`Zq%8BM^ zFId9n06xg(UQl9lTcc)sFDS9S8vO+(di~9z(ezn0q=og64n+}`tyev#XH{YR$aW$O z`7w$lD!4^h9lJ2Qh>)!&r3Y+i&OOFb{&RgdI zcCrw~PT*cuCYNm%WMo?%k8~L6<_DJSHlHNB1s2F|8NXxUNr}hI>&j4pN^CM+daB~W)Ay4O4ECBlAg02RK>k8b+?lrbXF>i5r?f5;8i@8 zf;I^D6>O+pK~>hEUxp`je=SdLJ@|)~kORnYNRqx>j3KwcRjv#s>X0QvvObbMuiyfQ%kgi*BKW{L+ORtCt%XnAFT zEKHJD2FN8dXKQI(v=O%8qLJ{*0QnPw2+7(XEqKrXSsjV3?2lLW$7IpW+dsCBMXXM; z70&IF3kJ4ToxHL?HWufF;aS-quk4R$F41KH&!$BKVren#=y=3hB)oEACr~+aX)}9^2+`=SlJ)vlIJsiY2jq2AC9G0 z_Q#(wZoif+ntnz+f_xOR17^pa@J5-{%dg-Z4vg$rVspS4DbE2ro9@{`=aeqyER>xC z>=(6kGeT$pn8#S)+fn#74k(;Pf*0Pu{z@bz<5+y*wS-I-Ov#MNR->I>G;U<9V5>9; zy&)@$exYv`1j8XXQ*dn-#_k72PL|5-5l*|$l!VgYbBXyA}ZIJv2rg_GyHH|pug#8-klwmpr6T`}R@Let@c~BL~XB5o#V0)k( zaJX>|z>ItkGo}SlP6eG&j0abBdINvUoP;VD1M{30^Ykj5o(j=}c(0Ra2KP8_P=6tv z?e+>VNiS6>7$Cq$YRF*9UZTw4&iZXf{rXpky1_(Wm$H>7BhCSZWQ~%kcIJ4P##Z2D-lSD1T!BM3Y4(OiwY{I z4h@tlfxlxruqCh=+!DArz&z$Ar>c`d#SSva6y#7XOPVjkO|514X_X=$vCR}2gFJ21 zOWM~NC6o+k%O>+=(Dbx>s7_R|efm5tNgZJCAJ}!*dIc)uk1F#QE>kC8~DMAlmS2@jKQ_x8`28|frmk107 zbA7VHOc7yHDK_LfEAsqhK7D%<&DgwNfRD)(d~ZI!DmK=ER(An=o3AJildOh<3GE?( z)reD+gRZEKTi8of_?j{t5tAaKsX7+1&K9!zS5PZ6@~V))GuUNwG%Zo#Agf_O>e{Z`iuC zP43Fb8`kq$NBNOP-j>PO*0x~O&5(zgjBUOjaFJP=a~pD4^KNOy|LZsB7W#+PXo(*R zik4JsnOQ_BC}~=?)du0Y;%qgaav7ujl;KtbVwMw)7%fP7rYZ}5={*2t=;1#|e85zD zYmdTbnW)5=69YsVR-P^N7BEb#2LpsGzPfkz;f^>8&Xa3|-u=?)APj3XcGhPqM&&bv zUq&0}(Z+3x_;ZLdhZ2V)1gS$T#3z;NuIdQe&S5w`ZdEAeT1_298lR1-mc z69zZ@v~YW$q!X>c%5#vmn2=(ep7KKobXT5c^H!W z4LweI>t1H@5tKKMW;V@Gp8d@%R8ro$p4rqQ<&__rO%#;(wDXWnD^gxKkUdIy=~HH_ zvXmFTWj4_gKq(6rUZlKmILmWb$}f7J*-Sa*wF{a}S!noS%6qvwPsKrb?GUD%jhONp zVki$6rAOzy^#rr{2+A9uFq>v5?~|vYg-Xi%#_7@?e(qIh6D3y8V^zwTjYcU+9uJE3KdZI)H<|lV5ehgqO7~+zWBKGgj zI<%f+srW#VOv6EVLklcFEN~v<(h^Sc^tM4v1v9L#wCtndn=lP08J?#@bbUI30VIvz zqb7Q>4o?TX?QkSnomK$RvQ*{Ak={^7T=}NT{<+vm{PE-Pw<{#9%0la{<{ zfB}06|M+T6MX%?odo*gbs(Q_!T5IV7ddPH63cEX2Rt>{xzd)_*#oEUgYf7~mA`UwH z$uVIa^1*hp1Xow|tc0R7v4ExWnjjPx!64JCY}6g1dI#r#blYhASOoUrQGi!3W~W!* zQyylo(<$z)RT=)?ops@xPY0UJ9rO>y#S3n5Yl**q;1j!?gBXi5un`TH8WXrg@>>^G zeiwpS9S?dSd@pqcI-bMlo?v+H7AKJ#E&y3LjO{OUDePywq;6-c}k)Y_A_Z0~q z9G5GB=rCY-!4WXoYp#K&&Ml1r;xEIOefv3xHzlPMGZ1cyDyc^C2mp5?&FL^qe znu;5Uo)lM}aPB8__=Pfp|K#`zW#O%cJ z${B^%DojpQ2y502OC}^M&W=M^$n(e4vq&r&yqXU@n(A`^7zi4e-=u z=l^KXA^A^G7JFM;s#eZMJWxF%0e#I+han^u#TjR@iH9AQf%le!kAjRMuH18DTz(H` zx(C?P1-qybv2HBz_3p)~0Ma-I>IGMUD=<^AbG0*N3grEJ0S;IFpf2>b@xaXXB^a>W zWzB_LnuV;T1GUQap`97Ha`)nxxvl_5;1eeWLk`x}_^gTnF@W@LP zp{AsSzMI1#8vqh<3!F<_TI>dRcVol(^PkzTo;r}CEYA+pBO)D5j~STjH6C1YSbwFg zcy{Oj&5bV-r`o+ZKYD#wwNsf&qb8g8g%cRe+>iWdFGL4?z2P|m5tmHI>a`^<2GfW> zUgwwr7Ya3UlP2$R%rN*IG9CzCvljuT9k*E`$ zDfa=q?Qq}Y*}Zd1-OYO>rC}L4ECg0Gq8ng?(wG_?fFP%v0bXCk@)=$zDDe1V9t^|= zRuhYbnr4psjOPNR!p}?R_Tb8p}n3?-{*q_a?zK~if?>c%<=g!vUZ3bqu3Fs^Dv&o zTlgRUvCyUsH6M5u#kJmN7o{~Z)4JV)YyRJsOxXkJqPuwZhV=6f)YJ#eyj;rTJX9^q z?^v`0Q5NczfDQ-prv0_)%R@$ZQxXw06Y&k8LRZp}kv!0V@n{){}^;BYo z=e$-~7T4n!ykt?^AJO(fh{JHhkvUUCnVH|P7D5XC2cd?T=LL!V#t5ax8X>1C zg7{IrD)u8^xL?2!k@N9h$ILLGZ)j;|9j>9)3%EV2Rly-sd z&r5Y;wV+w%d!kF)6G4jc_L_tj<(=ZLDDFciV0^KOC23Y@`4WRihXYolo~SMw4pv1q z2dj_c5W$3qp~Yu0JNF{b!HL`uxM=xUUP8V{{cld3D(?ip<6fLF+MC(CAwmSPU{L(S zt4uEac>)2$=`kNFRf8#S2RIySz-K2W2ccx90{wn)dag0u>8(>K@Oc#p==IYA7?-hN zl4()^B2*WEc+XQ-fV*6|Y>`s?|4+8R%=XgEVegCb_6 z$6?i>kb0*Tdkx?Dt3D23B(Zb;D-;I82v`s&LzUvwf-nUKa{~UQ&NC%{8Wy%nY6Gn3 zV1&53k2EqoiD}UF1_x4qeU=;}_-ne3Xocee?Srrau~ajoL1GoEhI!rPf0NNj%=CsruGhC=rtgI1sLv&6Qj#Jn~-y;b^RZVX^$fKBx zH>5-zz4JX|0J>RNp3q(DXr+QT2%#@)eOTuOy^5Xr2y9Dvmei-Wb%l2DnrC=Lmza%z z#&(u$9WiFmQOt=^G4s@!U>k^YNr(;7SQI4|qXl0?K&ScSxrm%v9M(s&vIA20|U-cX%*kO%% z0qYB%BSkbhzVYCV&?DjCy8O&ELU*dysCi^F)~wN?Y~Js~DQt)U(f6!n^GnpfhnS}@ zce)7mNuS*DauB6!m68F()&9m>6fB(hD*Da8k>ypaYCA-ic=86dn?TMus+zFc2KnH41U#M-qrse|6i0K5+O~ zhu+l2Bh$!_r+L>POi5;8oBkT3yuM^(e5NhUdD|ZPD%v)V`BL<*>KHML`QFP{=kMNq zhlXKg{#_pj?a4%E{|>xC|6`qqXR0E-Y=gH-s9-m=cw|t(1zSCOrpqAWXn|kE> Added epoch trader city location at %1", (getMarkerPos _x)];}; + }; +}forEach _traderCites; \ No newline at end of file diff --git a/@epochhive/addons/custom_server/Compiles/Functions/getTraderCitesExile.sqf b/@epochhive/addons/custom_server/Compiles/Functions/getTraderCitesExile.sqf new file mode 100644 index 0000000..6496b66 --- /dev/null +++ b/@epochhive/addons/custom_server/Compiles/Functions/getTraderCitesExile.sqf @@ -0,0 +1,19 @@ +// pull trader cities from config +_traderCites = allMapMarkers; +_tc = []; +{ + if (getMarkerType _x isEqualTo "ExileTraderZone" && blck_blacklistTraderCities) then { + blck_locationBlackList pushback [(getMarkerPos _x),1000]; + if (blck_debugON) then {diag_log format["[blckeagls] _fnc_getExileLocations :: -- >> Added Exile Trader location at %1", (getMarkerPos _x)];}; + }; + + if ((getMarkerType _x isEqualTo "ExileSpawnZone") && blck_blacklistSpawns) then { + blck_locationBlackList pushback [(getMarkerPos _x),1000]; + if (blck_debugON) then {diag_log format["[blckeagls] _fnc_getExileLocations :: -- >> Added Exile Spawn location at %1", (getMarkerPos _x)];}; + }; + // + if (getMarkerType _x isEqualTo "ExileConcreteMixerZone" && blcklistConcreteMixerZones) then { + blck_locationBlackList pushback [(getMarkerPos _x),1000]; + if (blck_debugON) then {diag_log format["[blckeagls] _fnc_getExileLocations :: -- >> Added Exile Concrete Mixer location at %1", (getMarkerPos _x)];}; + }; +}forEach _traderCites; \ No newline at end of file diff --git a/@epochhive/addons/custom_server/Compiles/Missions/GMS_fnc_missionSpawner.sqf b/@epochhive/addons/custom_server/Compiles/Missions/GMS_fnc_missionSpawner.sqf index 6b39805..3f22fa9 100644 --- a/@epochhive/addons/custom_server/Compiles/Missions/GMS_fnc_missionSpawner.sqf +++ b/@epochhive/addons/custom_server/Compiles/Missions/GMS_fnc_missionSpawner.sqf @@ -258,31 +258,7 @@ if (_playerInRange) then }; uiSleep _delayTime; //diag_log format["_fnc_missionSpawner:: after adding any static weapons, _blck_AllMissionAI is %1",_blck_AllMissionAI]; - if (blck_useVehiclePatrols && (_noVehiclePatrols > 0)) then - { - private["_vehGroup","_patrolVehicle","_vehiclePatrolSpawns"]; - _vehiclePatrolSpawns= [_coords,_noVehiclePatrols,45,60] call blck_fnc_findPositionsAlongARadius; - //diag_log format["missionSpawner:: _vehiclePatrolSpawns = %1",_vehiclePatrolSpawns]; - //for "_i" from 1 to _noVehiclePatrols do - { - _vehGroup = [_x,3,3,_aiDifficultyLevel,_coords,1,2,_uniforms,_headGear] call blck_fnc_spawnGroup; - //diag_log format["missionSpawner:: group for AI Patrol vehicle spawn: group is %1 with units of %2",_vehGroup, units _vehGroup]; - _blck_AllMissionAI = _blck_AllMissionAI + (units _vehGroup); - _randomVehicle = blck_AIPatrolVehicles call BIS_fnc_selectRandom; - //diag_log format["missionSpawner:: vehicle selected is %1", _randomVehicle]; - _patrolVehicle = [_coords,_x,_randomVehicle,(_x distance _coords) -5,(_x distance _coords) + 5,_vehGroup] call blck_fnc_spawnVehiclePatrol; - //diag_log format["missionSpawner:: patrol vehicle spawned was %1",_patrolVehicle]; - _vehGroup setVariable["groupVehicle",_patrolVehicle,true]; - //uiSleep _delayTime; - _AI_Vehicles pushback _patrolVehicle; - }forEach _vehiclePatrolSpawns; - //diag_log format["missionSpawner:: vehicle patrols data: _AI_Vehicles %1 _blck_AllMissionAI %1",_AI_Vehicles,_blck_AllMissionAI]; - uiSleep _delayTime; - if (blck_debugON) then - { - diag_log format["[blckeagls] missionSpawner:: Vehicle Patrols Spawned: _cords %1 : _missionType %2 : _aiDifficultyLevel %3 _markerMissionName %4",_coords,_missionType,_aiDifficultyLevel,_markerMissionName]; - }; - }; + //diag_log format["_fnc_missionSpawner:: after adding any vehicle patrols, _blck_AllMissionAI is %1",_blck_AllMissionAI]; //diag_log format["missionSpawner:: _noAIGroups = %1; spawning AI Groups now",_noAIGroups]; uiSleep _delayTime; @@ -384,6 +360,31 @@ if (_playerInRange) then }; }; + if (blck_useVehiclePatrols && (_noVehiclePatrols > 0)) then + { + private["_vehGroup","_patrolVehicle","_vehiclePatrolSpawns"]; + _vehiclePatrolSpawns= [_coords,_noVehiclePatrols,45,60] call blck_fnc_findPositionsAlongARadius; + //diag_log format["missionSpawner:: _vehiclePatrolSpawns = %1",_vehiclePatrolSpawns]; + //for "_i" from 1 to _noVehiclePatrols do + { + _vehGroup = [_x,3,3,_aiDifficultyLevel,_coords,1,2,_uniforms,_headGear] call blck_fnc_spawnGroup; + //diag_log format["missionSpawner:: group for AI Patrol vehicle spawn: group is %1 with units of %2",_vehGroup, units _vehGroup]; + _blck_AllMissionAI = _blck_AllMissionAI + (units _vehGroup); + _randomVehicle = blck_AIPatrolVehicles call BIS_fnc_selectRandom; + //diag_log format["missionSpawner:: vehicle selected is %1", _randomVehicle]; + _patrolVehicle = [_coords,_x,_randomVehicle,(_x distance _coords) -5,(_x distance _coords) + 5,_vehGroup] call blck_fnc_spawnVehiclePatrol; + //diag_log format["missionSpawner:: patrol vehicle spawned was %1",_patrolVehicle]; + _vehGroup setVariable["groupVehicle",_patrolVehicle,true]; + //uiSleep _delayTime; + _AI_Vehicles pushback _patrolVehicle; + }forEach _vehiclePatrolSpawns; + //diag_log format["missionSpawner:: vehicle patrols data: _AI_Vehicles %1 _blck_AllMissionAI %1",_AI_Vehicles,_blck_AllMissionAI]; + uiSleep _delayTime; + if (blck_debugON) then + { + diag_log format["[blckeagls] missionSpawner:: Vehicle Patrols Spawned: _cords %1 : _missionType %2 : _aiDifficultyLevel %3 _markerMissionName %4",_coords,_missionType,_aiDifficultyLevel,_markerMissionName]; + }; + }; // Trigger for mission end //diag_log format["[blckeagls] mission Spawner _endCondition = %1",_endCondition]; private["_missionComplete"]; diff --git a/@epochhive/addons/custom_server/Compiles/blck_variables.sqf b/@epochhive/addons/custom_server/Compiles/blck_variables.sqf index bfbc477..59a50f3 100644 --- a/@epochhive/addons/custom_server/Compiles/blck_variables.sqf +++ b/@epochhive/addons/custom_server/Compiles/blck_variables.sqf @@ -6,7 +6,7 @@ Last modified 10/25/16 */ //blck_variablesLoaded = false; -blck_debugON = false; +blck_debugON = true; blck_debugLevel = 3; blck_minFPS = 10; @@ -16,10 +16,10 @@ MinDistanceFromMission = 1500; //////////////////////////////////////////////// // Do Not Touch Anything Below This Line /////////////////////////////////////////////// - +blck_townLocations = []; //nearestLocations [blck_mapCenter, ["NameCity","NameCityCapital"], 30000]; blck_ActiveMissionCoords = []; blck_recentMissionCoords = []; -//blck_emplacedWeapons = []; +blck_locationBlackList = []; blck_monitoredVehicles = []; blck_liveMissionAI = []; blck_oldMissionObjects = []; diff --git a/@epochhive/addons/custom_server/Configs/blck_configs_epoch.sqf b/@epochhive/addons/custom_server/Configs/blck_configs_epoch.sqf index a30f5a3..ba1767f 100644 --- a/@epochhive/addons/custom_server/Configs/blck_configs_epoch.sqf +++ b/@epochhive/addons/custom_server/Configs/blck_configs_epoch.sqf @@ -4,20 +4,32 @@ Further modified by Ghostrider - This file contains most constants that define mission parameters, AI behavior and loot for mission system. Last modified 8/1/15 */ - blck_configsLoaded = false; + + if (blck_debugON) then {diag_log "[blckeagls] Loading blck_configs_epoch.sqf";}; + + //blck_configsLoaded = false; /************************************************************** BLACKLIST LOCATIONS **************************************************************/ // if true then missions will not spawn within 1000 m of spawn points for Altis, Bornholm, Cherno, Esseker or stratis. - blck_blacklistSpawns = true; - // list of locations that are protected against mission spawns - blck_locationBlackList = [ - //Add location as [xpos,ypos,0],minimumDistance], - // Note that there should not be a comma after the last item in this table - [[0,0,0],0] - ]; + blck_blacklistTraderCities = true; // Set this = true if you would like the mission system to automatically search for the locations of the Epoch trader cities. Note that these are pre-defined in GMS_fnc_findWorld for the most common maps. + // list of locations that are protected against mission spawns + + switch (toLower(worldName)) do + { + case "altis": { + blck_locationBlackList append [ + //Add location as [[xpos,ypos,0],minimumDistance], + // Note that there should not be a comma after the last item in this table + [[10800,10641,0],1000] // isthmus - missions that spawn here often are glitched. + ]; + }; + case "tanoa": { + blck_locationBlackList append [ ]; + }; + }; /*********************************************************** @@ -128,11 +140,6 @@ Last modified 8/1/15 blck_useLaunchers = true; // When true, some AI will be spawned with RPGs; they do not however fire on vehicles for some reason so I recommend this be set to false for now //blck_launcherTypes = ["launch_NLAW_F","launch_RPG32_F","launch_B_Titan_F","launch_I_Titan_F","launch_O_Titan_F","launch_B_Titan_short_F","launch_I_Titan_short_F","launch_O_Titan_short_F"]; blck_launcherTypes = ["launch_RPG32_F"]; - blck_baseBackpacks = ["B_Carryall_ocamo","B_Carryall_oucamo","B_Carryall_mcamo","B_Carryall_oli","B_Carryall_khk","B_Carryall_cbr" ]; - blck_ApexBackpacks = ["B_Bergen_mcamo_F","B_Bergen_dgtl_F","B_Bergen_hex_F","B_Bergen_tna_F","B_AssaultPack_tna_F","B_Carryall_ghex_F", - "B_FieldPack_ghex_F","B_ViperHarness_blk_F","B_ViperHarness_ghex_F","B_ViperHarness_hex_F","B_ViperHarness_khk_F", - "B_ViperHarness_oli_F","B_ViperLightHarness_blk_F","B_ViperLightHarness_ghex_F","B_ViperLightHarness_hex_F","B_ViperLightHarness_khk_F","B_ViperLightHarness_oli_F"]; - blck_backpacks = blck_baseBackpacks + blck_ApexBackpacks; blck_launchersPerGroup = 1; // Defines the number of AI per group spawned with a launcher blck_launcherCleanup = true;// When true, launchers and launcher ammo are removed from dead AI. @@ -203,11 +210,58 @@ AI WEAPONS, UNIFORMS, VESTS AND GEAR // AI Weapons and Attachments blck_bipods = ["bipod_01_F_blk","bipod_01_F_mtp","bipod_01_F_snd","bipod_02_F_blk","bipod_02_F_hex","bipod_02_F_tan","bipod_03_F_blk","bipod_03_F_oli"]; + + blck_Optics_Holo = ["optic_Hamr","optic_MRD","optic_Holosight","optic_Holosight_smg","optic_Aco","optic_ACO_grn","optic_ACO_grn_smg","optic_Aco_smg","optic_Yorris"]; + blck_Optics_Reticule = ["optic_Arco","optic_MRCO"]; + blck_Optics_Scopes = [ + "optic_AMS","optic_AMS_khk","optic_AMS_snd", + "optic_DMS", + "optic_KHS_blk","optic_KHS_hex","optic_KHS_old","optic_KHS_tan", + "optic_LRPS", + "optic_Nightstalker", + "optic_NVS", + "optic_SOS" + //"optic_tws", + //"optic_tws_mg", + ]; + blck_Optics_Apex = [ + //Apex + "optic_Arco_blk_F", "optic_Arco_ghex_F", + "optic_DMS_ghex_F", + "optic_Hamr_khk_F", + "optic_ERCO_blk_F","optic_ERCO_khk_F","optic_ERCO_snd_F", + "optic_SOS_khk_F", + "optic_LRPS_tna_F","optic_LRPS_ghex_F", + "optic_Holosight_blk_F","optic_Holosight_khk_F","optic_Holosight_smg_blk_F" + ]; + blck_Optics = blck_Optics_Holo + blck_Optics_Reticule + blck_Optics_Scopes + blck_Optics_Apex; + + blck_bipods = [ + "bipod_01_F_blk","bipod_01_F_mtp","bipod_01_F_snd","bipod_02_F_blk","bipod_02_F_hex","bipod_02_F_tan","bipod_03_F_blk","bipod_03_F_oli", + //Apex + "bipod_01_F_khk" + ]; + blck_silencers = [ + "muzzle_snds_338_black","muzzle_snds_338_green","muzzle_snds_338_sand","muzzle_snds_93mmg","muzzle_snds_93mmg_tan","muzzle_snds_acp","muzzle_snds_B", + "muzzle_snds_H","muzzle_snds_H_MG","muzzle_snds_H_SW","muzzle_snds_L","muzzle_snds_M", + //Apex + "muzzle_snds_H_khk_F","muzzle_snds_H_snd_F","muzzle_snds_58_blk_F","muzzle_snds_m_khk_F","muzzle_snds_m_snd_F","muzzle_snds_B_khk_F","muzzle_snds_B_snd_F", + "muzzle_snds_58_wdm_F","muzzle_snds_65_TI_blk_F","muzzle_snds_65_TI_hex_F","muzzle_snds_65_TI_ghex_F","muzzle_snds_H_MG_blk_F","muzzle_snds_H_MG_khk_F" + ]; + blck_RifleSniper = [ "srifle_EBR_F","srifle_GM6_F","srifle_LRR_F","srifle_DMR_01_F" ]; + blck_RifleAsault_556 = [ + "arifle_SDAR_F","arifle_TRG21_F","arifle_TRG20_F","arifle_TRG21_GL_F","arifle_Mk20_F","arifle_Mk20C_F","arifle_Mk20_GL_F","arifle_Mk20_plain_F","arifle_Mk20C_plain_F","arifle_Mk20_GL_plain_F","arifle_SDAR_F" + ]; + + blck_RifleAsault_650 = [ + "arifle_Katiba_F","arifle_Katiba_C_F","arifle_Katiba_GL_F","arifle_MXC_F","arifle_MX_F","arifle_MX_GL_F","arifle_MXM_F" + ]; + blck_RifleAsault = [ "arifle_Katiba_F","arifle_Katiba_C_F","arifle_Katiba_GL_F","arifle_MXC_F","arifle_MX_F","arifle_MX_GL_F","arifle_MXM_F","arifle_SDAR_F", "arifle_TRG21_F","arifle_TRG20_F","arifle_TRG21_GL_F","arifle_Mk20_F","arifle_Mk20C_F","arifle_Mk20_GL_F","arifle_Mk20_plain_F","arifle_Mk20C_plain_F","arifle_Mk20_GL_plain_F" @@ -239,11 +293,19 @@ AI WEAPONS, UNIFORMS, VESTS AND GEAR //This defines the random weapon to spawn on the AI //https://community.bistudio.com/wiki/Arma_3_CfgWeapons_Weapons - blck_WeaponList_Orange = blck_RifleSniper + blck_RifleAsault + blck_RifleLMG + blck_DLC_Sniper + blck_DLC_MMG + blck_apexWeapons; - blck_WeaponList_Green = blck_RifleSniper + blck_RifleAsault +blck_RifleLMG + blck_DLC_MMG + blck_apexWeapons; - blck_WeaponList_Blue = blck_RifleOther + blck_RifleAsault +blck_RifleLMG; - blck_WeaponList_Red = blck_RifleOther + blck_RifleSniper + blck_RifleAsault + blck_RifleLMG; + blck_WeaponList_Orange = blck_RifleSniper + blck_RifleAsault_650 + blck_RifleLMG + blck_DLC_Sniper + blck_DLC_MMG + blck_apexWeapons; + blck_WeaponList_Green = blck_RifleSniper + blck_RifleAsault_650 +blck_RifleLMG + blck_DLC_MMG + blck_apexWeapons; + blck_WeaponList_Blue = blck_RifleOther + blck_RifleAsault_556 +blck_RifleAsault_650; + blck_WeaponList_Red = blck_RifleAsault_556 + blck_RifleSniper + blck_RifleAsault_650 + blck_RifleLMG; + blck_baseBackpacks = ["B_Carryall_ocamo","B_Carryall_oucamo","B_Carryall_mcamo","B_Carryall_oli","B_Carryall_khk","B_Carryall_cbr" ]; + blck_ApexBackpacks = [ + "B_Bergen_mcamo_F","B_Bergen_dgtl_F","B_Bergen_hex_F","B_Bergen_tna_F","B_AssaultPack_tna_F","B_Carryall_ghex_F", + "B_FieldPack_ghex_F","B_ViperHarness_blk_F","B_ViperHarness_ghex_F","B_ViperHarness_hex_F","B_ViperHarness_khk_F", + "B_ViperHarness_oli_F","B_ViperLightHarness_blk_F","B_ViperLightHarness_ghex_F","B_ViperLightHarness_hex_F","B_ViperLightHarness_khk_F","B_ViperLightHarness_oli_F" + ]; + blck_backpacks = blck_baseBackpacks + blck_ApexBackpacks; + blck_BanditHeadgear = ["H_Shemag_khk","H_Shemag_olive","H_Shemag_tan","H_ShemagOpen_khk"]; //This defines the skin list, some skins are disabled by default to permit players to have high visibility uniforms distinct from those of the AI. blck_headgear = [ @@ -308,7 +370,19 @@ AI WEAPONS, UNIFORMS, VESTS AND GEAR "H_Shemag_tan", "H_ShemagOpen_khk", "H_ShemagOpen_tan", - "H_TurbanO_blk" + "H_TurbanO_blk", +, + //Apex + + "H_MilCap_tna_F", + "H_MilCap_ghex_F", + "H_Booniehat_tna_F", + "H_Beret_gen_F", + "H_MilCap_gen_F", + "H_Cap_oli_Syndikat_F", + "H_Cap_tan_Syndikat_F", + "H_Cap_blk_Syndikat_F", + "H_Cap_grn_Syndikat_F" ]; blck_helmets = [ "H_HelmetB", @@ -350,7 +424,19 @@ AI WEAPONS, UNIFORMS, VESTS AND GEAR "H_HelmetCrew_O", "H_PilotHelmetHeli_B", "H_PilotHelmetHeli_I", - "H_PilotHelmetHeli_O" + "H_PilotHelmetHeli_O", + "H_Helmet_Skate", + "H_HelmetB_TI_tna_F", + // Apex + //"H_HelmetO_ViperSP_hex_F", + //"H_HelmetO_ViperSP_ghex_F", + "H_HelmetB_tna_F", + "H_HelmetB_Enh_tna_F", + "H_HelmetB_Light_tna_F", + "H_HelmetSpecO_ghex_F", + "H_HelmetLeaderO_ghex_F", + "H_HelmetO_ghex_F", + "H_HelmetCrew_O_ghex_F", ]; blck_headgearList = blck_headgear + blck_helmets; //This defines the skin list, some skins are disabled by default to permit players to have high visibility uniforms distinct from those of the AI. @@ -402,7 +488,47 @@ AI WEAPONS, UNIFORMS, VESTS AND GEAR //"U_OrestesBody", "U_Rangemaster", // DLC - "U_B_FullGhillie_ard","U_I_FullGhillie_ard","U_O_FullGhillie_ard","U_B_FullGhillie_sard","U_O_FullGhillie_sard","U_I_FullGhillie_sard","U_B_FullGhillie_lsh","U_O_FullGhillie_lsh","U_I_FullGhillie_lsh" + "U_B_FullGhillie_ard","U_I_FullGhillie_ard","U_O_FullGhillie_ard","U_B_FullGhillie_sard","U_O_FullGhillie_sard","U_I_FullGhillie_sard","U_B_FullGhillie_lsh","U_O_FullGhillie_lsh","U_I_FullGhillie_lsh", + //Apex + "U_B_T_Soldier_F", + "U_B_T_Soldier_AR_F", + "U_B_T_Soldier_SL_F", + //"U_B_T_Sniper_F", + //"U_B_T_FullGhillie_tna_F", + "U_B_CTRG_Soldier_F", + "U_B_CTRG_Soldier_2_F", + "U_B_CTRG_Soldier_3_F", + "U_B_GEN_Soldier_F", + "U_B_GEN_Commander_F", + "U_O_T_Soldier_F", + "U_O_T_Officer_F", + //"U_O_T_Sniper_F", + //"U_O_T_FullGhillie_tna_F", + "U_O_V_Soldier_Viper_F", + "U_O_V_Soldier_Viper_hex_F", + "U_I_C_Soldier_Para_1_F", + "U_I_C_Soldier_Para_2_F", + "U_I_C_Soldier_Para_3_F", + "U_I_C_Soldier_Para_4_F", + "U_I_C_Soldier_Para_5_F", + "U_I_C_Soldier_Bandit_1_F", + "U_I_C_Soldier_Bandit_2_F", + "U_I_C_Soldier_Bandit_3_F", + "U_I_C_Soldier_Bandit_4_F", + "U_I_C_Soldier_Bandit_5_F", + "U_I_C_Soldier_Camo_F", + "U_C_man_sport_1_F", + "U_C_man_sport_2_F", + "U_C_man_sport_3_F", + "U_C_Man_casual_1_F", + "U_C_Man_casual_2_F", + "U_C_Man_casual_3_F", + "U_C_Man_casual_4_F", + "U_C_Man_casual_5_F", + "U_C_Man_casual_6_F", + "U_B_CTRG_Soldier_urb_1_F", + "U_B_CTRG_Soldier_urb_2_F", + "U_B_CTRG_Soldier_urb_3_F" ]; blck_vests = [ @@ -433,9 +559,9 @@ AI WEAPONS, UNIFORMS, VESTS AND GEAR "class ItemGoldBar10oz","class ItemTopaz","class ItemOnyx","class ItemSapphire","class ItemAmethyst", "class ItemEmerald","class ItemCitrine","class ItemRuby","class ItemQuartz","class ItemJade", "class ItemGarnet","class ItemKiloHemp"]; - blck_epochBuildingSupplies = ["class PartPlankPack","class CinderBlocks","class MortarBucket","class ItemScraps", - "class ItemCorrugated","class ItemCorrugatedLg","class ItemSolar","class ItemCables", - "class ItemBattery","class Pelt_EPOCH"]; + blck_epochBuildingSupplies = ["PartPlankPack","CinderBlocks","MortarBucket","ItemScraps", + "ItemCorrugated","ItemCorrugatedLg","ItemSolar","ItemCables", + "ItemBattery","Pelt_EPOCH"]; /*************************************************************************************** DEFAULT CONTENTS OF LOOT CRATES FOR EACH MISSION @@ -518,7 +644,8 @@ for examples of how you can do this see \Major\Compositions.sqf ["10Rnd_127x54_Mag" ,1,4], ["10Rnd_127x54_Mag",1,4], ["10Rnd_93x64_DMR_05_Mag" ,1,4], - ["10Rnd_93x64_DMR_05_Mag" ,1,4] + ["10Rnd_93x64_DMR_05_Mag" ,1,4] + // Apex Ammo ], [ // Optics ["optic_SOS",1,2],["optic_LRPS",1,2],["optic_DMS",1,2],["optic_Aco",1,3],["optic_ACO_grn",1,3],["optic_Holosight",1,3],["acc_flashlight",1,3],["acc_pointer_IR",1,3], diff --git a/@epochhive/addons/custom_server/Configs/blck_configs_exile.sqf b/@epochhive/addons/custom_server/Configs/blck_configs_exile.sqf index 99d6955..1844693 100644 --- a/@epochhive/addons/custom_server/Configs/blck_configs_exile.sqf +++ b/@epochhive/addons/custom_server/Configs/blck_configs_exile.sqf @@ -12,13 +12,23 @@ Last modified 8/1/15 **************************************************************/ // if true then missions will not spawn within 1000 m of spawn points for Altis, Bornholm, Cherno, Esseker or stratis. - blck_blacklistSpawns = true; - // list of locations that are protected against mission spawns - blck_locationBlackList = [ - //Add location as [xpos,ypos,0],minimumDistance], - // Note that there should not be a comma after the last item in this table - [[0,0,0],0] - ]; + blck_blacklistSpawns = true; // do not spawn a mission within 1000 m of a spawn zone. + blck_blacklistTraderCities = true; // do not spawn a mission within 1000 m of a trader. + blcklistConcreteMixerZones = true; // do not spawn a mission within 1000 m of a concrete mixer zone. + + switch (toLower(worldName)) do + { + case "altis": { + blck_locationBlackList append [ + //Add location as [[xpos,ypos,0],minimumDistance], + // Note that there should not be a comma after the last item in this table + [[10800,10641,0],1000] // isthmus - missions that spawn here often are glitched. + ]; + }; + case "tanoa": { + blck_locationBlackList append [ ]; + }; + }; /*********************************************************** @@ -102,6 +112,8 @@ Last modified 8/1/15 blck_TMin_Hunter = 120; blck_TMin_Scouts = 115; blck_TMin_Crashes = 115; + blck_TMin_UMS = 200; + //Maximum Spawn time between missions in seconds blck_TMax_Orange = 360; blck_TMax_Green = 300; @@ -110,11 +122,13 @@ Last modified 8/1/15 blck_TMax_Hunter = 200; blck_TMax_Scouts = 200; blck_TMax_Crashes = 200; + blck_TMax_UMS = 280; blck_MissionTimout = 40*60; // 40 min // Define the maximum number of crash sites on the map at any one time blck_maxCrashSites = 3; // recommended settings: 3 for Altis, 2 for Tanoa, 1 for smaller maps. Set to -1 to disable + blck_maxDynamicUnderwaterMissions = 3; /**************************************************************** GENERAL AI SETTINGS @@ -129,24 +143,11 @@ Last modified 8/1/15 blck_chanceBackpack = 0.3; // Chance AI will be spawned with a backpack blck_useNVG = true; // When true, AI will be spawned with NVG if is dark blck_removeNVG = false; // When true, NVG will be removed from AI when they are killed. - blck_useLaunchers = false; // When true, some AI will be spawned with RPGs; they do not however fire on vehicles for some reason so I recommend this be set to false for now - blck_launchersPerGroup = 1; // Defines the number of AI per group spawned with a launcher - blck_launcherCleanup = true;// When true, launchers and launcher ammo are removed from dead AI. + blck_useLaunchers = true; // When true, some AI will be spawned with RPGs; they do not however fire on vehicles for some reason so I recommend this be set to false for now //blck_launcherTypes = ["launch_NLAW_F","launch_RPG32_F","launch_B_Titan_F","launch_I_Titan_F","launch_O_Titan_F","launch_B_Titan_short_F","launch_I_Titan_short_F","launch_O_Titan_short_F"]; blck_launcherTypes = ["launch_RPG32_F"]; - blck_chanceAIBackpack = 0.33; // the chance that AI will be spawned with a backpack from the list below. - blck_baseBackpacks = [ - "B_AssaultPack_blk","B_AssaultPack_cbr","B_AssaultPack_dgtl","B_AssaultPack_khk","B_AssaultPack_mcamo","B_AssaultPack_rgr","B_AssaultPack_sgg", - "B_Bergen_blk","B_Bergen_mcamo","B_Bergen_rgr","B_Bergen_sgg", - "B_Carryall_cbr","B_Carryall_khk","B_Carryall_mcamo","B_Carryall_ocamo","B_Carryall_oli","B_Carryall_oucamo", - "B_FieldPack_blk","B_FieldPack_cbr","B_FieldPack_ocamo","B_FieldPack_oucamo", - "B_HuntingBackpack","B_Kitbag_cbr","B_Kitbag_mcamo","B_Kitbag_sgg", - "B_OutdoorPack_blk","B_OutdoorPack_blu","B_OutdoorPack_tan","B_TacticalPack_blk", - "B_TacticalPack_mcamo","B_TacticalPack_ocamo","B_TacticalPack_oli","B_TacticalPack_rgr"]; - blck_ApexBackpacks = ["B_Bergen_mcamo_F","B_Bergen_dgtl_F","B_Bergen_hex_F","B_Bergen_tna_F","B_AssaultPack_tna_F","B_Carryall_ghex_F", - "B_FieldPack_ghex_F","B_ViperHarness_blk_F","B_ViperHarness_ghex_F","B_ViperHarness_hex_F","B_ViperHarness_khk_F", - "B_ViperHarness_oli_F","B_ViperLightHarness_blk_F","B_ViperLightHarness_ghex_F","B_ViperLightHarness_hex_F","B_ViperLightHarness_khk_F","B_ViperLightHarness_oli_F"]; - blck_backpacks = blck_baseBackpacks + blck_ApexBackpacks; + blck_launchersPerGroup = 1; // Defines the number of AI per group spawned with a launcher + blck_launcherCleanup = true;// When true, launchers and launcher ammo are removed from dead AI. //This defines how long after an AI dies that it's body disappears. blck_bodyCleanUpTimer = 1200; // time in seconds after which dead AI bodies are deleted @@ -154,7 +155,8 @@ Last modified 8/1/15 // values are ordered as follows [blue, red, green, orange]; blck_AliveAICleanUpTime = 900; // Time after mission completion at which any remaining live AI are deleted. blck_cleanupCompositionTimer = 1200; - blck_AIAlertDistance = [150,225,425,550]; + blck_AIAlertDistance = [150,225,250,300]; + //blck_AIAlertDistance = [150,225,400,500]; // How precisely player locations will be revealed to AI after an AI kill // values are ordered as follows [blue, red, green, orange]; blck_AIIntelligence = [0.5, 1, 2, 4]; @@ -181,7 +183,6 @@ Last modified 8/1/15 ["aimingAccuracy",0.25],["aimingShake",0.5],["aimingSpeed",0.4],["endurance",0.9],["spotDistance",0.6],["spotTime",0.6],["courage",85],["reloadSpeed",0.75],["commanding",0.9],["general",0.75] ]; - // Red Missions // Red Missions blck_MinAI_Red = 12; blck_MaxAI_Red = 15; @@ -195,52 +196,102 @@ Last modified 8/1/15 blck_MaxAI_Blue = 12; blck_AIGrps_Blue = 2; blck_SkillsBlue = [ - ["aimingAccuracy",0.10],["aimingShake",0.2],["aimingSpeed",0.55],["endurance",0.50],["spotDistance",0.65],["spotTime",0.80],["courage",0.60],["reloadSpeed",0.60],["commanding",0.7],["general",0.60] + ["aimingAccuracy",0.1],["aimingShake",0.25],["aimingSpeed",0.3],["endurance",0.50],["spotDistance",0.4],["spotTime",0.4],["courage",0.60],["reloadSpeed",0.60],["commanding",0.7],["general",0.60] ]; - + // Add some money to AI; only works with Exile for now. blck_maxMoneyOrange = 25; blck_maxMoneyGreen = 20; blck_maxMoneyRed = 15; blck_maxMoneyBlue = 10; + + // AI Settings for scouts, Hunters and crashes are definded in thos missions. /********************************************************************************* AI WEAPONS, UNIFORMS, VESTS AND GEAR **********************************************************************************/ + // Blacklisted itesm blck_blacklistedOptics = ["optic_Nightstalker","optic_tws","optic_tws_mg"]; // AI Weapons and Attachments blck_bipods = ["bipod_01_F_blk","bipod_01_F_mtp","bipod_01_F_snd","bipod_02_F_blk","bipod_02_F_hex","bipod_02_F_tan","bipod_03_F_blk","bipod_03_F_oli"]; - blck_RifleSniper = [ - "srifle_EBR_F","srifle_GM6_F","srifle_LRR_F","srifle_DMR_01_F" + blck_Optics_Holo = ["optic_Hamr","optic_MRD","optic_Holosight","optic_Holosight_smg","optic_Aco","optic_ACO_grn","optic_ACO_grn_smg","optic_Aco_smg","optic_Yorris"]; + blck_Optics_Reticule = ["optic_Arco","optic_MRCO"]; + blck_Optics_Scopes = [ + "optic_AMS","optic_AMS_khk","optic_AMS_snd", + "optic_DMS", + "optic_KHS_blk","optic_KHS_hex","optic_KHS_old","optic_KHS_tan", + "optic_LRPS", + "optic_Nightstalker", + "optic_NVS", + "optic_SOS" + //"optic_tws", + //"optic_tws_mg", ]; - - blck_RifleAsault = [ - "arifle_Katiba_F","arifle_Katiba_C_F","arifle_Katiba_GL_F","arifle_MXC_F","arifle_MX_F","arifle_MX_GL_F","arifle_MXM_F","arifle_SDAR_F", - "arifle_TRG21_F","arifle_TRG20_F","arifle_TRG21_GL_F","arifle_Mk20_F","arifle_Mk20C_F","arifle_Mk20_GL_F","arifle_Mk20_plain_F","arifle_Mk20C_plain_F","arifle_Mk20_GL_plain_F" - ]; - - blck_RifleLMG = [ - "LMG_Mk200_F","LMG_Zafir_F" - ]; - - blck_RifleOther = [ - "SMG_01_F","SMG_02_F" - ]; - - blck_Pistols = [ - "hgun_PDW2000_F","hgun_ACPC2_F","hgun_Rook40_F","hgun_P07_F","hgun_Pistol_heavy_01_F","hgun_Pistol_heavy_02_F","hgun_Pistol_Signal_F" + blck_Optics_Apex = [ + //Apex + "optic_Arco_blk_F", "optic_Arco_ghex_F", + "optic_DMS_ghex_F", + "optic_Hamr_khk_F", + "optic_ERCO_blk_F","optic_ERCO_khk_F","optic_ERCO_snd_F", + "optic_SOS_khk_F", + "optic_LRPS_tna_F","optic_LRPS_ghex_F", + "optic_Holosight_blk_F","optic_Holosight_khk_F","optic_Holosight_smg_blk_F" ]; - - blck_DLC_MMG = [ - "MMG_01_hex_F","MMG_02_sand_F","MMG_01_tan_F","MMG_02_black_F","MMG_02_camo_F" + blck_Optics = blck_Optics_Holo + blck_Optics_Reticule + blck_Optics_Scopes + blck_Optics_Apex; + + blck_bipods = [ + "bipod_01_F_blk","bipod_01_F_mtp","bipod_01_F_snd","bipod_02_F_blk","bipod_02_F_hex","bipod_02_F_tan","bipod_03_F_blk","bipod_03_F_oli", + //Apex + "bipod_01_F_khk" ]; - - blck_DLC_Sniper = [ - "srifle_DMR_02_camo_F","srifle_DMR_02_F","srifle_DMR_02_sniper_F","srifle_DMR_03_F","srifle_DMR_03_tan_F","srifle_DMR_04_F","srifle_DMR_04_Tan_F","srifle_DMR_05_blk_F","srifle_DMR_05_hex_F","srifle_DMR_05_tan_F","srifle_DMR_06_camo_F","srifle_DMR_06_olive_F" + + blck_silencers = [ + "muzzle_snds_338_black","muzzle_snds_338_green","muzzle_snds_338_sand","muzzle_snds_93mmg","muzzle_snds_93mmg_tan","muzzle_snds_acp","muzzle_snds_B", + "muzzle_snds_H","muzzle_snds_H_MG","muzzle_snds_H_SW","muzzle_snds_L","muzzle_snds_M", + //Apex + "muzzle_snds_H_khk_F","muzzle_snds_H_snd_F","muzzle_snds_58_blk_F","muzzle_snds_m_khk_F","muzzle_snds_m_snd_F","muzzle_snds_B_khk_F","muzzle_snds_B_snd_F", + "muzzle_snds_58_wdm_F","muzzle_snds_65_TI_blk_F","muzzle_snds_65_TI_hex_F","muzzle_snds_65_TI_ghex_F","muzzle_snds_H_MG_blk_F","muzzle_snds_H_MG_khk_F" + ]; + + blck_RifleSniper = [ + "srifle_EBR_F","srifle_GM6_F","srifle_LRR_F","srifle_DMR_01_F" + ]; + + blck_RifleAsault_556 = [ + "arifle_SDAR_F","arifle_TRG21_F","arifle_TRG20_F","arifle_TRG21_GL_F","arifle_Mk20_F","arifle_Mk20C_F","arifle_Mk20_GL_F","arifle_Mk20_plain_F","arifle_Mk20C_plain_F","arifle_Mk20_GL_plain_F","arifle_SDAR_F" ]; + + blck_RifleAsault_650 = [ + "arifle_Katiba_F","arifle_Katiba_C_F","arifle_Katiba_GL_F","arifle_MXC_F","arifle_MX_F","arifle_MX_GL_F","arifle_MXM_F" + ]; + + blck_RifleAsault = [ + "arifle_Katiba_F","arifle_Katiba_C_F","arifle_Katiba_GL_F","arifle_MXC_F","arifle_MX_F","arifle_MX_GL_F","arifle_MXM_F","arifle_SDAR_F", + "arifle_TRG21_F","arifle_TRG20_F","arifle_TRG21_GL_F","arifle_Mk20_F","arifle_Mk20C_F","arifle_Mk20_GL_F","arifle_Mk20_plain_F","arifle_Mk20C_plain_F","arifle_Mk20_GL_plain_F" + ]; + + blck_RifleLMG = [ + "LMG_Mk200_F","LMG_Zafir_F" + ]; + + blck_RifleOther = [ + "SMG_01_F","SMG_02_F" + ]; + + blck_Pistols = [ + "hgun_PDW2000_F","hgun_ACPC2_F","hgun_Rook40_F","hgun_P07_F","hgun_Pistol_heavy_01_F","hgun_Pistol_heavy_02_F","hgun_Pistol_Signal_F" + ]; + + blck_DLC_MMG = [ + "MMG_01_hex_F","MMG_02_sand_F","MMG_01_tan_F","MMG_02_black_F","MMG_02_camo_F" + ]; + + blck_DLC_Sniper = [ + "srifle_DMR_02_camo_F","srifle_DMR_02_F","srifle_DMR_02_sniper_F","srifle_DMR_03_F","srifle_DMR_03_tan_F","srifle_DMR_04_F","srifle_DMR_04_Tan_F","srifle_DMR_05_blk_F","srifle_DMR_05_hex_F","srifle_DMR_05_tan_F","srifle_DMR_06_camo_F","srifle_DMR_06_olive_F" + ]; blck_apexWeapons = ["arifle_AK12_F","arifle_AK12_GL_F","arifle_AKM_F","arifle_AKM_FL_F","arifle_AKS_F","arifle_ARX_blk_F","arifle_ARX_ghex_F","arifle_ARX_hex_F","arifle_CTAR_blk_F","arifle_CTAR_hex_F", "arifle_CTAR_ghex_F","arifle_CTAR_GL_blk_F","arifle_CTARS_blk_F","arifle_CTARS_hex_F","arifle_CTARS_ghex_F","arifle_SPAR_01_blk_F","arifle_SPAR_01_khk_F","arifle_SPAR_01_snd_F", "arifle_SPAR_01_GL_blk_F","arifle_SPAR_01_GL_khk_F","arifle_SPAR_01_GL_snd_F","arifle_SPAR_02_blk_F","arifle_SPAR_02_khk_F","arifle_SPAR_02_snd_F","arifle_SPAR_03_blk_F", @@ -248,286 +299,350 @@ AI WEAPONS, UNIFORMS, VESTS AND GEAR //This defines the random weapon to spawn on the AI //https://community.bistudio.com/wiki/Arma_3_CfgWeapons_Weapons - blck_WeaponList_Orange = blck_RifleSniper + blck_RifleAsault + blck_RifleLMG + blck_DLC_Sniper + blck_DLC_MMG + blck_apexWeapons; - blck_WeaponList_Green = blck_RifleSniper + blck_RifleAsault +blck_RifleLMG + blck_DLC_MMG + blck_apexWeapons; - blck_WeaponList_Blue = blck_RifleOther + blck_RifleAsault +blck_RifleLMG; - blck_WeaponList_Red = blck_RifleOther + blck_RifleSniper + blck_RifleAsault + blck_RifleLMG; - - blck_tools = ["Exile_Item_Matches","Exile_Item_CookingPot","Exile_Melee_Axe","Exile_Item_CanOpener","Exile_Item_Handsaw","Exile_Item_Pliers"]; - blck_buildingMaterials = ["Exile_Item_ExtensionCord","Exile_Item_JunkMetal","Exile_Item_LightBulb","Exile_Item_MetalBoard","Exile_Item_MetalPole","Exile_Item_Cement","Exile_Item_Sand"]; - + blck_WeaponList_Orange = blck_RifleSniper + blck_RifleAsault_650 + blck_RifleLMG + blck_DLC_Sniper + blck_DLC_MMG + blck_apexWeapons; + blck_WeaponList_Green = blck_RifleSniper + blck_RifleAsault_650 +blck_RifleLMG + blck_DLC_MMG + blck_apexWeapons; + blck_WeaponList_Blue = blck_RifleOther + blck_RifleAsault_556 +blck_RifleAsault_650; + blck_WeaponList_Red = blck_RifleAsault_556 + blck_RifleSniper + blck_RifleAsault_650 + blck_RifleLMG; + + blck_baseBackpacks = ["B_Carryall_ocamo","B_Carryall_oucamo","B_Carryall_mcamo","B_Carryall_oli","B_Carryall_khk","B_Carryall_cbr" ]; + blck_ApexBackpacks = [ + "B_Bergen_mcamo_F","B_Bergen_dgtl_F","B_Bergen_hex_F","B_Bergen_tna_F","B_AssaultPack_tna_F","B_Carryall_ghex_F", + "B_FieldPack_ghex_F","B_ViperHarness_blk_F","B_ViperHarness_ghex_F","B_ViperHarness_hex_F","B_ViperHarness_khk_F", + "B_ViperHarness_oli_F","B_ViperLightHarness_blk_F","B_ViperLightHarness_ghex_F","B_ViperLightHarness_hex_F","B_ViperLightHarness_khk_F","B_ViperLightHarness_oli_F" + ]; + blck_backpacks = blck_baseBackpacks + blck_ApexBackpacks; + blck_BanditHeadgear = ["H_Shemag_khk","H_Shemag_olive","H_Shemag_tan","H_ShemagOpen_khk"]; //This defines the skin list, some skins are disabled by default to permit players to have high visibility uniforms distinct from those of the AI. blck_headgear = [ - "H_Cap_blk", - "H_Cap_blk_Raven", - "H_Cap_blu", - "H_Cap_brn_SPECOPS", - "H_Cap_grn", - "H_Cap_headphones", - "H_Cap_khaki_specops_UK", - "H_Cap_oli", - "H_Cap_press", - "H_Cap_red", - "H_Cap_tan", - "H_Cap_tan_specops_US", - "H_Watchcap_blk", - "H_Watchcap_camo", - "H_Watchcap_khk", - "H_Watchcap_sgg", - "H_MilCap_blue", - "H_MilCap_dgtl", - "H_MilCap_mcamo", - "H_MilCap_ocamo", - "H_MilCap_oucamo", - "H_MilCap_rucamo", - "H_Bandanna_camo", - "H_Bandanna_cbr", - "H_Bandanna_gry", - "H_Bandanna_khk", - "H_Bandanna_khk_hs", - "H_Bandanna_mcamo", - "H_Bandanna_sgg", - "H_Bandanna_surfer", - "H_Booniehat_dgtl", - "H_Booniehat_dirty", - "H_Booniehat_grn", - "H_Booniehat_indp", - "H_Booniehat_khk", - "H_Booniehat_khk_hs", - "H_Booniehat_mcamo", - "H_Booniehat_tan", - "H_Hat_blue", - "H_Hat_brown", - "H_Hat_camo", - "H_Hat_checker", - "H_Hat_grey", - "H_Hat_tan", - "H_StrawHat", - "H_StrawHat_dark", - "H_Beret_02", - "H_Beret_blk", - "H_Beret_blk_POLICE", - "H_Beret_brn_SF", - "H_Beret_Colonel", - "H_Beret_grn", - "H_Beret_grn_SF", - "H_Beret_ocamo", - "H_Beret_red", - "H_Shemag_khk", - "H_Shemag_olive", - "H_Shemag_olive_hs", - "H_Shemag_tan", - "H_ShemagOpen_khk", - "H_ShemagOpen_tan", - "H_TurbanO_blk" + "H_Cap_blk", + "H_Cap_blk_Raven", + "H_Cap_blu", + "H_Cap_brn_SPECOPS", + "H_Cap_grn", + "H_Cap_headphones", + "H_Cap_khaki_specops_UK", + "H_Cap_oli", + "H_Cap_press", + "H_Cap_red", + "H_Cap_tan", + "H_Cap_tan_specops_US", + "H_Watchcap_blk", + "H_Watchcap_camo", + "H_Watchcap_khk", + "H_Watchcap_sgg", + "H_MilCap_blue", + "H_MilCap_dgtl", + "H_MilCap_mcamo", + "H_MilCap_ocamo", + "H_MilCap_oucamo", + "H_MilCap_rucamo", + "H_Bandanna_camo", + "H_Bandanna_cbr", + "H_Bandanna_gry", + "H_Bandanna_khk", + "H_Bandanna_khk_hs", + "H_Bandanna_mcamo", + "H_Bandanna_sgg", + "H_Bandanna_surfer", + "H_Booniehat_dgtl", + "H_Booniehat_dirty", + "H_Booniehat_grn", + "H_Booniehat_indp", + "H_Booniehat_khk", + "H_Booniehat_khk_hs", + "H_Booniehat_mcamo", + "H_Booniehat_tan", + "H_Hat_blue", + "H_Hat_brown", + "H_Hat_camo", + "H_Hat_checker", + "H_Hat_grey", + "H_Hat_tan", + "H_StrawHat", + "H_StrawHat_dark", + "H_Beret_02", + "H_Beret_blk", + "H_Beret_blk_POLICE", + "H_Beret_brn_SF", + "H_Beret_Colonel", + "H_Beret_grn", + "H_Beret_grn_SF", + "H_Beret_ocamo", + "H_Beret_red", + "H_Shemag_khk", + "H_Shemag_olive", + "H_Shemag_olive_hs", + "H_Shemag_tan", + "H_ShemagOpen_khk", + "H_ShemagOpen_tan", + "H_TurbanO_blk", + "H_CrewHelmetHeli_B", + "H_CrewHelmetHeli_I", + "H_CrewHelmetHeli_O", + "H_HelmetCrew_I", + "H_HelmetCrew_B", + "H_HelmetCrew_O", + "H_PilotHelmetHeli_B", + "H_PilotHelmetHeli_I", + "H_PilotHelmetHeli_O", + //Apex + + "H_MilCap_tna_F", + "H_MilCap_ghex_F", + "H_Booniehat_tna_F", + "H_Beret_gen_F", + "H_MilCap_gen_F", + "H_Cap_oli_Syndikat_F", + "H_Cap_tan_Syndikat_F", + "H_Cap_blk_Syndikat_F", + "H_Cap_grn_Syndikat_F" ]; blck_helmets = [ - "H_HelmetB", - "H_HelmetB_black", - "H_HelmetB_camo", - "H_HelmetB_desert", - "H_HelmetB_grass", - "H_HelmetB_light", - "H_HelmetB_light_black", - "H_HelmetB_light_desert", - "H_HelmetB_light_grass", - "H_HelmetB_light_sand", - "H_HelmetB_light_snakeskin", - "H_HelmetB_paint", - "H_HelmetB_plain_blk", - "H_HelmetB_sand", - "H_HelmetB_snakeskin", - "H_HelmetCrew_B", - "H_HelmetCrew_I", - "H_HelmetCrew_O", - "H_HelmetIA", - "H_HelmetIA_camo", - "H_HelmetIA_net", - "H_HelmetLeaderO_ocamo", - "H_HelmetLeaderO_oucamo", - "H_HelmetO_ocamo", - "H_HelmetO_oucamo", - "H_HelmetSpecB", - "H_HelmetSpecB_blk", - "H_HelmetSpecB_paint1", - "H_HelmetSpecB_paint2", - "H_HelmetSpecO_blk", - "H_HelmetSpecO_ocamo", - "H_CrewHelmetHeli_B", - "H_CrewHelmetHeli_I", - "H_CrewHelmetHeli_O", - "H_HelmetCrew_I", - "H_HelmetCrew_B", - "H_HelmetCrew_O", - "H_PilotHelmetHeli_B", - "H_PilotHelmetHeli_I", - "H_PilotHelmetHeli_O" + "H_HelmetB", + "H_HelmetB_black", + "H_HelmetB_camo", + "H_HelmetB_desert", + "H_HelmetB_grass", + "H_HelmetB_light", + "H_HelmetB_light_black", + "H_HelmetB_light_desert", + "H_HelmetB_light_grass", + "H_HelmetB_light_sand", + "H_HelmetB_light_snakeskin", + "H_HelmetB_paint", + "H_HelmetB_plain_blk", + "H_HelmetB_sand", + "H_HelmetB_snakeskin", + "H_HelmetCrew_B", + "H_HelmetCrew_I", + "H_HelmetCrew_O", + "H_HelmetIA", + "H_HelmetIA_camo", + "H_HelmetIA_net", + "H_HelmetLeaderO_ocamo", + "H_HelmetLeaderO_oucamo", + "H_HelmetO_ocamo", + "H_HelmetO_oucamo", + "H_HelmetSpecB", + "H_HelmetSpecB_blk", + "H_HelmetSpecB_paint1", + "H_HelmetSpecB_paint2", + "H_HelmetSpecO_blk", + "H_HelmetSpecO_ocamo", + "H_CrewHelmetHeli_B", + "H_CrewHelmetHeli_I", + "H_CrewHelmetHeli_O", + "H_HelmetCrew_I", + "H_HelmetCrew_B", + "H_HelmetCrew_O", + "H_PilotHelmetHeli_B", + "H_PilotHelmetHeli_I", + "H_PilotHelmetHeli_O", + "H_Helmet_Skate", + "H_HelmetB_TI_tna_F", + // Apex + //"H_HelmetO_ViperSP_hex_F", + //"H_HelmetO_ViperSP_ghex_F", + "H_HelmetB_tna_F", + "H_HelmetB_Enh_tna_F", + "H_HelmetB_Light_tna_F", + "H_HelmetSpecO_ghex_F", + "H_HelmetLeaderO_ghex_F", + "H_HelmetO_ghex_F", + "H_HelmetCrew_O_ghex_F" ]; blck_headgearList = blck_headgear + blck_helmets; + //This defines the skin list, some skins are disabled by default to permit players to have high visibility uniforms distinct from those of the AI. blck_SkinList = [ //https://community.bistudio.com/wiki/Arma_3_CfgWeapons_Equipment - "U_C_Journalist", - "U_C_Poloshirt_blue", - "U_C_Poloshirt_burgundy", - "U_C_Poloshirt_salmon", - "U_C_Poloshirt_stripped", - "U_C_Poloshirt_tricolour", - "U_C_Poor_1", - "U_C_Poor_2", - "U_C_Poor_shorts_1", - "U_C_Scientist", - "U_OrestesBody", - "U_Rangemaster", - "U_NikosAgedBody", - "U_NikosBody", - "U_Competitor", - "U_B_CombatUniform_mcam", - "U_B_CombatUniform_mcam_tshirt", - "U_B_CombatUniform_mcam_vest", - "U_B_CombatUniform_mcam_worn", - "U_B_CTRG_1", - "U_B_CTRG_2", - "U_B_CTRG_3", - "U_I_CombatUniform", - "U_I_CombatUniform_shortsleeve", - "U_I_CombatUniform_tshirt", - "U_I_OfficerUniform", - "U_O_CombatUniform_ocamo", - "U_O_CombatUniform_oucamo", - "U_O_OfficerUniform_ocamo", - "U_B_SpecopsUniform_sgg", - "U_O_SpecopsUniform_blk", - "U_O_SpecopsUniform_ocamo", - "U_I_G_Story_Protagonist_F", - "U_C_HunterBody_grn", - "U_IG_Guerilla1_1", - "U_IG_Guerilla2_1", - "U_IG_Guerilla2_2", - "U_IG_Guerilla2_3", - "U_IG_Guerilla3_1", - "U_BG_Guerilla2_1", - "U_IG_Guerilla3_2", - "U_BG_Guerrilla_6_1", - "U_BG_Guerilla1_1", - "U_BG_Guerilla2_2", - "U_BG_Guerilla2_3", - "U_BG_Guerilla3_1", - "U_BG_leader", - "U_IG_leader", - "U_I_G_resistanceLeader_F", - "U_B_FullGhillie_ard", - "U_B_FullGhillie_lsh", - "U_B_FullGhillie_sard", - "U_B_GhillieSuit", - "U_I_FullGhillie_ard", - "U_I_FullGhillie_lsh", - "U_I_FullGhillie_sard", - "U_I_GhillieSuit", - "U_O_FullGhillie_ard", - "U_O_FullGhillie_lsh", - "U_O_FullGhillie_sard", - "U_O_GhillieSuit", - "U_I_Wetsuit", - "U_O_Wetsuit", - "U_B_Wetsuit", - "U_B_survival_uniform", - "U_B_HeliPilotCoveralls", - "U_I_HeliPilotCoveralls", - "U_B_PilotCoveralls", - "U_I_pilotCoveralls", - "U_O_PilotCoveralls" - ]; + // I have commented out some high visibility uniforms that can be reserved for players or special missions. + // for example, you could have a uniform list specified in a mission template. + "U_AntigonaBody", + "U_AttisBody", + "U_B_CombatUniform_mcam","U_B_CombatUniform_mcam_tshirt","U_B_CombatUniform_mcam_vest","U_B_CombatUniform_mcam_worn","U_B_CombatUniform_sgg","U_B_CombatUniform_sgg_tshirt","U_B_CombatUniform_sgg_vest","U_B_CombatUniform_wdl","U_B_CombatUniform_wdl_tshirt","U_B_CombatUniform_wdl_vest", + "U_B_CTRG_1","U_B_CTRG_2","U_B_CTRG_3", + "U_B_GhillieSuit", + "U_B_HeliPilotCoveralls","U_B_PilotCoveralls", + "U_B_SpecopsUniform_sgg", + "U_B_survival_uniform", + "U_B_Wetsuit", + //"U_BasicBody", + "U_BG_Guerilla1_1","U_BG_Guerilla2_1","U_BG_Guerilla2_2","U_BG_Guerilla2_3","U_BG_Guerilla3_1","U_BG_Guerilla3_2", + "U_BG_leader", + "U_C_Commoner_shorts","U_C_Commoner1_1","U_C_Commoner1_2","U_C_Commoner1_3","U_C_Commoner2_1","U_C_Commoner2_2","U_C_Commoner2_3", + "U_C_Farmer","U_C_Fisherman","U_C_FishermanOveralls","U_C_HunterBody_brn","U_C_HunterBody_grn", + //"U_C_Journalist", + "U_C_Novak", + //"U_C_Poloshirt_blue","U_C_Poloshirt_burgundy","U_C_Poloshirt_redwhite","U_C_Poloshirt_salmon","U_C_Poloshirt_stripped","U_C_Poloshirt_tricolour", + "U_C_Poor_1","U_C_Poor_2","U_C_Poor_shorts_1","U_C_Poor_shorts_2","U_C_PriestBody","U_C_Scavenger_1","U_C_Scavenger_2", + //"U_C_Scientist","U_C_ShirtSurfer_shorts","U_C_TeeSurfer_shorts_1","U_C_TeeSurfer_shorts_2", + "U_C_WorkerCoveralls","U_C_WorkerOveralls","U_Competitor", + "U_I_CombatUniform","U_I_CombatUniform_shortsleeve","U_I_CombatUniform_tshirt","U_I_G_resistanceLeader_F", + "U_I_G_Story_Protagonist_F", + "U_I_GhillieSuit", + "U_I_HeliPilotCoveralls", + "U_I_OfficerUniform", + "U_I_pilotCoveralls", + "U_I_Wetsuit", + "U_IG_Guerilla1_1","U_IG_Guerilla2_1","U_IG_Guerilla2_2","U_IG_Guerilla2_3","U_IG_Guerilla3_1","U_IG_Guerilla3_2", + "U_IG_leader", + "U_IG_Menelaos", + //"U_KerryBody", + //"U_MillerBody", + //"U_NikosAgedBody", + //"U_NikosBody", + "U_O_CombatUniform_ocamo","U_O_CombatUniform_oucamo", + "U_O_GhillieSuit", + "U_O_OfficerUniform_ocamo", + "U_O_PilotCoveralls", + "U_O_SpecopsUniform_blk", + "U_O_SpecopsUniform_ocamo", + "U_O_Wetsuit", + "U_OG_Guerilla1_1","U_OG_Guerilla2_1","U_OG_Guerilla2_2","U_OG_Guerilla2_3","U_OG_Guerilla3_1","U_OG_Guerilla3_2","U_OG_leader", + //"U_OI_Scientist", + //"U_OrestesBody", + "U_Rangemaster", + // DLC + "U_B_FullGhillie_ard","U_I_FullGhillie_ard","U_O_FullGhillie_ard","U_B_FullGhillie_sard","U_O_FullGhillie_sard","U_I_FullGhillie_sard","U_B_FullGhillie_lsh","U_O_FullGhillie_lsh","U_I_FullGhillie_lsh", + //Apex + "U_B_T_Soldier_F", + "U_B_T_Soldier_AR_F", + "U_B_T_Soldier_SL_F", + //"U_B_T_Sniper_F", + //"U_B_T_FullGhillie_tna_F", + "U_B_CTRG_Soldier_F", + "U_B_CTRG_Soldier_2_F", + "U_B_CTRG_Soldier_3_F", + "U_B_GEN_Soldier_F", + "U_B_GEN_Commander_F", + "U_O_T_Soldier_F", + "U_O_T_Officer_F", + //"U_O_T_Sniper_F", + //"U_O_T_FullGhillie_tna_F", + "U_O_V_Soldier_Viper_F", + "U_O_V_Soldier_Viper_hex_F", + "U_I_C_Soldier_Para_1_F", + "U_I_C_Soldier_Para_2_F", + "U_I_C_Soldier_Para_3_F", + "U_I_C_Soldier_Para_4_F", + "U_I_C_Soldier_Para_5_F", + "U_I_C_Soldier_Bandit_1_F", + "U_I_C_Soldier_Bandit_2_F", + "U_I_C_Soldier_Bandit_3_F", + "U_I_C_Soldier_Bandit_4_F", + "U_I_C_Soldier_Bandit_5_F", + "U_I_C_Soldier_Camo_F", + "U_C_man_sport_1_F", + "U_C_man_sport_2_F", + "U_C_man_sport_3_F", + "U_C_Man_casual_1_F", + "U_C_Man_casual_2_F", + "U_C_Man_casual_3_F", + "U_C_Man_casual_4_F", + "U_C_Man_casual_5_F", + "U_C_Man_casual_6_F", + "U_B_CTRG_Soldier_urb_1_F", + "U_B_CTRG_Soldier_urb_2_F", + "U_B_CTRG_Soldier_urb_3_F" + ]; blck_vests = [ - "V_Press_F", - "V_Rangemaster_belt", - "V_TacVest_blk", - "V_TacVest_blk_POLICE", - "V_TacVest_brn", - "V_TacVest_camo", - "V_TacVest_khk", - "V_TacVest_oli", - "V_TacVestCamo_khk", - "V_TacVestIR_blk", - "V_I_G_resistanceLeader_F", - "V_BandollierB_blk", - "V_BandollierB_cbr", - "V_BandollierB_khk", - "V_BandollierB_oli", - "V_BandollierB_rgr", - "V_Chestrig_blk", - "V_Chestrig_khk", - "V_Chestrig_oli", - "V_Chestrig_rgr", - "V_HarnessO_brn", - "V_HarnessO_gry", - "V_HarnessOGL_brn", - "V_HarnessOGL_gry", - "V_HarnessOSpec_brn", - "V_HarnessOSpec_gry", - "V_PlateCarrier1_blk", - "V_PlateCarrier1_rgr", - "V_PlateCarrier2_rgr", - "V_PlateCarrier3_rgr", - "V_PlateCarrierGL_blk", - "V_PlateCarrierGL_mtp", - "V_PlateCarrierGL_rgr", - "V_PlateCarrierH_CTRG", - "V_PlateCarrierIA1_dgtl", - "V_PlateCarrierIA2_dgtl", - "V_PlateCarrierIAGL_dgtl", - "V_PlateCarrierIAGL_oli", - "V_PlateCarrierL_CTRG", - "V_PlateCarrierSpec_blk", - "V_PlateCarrierSpec_mtp", - "V_PlateCarrierSpec_rgr" - ]; - - blck_weaponOptics = ["optic_Arco","optic_Hamr","optic_Aco","optic_ACO_grn","optic_Aco_smg","optic_ACO_grn_smg","optic_Holosight","optic_Holosight_smg","optic_SOS", - "optic_MRCO","optic_DMS","optic_Yorris","optic_MRD","optic_LRPS","optic_NVS","optic_Nightstalker"]; - blck_weaponSilencers = ["muzzle_snds_H","muzzle_snds_L","muzzle_snds_M", - "muzzle_snds_B","muzzle_snds_H_MG","muzzle_snds_acp"]; - blck_weaponLights = ["acc_flashlight","acc_pointer_IR"]; - blck_WeaponAttachments = blck_weaponOptics + blck_weaponSilencers + blck_weaponLights; - - //CraftingFood - blck_Meats=[ + "V_Press_F", + "V_Rangemaster_belt", + "V_TacVest_blk", + "V_TacVest_blk_POLICE", + "V_TacVest_brn", + "V_TacVest_camo", + "V_TacVest_khk", + "V_TacVest_oli", + "V_TacVestCamo_khk", + "V_TacVestIR_blk", + "V_I_G_resistanceLeader_F", + "V_BandollierB_blk", + "V_BandollierB_cbr", + "V_BandollierB_khk", + "V_BandollierB_oli", + "V_BandollierB_rgr", + "V_Chestrig_blk", + "V_Chestrig_khk", + "V_Chestrig_oli", + "V_Chestrig_rgr", + "V_HarnessO_brn", + "V_HarnessO_gry", + "V_HarnessOGL_brn", + "V_HarnessOGL_gry", + "V_HarnessOSpec_brn", + "V_HarnessOSpec_gry", + "V_PlateCarrier1_blk", + "V_PlateCarrier1_rgr", + "V_PlateCarrier2_rgr", + "V_PlateCarrier3_rgr", + "V_PlateCarrierGL_blk", + "V_PlateCarrierGL_mtp", + "V_PlateCarrierGL_rgr", + "V_PlateCarrierH_CTRG", + "V_PlateCarrierIA1_dgtl", + "V_PlateCarrierIA2_dgtl", + "V_PlateCarrierIAGL_dgtl", + "V_PlateCarrierIAGL_oli", + "V_PlateCarrierL_CTRG", + "V_PlateCarrierSpec_blk", + "V_PlateCarrierSpec_mtp", + "V_PlateCarrierSpec_rgr", + //Apex + "V_TacChestrig_grn_F", + "V_TacChestrig_oli_F", + "V_TacChestrig_cbr_F", + "V_PlateCarrier1_tna_F", + "V_PlateCarrier2_tna_F", + "V_PlateCarrierSpec_tna_F", + "V_PlateCarrierGL_tna_F", + "V_HarnessO_ghex_F", + "V_HarnessOGL_ghex_F", + "V_BandollierB_ghex_F", + "V_TacVest_gen_F", + "V_PlateCarrier1_rgr_noflag_F", + "V_PlateCarrier2_rgr_noflag_F" + ]; - ]; - blck_Drink = [ - "Exile_Item_PlasticBottleCoffee", - "Exile_Item_PowerDrink", - "Exile_Item_PlasticBottleFreshWater", - "Exile_Item_Beer", - "Exile_Item_EnergyDrink", - "Exile_Item_MountainDupe" - ]; - blck_Food = [ - "Exile_Item_EMRE", - "Exile_Item_GloriousKnakworst", - "Exile_Item_Surstromming", - "Exile_Item_SausageGravy", - "Exile_Item_Catfood", - "Exile_Item_ChristmasTinner", - "Exile_Item_BBQSandwich", - "Exile_Item_Dogfood", - "Exile_Item_BeefParts", - "Exile_Item_Cheathas", - "Exile_Item_Noodles", - "Exile_Item_SeedAstics", - "Exile_Item_Raisins", - "Exile_Item_Moobar", - "Exile_Item_InstantCoffee" - ]; - blck_ConsumableItems = blck_Meats + blck_Drink + blck_Food; - blck_throwableExplosives = ["HandGrenade","MiniGrenade"]; - blck_otherExplosives = ["1Rnd_HE_Grenade_shell","3Rnd_HE_Grenade_shell","DemoCharge_Remote_Mag","SatchelCharge_Remote_Mag"]; - blck_explosives = blck_throwableExplosives + blck_otherExplosives; - blck_medicalItems = ["Exile_Item_InstaDoc","Exile_Item_Bandage","Exile_Item_Vishpirin"]; - blck_specialItems = blck_throwableExplosives + blck_medicalItems; + //CraftingFood + blck_Meats=[ - blck_NVG = ["NVGoggles","NVGoggles_INDEP","NVGoggles_OPFOR","Exile_Item_XM8"]; + ]; + blck_Drink = [ + "Exile_Item_PlasticBottleCoffee", + "Exile_Item_PowerDrink", + "Exile_Item_PlasticBottleFreshWater", + "Exile_Item_Beer", + "Exile_Item_EnergyDrink", + "Exile_Item_MountainDupe" + ]; + blck_Food = [ + "Exile_Item_EMRE", + "Exile_Item_GloriousKnakworst", + "Exile_Item_Surstromming", + "Exile_Item_SausageGravy", + "Exile_Item_Catfood", + "Exile_Item_ChristmasTinner", + "Exile_Item_BBQSandwich", + "Exile_Item_Dogfood", + "Exile_Item_BeefParts", + "Exile_Item_Cheathas", + "Exile_Item_Noodles", + "Exile_Item_SeedAstics", + "Exile_Item_Raisins", + "Exile_Item_Moobar", + "Exile_Item_InstantCoffee" + ]; + blck_ConsumableItems = blck_Meats + blck_Drink + blck_Food; + blck_throwableExplosives = ["HandGrenade","MiniGrenade"]; + blck_otherExplosives = ["1Rnd_HE_Grenade_shell","3Rnd_HE_Grenade_shell","DemoCharge_Remote_Mag","SatchelCharge_Remote_Mag"]; + blck_explosives = blck_throwableExplosives + blck_otherExplosives; + blck_medicalItems = ["Exile_Item_InstaDoc","Exile_Item_Bandage","Exile_Item_Vishpirin"]; + blck_specialItems = blck_throwableExplosives + blck_medicalItems; + + blck_NVG = ["NVGoggles","NVGoggles_INDEP","NVGoggles_OPFOR","Exile_Item_XM8"]; /*************************************************************************************** DEFAULT CONTENTS OF LOOT CRATES FOR EACH MISSION diff --git a/@epochhive/addons/custom_server/Configs/blck_custom_config.sqf b/@epochhive/addons/custom_server/Configs/blck_custom_config.sqf index 6797d40..6ce9af5 100644 --- a/@epochhive/addons/custom_server/Configs/blck_custom_config.sqf +++ b/@epochhive/addons/custom_server/Configs/blck_custom_config.sqf @@ -1,14 +1,13 @@ -// Place any overrides of the default configurations here. -// An example would be to move the center or change the dimensions for the map on which the missions are spawned so that only part of the map is used. -// Or map-specific configurations if you run the mission system on multiple servers. Our configurations are shown below as an example - +/* + Place any overrides of the default configurations here. + This is a convenient way to specify the configuration you like without worrying about going through the individual config files with each update. + Several Examples are shown below. +*/ diag_log "[blckeagls] Loading Configuration Overides"; -_world = toLower format ["%1", worldName]; - -switch (_world) do +switch (toLower (worldName)) do { case"tanoa": {blck_maxCrashSites = 2}; case"namalsk": { @@ -27,6 +26,7 @@ switch (_world) do if (blck_debugON) then { + // Used primarily for debugging. diag_log "[blckeagls] Debug seting is ON, Custom configurations used"; blck_mainThreadUpdateInterval = 10; diff --git a/@epochhive/addons/custom_server/changeLog.sqf b/@epochhive/addons/custom_server/changeLog.sqf index ad32a90..02335a8 100644 --- a/@epochhive/addons/custom_server/changeLog.sqf +++ b/@epochhive/addons/custom_server/changeLog.sqf @@ -4,9 +4,24 @@ Loosely based on the AI mission system by blckeagls ver 2.0.2 Contributions by Narines: bug fixes, testing, 'fired' event handler Ideas or code from that by Vampire and KiloSwiss have been used for certain functions. -11/12/16 Version 6.43 Build 11 +11/14/16 Version 6.44 Build 13 +Definitions of blacklist locations such as spawns moved from GMS_findWorld.sqf to the blck_configs_(epoch|exile). +Added parameters + blck_blacklistTraderCities=true; // the locations of the Epoch/Exile trader cities will be pulled from the config and added to the location blacklist for the mission system. + blcklistConcreteMixerZones = true; // Locations of the concrete mixers will be pulled from the configs; no missions will be spawned within 1000 m of these locations. + blck_blacklistSpawns = true; // Locations of Exile spawns will be pulled from the config. No missions will spawn within 1000 m of these locations. +Divided rifles and optics into subcategories to better enable assigning weapons to AI difficulties in a sort of class-based way, e.g., 556, 6.5, or LMG are separate classes. + +Completed adding EDEN weapons, optics, bipods, optics to AI configurations and mission loot crates. +Added APEX headgear and uniforms. (Note, you would need to add any of these you wished for players to sell to Epoch\\epoch_config\CfgPricing.hpp on Epoch) + +11/12/16 Version 6.43 Build 12 +Added: MapAddons - use this to spawn AI strongholds or other compositions you generate with Eden editor at server startup. +Added: Loot Crate Spawner - Spawn loot crates at prespecified points. This is designed so that you can spawn crates inside buildings or other structures spawned through the map-addons. +Added: APEX weapons, sights and optics to AI and loot crates. + +11/12/16 Version 6.42 Build 11 Enhancements to code to equip weapons; pointrs, silencers and bipods are now attached. -Added a little function to spawn static map addons such as AI strongholds, bridges, traders and such. 11/11/16 Version 6.42 build 10 Redid the code that spawns the objects at missions to work properly with the new formats generated by M3Arma EDEN Editor whilc being backwards compatible with older formats used in the existing missions. diff --git a/@epochhive/addons/custom_server/init/blck_init.sqf b/@epochhive/addons/custom_server/init/blck_init.sqf index 2b625b8..e9219af 100644 --- a/@epochhive/addons/custom_server/init/blck_init.sqf +++ b/@epochhive/addons/custom_server/init/blck_init.sqf @@ -34,10 +34,12 @@ _modType = [] call blck_getModType; if (_modType isEqualTo "Epoch") then { diag_log format["[blckeagls] Loading Mission System using Parameters for %1",_modType]; - call compileFinal preprocessFileLineNumbers "\q\addons\custom_server\Configs\blck_configs_epoch.sqf"; + execVM "\q\addons\custom_server\Configs\blck_configs_epoch.sqf"; waitUntil {(isNil "blck_configsLoaded") isEqualTo false;}; waitUntil{blck_configsLoaded}; blck_configsLoaded = nil; + diag_log "[blckeagles] Running getTraderCitiesEpoch to get location of trader cities"; + execVM "\q\addons\custom_server\Compiles\Functions\getTraderCitesEpoch.sqf";; }; if (_modType isEqualTo "Exile") then { @@ -46,6 +48,7 @@ if (_modType isEqualTo "Exile") then waitUntil {(isNil "blck_configsLoaded") isEqualTo false;}; waitUntil{blck_configsLoaded}; blck_configsLoaded = nil; + if (blck_blacklistTraderCities || blck_blacklistSpawns || blcklistConcreteMixerZones) then {execVM "\q\addons\custom_server\Compiles\Functions\getTraderCitesExile.sqf";}; }; diag_log "[blckeagls] Loading Map-specific information"; diff --git a/@epochhive/addons/custom_server/init/build.sqf b/@epochhive/addons/custom_server/init/build.sqf index deca708..562450b 100644 --- a/@epochhive/addons/custom_server/init/build.sqf +++ b/@epochhive/addons/custom_server/init/build.sqf @@ -1,3 +1,3 @@ private ["_version","_versionDate"]; -_blck_version = "6.43 Build 11"; -_blck_versionDate = "11-12-16 11:00 AM"; \ No newline at end of file +_blck_version = "6.44 Build 13"; +_blck_versionDate = "11-14-16 11:00 AM"; diff --git a/changeLog.sqf b/changeLog.sqf index 6f0e81b..02335a8 100644 --- a/changeLog.sqf +++ b/changeLog.sqf @@ -4,6 +4,41 @@ Loosely based on the AI mission system by blckeagls ver 2.0.2 Contributions by Narines: bug fixes, testing, 'fired' event handler Ideas or code from that by Vampire and KiloSwiss have been used for certain functions. +11/14/16 Version 6.44 Build 13 +Definitions of blacklist locations such as spawns moved from GMS_findWorld.sqf to the blck_configs_(epoch|exile). +Added parameters + blck_blacklistTraderCities=true; // the locations of the Epoch/Exile trader cities will be pulled from the config and added to the location blacklist for the mission system. + blcklistConcreteMixerZones = true; // Locations of the concrete mixers will be pulled from the configs; no missions will be spawned within 1000 m of these locations. + blck_blacklistSpawns = true; // Locations of Exile spawns will be pulled from the config. No missions will spawn within 1000 m of these locations. +Divided rifles and optics into subcategories to better enable assigning weapons to AI difficulties in a sort of class-based way, e.g., 556, 6.5, or LMG are separate classes. + +Completed adding EDEN weapons, optics, bipods, optics to AI configurations and mission loot crates. +Added APEX headgear and uniforms. (Note, you would need to add any of these you wished for players to sell to Epoch\\epoch_config\CfgPricing.hpp on Epoch) + +11/12/16 Version 6.43 Build 12 +Added: MapAddons - use this to spawn AI strongholds or other compositions you generate with Eden editor at server startup. +Added: Loot Crate Spawner - Spawn loot crates at prespecified points. This is designed so that you can spawn crates inside buildings or other structures spawned through the map-addons. +Added: APEX weapons, sights and optics to AI and loot crates. + +11/12/16 Version 6.42 Build 11 +Enhancements to code to equip weapons; pointrs, silencers and bipods are now attached. + +11/11/16 Version 6.42 build 10 +Redid the code that spawns the objects at missions to work properly with the new formats generated by M3Arma EDEN Editor whilc being backwards compatible with older formats used in the existing missions. +Added code to add scopes and other attachments to AI weapons. +Added new variable blck_blacklistedOptics which you can use to block spawning optics like TMS. +Added new parameter blck_removeNVG which when true will cause NVG to be deleted from AI bodies. +Fixed: launchers and rounds should now be deleted when blck_removeLaunchers = true; +Fixed: All AI should spawn with a uniform. +More bug fixes and correction of typos. + +11/2/16 Version 6.41 Build 9 +Added a parameter blck_useKilledAIName that, when true, changes the kill messages to show player name and AI unit name +Added message to players for killstreaks and a crypto/Tabs bonus for killstreaks. +Exile: AI spawn with a few tabs. +//Epoch: AI spawn with a few Crypto +Corrected an error that would spawn Epoch NVG on AI in Exile. + 10/25/16 Version 6.4 Build 8 Reworked the code to spawn vehicle patrols and static weapons and clean them up. Reworked the code that messages players to be sure that calling titleText does not hang the messaging function and delay hints or system chat notifications. From 9a3f92a3be7790edcdd5963787c299904a3d9f3b Mon Sep 17 00:00:00 2001 From: Ghostrider-DbD- Date: Mon, 14 Nov 2016 14:14:58 -0500 Subject: [PATCH 3/3] bug fix: change blck_debugON to false --- @epochhive/addons/custom_server/Compiles/blck_variables.sqf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/@epochhive/addons/custom_server/Compiles/blck_variables.sqf b/@epochhive/addons/custom_server/Compiles/blck_variables.sqf index 59a50f3..da27ebf 100644 --- a/@epochhive/addons/custom_server/Compiles/blck_variables.sqf +++ b/@epochhive/addons/custom_server/Compiles/blck_variables.sqf @@ -6,7 +6,7 @@ Last modified 10/25/16 */ //blck_variablesLoaded = false; -blck_debugON = true; +blck_debugON = false; blck_debugLevel = 3; blck_minFPS = 10;