Jump to content
Rydygier

HETMAN - Artificial Leader

Recommended Posts

I have been able to make an amazing mission on Altis with DAC, HETMAN and zbecache combined. I placed different types of empty vehicles (from Quadbikes to transport trucks) near my spawn point where some of my faction mates also spawned via Arma 3's in-built spawn AI. HAL is giving orders fine and spawned Ais are following them too. The only catch are those empty vehicles. The AI isnt using them like in HETMAN: War Stories. Till now I have only got recon missions and the other faction guys "Observe" enemies as per the feed. Will they use nearby vehicles only in case if they want to engage? or they use it for patrol also?

 

Thanks again Rydy.. !!

Share this post


Link to post
Share on other sites

Some clarification about transportation system in Hetman then:

 

1. Hetman may issue to given group several types of orders, depending on that group and situation. 

 

2. Some of those types allow external transportation usage, others - not. Check manual for details (5.6).

 

3. If given order doesn't allow external transportation or target location is too close, group will move on foot or using own, default vehicle. 

 

4. Otherwise, if group hasn't own vehicle, external transportation may be assigned. 

 

5. First, value of RydHQ_CargoFind init variable is checked. If higher, than 0, code will look for external transportation for the group. By default it is 0 though, so transportation is by default turned off.  Check manual for details on init variables (chapter 7) - lots of this stuff. 

 

6. Code looking for transportation does two things: First, searches area in radius (meters) defined by RydHQ_CargoFind around the group for empty, unassigned vehicles with enough fuel and not damaged too much with room for all the group. If such vehicle is found - it is permanently assigned to that group. Second: if suitable empty vehicle not found, looks for available cargo groups - groups consisting vehicle of certain type, able to take all the group not busy right now, not too far etc. If there is such group, it may be temporarily, for this single movement, assigned to relocate given passenger group towards its target area, then such cargo group returns and is again available for such service for other groups. 

  • Like 1

Share this post


Link to post
Share on other sites

Rydygier my friend, you are blessed with amazing communication skills. Masha Allah.

You never leave any stone unturned in explaining. Now I will be maintaining a separate word file to put your tips into for reference. :)

Thank you again.

Share this post


Link to post
Share on other sites

Ok all the entries under "Config Variable" are manipulate'able' as I can see. I use the script version. So when I choose some variables out of the huge list to adjust to my tastes, I add its line in my init.sqf like so (like the manual says):

RydHQ_Debug = true;
RydHQ_CargoFind = 0;
..... and as many I wish to add?

Like we discussed earlier, I am using a radio trigger to execute HAL first time in the mission, so will adding these scripts in init.sqf cause them to get confused that, "Hey, the main HAL isnt initiated yet, what are we gonna do without him"?, or can i just copy paste them at the end of the same trigger's act field after the HAL init line separared by ";" ?

Manual says putting RydHQ_CargoFind = 1 (if not the distance) will turn transportation system on but without searching active vehicles. Will this be achieved by calling transportation from back base with an idle AI truck or heli? Ideally I will be very happy with transportation from Base being arranged also apart from normal find nearby vehicles :)

P.S. I do not have an init.sqf yet as my missions doesnt require till now.

Share this post


Link to post
Share on other sites

 

 

..... and as many I wish to add?

Yes. Of course given in maual values are default, change them as you want. Also you may add them wherever you want, one rule only: better/safer, if all are defined before HAL execVM. Even if execVM you have in the radio trigger, all init variables you may put in the init.sqf - no problem. Or in the same trigger, before execVM. Or in the init field of some unit... Etc. 

 

 

 

Manual says putting RydHQ_CargoFind = 1 (if not the distance) will turn transportation system on but without searching active vehicles. Will this be achieved by calling transportation from back base with an idle AI truck or heli? Ideally I will be very happy with transportation from Base being arranged also apart from normal find nearby vehicles

 

CargoFind tells the code, in which radius in meters look for empty vehicles. Also, if set to 0 or below, it turns off whole transportation (so it acts like an on/off switch AND radius adjustement in one). Setting it to 1 makes transportation active, but with tiny radius, thus effectively empty vehicles aren't found, while cargo transport from the base may be assigned. If you want this way - set to 1 or another tiny value. Otherwise - set here bigger radius, that would give a chance to find some empty vehicle near the group, eg. 100 meters - then you have both, empty vehicles search and cargo from the base. 

 

 

 

P.S. I do not have an init.sqf yet as my missions doesnt require till now.

 

 

It's optional, yet recommended, because of convenience and clear view on the code. When needed - just create text file in your mission folder, and rename. May be edited with notepad or notepad++ etc. as normal text file.

Share this post


Link to post
Share on other sites

Yeah you told me to put everything "before" HAL. Sorry I asked again..

And Thank you

Now It looks like a great mission Al Hamdolillah ^^..Hetman gives you the joy of playing with "human-like" commander. Thoroughly impressed and will refer to everyone.

I am honestly not missing wasteland or battle royale :D

Share this post


Link to post
Share on other sites

Hey Rydy,

