Jump to content
Rydygier

HETMAN - Artificial Commander

For HAC users: What is the maximum number of simultaneously used by you Leaders?  

64 members have voted

  1. 1. For HAC users: What is the maximum number of simultaneously used by you Leaders?

    • Only one
      18
    • Two
      9
    • Three
      15
    • Four of them
      0
    • Five
      6
    • Six
      0
    • Seven
      12
    • All eight!
      1


Recommended Posts

Ok that makes sense now...sorry for being dense. I don't use helis a lot with DAC so my experience is limited and I did not know that about DAC spawning chopper grunts.. perhaps this explains why I've had prior problems with DAC helis and my 'expected' behaviour of these units.

Share this post


Link to post
Share on other sites
Ok that makes sense now...sorry for being dense. I don't use helis a lot with DAC so my experience is limited and I did not know that about DAC spawning chopper grunts.. perhaps this explains why I've had prior problems with DAC helis and my 'expected' behaviour of these units.
Nah, you're not being dense. When you get a bit beyond the default settings, DAC starts to become very complex.

The key issues with helis are: the choppers spawn empty; DAC will spawn exactly the right number of crew for each chopper; and DAC will spawn grunts according to the settings in the zone & the configs. The latter is one of several reasons it's best to spawn helis in a dedicated zone. Use configs that will spawn a a number of groups matching the number of choppers, with the group size set to the exact number of grunts needed to fill the chosen type of transport chopper. That should give predictable results (apart from what DAC might decide to do thereafter :)

Share this post


Link to post
Share on other sites

Does any of you having a working demo of a HACDACTICTACPADDYWHACK all working that I could get a scooby at? I'd fund it a whole lot easier than relearning everything you guys have done so far! Also, I'm assuming you're doing this all from a SP perspective, and haven't ventured into making it dedicated server compliant for MP at all? It's something I'd like to explore more (we had an older version of HETMAN working fine with MSO for a while, so it's certainly possible)

Share this post


Link to post
Share on other sites
Nah, you're not being dense. When you get a bit beyond the default settings, DAC starts to become very complex.

I love the complexity of it though. See I was assuming that DAC handled choppers in the same way as vehicles - spawn with crew inside and spawn appropriate # of vehicles for the number of units in a group (I think it keeps spawning vehicles until all units are 'mounted'?).

The key issues with helis are: the choppers spawn empty; DAC will spawn exactly the right number of crew for each chopper; and DAC will spawn grunts according to the settings in the zone & the configs. The latter is one of several reasons it's best to spawn helis in a dedicated zone. Use configs that will spawn a a number of groups matching the number of choppers, with the group size set to the exact number of grunts needed to fill the chosen type of transport chopper. That should give predictable results (apart from what DAC might decide to do thereafter :)

Hmmm.... Let's say I have a DAC call: fun=["heli1",[1,0,0],[6,2,20,8],[],[],[4,1,12],[0,0,0,0]] spawn DAC_Zone with the 1st group size as [2,2] in Config_Creator

From what I'm understanding DAC will spawn 4 empty helis with 2 crew each (as part of the "heli section" ie: [4,1,12] of the DAC call) and then 'pull' units not part of the "heli section" (ie: [6,2,20,8],[],[],[4,1,12] ) in order to fill the empty cargo spaces in the heli?

Sorry if I am hijacking this thread Mr. Rydygier

:o

---------- Post added at 04:28 PM ---------- Previous post was at 04:24 PM ----------

Does any of you having a working demo of a HACDACTICTACPADDYWHACK all working that I could get a scooby at? I'd fund it a whole lot easier than relearning everything you guys have done so far! Also, I'm assuming you're doing this all from a SP perspective, and haven't ventured into making it dedicated server compliant for MP at all? It's something I'd like to explore more (we had an older version of HETMAN working fine with MSO for a while, so it's certainly possible)

hehe... I would sacrifice small children to get HAC working in MP!! It's exactly what is needed - higher level 'thinking' for the AI. I think Orcinus said he was working on some kind of HAC/DAC demo but for SP only

Share this post


Link to post
Share on other sites
Does any of you having a working demo of a HACDACTICTACPADDYWHACK all working that I could get a scooby at? I'd fund it a whole lot easier than relearning everything you guys have done so far! Also, I'm assuming you're doing this all from a SP perspective, and haven't ventured into making it dedicated server compliant for MP at all? It's something I'd like to explore more (we had an older version of HETMAN working fine with MSO for a while, so it's certainly possible)

Basic HAC + DAC SP demo should be available this weekend. Testing it now (but being nagged to stop :)

Delighted to hear you'll fund it, where should I send the invoice?

Share this post


Link to post
Share on other sites

Fund...oh yeah! Well, depends what you invoice for ;)

I'll go poke Tup in the chest about it, cos he managed to get it working in MP with some sort of scripting magic.

Share this post


Link to post
Share on other sites

hi Rydygier,

I have test with spawn new units with help of HQReset, this ´cause i thought that would be the best place.

anyhow, how long will it take before HAC reconise the new units or will it never happend;)

code:

if (isNil ("RydHQ_ResetTime")) then {RydHQ_ResetTime = 600};

if not (RydHQ_ResetOnDemand) then {sleep RydHQ_ResetTime} else {waituntil {sleep 1; (RydHQ_ResetNow)};RydHQ_ResetNow = false};

_Edistance = false;

_groupA= ["BIS_BAF",(getMarkerPos "spawn_w")] call fnc_spawnGroup;

_GroupB = ["RU",(getMarkerPos "spawn_e")] call fnc_spawnGroup;

*****************************************************************************************

spawn code

_group = [_location, EAST, (configFile >> "CfgGroups" >> "East" >> "RU" >> "Infantry" >> "RU_InfSquad")] call BIS_fnc_spawnGroup};

cant really see if HAC use this groups, i can see that groups spawns, but not more..

Share this post


Link to post
Share on other sites

HAC will take control over spawned units with next cycle. But this not means, that for sure HAC will immediately send spawned troops into combat. But at least some idle order should be given (sentry or patrol). To know, when it is beginning of new cycle, you may use RydHQ_Cyclecount (for "A" Leader version) variable, which is growing every cycle per 1. Eg:

while {(true)} do
{
sleep 1;
hintsilent (str RydHQ_Cyclecount)
}

Interval between cycles varies in wide range (about 10 sec - several minutes).

Code is constructed in such way, that HAC every cycle is completing info about all controlled units from zero, so then HAC grabs also new spawned units/groups.

Of course, if all is set proper. For example BAF units needs RHQ init config to be recognized by HAC. And must be not in limited control mode (or, if so, new spawned units must be included under HAC's control separatelly). Can I see yours HAC init config?

Also I recommend to not touch HAC scripts and use separate file for generating spawns.

I can check some repro mission with this problem, if above explanations will not help, but this must be pure arma2, without any, I say again, any OA (CO), BAF or other non-vanilla content.

Share this post


Link to post
Share on other sites

I have made a coop mission with HAC, it can take up to 30 min before HAC give us any oders, and we must move all the time;)

placed HAC on server... and 2 player on the same side. not tried on dedicated.

---------- Post added at 15:11 ---------- Previous post was at 15:01 ----------

thanks Rydygier, should asked you if it was ok, first, and I say that I tried with trigger first, and diffrent ways, but the onlything that worked was to do the forbidden to go in and mess around in youre code.

anyhow, i tried severl ways before using rest as a place for spawn, I first used event "killed" but in 10 min i had 30 groups...

and it must be 10 min otherwise you get too many groups.

