Jump to content
rawalanche

Suggestion about AI for future ArmA games

Recommended Posts

Hi,

i am not sure anyone from actual dev team reads these forums, but it's worth a try.

In my opinion, singleplayer side of ArmA series feels as mediocre result of awesome immersive open environment simulator constantly spoiled by frustrating aspect of micro-managing incredibly incompetent AI, that often simply ruins mission flow. So i've tried to search what's exactly causing this frustration, and i've come up with an idea.

Since we are not in 18th century anymore, and battles are not executed as a formations of soldiers standing opposite of each other with muskets raised waiting for fire order, i would suggest to completely ditch formation system (or at least make it some special mode, that's off by default). In modern battlefield, fromations are used only very rarely, and most of the time, soldiers move from cover to cover to avoid being spotted and/or hit.

I've recently played OFP2: DR again, and while Codemasters have gotten most of the stuff wrong, they've gotten a few things right, squad movement being one of them. When i saw that my squad mates actually take cover and move according to the surroundings, it was a lot more enjoyable gameplay since i could really care about what's going on in the environment, not having to care what my team memebers do all the time.

A few times, i actually had a great immersive feeling of "wow, that guy just saved my ass". That just never happens in ArmA. Only time I am impressed with ArmA AI when the moron actually manages to successfully use rocket launcher before entire squad is wiped out and before he gets killed.

It's the feeling that ruins the entire experience for me. As much as a try to enjoy the game, i never can fully relax my mind because i always need to sacrifice part of my focus to micromanage those infants in grown men bodies, who don't even know they should go stand behind a cover when fired upon.

So while it may sound too radical, i think that about 75% of all squad commands could be removed from the game, and replaced by some autonomy. The point of ArmA is being realistic simulator, and in reality, soldier acts with some amount of autonomy.

Yes, one should be able to command the squad, but just to certain extents. I think it's quite ridiculous having to tell your team mates which direction should they watch, if they should stand or lay down, or exact point in the space relative to your body where should they move when you move.

These things could be handled more autonomously. Like just telling them to stay closer to you, or to spread out a bit. Telling them to hold fire, or fire upon your lead, or fire as they wish, but don't divide it into groups of fire commands and engage commands.

I am just trying to imagine how much more awesome could ArmA series be, if you had a feeling you are a commander of an actual squad of soldiers that are there to actually help you with your mission, and save you in a tight situation, instead of constantly having to worry and keep checking if a script in that little rat's head got executed properly so he isn't stuck in a fence or standing up and uncovered looking straight in a cannon of a tank. :)

Share this post


Link to post
Share on other sites

Dragon Rising was awful though. Felt like a more open CoD but without the action. Codemasters missed completely what made original OFP so good. I think a sollution could be more reliance on scripted AI in different situations, especially in single player part. More advanced AI is only going to eat even more CPU resources. Taking away more command options would some describe as 'dumbing down' the game. Maybe better voice command integration is the future of things. Question is just how AI would recognize voice commands. The command system from Full Spectrum Warrior was pretty good and efficient:

Edited by noob1

Share this post


Link to post
Share on other sites
Dragon Rising was awful though. Felt like a more open CoD but without the action. Codemasters missed completely what made original OFP so good. I think a sollution could be more reliance on scripted AI in different situations, especially in single player part. More advanced AI is only going to eat even more CPU resources. Taking away more command options would some describe as 'dumbing down' the game. Maybe better voice command integration is the future of things. Question is just how AI would recognize voice commands. The command system from Full Spectrum Warrior was pretty good and efficient:

Or maybe you over looked it slightly as taking or adding features, but he's got a point. It wouldn't really be dumbing down the game, or making it eat up CPU. It's more like taking existing commands , but making the AI manage some commands themselves for the player depending on a situation, leaving the player with more room to manage the most important and straight forward commands. This would be really good, as commanding a large amount of AI is a pain with so many things each AI needs to do in order to not get killed. I've experienced a pretty good Ai script for Arma. 2 before whee the AI were strictly Combat Enhanced. Once fired upon the Ai would determine the position of the shot, communicate with other Ai about the threat, and flank the player. I under estimated them and died because the AI had flanked me completely out of sight, and got me when I thought it was a player. So there is a way.

