Jump to content
Rydygier

HETMAN - Artificial Commander

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

63 members have voted

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

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


Recommended Posts

Just found and removed another small bug, that affected only Leader A (not calculated danger factor with all consequences - not working dynamic formations feature, dynamic withdrawing, possible errors in defensive mode...).

So 1.42 released.

Edited by Rydygier

Share this post


Link to post
Share on other sites
Really nice Ryd,

Does anyone know how to incorporate DAC? just a basic setup using the simple HAC option, i remember seeing something about it earlier in this thread...or is it as simple as delaying HAC until DAC has done its thing? or is it even possible?

the DAC release code is not as well documented as it could be. I used a variation of this:

http://forums.bistudio.com/showthread.php?112745-DAC-Custom-release-amp-control-script-(SUITE)

So basically you set up your DAC spawn, set a trigger to exec the release script after, say, 120 secs, then Hetman will take over. Using a waituntil before Hetman starts scanning would be even cleaner, but I have tended not to bother.

Share this post


Link to post
Share on other sites

Think I found out what the problem was.. was an idiot and didn't check which version of ARMA I had. Now update from 1.59 to 1.62, hoping for better results.

Share this post


Link to post
Share on other sites

Should be better. :) BTW note newest 1.42 HAC update. Fix was only one, but important.

Share this post


Link to post
Share on other sites
the DAC release code is not as well documented as it could be. I used a variation of this:

http://forums.bistudio.com/showthread.php?112745-DAC-Custom-release-amp-control-script-(SUITE)

So basically you set up your DAC spawn, set a trigger to exec the release script after, say, 120 secs, then Hetman will take over. Using a waituntil before Hetman starts scanning would be even cleaner, but I have tended not to bother.

Thanks Jilted rock, I did look at Siola's explanaition and scratched my head a bit, I'll check this out later... I wonder if Ornicus ever got around to releasing that Hac + Dac demo, I think I scrolled through 20 odd pages but it was always coming soon.

@Ryd, does the latest FAW still work with HAC, When playing around with it last night (both PBO) I was getting script error regarding arti/targeting.. Sorry unable to test now and give complete error but thought I'd throw it out there before I go to work.

Share this post


Link to post
Share on other sites

Currently FAW code is in its new version adapted and incorporated into HAC. This was done a few versions ago. So FAW as addition for HAC is now redundant and can produce errors (nearly same code executed twice). BTW all this FAW's code reworkings firstly was made for this adapted for HAC version, and only later introduced also as separate, new FAW version. See 5.11 HAC manual chapter for details. As you can read there, integrated FAW can be better used as synchronized with some HAC's operations: concealment with smoke of group's withdraw or illumination during night defence. Rest works similar, as in newest FAW. Most tempting targets are chosen from all currently known to Leader enemies.

Edited by Rydygier

Share this post


Link to post
Share on other sites

Should be up to date. For those with scripts included, script is updated each release, as for those "simple", that are used with HAC addon, should work fine too.

Share this post


Link to post
Share on other sites
Thanks Jilted rock, I did look at Siola's explanaition and scratched my head a bit, I'll check this out later... I wonder if Ornicus ever got around to releasing that Hac + Dac demo, I think I scrolled through 20 odd pages but it was always coming soon.

@Ryd, does the latest FAW still work with HAC, When playing around with it last night (both PBO) I was getting script error regarding arti/targeting.. Sorry unable to test now and give complete error but thought I'd throw it out there before I go to work.

if you have a script as per below called release.sqf:

waituntil{DAC_Basic_Value == 1};

private ["_selectedArray","_waypointBank","_waypointIDX","_group","_aID","_zoneBoolean","_ZoneID","_waypointCount","_wayPoint"

,"_waypointOrder"];

_zoneArray = [];

_selectedArray = (_this select 0 select 1);

_waypointBank = (_this select 1);

_waypointCount = (count _waypointBank);

_waypointOrder = (_this select 2);

_zoneBoolean = (_this select 3);

_zoneID = (_this select 0 select 0);

_waypointIDX = 0;

if (debug) then

{

[-1, {

_selectedArray = _this select 0;

_zoneID = _this select 1;

_zoneBoolean = _this select 2;

hint format ["%1 and %2 and zoneboolean = %3",_selectedArray,_zoneID,_zoneBoolean];

},[_selectedArray,_zoneID,_zoneBoolean]] call CBA_fnc_globalExecute;

};