the spawnscript are a script, will not mess with youre code more the those 2 lines. and thats only until i find a better place.

if you will try just use thad code I put in my reply its just to put what ever you want.

---------- Post added at 15:13 ---------- Previous post was at 15:11 ----------

RydHQ_Debug = true;
RydHQB_Debug = true;
//RydHQC_Debug = true;

//Surrendering turned off for all (not compatibile with more than two commanders yet)

RydHQ_Surr = false;
RydHQB_Surr = false;
//RydHQC_Surr = false;
RydHQ_Smoke = true;
RydHQB_Smoke = true;
//Manual personality setting on for A i C 
RydHQ_Combining = true;
RydHQ_MAtt = true;
RydHQB_MAtt = true;

//Choosing of personalities for A i C

RydHQ_Personality = "GENIUS";
RydHQB_Personality = "GENIUS";

//Cargo system for all

RydHQ_CargoFind = 100;
RydHQB_CargoFind = 100;
//RydHQC_CargoFind = 100;
RydHQ_NoAirCargo = false;// - if true, air units will not be assigned to transport tasks;
RydHQ_NoLandCargo = false;
RydHQB_NoAirCargo = false;// - if true, air units will not be assigned to transport tasks;
RydHQB_NoLandCargo = false;
//Fronts for A and B

RydHQ_Front = false;
RydHQB_Front = false;

//Unlimited control off for A and B

RydHQ_SubAll = true;
RydHQB_SubAll = true;

//"Synchronized only" limited control mode on for B, used for adding under leaderHQB control some guerilla groups
RydHQ_SubSynchro = false;
RydHQB_SubSynchro = false;

//Six garrisoned groups for C (names set in init fields of teamleaders)
RydHQ_Garrison = [g6,g7,g8,g9,g10,g11,g12];
RydHQB_Garrison = [g1,g2,g3,g4];

RydHQ_SMed = true ;//- if true, medical support handling is on (ambulances/medevacs only, not group medic units);
RydHQ_SFuel = true ;//- if true, fuel support handling is on;
RydHQ_SAmmo = true ;//- if true, ammo support handling is on;
RydHQ_SRep = true ;//- if true, repair support handling is on;