Share this post


Link to post
Share on other sites
So while it may sound too radical, i think that about 75% of all squad commands could be removed from the game, and replaced by some autonomy. The point of ArmA is being realistic simulator, and in reality, soldier acts with some amount of autonomy.

Yes, one should be able to command the squad, but just to certain extents. I think it's quite ridiculous having to tell your team mates which direction should they watch, if they should stand or lay down, or exact point in the space relative to your body where should they move when you move.

These things could be handled more autonomously. Like just telling them to stay closer to you, or to spread out a bit. Telling them to hold fire, or fire upon your lead, or fire as they wish, but don't divide it into groups of fire commands and engage commands.

Agreed.

Share this post


Link to post
Share on other sites

Yep... that was my point.

I think the best way to explain how it would make things better and improve realism is following:

Imagine you were on a paintball or airsoft match, and had to command a team of people. How would you communicate with them. Would you micro manage each of them, telling them when should they lay down, when should they fire, what should they cover behind, which direction should they look, who should they shoot at? Of course not. You would just tell them general guidelines, like: "Let's keep low now, so we don't get spotted. Shoot only on my lead or when under direct fire. Don't go too far from me"

So that's how i imagine new AI would work. For example: A leader would have a radius around himself, a virtual circle. This circle diameter would be defined by a set of three commands: keep together, spread out, wide spread. Say the middle one, spread out would make circle 20 meters in diameter. As the player stands, AI would run to hide near any objects that are in the diameter of the circle, and orient themselves around the object so that they are back to the leader, and front out of the circle behind the cover.

As the leader moves forward, circle moves with him. As soon as any of the AI leaves circle, AI would run chasing the circle, and once in circle, looking for new cover. Only if there was no cover in range, AI would form up.

If engaged, AI would break the rule of facing outwards the circle with their backs pointing at leader, and instead would get to the cover on the opposing side of the fired shots or spotted targets. Team members would always pick up targets and cover according to who is closest to the angle of the conflict, so if attacked from multiple direction, each AI would cover their angle, creating sort of protective circle around leader.

Another good set of commands would be flank and storm the front. Now the advance and flank commands simply offset the position in the formation. New commands would work as follows.

Storm the front would make team or selected units attack the position under the cursor. They would advance forward in a tactical cascade fashion, covering each other, approach the area and clear it out. Flank commands would to the same. Target area would be again defined by the cursor positon, but instead of approached directly, AIs would either flank around the position from the left or right in.

Next idea would be to unify fire and engage commands.

