Jump to content
Rydygier

HETMAN - Artificial Leader

Recommended Posts

Is there anyway to reveal units at the beginning of the battle (to simulate previous recon) without having them always known?

Share this post


Link to post
Share on other sites

Well, one way would be put a unit to be revealed in the actual FOV of some Leader's subordinate unit (say an UAV). Less immersive way would be using reveal command. 

 

For example:

 

	{
	LeaderHQ reveal _x
	}
foreach allUnits;

Will reveal all the units to the LeaderHQ. Note however, units beyond objects rendering distance set in game options will be "forgotten back" immediately after. 

Share this post


Link to post
Share on other sites

Right, but he will have previous knowledge and will send appropriate units to attack? Correct?

 

Edit, I don't think that's the case.

 

And I tried using the UAV, but I don't think the UAV is picking anything up. Commander just keeps resending them to recon.

Share this post


Link to post
Share on other sites

Put yourself as player into LeaderHQ shoes and monitor the map, you'll be sure then, what LeaderHQ knows about other/hostile units. 

 

Reveal code best to apply after Hetman start, although gained knowledge should decay slowly, if not out of rendering range, so IMO not necessary. No time now to go more into details, sorry. 

Share this post


Link to post
Share on other sites
RydHQ_Wait = 2;
RydHQ_Debug = true;
RydHQ_GroupMarks = [west,resistance,0];
RydHQB_Order = "DEFEND";
RydHQ_FirstToFight = [Main1];
RydHQ_NoRec = 1000;
RydHQB_NoRec = 1000;
RydHQ_PathFinding = 400;
RydxHQ_SynchroAttack = true;
RydHQ_CargoOnly = [h1,h2,h3,h4,h5];
RydHQ_NoRecon = [Main1,g1,g2,g3,g4,g5,g6,g7,g8,g9];
RydHQ_DynForm = true;
RydHQB_DynForm = true;
RydxHQ_NEAware = 1000;
RydHQ_AirEvac = true;
RydHQ_ResetTime = 120;
RydHQB_ResetTime = 120;
RydHQ_Personality = "GENIUS";
RydHQB_Personality = "GENIUS";
nul = [] execVM "RydHQInit.sqf";
sleep 10;
nul = [] execVM "reveal.sqf";

Am I missing something here? HAL refuses to actually change the personality trait of the general. Is there an error in my code?

Share this post


Link to post
Share on other sites
4 hours ago, acoustic said:

RydHQ_Wait = 2;
RydHQ_Debug = true;
RydHQ_GroupMarks = [west,resistance,0];
RydHQB_Order = "DEFEND";
RydHQ_FirstToFight = [Main1];
RydHQ_NoRec = 1000;
RydHQB_NoRec = 1000;
RydHQ_PathFinding = 400;
RydxHQ_SynchroAttack = true;
RydHQ_CargoOnly = [h1,h2,h3,h4,h5];
RydHQ_NoRecon = [Main1,g1,g2,g3,g4,g5,g6,g7,g8,g9];
RydHQ_DynForm = true;
RydHQB_DynForm = true;
RydxHQ_NEAware = 1000;
RydHQ_AirEvac = true;
RydHQ_ResetTime = 120;
RydHQB_ResetTime = 120;
RydHQ_Personality = "GENIUS";
RydHQB_Personality = "GENIUS";
nul = [] execVM "RydHQInit.sqf";
sleep 10;
nul = [] execVM "reveal.sqf";

Am I missing something here? HAL refuses to actually change the personality trait of the general. Is there an error in my code?

 

no error in your code, you are missing 2 commands. Add this:

 


RydHQ_MAtt = true;
RydHQB_MAtt = true;

 

Share this post


Link to post
Share on other sites

So, I have 4 chinooks with 2 squads inside the cargo. For whatever reason, whenever HAL assigns them attack missions. They will fly 500 meter before theyre suppose to land, and just hover in the air. Some choppers will land, but its completely random. Great landing zones, have messed with different locations as well. Had this issue with the cargo system awhile back. Any thoughts?

Share this post


Link to post
Share on other sites

Likely another AI quirk, I would guess. Aerial cargo was not so reliable from the beginning in A2 times because of weird choppers behavior. A3 apparently continues these traditions worthily. Even during simple SAD waypoint execution helicopter can sometimes stuck in static hover indefinitely, unless some stimulus will push it out from that stupor, I saw this elsewhere. This may be similar thing. Perhaps triggered by some certain factor like known enemy presence or whatever. I would recommend land transportation instead, but land vehicles driving AI isn't reliable too AFAIK. Arma, in all its greatness, unbelieveably sucks at times. Also perhaps the mixture of used by HAL for aerial cargo missions group behaviour, combat mode and kind of waypoint, that made them land properly earlier isn't that reliable anymore due to some changes in vanilla AI. In any case, currently no time for any tests. 

Share this post


Link to post
Share on other sites
23 hours ago, acoustic said:

So, I have 4 chinooks with 2 squads inside the cargo.

A few thoughts. First, I figured out that if you put the squads in the Chinooks by dragging them through the editor, then vanilla AI squad leaders fall in love with that chopper. If you try to eject them with scripts, the leader tells them to get back in, and the chopper hovers while they all reload.  Doing the A2 way of this moveincargo chin1; seemed to fix that.

 

Next, there are also ways that the command unassignVehicle has to be used, to get a certain effect. I'm not sure how HAL cargo system handles this. The coolest experience for me in HAL was when I saw troops get airlifted in onto a roof during a heavy urban battle. Would love to be able to repeat that.

Share this post


Link to post
Share on other sites

Ah, if these groups was anyhow bounded with chinooks outside HAL's control, then behavior is unknown, not recommended for HAL to bound infantry with aerial units (last time tested in A2, but if infantry back then was actually grouped with a chopper, chopper was following TL like a dog on a walk IIRC). Better leave infantry and helicopter standalone, let HAL decide if/when/to whom aerial cargo will be temporarily assigned.

 

As for how script-wise embark/disembark works in HAL's cargo (simplified, it's quite complex in fact): for landing it is used heli land 'GET IN'/heli land 'GET OUT' in the move waypoint completion code, with optional temporarily spawned invisible helipad as helper (LZ found using isFlatEmpty search loop), for embarking infantry gets "GETIN" waypoint attached to the chopper (paired with assignAsCargo), then for disembark is used orderGetIn false, allowGetIn false and in some special situation unAssignVehicle or leaveVehicle. 

Share this post


Link to post
Share on other sites

I have at last got around to doing somework on my HETMAN mission.

 

Firstly I have a couple of bug reports for the 1.23 WIP version. When HETMAN calls for artillery the following errors appear:

 

Warning Message: Radio message HAC_EnemySpot3 not found
Warning Message: Radio message v2HAC_ArtAss4 not found
Warning Message: Radio message HAC_ArtFire4 not found

 

Secondly I am having trouble getting the MLRS from the CUP mod working, the default Arma 3 Sandstorm MLRS is working fine. I have a scenarios where snipers can see tanks across a bay. With the default MLRS after a few moments HETMAN calls for artillery support.

 

I have done the following testing and trouble shooting. I guess I am missing something.

 

1) I have tested the CUP MLRS using the normal support provider and the doArtilleryFire script command. Both are working as expected.

 

2) The autofiler does a good job. It places the MLRS into the RHQ_Art array and RydHQ_Add_OtherArty as [[["cup_b_m270_he_usa"],["CUP_12Rnd_MLRS_HE","","","",""]]]

 

3) I have tried to manually as it to the RHQ_Art and RHQ_RocketArty arrays. I have also set it RydHQ_Add_OtherArty with lowercase class names (see below) and disabled the autofiler to prevent it from re-adding with uppercase classnames.

 

RydHQ_Add_OtherArty = [[["cup_b_m270_he_usa"],["cup_12rnd_mlrs_he","","","",""]]];

 

As I said I must be missing something. Any help appreciated and thanks again for this awesome mod.

Mack

Share this post


Link to post
Share on other sites

I figured it out. This line will make it work:

 

RydHQ_Add_OtherArty = [[["cup_b_m270_he_usa"],["CUP_12Rnd_MLRS_HE","CUP_12Rnd_MLRS_HE","CUP_12Rnd_MLRS_HE","",""]]];

 

 

Share this post


Link to post
Share on other sites

Just discovered this mod, curious to see how it works, but I have a couple of questions:

Firstly, Does Hetman work in Zeus, and secondly if I was running it on a server, would the GM only need the mod or would everyone on the server need to have it?

Share this post


Link to post
Share on other sites

AFAIK Zeus shouldn't interfere, while, AFAIK again, stuff placed via Zeus should be picked up by Hetman. Hetman should be run server side, once only. 

Share this post


Link to post
Share on other sites

Hello, Rydygier! i'm a big fan of Hetman, i'm using since Arma 2, this Addon it's the only thing that keeps me using Arma 3 editor. 
I'm using some variables to customize Leader behavior:

No Recon
Rapid Capt
Berserk
Rush

They are working very well, as expected, but when I try to use the variable "ForceAAO" and "AAO", nothing happens differently.
I wanted to make Leader (A and B) not follow an order to capture the goals, and to make the Leader launch attacks on all primary goals at the same time, or at least not follow the order of Obj1, 2, etc...

How do I do that?

Share this post


Link to post
Share on other sites

Hello. 

 

I tried to prepare some demo for you (link below), but noted, not all is working, as should indeed, and AAO will require some debugging (no idea, when it could happen, I hate to know about any mess in my scripts, but busy with RL for now). Anyway, best, I was able to do with AAO is forcing to take two objectves at once, never more. Also, CaptLimit, which I tried, seems to break AAO (disabling it somehow) and also seems not to work either (even, when set to 1, still 3 teams are sent) - another thing to investigate someday. Nevertheless try below demo (for addon version of HAL, otherwise put HAL scripts into mission folder and activate execVM line in init.sqf):

 