RydHQB_SMed = true ;//- if true, medical support handling is on (ambulances/medevacs only, not group medic units);
RydHQB_SFuel = true ;//- if true, fuel support handling is on;
RydHQB_SAmmo = true ;//- if true, ammo support handling is on;
RydHQB_SRep = true ;//- if true, repair support handling is on;
//Quick method for adding under leader's control all groups of given faction present on map at start, for A i B
RydHQ_AOnly = [a1,a2,a3,a4,a5,a6];
RydHQB_AOnly = [a4,a5,a6];
RydHQ_Included = [];
RydHQB_Included = [];

 RHQ_Recon = ["US_Delta_Force_AR_EP1","US_Delta_Force_MG_EP1","US_Delta_Force_Marksman_EP1","RU_Soldier_Marksman","US_Delta_Force_Medic_EP1","US_Delta_Force_EP1","US_Delta_Force_Assault_EP1","US_Delta_Force_M14_EP1","US_Delta_Force_Night_EP1","US_Delta_Force_SD_EP1","US_Delta_Force_TL_EP1","TK_Soldier_Sniper_EP1","TK_Soldier_SniperH_EP1","TK_Soldier_Sniper_Night_EP1","TK_Soldier_Spotter_EP1","TK_Special_Forces_MG_EP1","TK_Special_Forces_EP1","TK_Special_Forces_TL_EP1","TK_INS_Soldier_Sniper_EP1"];
	 RHQ_Snipers = ["US_Soldier_Sniper_EP1","US_Soldier_SniperH_EP1","US_Soldier_Sniper_NV_EP1","RU_Soldier_Marksman","US_Soldier_Spotter_EP1","BAF_Soldier_SniperN_MTP","BAF_Soldier_SniperH_MTP","BAF_Soldier_Sniper_MTP","BAF_Soldier_spotter_MTP","BAF_Soldier_spotterN_MTP","BAF_Soldier_SniperN_W","BAF_Soldier_SniperH_W","BAF_Soldier_Sniper_W","BAF_Soldier_spotter_W","BAF_Soldier_spotterN_W","TK_Soldier_Sniper_EP1","TK_Soldier_SniperH_EP1","TK_Soldier_Sniper_Night_EP1","TK_INS_Soldier_Sniper_EP1","Soldier_Sniper_PMC","Soldier_Sniper_KSVK_PMC","GER_Soldier_Scout_EP1"];
	 RHQ_ATInf = ["US_Soldier_AT_EP1","US_Soldier_HAT_EP1","RU_Soldier_AT","RU_Soldier_HAT","BAF_Soldier_AT_MTP","BAF_Soldier_HAT_MTP","BAF_Soldier_AT_DDPM","BAF_Soldier_HAT_DDPM","BAF_Soldier_AT_W","BAF_Soldier_HAT_W","TK_Soldier_HAT_EP1","TK_Soldier_LAT_EP1","TK_Soldier_AT_EP1","TK_INS_Soldier_AT_EP1","Soldier_AT_PMC"];
	 RHQ_AAInf = ["US_Soldier_AA_EP1","BAF_Soldier_AA_MTP","BAF_Soldier_AA_DDPM","BAF_Soldier_AA_W","TK_Soldier_AA_EP1","TK_INS_Soldier_AA_EP1","Soldier_AA_PMC"];
	 RHQ_Inf = ["US_Soldier_AA_EP1","RU_Soldier_Marksman","RU_Soldier","RU_Soldier_HAT","RU_Soldier_AT","RU_Soldier_MG","US_Soldier_AT_EP1","US_Soldier_AAT_EP1","US_Soldier_HAT_EP1","US_Soldier_AHAT_EP1","US_Soldier_AR_EP1","US_Soldier_AAR_EP1","US_Soldier_Crew_EP1","US_Soldier_Engineer_EP1","US_Soldier_GL_EP1","US_Soldier_MG_EP1","US_Soldier_AMG_EP1","US_Soldier_Marksman_EP1","US_Soldier_Medic_EP1","US_Soldier_Officer_EP1","US_Soldier_Pilot_EP1","US_Pilot_Light_EP1","US_Soldier_EP1","US_Soldier_LAT_EP1","US_Soldier_B_EP1","US_Soldier_Sniper_EP1","US_Soldier_SniperH_EP1","US_Soldier_Sniper_NV_EP1","US_Soldier_Light_EP1","US_Soldier_Spotter_EP1","US_Soldier_SL_EP1","US_Soldier_TL_EP1","BAF_Soldier_AA_MTP","BAF_Soldier_AAA_MTP","BAF_Soldier_AAT_MTP","BAF_Soldier_AHAT_MTP","BAF_Soldier_AAR_MTP","BAF_Soldier_AMG_MTP","BAF_Soldier_AT_MTP","BAF_Soldier_HAT_MTP","BAF_Soldier_AR_MTP","BAF_crewman_MTP","BAF_Soldier_EN_MTP","BAF_Soldier_GL_MTP","BAF_Soldier_FAC_MTP","BAF_Soldier_MG_MTP","BAF_Soldier_scout_MTP","BAF_Soldier_Marksman_MTP","BAF_Soldier_Medic_MTP","BAF_Soldier_Officer_MTP","BAF_Pilot_MTP","BAF_Soldier_MTP","BAF_ASoldier_MTP","BAF_Soldier_L_MTP","BAF_Soldier_N_MTP","BAF_Soldier_SL_MTP","BAF_Soldier_SniperN_MTP","BAF_Soldier_SniperH_MTP","BAF_Soldier_Sniper_MTP","BAF_Soldier_spotter_MTP","BAF_Soldier_spotterN_MTP","BAF_Soldier_TL_MTP","BAF_Soldier_AA_DDPM","BAF_Soldier_AAA_DDPM","BAF_Soldier_AAT_DDPM","BAF_Soldier_AHAT_DDPM","BAF_Soldier_AAR_DDPM","BAF_Soldier_AMG_DDPM","BAF_Soldier_AT_DDPM","BAF_Soldier_HAT_DDPM","BAF_Soldier_AR_DDPM","BAF_crewman_DDPM","BAF_Soldier_EN_DDPM","BAF_Soldier_GL_DDPM","BAF_Soldier_FAC_DDPM","BAF_Soldier_MG_DDPM","BAF_Soldier_scout_DDPM","BAF_Soldier_Marksman_DDPM","BAF_Soldier_Medic_DDPM","BAF_Soldier_Officer_DDPM","BAF_Pilot_DDPM","BAF_Soldier_DDPM","BAF_ASoldier_DDPM","BAF_Soldier_L_DDPM","BAF_Soldier_N_DDPM","BAF_Soldier_SL_DDPM","BAF_Soldier_TL_DDPM","BAF_Soldier_AA_W","BAF_Soldier_AAA_W","BAF_Soldier_AAT_W","BAF_Soldier_AHAT_W","BAF_Soldier_AAR_W","BAF_Soldier_AMG_W","BAF_Soldier_AT_W","BAF_Soldier_HAT_W","BAF_Soldier_AR_W","BAF_crewman_W","BAF_Soldier_EN_W","BAF_Soldier_GL_W","BAF_Soldier_FAC_W","BAF_Soldier_MG_W","BAF_Soldier_scout_W","BAF_Soldier_Marksman_W","BAF_Soldier_Medic_W","BAF_Soldier_Officer_W","BAF_Pilot_W","BAF_Soldier_W","BAF_ASoldier_W","BAF_Soldier_L_W","BAF_Soldier_N_W","BAF_Soldier_SL_W","BAF_Soldier_SniperN_W","BAF_Soldier_SniperH_W","BAF_Soldier_Sniper_W","BAF_Soldier_spotter_W","BAF_Soldier_spotterN_W","BAF_Soldier_TL_W","TK_Soldier_AA_EP1","TK_Soldier_AAT_EP1","TK_Soldier_AMG_EP1","TK_Soldier_HAT_EP1","TK_Soldier_AR_EP1","TK_Aziz_EP1","TK_Commander_EP1","TK_Soldier_Crew_EP1","TK_Soldier_Engineer_EP1","TK_Soldier_GL_EP1","TK_Soldier_MG_EP1","TK_Soldier_Medic_EP1","TK_Soldier_Officer_EP1","TK_Soldier_Pilot_EP1","TK_Soldier_EP1","TK_Soldier_B_EP1","TK_Soldier_LAT_EP1","TK_Soldier_AT_EP1","TK_Soldier_Sniper_EP1","TK_Soldier_SniperH_EP1","TK_Soldier_Sniper_Night_EP1","TK_Soldier_Night_1_EP1","TK_Soldier_Night_2_EP1","TK_Soldier_TWS_EP1","TK_Soldier_Spotter_EP1","TK_Soldier_SL_EP1","TK_Special_Forces_MG_EP1","TK_Special_Forces_EP1","TK_Special_Forces_TL_EP1","TK_INS_Soldier_AA_EP1","TK_INS_Soldier_AR_EP1","TK_INS_Bonesetter_EP1","TK_INS_Soldier_MG_EP1","TK_INS_Soldier_2_EP1","TK_INS_Soldier_EP1","TK_INS_Soldier_4_EP1","TK_INS_Soldier_3_EP1","TK_INS_Soldier_AAT_EP1","TK_INS_Soldier_Sniper_EP1","TK_INS_Soldier_TL_EP1","TK_INS_Warlord_EP1","TK_INS_Soldier_AT_EP1","GER_Soldier_MG_EP1","GER_Soldier_Medic_EP1","GER_Soldier_EP1","GER_Soldier_Scout_EP1","GER_Soldier_TL_EP1","Soldier_Bodyguard_AA12_PMC","Soldier_Bodyguard_M4_PMC""Soldier_Sniper_PMC","Soldier_Medic_PMC","Soldier_MG_PMC","Soldier_MG_PKM_PMC","Soldier_AT_PMC","Soldier_Engineer_PMC","Soldier_GL_M16A2_PMC","Soldier_M4A3_PMC","Soldier_PMC","Soldier_GL_PMC","Soldier_Crew_PMC","Soldier_Pilot_PMC","Soldier_Sniper_KSVK_PMC","Soldier_AA_PMC","Soldier_TL_PMC","Ry_PMC","Dixon_PMC","Poet_PMC","Reynolds_PMC","Tanny_PMC"];
	 RHQ_Art = ["M1129_MC_EP1","MLRS_DES_EP1","M252_US_EP1","M119_US_EP1","GRAD_TK_EP1","MAZ_543_SCUD_TK_EP1","2b14_82mm_TK_EP1","D30_TK_EP1","2b14_82mm_TK_INS_EP1"];
	 RHQ_HArmor = ["M1A1_US_DES_EP1","M1A2_US_TUSK_MG_EP1","T72_TK_EP1","T55_TK_EP1"];
	 RHQ_LArmor = ["M1130_CV_EP1","M6_EP1","M2A2_EP1","M2A3_EP1","M1126_ICV_M2_EP1","M1126_ICV_mk19_EP1","M1135_ATGMV_EP1","M1128_MGS_EP1","BAF_FV510_D","BAF_FV510_W","BMP2_TK_EP1","BMP2_HQ_TK_EP1","BRDM2_TK_EP1","BRDM2_ATGM_TK_EP1","BTR60_TK_EP1","M113_TK_EP1","T34_TK_EP1","ZSU_TK_EP1"];
	 RHQ_LarmorAT = ["M1135_ATGMV_EP1","M1128_MGS_EP1","BMP2_TK_EP1","BMP2_CDF","BRDM2_CDF","BRDM2_ATGM_CDF","T72_CDF", "ZSU_CDF"];
	 RHQ_Cars = ["ATV_US_EP1","HMMWV_DES_EP1","HMMWV_MK19_DES_EP1","HMMWV_TOW_DES_EP1","HMMWV_M998_crows_M2_DES_EP1","HMMWV_M998_crows_MK19_DES_EP1","HMMWV_M1151_M2_DES_EP1","HMMWV_M998A2_SOV_DES_EP1","HMMWV_Terminal_EP1","HMMWV_M1035_DES_EP1","HMMWV_Avenger_DES_EP1","M1030_US_DES_EP1","MTVR_DES_EP1","BAF_ATV_D","BAF_Jackal2_GMG_D","BAF_Jackal2_L2A1_D","BAF_Offroad_D","BAF_ATV_W","BAF_Jackal2_GMG_W","BAF_Jackal2_L2A1_W","BAF_Offroad_W","LandRover_MG_TK_EP1","LandRover_SPG9_TK_EP1","TT650_TK_EP1","SUV_TK_EP1","UAZ_Unarmed_TK_EP1","UAZ_AGS30_TK_EP1","UAZ_MG_TK_EP1","Ural_ZU23_TK_EP1","V3S_TK_EP1","V3S_Open_TK_EP1","BTR40_TK_INS_EP1","BTR40_MG_TK_INS_EP1","LandRover_MG_TK_INS_EP1","LandRover_SPG9_TK_INS_EP1","Old_bike_TK_INS_EP1","SUV_PMC","ArmoredSUV_PMC"];
	 RHQ_Air = ["A10_US_EP1","AH64D_EP1","AH6J_EP1","AH6X_EP1","Mi17_rockets_RU","C130J_US_EP1","CH_47F_EP1","MH6J_EP1","MQ9PredatorB_US_EP1","UH60M_EP1","BAF_Apache_AH1_D","CH_47F_BAF","BAF_Merlin_HC3_D","AW159_Lynx_BAF","An2_TK_EP1","L39_TK_EP1","Mi24_D_TK_EP1","Mi17_TK_EP1","Su25_TK_EP1","UH1H_TK_EP1","Ka137_PMC","Ka137_MG_PMC","Ka60_PMC","Ka60_GL_PMC"];
	 RHQ_NCAir = ["AH6X_EP1","MH6J_EP1","Ka137_PMC"];
	 RHQ_RAir = ["AH6J_EP1","AH6X_EP1","MQ9PredatorB_US_EP1","Ka137_PMC","Ka137_MG_PMC"];
	 RHQ_Static = ["M252_US_EP1","M119_US_EP1","M2StaticMG_US_EP1","M2HD_mini_TriPod_US_EP1","MK19_TriPod_US_EP1","TOW_TriPod_US_EP1","BAF_GMG_Tripod_D","BAF_GPMG_Minitripod_D","BAF_L2A1_Minitripod_D","BAF_L2A1_Tripod_D","BAF_GMG_Tripod_W","BAF_GPMG_Minitripod_W","BAF_L2A1_Minitripod_W","BAF_L2A1_Tripod_W","Igla_AA_pod_TK_EP1","AGS_TK_EP1","D30_TK_EP1","KORD_high_TK_EP1","KORD_TK_EP1","Metis_TK_EP1","2b14_82mm_TK_EP1","ZU23_TK_EP1","AGS_TK_INS_EP1","D30_TK_INS_EP1","DSHKM_TK_INS_EP1","DSHkM_Mini_TriPod_TK_INS_EP1","2b14_82mm_TK_INS_EP1","SPG9_TK_INS_EP1","ZU23_TK_INS_EP1"];
	 RHQ_StaticAA = ["Stinger_Pod_US_EP1","Igla_AA_pod_TK_EP1","ZU23_TK_EP1","ZU23_TK_INS_EP1"];
	 RHQ_StaticAT = ["TOW_TriPod_US_EP1","Metis_TK_EP1","SPG9_TK_INS_EP1"];
	 RHQ_Support = ["HMMWV_Ambulance_DES_EP1","MtvrReammo_DES_EP1","MtvrRefuel_DES_EP1","MtvrRepair_DES_EP1","MtvrSupply_DES_EP1","M1133_MEV_EP1","MtvrSalvage_DES_EP1","UH60M_MEV_EP1","M113Ambul_TK_EP1","UralSupply_TK_EP1","UralSalvage_TK_EP1","UralReammo_TK_EP1","UralRefuel_TK_EP1","UralRepair_TK_EP1"];
	 RHQ_Med = ["HMMWV_Ambulance_DES_EP1","M1133_MEV_EP1","UH60M_MEV_EP1","M113Ambul_TK_EP1"];
	 RHQ_Ammo = ["MtvrReammo_DES_EP1","UralReammo_TK_EP1"];
	 RHQ_Fuel = ["MtvrRefuel_DES_EP1","UralRefuel_TK_EP1"];
	 RHQ_Rep = ["MtvrRepair_DES_EP1","UralRepair_TK_EP1"];
	 RHQ_Cargo = ["M1126_ICV_M2_EP1","UAZ_CDF","UAZ_AGS30_CDF","UAZ_MG_CDF","Ural_CDF", "UralOpen_CDF","Ural_ZU23_CDF","M1126_ICV_mk19_EP1","M6_EP1","M2A2_EP1","M2A3_EP1","BAF_Offroad_D","BAF_Offroad_W","BAF_FV510_D","BAF_FV510_W","BTR60_TK_EP1","M113_TK_EP1","BMP2_TK_EP1","V3S_TK_EP1","V3S_Open_TK_EP1","SUV_TK_EP1","UAZ_Unarmed_TK_EP1","BTR40_TK_INS_EP1","CH_47F_EP1","UH60M_EP1","CH_47F_BAF","BAF_Merlin_HC3_D","ArmoredSUV_PMC","Ka60_PMC","Ka60_GL_PMC"];
	 RHQ_NCCargo = ["MH6J_EP1","HMMWV_DES_EP1","MTVR_DES_EP1","SUV_TK_EP1","UAZ_Unarmed_TK_EP1","V3S_TK_EP1","V3S_Open_TK_EP1","SUV_PMC"];
	 RHQ_Crew = ["US_Soldier_Crew_EP1","US_Soldier_Pilot_EP1","US_Pilot_Light_EP1","BAF_crewman_MTP","BAF_Pilot_MTP","BAF_crewman_DDPM","BAF_Pilot_DDPM","BAF_crewman_W","BAF_Pilot_W","TK_Soldier_Crew_EP1","TK_Soldier_Pilot_EP1","Soldier_Crew_PMC","Soldier_Pilot_PMC"];