sleep 1.5;

// Release Groups from _selectedArray defined

{

_group = _x;

_gl = _this select 1;

[_group] spawn DAC_fReleaseGroup;

if (debug) then {[-1, {_selectedArray = _this select 0; _group = _this select 1;hint format["Array is: %1 and Group is: %2",_selectedArray,_group];},[_selectedArray,_group]] call CBA_fnc_globalExecute;};

waitUntil {_group getVariable ["DAC_Excluded", True]};

} forEach _SelectedArray;

// Cleans up DAC zone if user no longer requires it

if (_zoneBoolean == 1) then

{

if (_zoneID in DAC_CheckZones) then

{

[_zoneID] call DAC_fDeleteZone;

if (debug) then {[-1, {hint "Successfully removed zone";}] call CBA_fnc_globalExecute;};

};

} else

{

if (debug) then {

[-1, {

_zoneID = _this select 0;

Hint format["Finished and left zone: %1",_zoneID];},[_zoneID]] call CBA_fnc_globalExecute;

};

};

then you just call it with eg:

null = [["z1",z1_group],[],1,0] execVM "release.sqf"; null = [["z2",z2_group],[],1,0] execVM "release.sqf";

that would release 2 DAC groups that take their names from the DAC spawn eg:

fun=["z2",[8,0,0],[15,3,30,1,"z2_group"],[],[],[],[1,17,0,3]] spawn DAC_Zone;

the empty value [["z1",z1_group],[],1,0] means I don't want any objective based waypoints to be given during the release

JJ

Share this post


Link to post
Share on other sites

I'm having a 2 major issues, 1 I'll being playing like normal nothing to over the top, 10 groups BLUEFOR 10 groups OPPFOR and ill get 3-4 orders in (10-15 mins in) and then....that's it. Done. I get no more orders, none of the units move, I can move, matter a fact I felt like super man cause I walked up to a BPM and chest bumped it. Joking aside its kinda not cool. I'm running the Addon on way, not script. Is there something I'm not doing? am i not being patient? Can anyone suggest something? 2 I read the whole manual in side and out, I want to know how to get the units to search for an empty vehicle and use it......please do not tell me to read all 134 pages to find my answers cause that's just being a D-bag. thanks.

---------- Post added at 02:53 ---------- Previous post was at 01:07 ----------

I'm having a 2 major issues, 1 I'll being playing like normal nothing to over the top, 10 groups BLUEFOR 10 groups OPPFOR and ill get 3-4 orders in (10-15 mins in) and then....that's it. Done. I get no more orders, none of the units move, I can move, matter a fact I felt like super man cause I walked up to a BPM and chest bumped it. Joking aside its kinda not cool. I'm running the Addon on way, not script. Is there something I'm not doing? am i not being patient? Can anyone suggest something? 2 I read the whole manual in side and out, I want to know how to get the units to search for an empty vehicle and use it......please do not tell me to read all 134 pages to find my answers cause that's just being a D-bag. thanks.

Sry for the double post but i cant delete or edit my post because iam a new user, but Iam using OA unit types. With out doing anything, like adding script or anything because im not sure how to because the youtube tutorial doesnt say how. Idk if that's relevant or not but i do get orders from commander. so things are working but idk about the other problems. once again sorry. This is a hell of a mod and def the thing that has me making new missions without so much time spent making them and now i dont know where everything thing is cause i made it haha

Share this post


Link to post
Share on other sites

then you just call it with eg:

null = [["z1",z1_group],[],1,0] execVM "release.sqf"; null = [["z2",z2_group],[],1,0] execVM "release.sqf";

that would release 2 DAC groups that take their names from the DAC spawn eg:

fun=["z2",[8,0,0],[15,3,30,1,"z2_group"],[],[],[],[1,17,0,3]] spawn DAC_Zone;

the empty value [["z1",z1_group],[],1,0] means I don't want any objective based waypoints to be given during the release

JJ

Thanks, this is how i got it to work, me thinks..

I created 'release.sqf' with code provided and placed in mission folder.

In my init.sqf i have

