Jump to content
Sign in to follow this  
almanzo

The AI: Fleeing, retreating and surrendering

Recommended Posts

Hi all!

The topic title says it all, and I am going at this from personal experience and thus is kind of unaware of how ARMA threats this on a technical level. However, I think that in regards of the AI, this is the most crucial point to improve on. The AI can do incredible things, and have super human capabilities in some circumstances... but when it comes to making out wether or not it is wize to engage, retreat or surrender they are usually terrible.

Two lone infantry in the middle of a field spot an entire enemy squad popping up behind a building that hasn't noticed them yet? Open fire! This kind of sums it up for me. I get that it's difficult to have them make huge tactical assessments about how to best apply their forces. They don't talk that much (if at all?) across groups (unless mods) and so forth. This makes them predictable and booring, to be honest. Now, I haven't had much experience with the new coverfire system yet, haven't played the game much lately and thus I am not sure if it's been included or not. And while it is a step in the right direction, the system could be used both on a lead level and a individual level to determln wether or not to retreat entirely or not. Maybe even flee.


It would also be real nice if the AI could hold fire and wait for a better opportunity, manouver or in general try to stay out of sight while working towards an advantageous situation before engaging, but I guess that's wishful thinking.

  • Like 1

Share this post


Link to post
Share on other sites

I get your point, but you have to realize that to account for all circumstances, AI would have to be very strong (and proces-heavy probably).

 

You say, suicidal AI opens fire from stupid position against superior forces. Well what if these two infantry we're looking down on them from behind, with a heavy mg and a grenade launcher. What if destroying this squad was very crucial to the mission, their last change? Not so stupid any more to open fire.

 

So to weigh fleeing motivation, AI would have to take into account:

- mission importance

- weapons compared to enemy

- terrain position compared to enemy position

- enemy direction

 

And probably more things.

 

I agree, their (not) fleeing behaviour looks stupid sometime. But I'm reasonably content with:

- They do flee if their group is decimated, this is a clear and easy reason

- You can influence fleeing behaviour with courage settings

- I made a script that detects if a larger battle is going wrong (overall losses are heavy), the overall picture, it signals surrender to all units, like a real commander could do and everyone leaves their vehicles and weapons and moves to a designated area. This prevents spending a lot of time on wiping out every single enemy which is unrealistic in most battles.

 

The script has some variables which are very mission dependent so hard to implement in the game engine itself.

  • Like 1

Share this post


Link to post
Share on other sites

Isn't morale already being computed? 

So just have it so that the lower the morale, the more likely they are to flee in the face of great numbers within a given distance from them. 

As for whether two guys with a heavy MG should engage or not, you could set the numbers different for different squad types. An MG squad won't retreat unless it's overwhelmed by "x" number. 

 

I'm way oversimplifying it but I don't see where it'd have to be much more resource intensive. 

Share this post


Link to post
Share on other sites

Isn't morale already being computed? 

So just have it so that the lower the morale, the more likely they are to flee in the face of great numbers within a given distance from them. 

As for whether two guys with a heavy MG should engage or not, you could set the numbers different for different squad types. An MG squad won't retreat unless it's overwhelmed by "x" number. 

 

I'm way oversimplifying it but I don't see where it'd have to be much more resource intensive. 

From my understanding of the new suppression mechanics, this is indeed the case. I can see that it's difficult to keep the AI from engaging in disadvantegous situations, but to have them flee should be much easier to do. It's a simple "if the force of enemies present is greater than 1,5 times, then flee" or something like that.

Share this post


Link to post
Share on other sites

I believe even in Arma 2: AO campaign they scripted surrendering units, rather then built it into the engine. Like the 2nd poster said, it would require a lot more computing power for the AI to calculate that. Remember that BI doesn't like using mission scripting for overall game mechanics, rather they prefer to hardcoded into the engine. I think for the purposes of a mission, it's easy to script such things vs having it default and requiring players to disable it for missions.

Share this post


Link to post
Share on other sites

I believe even in Arma 2: AO campaign they scripted surrendering units, rather then built it into the engine. Like the 2nd poster said, it would require a lot more computing power for the AI to calculate that. Remember that BI doesn't like using mission scripting for overall game mechanics, rather they prefer to hardcoded into the engine. I think for the purposes of a mission, it's easy to script such things vs having it default and requiring players to disable it for missions.

Surrender in ArmA II is a simple module in the editor. Once linked to a group or unit, the unit will surrender (Weapon on ground, hands behind head) once it is outnumbered and enemy presence is 100m or closer. The unit will switch to neutral so A.I. will stop fire as well. I have never seen any performance impact with this module.

Share this post


Link to post
Share on other sites

Surrender in ArmA II is a simple module in the editor. Once linked to a group or unit, the unit will surrender (Weapon on ground, hands behind head) once it is outnumbered and enemy presence is 100m or closer. The unit will switch to neutral so A.I. will stop fire as well. I have never seen any performance impact with this module.

 

I guess I should explain a bit better. In my head coding isn't scripting, even though that probably isn't the proper way we use the terms. Scripting to me is what you do when you edit a mission, using the functions that BI provides for us. Coding is the code behind those functions, and the game engine itself. Having a fix that works at the core coding level is a lot more stable and less resource load then fixing with a script. The module itself could be at the scripting level more then the coding, but I never actually looked at it.