//Player's unit excluded

//RydHQ_ExcludedG = [P1];

//This only for script version:

nul = [] execVM "RydHQInit.sqf";

---------- Post added at 15:42 ---------- Previous post was at 15:13 ----------

---------- Post added at 15:44 ---------- Previous post was at 15:42 ----------

Hi again Rydygier,

I wonder if there are any events from HAC that I can cath and place spawn from my spawn script?

and thanks alot for this HAC, its so fantastic.

Meltedping

Edited by Foxhound
please put code between code tags

Share this post


Link to post
Share on other sites
thanks Rydygier, should asked you if it was ok, first, but...

Eh, no, no need to ask. Anyone can do with HAC code anything he want. Modify, borrow, cannibalize... Only this way easily something may be corrupted.

You may consider initialized separatelly file with such code:

while {(true)} do
{
sleep 600;
_groupA= ["BIS_BAF",(getMarkerPos "spawn_w")] call fnc_spawnGroup;
_GroupB = ["RU",(getMarkerPos "spawn_e")] call fnc_spawnGroup;
// and/or other spawning code here
};

To do yours spawning magic every 10 minutes, or:

while {(true)} do
{
sleep 30;
if ((count AllGroups) < 5) then 
	{
	_groupA= ["BIS_BAF",(getMarkerPos "spawn_w")] call fnc_spawnGroup;
	_GroupB = ["RU",(getMarkerPos "spawn_e")] call fnc_spawnGroup;
	// and/or other spawning code here
	}
};

To check every 30 secs, if there is less than 5 groups on map and if so, then to spawn something new... Posibilities are many...

I have made a coop mission with HAC, it can take up to 30 min before HAC give us any oders, and we must move all the time

placed HAC on server... and 2 player on the same side. not tried on dedicated.

Emm. Not sure, if I understand this correctly: you mean, that HAC needs 30 minutes before starts to do something? Or he gives to you idle orders first 30 minutes and only then some "real" attack mission? First option is very weird, second - possible. Especially, if HAC has under his control many groups. HETMAN uses own forces proportionaly to situation. If no enemy is spotted - previously only recon groups have anything serious to do...

