Raytesh 10 Posted December 29, 2013 Being new to scripting and mission making using markers this is a bit hard to use for me atm. I'm sure its awesome and ill figure it out but I know it does say it supports the use of addons is there anyway to get that working? I know the documentation isn't done yet. But from what I've seen it works awesome. Now if i could get it to use the addons I have it would be complete... :) (Trying to get the Massi African conflict to work.) Also can anyone PM me with how to setup the server gamelogic. Share this post Link to post Share on other sites
Redfield-77 10 Posted December 29, 2013 Hi Raytesh, Here is the EOS_UniPools.sqf you want. We have a few extra factions that wont work for you but you will notice the massi africans are case 5 and 6. All you have to do is change your OpenMe.sqf to the new case #'s. Make a backup of your EOS_UnitPools.sqf and then paste this code in. if (!isServer) exitwith {}; private ["_sqdPool","_unit","_i","_faction","_InfPool","_tempArray","_type","_diverPool","_ArmPool","_MotPool","_ACHPool","_CHPool","_uavPool","_shipPool","_stPool"]; _faction=(_this select 0); _type=(_this select 1); _tempArray=[]; _i=0; switch (_faction) do { case 0:{ // EAST CSAT FACTION _InfPool= ["O_SoldierU_SL_F","O_soldierU_repair_F","O_soldierU_medic_F","O_sniper_F","O_Soldier_A_F","O_Soldier_AA_F","O_Soldier_AAA_F","O_Soldier_AAR_F","O_Soldier_AAT_F","O_Soldier_AR_F","O_Soldier_AT_F","O_soldier_exp_F","O_Soldier_F","O_engineer_F","O_engineer_U_F","O_medic_F","O_recon_exp_F","O_recon_F","O_recon_JTAC_F","O_recon_LAT_F","O_recon_M_F","O_recon_medic_F","O_recon_TL_F"]; _ArmPool= ["O_APC_Tracked_02_AA_F","O_APC_Tracked_02_cannon_F","O_APC_Wheeled_02_rcws_F","O_MBT_02_arty_F","O_MBT_02_cannon_F"]; _MotPool= ["O_Truck_02_covered_F","O_Truck_02_transport_F","O_MRAP_02_F","O_MRAP_02_gmg_F","O_MRAP_02_hmg_F","O_Truck_02_medical_F"]; _ACHPool= ["O_Heli_Attack_02_black_F","O_Heli_Attack_02_F"]; _CHPool= ["O_Heli_Light_02_F","O_Heli_Light_02_unarmed_F"]; _uavPool= ["O_UAV_01_F","O_UAV_02_CAS_F","O_UGV_01_rcws_F"]; _stPool= ["O_Mortar_01_F","O_static_AT_F","O_static_AA_F"]; _shipPool= ["O_Boat_Armed_01_hmg_F","O_Boat_Transport_01_F"]; _diverPool= ["O_Soldier_A_F","O_Soldier_AAT_F","O_Soldier_AR_F"]; }; // WEST NATO FACTION case 1:{ _InfPool= ["B_sniper_F","B_Soldier_A_F","B_Soldier_AA_F","B_Soldier_AAA_F","B_Soldier_AAR_F","B_Soldier_AAT_F","B_Soldier_AR_F","B_Soldier_AT_F","B_soldier_exp_F","B_Soldier_F","B_engineer_F","B_medic_F","B_recon_exp_F","B_recon_F","B_recon_JTAC_F","B_recon_LAT_F","B_recon_M_F","B_recon_medic_F","B_recon_TL_F"]; _ArmPool= ["B_MBT_01_arty_F","B_MBT_01_cannon_F","B_MBT_01_mlrs_F","B_APC_Tracked_01_AA_F","B_APC_Tracked_01_CRV_F","B_APC_Tracked_01_rcws_F","B_APC_Wheeled_01_cannon_F","B_MBT_02_cannon_F"]; _MotPool= ["B_Truck_01_covered_F","B_Truck_01_transport_F","B_MRAP_01_F","B_MRAP_01_gmg_F","B_MRAP_01_hmg_F","B_Truck_01_medical_F"]; _ACHPool= ["B_Heli_Attack_01_F","B_Heli_Light_01_armed_F"]; _CHPool= ["B_Heli_Light_01_F","B_Heli_Transport_01_camo_F","B_Heli_Transport_01_F"]; _uavPool= ["B_UAV_01_F","B_UAV_01_CAS_F","B_UGV_01_rcws_F"]; _stPool= ["B_Mortar_01_F","B_static_AT_F","B_static_AA_F"]; _shipPool= ["B_Boat_Armed_01_hmg_F","B_Boat_Transport_01_F"]; _diverPool= ["B_diver_exp_F","O_diver_F","B_diver_TL_F"]; }; // INDEPENDENT AAF FACTION case 2:{ _InfPool= ["I_engineer_F","I_Soldier_A_F","I_Soldier_AA_F","I_Soldier_AAA_F","I_Soldier_AAR_F","I_Soldier_AAT_F","I_Soldier_AR_F","I_Soldier_AT_F","I_Soldier_exp_F","I_soldier_F","I_Soldier_GL_F","I_Soldier_repair_F"]; _ArmPool= ["I_APC_Wheeled_03_cannon_F"]; _MotPool= ["I_MRAP_03_F","I_MRAP_03_gmg_F","I_MRAP_03_hmg_F","I_Truck_02_medical_F"]; _ACHPool= []; _CHPool= ["I_Heli_Transport_02_F","B_Heli_Light_02_unarmed_F"]; _uavPool= ["I_UAV_01_F","I_UAV_02_CAS_F","I_UGV_01_rcws_F"]; _stPool= ["I_Mortar_01_F"]; _shipPool= ["I_Boat_Transport_01_F","I_G_Boat_Transport_01_F","I_Boat_Armed_01_minigun_F"]; _diverPool= ["I_diver_exp_F","I_diver_F","I_diver_TL_F"]; }; // CIVILIAN case 3:{ _InfPool= ["C_man_1","C_man_1_1_F","C_man_1_2_F","C_man_1_3_F","C_man_hunter_1_F","C_man_p_beggar_F","C_man_p_beggar_F_afro","C_man_p_fugitive_F","C_man_p_shorts_1_F","C_man_pilot_F","C_man_polo_1_F","C_man_polo_2_F","C_man_polo_3_F","C_man_polo_4_F","C_man_polo_5_F","C_man_polo_6_F","C_man_shorts_1_F","C_man_shorts_2_F","C_man_shorts_3_F","C_man_shorts_4_F","C_man_w_worker_F"]; _ArmPool= ["C_Hatchback_01_F","C_Hatchback_01_sport_F","C_Quadbike_01_F","C_SUV_01_F","C_Van_01_transport_F","C_Van_01_box_F"]; _MotPool= ["C_Hatchback_01_F","C_Hatchback_01_sport_F","C_Quadbike_01_F","C_SUV_01_F","C_Van_01_transport_F","C_Van_01_box_F"]; _ACHPool= []; _CHPool= []; _uavPool= []; _stPool= []; _shipPool= ["C_Boat_Civil_01_F","C_Boat_Civil_01_rescue_F","C_Boat_Civil_04_F","C_Rubberboat"]; _diverPool= []; }; // WEST FIA FACTION case 4:{ _InfPool= ["B_G_engineer_F","B_G_medic_F","B_G_officer_F","B_G_Soldier_A_F","B_G_Soldier_AR_F","B_G_Soldier_exp_F","B_G_Soldier_F","B_G_Soldier_GL_F","B_G_Soldier_LAT_F","B_G_Soldier_lite_F","B_G_Soldier_M_F","B_G_Soldier_SL_F","B_G_Soldier_TL_F"]; _ArmPool= []; _MotPool= ["B_G_Offroad_01_F","B_G_Offroad_01_armed_F","B_G_Van_01_transport_F","B_G_Van_01_fuel_F"]; _ACHPool= []; _CHPool= []; _uavPool= []; _stPool= ["B_G_Mortar_01_F"]; _shipPool= ["B_G_Boat_Transport_01_F"]; _diverPool= []; }; // Africian Rebel Army (EAST) case 5:{ _InfPool= ["O_mas_afr_Soldier_F","O_mas_afr_Soldier_GL_F","O_mas_afr_soldier_AR_F","O_mas_afr_soldier_MG_F","O_mas_afr_Soldier_lite_F", "O_mas_afr_Soldier_off_F","O_mas_afr_Soldier_SL_F","O_mas_afr_Soldier_TL_Fn","O_mas_afr_soldier_M_F","O_mas_afr_soldier_LAT_F","O_mas_afr_soldier_AT_F","O_mas_afr_soldier_LAA_F","O_mas_afr_medic_F","O_mas_afr_soldier_repair_F","O_mas_afr_soldier_exp_F"]; _ArmPool= ["O_APC_Tracked_02_AA_F","O_APC_Tracked_02_cannon_F"]; _MotPool= ["O_mas_afr_Quadbike_01_F", "O_mas_afr_Offroad_01_F", "O_mas_afr_Offroad_01_armed_F", "O_mas_afr_Offroad_01s_F", "O_mas_afr_Offroad_01s_armed_F", "O_mas_afr_Offroad_01c_F", "O_mas_afr_Offroad_01c_armed_F", "O_mas_afr_Truck_02_logistic_F", "O_mas_afr_Truck_02_covered_F"]; _ACHPool= []; _CHPool= ["O_Heli_Light_02_F"]; _uavPool= []; _stPool= ["O_mas_afr_Mortar_01_F"]; _shipPool= ["O_mas_afr_Boat_Transport_01_F"]; _diverPool= ["O_diver_exp_F","O_diver_F","O_diver_TL_F"]; }; // Armed African Civilians (Rebel supporters) (EAST) case 6:{ _InfPool= ["O_mas_afr_Rebel1_F","O_mas_afr_Rebel2_F","O_mas_afr_Rebel3_F","O_mas_afr_Rebel4_F","O_mas_afr_Rebel5_F","O_mas_afr_Rebel6_F","O_mas_afr_Rebel6a_F","O_mas_afr_Rebel7_F","O_mas_afr_Rebel8_F","O_mas_afr_Rebel8a_F"]; _ArmPool= []; _MotPool= ["O_mas_afr_Quadbike_01_F", "O_mas_afr_Offroad_01_F", "O_mas_afr_Offroad_01_armed_F"]; _ACHPool= []; _CHPool= []; _uavPool= []; _stPool= ["O_mas_afr_Mortar_01_F"]; _shipPool= ["O_mas_afr_Boat_Transport_01_F"]; _diverPool= []; }; // GOVERNMENT ARMY UNITS (REBELS) (INDEPENDENT) case 7:{ _InfPool= ["I_mas_afr_Soldier_F", "I_mas_afr_Soldier_GL_F", "I_mas_afr_soldier_AR_F", "I_mas_afr_soldier_MG_F","I_mas_afr_Soldier_lite_F", "I_mas_afr_Soldier_off_F", "I_mas_afr_Soldier_off_Fn", "I_mas_afr_Soldier_SL_F", "I_mas_afr_Soldier_TL_F", "I_mas_afr_soldier_M_F", "I_mas_afr_soldier_LAT_F", "I_mas_afr_soldier_LAA_F", "I_mas_afr_medic_F", "I_mas_afr_soldier_repair_F", "I_mas_afr_soldier_exp_F"]; _ArmPool= []; _MotPool= ["I_mas_afr_Offroad_01_F", "I_mas_afr_Offroad_01_armed_F", "I_mas_afr_Offroad_01s_F", "I_mas_afr_Offroad_01s_armed_F"]; _ACHPool= []; _CHPool= []; _uavPool= []; _stPool= ["I_mas_afr_Mortar_01_F", "I_mas_afr_static_AT_F", "I_mas_afr_static_AA_F", "I_mas_afr_GMG_01_F", "I_mas_afr_GMG_01_high_F", "I_mas_afr_HMG_01_F", "I_mas_afr_HMG_01_high_F"]; _shipPool= ["I_mas_afr_Boat_Transport_01_F"]; _diverPool= ["I_diver_exp_F","I_diver_F","I_diver_TL_F"]; }; // Taliban (INDEPENDENT) case 8:{ _InfPool= ["DRI_SquadLeader", "DRI_Rifleman", "DRI_MachineGunner", "DRI_AutomaticRifleman","DRI_Grenadier", "DRI_ATSoldier", "DRI_RPG7Soldier", "DRI_AASoldier", "DRI_Medic", "DRI_Marksman", "DRI_Crewman", "DRI_RPG7Grenadier"]; _ArmPool= ["dri_Offroad_SPG92","dri_Offroad_SPG9","dri_UAZ_SPG9","dri_Ural_ZU23"]; _MotPool= ["dri_Landrover_MG", "dri_LandRover_SPG9", "dri_Offroad_DSHKM", "dri_Offroad_DSHKM2","dri_Offroad_DSHKM3","dri_Offroad_01_armed_F","dri_Offroad_01s_armed_F","dri_Pickup_PK","dri_Quadbike_01_F","dri_Truck_02_covered_F","dri_Truck_02_transport_F","dri_UAZ_MG"]; _ACHPool= []; _CHPool= []; _uavPool= []; _stPool= ["dri_Mortar_01_F", "dri_D30", "dri_DSHKM", "dri_MetisATGM", "dri_PKMnest", "dri_Mortar_01_F", "dri_SPG","dri_ZU23","dri_static_AA_F"]; _shipPool= ["I_mas_afr_Boat_Transport_01_F"]; _diverPool= ["I_diver_exp_F","I_diver_F","I_diver_TL_F"]; }; // Cherno Russians (East) case 9:{ _InfPool= ["O_mas_afr_rusadv1_F","O_mas_afr_rusadv2_F","O_mas_afr_rusadv3_F","Max_robber_rifle","Max_robber_heavy","Max_robber_sniper","Max_robber_boss"]; _ArmPool= ["dri_Offroad_SPG92","dri_Offroad_SPG9","dri_UAZ_SPG9","dri_Ural_ZU23","O_APC_Tracked_02_AA_F","O_APC_Tracked_02_cannon_F","O_APC_Wheeled_02_rcws_F","O_MBT_02_arty_F","O_MBT_02_cannon_F"]; _MotPool= ["dri_Landrover_MG", "dri_LandRover_SPG9", "dri_Offroad_DSHKM", "dri_Offroad_DSHKM2","dri_Offroad_DSHKM3","dri_Offroad_01_armed_F","dri_Offroad_01s_armed_F","dri_Pickup_PK","dri_Quadbike_01_F","dri_Truck_02_covered_F","dri_Truck_02_transport_F","dri_UAZ_MG","GRAD_RU","UAZ_RU","UAZ_AGS30_RU","Kamaz","KamazOpen","MAZ_543_SCUD_TK_EP1","max_robbers_suv","max_robbers_Hatchback"]; _ACHPool= ["O_Heli_Attack_02_black_F","O_Heli_Attack_02_F"]; _CHPool= ["O_Heli_Light_02_F","O_Heli_Light_02_unarmed_F"]; _uavPool= []; _stPool= ["dri_Mortar_01_F", "dri_D30", "dri_DSHKM", "dri_MetisATGM", "dri_PKMnest", "dri_Mortar_01_F", "dri_SPG","dri_ZU23","dri_static_AA_F","Igla_AA_pod_East"]; _shipPool= ["O_Boat_Armed_01_hmg_F"]; _diverPool= []; }; }; switch (_type) do { case 0:{_sqdPool=[];for "_i" from 0 to 5 do{_unit=_InfPool select (floor(random(count _InfPool)));_sqdPool = _sqdPool + [_unit];};_tempArray=_sqdPool;}; case 1:{_tempArray=_diverPool}; case 2:{_sqdPool=[];for "_i" from 0 to 5 do{_unit=_InfPool select (floor(random(count _InfPool)));_sqdPool = _sqdPool + [_unit];};_tempUnit=_shipPool select (floor(random(count _shipPool)));_temparray= _temparray + [_tempUnit];_temparray= [_temparray] + [_sqdPool];}; case 3:{_sqdPool=[];for "_i" from 0 to 5 do{_unit=_InfPool select (floor(random(count _InfPool)));_sqdPool = _sqdPool + [_unit];};_tempUnit=_MotPool select (floor(random(count _MotPool)));_temparray= _temparray + [_tempUnit];_temparray= [_temparray] + [_sqdPool];}; case 4:{_tempArray=_ArmPool select (floor(random(count _ArmPool)));}; case 5:{_tempArray=_ACHPool select (floor(random(count _ACHPool)));}; case 6:{_sqdPool=[];for "_i" from 0 to 5 do{_unit=_InfPool select (floor(random(count _InfPool)));_sqdPool = _sqdPool + [_unit];};_tempUnit=_CHPool select (floor(random(count _CHPool)));_temparray= _temparray + [_tempUnit];_temparray= [_temparray] + [_sqdPool];}; case 7:{_tempArray=_stPool select (floor(random(count _stPool)));}; case 8:{_tempArray=_uavPool select (floor(random(count _uavPool)));}; case 9:{_tempArray=_uavPool select (floor(random(count _uavPool)));}; }; //hint format ["%1",_tempArray]; _tempArray As far as the game logic. That is easy. A game logic is just an object you can drop into the editor then name it server. Share this post Link to post Share on other sites
Raytesh 10 Posted December 29, 2013 Hi Raytesh,Here is the EOS_UniPools.sqf you want. We have a few extra factions that wont work for you but you will notice the massi africans are case 5 and 6. All you have to do is change your OpenMe.sqf to the new case #'s. Make a backup of your EOS_UnitPools.sqf and then paste this code in. if (!isServer) exitwith {}; private ["_sqdPool","_unit","_i","_faction","_InfPool","_tempArray","_type","_diverPool","_ArmPool","_MotPool","_ACHPool","_CHPool","_uavPool","_shipPool","_stPool"]; _faction=(_this select 0); _type=(_this select 1); _tempArray=[]; _i=0; switch (_faction) do { case 0:{ // EAST CSAT FACTION _InfPool= ["O_SoldierU_SL_F","O_soldierU_repair_F","O_soldierU_medic_F","O_sniper_F","O_Soldier_A_F","O_Soldier_AA_F","O_Soldier_AAA_F","O_Soldier_AAR_F","O_Soldier_AAT_F","O_Soldier_AR_F","O_Soldier_AT_F","O_soldier_exp_F","O_Soldier_F","O_engineer_F","O_engineer_U_F","O_medic_F","O_recon_exp_F","O_recon_F","O_recon_JTAC_F","O_recon_LAT_F","O_recon_M_F","O_recon_medic_F","O_recon_TL_F"]; _ArmPool= ["O_APC_Tracked_02_AA_F","O_APC_Tracked_02_cannon_F","O_APC_Wheeled_02_rcws_F","O_MBT_02_arty_F","O_MBT_02_cannon_F"]; _MotPool= ["O_Truck_02_covered_F","O_Truck_02_transport_F","O_MRAP_02_F","O_MRAP_02_gmg_F","O_MRAP_02_hmg_F","O_Truck_02_medical_F"]; _ACHPool= ["O_Heli_Attack_02_black_F","O_Heli_Attack_02_F"]; _CHPool= ["O_Heli_Light_02_F","O_Heli_Light_02_unarmed_F"]; _uavPool= ["O_UAV_01_F","O_UAV_02_CAS_F","O_UGV_01_rcws_F"]; _stPool= ["O_Mortar_01_F","O_static_AT_F","O_static_AA_F"]; _shipPool= ["O_Boat_Armed_01_hmg_F","O_Boat_Transport_01_F"]; _diverPool= ["O_Soldier_A_F","O_Soldier_AAT_F","O_Soldier_AR_F"]; }; // WEST NATO FACTION case 1:{ _InfPool= ["B_sniper_F","B_Soldier_A_F","B_Soldier_AA_F","B_Soldier_AAA_F","B_Soldier_AAR_F","B_Soldier_AAT_F","B_Soldier_AR_F","B_Soldier_AT_F","B_soldier_exp_F","B_Soldier_F","B_engineer_F","B_medic_F","B_recon_exp_F","B_recon_F","B_recon_JTAC_F","B_recon_LAT_F","B_recon_M_F","B_recon_medic_F","B_recon_TL_F"]; _ArmPool= ["B_MBT_01_arty_F","B_MBT_01_cannon_F","B_MBT_01_mlrs_F","B_APC_Tracked_01_AA_F","B_APC_Tracked_01_CRV_F","B_APC_Tracked_01_rcws_F","B_APC_Wheeled_01_cannon_F","B_MBT_02_cannon_F"]; _MotPool= ["B_Truck_01_covered_F","B_Truck_01_transport_F","B_MRAP_01_F","B_MRAP_01_gmg_F","B_MRAP_01_hmg_F","B_Truck_01_medical_F"]; _ACHPool= ["B_Heli_Attack_01_F","B_Heli_Light_01_armed_F"]; _CHPool= ["B_Heli_Light_01_F","B_Heli_Transport_01_camo_F","B_Heli_Transport_01_F"]; _uavPool= ["B_UAV_01_F","B_UAV_01_CAS_F","B_UGV_01_rcws_F"]; _stPool= ["B_Mortar_01_F","B_static_AT_F","B_static_AA_F"]; _shipPool= ["B_Boat_Armed_01_hmg_F","B_Boat_Transport_01_F"]; _diverPool= ["B_diver_exp_F","O_diver_F","B_diver_TL_F"]; }; // INDEPENDENT AAF FACTION case 2:{ _InfPool= ["I_engineer_F","I_Soldier_A_F","I_Soldier_AA_F","I_Soldier_AAA_F","I_Soldier_AAR_F","I_Soldier_AAT_F","I_Soldier_AR_F","I_Soldier_AT_F","I_Soldier_exp_F","I_soldier_F","I_Soldier_GL_F","I_Soldier_repair_F"]; _ArmPool= ["I_APC_Wheeled_03_cannon_F"]; _MotPool= ["I_MRAP_03_F","I_MRAP_03_gmg_F","I_MRAP_03_hmg_F","I_Truck_02_medical_F"]; _ACHPool= []; _CHPool= ["I_Heli_Transport_02_F","B_Heli_Light_02_unarmed_F"]; _uavPool= ["I_UAV_01_F","I_UAV_02_CAS_F","I_UGV_01_rcws_F"]; _stPool= ["I_Mortar_01_F"]; _shipPool= ["I_Boat_Transport_01_F","I_G_Boat_Transport_01_F","I_Boat_Armed_01_minigun_F"]; _diverPool= ["I_diver_exp_F","I_diver_F","I_diver_TL_F"]; }; // CIVILIAN case 3:{ _InfPool= ["C_man_1","C_man_1_1_F","C_man_1_2_F","C_man_1_3_F","C_man_hunter_1_F","C_man_p_beggar_F","C_man_p_beggar_F_afro","C_man_p_fugitive_F","C_man_p_shorts_1_F","C_man_pilot_F","C_man_polo_1_F","C_man_polo_2_F","C_man_polo_3_F","C_man_polo_4_F","C_man_polo_5_F","C_man_polo_6_F","C_man_shorts_1_F","C_man_shorts_2_F","C_man_shorts_3_F","C_man_shorts_4_F","C_man_w_worker_F"]; _ArmPool= ["C_Hatchback_01_F","C_Hatchback_01_sport_F","C_Quadbike_01_F","C_SUV_01_F","C_Van_01_transport_F","C_Van_01_box_F"]; _MotPool= ["C_Hatchback_01_F","C_Hatchback_01_sport_F","C_Quadbike_01_F","C_SUV_01_F","C_Van_01_transport_F","C_Van_01_box_F"]; _ACHPool= []; _CHPool= []; _uavPool= []; _stPool= []; _shipPool= ["C_Boat_Civil_01_F","C_Boat_Civil_01_rescue_F","C_Boat_Civil_04_F","C_Rubberboat"]; _diverPool= []; }; // WEST FIA FACTION case 4:{ _InfPool= ["B_G_engineer_F","B_G_medic_F","B_G_officer_F","B_G_Soldier_A_F","B_G_Soldier_AR_F","B_G_Soldier_exp_F","B_G_Soldier_F","B_G_Soldier_GL_F","B_G_Soldier_LAT_F","B_G_Soldier_lite_F","B_G_Soldier_M_F","B_G_Soldier_SL_F","B_G_Soldier_TL_F"]; _ArmPool= []; _MotPool= ["B_G_Offroad_01_F","B_G_Offroad_01_armed_F","B_G_Van_01_transport_F","B_G_Van_01_fuel_F"]; _ACHPool= []; _CHPool= []; _uavPool= []; _stPool= ["B_G_Mortar_01_F"]; _shipPool= ["B_G_Boat_Transport_01_F"]; _diverPool= []; }; // Africian Rebel Army (EAST) case 5:{ _InfPool= ["O_mas_afr_Soldier_F","O_mas_afr_Soldier_GL_F","O_mas_afr_soldier_AR_F","O_mas_afr_soldier_MG_F","O_mas_afr_Soldier_lite_F", "O_mas_afr_Soldier_off_F","O_mas_afr_Soldier_SL_F","O_mas_afr_Soldier_TL_Fn","O_mas_afr_soldier_M_F","O_mas_afr_soldier_LAT_F","O_mas_afr_soldier_AT_F","O_mas_afr_soldier_LAA_F","O_mas_afr_medic_F","O_mas_afr_soldier_repair_F","O_mas_afr_soldier_exp_F"]; _ArmPool= ["O_APC_Tracked_02_AA_F","O_APC_Tracked_02_cannon_F"]; _MotPool= ["O_mas_afr_Quadbike_01_F", "O_mas_afr_Offroad_01_F", "O_mas_afr_Offroad_01_armed_F", "O_mas_afr_Offroad_01s_F", "O_mas_afr_Offroad_01s_armed_F", "O_mas_afr_Offroad_01c_F", "O_mas_afr_Offroad_01c_armed_F", "O_mas_afr_Truck_02_logistic_F", "O_mas_afr_Truck_02_covered_F"]; _ACHPool= []; _CHPool= ["O_Heli_Light_02_F"]; _uavPool= []; _stPool= ["O_mas_afr_Mortar_01_F"]; _shipPool= ["O_mas_afr_Boat_Transport_01_F"]; _diverPool= ["O_diver_exp_F","O_diver_F","O_diver_TL_F"]; }; // Armed African Civilians (Rebel supporters) (EAST) case 6:{ _InfPool= ["O_mas_afr_Rebel1_F","O_mas_afr_Rebel2_F","O_mas_afr_Rebel3_F","O_mas_afr_Rebel4_F","O_mas_afr_Rebel5_F","O_mas_afr_Rebel6_F","O_mas_afr_Rebel6a_F","O_mas_afr_Rebel7_F","O_mas_afr_Rebel8_F","O_mas_afr_Rebel8a_F"]; _ArmPool= []; _MotPool= ["O_mas_afr_Quadbike_01_F", "O_mas_afr_Offroad_01_F", "O_mas_afr_Offroad_01_armed_F"]; _ACHPool= []; _CHPool= []; _uavPool= []; _stPool= ["O_mas_afr_Mortar_01_F"]; _shipPool= ["O_mas_afr_Boat_Transport_01_F"]; _diverPool= []; }; // GOVERNMENT ARMY UNITS (REBELS) (INDEPENDENT) case 7:{ _InfPool= ["I_mas_afr_Soldier_F", "I_mas_afr_Soldier_GL_F", "I_mas_afr_soldier_AR_F", "I_mas_afr_soldier_MG_F","I_mas_afr_Soldier_lite_F", "I_mas_afr_Soldier_off_F", "I_mas_afr_Soldier_off_Fn", "I_mas_afr_Soldier_SL_F", "I_mas_afr_Soldier_TL_F", "I_mas_afr_soldier_M_F", "I_mas_afr_soldier_LAT_F", "I_mas_afr_soldier_LAA_F", "I_mas_afr_medic_F", "I_mas_afr_soldier_repair_F", "I_mas_afr_soldier_exp_F"]; _ArmPool= []; _MotPool= ["I_mas_afr_Offroad_01_F", "I_mas_afr_Offroad_01_armed_F", "I_mas_afr_Offroad_01s_F", "I_mas_afr_Offroad_01s_armed_F"]; _ACHPool= []; _CHPool= []; _uavPool= []; _stPool= ["I_mas_afr_Mortar_01_F", "I_mas_afr_static_AT_F", "I_mas_afr_static_AA_F", "I_mas_afr_GMG_01_F", "I_mas_afr_GMG_01_high_F", "I_mas_afr_HMG_01_F", "I_mas_afr_HMG_01_high_F"]; _shipPool= ["I_mas_afr_Boat_Transport_01_F"]; _diverPool= ["I_diver_exp_F","I_diver_F","I_diver_TL_F"]; }; // Taliban (INDEPENDENT) case 8:{ _InfPool= ["DRI_SquadLeader", "DRI_Rifleman", "DRI_MachineGunner", "DRI_AutomaticRifleman","DRI_Grenadier", "DRI_ATSoldier", "DRI_RPG7Soldier", "DRI_AASoldier", "DRI_Medic", "DRI_Marksman", "DRI_Crewman", "DRI_RPG7Grenadier"]; _ArmPool= ["dri_Offroad_SPG92","dri_Offroad_SPG9","dri_UAZ_SPG9","dri_Ural_ZU23"]; _MotPool= ["dri_Landrover_MG", "dri_LandRover_SPG9", "dri_Offroad_DSHKM", "dri_Offroad_DSHKM2","dri_Offroad_DSHKM3","dri_Offroad_01_armed_F","dri_Offroad_01s_armed_F","dri_Pickup_PK","dri_Quadbike_01_F","dri_Truck_02_covered_F","dri_Truck_02_transport_F","dri_UAZ_MG"]; _ACHPool= []; _CHPool= []; _uavPool= []; _stPool= ["dri_Mortar_01_F", "dri_D30", "dri_DSHKM", "dri_MetisATGM", "dri_PKMnest", "dri_Mortar_01_F", "dri_SPG","dri_ZU23","dri_static_AA_F"]; _shipPool= ["I_mas_afr_Boat_Transport_01_F"]; _diverPool= ["I_diver_exp_F","I_diver_F","I_diver_TL_F"]; }; // Cherno Russians (East) case 9:{ _InfPool= ["O_mas_afr_rusadv1_F","O_mas_afr_rusadv2_F","O_mas_afr_rusadv3_F","Max_robber_rifle","Max_robber_heavy","Max_robber_sniper","Max_robber_boss"]; _ArmPool= ["dri_Offroad_SPG92","dri_Offroad_SPG9","dri_UAZ_SPG9","dri_Ural_ZU23","O_APC_Tracked_02_AA_F","O_APC_Tracked_02_cannon_F","O_APC_Wheeled_02_rcws_F","O_MBT_02_arty_F","O_MBT_02_cannon_F"]; _MotPool= ["dri_Landrover_MG", "dri_LandRover_SPG9", "dri_Offroad_DSHKM", "dri_Offroad_DSHKM2","dri_Offroad_DSHKM3","dri_Offroad_01_armed_F","dri_Offroad_01s_armed_F","dri_Pickup_PK","dri_Quadbike_01_F","dri_Truck_02_covered_F","dri_Truck_02_transport_F","dri_UAZ_MG","GRAD_RU","UAZ_RU","UAZ_AGS30_RU","Kamaz","KamazOpen","MAZ_543_SCUD_TK_EP1","max_robbers_suv","max_robbers_Hatchback"]; _ACHPool= ["O_Heli_Attack_02_black_F","O_Heli_Attack_02_F"]; _CHPool= ["O_Heli_Light_02_F","O_Heli_Light_02_unarmed_F"]; _uavPool= []; _stPool= ["dri_Mortar_01_F", "dri_D30", "dri_DSHKM", "dri_MetisATGM", "dri_PKMnest", "dri_Mortar_01_F", "dri_SPG","dri_ZU23","dri_static_AA_F","Igla_AA_pod_East"]; _shipPool= ["O_Boat_Armed_01_hmg_F"]; _diverPool= []; }; }; switch (_type) do { case 0:{_sqdPool=[];for "_i" from 0 to 5 do{_unit=_InfPool select (floor(random(count _InfPool)));_sqdPool = _sqdPool + [_unit];};_tempArray=_sqdPool;}; case 1:{_tempArray=_diverPool}; case 2:{_sqdPool=[];for "_i" from 0 to 5 do{_unit=_InfPool select (floor(random(count _InfPool)));_sqdPool = _sqdPool + [_unit];};_tempUnit=_shipPool select (floor(random(count _shipPool)));_temparray= _temparray + [_tempUnit];_temparray= [_temparray] + [_sqdPool];}; case 3:{_sqdPool=[];for "_i" from 0 to 5 do{_unit=_InfPool select (floor(random(count _InfPool)));_sqdPool = _sqdPool + [_unit];};_tempUnit=_MotPool select (floor(random(count _MotPool)));_temparray= _temparray + [_tempUnit];_temparray= [_temparray] + [_sqdPool];}; case 4:{_tempArray=_ArmPool select (floor(random(count _ArmPool)));}; case 5:{_tempArray=_ACHPool select (floor(random(count _ACHPool)));}; case 6:{_sqdPool=[];for "_i" from 0 to 5 do{_unit=_InfPool select (floor(random(count _InfPool)));_sqdPool = _sqdPool + [_unit];};_tempUnit=_CHPool select (floor(random(count _CHPool)));_temparray= _temparray + [_tempUnit];_temparray= [_temparray] + [_sqdPool];}; case 7:{_tempArray=_stPool select (floor(random(count _stPool)));}; case 8:{_tempArray=_uavPool select (floor(random(count _uavPool)));}; case 9:{_tempArray=_uavPool select (floor(random(count _uavPool)));}; }; //hint format ["%1",_tempArray]; _tempArray As far as the game logic. That is easy. A game logic is just an object you can drop into the editor then name it server. Oh that's it nothing in the init area. That's easy enough, I really thought there was more to code in there. Thanks for the help! :) I hope that more can be added later or rather easily added. Gonna go try this out hopefully tomorrow. Share this post Link to post Share on other sites
hansson0728 12 Posted December 29, 2013 if dont remeber wrong the zones are populated if theyre marked hostile "red" and considerd done when green.. so i dont know and i cant try right now but what happens of you set a green zone to colorRed?? it should populate again.. just a thougt. :) Share this post Link to post Share on other sites
Redfield-77 10 Posted December 29, 2013 Nope, I set my zones invisible. Better that no one knows where they really are. Share this post Link to post Share on other sites
hansson0728 12 Posted December 30, 2013 even when invisible i think it has a color, again not sure.. (http://community.bistudio.com/wiki/setMarkerAlpha) try doing a waituntil markercolor green then set marker colorred and see if units respawn.. i'am not at home right now to confirm it... Share this post Link to post Share on other sites
Redfield-77 10 Posted December 31, 2013 even when invisible i think it has a color, again not sure.. (http://community.bistudio.com/wiki/setMarkerAlpha)try doing a waituntil markercolor green then set marker colorred and see if units respawn.. i'am not at home right now to confirm it... The number of enemies are clearly defined by the Arrays you fill out in the OpenMe.sqf. They dont respawn. They will cache if you leave but come back in the same state when you return. The color is just a debug really that can be left on if desired. Share this post Link to post Share on other sites
hansson0728 12 Posted December 31, 2013 Redfield-77... if we look inside EOScore you will find these lines, in the begining... ------------------------------------------------------------------------------------------------- if (!(getmarkercolor _mkr == VictoryColor)) then //IF MARKER IS GREEN DO NOT CHANGE COLOUR { _mkr setmarkercolor hostileColor; }; waituntil {triggeractivated _eosActivated}; //WAIT UNTIL PLAYERS IN ZONE if (!(getmarkercolor _mkr == "colorblack"))then { if (!(getmarkercolor _mkr == VictoryColor)) then {_mkr setmarkerAlpha _mAH;}; --------------------------------------------------------------------------------------------------- and these lines further down in the end: ----------------------------------------------------------------------------------------------------- if (triggeractivated _clear and triggeractivated _taken and !_civZone)exitwith {// IF ZONE CAPTURED BEGIN CHECKING FOR ENEMIES _cGrps=0;_aGrps=0;_bGrps=0;_dGrps=0;_eGrps=0;_eGrpsB=0;_ATCHGroups=0; while {triggeractivated _eosActivated AND !(getmarkercolor _mkr == "colorblack")} do { if (!triggeractivated _clear) then { _mkr setmarkercolor hostileColor; _mkr setmarkerAlpha _mAH; if (_debug) then {hint "Zone Lost";}; }else{ _mkr setmarkercolor VictoryColor; _mkr setmarkerAlpha _mAN; if (_debug) then {hint "Zone Captured";}; }; ------------------------------------------------------------------------------------------------------------- victorycolor and hostilecolor.. now if we look inside eos_launch we find this: VictoryColor="colorGreen"; hostileColor="colorRed"; bastionColor="colorOrange"; blackcolor is activated zone, dont use that color EOS will take care of that. so again, if we want our captured zone to re populate after some time... try changing the color of the marker back to hostilecolor (RED) and your once captured zone should now be populated once again... Share this post Link to post Share on other sites
bangabob 45 Posted January 4, 2014 changelog 1.95 - Adapted SHUKOS patrol script for EOS. Patrolling infantry will no longer leave the marker area - Customisable skills for all AI - Vehicles are much less likely to explode in populates areas - House patrols are more likely to appear inside houses - Added kill counter function - Added damage eventhandler - Various improvements in scripts - Formatted EOS scripts - Applied improvements from forum thread - Armoured vehicles no longer spawn with groups Thanks to everyone who has contributed towards the thread and the improvement of EOS. Share this post Link to post Share on other sites
Guest Posted January 5, 2014 Release frontpaged on the Armaholic homepage. Enemy Occupation System (EOS) v1.95 =============================================== We have also "connected" these pages to your account on Armaholic. This means in the future you will be able to maintain these pages yourself if you wish to do so. Once this new feature is ready we will contact you about it and explain how things work and what options you have. When you have any questions already feel free to PM or email me! Share this post Link to post Share on other sites
chondo999 1 Posted January 5, 2014 Is it possible to attach additional parameters to the spawned unit? Say, for example, I want to customize their loadouts. How do I go about doing this, if it is possible to do? Any help would be much appreciated. Share this post Link to post Share on other sites
bangabob 45 Posted January 5, 2014 Yeah open \EOS\Core\Spawn_fnc.sqf You will see this code on line 81. // ADD CODE HERE FOR MORE PARAMETERS FOR EACH UNIT. / Replace with your code { _unit = _x; { _skillvalue = (_skillset select _forEachIndex) + (random 0.2) - (random 0.2); _unit setSkill [_x,_skillvalue]; } forEach ['aimingAccuracy','aimingShake','aimingSpeed','endurance','spotDistance','spotTime','courage','reloadSpeed','commanding','general']; if (EOS_DAMAGE_MULTIPLIER == 1) then {_unit removeAllEventHandlers "HandleDamage";_unit addEventHandler ["HandleDamage",{_damage = (_this select 2)*EOS_DAMAGE_MULTIPLIER;_damage}];}; if (EOS_KILLCOUNTER) then {_unit addEventHandler ["killed", "null=[] execVM ""eos\functions\EOS_KillCounter.sqf"""]}; // ADD CODE HERE FOR MORE PARAMETERS FOR EACH UNIT. } forEach (units _grp); You will find identical code for each set of units. The above is all infantry Share this post Link to post Share on other sites
Doodle 10 Posted January 5, 2014 Vehicles still exploding when they spawn in centre of zone as they seem to do - The demo mission works ok because the markers are not in a built up area if you move the markers over a town to populate it and try creating more than 1 type of each vehicle (light - Heavy) then of the 10 times I tested it (FROM THE EDITOR) 8 of the tests the vehicles exploded killing soldiers in the area. Statics seem to spawn in centre of roads making vehicles that dont explode get stuck as they try to avoid the static. Spawning infantry working well though and houses are nicely populated now Share this post Link to post Share on other sites
bangabob 45 Posted January 5, 2014 Vehicles still exploding when they spawn in centre of zone as they seem to do - The demo mission works ok because the markers are not in a built up area if you move the markers over a town to populate it and try creating more than 1 type of each vehicle (light - Heavy) then of the 10 times I tested it (FROM THE EDITOR) 8 of the tests the vehicles exploded killing soldiers in the area. Statics seem to spawn in centre of roads making vehicles that dont explode get stuck as they try to avoid the static. Spawning infantry working well though and houses are nicely populated now I know vehicles still sometimes blow up in populated but it's a lot better than before. All I can suggest to avoid explosions when using eos is to only spawn armoured vehicles in large open areas. Not in dense cities where they wouldn't realistically operate (Common sense really) Share this post Link to post Share on other sites
chondo999 1 Posted January 6, 2014 Yeah open \EOS\Core\Spawn_fnc.sqfYou will see this code on line 81. // ADD CODE HERE FOR MORE PARAMETERS FOR EACH UNIT. / Replace with your code { _unit = _x; { _skillvalue = (_skillset select _forEachIndex) + (random 0.2) - (random 0.2); _unit setSkill [_x,_skillvalue]; } forEach ['aimingAccuracy','aimingShake','aimingSpeed','endurance','spotDistance','spotTime','courage','reloadSpeed','commanding','general']; if (EOS_DAMAGE_MULTIPLIER == 1) then {_unit removeAllEventHandlers "HandleDamage";_unit addEventHandler ["HandleDamage",{_damage = (_this select 2)*EOS_DAMAGE_MULTIPLIER;_damage}];}; if (EOS_KILLCOUNTER) then {_unit addEventHandler ["killed", "null=[] execVM ""eos\functions\EOS_KillCounter.sqf"""]}; // ADD CODE HERE FOR MORE PARAMETERS FOR EACH UNIT. } forEach (units _grp); You will find identical code for each set of units. The above is all infantry You're freaking awesome, bro. Share this post Link to post Share on other sites
invisibull 0 Posted January 6, 2014 Hi Bob - First of all, thanks for such a useful script. It really makes mission building a lot quicker and easier for me. Having said that, I've noticed a few problems with the AI behavior in 1.95. For one thing, the damage setting doesn't seem to change how much damage is necessary for a kill. I've tried values 1 through 10. Using Redfield's damage and skill tweak to your last version, a multiplier setting of 3 all but guaranteed a kill with a single hit no matter what part of the body. That was exactly what I had been looking for. Also, if I fire on a patrol group of AI, I'm noticing that other nearby groups often don't react at all until they are themselves fired upon no matter how high i set their skill settings. When I say nearby, I'm talking about less than 75 meters in some cases. (That's a real immersion killer for me.) Lastly, when I do engage a group, individual members of the engaged group sometimes seem to lose interest after firing a few shots, often slowly wandering off with their weapons pointing in all sorts of angles. They will even shoot into the ground or in a direction where no enemies exist. I did not see this type of behavior with Redfield's tweak even at much lower skill settings. Incidently, I'm not using any ai skill/behavior altering mods aside from yours. I realize I might just be doing something wrong. Wouldn't be the first time. I look forward to your response. Thanks again. Share this post Link to post Share on other sites
bangabob 45 Posted January 6, 2014 For one thing, the damage setting doesn't seem to change how much damage is necessary for a kill. I've tried values 1 through 10. Using Redfield's damage and skill tweak to your last version, a multiplier setting of 3 all but guaranteed a kill with a single hit no matter what part of the body. That was exactly what I had been looking for. Thanks for bringing this to my attention. The damage amplifier now works. You can either re-download the script or replace EOS\CORE\spawn_fnc.sqf with spawn_fnc.sqf EOS_spawnPatrol = { // SINGLE INFANTRY GROUP private ["_type","_grp","_unit","_pool","_grpSize","_pos","_faction","_newPos"]; _pos=(_this select 0); _grpSize=(_this select 1); _faction=(_this select 2); _side=(_this select 3); _grpMin=_grpSize select 0; _grpMax=_grpSize select 1; _d=_grpMax-_grpMin; _r=floor(random _d); _grpSize=_r+_grpMin; _newPos = _pos findEmptyPosition [0,50]; if (count _newPos > 0) then { _pos = _newPos}; if (surfaceiswater _newPos) then {_type=1;}else{_type=0;}; _pool=[_faction,_type] call EOS_unit; _grp=createGroup _side; for "_x" from 1 to _grpSize do { _unitType=_pool select (floor(random(count _pool))); _unit = _grp createUnit [_unitType, _newPos, [], 6, "FORM"]; }; _skillset = server getvariable "INFskill"; { _unit = _x; { _skillvalue = (_skillset select _forEachIndex) + (random 0.2) - (random 0.2); _unit setSkill [_x,_skillvalue]; } forEach ['aimingAccuracy','aimingShake','aimingSpeed','endurance','spotDistance','spotTime','courage','reloadSpeed','commanding','general']; if (EOS_DAMAGE_MULTIPLIER != 1) then {_unit removeAllEventHandlers "HandleDamage";_unit addEventHandler ["HandleDamage",{_damage = (_this select 2)*EOS_DAMAGE_MULTIPLIER;_damage}];}; if (EOS_KILLCOUNTER) then {_unit addEventHandler ["killed", "null=[] execVM ""eos\functions\EOS_KillCounter.sqf"""]}; } forEach (units _grp); _grp }; EOS_LightVeh = { // SINGLE VEHICLE GROUP if (!isServer) exitwith {}; private ["_cargo","_side","_type","_unit","_grpSize","_debug","_pos","_faction","_veh","_vehicle","_grp","_newpos","_radveh"]; _pos=(_this select 0); _grpSize=(_this select 1); _faction=(_this select 2); _side=(_this select 3); _radveh = 50; _debug=false; if (surfaceiswater _pos) then {_type=2;}else{_type=3;}; _pool=[_faction,_type] call EOS_unit; _unit=_pool select 0; _unit=_unit select 0; _cargo=_pool select 1; for "_counter" from 0 to 20 do { _newpos = [_pos,0,_radveh,5,1,20,0] call BIS_fnc_findSafePos; if ((_pos distance _newpos) < (_radveh + 5)) exitWith {_pos = _newpos;}; }; _veh= [_newpos, random 360, _unit, _side] call bis_fnc_spawnvehicle; _vehicle = _veh select 0; _grp = _veh select 2; // SPAWN WITH CARGO if ((_vehicle emptyPositions "cargo") > 0) then { 0=[_vehicle,_grpSize,_grp,_cargo] call EOS_FILLCARGO; }; _skillset = server getvariable "LIGskill"; { _unit = _x; { _skillvalue = (_skillset select _forEachIndex) + (random 0.2) - (random 0.2); _unit setSkill [_x,_skillvalue]; } forEach ['aimingAccuracy','aimingShake','aimingSpeed','endurance','spotDistance','spotTime','courage','reloadSpeed','commanding','general']; if (EOS_DAMAGE_MULTIPLIER != 1) then {_unit removeAllEventHandlers "HandleDamage";_unit addEventHandler ["HandleDamage",{_damage = (_this select 2)*EOS_DAMAGE_MULTIPLIER;_damage}];}; if (EOS_KILLCOUNTER) then {_unit addEventHandler ["killed", "null=[] execVM ""eos\functions\EOS_KillCounter.sqf"""]}; } forEach (units _grp); _veh }; EOS_Armour = { // SINGLE ARMOUR GROUP private ["_side","_type","_debug","_pos","_faction","_radveh","_newpos","_grp"]; _pos=(_this select 0); _faction=(_this select 1); _side=(_this select 2); _radveh = 50; _debug=false; if (surfaceiswater _pos) then {_type=2;}else{_type=4;}; _pool=[_faction,_type] call EOS_unit; for "_counter" from 0 to 20 do { _newpos = [_pos,0,_radveh,5,1,20,0] call BIS_fnc_findSafePos; if ((_pos distance _newpos) < (_radveh + 5)) exitWith {_pos = _newpos;}; }; _veh = [_newpos, random 360, _pool, _side] call bis_fnc_spawnvehicle; _grp = _veh select 2; _skillset = server getvariable "ARMskill"; { _unit = _x; { _skillvalue = (_skillset select _forEachIndex) + (random 0.2) - (random 0.2); _unit setSkill [_x,_skillvalue]; } forEach ['aimingAccuracy','aimingShake','aimingSpeed','endurance','spotDistance','spotTime','courage','reloadSpeed','commanding','general']; if (EOS_DAMAGE_MULTIPLIER != 1) then {_unit removeAllEventHandlers "HandleDamage";_unit addEventHandler ["HandleDamage",{_damage = (_this select 2)*EOS_DAMAGE_MULTIPLIER;_damage}];}; if (EOS_KILLCOUNTER) then {_unit addEventHandler ["killed", "null=[] execVM ""eos\functions\EOS_KillCounter.sqf"""]}; } forEach (units _grp); _veh }; EOS_spawnStatic = { private ["_side","_debug","_pos","_faction","_veh","_newpos","_radveh","_grp"]; _pos=(_this select 0); _grpSize=(_this select 1); _faction=(_this select 2); _side=(_this select 3); _radveh = 50; _debug=false; _type=7; _pool=[_faction,_type] call EOS_unit; for "_counter" from 0 to 20 do { _newpos = [_pos,0,_radveh,5,1,20,0] call BIS_fnc_findSafePos; if ((_pos distance _newpos) < (50 + 5)) exitWith {_pos = _newpos;}; }; _veh=[_newpos, random 360,_pool,_side] call bis_fnc_spawnvehicle; _grp = _veh select 2; _skillset = server getvariable "STAskill"; { _unit = _x; { _skillvalue = (_skillset select _forEachIndex) + (random 0.2) - (random 0.2); _unit setSkill [_x,_skillvalue]; } forEach ['aimingAccuracy','aimingShake','aimingSpeed','endurance','spotDistance','spotTime','courage','reloadSpeed','commanding','general']; if (EOS_DAMAGE_MULTIPLIER != 1) then {_unit removeAllEventHandlers "HandleDamage";_unit addEventHandler ["HandleDamage",{_damage = (_this select 2)*EOS_DAMAGE_MULTIPLIER;_damage}];}; if (EOS_KILLCOUNTER) then {_unit addEventHandler ["killed", "null=[] execVM ""eos\functions\EOS_KillCounter.sqf"""]}; } forEach (units _grp); _veh }; Share this post Link to post Share on other sites
chondo999 1 Posted January 6, 2014 Yeah open \EOS\Core\Spawn_fnc.sqf You will see this code on line 81. // ADD CODE HERE FOR MORE PARAMETERS FOR EACH UNIT. / Replace with your code { _unit = _x; { _skillvalue = (_skillset select _forEachIndex) + (random 0.2) - (random 0.2); _unit setSkill [_x,_skillvalue]; } forEach ['aimingAccuracy','aimingShake','aimingSpeed','endurance','spotDistance','spotTime','courage','reloadSpeed','commanding','general']; if (EOS_DAMAGE_MULTIPLIER == 1) then {_unit removeAllEventHandlers "HandleDamage";_unit addEventHandler ["HandleDamage",{_damage = (_this select 2)*EOS_DAMAGE_MULTIPLIER;_damage}];}; if (EOS_KILLCOUNTER) then {_unit addEventHandler ["killed", "null=[] execVM ""eos\functions\EOS_KillCounter.sqf"""]}; // ADD CODE HERE FOR MORE PARAMETERS FOR EACH UNIT. } forEach (units _grp); You will find identical code for each set of units. The above is all infantry It is not working. I usually launch my custom loadouts via script. For example: I place this command in the init of the unit: this call compile preprocessFileLineNumbers"scripts\LOPMC.sqf". I have tried different variations of this and no luck. Any help on this issue would be much appreciated. Share this post Link to post Share on other sites
bangabob 45 Posted January 7, 2014 It is not working. I usually launch my custom loadouts via script. For example: I place this command in the init of the unit: this call compile preprocessFileLineNumbers"scripts\LOPMC.sqf". I have tried different variations of this and no luck. Any help on this issue would be much appreciated. Can't help without your scripts Share this post Link to post Share on other sites
chondo999 1 Posted January 7, 2014 Can't help without your scripts Thanks, bro for taking the time to actually help me with this. As a misison maker I am sure half the battle is dealing with the forums. Again, it is much appreciated. Here is the line for my script. The entire purpose of this loadout is to force the AI to use lasers during combat. As insinuated before, this works via the normal call method in the units init via editor. private ["_unit", "_backpack"]; /* Replace _this below if you want to call this script differently */ _unit = _x; if (!isNull _unit) then { _unit addPrimaryWeaponItem "acc_pointer_IR"; _unit addItem "NVGoggles"; _unit assignItem "NVGoggles"; _unit addItem "Binocular"; _unit assignItem "Binocular"; _unit selectWeapon "this"; reload _unit; _unit enableIRLasers true }; So, I basically safe this code as an sqf file. Then call it in the unit's init by this command: this call compile preprocessFileLineNumbers"scripts\loadout.sqf"; Share this post Link to post Share on other sites
bangabob 45 Posted January 7, 2014 Your script. Modified slightly private ["_unit", "_backpack"]; /* Replace _this below if you want to call this script differently */ _unit = (_ this select 0); if (!isNull _unit) then { _unit addPrimaryWeaponItem "acc_pointer_IR"; _unit addItem "NVGoggles"; _unit assignItem "NVGoggles"; _unit addItem "Binocular"; _unit assignItem "Binocular"; _unit selectWeapon "this"; reload _unit; _unit enableIRLasers true }; How you should call your script in the EOS spawn_fnc.sqf { _unit = _x; { _skillvalue = (_skillset select _forEachIndex) + (random 0.2) - (random 0.2); _unit setSkill [_x,_skillvalue]; } forEach ['aimingAccuracy','aimingShake','aimingSpeed','endurance','spotDistance','spotTime','courage','reloadSpeed','commanding','general']; if (EOS_DAMAGE_MULTIPLIER == 1) then {_unit removeAllEventHandlers "HandleDamage";_unit addEventHandler ["HandleDamage",{_damage = (_this select 2)*EOS_DAMAGE_MULTIPLIER;_damage}];}; if (EOS_KILLCOUNTER) then {_unit addEventHandler ["killed", "null=[] execVM ""eos\functions\EOS_KillCounter.sqf"""]}; null = [_unit ] execVM "scripts\loadout.sqf"; //YOUR SCRIPT } forEach (units _grp); Share this post Link to post Share on other sites
chondo999 1 Posted January 7, 2014 You're the man, Bango. Thanks. Share this post Link to post Share on other sites
fn_Quiksilver 1636 Posted January 13, 2014 (edited) EOS_Spawn no longer spawns water units (divers, boats). reference "eos\functions\EOS_misc.sqf" line 81 if(!surfaceIsWater [_pos select 0,_pos select 1]) then Edited January 13, 2014 by MDCCLXXVI Share this post Link to post Share on other sites
dale0404 5 Posted January 13, 2014 Hiya Banga, Used your EOS scripts for the first time in a coop mission I have made for the community I am in. Works brilliantly! However, a couple of the groups of AI seem to wonder off outside the marker area, is this intended because of the way the script(s) behave? Share this post Link to post Share on other sites
bangabob 45 Posted January 13, 2014 Hiya Banga,Used your EOS scripts for the first time in a coop mission I have made for the community I am in. Works brilliantly! However, a couple of the groups of AI seem to wonder off outside the marker area, is this intended because of the way the script(s) behave? What type of market do you use? Rectangle or ellipse or Square? Also how large are your markers Share this post Link to post Share on other sites