How to ask HAL for support? Like transport repair etc? AIs can order. But how can I? I have put enough support units.

And also how to enable the radio comms to show on map with the unit who speaks it? Like in H:WS you can see which unit said what, on map. Very convenient to find out potential threat areas. :)

Share this post


Link to post
Share on other sites

Leader assigns any kind of support (logistic, arty, cargo) basing solely on his own judgement. It works same way for AI and player-controlled groups, no difference. You'll get suport, when Leader decide, he can and should send it to you, till then you, as a simple soldier, can only complain and undermine the competence of your HQ :) . (support call is silently assumed)

 

Radio comms on the map - quoting manual:

 

 

RydHQ_ChatDebug = false – if true, for each radio chatter message its sender’s position will be temporarily (30 seconds) marked by map marker with sent sentence. Shape and color of this marker depends on kind of the message. Thanks to this player will know, from where all radio communications come; 

  • Like 1

Share this post


Link to post
Share on other sites

Leader assigns any kind of support (logistic, arty, cargo) basing solely on his own judgement. It works same way for AI and player-controlled groups, no difference. You'll get suport, when Leader decide, he can and should send it to you, till then you, as a simple soldier, can only complain and undermine the competence of your HQ :) . (support call is silently assumed)

 

Radio comms on the map - quoting manual:

Like always, Thank you..

Share this post


Link to post
Share on other sites

Don't know if this question been asked but HAL conflict with Headless client? 

Share this post


Link to post
Share on other sites

Don't know if this question been asked but HAL conflict with Headless client? 

Nope. Just spawn HAL under the HC client

Share this post


Link to post
Share on other sites

Not yet. I had no time for Arma at all last half of year. It will change, rather sooner than later, but can't tell how long status quo will last. 

Share this post


Link to post
Share on other sites

Is there a way to make Custom Objective pre-owned by Big Boss? 

I use this this setVariable ["AreaValue",(positive integer)]; but it shows un-owned.

Share this post


Link to post
Share on other sites

Area value is used for setting... value of the area (how badly BBs would like to own it). :) Not who owns it. 

 

What you ask should be possible for objectives manually added that way:

 

 

RydBBa_Str = [] – contains additional strategic areas for Big Boss “A†in form [[ATL position1,number1,boolean1], [ATL position2,number2,boolean2],…], where first value means position ([x,y,0]) of strategic area, second means how valuable area is (usual values are 1 (eg village) to 10 (capital city), but may be greater, if needed) and third value – status: if is currently considered as taken by “A†Big Boss’, or not. Values may be changed, if occurs fusion of nearby strategic objectives;

 

RydBBb_Str = [] – same for Big Boss “Bâ€;

 

(see the third, boolean element in each objective's array).

 

Second way is by initial locating troops controlled by given BB side very close to the objective (< 500 IIRC), you want to have pre-owned, and no enemies close (same proximity treshold). Also all objectives closer to the calculated "army center" than 1000 meters without enemies near should be initially set as taken. And those located generally "behind" BB's front line if closer, than 5000 from "army center". 

Share this post


Link to post
Share on other sites

Thanks.

Something, could it be hetman is having problem with air cav type forces? Basically only infantry and helicopters, hetman don't use them on attack, even after 1 hour of 4x acceleration(exception for combat helicopter).

Share this post


Link to post
Share on other sites

Usage of aerial transport depends on many factors, explained more, than once in this thread. :) Maybe these factors explain also your case. It worked when I tried last time, but that was several months ago. Since then - no time for playing Arma, not mentioning scripting etc. 

Share this post


Link to post
Share on other sites

Would the potential lack of LZ make so it do not use those? I'm using FSF's N'Ziwasogo, so lots of Jungle and urban.

The thing is that the infantry has helicopter part of its group, so no need to find one, more surprising, when they are sent in defensive mission, every group is scrambled to the task.

Yet in attack only the attack helicopters.

Then here is a new question. Is it better to have helicopter being independent groups from the infantry?

Share this post


Link to post
Share on other sites

No place to land of course will cause troubles (code searches for empty and flat area around destination, but only in certain radius), possibly including crashes on trees, but, unless I forgot something, shouldn't cancel air cargo. Of course there will be no air cargo, if chopper has already attached own infantry to it - no place for others, that could be trasported. Air cargo in HAL bases on choppers not grouped with infantry, that need transportation. In fact, I don't know, maybe infantry grouped with a chopper works somehow in Arma (IIRC however not so well), but is not recommended in Hetman. It's certainly better to keep helicopters NOT grouped with anything else. 

Share this post


Link to post
Share on other sites

Ok, went and tried many variation of grouping, vehicles, init.sqf cfg, with/without BB and etc.

 

HETMAN still ignores the transport helicopters (tried Vanilla ones, RHS ones, and from other packs, empty, crewed, empty but crewed by script), and instead it sends the infantry on a 6Km+ walk... And the helicopter by themselves even...

 

Is this intended? (Highly doubt it)

Any leads?

 

 