Init config looks good (except comments :)) so maybe it is some MP-only HAC issue - HETMAN wasn't created for multiplayer and for working in network, however I know, that some people with success used HAC that way. If not this, then I do not know, what is the problem here. Spawned groups are for sure recognized by HAC - tested this with DAC personally, but in SP. Remains to give me some repro mission with this problem, if you are able to prepare such demo with described before conditions...

---------- Post added at 18:22 ---------- Previous post was at 18:18 ----------

I wonder if there are any events from HAC that I can cath and place spawn from my spawn script?

If that must be event from HAC, then you should to use somehow mentioned RydHQ_Cyclecount. There are many internal, but global variables, but only some can be used here. Maybe also mentioned in manual morale factor? I don't know, when you want to make spawns (in what circumstances should occurs). Time is an only factor, or maybe number of groups on map is important? All this can be done without refering to HAC variables however (see above code examples).

EDIT: oh, there is also of course possiblity to use objectives factor - spawn, when objective is lost or conquered... Use RydHQ_NObj variable for this. It has values 1, 2, 3 or 4 - means number of next (actual) objective and 5 means all objectives conquered.

Edited by Rydygier

Share this post


Link to post
Share on other sites

Thanks again, feel as a n00b ofc its better solution to use a sleep 600, in a extenal script;)

nánd for that matter it can be intressted to test the second one too:)

what I tried to say was that in MP it can take from 5-30 min before HAC even see you... but you must move around;)

thanks forr all the help, will try to make a demo for arma2 so you can test it.

Edited by meltedping
n00b

Share this post


Link to post
Share on other sites
Basic HAC + DAC SP demo should be available this weekend. Testing it now

Did you ever finish/release this?

Share this post


Link to post
Share on other sites
Did you ever finish/release this?

Apologies for the delay - RL has also been somewhat demanding of my time lately.

Nearly finished - part one, anyway. Currently working on resolving a conflict we've found between HAC & DAC wrt chopper spawns.

Part 2 will have setting up DAC zones dedicated to fronts, & spawning of independent DAC zones for insurgents/guerrillas; with the activation of one, both, or none, and location(s) controlled by a random number script.

Part 3 will be 'cycling' DAC zones between active & inactive to regenerate forces. This would allow for smaller initial spawns (less CPU load) but still support long, intense battles.

Either part 2 or part 3 will include taking the player group out of HAC for a specific mission (while the main battle rages on). Failure in that mission will make it significantly more likely that the player's side will lose; under those circumstances, & if the player survives he/she will need to take drastic measures to hamper the enemy. If successful in the side mission, they will need to escape, return to their lines, & rejoin HAC.

FYI these are set on Chernarus; they use only A2 content and scripting commands common to both A2 &OA. Currently testing is with CO, but will be tested in A2 before release.

BR

Orcinus

Share this post


Link to post
Share on other sites

There is wip3 uploaded (link in initial post). I would like to invite to some testing, especially this version. Implemented new, experimental Morale-Fleeing-Panic routine, but haven't much time for testing all this. I will be grateful for any feedback, how this works and for bug reporting. See TO DO list for details and list of other implemented features. There is used allowFleeing command. BTW still do not know, what is the difference between this command and "courage" skill setting.

Share this post


Link to post
Share on other sites

Thanks, Ryd. Looking forward to trying this out.

As for "courage" vs "fleeing" I'm not sure - someone like Jedra or Robalo might [be able to offer some insight.

Share this post


Link to post
Share on other sites

Yep, started a thread about this, but passed by without answer. Maybe someday will try to investigate this with empirical way. Oh. And thanks for motivation and ideas for HAC.

Share this post


Link to post
Share on other sites
Nearly finished - part one, anyway. Currently working on resolving a conflict we've found between HAC & DAC wrt chopper spawns.

Part 2 will have setting up DAC zones dedicated to fronts, & spawning of independent DAC zones for insurgents/guerrillas; with the activation of one, both, or none, and location(s) controlled by a random number script.

Part 3 will be 'cycling' DAC zones between active & inactive to regenerate forces. This would allow for smaller initial spawns (less CPU load) but still support long, intense battles.

Either part 2 or part 3 will include taking the player group out of HAC for a specific mission (while the main battle rages on). Failure in that mission will make it significantly more likely that the player's side will lose; under those circumstances, & if the player survives he/she will need to take drastic measures to hamper the enemy. If successful in the side mission, they will need to escape, return to their lines, & rejoin HAC.

FYI these are set on Chernarus; they use only A2 content and scripting commands common to both A2 &OA. Currently testing is with CO, but will be tested in A2 before release.

BR

Orcinus

Sounds bloody awesome can't wait to see how you've done it!!

BTW still do not know, what is the difference between this command and "courage" skill setting.

See this post for info:

http://forums.bistudio.com/showthread.php?105919-Getting-precise-control-of-quot-Fleeing-quot

Share this post


Link to post
Share on other sites

I have not followed this thread throughout and only recently got into trying this with HC extensions, all in all very well put together.

So excuse any repeat question here:

I notice the manual states that HAC is only aware of ARMA2 units for default arrays, will it ever be updated to consider OA as well? I may be missing something though.

EDIT: please ignore I missed the array template thread from OFP, found it :)

Edited by mrcash2009

Share this post


Link to post
Share on other sites
RydHQ_Debug = true;
RydHQB_Debug = true;
//RydHQC_Debug = true;

//Surrendering turned off for all (not compatibile with more than two commanders yet)

RydHQ_Surr = false;
RydHQB_Surr = false;
//RydHQC_Surr = false;
RydHQ_Smoke = true;
RydHQB_Smoke = true;
//Manual personality setting on for A i C 
RydHQ_Combining = true;
RydHQ_MAtt = true;
RydHQB_MAtt = true;

//Choosing of personalities for A i C

RydHQ_Personality = "GENIUS";
RydHQB_Personality = "GENIUS";

//Cargo system for all

RydHQ_CargoFind = 100;
RydHQB_CargoFind = 100;
//RydHQC_CargoFind = 100;
RydHQ_NoAirCargo = false;// - if true, air units will not be assigned to transport tasks;
RydHQ_NoLandCargo = false;
RydHQB_NoAirCargo = false;// - if true, air units will not be assigned to transport tasks;
RydHQB_NoLandCargo = false;
//Fronts for A and B

RydHQ_Front = false;
RydHQB_Front = false;

//Unlimited control off for A and B

RydHQ_SubAll = true;
RydHQB_SubAll = true;

//"Synchronized only" limited control mode on for B, used for adding under leaderHQB control some guerilla groups
RydHQ_SubSynchro = false;
RydHQB_SubSynchro = false;

//Six garrisoned groups for C (names set in init fields of teamleaders)
RydHQ_Garrison = [g6,g7,g8,g9,g10,g11,g12];
RydHQB_Garrison = [g1,g2,g3,g4];

RydHQ_SMed = true ;//- if true, medical support handling is on (ambulances/medevacs only, not group medic units);
RydHQ_SFuel = true ;//- if true, fuel support handling is on;
RydHQ_SAmmo = true ;//- if true, ammo support handling is on;
RydHQ_SRep = true ;//- if true, repair support handling is on;

