Jump to content
Sign in to follow this  
fabrizio_t

FlexiAI (WIP) discussion

Recommended Posts

Hi there,

no news posted, but still working behind the scenes.

Despite the desperate lack of time, i already managed to spend hundreds of hours on ARMA2. As i said before i've developed a batch of very small "testbed" missions that i run iteratively.

So far i've let missions run at least 2.000 times with different presets to measure and compare AI performance (thank god for accelerated time feature!).

The goal here is to find the sweet spot between speed of movement + usage of cover vs. firing accuracy + suppression effect.

That's a quite frustrating task sometimes ...

So far FlexAI is performing well against Vanilla AI as long as firing accuracy is kept reasonably low.

High accuracy such as vanilla stock values just defeat the possibility to have effective suppression-backed movement under fire .

SPeaking about numbers: in average casualties ratio in my testbed missions (FlexAI:Vanilla) is 1:2 to 1:3, which is quite acceptable to me, accounting for 80-90% FlexAI success on "symmetrical" missions.

Maybe i'll be able to post some simple vids, nothing special, just to let you peek ...

Edited by fabrizioT

Share this post


Link to post
Share on other sites

Thanks for the update fabrizioT - I've been hoping for one as this mod sounds like it could be the new AI mod of choice.

The iterative testing does indeed sound like a real grind to find the sweet spot in so many combinations of fine tweaks. Appreciate your perseverance. :)

Share this post


Link to post
Share on other sites

Glad how this mod is still improving. Wow 2.000 times :eek:, maybe if you relase beta, players will make some tests for you and send reports with suggestions :) I play mainly singleplayer and this looks like superb enhancement on A.I. Can't wait more :wink_o:, will it be ACE compatible?

Share this post


Link to post
Share on other sites

Can't wait for this mod :)

Share this post


Link to post
Share on other sites

I am sorry Mr. fabrizioT for my impatience, but I have to ask :). Will you release this great addon someday? Or can we look forward to see it before Arma3 come out? Thx :wiggle:

Share this post


Link to post
Share on other sites

Hi people,

i'm pretty sure i will be able to release this mod just a bit after ArmA4, in 2015 ;)

Seriously, i'm still working on this, but just in my spare time since i have a family now.

That does not mean things aren't progressing.

Honestly i think the FlexAI "tactical toolkit" is shaping up quite fine in SP.

It includes the following features and limitations:

SP, infantry-vs-infantry: all the following features apply to infantry versus infantry. Completely untested in MP.

Targeting of Opportunity: this is the biggest change in AI routines and the one giving me the more problems. You all know that normally AI units in ArmA2 privilege "targets" assigned by leader. That's fine in theory, but in the practice you see your units killed countless times by threats they have ignored focusing on their primary target. The Target of Opportunity routine fills the gap, making units keep an eye on most threatening enemy (considering line of sight, distance, speed, direction) and prefer targeting it whenever possible.

Looks like this is working better especially in CQB (in average 10-20% better performance in terms of casualties ratio, compared to vanilla targeting). Finding the sweet spot in automated target selection/switching is the actual top priority.

Better AI stance handling in combat: AI units now automatically default to crouched stance in CQB, but still go prone in all "under fire" situations (briefly sprinting in crouched stance when needed) and try to crawl away when pinned.

Group cohesion / Team work: AI groups show better cohesion and less overall rushing, providing some cover is available.

Grenade handling: AI units are way more aggressive with hand grenades in CQB and often use smoke grenades to conceal position / movement. Regarding hand grenades, units are now quite prone to lob them over obstacles / buildings to hit threats even a few meters away.

Combat movement / Leapfrogging: units in cover stay in position longer, keeping an eye on enemies and aggressively laying suppression fire while others are moving. Units don't run / rush in under fire situations.

Shooting accuracy: default shooting accuracy was toned way down. I still have to find the sweet spot between effective shooting and chance to miss, especially from distance (> 200m). The key point is that different weapon classes (sniper rifles, rifles, machineguns) have different accuracy adjustment, so you'll not end up with your snipers spray-and-pray. The side problem with ArmA2 is that lowering accuracy friendly fire really goes out of any control. For that reason i had to disallow friendly fire as a whole.