There would be three commands. Hold fire (but still return fire if fired directly upon, let's say if bullets hit within 2-3 meter proximity), fire only on my lead (AIs would hold fire unless you as a commander fire, once you fire, they would switch to free fire mode) and free fire mode, making them fire at their will. Engage commands would be ditched, replaced with single attack command, which would simply mean go, break formation, attack that unit, and form back up.

Last idea is for combat modes: Stealth, danger, aware, and safe could be replaced by: Defensive, keep low, fast pace and safe:

Defensive would make soldiers seek cover at all cost, mainly to cover themselves at the expense of offense. Mainly to enforce survival. This mode would also put emphasis on prone when moving. Running would be only from cover to cover.

Keep low would be regular combat mode. Sort of what danger mode is now. Movement is fast, but when not moving, low stances such as kneeling and lying down are preferred. Combined with fire upon my lead command menioned above, this mode would result in a stealth behavior.

Fast pace would enforce swift movement at all cost. Running and following commander is preferred over taking cover or returning fire.

Safe would be good old safe, where soldiers put guns down or on their backs. Useful for cutscenes i guess.

As for actual stances, like stand up, keep low or go prone, those would be fully autonomous, derived from combat mode.

Edited by rawalanche

Share this post


Link to post
Share on other sites

AI commands can be rather fiddly, and it takes some trial and error to know which commands to issues in a given situation.

As far as engaging in combat with the squad as a whole, the AI will seek and move from cover to cover. They won't blindly stay in formation. And if I order engage at will, they are pretty much autonomous, and works well enough without micromanagement. All I need to do is to occasionally tell part of my squad to flank, or order them to a better position for cover fire.

Using the combat mode wisely can help in a lot of situation as well. In each mode their (autonomous) behaviour is different and most of the situations I come across I can apply one of those mode, and I only need to modify the behaviour that I don't want using other commands.

"Safe" and "stay alert" - AI moves in formation. In "Stay alert", when they are fired upon, they would go into danger mode until it is clear (which strangely, even as a team leader, you cannot declare all clear)

"Stealth" - AI seeks and move from cover to cover, and stay crouched or prone when stationary. One AI will move, and then stay to cover to next, so this is a rather slow movement, but will be, well, stealthier. Of note is that they will still fire their weapon, and engage enemy. (I haven't done any test to confirm it, but it seems that they are less aggressive and less likely to actively engage enemy)

"Danger" - AI seeks and move from cover to cover, but will stay crouched or standing instead, so that when they need to move they can move instantly. Similar to "stealth", leapfrogging is in use as well.

In some sense, the combat modes' name can be misleading. If I am behind enemy line or expecting contact, I would actually use 'stealth' mode, rather than "stay alert"

Whilst I would agree that for most other commands I rarely use them, I need use them when I have something special in mind, because those are behaviours that I want to be able to control.

Just an example: if I am setting up an ambush, I won't want them to be crouching or standing, not until our target is in the kill zone. What I would do is to tell them to look at the kill zone and go prone. I would also use danger mode and engage at will well before the target arrives, since I don't want to fiddle with commands when things get hot. To stop them from firing early, I would tell them to hold fire. So when I see that the is arriving, all I need to do is to order them 'copy my stance' when target is about to get into the kill zone, and 'open fire' when the target is in.

Copy my stance is the default state, and AI will move crouching or standing up, but when they stop, they will copy your stance. So if you want them to stay low when stationary, all you need to do is to go prone. But if you do want them to crawl when they move, order them to go prone.

So I think it all comes down to anticipation. Think about what you might run into, choose a right combat mode, and give commands to modify some behaviour as needed.

Share this post


Link to post
Share on other sites

Idea of reducing necessity of micromanaging your team of AI and make that minimum more believeable is right by all means. IMO obvious to anyone, who tried to lead a group of AI in Arma. Even if that means a revolution, that will break big part of current content, like AI mods or missions based on current system. Each such deep change would, its inevitable and I'm OK with that. Not changing something important needing a change because that would somehow spoil previous missions is stupid to me. I would however prefer to keep an option of manual micromanaging just in case. Sometimes simply I would like to point manually where each of them should stand etc. while in general I don't want to be forced to do that all the time.

The problem is, that means, they (devs) have to learn AI, how to behave reasonably, human-like etc. on their own, autonomouslyy and without player's intervention in all possible situations. So far I saw no signs, that would give me a hope, it may happen. Not in A3 anyway.

Share this post


Link to post
Share on other sites

The problem is, that means, they (devs) have to learn AI, how to behave reasonably, human-like etc. on their own, autonomouslyy and without player's intervention in all possible situations. So far I saw no signs, that would give me a hope, it may happen. Not in A3 anyway.

I for one would be happy if they fix the driving AI for once.

Watching an AI driven car making a 180° U-turn makes me cringe.

It's absurd how they (AI dev team) programmed this.

On the other hand there are already plenty of excellent AI mods/script packages out there which are easy to implement.

Theres no reason other than a mission makers lazyness that these billions of missions exist, where AI groups are standing out in the open in "AWARE" mode + wedge formation.

Other than that the AI has vastly improved since A2:OA, can't count the times when vanilla AI unexpectedly managed to flank me.

Share this post


Link to post
Share on other sites

Yep. AI driving is one of the oldest and worst AI problem in Arma.

On the other hand there are already plenty of excellent AI mods/script packages out there which are easy to implement.

Theres no reason other than a mission makers lazyness that these billions of missions exist, where AI groups are standing out in the open in "AWARE" mode + wedge formation.

Sure. But that's another matter completely. When I'm saying about believeable, human-like behavior, I have in mind something more, than simple changes of group combat mode. Something deeper, than is possible to achieve with scripts today. Mods are never a good answer for imperfections of the game itself. Worst thing, I could hear as a modder would be, so devs wouldn't fix in game some issue, because my mod does that already. For me probably nothing would be more demotivating - knowing, so something important to me will stay broken because of me. Anyway, AI scripts are great thing, my favourite aspect of scripting in fact, but all of them suffer limitations, that would never allow them to achieve, what is desired for AI in 100%. Another limitation is efficiency-wise.

Other than that the AI has vastly improved since A2:OA, can't count the times when vanilla AI unexpectedly managed to flank me.

Indeed, some aspects was improved. That's why now we can hope or even expect something more, raise our dreams a level higher. :) BTW - flanking yes, but not unexpectedly. You can count on it and exploit that knowledge.

Share this post


Link to post
Share on other sites

@GrumpyOldMan

Check out the latest version of Genesis92x's Vcom_AI. It contains a tiny routine that has a huge impact on AI driving. Not perfect yet, but the difference to vanilla A3 is already jaw-dropping.

Hopefully he'll agree to release it as a standalone script/addon as I for one enjoy playing selected missions through using different AI mods.

Share this post


Link to post
Share on other sites
AI commands can be rather fiddly, and it takes some trial and error to know which commands to issues in a given situation.

As far as engaging in combat with the squad as a whole, the AI will seek and move from cover to cover. They won't blindly stay in formation. And if I order engage at will, they are pretty much autonomous, and works well enough without micromanagement. All I need to do is to occasionally tell part of my squad to flank, or order them to a better position for cover fire.

Using the combat mode wisely can help in a lot of situation as well. In each mode their (autonomous) behaviour is different and most of the situations I come across I can apply one of those mode, and I only need to modify the behaviour that I don't want using other commands.

"Safe" and "stay alert" - AI moves in formation. In "Stay alert", when they are fired upon, they would go into danger mode until it is clear (which strangely, even as a team leader, you cannot declare all clear)

"Stealth" - AI seeks and move from cover to cover, and stay crouched or prone when stationary. One AI will move, and then stay to cover to next, so this is a rather slow movement, but will be, well, stealthier. Of note is that they will still fire their weapon, and engage enemy. (I haven't done any test to confirm it, but it seems that they are less aggressive and less likely to actively engage enemy)

"Danger" - AI seeks and move from cover to cover, but will stay crouched or standing instead, so that when they need to move they can move instantly. Similar to "stealth", leapfrogging is in use as well.

In some sense, the combat modes' name can be misleading. If I am behind enemy line or expecting contact, I would actually use 'stealth' mode, rather than "stay alert"

Whilst I would agree that for most other commands I rarely use them, I need use them when I have something special in mind, because those are behaviours that I want to be able to control.

Just an example: if I am setting up an ambush, I won't want them to be crouching or standing, not until our target is in the kill zone. What I would do is to tell them to look at the kill zone and go prone. I would also use danger mode and engage at will well before the target arrives, since I don't want to fiddle with commands when things get hot. To stop them from firing early, I would tell them to hold fire. So when I see that the is arriving, all I need to do is to order them 'copy my stance' when target is about to get into the kill zone, and 'open fire' when the target is in.

Copy my stance is the default state, and AI will move crouching or standing up, but when they stop, they will copy your stance. So if you want them to stay low when stationary, all you need to do is to go prone. But if you do want them to crawl when they move, order them to go prone.

So I think it all comes down to anticipation. Think about what you might run into, choose a right combat mode, and give commands to modify some behaviour as needed.

I think i have quite good understanding of how current command scheme works. I've been playing all ArmA games since original OFP. But understanding it does not mean it's sufficient. And that is my issue.

Share this post


Link to post
Share on other sites

Any AI video comparison of Arma 3 and Codemaster's OFPs? I'd need proof, to see situations actually reproduced.

Share this post


Link to post
Share on other sites

Just touched on it in another thread.

In-engine stacking of AI behavior into fewer threads.

The AI just cannot do a terrain like Altis justice, when any known CPU chokes with 200 AI in combat. Lemnos has population of 19,000. How great it would be to fly around with 19,000 AI running around below and then some areas where fighting is taking place? :) That would be a kickass simulation.

Instead we have two choice:

1. Limit the scenario to a small area and try to produce nice rich simulation in that small area.

2. Allow entire-island scenario and experience a dead and barren landscape with extremely low population density. Driving through 10 empty towns creates the negative thought process of "Where is everyone? Oh, its game" immersion breaking. AI caching has never worked great in MP and I don't like the Truman Show feel of it, so I discount that trick to simulate a populated island.

Still, A3 is best game I've played in a very long time. Great fun and some nice challenges and allowances for creativity that aren't found in more closed-source games.

Share this post


Link to post
Share on other sites
@GrumpyOldMan

Check out the latest version of Genesis92x's Vcom_AI. It contains a tiny routine that has a huge impact on AI driving. Not perfect yet, but the difference to vanilla A3 is already jaw-dropping.

Hopefully he'll agree to release it as a standalone script/addon as I for one enjoy playing selected missions through using different AI mods.

Thanks, gonna look into it, though I already got my own AI driving fix done, the more the merrier.

Share this post


Link to post
Share on other sites
In-engine stacking of AI behavior into fewer threads.

The AI just cannot do a terrain like Altis justice, when any known CPU chokes with 200 AI in combat. Lemnos has population of 19,000. How great it would be to fly around with 19,000 AI running around below and then some areas where fighting is taking place? That would be a kickass simulation.

Instead we have two choice:

Well, if that's really factual, so they handle AI so inefficiently (each unit == new thread), it's obvious thing to fix (but if so, why they didn't improved this yet, I wonder), although kinda offtopic here. Still, I know at least one whole map Altis mission, where island is populated with up to 1200 hostile AIs (used max possible groups count for two sides) not counting numerous additional objects, pretty dense civilian ambience and additional, infinite combat ambience, to whichever town, village etc you go, still with place for external traffic ambience, all with 35-60 FPS on average PC with good enough visuals (more without vsync, depending on surrounding and video settings). It's about caching and player-centric (de)spawning. Discounted or not, works well if well done. Of course, would be better to have all this and more without any such cheap tricks AND improved AI behavior running smoothly on typical PC... :) I fully agree BTW on Truman Show immersion breaking effect. Beeing aware about such tricks by itself breaks the immersion somehow.

Edited by Rydygier

Share this post


Link to post
Share on other sites
It's the feeling that ruins the entire experience for me.

I agree with you! Sometimes i have a feeling that i'm the only one who was at the briefing. The AI should know something about the mission and the player should give him simple orders. Just as you said!

Share this post


Link to post
Share on other sites
Any AI video comparison of Arma 3 and Codemaster's OFPs? I'd need proof, to see situations actually reproduced.

Dragon Rising AI is laughable.

And cover-to-cover movement in it is completely scripted like in Call of Duty. And since it's mostly not a corridor shooter scripts work as intended about half the time. When AI in OFP DR gets flanked it suddenly starts behaving like an imbecile completely forgetting about using cover properly or keeping facing the pre-scripted direction (that video shows that well)

That's why OFP3 ended up being a linear corridor shooter.

Edited by metalcraze

Share this post


Link to post
Share on other sites
Just touched on it in another thread.

In-engine stacking of AI behavior into fewer threads.

The AI just cannot do a terrain like Altis justice, when any known CPU chokes with 200 AI in combat. Lemnos has population of 19,000. How great it would be to fly around with 19,000 AI running around below and then some areas where fighting is taking place? :) That would be a kickass simulation.

Instead we have two choice:

1. Limit the scenario to a small area and try to produce nice rich simulation in that small area.

2. Allow entire-island scenario and experience a dead and barren landscape with extremely low population density. Driving through 10 empty towns creates the negative thought process of "Where is everyone? Oh, its game" immersion breaking. AI caching has never worked great in MP and I don't like the Truman Show feel of it, so I discount that trick to simulate a populated island.

Still, A3 is best game I've played in a very long time. Great fun and some nice challenges and allowances for creativity that aren't found in more closed-source games.

We could have the illusion of many AIs but only with scripted, pre-determined behaviour patterns and spawning around the player only. Here's the crowd simulation from Hitman which doesn't take away much CPU resource:

Well and here is the crowd tech from Assassin's Creed:

Edited by noob1
added more videos

Share this post


Link to post
Share on other sites

Dragon Rising AI is laughable.

And cover-to-cover movement in it is completely scripted like in Call of Duty. And since it's mostly not a corridor shooter scripts work as intended about half the time. When AI in OFP DR gets flanked it suddenly starts behaving like an imbecile completely forgetting about using cover properly or keeping facing the pre-scripted direction (that video shows that well)

That's why OFP3 ended up being a linear corridor shooter.

You are completely missing the point here. I am talking about squad commanding and movement, not about how combat efficient AI is. But rather how well can they seek cover, or adjust stances on their own. I already stated in my original post there is a lot done wrong in OFP2. But playing that game, i didn't have such persistent feeling i constantly have to wipe butts of the team mates I am commanding, unlike in ArmA, where you always spend more time micro managing AI instead of actually enjoying the game.

Also 90% of the video is just showcasing an issue of latent AI aim that could be easily fixed. You should know better than to assume i am suggesting ArmA should match OFP2 AI. I am just suggesting commanding system should be reworked.

Edited by rawalanche

Share this post


Link to post
Share on other sites

I think the main AI commands should be MOUSE CLICK, and not keyboard click.

So let's say we menage to find 2 spare keys on our keyboard that we can use to issue commands, the first one will allow us to click and drag the "move there" or "get in" actions.

The second one instead could be used to get the mouse arrow appearing on the screen, then you could be able to select basic commands right on the screen, so let's say formation, behaviour, stances etc like that :

2451266-107410_screenshots_2013-03-05_00002.jpg

^Don't mind the quality, it's just to show what I mean^

And you could still be using the old methods with numbers to go more in depth with commands

Share this post


Link to post
Share on other sites

Have you every tried this? With voice commanding it is much easier and you can shoot enemy as well. I tried it, but it wasn't that good, because my pronunciation not a best. But it's my problem. :)