RydHQB_SMed = true ;//- if true, medical support handling is on (ambulances/medevacs only, not group medic units);
RydHQB_SFuel = true ;//- if true, fuel support handling is on;
RydHQB_SAmmo = true ;//- if true, ammo support handling is on;
RydHQB_SRep = true ;//- if true, repair support handling is on;
//Quick method for adding under leader's control all groups of given faction present on map at start, for A i B
RydHQ_AOnly = [a1,a2,a3,a4,a5,a6];
RydHQB_AOnly = [a4,a5,a6];
RydHQ_Included = [];
RydHQB_Included = [];

    RHQ_Recon =  ["US_Delta_Force_AR_EP1","US_Delta_Force_MG_EP1","US_Delta_Force_Marksman_EP1","RU_Soldier_Marksman","US_Delta_Force_Medic_EP1","US_Delta_Force_EP1","US_Delta_Force_Assault_EP1","US_Delta_Force_M14_EP1","US_Delta_Force_Night_EP1","US_Delta_Force_SD_EP1","US_Delta_Force_TL_EP1","TK_Soldier_Sniper_EP1","TK_Soldier_SniperH_EP1","TK_Soldier_Sniper_Night_EP1","TK_Soldier_Spotter_EP1","TK_Special_Forces_MG_EP1","TK_Special_Forces_EP1","TK_Special_Forces_TL_EP1","TK_INS_Soldier_Sniper_EP1"];
        RHQ_Snipers =  ["US_Soldier_Sniper_EP1","US_Soldier_SniperH_EP1","US_Soldier_Sniper_NV_EP1","RU_Soldier_Marksman","US_Soldier_Spotter_EP1","BAF_Soldier_SniperN_MTP","BAF_Soldier_SniperH_MTP","BAF_Soldier_Sniper_MTP","BAF_Soldier_spotter_MTP","BAF_Soldier_spotterN_MTP","BAF_Soldier_SniperN_W","BAF_Soldier_SniperH_W","BAF_Soldier_Sniper_W","BAF_Soldier_spotter_W","BAF_Soldier_spotterN_W","TK_Soldier_Sniper_EP1","TK_Soldier_SniperH_EP1","TK_Soldier_Sniper_Night_EP1","TK_INS_Soldier_Sniper_EP1","Soldier_Sniper_PMC","Soldier_Sniper_KSVK_PMC","GER_Soldier_Scout_EP1"];
        RHQ_ATInf =  ["US_Soldier_AT_EP1","US_Soldier_HAT_EP1","RU_Soldier_AT","RU_Soldier_HAT","BAF_Soldier_AT_MTP","BAF_Soldier_HAT_MTP","BAF_Soldier_AT_DDPM","BAF_Soldier_HAT_DDPM","BAF_Soldier_AT_W","BAF_Soldier_HAT_W","TK_Soldier_HAT_EP1","TK_Soldier_LAT_EP1","TK_Soldier_AT_EP1","TK_INS_Soldier_AT_EP1","Soldier_AT_PMC"];
        RHQ_AAInf =  ["US_Soldier_AA_EP1","BAF_Soldier_AA_MTP","BAF_Soldier_AA_DDPM","BAF_Soldier_AA_W","TK_Soldier_AA_EP1","TK_INS_Soldier_AA_EP1","Soldier_AA_PMC"];
        RHQ_Inf =  ["US_Soldier_AA_EP1","RU_Soldier_Marksman","RU_Soldier","RU_Soldier_HAT","RU_Soldier_AT","RU_Soldier_MG","US_Soldier_AT_EP1","US_Soldier_AAT_EP1","US_Soldier_HAT_EP1","US_Soldier_AHAT_EP1","US_Soldier_AR_EP1","US_Soldier_AAR_EP1","US_Soldier_Crew_EP1","US_Soldier_Engineer_EP1","US_Soldier_GL_EP1","US_Soldier_MG_EP1","US_Soldier_AMG_EP1","US_Soldier_Marksman_EP1","US_Soldier_Medic_EP1","US_Soldier_Officer_EP1","US_Soldier_Pilot_EP1","US_Pilot_Light_EP1","US_Soldier_EP1","US_Soldier_LAT_EP1","US_Soldier_B_EP1","US_Soldier_Sniper_EP1","US_Soldier_SniperH_EP1","US_Soldier_Sniper_NV_EP1","US_Soldier_Light_EP1","US_Soldier_Spotter_EP1","US_Soldier_SL_EP1","US_Soldier_TL_EP1","BAF_Soldier_AA_MTP","BAF_Soldier_AAA_MTP","BAF_Soldier_AAT_MTP","BAF_Soldier_AHAT_MTP","BAF_Soldier_AAR_MTP","BAF_Soldier_AMG_MTP","BAF_Soldier_AT_MTP","BAF_Soldier_HAT_MTP","BAF_Soldier_AR_MTP","BAF_crewman_MTP","BAF_Soldier_EN_MTP","BAF_Soldier_GL_MTP","BAF_Soldier_FAC_MTP","BAF_Soldier_MG_MTP","BAF_Soldier_scout_MTP","BAF_Soldier_Marksman_MTP","BAF_Soldier_Medic_MTP","BAF_Soldier_Officer_MTP","BAF_Pilot_MTP","BAF_Soldier_MTP","BAF_ASoldier_MTP","BAF_Soldier_L_MTP","BAF_Soldier_N_MTP","BAF_Soldier_SL_MTP","BAF_Soldier_SniperN_MTP","BAF_Soldier_SniperH_MTP","BAF_Soldier_Sniper_MTP","BAF_Soldier_spotter_MTP","BAF_Soldier_spotterN_MTP","BAF_Soldier_TL_MTP","BAF_Soldier_AA_DDPM","BAF_Soldier_AAA_DDPM","BAF_Soldier_AAT_DDPM","BAF_Soldier_AHAT_DDPM","BAF_Soldier_AAR_DDPM","BAF_Soldier_AMG_DDPM","BAF_Soldier_AT_DDPM","BAF_Soldier_HAT_DDPM","BAF_Soldier_AR_DDPM","BAF_crewman_DDPM","BAF_Soldier_EN_DDPM","BAF_Soldier_GL_DDPM","BAF_Soldier_FAC_DDPM","BAF_Soldier_MG_DDPM","BAF_Soldier_scout_DDPM","BAF_Soldier_Marksman_DDPM","BAF_Soldier_Medic_DDPM","BAF_Soldier_Officer_DDPM","BAF_Pilot_DDPM","BAF_Soldier_DDPM","BAF_ASoldier_DDPM","BAF_Soldier_L_DDPM","BAF_Soldier_N_DDPM","BAF_Soldier_SL_DDPM","BAF_Soldier_TL_DDPM","BAF_Soldier_AA_W","BAF_Soldier_AAA_W","BAF_Soldier_AAT_W","BAF_Soldier_AHAT_W","BAF_Soldier_AAR_W","BAF_Soldier_AMG_W","BAF_Soldier_AT_W","BAF_Soldier_HAT_W","BAF_Soldier_AR_W","BAF_crewman_W","BAF_Soldier_EN_W","BAF_Soldier_GL_W","BAF_Soldier_FAC_W","BAF_Soldier_MG_W","BAF_Soldier_scout_W","BAF_Soldier_Marksman_W","BAF_Soldier_Medic_W","BAF_Soldier_Officer_W","BAF_Pilot_W","BAF_Soldier_W","BAF_ASoldier_W","BAF_Soldier_L_W","BAF_Soldier_N_W","BAF_Soldier_SL_W","BAF_Soldier_SniperN_W","BAF_Soldier_SniperH_W","BAF_Soldier_Sniper_W","BAF_Soldier_spotter_W","BAF_Soldier_spotterN_W","BAF_Soldier_TL_W","TK_Soldier_AA_EP1","TK_Soldier_AAT_EP1","TK_Soldier_AMG_EP1","TK_Soldier_HAT_EP1","TK_Soldier_AR_EP1","TK_Aziz_EP1","TK_Commander_EP1","TK_Soldier_Crew_EP1","TK_Soldier_Engineer_EP1","TK_Soldier_GL_EP1","TK_Soldier_MG_EP1","TK_Soldier_Medic_EP1","TK_Soldier_Officer_EP1","TK_Soldier_Pilot_EP1","TK_Soldier_EP1","TK_Soldier_B_EP1","TK_Soldier_LAT_EP1","TK_Soldier_AT_EP1","TK_Soldier_Sniper_EP1","TK_Soldier_SniperH_EP1","TK_Soldier_Sniper_Night_EP1","TK_Soldier_Night_1_EP1","TK_Soldier_Night_2_EP1","TK_Soldier_TWS_EP1","TK_Soldier_Spotter_EP1","TK_Soldier_SL_EP1","TK_Special_Forces_MG_EP1","TK_Special_Forces_EP1","TK_Special_Forces_TL_EP1","TK_INS_Soldier_AA_EP1","TK_INS_Soldier_AR_EP1","TK_INS_Bonesetter_EP1","TK_INS_Soldier_MG_EP1","TK_INS_Soldier_2_EP1","TK_INS_Soldier_EP1","TK_INS_Soldier_4_EP1","TK_INS_Soldier_3_EP1","TK_INS_Soldier_AAT_EP1","TK_INS_Soldier_Sniper_EP1","TK_INS_Soldier_TL_EP1","TK_INS_Warlord_EP1","TK_INS_Soldier_AT_EP1","GER_Soldier_MG_EP1","GER_Soldier_Medic_EP1","GER_Soldier_EP1","GER_Soldier_Scout_EP1","GER_Soldier_TL_EP1","Soldier_Bodyguard_AA12_PMC","Soldier_Bodyguard_M4_PMC""Soldier_Sniper_PMC","Soldier_Medic_PMC","Soldier_MG_PMC","Soldier_MG_PKM_PMC","Soldier_AT_PMC","Soldier_Engineer_PMC","Soldier_GL_M16A2_PMC","Soldier_M4A3_PMC","Soldier_PMC","Soldier_GL_PMC","Soldier_Crew_PMC","Soldier_Pilot_PMC","Soldier_Sniper_KSVK_PMC","Soldier_AA_PMC","Soldier_TL_PMC","Ry_PMC","Dixon_PMC","Poet_PMC","Reynolds_PMC","Tanny_PMC"];
        RHQ_Art =  ["M1129_MC_EP1","MLRS_DES_EP1","M252_US_EP1","M119_US_EP1","GRAD_TK_EP1","MAZ_543_SCUD_TK_EP1","2b14_82mm_TK_EP1","D30_TK_EP1","2b14_82mm_TK_INS_EP1"];
        RHQ_HArmor = ["M1A1_US_DES_EP1","M1A2_US_TUSK_MG_EP1","T72_TK_EP1","T55_TK_EP1"];
        RHQ_LArmor =  ["M1130_CV_EP1","M6_EP1","M2A2_EP1","M2A3_EP1","M1126_ICV_M2_EP1","M1126_ICV_mk19_EP1","M1135_ATGMV_EP1","M1128_MGS_EP1","BAF_FV510_D","BAF_FV510_W","BMP2_TK_EP1","BMP2_HQ_TK_EP1","BRDM2_TK_EP1","BRDM2_ATGM_TK_EP1","BTR60_TK_EP1","M113_TK_EP1","T34_TK_EP1","ZSU_TK_EP1"];
        RHQ_LarmorAT =  ["M1135_ATGMV_EP1","M1128_MGS_EP1","BMP2_TK_EP1","BMP2_CDF","BRDM2_CDF","BRDM2_ATGM_CDF","T72_CDF",  "ZSU_CDF"];
        RHQ_Cars =  ["ATV_US_EP1","HMMWV_DES_EP1","HMMWV_MK19_DES_EP1","HMMWV_TOW_DES_EP1","HMMWV_M998_crows_M2_DES_EP1","HMMWV_M998_crows_MK19_DES_EP1","HMMWV_M1151_M2_DES_EP1","HMMWV_M998A2_SOV_DES_EP1","HMMWV_Terminal_EP1","HMMWV_M1035_DES_EP1","HMMWV_Avenger_DES_EP1","M1030_US_DES_EP1","MTVR_DES_EP1","BAF_ATV_D","BAF_Jackal2_GMG_D","BAF_Jackal2_L2A1_D","BAF_Offroad_D","BAF_ATV_W","BAF_Jackal2_GMG_W","BAF_Jackal2_L2A1_W","BAF_Offroad_W","LandRover_MG_TK_EP1","LandRover_SPG9_TK_EP1","TT650_TK_EP1","SUV_TK_EP1","UAZ_Unarmed_TK_EP1","UAZ_AGS30_TK_EP1","UAZ_MG_TK_EP1","Ural_ZU23_TK_EP1","V3S_TK_EP1","V3S_Open_TK_EP1","BTR40_TK_INS_EP1","BTR40_MG_TK_INS_EP1","LandRover_MG_TK_INS_EP1","LandRover_SPG9_TK_INS_EP1","Old_bike_TK_INS_EP1","SUV_PMC","ArmoredSUV_PMC"];
        RHQ_Air =  ["A10_US_EP1","AH64D_EP1","AH6J_EP1","AH6X_EP1","Mi17_rockets_RU","C130J_US_EP1","CH_47F_EP1","MH6J_EP1","MQ9PredatorB_US_EP1","UH60M_EP1","BAF_Apache_AH1_D","CH_47F_BAF","BAF_Merlin_HC3_D","AW159_Lynx_BAF","An2_TK_EP1","L39_TK_EP1","Mi24_D_TK_EP1","Mi17_TK_EP1","Su25_TK_EP1","UH1H_TK_EP1","Ka137_PMC","Ka137_MG_PMC","Ka60_PMC","Ka60_GL_PMC"];
        RHQ_NCAir = ["AH6X_EP1","MH6J_EP1","Ka137_PMC"];
        RHQ_RAir = ["AH6J_EP1","AH6X_EP1","MQ9PredatorB_US_EP1","Ka137_PMC","Ka137_MG_PMC"];
        RHQ_Static =  ["M252_US_EP1","M119_US_EP1","M2StaticMG_US_EP1","M2HD_mini_TriPod_US_EP1","MK19_TriPod_US_EP1","TOW_TriPod_US_EP1","BAF_GMG_Tripod_D","BAF_GPMG_Minitripod_D","BAF_L2A1_Minitripod_D","BAF_L2A1_Tripod_D","BAF_GMG_Tripod_W","BAF_GPMG_Minitripod_W","BAF_L2A1_Minitripod_W","BAF_L2A1_Tripod_W","Igla_AA_pod_TK_EP1","AGS_TK_EP1","D30_TK_EP1","KORD_high_TK_EP1","KORD_TK_EP1","Metis_TK_EP1","2b14_82mm_TK_EP1","ZU23_TK_EP1","AGS_TK_INS_EP1","D30_TK_INS_EP1","DSHKM_TK_INS_EP1","DSHkM_Mini_TriPod_TK_INS_EP1","2b14_82mm_TK_INS_EP1","SPG9_TK_INS_EP1","ZU23_TK_INS_EP1"];
        RHQ_StaticAA = ["Stinger_Pod_US_EP1","Igla_AA_pod_TK_EP1","ZU23_TK_EP1","ZU23_TK_INS_EP1"];
        RHQ_StaticAT = ["TOW_TriPod_US_EP1","Metis_TK_EP1","SPG9_TK_INS_EP1"];
        RHQ_Support =  ["HMMWV_Ambulance_DES_EP1","MtvrReammo_DES_EP1","MtvrRefuel_DES_EP1","MtvrRepair_DES_EP1","MtvrSupply_DES_EP1","M1133_MEV_EP1","MtvrSalvage_DES_EP1","UH60M_MEV_EP1","M113Ambul_TK_EP1","UralSupply_TK_EP1","UralSalvage_TK_EP1","UralReammo_TK_EP1","UralRefuel_TK_EP1","UralRepair_TK_EP1"];
        RHQ_Med = ["HMMWV_Ambulance_DES_EP1","M1133_MEV_EP1","UH60M_MEV_EP1","M113Ambul_TK_EP1"];
        RHQ_Ammo = ["MtvrReammo_DES_EP1","UralReammo_TK_EP1"];
        RHQ_Fuel = ["MtvrRefuel_DES_EP1","UralRefuel_TK_EP1"];
        RHQ_Rep = ["MtvrRepair_DES_EP1","UralRepair_TK_EP1"];
        RHQ_Cargo =  ["M1126_ICV_M2_EP1","UAZ_CDF","UAZ_AGS30_CDF","UAZ_MG_CDF","Ural_CDF",  "UralOpen_CDF","Ural_ZU23_CDF","M1126_ICV_mk19_EP1","M6_EP1","M2A2_EP1","M2A3_EP1","BAF_Offroad_D","BAF_Offroad_W","BAF_FV510_D","BAF_FV510_W","BTR60_TK_EP1","M113_TK_EP1","BMP2_TK_EP1","V3S_TK_EP1","V3S_Open_TK_EP1","SUV_TK_EP1","UAZ_Unarmed_TK_EP1","BTR40_TK_INS_EP1","CH_47F_EP1","UH60M_EP1","CH_47F_BAF","BAF_Merlin_HC3_D","ArmoredSUV_PMC","Ka60_PMC","Ka60_GL_PMC"];
        RHQ_NCCargo =  ["MH6J_EP1","HMMWV_DES_EP1","MTVR_DES_EP1","SUV_TK_EP1","UAZ_Unarmed_TK_EP1","V3S_TK_EP1","V3S_Open_TK_EP1","SUV_PMC"];
        RHQ_Crew =  ["US_Soldier_Crew_EP1","US_Soldier_Pilot_EP1","US_Pilot_Light_EP1","BAF_crewman_MTP","BAF_Pilot_MTP","BAF_crewman_DDPM","BAF_Pilot_DDPM","BAF_crewman_W","BAF_Pilot_W","TK_Soldier_Crew_EP1","TK_Soldier_Pilot_EP1","Soldier_Crew_PMC","Soldier_Pilot_PMC"];