Edit : As I wrote this, some helicopter got used... Tho it is highly inconsistent as some helicopter with the same "setup" of grouping and such were sent empty to the field for the pilot to dismount on arrival  :huh:

 

Edit 2: Ok, got get HETMAN make use of those helicopter (somehow),

-If I set the helicopter solo in his own group, it's never transporting anyone, and receive Air Attack orders (HETMAN seems to use it as a combat helicopter/ When it doesn't, the pilot dismount of arrival).

-If the helicopter his part of the group, its transporting its unit, but the pilot dismount with the infantry (?!?!?!)

-If the helicopter is empty, the infantry ignores it and go for a 6Km walk... (Note that there is no other empty vehicles beside those helicopter for about 10Km away)

Edit: 3:

-If the helicopter is crewed by default (not empty one crewed by script) then it is being use as it should.

 

I think that the problem seems to be linked to the fact that I crew my helicopters using scripts (by crewed I mean the pilot). Not sure if it is the reason, but this looks like a lead at least.

 

I'm gonna stop now, the game keeps contradicting my words every time...  :wacko:

I think I'm getting Arma'ed big time...  <_<

Share this post


Link to post
Share on other sites

:D

 

All right, I made simple, pure vanilla Altis demo showing in "laboratory circumstancies", how air transportation is supposed to work. You may try watching it as the Leader, how AI performs, as subordinate in the Fire Team following TL, as TL, where you have to order embark/disembark the chopper manually, or even as heli pilot tasked with air cargo mission. Theoretically all cases should work. Note however, air cargo since Hetman beginning in A2 times was kinda glitchy depending on current game version/vanilla AI state, I never 100% trusted it (that's why external cargo transportation is disabled by default). Once per several tries something may go wrong, depending on current A3's AI state, which I haven't time to test. In this mission, when I was an infantry subordinate, at first TL didn't issued "get in" order which messed the procerdure. Second time all was OK. Same, OK, was with me as a spectator and TL. Not tested as a pilot. Check also how it looks on the map - added some markers for better insight. 

 

The intended course of event is: HAL wakes up, issues to the infantry team capturing order in the northern corner of the salt lake, then assigns heli to take infantry there, because it's farther, than 1000 and all other conditions met. Infantry awaits till the chopper come, when it is low, infantry should embark the chopper, then chopper takes off toward infantry's capturing order destination, lands there, awaits, till infantry disembark, then RTB, while infantry perform capuring SAD etc. 

 

Air Cargo demo (HAL 1.22, all scripts inside, so do not use HAL addon version for this)

 

In general, if this isn't working at all for you in your mission, the cause must be something, that differs this demo and yours setup. Note also init.sqf content:

RydHQ_Wait = 2;//smaller delay before HAL initialization

RydHQ_Debug = true;
RydHQ_DebugII = true;
RydHQ_ChatDebug = true;
RydxHQ_AIChatDensity = 100;
RydHQ_GroupMarks = [west,0];//all these to show some helpful markers and notifications

RydHQ_CargoFind = 1;//enabling cargo with minimal radius for empty vehicle search (we don't need to search for empty vehs, just any positive radius value is required to enable cargo transport feature)
RydHQ_Rush = true;//to make them move faster, probably changes nothing in this demo

RydHQ_NoRec = 10000;//ignore recon stage (no air cargo for recon missions, so we don't want them here)
RydHQ_RapidCapt = 10000;//no catious delay before first capturing missions (air cargo posible for this mission, so we want it ASAP)

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

Share this post


Link to post
Share on other sites

One thing more. Sometimes cargo will be not assigned, because Leader prefers to use possible air transportation for other kind of mission, so it is busy. To avoid that you may use some tricks in the init.sqf:

 

 

RydHQ_NoRecon = [] - groups whose names are in this array will be not used only for recon missions;

 

RydHQ_NoAttack = [] - groups whose names are in this array will be not used only for attack missions;

 

 

So for example in editor, heli's init field define some group name for it, like: G1 = group this; then put G1 into above arrays, as is, without any "":

 

RydHQ_NoRecon = [G1]; 

RydHQ_NoAttack = [G1]; 

 

Alternative trick involves manual RHQ editing and will exclude all vehicles of chosen class from combat missions:

 

 

RHQ_NCAir – all unarmed helicopters and planes; note, that all classes included here should be also included to Air category; 

 

RHQ_NCCargo â€“ all unarmed vehicles able to perform cargo missions; 

 

You may put a classname of the heli, you want to keep out of combat missions in one of or both above RHQ arrays (can't recall, if have to be in both or only in one of them) in the init.sqf like this:

 

RHQ_NCAir = ["className_of_supposed_cargo_heli"];

RHQ_NCCargo  = ["className_of_supposed_cargo_heli"];

 

If all is OK with this in the init.sqf HAL should consider all helicopters/vehs of included class as unarmed cargo and unarmed aerial asset, even, if it has some weaponry on board. Of course it is assumed, heli is alone in the own group, without any infantry attached except default crew (regular, armed infantry classes in the group will make the group for HAL an armed infantry group, and HAL will use such group as regular infantry). 

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

×