Rydygier 1317 Posted August 29, 2012 (edited) I only heard about WICT. Never use it, so do not know, if is possible, and to what extend, to combine it with HAC with good result. Better to ask MSO team indeed. As far, as I know currently MSO uses first, old HAC version. "Rudiments" are same, but really many and deep changes was made since then, lots of new features and enhancements added. When reading current manual, need to realize that a lot of functionalities described there does not exist in 1.0 version. Also - MSO HAC code is modified to work in MP environment. However new HAC, thanks to Big Boss, may find his place in some future MSO versions as general AI opponent, Big Boss was designed in consultation with MSO team also for that purpose, but there is nothing sure yet. Edited August 30, 2012 by Rydygier Share this post Link to post Share on other sites
metalcraze 290 Posted August 29, 2012 Is it possible to have a mission like following with this module? AI commander on BLUFOR attacks the defensive position that REDFOR AI commander defends while the player is just a small squad commander in BLUFOR (that also gets objectives from AI commander) - like a cog in a bigger machine Share this post Link to post Share on other sites
Rydygier 1317 Posted August 29, 2012 Yes, it is possible. Question of adequate init config and objectives placement. Share this post Link to post Share on other sites
SavageCDN 231 Posted August 29, 2012 I only heard about WICT. Never use it, so do not know, if is possible, and to what extend, to combine it with HAC with good result. Better to ask MSO team indeed. As far, as I know currently MSO uses first, old HAC version. "Rudiments" are same, but really many and deep changes was made since then, lots of new features and enchancements added. When reading current manual, need to realize that a lot of functionalities described there does not exist in 1.0 version. Also - MSO HAC code is modified to work in MP environment. However new HAC, thanks to Big Boss, may find his place in some future MSO versions as general AI opponent, Big Boss was designed in consultation with MSO team also for that purpose, but there is nothing sure yet. Thanks for the detailed response... I can only hope for future MSO versions to include HAC :) Share this post Link to post Share on other sites
kremator 1065 Posted August 29, 2012 Excellent! Thanks Ryd. Share this post Link to post Share on other sites
subroc 4 Posted August 30, 2012 (edited) really nice, my day just got busy :D Edit: I was looking trough the script and thought if instead of reading the size/composition of groups by "count units group _leaderguy" or "*classname* in group _leaderguy", wouldnt it be possible to store the units in the group in a setvariable array to the leader of the group? That would make it possible to have all units in a group stored even if you run a AI caching script. It might be hard to incorporate with 3rd party caching scripts as the setvariable of the group composition can only be done while the group is not cached. just an idea that sprung to mind. Edited August 30, 2012 by subroc added 2c Share this post Link to post Share on other sites
katipo66 94 Posted August 30, 2012 (edited) Hi Rydygier, Regarding BigBoss - Question from dummy time :) The example mission on Chernarus was a bit confusing for me, so i removed most leaders and the units synced to them and also corresponding triggers associated with those leaders, so there are only 2 - 'leaderHQ and leaderHQB'. Is there any advantage/disadvantage/benefit to using 4 leaders per side? The game logics with "this setVariable ["AreaValue",5];" - Are we supposed to manually place these over strategic places of our choice, they seemed to be placed randomly on the map. This from the manual suggests that we do but im not sure: for setting up custom strategic objectives as addition to autonomously chosen, should be placed game logic of name: RydBBa_SAL (for Big Boss “Aâ€) or RydBBb_SAL (for Big Boss “Bâ€). To add custom strategic objectives set in chosen points of map another game logics (without name), with such init: this setVariable ["AreaValue",(positive integer)];, If we do not do this then is there potential on big maps that big boss will assign objectives on completely opposite sides of the map and potentially never meet? If we want Bigboss to decide everything then is it true we do not need "RydBBa_SAL" and "RydBBb_SAL" synced to game logics with "this setVariable ["AreaValue",5];" in inits? Hope that makes sense, i just want to know how to set it up without mistakes... thanks :) Edited August 30, 2012 by Katipo66 Share this post Link to post Share on other sites
Rydygier 1317 Posted August 30, 2012 (edited) Is there any advantage/disadvantage/benefit to using 4 leaders per side? Number of subordinated to BB Leaders can be any from range 1 to 8. Depending on number of subordinated Leaders, BB has lesser or bigger "room for maneuver", is more flexible, when has at his disposal several "divisions". He distinguish center, left and right flank, and reserve. First, he will try to assign Leader to front (center), if there is only one Leader, that's it. If there is more Leaders available for given BB, he also may "fill" flank(s) (not necessarily symmetrically), and, if 4 Leaders at least - also will use one of them as reserve, which gives him additional strategy possibilities. If there is more, that four Leaders - some parts of front will be filled with two Leaders (for eight Leaders,to center, both flanks and reserve will be assigned two Leaders). If you want to change assigned to BB Leaders, use one of such arrays: RydBBa_HQs = [leaderHQ,leaderHQB,leaderHQC,leaderHQD]; For only one subordinated Leader this will look this way: RydBBa_HQs = [leaderHQ]; Same for BB "B". (RydBBb). If we want Bigboss to decide everything then is it true we do not need "RydBBa_SAL" and "RydBBb_SAL" synced to game logics with "this setVariable ["AreaValue",5];" in inits? True. BB will decide on his own. Custom objectives (both methods, via synced logics or via init array) are for those, who wants to force BB to take into account apart from own-choosed objecitves (not randomly, but via specific locations search) also chosen by mission maker spots as strategic targets. There is also another optional config value that will make, that BB will become "blind" by itself, and will take into account only custom added objectives. It is all up to mission maker's config... If we do not do this then is there potential on big maps that big boss will assign objectives on completely opposite sides of the map and potentially never meet? To be precise: BB, if not "blinded" via config, will always mark as "targets to take" certain points over whole map. And will, "portionwise" assign logically chosen groups of these targets (usually not so far from Leader's position, unless some far objective has very high "temptation" value) to his Leaders as long, as will take whole map or loose combat effectiveness. When given Leader will take all the objectives assigned to him, receives another portion, and so on. Portions are defined as follows: For each Leader BB will look for objective, that will have maximal value calculated via formula, where is used target's value and distance between it and Leader. The greater distance, the lesser chance for choosing this target as main target of given "portion". The bigger value of target - the bigger chances. When main target of given "portion" is known, to this portion are added also all targets, that lays "on the way" towards main target (if any). Objectives from given portion are taken in distance order. Assignment to given part of front (center, flanks) decides, from which side BB will search for "portion" for given Leader. Reserve generally will follow center divisions, and, if needed, will reinforce threatened parts of whole front, and from reserve divisions in the first place can be chosen infantry groups for garrisoning taken objectives (proportional to numbers of division's infantry and objective value, if division has a little infantry, most likely garrisions will be not assigned, unless another, closest to given objective Leader has many infantry to spent). Assignment of given part of front line depends on division's numbers and composition. More numerous divisions will more often be assigned to "bigger" flanks - where is more square sectors (500x500 meters), to which BB divides whole map, and by topographical criterion - if army consist more than average vehicles number, is more probably, that will be assigned to that part of front, where vehicles will better perform (more flat, not covered areas, best with many roads). Divisions with dominant infantry - on the contrary (except roads). If divisions are similar in numbers and composition - their assignment will be quite random. Edited August 30, 2012 by Rydygier Share this post Link to post Share on other sites
katipo66 94 Posted August 30, 2012 Great! thank you for the detailed answer, that makes sense, i think ill put those leaders back on the map :) Share this post Link to post Share on other sites
teilx 4 Posted August 30, 2012 The example mission on Chernarus was a bit confusing for me...youre not alone^^ hehea bit more userfriendly would be nice for hac .... but great work. Share this post Link to post Share on other sites
katipo66 94 Posted August 30, 2012 more questions... sorry if these questions are obvious, im at work not on game, but thinking about game support units and statics - do these need to be synced to leaders and/or RydBBa_SAL if used. Also i usually use your FAW addon along side HAC, if we place artillery on map do we need to sync these to leaders and/or RydBBa_SAL if used, i understand theres no need to use FAW anymore. Lastly have the OA units been included into HAC now? the reason i ask is because i read this from Armaholic "The Arma 2 standalone version (1.1) can be found here!" youre not alone^^ hehea bit more userfriendly would be nice for hac .... but great work. I think Rydygier has just placed all components needed for BB on the map and the user is free to position them how they want? Share this post Link to post Share on other sites
Rydygier 1317 Posted August 30, 2012 (edited) Sorry guys, if anything is too confusing. I'm trying to make examples clear, but isn't easy, as HAC just becomes more and more complex. I sometimes even do not understand why he does what he does. :) Good thing is, that most of all these HAC's complications are pure optional. Bad thing is, that because of numerous optional complications, even init config became quite complex itself (still nothing new became necessary, simple demo is same, as in the beginning). I'm here to answer, if I can, to any doubt and question. That is true, BB demo contains almost all possible BB's funcionalities to show, how to use all of them. I realize, that all this may be a bit difficult to grasp at once. Of course all, what was placed on map, can be re-placed, wherever you want. support units and statics - do these need to be synced to leaders and/or RydBBa_SAL if used. Statics and support, if should be controlled by Leader in limited "synchro" control mode, should be treated as any other unit, and synchronized with their Leader. With SAL (Strategic Areas Logic) logics however should be synced only custom strategic objectives "flags" (another logics), if used, nothing else. Also i usually use your FAW addon along side HAC, if we place artillery on map do we need to sync these to leaders and/or RydBBa_SAL if used, i understand theres no need to use FAW anymore. If played with FAW, arty will work even, when out of HAC's control (not synced in "synchro" limited control mode, in default mode, as always, all units of given side goes under Leader's control, nothing was changed here). Of course without this control there will be no smoke and illum from HAC's arty handler. FAW (or similar script) is still needed, if you want some bigger "boom". Internal arty handlig is for now only for smoke and illum (both, FAW and this, should work togheter fine, I hope), as these needs strict coordination with maneuvers, that cannot be provided by external arty handler. However I have on my "to do" list FAW's code modernization and full incorporation into HAC. Lastly have the OA units been included into HAC now? No. Reasons I explained earier, when Lucidity asked same question. Generally the bigger default class arrays, the heavier code is. So best, if implemented are only classnames for currently used units, therefore optimal solution is, I think, RHQ config, that allows flexible adaptation of these arrays. This version needs OA beacause of used some script commands, introduced with OA patches. PS. Believe, or not, but just today I first time truly made for myself mission actually to play with HAC, not to test. :) This is variant of metalcraze's idea. BLUFOR attacks OPFOR's defensive positions on wide front. All eight Leaders on map, but without BB. Debug off, except FAW's. Of course you can play anybody, only need to change player's unit. Action isn't to intensive, but there is present this nice feel of being involved in something bigger. Also FAW is used there, and some modified version of TPW's "Simple Breath Fog" script for flavour. Contains all, what is needed. So, if someone interested - enjoy. Of course, if you by a chance get stuck with some boring idle order, you can just ignore it and go to get some action. :) Edited August 30, 2012 by Rydygier Share this post Link to post Share on other sites
katipo66 94 Posted August 31, 2012 Ok thanks, i think ive got all i need to know now :) I look forward to giving cold reception a try.. Wow, you finally have a chance to play what you created!? i hope you like it lol... I like it when action is not intense all the time, (i play Dragon Zens Advancing Power for intense) sometimes thought maybe the script is broken but as you keep playing you will from time to time hear different fire fights around the map, some big fights that include vehicles and some small infantry skirmishes, this is very immersive :D Share this post Link to post Share on other sites
tank000 1 Posted August 31, 2012 Gents, It appears the Demo mission is not available as I get directed to another page which does not contain the mission file, any alternates? also it sounds like many here have figured out how to setup Hetman already, any chance you could share some of those user created missions also? YouTube,please please show some tutorials for us slow people who can't wrap their heads around this tool. Thank you fellow forum dwellers for replys and Thank you Rydygier for creating Hetman, it sounds like an amazing add-on which could only be created by the most creative yet statistical analytical mind. P.S. I assume Hetman can be CPU heavy at times, any chance I could offset the load on my computer by having the logic run on a (personal)Dedicated Multiplayer server? or have the process run on the under utilized cores? Tank000 Share this post Link to post Share on other sites
instagoat 133 Posted August 31, 2012 Took me a while to figure BB out, but I got it working at last. I´ve set up a test mission on Takistan, using about 300 Units on each side. I´ve discovered some things: BB either doesn´t seem very aggressive, or leaders sometimes get stuck in "defend" mode. In all attempts, the divisions got assigned multiple defensive centers at their starting locale, and never left that position. Also, if the units of a division are too far spread out at start (in my case, the entire map for one of the leaders), BB has trouble assigning fronts and more often than not doesn´t assign them at all, leading to a stall (The other BB faction still continued to work.) The last test I ran just now, for about 4 1/2 hours while I slept. In this time, both factions never left their starting positions. BBa only had one of four divisions actually working on objectives, but those objectives were right adjacent to their starting position. No division ever moved more than about a kilometer from their starting positions. The mission can be found here: http://filedump.org/files/64LfdR0s1346382925.html It is currently un-labelled, but once I have it working as it should (I suspect I made a config error somewhere, or BB needs some sort of input I am not aware of yet?) I will upload a labelled version for the benefit of everyone who needs a little help understand all the blue things on the map. It took me a couple of hours to get BB working, so it´s not easy. But I imagine, once it -is- running, it´s really amazing. Share this post Link to post Share on other sites
Rydygier 1317 Posted August 31, 2012 (edited) It appears the Demo mission is not available as I get directed to another page which does not contain the mission file, any alternates? You mean link from armaholic's HAC page? Indeed, just checked. Leads to somewhere, but there is info, that file was deleted or something. I think, that this link should be just removed. I'll take care of it. Not a problem, same demo, as "simple demo" is available directly in HAC' package, in demo missions folder. Thanks for reporting that. YouTube,please please show some tutorials for us slow people who can't wrap their heads around this tool. This is good idea, but there is a problem - I have far too weak, limited connection for uploading anything bigger than a few MB. :( Plus, I never made any film for youtube and simply not sure, how to do that. Maybe someone else will be helpful with this? For the good start just check mentioned simple demo. It contains all, what is necessary, and nearly nothing more (except optional debug). It is for addon version of HAC. If there will be any furhter questions - do not hesitate to bother me. :) P.S. I assume Hetman can be CPU heavy at times, any chance I could offset the load on my computer by having the logic run on a (personal)Dedicated Multiplayer server? or have the process run on the under utilized cores? How to express it? Hmm. If the question contains words like "dedicated server", "cores" and such MP or hardware related stuff, my answer is: "Huh?". Yeah, that's my creative and analytical mind. :) Yes, HAC could be heavy for CPU, but it is sqf. So there will be no any lags (fps drops) because of HAC, unless some net lags? As for sqfs game's engine makes available only certain part of CPU power. So no lags, but instead overloads means delays in code execution, sometimes big. For HAC isn't a big problem, as his work doesn't needs "rapid reflexes", just some orders will be issued later. You can easly name it a simulation of comm delays and such. :) Still, some other sqf-based scripts may have problem with this delays. Problem is, that I do know nothing about MP environmernt specificity. I'm pure SP-guy. HAC wasn't made for MP at all. Some guys however used it in their MP project, you can ask them, how the did that: MSO ---------- Post added at 09:49 ---------- Previous post was at 09:33 ---------- It is currently un-labelled, but once I have it working as it should (I suspect I made a config error somewhere, or BB needs some sort of input I am not aware of yet?) It's not necessarily your fault. You see, this is first release of BB, and this is still beta. BB passed tests, but I never had a time to run it more than 2, 3 houres at once. In fact I expect some bugs and problems at this stage. Too complex code to avoiding that sad inconvenience. I'll check, what is going on in yours mission. I partially predicted possible problems with too passive stance in long-term run, so added a few config variables to "dynamize" Leader's offensive: RydHQ_Rush = false – variable shared by all Leaders. If true, groups will never move slowly, but always with normal speed and aware behavior instead of safe. One of “dynamising†variables; 24 RydHQ_NoRec = 1 – Percentage chance for omission recon stage – another “dynamising†variable. NOTE: is multiplied by (RydHQ_Recklessness + 0.01); Above should be rather used with this: RydHQ_RapidCapt = 10 – Percentage chance for capturing objectives “for all costâ€, means immediate and regardless of enemy presence capturing missions. Can be rised, when taking land should be of higher priority than defeating known enemy. Another “dynamizationâ€. NOTE: is multiplied by (RydHQ_Recklessness + 0.01); Rush - true, both other eg 10000, and things should "roll" quicker. Still, getting stuck in defensive mode is a problem here. Also, if the units of a division are too far spread out at start (in my case, the entire map for one of the leaders), BB has trouble assigning fronts and more often than not doesn't assign them at all, leading to a stall (The other BB faction still continued to work.) Hmm. Not tested BB with units spreaded out on whole map, but still code should handle this situation - if didn't, I'll consider this as a bug. Thanks for reporting. I'll check this. EDIT: Sorry, man, I waited some minutes for download this mission, but then just get message: "The file you have requested does not exists." :( Worked on second try. :) Edited September 2, 2012 by Rydygier Share this post Link to post Share on other sites
instagoat 133 Posted August 31, 2012 ...[/color] It's not necessarily your fault. You see, this is first release of BB, and this is still beta. BB passed tests, but I never had a time to run it more than 2, 3 houres at once. In fact I expect some bugs and problems at this stage. Too complex code to avoiding that sad inconvenience. I'll check, what is going on in yours mission. I partially predicted possible problems with too passive stance in long-term run, so added a few config variables to "dynamize" Leader's offensive: RydHQ_Rush = false – variable shared by all Leaders. If true, groups will never move slowly, but always with normal speed and aware behavior instead of safe. One of “dynamising†variables; 24 RydHQ_NoRecon = 10 – Percentage chance for omission recon stage – another “dynamising†variable. NOTE: is multiplied by (RydHQ_Recklessness + 0.01); Above should be rather used with this: RydHQ_RapidCapt = 10 – Percentage chance for capturing objectives “for all costâ€, means immediate and regardless of enemy presence capturing missions. Can be rised, when taking land should be of higher priority than defeating known enemy. Another “dynamizationâ€. NOTE: is multiplied by (RydHQ_Recklessness + 0.01); Rush - true, both other eg 10000, and things should "roll" quicker. Still, getting stuck in defensive mode is a problem here. Hmm. Not tested BB with units spreaded out on whole map, but still code should handle this situation - if didn't, I'll consider this as a bug. Thanks for reporting. I'll check this. EDIT: Sorry, man, I waited some minutes for download this mission, but then just get message: "The file you have requested does not exists." :( Worked on second try. :) Thanks for looking into it :> The mission has the LeaderHQE Units all located around their starting location. BBb got stuck in assigning division fronts when I had HQEs Units spread out in groups all over the map (For example, some were inside the Naygul valley near Nasdara, some were in Landay, and some in other villages on the other sides of the map, center and edges.). HQF has randomized starting locations for his Units, however, the assignment always worked for him when I tried. The redfor HQs are all packed tightly. The whole thing is basically supposed to simulate a large COIN operation in a civil war environment thingy. Share this post Link to post Share on other sites
Rydygier 1317 Posted August 31, 2012 (edited) Wow, you finally have a chance to play what you created!? i hope you like it lol... :D Yeah, finally... And yes, I like it a lot. :) ---------- Post added at 11:36 ---------- Previous post was at 10:19 ---------- @InstaGoat After first test - indeed, all stuck in defensive mode, that's wrong of course. First, I had to remove from .sqm ACR content, so there was lack of some units, but this shouldn't affect. Second, I found, thanks to RPT file, Squint and own eye four syntax errors in RHQ config: 1. First array, class: PCDF_CDF_Soldier_Sniper_Night had wrong quote mark (some stylish, diagonal, as pasted from Word or something); 2. Lines 107 and 115 - lack of semicolon at end of the line; 3. HArmor RHQ: comma at end of array. Still, after corrections, problem with defensive stance occurs. So now I'll make furter test. :) ---------- Post added at 12:56 ---------- Previous post was at 11:36 ---------- After second test - noted, that "B" forces have far to low value (300 units, but only 12 value points, where each troop should to add 1 point at least). So checked RHQ with some tool, that I made for this purpose earlier, here is its report: "Types not added to basic RHQ: ["US_Delta_Force_M14_EP1","US_Delta_Force_MG_EP1","US_Delta_Force_EP1","US_Delta_Force_Assault_EP1","US_Delta_Force_Marksman_EP1","TK_GUE_Soldier_TL_EP1","TK_GUE_Soldier_MG_EP1","TK_GUE_Soldier_4_EP1","TK_GUE_Soldier_Sniper_EP1","TK_GUE_Soldier_5_EP1","TK_GUE_Soldier_AT_EP1","TK_GUE_Soldier_2_EP1","TK_GUE_Soldier_HAT_EP1","TK_GUE_Soldier_AAT_EP1","TK_GUE_Soldier_AA_EP1","TK_GUE_Soldier_EP1","TK_GUE_Soldier_AR_EP1","TK_GUE_Soldier_3_EP1","TK_GUE_Bonesetter_EP1","Soldier_Bodyguard_M4_PMC","Soldier_Sniper_PMC","TK_GUE_Warlord_EP1","CIV_Contractor1_BAF","TK_CIV_Takistani03_EP1","UralRefuel_TK_EP1","UralReammo_TK_EP1","M113Ambul_TK_EP1","UralRepair_TK_EP1","T55_TK_GUE_EP1","BTR40_MG_TK_GUE_EP1","UH1H_TK_GUE_EP1","Pickup_PK_TK_GUE_EP1","Offroad_SPG9_TK_GUE_EP1","Offroad_DSHKM_TK_GUE_EP1","V3S_TK_GUE_EP1","V3S_Reammo_TK_GUE_EP1"]" "-------------------------------------------------------------------------" "Types not added to exact RHQ: ["TK_Commander_EP1","TK_Soldier_Officer_EP1","TK_Soldier_GL_EP1","TK_Soldier_SL_EP1","TK_Soldier_MG_EP1","TK_Soldier_EP1","TK_Soldier_AAT_EP1","TK_Soldier_AMG_EP1","TK_Soldier_AR_EP1","TK_Soldier_TWS_EP1","TK_INS_Soldier_TL_EP1","TK_INS_Soldier_MG_EP1","TK_INS_Soldier_2_EP1","TK_INS_Soldier_EP1","TK_INS_Soldier_AR_EP1","TK_INS_Soldier_3_EP1","TK_INS_Soldier_4_EP1","GER_Soldier_TL_EP1","GER_Soldier_MG_EP1","GER_Soldier_EP1","GER_Soldier_Medic_EP1","TK_GUE_Soldier_TL_EP1","TK_GUE_Soldier_MG_EP1","TK_GUE_Soldier_4_EP1","TK_GUE_Soldier_Sniper_EP1","TK_GUE_Soldier_5_EP1","TK_GUE_Soldier_AT_EP1","TK_GUE_Soldier_2_EP1","TK_GUE_Soldier_HAT_EP1","TK_GUE_Soldier_AAT_EP1","TK_GUE_Soldier_AA_EP1","TK_GUE_Soldier_EP1","TK_GUE_Soldier_AR_EP1","TK_GUE_Soldier_3_EP1","Soldier_GL_PMC","TK_GUE_Bonesetter_EP1","Soldier_TL_PMC","Soldier_Medic_PMC","Soldier_Bodyguard_AA12_PMC","Soldier_MG_PKM_PMC","Soldier_Bodyguard_M4_PMC","Soldier_Engineer_PMC","TK_GUE_Warlord_EP1","CIV_Contractor1_BAF","TK_CIV_T "-------------------------------------------------------------------------" "Types not added anywhere: ["TK_GUE_Soldier_TL_EP1","TK_GUE_Soldier_MG_EP1","TK_GUE_Soldier_4_EP1","TK_GUE_Soldier_Sniper_EP1","TK_GUE_Soldier_5_EP1","TK_GUE_Soldier_AT_EP1","TK_GUE_Soldier_2_EP1","TK_GUE_Soldier_HAT_EP1","TK_GUE_Soldier_AAT_EP1","TK_GUE_Soldier_AA_EP1","TK_GUE_Soldier_EP1","TK_GUE_Soldier_AR_EP1","TK_GUE_Soldier_3_EP1","TK_GUE_Bonesetter_EP1","Soldier_Bodyguard_M4_PMC","TK_GUE_Warlord_EP1","CIV_Contractor1_BAF","TK_CIV_Takistani03_EP1","T55_TK_GUE_EP1","BTR40_MG_TK_GUE_EP1","UH1H_TK_GUE_EP1","Pickup_PK_TK_GUE_EP1","Offroad_SPG9_TK_GUE_EP1","Offroad_DSHKM_TK_GUE_EP1","V3S_TK_GUE_EP1","V3S_Reammo_TK_GUE_EP1"]" Crucial are first and third part, second not. So I added these, not sure if all is in good category, I hope so, now RHQ looks like this: RHQ_Recon = [ "US_Delta_Force_AR_EP1", "US_Delta_Force_MG_EP1", "US_Delta_Force_Marksman_EP1", "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", "PCDF_PRSZ_Soldier_Mark", "PCDF_PRSZ_Soldier_Mark_AK74", "PCDF_PRSZ_Soldier_Mark_CZ550", "PCDF_PRSZ_Soldier_Sniper", "PCDF_PRSZ_Soldier_Sniper_Night", "PCDF_PRSZ_Soldier_Sniper_KVSK", "PCDF_PRSZ_Militia_Soldier", "PCDF_PRSZ_Militia_Soldier_SKS", "PCDF_PRSZ_Militia_AR", "PCDF_PRSZ_Militia_AT", "PCDF_PRSZ_Militia_AA", "PCDF_PRSZ_Militia_Medic", "PCDF_CDF_Soldier_Night", "PCDF_CDF_Soldier_Goshawk", "PCDF_CDF_Soldier_Sniper_Night", "CZ_Soldier_Spec3_Wdl_ACR", "CZ_Soldier_Spec2_Wdl_ACR", "CZ_Soldier_Spec1_Wdl_ACR", "CZ_Soldier_Recon_Wdl_ACR", "CZ_Soldier_Spec_Demo_Wdl_ACR", "CZ_Soldier_Sniper_ACR", "CZ_Soldier_Spotter_ACR" ]; RHQ_Snipers = [ "US_Soldier_Sniper_EP1", "US_Soldier_SniperH_EP1", "US_Soldier_Sniper_NV_EP1", "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", "PCDF_PRSZ_Soldier_Mark", "PCDF_PRSZ_Soldier_Mark_AK74", "PCDF_PRSZ_Soldier_Mark_CZ550", "PCDF_PRSZ_Soldier_Sniper", "PCDF_PRSZ_Soldier_Sniper_Night", "PCDF_PRSZ_Soldier_Sniper_KVSK", "PCDF_CDF_Soldier_Night", "PCDF_CDF_Soldier_Goshawk", "PCDF_CDF_Soldier_Sniper_Night", "CZ_Sharpshooter_Wdl_ACR", "CZ_Soldier_Sniper_ACR" ]; RHQ_FO = [ "CZ_Soldier_Spec3_Wdl_ACR", "CZ_Soldier_Spec2_Wdl_ACR", "CZ_Soldier_Spec1_Wdl_ACR", "CZ_Soldier_Recon_Wdl_ACR", "CZ_Soldier_Spec_Demo_Wdl_ACR", "CZ_Soldier_Sniper_ACR", "CZ_Soldier_Spotter_ACR" ]; RHQ_ATInf = [ "US_Soldier_AT_EP1", "US_Soldier_HAT_EP1", "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", "PCDF_CDF_Soldier_AT_2011", "CDF_CDF_Soldier_M136_2011", "PCDF_PRSZ_Soldier_RPG", "PCDF_PRSZ_Soldier_Metis", "PCDF_PRSZ_Militia_AT", "CZ_Soldier_RPG_Wdl_ACR", "CZ_Soldier_AT_Wdl_ACR" ]; 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", "PCDF_PRSZ_Militia_AA", "PCDF_PRSZ_Soldier_AA", "PCDF_CDF_Soldier_AA_2011" ]; RHQ_Inf = [ "TK_GUE_Soldier_TL_EP1", "TK_GUE_Soldier_MG_EP1", "TK_GUE_Soldier_4_EP1", "TK_GUE_Soldier_Sniper_EP1", "TK_GUE_Soldier_5_EP1", "TK_GUE_Soldier_AT_EP1", "TK_GUE_Soldier_2_EP1", "TK_GUE_Soldier_HAT_EP1", "TK_GUE_Soldier_AAT_EP1", "TK_GUE_Soldier_AA_EP1", "TK_GUE_Soldier_EP1", "TK_GUE_Soldier_AR_EP1", "TK_GUE_Soldier_3_EP1", "TK_GUE_Bonesetter_EP1", "Soldier_Bodyguard_M4_PMC", "TK_GUE_Warlord_EP1", "CIV_Contractor1_BAF", "TK_CIV_Takistani03_EP1", "US_Soldier_AA_EP1", "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", "PCDF_CDF_Policeman_AKM", "PCDF_CDF_Policeman_RPK", "PCDF_CDF_Policeman_RPD", "US_Delta_Force_M14_EP1", "US_Delta_Force_MG_EP1", "US_Delta_Force_EP1", "US_Delta_Force_Assault_EP1", "US_Delta_Force_Marksman_EP1", "Soldier_Sniper_PMC", "PCDF_CDF_Policeman_Sniper", "PCDF_CDF_Policeman_SKS", "PCDF_CDF_Policeman_MAK", "PCDF_CDF_Policeman_SKOR", "PCDF_CDF_Soldier_Night", "PCDF_CDF_Soldier_Goshawk", "PCDF_CDF_Soldier_Sniper_Night", "PCDF_CDF_Soldier_2011", "PCDF_CDF_Soldier_FAL_2011", "PCDF_CDF_Soldier_Medic_2011", "PCDF_CDF_Soldier_M4_2011", "PCDF_CDF_Soldier_GL_2011", "PCDF_CDF_Soldier_TL_2011", "PCDF_CDF_Soldier_AR_2011", "PCDF_CDF_Soldier_LMG_2011", "PCDF_CDF_Soldier_Sniper_2011", "PCDF_CDF_Soldier_Marksman_2011", "PCDF_CDF_Soldier_Marksman_M14_2011", "PCDF_CDF_Soldier_AT_2011", "PCDF_CDF_Soldier_AA_2011", "PCDF_CDF_Soldier_M136_2011", "PCDF_CDF_Engineer_2011", "PCDF_CDF_Crewman_2011", "PCDF_CDF_Pilot_2011", "PCDF_PRSZ_Policeman_AKM", "PCDF_PRSZ_Policeman_RPK", "PCDF_PRSZ_Policeman_RPD", "PCDF_PRSZ_Policeman_Sniper", "PCDF_PRSZ_Policeman_SKS", "PCDF_PRSZ_Policeman_MAK", "PCDF_PRSZ_Policeman_SKOR", "PCDF_PRSZ_Militia_Soldier", "PCDF_PRSZ_Militia_Soldier_SKS", "PCDF_PRSZ_Militia_AR", "PCDF_PRSZ_Militia_AT", "PCDF_PRSZ_Militia_AA", "PCDF_PRSZ_Militia_Medic", "PCDF_PRSZ_Soldier", "PCDF_PRSZ_Soldier_Captive", "PCDF_PRSZ_Soldier_AKM", "PCDF_PRSZ_Soldier_Saiga", "PCDF_PRSZ_Soldier_Night", "PCDF_PRSZ_Soldier_GL", "PCDF_PRSZ_Soldier_TL", "PCDF_PRSZ_Soldier_MG", "PCDF_PRSZ_Soldier_LMG", "PCDF_PRSZ_Soldier_LMG_RPD", "PCDF_PRSZ_Soldier_RPG", "PCDF_PRSZ_Soldier_Metis", "PCDF_PRSZ_Soldier_AA", "PCDF_PRSZ_Soldier_Mark", "PCDF_PRSZ_Soldier_Mark_AK74", "PCDF_PRSZ_Soldier_Mark_CZ550", "PCDF_PRSZ_Soldier_Sniper", "PCDF_PRSZ_Soldier_Sniper_Night", "PCDF_PRSZ_Soldier_Sniper_KVSK", "PCDF_PRSZ_Soldier_Medic", "PCDF_PRSZ_Soldier_Crew", "PCDF_PRSZ_Soldier_Pilot", "PCDF_PRSZ_Engineer", "CZ_Soldier_RPG_Ass_Wdl_ACR", "CZ_Soldier_MG2_Wdl_ACR", "CZ_Soldier_Crew_Wdl_ACR", "CZ_Soldier_Engineer_Wdl_ACR", "CZ_Soldier_805g_Wdl_ACR", "CZ_Soldier_MG_Wdl_ACR", "CZ_Sharpshooter_Wdl_ACR", "CZ_Soldier_Medic_Wdl_ACR", "CZ_Soldier_Officer_Wdl_ACR", "CZ_Soldier_Pilot_Wdl_ACR", "CZ_Soldier_Wdl_ACR", "CZ_Soldier_AT_Wdl_ACR", "CZ_Soldier_805_Wdl_ACR", "CZ_Soldier_RPG_Wdl_ACR", "CZ_Soldier_Sniper_ACR", "CZ_Soldier_Light_Wdl_ACR", "CZ_Soldier_Spotter_ACR", "CZ_Soldier_Leader_Wdl_ACR", "CZ_Soldier_Spec3_Wdl_ACR", "CZ_Soldier_Spec2_Wdl_ACR", "CZ_Soldier_Recon_Wdl_ACR", "CZ_Soldier_Spec_Demo_Wdl_ACR", "CZ_Soldier_Spec1_Wdl_ACR" ]; 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", "PCDF_PRSZ_2S1", "PCDF_CDF_2S1", "PCDF_GRAD_PRSZ", "DSHKM_CZ_EP1", "2b14_82mm_CZ_EP1", "RM70_ACR" ]; RHQ_HArmor = [ "T55_TK_GUE_EP1", "M1A1_US_DES_EP1", "M1A2_US_TUSK_MG_EP1", "T72_TK_EP1", "T55_TK_EP1", "PCDF_PRSZ_2S1", "PCDF_PRSZ_T72", "PCDF_PRSZ_T72M", "PCDF_PRSZ_T55", "PCDF_PRSZ_T62", "PCDF_PRSZ_T64B", "PCDF_PRSZ_T64BV", "PCDF_PRSZ_T80B", "PCDF_PRSZ_T80BV", "PCDF_CDF_2S1", "PCDF_CDF_T72M", "PCDF_CDF_T62", "PCDF_CDF_T55", "PCDF_CDF_T64B", "PCDF_CDF_T64BV", "PCDF_CDF_T80B", "PCDF_CDF_T80BV", "PCDF_M1A1", "PCDF_T34", "T72_ACR" ]; RHQ_MArmor = [ "Pandur2_ACR", "BMP2_ACR" ]; RHQ_LArmor = [ "BTR40_MG_TK_GUE_EP1", "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", "M113Ambul_TK_EP1", "PCDF_BTR40_MG_CDF", "PCDF_BTR40_CDF", "PCDF_CDF_BTR60", "PCDF_LAV25", "PCDF_BTR40_MG_PRSZ", "PCDF_BTR40_PRSZ", "PCDF_PRSZ_BTR60", "PCDF_PRSZ_BRDM2", "PCDF_PRSZ_BRDM2_ATGM", "PCDF_PRSZ_BRDM2_HQ", "PCDF_ZSU_PRSZ", "PCDF_PRSZ_BMP2_HQ", "PCDF_BMP2_Ambul_PRSZ", "PCDF_M113", "PCDF_ZSU_PRSZ", "BMP2_ACR", "BRDM2_ACR", "Dingo_GL_Wdl_ACR", "Dingo_WDL_ACR", "Pandur2_ACR" ]; RHQ_LarmorAT = [ "M1135_ATGMV_EP1", "M1128_MGS_EP1", "BMP2_TK_EP1", "PCDF_PRSZ_BRDM2_ATGM", "PCDF_PRSZ_BMP1", "PCDF_PRSZ_BMP1P", "PCDF_PRSZ_BMP2", "PCDF_CDF_BMP1", "PCDF_CDF_BMP1P", "PCDF_LandRover_SPG9", "PCDF_UAZ_SPG9_PRSZ", "Pandur2_ACR" ]; RHQ_Cars = [ "UralRefuel_TK_EP1", "UralReammo_TK_EP1", "UralRepair_TK_EP1", "Pickup_PK_TK_GUE_EP1", "Offroad_SPG9_TK_GUE_EP1", "Offroad_DSHKM_TK_GUE_EP1", "V3S_TK_GUE_EP1", "V3S_Reammo_TK_GUE_EP1", "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", "PCDF_CDF_UAZ451_ML", "PCDF_CDF_UAZ451", "PCDF_CDF_UAZ451_AMB", "PCDF_LandRover", "PCDF_LandRover_MG", "PCDF_LandRover_SPG9", "PCDF_PRSZ_UAZ451", "PCDF_PRSZ_UAZ451_AMB", "PCDF_Offroad_DSHKM_PRSZ", "PCDF_Pickup_PK_PRSZ", "PCDF_UralReammo_PRSZ", "PCDF_UralRefuel_PRSZ", "PCDF_UralRepair_PRSZ", "PCDF_UralOpen_PRSZ", "PCDF_Ural_PRSZ", "PCDF_Ural_ZU23_PRSZ", "PCDF_GRAD_PRSZ", "PCDF_UAZ_PRSZ", "PCDF_UAZ_AGS30", "PCDF_UAZ_MG_PRSZ", "PCDF_UAZ_SPG9_PRSZ", "LandRover_ACR", "RM70_ACR", "T810_ACR", "T810A_MG_ACR", "T810_Open_ACR", "LandRover_Ambulance_ACR", "T810Reammo_ACR", "T810Refuel_ACR", "T810Repair_ACR" ]; RHQ_Air = [ "UH1H_TK_GUE_EP1", "A10_US_EP1", "AH64D_EP1", "AH6J_EP1", "AH6X_EP1", "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", "PCDF_Mi24_V", "PCDF_Mi24_P", "PCDF_Mi17_rockets_CDF", "PCDF_UH60L", "PCDF_UH60L_FFAR", "PCDF_UH60L_HF", "PCDF_CDF_Mig21_AA", "PCDF_CDF_Mig21_BMB", "PCDF_CDF_Mig21_CAS", "PCDF_CDF_AN2", "PCDF_C130J", "PCDF_SU34", "PCDF_CDF_L39", "PCDF_Mig29_CDF_AA", "PCDF_Mi17_medevac_PRSZ", "PCDF_PRSZ_Mi17", "PCDF_PRSZ_Mi17_rockets", "PCDF_PRSZ_Mi24_D", "PCDF_PRSZ_Mig21_AA", "PCDF_PRSZ_Mig21_BMB", "PCDF_PRSZ_Mig21_CAS", "PCDF_PRSZ_Su25", "PCDF_PRSZ_AN2", "PCDF_PRSZ_L39", "L159_ACR", "L39_ACR", "L39_2_ACR", "Mi171Sh_CZ_EP1", "Mi171Sh_rockets_CZ_EP1", "Mi24_D_CZ_ACR" ]; RHQ_NCAir = [ "AH6X_EP1", "MH6J_EP1", "Ka137_PMC", "PCDF_Mi17_medevac_PRSZ", "PCDF_CDF_AN2" ]; RHQ_RAir = [ "AH6J_EP1", "AH6X_EP1", "MQ9PredatorB_US_EP1", "Ka137_PMC", "Ka137_MG_PMC", "PCDF_PRSZ_L39", "PCDF_CDF_L39" ]; 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", "Rbs70_ACR" ]; RHQ_StaticAT = [ "TOW_TriPod_US_EP1", "Metis_TK_EP1", "SPG9_TK_INS_EP1", "Rbs70_ACR" ]; RHQ_Support = [ "V3S_Reammo_TK_GUE_EP1", "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", "PCDF_CDF_UAZ451_AMB", "PCDF_UralReammo_PRSZ", "PCDF_UralRefuel_PRSZ", "PCDF_UralRepair_PRSZ", "PCDF_PRSZ_UAZ451_AMB", "PCDF_Mi17_medevac_PRSZ", "PCDF_BMP2_Ambul_PRSZ", "LandRover_Ambulance_ACR", "T810Reammo_ACR", "T810Refuel_ACR", "T810Repair_ACR" ]; RHQ_Med = [ "HMMWV_Ambulance_DES_EP1", "M1133_MEV_EP1", "UH60M_MEV_EP1", "M113Ambul_TK_EP1", "PCDF_PRSZ_UAZ451_AMB", "PCDF_CDF_UAZ451_AMB", "PCDF_Mi17_medevac_PRSZ", "PCDF_BMP2_Ambul_PRSZ", "LandRover_Ambulance_ACR" ]; RHQ_Ammo = [ "MtvrReammo_DES_EP1", "UralReammo_TK_EP1", "PCDF_UralReammo_PRSZ", "T810Reammo_ACR" ]; RHQ_Fuel = [ "MtvrRefuel_DES_EP1", "UralRefuel_TK_EP1", "PCDF_UralRefuel_PRSZ", "T810Reammo_ACR" ]; RHQ_Rep = [ "MtvrRepair_DES_EP1", "UralRepair_TK_EP1", "PCDF_UralRepair_PRSZ", "T810Repair_ACR" ]; RHQ_Cargo = [ "M1126_ICV_M2_EP1", "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", "PCDF_BTR40_MG_CDF", "PCDF_BTR40_CDF", "PCDF_CDF_BTR60", "PCDF_LAV25", "PCDF_BTR40_MG_PRSZ", "PCDF_BTR40_PRSZ", "PCDF_PRSZ_BTR60", "PCDF_PRSZ_BRDM2", "PCDF_PRSZ_BMP1", "PCDF_PRSZ_BMP1P", "PCDF_PRSZ_BMP2", "PCDF_CDF_BMP1", "PCDF_CDF_BMP1P", "PCDF_Mi24_V", "PCDF_Mi24_P", "PCDF_Mi17_rockets_CDF", "PCDF_UH60L", "PCDF_UH60L_FFAR", "PCDF_UH60L_HF", "PCDF_PRSZ_Mi17", "PCDF_PRSZ_Mi17_rockets", "PCDF_PRSZ_Mi24_D", "BMP2_ACR", "BRDM2_ACR", "Dingo_GL_Wdl_ACR", "Dingo_WDL_ACR", "LandRover_ACR", "T810_ACR", "T810A_MG_ACR", "T810_Open_ACR", "Mi171Sh_CZ_EP1", "Mi171Sh_rockets_CZ_EP1", "Mi24_D_CZ_ACR" ]; RHQ_NCCargo = [ "V3S_TK_GUE_EP1", "MH6J_EP1", "HMMWV_DES_EP1", "MTVR_DES_EP1", "SUV_TK_EP1", "UAZ_Unarmed_TK_EP1", "V3S_TK_EP1", "V3S_Open_TK_EP1", "SUV_PMC", "PCDF_LandRover", "PCDF_PRSZ_UAZ451", "PCDF_UralOpen_PRSZ", "PCDF_Ural_PRSZ", "LandRover_ACR", "T810_ACR", "T810A_MG_ACR", "T810_Open_ACR" ]; 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", "PCDF_CDF_Crewman_2011", "PCDF_CDF_Pilot_2011", "PCDF_PRSZ_Soldier_Crew", "PCDF_PRSZ_Soldier_Pilot", "CZ_Soldier_Crew_Wdl_ACR", "CZ_Soldier_Pilot_Wdl_ACR" ]; Wow. That is huge. Almost 1000 classes! Found also and removed one more syntax problem. Anyway - problem with defensive stance persist still, so time for next tests. :) ---------- Post added at 14:19 ---------- Previous post was at 12:56 ---------- Shortly: I found problem in this mission, that causes this defense issue. This is strange however. Code was fine. Problem was objective triggers. These look fine, but for some reason was invisible for script. When I deleted them and placed again, all is working now. Ah, also edited mission.sqm and replaced two ACR vehicles with some else. Maybe this was about it? But then shouldn't happen to you... Anyway, now will check this front issue. BTW Changed by me mission is here: http://www22.zippyshare.com/v/47434969/file.html ---------- Post added at 14:52 ---------- Previous post was at 14:19 ---------- No "luck" - failed to reproduce this issue. Fronts are formed properly also for maximal scattered E forces. I'm not sure, what behavior of this way spread out forces you expect, but this probably will look this way, that most of them will move slowly towards it's Leader or current objective/attacked enemy inside Front E, which is usually quite small, near center of map... If these should be kind of guerilla across the country, then maybe better will be to exclude them from HAC and make them handled by another, more suitable for partizan behavior script? Guerilla style Leader's mode is planned, but not exist yet. Leaders currently act like regular commander, that has own objectives to take in typical manner of regular army (well. At least, kind of :)). ---------- Post added at 15:55 ---------- Previous post was at 14:52 ---------- Gents,It appears the Demo mission is not available as I get directed to another page which does not contain the mission file, any alternates? Thanks to Foxhoud link is restored and works. :) Edited August 31, 2012 by Rydygier Share this post Link to post Share on other sites
instagoat 133 Posted August 31, 2012 :D Yeah, finally... And yes, I like it a lot. :)---------- Post added at 11:36 ---------- Previous post was at 10:19 ---------- @InstaGoat After first test - indeed, all stuck in defensive mode, that's wrong of course. First, I had to remove from .sqm ACR content, so there was lack of some units, but this shouldn't affect. Second, I found, thanks to RPT file, Squint and own eye four syntax errors in RHQ config: 1. First array, class: PCDF_CDF_Soldier_Sniper_Night had wrong quote mark (some stylish, diagonal, as pasted from Word or something); 2. Lines 107 and 115 - lack of semicolon at end of the line; 3. HArmor RHQ: comma at end of array. Still, after corrections, problem with defensive stance occurs. So now I'll make furter test. :) ---------- Post added at 12:56 ---------- Previous post was at 11:36 ---------- After second test - noted, that "B" forces have far to low value (300 units, but only 12 value points, where each troop should to add 1 point at least). So checked RHQ with some tool, that I made for this purpose earlier, here is its report: Wow. That is huge. Almost 1000 classes! Found also and removed one more syntax problem. Anyway - problem with defensive stance persist still, so time for next tests. :) ---------- Post added at 14:19 ---------- Previous post was at 12:56 ---------- Shortly: I found problem in this mission, that causes this defense issue. This is strange however. Code was fine. Problem was objective triggers. These look fine, but for some reason was invisible for script. When I deleted them and placed again, all is working now. Ah, also edited mission.sqm and replaced two ACR vehicles with some else. Maybe this was about it? But then shouldn't happen to you... Anyway, now will check this front issue. BTW Changed by me mission is here: http://www22.zippyshare.com/v/47434969/file.html ---------- Post added at 14:52 ---------- Previous post was at 14:19 ---------- No "luck" - failed to reproduce this issue. Fronts are formed properly also for maximal scattered E forces. I'm not sure, what behavior of this way spread out forces you expect, but this probably will look this way, that most of them will move slowly towards it's Leader or current objective/attacked enemy inside Front E, which is usually quite small, near center of map... If these should be kind of guerilla across the country, then maybe better will be to exclude them from HAC and make them handled by another, more suitable for partizan behavior script? Guerilla style Leader's mode is planned, but not exist yet. Leaders currently act like regular commander, that has own objectives to take in typical manner of regular army (well. At least, kind of :)). ---------- Post added at 15:55 ---------- Previous post was at 14:52 ---------- Thanks a lot for your efforts! Yeah, I wanted them to behave guerillia style, I use the "Schemer" mode as an approximation. I wouldn´t have figured out that the problem was with the objective triggers. And yes, my RHQ arrays are massive, because I am a lazybum and just threw everything I had in there, so I could just copy and paste one init.sqs from mission to mission without having to re-do the arrays over and over again. Thanks for sorting them out, will try the mission as soon as I can. I will try and set up the Units in the fashion I had before, maybe I can reproduce the arrangement that caused the fronts not to be assigned. Maybe I did something else entirely unrelated that caused the issue, though. I am bad at keeping track of what I am doing some of the time, especially when I´m not purposely searching for errors. Thanks again for your superb support, it´s really appreciated! Rock on! Share this post Link to post Share on other sites
mikey74 186 Posted September 2, 2012 http://www.mediafire.com/file/bkan1171ic16fyc/ryd_hac.pbo <----- This is configs for I44 ONLY. So if you use this one I suggest to Create a HACWWII folder, and put an addons folder in that and place this PBO in that. And WHALLLa you have HAC for I44! ;) Enjoy! Share this post Link to post Share on other sites
Rydygier 1317 Posted September 2, 2012 (edited) Thanks Mikey74. :) However - 1.2 beta2 released. Found several bugs in first beta, so here is next one, fixed, plus some additional code improvements. Note, that corrected is also name of init config variable for chance for omission recon stage: was RydHQ_NoRecon (wrongly) is: RydHQ_NoRec. Note also additional debug for BB ("offensive path" for each leader shown as blacks quares linked by pink lines, and blue square, that indicates current target. This, I hope, will allow to understand better BB's work flow). Also - one change in BB config - now for BB RydHQ_LRelocating should be left inactive, as is by default. HAC's Leader relocator not worked with BB, so replaced it with BB's own solution for that. Link to first beta stays for now, in case, if I removing these errors introduced new, worse. :) BB still needs more testing, so still is beta. Edited September 2, 2012 by Rydygier Share this post Link to post Share on other sites
mikey74 186 Posted September 2, 2012 (edited) Sigh's lol yeh you warned me to wait. lol I'll get on re doing the I44 sometime this week. lol Hey is there a way to make sure one HQ is set just to attack rather than defend, AND Possibly a bug I'm not sure. But in a mission I made I have the Germans displacing and falling back. It ends up putting 3 or 4 defend positions for the germans. BTW The Germans are set to defend, and I dont think it effects it badly, but wasnt sure if its something you might be interested in. :) PS Did you have to change the configs at all. If not I can just copy and paste and that wont take too long ;) The last one you did change it a bit. _recon = RHQ_Recon + <--- something like that is this part the same? Edited September 2, 2012 by Mikey74 Share this post Link to post Share on other sites
katipo66 94 Posted September 2, 2012 BigBoss Awakes!! :D Thanks Mikey74. :) However - 1.2 beta2 released. Found several bugs in first beta, so here is next one, fixed, plus some additional code improvements. Note, that corrected is also name of init config variable for chance for omission recon stage: was RydHQ_NoRecon (wrongly) is: RydHQ_NoRec. Note also additional debug for BB ("offensive path" for each leader shown as blacks quares linked by pink lines, and blue square, that indicates current target. This, I hope, will allow to understand better BB's work flow). Also - one change in BB config - now for BB RydHQ_LRelocating should be left inactive, as is by default. HAC's Leader relocator not worked with BB, so replaced it with BB's own solution for that. Link to first beta stays for now, in case, if I removing these errors introduced new, worse. :) BB still needs more testing, so still is beta. Thanks Rydygier, look forward to testing it, and additional debug sounds good for understanding whats going on... I did try porting BB on to other maps with not much success, i would sometimes get a script error (i forget details) or big boss awakes, studies map but nothing eventuates after that.. anyway ill test with new version and see how we go. Share this post Link to post Share on other sites
Rydygier 1317 Posted September 3, 2012 (edited) Hey is there a way to make sure one HQ is set just to attack rather than defend, This is possible. Of course, not easy task to convince HAC, that eg. attack with one group against ten is good idea, but, with some little scripting... Two global variables are crucial here: RydHQ_Morale and RydHQ_Inertia. First can have value in range -50 to 0, second - unlimited. The higher these values are, the more sure is, that attack will be chosen. So need to launch along with HAC a simple loop to keep one or both of them with high values, as these are recalculated every HAC's cycle. Eg: while {(true)} do { sleep 10; RydHQ_Inertia = 10000; RydHQ_Morale = 0 }; But in a mission I made I have the Germans displacing and falling back. This can be part of new morale simulation. If morale is low, fleeing in panic and even surrendering may occur here and there. Perhaps is not optimal calibrated yet. Depends on exact tactical situation in this mission. If you do not want to see such behavior, use RydHQ_Flee = false in yours init config to turn this off totally, or manipulate RydHQ_Muu config variable (cowardice factor multiplier) to set chances for that smoothly. Default is 1. 0.5 means 50% lower chances for fleeing/panic and so on, but in certain limits, cowardice factor is always from 0 to 1 range. This also can be result of added in 1.2 withdrawing given group in face of overwhelming enemy (see RydHQ_DebugII option - additional markings - dots with numbers at each group position indicates value of this factor). In such situations is possible, that group will get "go rest" order, so will wthdraw to certain position, but then will be fully available again. EDIT: Hmm. Actually, if you want, I can think about special config variable, that will keep HAC in attack mode regardless of circumstancies and maybe to make withdrawing optional... EDIT2: OK. Added both. In the next release will be possible to set special "berserk"/"ура, вперед!" mode to keep Leader in offesive stance always. Threat level needed for withdrawal given group will be multiplied by cusomizable variable (default 1), if set to 0 - this feature will be inactive (no such withdrawal). Did you have to change the configs at all. If not I can just copy and paste and that wont take too long The last one you did change it a bit. _recon = RHQ_Recon + <--- something like that is this part the same? No, this part wasn't touched by me quite long time, since one of first 1.1wips, when added RHQs for subtraction default classes. Is same, as in first beta, so copy&paste is fine. ---------- Post added at 09:13 ---------- Previous post was at 09:06 ---------- I did try porting BB on to other maps with not much success, i would sometimes get a script error (i forget details) or big boss awakes, studies map but nothing eventuates after that.. I'll appreciate, if such mission do not needs heavy addons, if you give me it, so I can see, what is wrong - yours mistake (so I can help and explain), or a bug (so I can hunt it down). Edited September 3, 2012 by Rydygier Share this post Link to post Share on other sites
mikey74 186 Posted September 3, 2012 The displacing and falling back was something I put in there ;) I was just wondering if the defend marker was an indication of something I wasnt seeing. Maybe HAC just changes the defend position based on where all the other units are spawning. Does this mean that they are defending multiple positions? This can be part of new morale simulation. If morale is low, fleeing in panic and even surrendering may occur here and there. Perhaps is not optimal calibrated yet. Depends on exact tactical situation in this mission. Maybe this is why they will not fire at some of the playable units. I tried it without HAC and they will fire. I wonder if that has anything to do with them not fireing at the playable units? The thing is the Germans have tactical advantage at the begining. So I have set them as defend. Sometimes the allies will go into defend mode too. I'll try your loop see if this corrects this. Eventual after the beach is captured by playable units. The Allies have the advantage and the initiative. No, this part wasn't touched by me quite long time, since one of first 1.1wips, when added RHQs for subtraction default classes. Is same, as in first beta, so copy&paste is fine. Ahhh this must be why it seemed to not be working correctly before I discovered this. :) Thanks for your response. I'll redo those configs on the beta 2 sometime soon. :) Share this post Link to post Share on other sites