//Player's unit excluded

//RydHQ_ExcludedG = [P1];

//This only for script version:

nul = [] execVM "RydHQInit.sqf";

Meltedping

Does that init include all the units from OA or is there addons in there as well?

---------- Post added at 04:12 PM ---------- Previous post was at 04:04 PM ----------

Is anyone using AI tactic scripts with HAC? I've been using ASR, but unless I'm doing something wrong (not sure if I need to do anything in the mission to enable ASR), I haven't noticed it doing anything. Before I found HAC, I was using Group Link 4, but it's mainly concerned with the player's interaction with enemy AI, so the AI's activity without the players involvement is limited. HAC seems to cover most of what I want the AI to do, other than micro manage squads, but one thing I'd like to see is the use of flares (at least-off by default).

My ultimate goal (what I'm working on now) is a coop mission that simulates a large-scale war (or at least what ArmA is capable). Can anyone point me in the right direction?

Edited by Lucidity

Share this post


Link to post
Share on other sites

HAC shouldn't interefere with addons, that do not mess with waypoints. Although I do not know much about how ASR code works. There was same problems with ASR without HETMAN? What specifically ASR should to do, and does it without HAC, but do not with it?

What exactly use of flares you mean? Isn't such usage a part of micro management AI level?

Share this post


Link to post
Share on other sites
HAC shouldn't interefere with addons, that do not mess with waypoints. Although I do not know much about how ASR code works. There was same problems with ASR without HETMAN? What specifically ASR should to do, and does it without HAC, but do not with it?

What exactly use of flares you mean? Isn't such usage a part of micro management AI level?

I apologize for not being clear. ASR isn't interfering with HAC (or conversely), I was questioning it's active involvement, but I realized yesterday that HAC doesn't use OA units by default, so once I added the proper arrays of OA units, suddenly, everything started working and I saw a drop in framerate (suggesting the script has more to work with now). The units ran to a nearby supply truck, then ran back to formation, so I'm guessing they grabbed some stuff, which is a component of ASR.

As for flares, I suppose I'm asking for something that you designed the script not to do, but the function of smoke grenades for retreating units is similar in nature to the use of flares. I would really like to see units fire flares into the sky (at night) when they either detect and enemy or go into battle. I'm sure some people won't want this, so maybe it could be something set to "off" or "false" by default. Group Link 4 does this and it's really annoying, but it adds a sense of realism that illuminates the battlefield. It would need to be configurable so recon units do not automatically fire flares and give away their position. I don't know, maybe it's a bad idea.

By the way, thank you for creating and maintaining HAC. Your script is one of the few reasons that pulled me back into ArmA from a long hiatus out of OFP (look at my join date). I've been looking for a decent script that controls the AI, and your's does a good job. Now I just need one for tactics. Thank you again. I cannot show the amount of appreciation I have for your work.

Edited by Lucidity

Share this post


Link to post
Share on other sites

Hmm. I understand. So, I will think about flares used that way, and we'll se, if I'll be able to do something about that - idea is good in my opinion, thanks for it.

Share this post


Link to post
Share on other sites

I understand that including flares, like smoke grenades, does steer HAC in the direction of micromanaging AI behavior, but there's really no other scripts that do that right now, at least, none that are up to date and exclusively concerned with total AI behavior. Maintaining HAC's compatibility is important, but I don't think it is necessarily an issue because the biggest problem is other scripts, so I'm willing to bet that most people use HAC without many unrelated addons.

I'd love to use HAC with GL4, but the primary function of GL4 is reinforcements and tactical movement, which means waypoint management, which will likely conflict with HAC. Plus SNKMAN aparently stopped working on GL4 in 2010.

I use ACE with everything, so that's my only compatibility concern beyond CBA. My point is that I respect your desire (Rydygier) to maintain the vanilla aspect of ArmA's base configuration, but I think HAC is highly dynamic and already overreaching in a beneficial way. I think AI micromanagement in HAC will be welcomed by the community, espeically this late in ArmA 2's life, but maybe options for HAC's tactical application can be turned off by default so the script remains true to it's intention to be unobtrusive and largely script-based (which I apprecate one less addon).

Edited by Lucidity

Share this post


Link to post
Share on other sites

Thanks to Lucidity was nailed true and genuine syntax bug in combining groups procedure (so affects only this rare situation). This will be of course repaired in next wip, but if someone do not want to wait, shouldn't activate this feature (is off by default) or, if uses script version, can repair code for each used Leader on his own - this is trivial. Broken is 111 line of HQReset.sqf:

_ex = (RydHQ_Exhausted - _x);

should be:

_ex = (RydHQ_Exhausted - [_x]);

...or de-pbo addon version, do same correction and re-pbo.

Edited by Rydygier

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×