sleep 10;
null = [["z1",z1_group],[],1,0] execVM "release.sqf"; 
null = [["z2",z2_group],[],1,0] execVM "release.sqf";
nul = [] execVM "RydHQInit.sqf"; 

In the editor i have 2 Dac Zones like so

fun=["z1",[8,0,0],[15,3,30,1,"z1_group"],[2,3,30,1,"z1_group"],[2,3,30,1,"z1_group"],[],[1,1,1,1]] spawn DAC_Zone; 
fun=["z2",[8,0,0],[15,3,30,1,"z2_group"],[2,3,30,1,"z2_group"],[2,3,30,1,"z2_group"],[],[0,0,0,0]] spawn DAC_Zone; 

And i get messages of groups being released from DAC and all seems to be working... although groups are being reduced.

Is it possible to use HAC addon and delay that somehow or can it only work from the script version, or is there a better way i should be doing the above?

Share this post


Link to post
Share on other sites

hi, are you delaying the release in your init.sqf until DAC has completed spawning? that is the only thing you need to watch for really. I usually just use a trigger with time > 120 as the condition and then the release scripts in the on act field. I haven't used the HAC addon version, however it scans every 10(?) mins so it will pick up any new units that are available. from memory I think you can maybe call a HAC stop/start if you want

Share this post


Link to post
Share on other sites
Iam using OA unit types. With out doing anything, like adding script or anything

Hi. If you are using HAC 1.4 or above, put this into mission's init.sqf if you use this, or just into any editor placed init field:

RydHQ_OALib = true;

Without this or full RHQ array set for OA classnames HAC can't recognize, what kind of units are these, so at most will give them only a few basic orders like idle. By default HAC recognizes only units from basic, vanilla Arma 2.

And yes, this is in the manual.

If problem still will be there, upload yours mission and give me a link here, so I can check and test personally. This is best and often only way for effective bughunting.

As for looking for empty vehicles, quote manual:

RydHQ_CargoFind = 0 - radius in meters for search for empty vehicles. Not recommended to enter too large values - that can cause lags. 100-200 meters should be enough. When this variable is equal or less than 0, the whole cargo transportation system is turned off (default) and groups will use only their own (grouped) vehicles. To make the transport system active without any searching for empty vehicles, set this variable to a minimal positive value - more than 0, up to 1.

Also should be in init.sqf (best solution that I strongly recommend) or at least in init field of any object in editor.

This one however is set separatelly for each Leader with manner also described in manual, so above CargoFind is for A leader. For B leader this would be RydHQB_CargoFind and so on. OALib is only one, shared by all Leaders:

RydHQ_OALib = false – Shared by all Leaders. If true, classnames from OA will be added (can be used instead of regular RHQ set for OA units);

RydHQ_BAFLib = false – same for BAF classnames;

28

RydHQ_PMCLib = false – same for PMC classnames;

RydHQ_ACRLib = false – same for ACR classnames;

See chapter 7.1 if you are still uncertain, what is this all this RHQ stuff with classnames.

I haven't used the HAC addon version, however it scans every 10(?) mins so it will pick up any new units that are available.

Resets by default are every 10 minutes and can be delayed or hurried, but scanning for new groups occurs every cycle (time dependant on Leader's personality number of groups commanded and some other factors), not reset.

BTW should be possible spawning via DAC even with HAC active. Just spawned group should be immediately inserted into ExcludedG array and removed from there after releasing.

---------- Post added at 11:08 ---------- Previous post was at 09:54 ----------

Meanwhile I'm working with this radio chatter script with some effects (used some Lucidity's propositions) but ahead of me lies language barrier and I need more support here. Was chosen preliminary places, where some radio chat may appear, so I need a several English sentences except Lucidity's per situation, that can be expected in given circumstance, so what exactly can say in English:

1. HQ (to TL), when chooses given group for given mission (giving an order to do: attack, recon, capturing, garrison, defend, reserve, resting, support);

2. HQ, when assigns logistic support for someone;

3. HQ, when denies logistic support;

4. HQ, when assigns arty support for someone;

5. HQ, when denies arty support;

6. HQ, when switching main army stance (off to def and vice versa);

7. Artillery battery (to TL), when firing HE/illum/smoke;

8. TL (to HQ), when can't/refuses fulfill the order;