Suppression fire: units (machinegunners especially) now lay consistent suppression fire on their own (unless leader is player). Problem is how suppression fire is handled in ArmA2: units keep firing some point near the target even if it's in clear line of sight and just a few meters away. That's a serious problem for close range (< 200m) and it interferes with regular shooting. I am considering to remove automated suppression fire routine or restrict it to some ranges.

Skill: in vanilla ArmA2 units skill is not meaningful. At target range a 100% skilled unit and a 20% skilled unit will achieve rawly the same hits-on-target performance on close and medium range. With asymmetrical warfare in mind i am working on many params to make skill a key factor in combat effectiveness.

CPU footprint: due to the ballistic tracing implementation (every fired bulled is traced down) the CPU footprint had drastically grown to the point of being a problem in large scale battles.

I've run E01 and E02 benchmarks with and without FlexAI running and here's the result on my notebook:

E01

FlexAI off: 30fps

FlexAI on: 28fps

E02

FlexAI off: 17fps

FlexAI on: 12fps

As you can see in E02 the drop is very noticeable, meaning i have to work on optimization.

---

After playing a bit as a leader (yes it is possible to lead a FlexAI group as well as have AI led FlexAI groups) i found quite natural to completely stop micromanaging stance of units, they do themselves a decent job in keeping head down and returning fire, as long as i (the leader) don't make idiotic things.

Also AI units behave more human-alike to my eyes. That means they act stronger in some cases and they show weakness in others.

For example, when under fire units drop down and try to actively return fire even blindly. Sometimes, when pinned, i see them frantically crawl around looking for cover in any directions.

There are side effects as well for this behaviour: when fired upon units may prefer keep shooting on target as long as possible instead of following me.

Not that strange if you ask me, what would you do in that case with your adrenaline flowing?

Ok i've written enough. Just consider that this stuff belongs to the "tactical" side of the mod, which is half of the work.

The other half is on the "strategical" side: i did some work on that at the beginning and freezed the development till sorting the "tactical" issues.

Edited by fabrizioT

Share this post


Link to post
Share on other sites
For that reason i had to disallow friendly fire as a whole.

Ugh does it mean what it says it means?

Because that's bad, very bad. I like how stuff sounds in FlexiAI but I still want it to look like war and not gamey.

Share this post


Link to post
Share on other sites
Ugh does it mean what it says it means?

Because that's bad, very bad. I like how stuff sounds in FlexiAI but I still want it to look like war and not gamey.

Hi metalcraze,

i agree with you, but i was bored to see machinegunners putting bullets in the back of their mates and/or units fragging themselves.

That's not realistic and it's what happens with low accuracy values in ArmA2: sadly units don't want to check properly their LOS before pulling the trigger.

FF off was a compromise solution to mitigate this problem.

So i'll probably make FF disabled by default, yet toggleable.

Edited by fabrizioT

Share this post


Link to post
Share on other sites

OH, tkank U for new information. Sounds very good, what do I like the most is Targeting of Opportunity, that could be very useful improvement. About Shooting accuracy and AI sklills, have you tried ASR AI Addons by Robalo_AS? It handles AI skills and also includes AI rearming feature. Looking forward to see further progress and thanks for your awesome work so far. :bounce3:

Share this post


Link to post
Share on other sites

But what's wrong with not setting AI precision that low? It's pretty OK by default and ASR AI tweaks it even better.

FF off is really no go for me.

Share this post


Link to post
Share on other sites

See below

Edited by fabrizioT
Removed message, reposted with the right forum account ...

Share this post


Link to post
Share on other sites

As a human i may agree precision is ok, but AI wise my subjective opinion is that accuracy is quite off in vanilla.

Sure by the times of OFP we all (players) learned how to deal with it and we became almost comfortable with such high accuracy settings. It's challenging, it's fun because it's unforgiving, but it's not realistic.