Some kind of ingame thing would be perfect. When you say something, the HUD(via popups) show what are you doing.

---------- Post added at 08:06 PM ---------- Previous post was at 08:04 PM ----------

Babylonjoke is this a mod or your concept? I really like it.

Share this post


Link to post
Share on other sites

it's just an easy concept

Voice commands are an innovation that goes beyond the pratical.

There are many situationts where it would be hard or impossible to use them as not everybody speak english, not everybody lives alone in homeand can start scream to a monitor, not everbody has good microphone or has at all a microphone etc.

However I'd be glad if it could be aviable in vanilla game, of course, but IMO UI improvments for AI command would satisfact a larger community portion..

Share this post


Link to post
Share on other sites

Voice commands helps you to control the AI without loosing your avatar control and combat awareness. But as you said it has a big disadvantage.

Here new idea: Difficulty based AI control. Lower difficulty the AI do more alone. On higher difficulty you have more control over the AI. This should help the beginners not loosing inside the micro management.

It can be a slider in the settings. E.g. Squad control 0.0-1.0.

Share this post


Link to post
Share on other sites

Arma 3 is the ultimate 'nearly but not quite' game for me.

Its such an immersive experience playing the game, but i can't get through a single player mission without the AI completely messing it up, and the lag in multiplayer is unbelievable.

Its all just little tihngs that need to be sorted, but probably easier said than done.

Share this post


Link to post
Share on other sites

A thread about AI was badly needed, but more than AI issues you said, the AI driving is more matter, as it's so buggy and make missions feeling to the worst possible.

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

×