9. TL, when confirmes an order (is about to start accomplishment);

10. TL, when approaches final mission goal/area;

11. TL, after order accomplishment (is ready for new orders);

12. TL, when requests logistc support;

13. TL, when requests arty support/smoke coverage/illumination;

14. Soldier, that is frightened/his morale going low;

15. Soldier in panic;

16. Soldier, when hit/wounded/dying;

17. TL, when group in high danger/under fire/lost men etc.;

18. TL, when enemy was spot;

19. Other propositions?

Edited by Rydygier

Share this post


Link to post
Share on other sites

1. HQ (to TL), when chooses given group for given mission (giving an order to do: attack, recon, capturing, garrison, defend, reserve, resting, support);

2. HQ, when assigns logistic support for someone;

3. HQ, when denies logistic support;

4. HQ, when assigns arty support for someone;

5. HQ, when denies arty support;

6. HQ, when switching main army stance (off to def and vice versa);

7. Artillery battery (to TL), when firing HE/illum/smoke;

8. TL (to HQ), when can't/refuses fulfill the order;

9. TL, when confirmes an order (is about to start accomplishment);

10. TL, when approaches final mission goal/area;

11. TL, after order accomplishment (is ready for new orders);

12. TL, when requests logistc support;

13. TL, when requests arty support/smoke coverage/illumination;

14. Soldier, that is frightened/his morale going low;

15. Soldier in panic;

16. Soldier, when hit/wounded/dying;

17. TL, when group in high danger/under fire/lost men etc.;

18. TL, when enemy was spot;

19. Other propositions?

These are my suggestions,

1. (call sign), this is Command, proceed to (location) and execute (attack/defend/recon/etc) - Out.

2. (call sign), (type of support) is in route to you - Out.

3. Negative, (call sign), request denied. I cannot provide support right now - Out.

4. (call sign), Fire Mission on (location) - Out.

5. Negative, (call sign), request denied. No Fire Missions are available - Out.

6. (call sign), prepare to (attack/defend/recon/etc) - Out.

7. (call sign), this is (arty battery), Fire Mission received on (location) - (target description). Firing for effect - Out.

8. Command, this is (call sign), I cannot comply. Requesting new orders - Over.

9. Command, this is (call sign), executing orders - Out.

10. Command, this is (call sign), Standby for info - Out.

11. Command, this is (call sign), awaiting orders - Over.

12. Command, this is (call sign), requesting (type of support) - Over.

13. Command, this is (call sign), requesting Fire Mission at (location) - Over.

14. This is (Rank, Name) - (call sign), I'm in danger - Over.

15. This is (Rank, Name) - (call sign), I cannot hold. I'm retreating - Over.

16. This is (Rank, Name) - (call sign), I need immediate evac - Over.

17. Command, this is (call sign), we're in danger - Over.

18. Command, this is (call sign), hostiles spotted at (location) - (target description) - Over.

19. (arty Battery), this is (call sign), Fire Over, adjust and try again - Over.

Here are a few links that may help with radio dialog

http://www.armystudyguide.com/content/army_board_study_guide_topics/communications/prowords-used-in-radio-communication.shtml

http://en.wikipedia.org/wiki/Voice_procedure

http://www.hardscrabblefarm.com/vn/artillery.html

http://en.wikipedia.org/wiki/Message_precedence

Share this post


Link to post
Share on other sites

Great. Thanks a lot. I'll use this. I'm simply not familiar with US army usual communications form, except this present in Arma, and often not sure of proper grammar forms and vocabulary, so this is very helpful to me. Sadly, there will be no dynamic content as callsigns or locations (text is hard-defined in Description.ext (config.cpp), sound obiously too), all will be in generalized form avoiding names and coordinates, so will look reasonable in any case.

In fact core code is ready, for now only for A leader. Tried to keep at least four variants for each situation, for some more, there will be customizable "chat density", means percentage chance for chat message checked for each situation. There is also mechanism to prevent too long series of messages of same kind (each repeat of same situation chat in a row have lower probability), and another, that sets in the delayed queue messages coming too fast after previous. Also decided to add for some situations, as fear or panic, radio transmissions, that are discipline violations, some very emotional, also some more unconventional.