If you take a look at real world causalties-per-bullet stats you'll see numbers in the range of thousands (or tenths of thousands) bullets for casualty or more.

However, back on topic: we're human, we can compensate with thought and skill to high enemy accuracy, but what about AI vs. AI performance?

What about commanding your AI units in combat?

AI is not that fast in reacting to incoming fire, nor as good / fast as human in moving from cover to cover and it completely lack any form of caution.

Due to these limitations, plus the overall flatness of terrain, plus the sparse hard cover vs. high accuracy settings any AI being targeted is quickly a dead unit.

In vanilla ArmA2 the first units shooting normally survive, while battles end up just into quick firefights.

I need the AI to be able to survive under fire in order to achieve any tactical maneuvering and/or to command AI units into battle.

To keep AI alive i need at least, not surprisingly, to have it survive the first enemy burst. These few seconds will account for AI understanding the threat and taking countermeasures, or eventually to give me time to command units in defense, as a leader. Not an easy task in ArmA2 interface .

Having AI Survive the first shots is not trivial at all in vanilla ArmA2, where a 10% skilled unit can eventually take out a 200m far enemy within its first 3-bullets burst, in 0.3 - 1 second.

That's the reason many CfgAiSkill mods exist that significatively reduce shooting accuracy.

It's not my intention to lower accuracy in order to make the game arcadey or simple for players, but with AI in mind i would like on the contrary get more realistic AI combat and tactics that are simply not applicable with default accuracy settings.

BTW: i have to say sorry to all people who sent me private messages on this account in the last months. Looks like i used the wrong account (fabrizioT) for quite some time now ...

However now i am back using my original OFP time account (Fabrizio_T), that's here to stay. Sorry for the problem.

Edited by fabrizio_T

Share this post


Link to post
Share on other sites

I generally find lower AI accuracy generates longer, more interesting scenarios. Unrelated to this particular topic though :) I'm sure that whatever options & settings are released with this addon, that it will have been tweaked for effectiveness :)

Share this post


Link to post
Share on other sites
I generally find lower AI accuracy generates longer, more interesting scenarios. Unrelated to this particular topic though :) I'm sure that whatever options & settings are released with this addon, that it will have been tweaked for effectiveness :)

Yes, on a per-person basis :)

Share this post


Link to post
Share on other sites
If it's a toggle, what is to complain about?

That the precision of an MG is so low AIs will kill each other without FF?

It's not my intention to lower accuracy in order to make the game arcadey or simple for players, but with AI in mind i would like on the contrary get more realistic AI combat and tactics that are simply not applicable with default accuracy settings.

Both Zeus and ASR mods have a quite reasonable AI accuracy and firefights do last long enough. They don't need friendly fire disabled.

Lowering accuracy so hard that it makes a lack of friendly fire a requirement is seriously game breaking and unrealistic no matter how you look at it.

When a player will see a friendly MG firing like a soldier can barely hold it and its bullets will hit a friendly unit without any damage will the player think "wow this FlexiAI mod makes AI so awesome!"?

No I think the player will think exactly that - "wtf?" and maybe even write it off as "another one of those pesky ArmA2 bugs"

Just FYI - with Zeus I had to set friendly precision to 0.8 because I was seriously doing much more kills than friendly units while they were barely doing any.

And Protegimus recommended 0.5

Edited by metalcraze

Share this post


Link to post
Share on other sites

good to see you back fabrizio ...looking forward:D

Share this post


Link to post
Share on other sites
That the precision of an MG is so low AIs will kill each other without FF?

Both Zeus and ASR mods have a quite reasonable AI accuracy and firefights do last long enough. They don't need friendly fire disabled.

Lowering accuracy so hard that it makes a lack of friendly fire a requirement is seriously game breaking and unrealistic no matter how you look at it.

When you'll see a friendly MG firing like a soldier can barely hold it and its bullets will hit a friendly unit without any damage will the player think "wow this FlexiAI mod makes AI so awesome!"?

No I think the player will think exactly that - "wtf?" and maybe even write it off as "another one of those pesky ArmA2 bugs"

