Jump to content

Recommended Posts

No, it hasn't been. They should still use them - mainly if they are uncertain about nearby enemy's position.

I don't think I have ever witnessed an Arma 3 AI throwing a hand grenade. Not sure about un-modded Arma 2, they definitely threw hand grenades in A2 ASR AI.

buggers love to throw them if they only have a side arm

That might be, but why should it be this way?

Edited by Variable

Share this post


Link to post
Share on other sites
I don't think I have ever witnessed an Arma 3 AI throwing a hand grenade. Not sure about un-modded Arma 2, they definitely threw hand grenades in A2 ASR AI.

That might be, but why should it be this way?

I noticed awhile ago some of these behaviours were dependent on server performance. If the server FPS was below ~10, they wouldn't throw anything (smokes/frags).

Share this post


Link to post
Share on other sites

Random question ...

Does 'copilot' mean anything to AI?

For the life of me I cannot get an AI copilot to fly the heli, say, should the pilot die in-flight.

have tried code like this:

cursorTarget enableCopilot TRUE;
(cursorTarget turretUnit [0]) action ['TakeVehicleControl',cursorTarget];

tried adapting that to a 'Killed' EH of the pilot, still no luck.

Share this post


Link to post
Share on other sites

The AI copilot was developed but it didn't prove feasible - so sadly the AI isn't and won't be able to take over the helicopter controls.

Share this post


Link to post
Share on other sites
The AI copilot was developed but it didn't prove feasible - so sadly the AI isn't and won't be able to take over the helicopter controls.

ok TY at least no more head banging required

On the bright side I can shave a couple AI out of the scenario.

Share this post


Link to post
Share on other sites
The AI copilot was developed but it didn't prove feasible - so sadly the AI isn't and won't be able to take over the helicopter controls.

Actually if AI is in pilot seat, you can easily take controls from co-pilot seat and fly, and when you release controls AI takes over and well, safely lands the heli in my test.

Share this post


Link to post
Share on other sites

@oukej:

Is there a plan to give mission editors/scripters the ability to override automatic combat behavior in the AI? I realize that the AI switching to combat behavior automatically when "feeling threatened" goes back to OFP, but combat behavior has changed a lot since then, and right now the situation is such that combat behavior is essentially non-responsive behavior. It makes it practically impossible to script something as simple as getting an infantry unit to go directly from point A to point B while in enemy territory. As a mission designer, this is extremely frustrating.

"Stealth" and "Careless" modes already override the automatic switch to combat behavior. Unfortunately, "Careless" results in forced "Safe" behavior, which is rarely useful, and "Stealth" is pretty much just "Combat" mode with whisper sounds instead of yelling ones. Why can't we have access to an "Aware" (or "Aware"-like) mode that also overrides the automatic switch to combat behavior? This one little thing would allow for so much more control over the AI.

Share this post


Link to post
Share on other sites

Although this has been asked s million times before, I can only second, once again, Dux's question.

Please save us from the dreaded FSM combat mode nightmare.

Share this post


Link to post
Share on other sites

@ Variable: If you could elaborate on "FSM combat mode" beyond "nightmare"? Unless you just meant what ST_Dux did... I only really (visually) saw it in a Zeus SP scenario of three NATO dismounted rifle squads marching on a CSAT-held town (with small two-man CSAT pickets/screens), movement and ordering was perfectly fine up until contact was initiated, then it was a mess where (to me inexplicably) the overwhelming majority of NATO KIA were squad/team leaders...

Share this post


Link to post
Share on other sites

I was simply referring for the AI irresponsiveness when in Combat mode, and the commanding player/mission designer to force the AI to move fast while under fire.

Surely you have witnessed that if you played any scenario that involved commanding AI in combat.

Edited by Variable

Share this post


Link to post
Share on other sites

Totally agree, even in Zeus, trying to order squads to go places or fallback after they get into combat is a huge hassle, and has resulted in me doing some pretty silly/hacky things sometimes just to get units where i want or need them to be.