https://www.dropbox.com/s/ta9mew4xg8j5n5s/HAL122_AAO_test.Altis.zip?dl=0

 

Init.sqf looks like this:

 

Spoiler

RydHQ_Wait = 2;

RydHQ_Debug = true;

RydHQ_DebugII = true;

RydBBa_SimpleDebug = true;
RydBBb_SimpleDebug = true;

RydHQ_ChatDebug = true;
RydHQ_GroupMarks = [west,east,resistance,civilian];

RydHQ_NoRec = 10000;
RydHQ_RapidCapt = 10000;
RydHQ_AAO = true;
RydHQ_ForceAAO = true;

RydHQ_Berserk = true;
RydHQ_Rush = true;

RydHQ_MAtt = true;
RydHQ_Circumspection = 0;

_positions = 
	[
	(markerPos "objA"),
	(markerPos "objB"),
	(markerPos "objC"),
	(markerPos "objD")
	];
	
_objectives = 
	[
	RydHQ_Obj1,
	RydHQ_Obj2,
	RydHQ_Obj3,
	RydHQ_Obj4
	];
	
for "_i" from 0 to 3 do
	{
	_ix = floor (random (count _positions));
	_pos = _positions select _ix;
	_pos set [2,0];
	_positions set [_ix,0];
	_positions = _positions - [0];
	(_objectives select _i) setPosATL _pos;
	};

//nul = [] execVM "RydHQInit.sqf";

 

 

Note additional simple code added just before inactive execVM line. It randomizes positions of objectives basing on markers positions placed in the editor. Objectives are randomly distributed between points A, B, C and D. There may be more elegant way, but this should work good enough. 

 

In the summary, here you have taking of two objectives at once, while objectives positions are randomly shuffled. 

  • Like 1

Share this post


Link to post
Share on other sites
On 2017-6-9 at 8:10 PM, Rydygier said:

AFAIK Zeus shouldn't interfere, while, AFAIK again, stuff placed via Zeus should be picked up by Hetman. Hetman should be run server side, once only. 

 

Cheers.

Share this post


Link to post
Share on other sites

With all this talk about custom artillery, I don't suppose anyone has gotten IFA3's Katyusha working? I can't seem to wrap my head around getting it to work.

Share this post


Link to post
Share on other sites

Ok. I just seem completely incapable of getting any custom artillery to work.

 

I was trying to get the Zamak MRLS from "Arma3 Aegis" to work, but no matter what I try HAL keep sending it on recon, and search and destroy missions instead of doing it's job.

 

What am I messing up here?

RHQs_Cars = ["i_truck_02_mlrs_f"];

RHQ_RocketArty = ["i_truck_02_mlrs_f"];

RHQ_Art = ["i_truck_02_mlrs_f"];

RydHQ_Add_OtherArty = [[["i_truck_02_mlrs_f"],["40Rnd_122mm_rockets","40Rnd_122mm_rockets","40Rnd_122mm_rockets","",""]]
];

 

Share this post


Link to post
Share on other sites

I'm not sure, how code will react, if you put class into both: RHQ_RocketArty and RydHQ_Add_OtherArty, but my guess is, it will ignore "other arty" code, will treat vehicle as vanilla magazines user ("12Rnd_230mm_rockets"), so will not recognize custom magazines, ergo no booms. Maybe try removing RHQ_RocketArty line, it is for rocket arty, that uses vanilla magazines. For any arty using custom magazines there should be used "other arty" only. 

 

If not the case, unit tasked with recon or SAD possibly will not do anything else, so perhaps that's the problem. If so, try:

 

RHQ_Static = ["i_truck_02_mlrs_f"];

 

So HAL should treat these vehicles as static weaponry (thus no orders requiring movement). Also there is "RydHQ_No(Recon/Attack/Flank/Def/Cargo)" variables family as an alternative. 

  • Like 1

Share this post


Link to post
Share on other sites
1 hour ago, Rydygier said:

Well, unit tasked with recon or SAD will not do anything else, so perhaps that's the problem.Perhaps try:

 

RHQ_Static = ["i_truck_02_mlrs_f"];

 

So HAL should treat these vehicles as static weaponry (thus no orders requiring movement). Also there is "RydHQ_No(Recon/Attack/Flank/Def/Cargo)" variables family as an alternative. 

Static does make it hold still. But "RydHQ_No(Recon/Attack/Flank/Def/Cargo)" does not seem to work. Still went off on search and destroy immediately.

Share this post


Link to post
Share on other sites

Primarily try:

 

2 hours ago, Rydygier said:

removing RHQ_RocketArty line

 

BTW how you are using RydHQ_NoAttack? Is for sure proper group put inside?

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

×