As for surrendering/retreating. I say it would probably require more resources in context of retreating. I assume if you chose to go the coding route, you would need to make that decision far more dynamic. So you would have to ask several questions. What should the AI do? Just calculate the opposite direction of the enemy? Choose to calculate nearby towns or hills to go to? Maybe factor in nearby friendlies to retreat and regroup. Do I think it's a bad idea? No, but I doubt BI would want to add another 20+ pages of code when users can do it with 2 pages of script commands. 

Share this post


Link to post
Share on other sites

I guess I should explain a bit better. In my head coding isn't scripting, even though that probably isn't the proper way we use the terms. Scripting to me is what you do when you edit a mission, using the functions that BI provides for us. Coding is the code behind those functions, and the game engine itself. Having a fix that works at the core coding level is a lot more stable and less resource load then fixing with a script. The module itself could be at the scripting level more then the coding, but I never actually looked at it.

As for surrendering/retreating. I say it would probably require more resources in context of retreating. I assume if you chose to go the coding route, you would need to make that decision far more dynamic. So you would have to ask several questions. What should the AI do? Just calculate the opposite direction of the enemy? Choose to calculate nearby towns or hills to go to? Maybe factor in nearby friendlies to retreat and regroup. Do I think it's a bad idea? No, but I doubt BI would want to add another 20+ pages of code when users can do it with 2 pages of script commands. 

 

Players have been hung up on this for years in this and other game series i.e. it should be built into the game 'in the engine'.

 

This has led to players playing a game, that lets say in many cases, results in  fairly poor gameplay, compared to how it can be played and experienced, if only they opened up a little to other ways of doing things..

 

Example:

We train a soldier IRL. Now, that soldier comes with programming, that being a certain amount of human intelligence, concerning the need to stay alive and complete their orders (simply put and in short, anyway). Very basic way of putting it, but there you go.

Now the training he/her gets, picks up on whatever the intelligence of that particular soldier has, then sets about, not re-programming the person, but instead giving them training. This will allow them certain choices within a military environment, which of course includes a conflict zone. This will mould that person into a unit, that will eventually conform to the behaviour that army expects.

It gives them alternatives to, perhaps, the way a normal individual would act.

 

So programming is the man/woman arriving to get trained. Scripting can be the training.. no ?  given enough choices.

Forgetting for now the performance issues.

 

A mix of the two being even better, from my point of view.

 

All the things in the threads title have been done, long ago in this series and without too much hit on performance and, it has to be said, with very realistic results.

Recently over the last few years, its been done to a whole new level. But those that still want it 'all' in engine, will be waiting around another decade and a half, whilst still playing and not getting the best results from the game imo.

Because its not going to happen in the engine to the same extent scripting can do and get the really great results that 'extremely good' scripting can offer, for the players.

Share this post


Link to post
Share on other sites

It's not about demand, it's about BI and how they develop things. it's about simulating the feature rather then scripting. When you use a script to attach a pod to a taru, you are not simulating the usual parameters of BI vehicles and how they react. If you shoot at the Pod your not damaging the helicopter, you might pen the pod as if it was cover and hit the helicopter. But otherwise your not getting a proper simulation. Now enter the vanilla taru with the pod already attached. You now have a proper simulation, you hit the pod the bullet treats it as one entity and can be properly simulated. This also includes, weight, fuel consumption, and other attributes tributes to proper simulation of each arma vehicle. 

 

This also goes for the AI and it's decisions that go into development. What is worth their time and what isn't? The arma community has a variable of demands depending on their group. One group might enjoy having a more dynamic vanilla AI that isn't that predictable. Another might find it annoying they have to adjust the AI to keep them from retreating in random directions. Again, if you wan't these features by all means make a script for it. That is what scripting is design to do, it allows players to customize their arma experience.

Share this post


Link to post
Share on other sites

It's not about demand, it's about BI and how they develop things. it's about simulating the feature rather then scripting. When you use a script to attach a pod to a taru, you are not simulating the usual parameters of BI vehicles and how they react. If you shoot at the Pod your not damaging the helicopter, you might pen the pod as if it was cover and hit the helicopter. But otherwise your not getting a proper simulation. Now enter the vanilla taru with the pod already attached. You now have a proper simulation, you hit the pod the bullet treats it as one entity and can be properly simulated. This also includes, weight, fuel consumption, and other attributes tributes to proper simulation of each arma vehicle. 

 

This also goes for the AI and it's decisions that go into development. What is worth their time and what isn't? The arma community has a variable of demands depending on their group. One group might enjoy having a more dynamic vanilla AI that isn't that predictable. Another might find it annoying they have to adjust the AI to keep them from retreating in random directions. Again, if you wan't these features by all means make a script for it. That is what scripting is design to do, it allows players to customize their arma experience.

 

I think you underestimate scripting and choices. I was the same, but I along with many others, went about searching for a remedy, there are many around, available publically, that will change completely how the game is played, very 'unpredictable' (in a very good way), but a lot more immersive for the player.

Then there is the leap ahead that to be honest, I just don't understand at all, but that makes the game completely different for the player. Totally immersive, completely unpredictable, very tactical, a very self sufficient AI. One thing is for certain, you'll not know what to expect or when.

Now with vanilla AI, I can more or less judge what will happen, there lies a problem. Vanilla AI is just too predictable.

 

Still different views on the same subject is good.

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  

×