It would be fantastic to get some kind of 'override' toggle or command like you guys are suggesting. Even just a 'move here at all cost' combat mode would be a lifesaver. Even though Zeus is amazing it's still oftentimes a lot more of a struggle than it should be to get units to respond in the right ways.

Share this post


Link to post
Share on other sites

It would also be useful to be able to affect negatively to the knowsAbout value (would go pretty much hand in hand with the 'GTFO' command), either have a new command for a degree of forget or allow reveal to use nagative values or something..

I find it a tad weird that the engine is able to lower the knowsAbout value on it's own (x amount of time since last LOS or whatever) but we can't get a scripting command to expedite/shortcut the process.. :(

Share this post


Link to post
Share on other sites

Problem might be that if your squad is under fire the knowsabout would instantly be set back to an aware state

Share this post


Link to post
Share on other sites

That's right. It is easy to make them forget about the enemy by script, the problem is they go back to combat behavior when they see the enemy again. Ordering the units to hold fire, and formation diamond, works sometimes.

Share this post


Link to post
Share on other sites
Problem might be that if your squad is under fire the knowsabout would instantly be set back to an aware state

Meant that if there was such a scripting command it would be useful in many cases (like making AI responsive faster after enemy threat is gone), of course there should be a 'GTFO' command with different functionality and a AI commanding UI command to go with it in

addition..

I haven't found any kind of fool proof way of making the AI to forget the enemy faster than deleting and re-creating them which is not really optimal..

Share this post


Link to post
Share on other sites
That's right. It is easy to make them forget about the enemy by script

Is it? Because if so i would like to try something with it, but i have no idea how (except for deleting and recreating units).

I just tried modding a 'hurry up' command by making a way to exit the fsm (and applying some normal 'go faster' scripting) and starting it back up whenever needed. Unfortunately the fsmFormation isn't really moddable, it seems to hook directly into the engine and you cant really add your own code to that, and i dont feel like writing all combat behaviour from scratch in a normal format. :p

(Btw, the information about formationEntity.fsm at the wiki (https://community.bistudio.com/wiki/Arma_2:_Operation_Arrowhead:_AI_FSM#formationEntity.fsm_4) isnt completely correct as i was able to assign an external FSM, just not the normal formationEntity.fsm as that uses the weird 'hook into engine' format, and not the normal scripting one. Loading an edited formationEntity through cfgFSM is also possible, but as said those cant seem to contain own code so that is pretty useless. Or maybe it is possible, but i cant figure out how)

EDIT: For anyone interested, formationEntity seems to be compiled with 'entityFSM.cfg' by the FSM editor, other FSMs with 'scriptedFSM.cfg'. Just changing the cfg doesnt produce any working results (Unsuprisingly). Files can be found in your 'x:\..\Bohemia Interactive\Tools\FSM Editor Personal Edition' folder.

Edited by NeMeSiS

Share this post


Link to post
Share on other sites
Is it?

When a unit joins another group, it doesn't carry the targets it knows about to the new group. Being you who's asking, I guess that's enough explanation. :notworthy:

Share this post


Link to post
Share on other sites

I really don't understand why this request is continuously ignored. Honestly, how difficult could it be to make the AI ignore automatic danger behavior? There is no need to add anything at all beyond a simple switch to do what the engine does automatically anyway. There are several ways this could be done:

  • As mentioned earlier, introduce a new behavior mode that would be identical to "AWARE" except that it would override the automatic switch to "COMBAT" like "CARELESS" and "STEALTH" modes already do. Like "CARELESS", this mode would probably make the most sense as a script-only mode.
  • Introduce a new scripting command that forces the "Area Clear" AI mentality. This would essentially suppress all reaction to knowledge of enemy presence until disabled.
  • Modify the effect of disableAI "FSM" so that it essentially produces the same "knowledge suppression" effect. (Side note: disableAI "FSM" currently seems totally pointless).

I'm sure there are other possible methods, too. This can't be that difficult. Can it?

Share this post


Link to post
Share on other sites
[*]Modify the effect of disableAI "FSM" so that it essentially produces the same "knowledge suppression" effect. (Side note: disableAI "FSM" currently seems totally pointless).

DisableAI "FSM" works fine if you do it before the AI enters combat mode*, but doesn't seem to do anything after the FSMs already started doing their thing. I tried combining it with seba1976's trick mentioned above, but i just got the AI stuck instead. Though i didnt try very thoroughly so feel free to do your own attempt.

*Making the AI rush enemy positions is quite possible as a mission editor with tricks like this, but as a commander we seem to be out of luck.

Share this post


Link to post
Share on other sites
Totally agree, even in Zeus, trying to order squads to go places or fallback after they get into combat is a huge hassle, and has resulted in me doing some pretty silly/hacky things sometimes just to get units where i want or need them to be.
Sounds more or less like what we're experiencing, though I'll note that it seems to be 1:1 between Zeus and "normal" group command (as a group leader) in the sense that I don't believe that it works particularly better or worse in Zeus, it's just more noticeable thanks to the wide-FOV overhead camera. Don't some "more conventional" (twitch) shooters have prioritizing of player commands over "autonomous behaviors based on awareness"?

Share this post


Link to post
Share on other sites
When a unit joins another group, it doesn't carry the targets it knows about to the new group. Being you who's asking, I guess that's enough explanation. :notworthy:

That's very interesting information. I can see making a workaround using this, but it might be messy. This would only work to bring about a "clear" state faster, though; I can't see it really doing anything for movement under fire.

DisableAI "FSM" works fine if you do it before the AI enters combat mode*, but doesn't seem to do anything after the FSMs already started doing their thing. I tried combining it with seba1976's trick mentioned above, but i just got the AI stuck instead. Though i didnt try very thoroughly so feel free to do your own attempt.

*Making the AI rush enemy positions is quite possible as a mission editor with tricks like this, but as a commander we seem to be out of luck.

Is this really true? I will have to test it more. I remember trying disableAI "FSM" and finding that it did nothing to prevent automatic "COMBAT" behavior, but perhaps I wasn't using it right.

Now I have something to test. Thanks guys!

Share this post


Link to post
Share on other sites

On the layer of engine (pathfinding, danger reactions, behavior switching...) there are two FSMs running

- behavior (formation) FSM, running all the time, defined in "fsmFormation" property of a class in cfgVehicles

- danger FSM, triggered by a danger cause, defined in a property called "fsmDanger"

The FSM can be scripted (in vanilla that goes for danger or civilian FSMs) or "native", using engine functions (now used for behavior (covers, bounding overwatch...) of soldiers). Disabling them is possible via the mentioned scripting command or defining an empty string in the property. Currently it can help the AI move faster through an area with a lot of cover positions (urban areas).

It's actually quite funny that you've brought this up recently - it has been quite intensively in our focus. And will be for some time. We hope to solve several issues and possibly also make the whole thing more modding friendly, but I can't say much as for now. Maybe just - expect a few less updates in the upcoming weeks. Thanks a lot for your patience!

Also - I don't think the sometimes mentioned "force-move" action would be a good-enough solution, solid and universal. The default state should be a cautious AI that values its life, but not an AI that's lagging behind or even getting stuck.

Share this post


Link to post
Share on other sites
Disabling them is possible via the mentioned scripting command or defining an empty string in the property. Currently it can help the AI move faster through an area with a lot of cover positions (urban areas).

:idea: Environment based FSM wouldn't help in the performance? You have now some enviroment detection used for weapon tails. I think same maybe useful for the AI too. Eg.: fsmDangerUrban, fsmDangerForest etc.

Share this post


Link to post
Share on other sites

oukej:

since you seem to be devoting some time to it, i did some limited tests some time ago, and was partly sucessful in getting units more responsive, check the following ticket, wherein i tighten the searchPath parameter to reduce the AI cover checks. How viable could this actually be to solve the problem?

(take the ticket with a grain of salt - i'm being a bit more conclusive than I whish there,

I do remember having tested a group of AI with several values

"{10,5}" appear to be distance from expectedDestination in meters as seen from the top

with big values AI was all over the place and taking a long time to move,

i did not try with custom formation geometries)

Edited by gammadust
salting my tone

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

×