Of course for now all without sound. When chat list will be completed - we will se, what can be done to obtain also fine sounds.

Edited by Rydygier

Share this post


Link to post
Share on other sites
Sadly, there will be no dynamic content as callsigns or locations (text is hard-defined in Description.ext (config.cpp), sound obiously too), all will be in generalized form avoiding names and coordinates, so will look reasonable in any case.

So, how does the game use dynamic locations, such as "Support needed at 12345678?"

For the Call Signs, I just meant the name of the group making the call (like B 2-1-F on the map). The game dynamically names them, so there must be a way to reference that name in the text, just as the game does.

Share this post


Link to post
Share on other sites
and custom battlefield trigger (in MP needed only if used BB), and mission worked fine with lacking earlier, and now visible communication HQ -> player and briefing task entries.

What would this custom trigger to start BB in MP be... I do not see anywhere yet... :)

Share this post


Link to post
Share on other sites

Looks, like for this is used mentioned before as alternative kbTell. kbTell however is more complex in implement, I barely know it, it have also limitations, eg I do not know if there exist way to combine it with nice efffect with external added sounds. By itself kbTell do not contain enough variety of sounds to achieve effect, that I want to have in HAC. Currently used method on the other hand is quite simply and versatile as for adding new sounds. But there will be not kbTell-like dynamic content, implementing of which IMHO was main goal of kbTell. Only recorded as a whole sentences and/or non-dynamic sidechat.

---------- Post added at 22:50 ---------- Previous post was at 22:46 ----------

What would this custom trigger to start BB in MP be... I do not see anywhere yet...

From manual:

RydBB_MC = (undefined) – this variable may be used for customizing of size and placement of area, that Big Boss of both sides will study for topographical data (square) and objectives choosing (circular, so square’s corners will be excluded). May be useful for BB initialization quickening, when map is big, and only its part will be used as battlefield. Works in two ways. First, mission maker can name as RydBB_MC a trigger, which position will mark center of customized battlefield area and trigger’s width multiplied by two will indicate side length of square battlefield area. This length should be divisible by 500. Optimally trigger should be not twisted (angle = 0) and square. This way its border will indicate exact border of customized

29

battlefield area. Second, may be defined as an array, 2D position coordinates of custom battlefield’s center point. NOTE: if not used, should stay undefined (nil);

In fact should be fine with both modes, crucial is to avoid auto-corner detection for map, as used for that purpose code is not MP compatibile and make BB stuck in infinite "waitUntil" at init stage.

But in second, array mode, additionally must be defined this:

RydBB_MapLng = (undefined) – used only, when RydBB_MC is used as position array. Then this variable should be defined as number divisible by 500, that will indicate side length of custom battlefield square area;

Share this post


Link to post
Share on other sites

RydHQ_OALib ( = true; ) is just another init config variable, so should be put into init.sqf or any init field of editor placed objects. Same for similar libraries for BAF, PMC and ACR. This is simplier alternative for regular RHQ sets for these extensions added to make players life a bit easier.

Share this post


Link to post
Share on other sites

kk thanks, do i just put RydHQ_OALib = true; in init field of object , sorry pretty noobish at this stuff

Edited by ryanbeckey0

Share this post


Link to post
Share on other sites

Yeah, you can do that this way. When you familiarize more with all this stuff I recommend init.sqf method as far cleaner (still init field method does its job usually too). Same for all other init variables described in manual.

Share this post


Link to post
Share on other sites

yeah i stuck it in the init.sqf in the end with all the other settings, thanks for your help, just wasnt sure where to put it

Share this post


Link to post
Share on other sites
Thanks again Ryd, should be enough to get me going.

Hi Katipo66

I posted a list (not necessarily exhaustive) in the DAC thread last summer of which commands need the waitUntil... before & after, a compilation of entries in the manual & quite a bit more information from MadRussian.

One key issue is the init of DAC itself:

If you set up multiple DAC spawn zones then sometimes (even with HAC init delayed until all spawn and releases are done - essential) some won't initialise properly although there are no error alerts. "WaitUntil DAC (whatever, can't remember) at the beginning of the init.sqf doesn't hack it sometimes. See the entry in my post about changing to the use of "MRU_DacReady" instead if the default DAC init.

Cheers

Orc

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

×