Just FYI - with Zeus I had to set friendly precision to 0.8 because I was seriously doing much more kills than friendly units while they were barely doing any.

And Protegimus recommended 0.5

Alright, let me elaborate more or we'll have some unneeded confusion about the matter.

First: FlexAI skill management works differently than most other mods around. I think Zeus for example sets an upper bound for shooting accuracy in CfgAiSkill, which works in conjunction with the enemy/friendly precision values in config. This way maximum accuracy and average accuracy as a consequence are reduced.

FlexAI does not alter the upper bound, which remains the same, meaning that 100% skilled units are as deadly as in vanilla. FlexAI skill works in a non linear, quadratic way, so that low/mid skilled units are more penalized. That's explicitly done in order to be able to simulate poor arms training.

Also FlexAI is designed to keep the default enemy/friendly precision values, so you're not supposed to need to alter them (even if i'm pretty sure everybody will ;)).

So all in all it's up to mission designer to decide what level of accuracy is worth giving to units involved. The difference with vanilla is that is possibile to assign in editor way lower accuracy values. That's good for battling against somewhat "untrained" opponents, the bread and butter of asymmetrical warfare.

Second: Friendly fire (FF) accidents do occur naturally even in vanilla ArmA2, i've witnessed plenty of cases of AI self-fragging in CQB, with grenades bouncing off buildings. FF probability for small arms fire raises a lot when accuracy is lowered. If you set enemy/friendly precision to 0.4 - 0.5 is quite likely that machinegunners will start causing friendly losses. You may notice or not, but they will, depending on number of units on the field and their density. That said i'm not wishing to impose anything to anybody is comfortable with this situation. As i said i'll provide a toggle for FF.

BTW: people, don't take it too serious, it's a mod and it's WIP. For sure it won't be the holy grail of AI and it won't please everybody. However keep ideas and constructive criticism coming, i'll do my best to produce something worth playing. Thanks for your interest and your patience.

Edited by fabrizio_T

Share this post


Link to post
Share on other sites
That the precision of an MG is so low AIs will kill each other without FF?

Both Zeus and ASR mods have a quite reasonable AI accuracy and firefights do last long enough. They don't need friendly fire disabled.

I still see MG opening up a 5 round burst and they then get up after three rounds waving the gun around, inevitable killing/injuring friendlies. So there are still tweaks to be done with Zeus/ASR. If these could be sorted out that would account for a majority of FF incidents. Dealing with LOS FF is more problematic (and could end up with a maneuvering fiasco ala convoys!)

Share this post


Link to post
Share on other sites

Shouldn't you keep like 30-50m distances between fireteams? FF incidents do happen in vanilla but rarely and if you will put 30 soldiers in the same 400 sq. m you seriously don't expect it to go well (because it wouldn't even IRL), do you?

If you are going to add a toggle it would be better if you let the FF on will be a default I think.

It also would've been good if we could edit some AI values like in ASR or Zeus (if unpacking ai skill pbo)

Share this post


Link to post
Share on other sites

BTW: people, don't take it too serious, it's a mod and it's WIP. For sure it won't be the holy grail of AI and..

NO!..

It WILL BE the Holy Grail!! :D

Seriously now..

Most A.I-behavior-related-mods tend to be "linear".

There are countless times i v seen extremely aggressive enemy A.I-and as a

result..the player "camped" and killed A.I.

The "Friendly" A.I has always somewhat strange behavior.

The 'Dynamic'..is the "key-word"

A player must NEVER have the chance to understand the 'pattern' enemy uses-so he can learn to 'predict' -'adapt' and 'react' in dynamic situations (like RL)

I m aware of the engine core limitations-and the 'hypothetical need' of CPU power for a "human-like" A.I ...but i always look on 'different approaches then usual ones' ..and even the project will not be as we/you dreamed??..

..again Respect ;)

Share this post


Link to post
Share on other sites

Agreed. Fabrizio, have you considered getting some alpha/beta testers to help you along. As time is a constraint for you if you set out things you need testing perhaps it would be beneficial.

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
Sign in to follow this  

×