Jump to content

Recommended Posts

Posted

I have tried using pop-up, bob-up and ambush tactics (using Ka-50 or A-10) against AI but these never work as the AI will spot you the moment you unmask and starts shooting right away nullifying the surprise factor these tactics depend on. This is a problem with both ground and air units. The biggest point of figuring out tactics is to gain surprise as without it you always end up with 50/50 attrition battle that is won mostly by "numbers". With "numbers" I mean number of troops and their level of training and quality and capability of equipment.

 

When you surprise someone it means they can't react to you as fast as they would otherwise because of confusion or not being prepared. Surprising someone means you do something they don't expect. So in order to getting surprised you need to expect something ie. in order to have a surprisable AI it needs to have expectations. In Steel Beasts for example this is done by assigning the AI a primary field of view which is a sector in front of the AI where units get spotted faster. The mission maker, commander or AI routine tries to align the unit so as to have the primary FOV pointing towards the enemy. The primary FOV width can also be adjusted, with narrower one improving spotting ability inside the primary FOV and reducing spotting ability outside it.

 

For the ground AIs part the surprisability is mainly a matter of spotting time and spotting time is a matter of direction of attention, level of readiness and environmental factors. Environmental factors are already simulated in maximum spotting distance quite well. We now need a function that uses those same attributes that gives a number which tells how quickly a certain sized object can be spotted at certain range. Something like this: "function spottingtime(backgroundtype, range, size, FOVfactor)". FOVfactor is a number which depends of the spotters direction of attention ie. unit behind a spotter gets smaller FOVfactor and unit in front a bigger one. When the AI has LOS for the first time to a unit it will start a counter adding fractions of spottingtime to the counter. When the counter has reached a certain value the AI becomes aware of the unit. If LOS to the unit is lost a certain number is reduced from the counter until LOS is gained again or counter reaches zero. It could be made so that when the counter has higher value it gets reduced slower than if it has lower value. This way units that have been spotted will be re-spotted faster but unit visible only intermittently will not get spotted easily over time. If there can be some randomization in the required counter value it would be better but not required.

 

All what I proposed for ground units I propose also for air units with some added stuff. With air units it gets more complicated as they need to make more of their own decisions and hence have more possible expectations that affect spotting ability. Humans derive expectations by drawing conclusions from known information based on experience and reasoning. Fighter pilot would do this by obtaining intelligence of war situation, getting briefed of the mission and orders and creating a plan. All of this is done before the mission is flown so there's nothing to stop us giving us expectations to the AI in ME, ie. creating some kind of briefing for the AI. We can already do some things like this like tell the AI how to react to threat or how to use radar, etc. All we need is to have more of these "mission orders".

 

One of the biggest annoyances with air units in DCS is that they never lose awareness of their target after spotting them. You can't hide or evade from an interceptor behind a wall of mountains after he has had a first glimpse of you. Deciding what to do after losing contact is a though problem for AI as it can't be solved precisely and it likely doesn't even have a correct answer. For a human it's a matter of mission orders, combat situation, enemy behavior and experience. The enemy behavior might give away that he's trying to bait you into a trap or he might be hiding near a know or likely SAM site. Taking these kinds of information into account isn't easy to do and will hog lot's of CPU power. So we need some cognitive shortcut for the AI that produces plausible and less unrealistic behavior while using few resources.

 

My proposition is to solve this issue with ME switches and some simple AI logic. First you need to tell the AI if it will pursue lost contacts at all, only over friendly territory or always. You wouldn't pursue an enemy into a SAM trap which is done by not flying inside airspace determined risky in intelligence brief. -> We need to assign zones in ME(with triggers) where the AI doesn't pursue enemies or go look for them in case contact is lost. The AI could also add zones to the list on its own based on RWR indications and radio traffic. In addition to danger zones there should be safe zones where you can expect to not have enemy ground troops or SAMs present.

 

If the AI loses contact during dogfight he will simply follow the last known trajectory of the enemy while gradually expanding the primary FOV. If a BWR contact is lost it's determined first if it was due to notching or terrain masking. If it's notching you go lower and search the enemy from its last known trajectory (AI simulates where the aircraft will fly if keeps doing what it's doing, keeping direction and speed constant and avoiding terrain). If it was due to terrain masking you get higher and search the enemy from its last known trajectory. If the unit should unmask due to it's trajectory but it doesn't it will be searched from it's last known position. If the unit can shoot back at close range the AI will not fly directly to the position but flank it with enough range. If the unit isn't in its last known position a SSE event is raised and the AI will resume it's previous task. The event will provide the type of unit (exact or rough (A-10, slow&low radar contact) depending on AIs knowledge of the contact), time and last known location of the contact so mission designer can make the AI do what the mission requires.

 

I hope the devs would be considering the AI behavior more as it's one of the biggest things that makes the environment feel real or fake (in DCS case fake). AI also affects a lot what kind of tactics can and should be used ie. how to use the equipment you are trying to simulate. For example if you can't use typical helicopter tactics due to AI limitations the simulation isn't very good representation of helicopter combat regardless of how well the weapons and hydraulics have been modeled. Not that I'm not enjoying the sim (except the can't hide from AI feature) but besides game (or just graphics?) engine the AI is one of the biggest trouble areas needing update.

  • Like 2

DCS Finland: Suomalainen DCS yhteisö -- Finnish DCS community

--------------------------------------------------

SF Squadron

Posted

No trees to hide behind, lased through buildings & terrain, shocking FPS down low, definately room for improvement, me thinks ? Seems KA-50 gets little love nowadays, is there anything to look forward to in 1.2.3 for us rotorheads ?

 

+ 1 for the above also

Posted

+1

ChromiumDis.png

Author of DSMC, mod to enable scenario persistency and save updated miz file

Stable version & site: https://dsmcfordcs.wordpress.com/

Openbeta: https://github.com/Chromium18/DSMC

 

The thing is, helicopters are different from planes. An airplane by it's nature wants to fly, and if not interfered with too strongly by unusual events or by a deliberately incompetent pilot, it will fly. A helicopter does not want to fly. It is maintained in the air by a variety of forces in opposition to each other, and if there is any disturbance in this delicate balance the helicopter stops flying; immediately and disastrously.

Posted

Good suggestion indeed.

 

I have submitted the proposal to the Bug Tracker for further consideration by the relevant Developers.

  • Like 1

Novice or Veteran looking for an alternative MP career?

Click me to commence your Journey of Pillage and Plunder!

[sIGPIC][/sIGPIC]

'....And when I get to Heaven, to St Peter I will tell....

One more Soldier reporting Sir, I've served my time in Hell......'

Posted

All good points

 

+1

PC specs:

Windows 11 Home | Asus TUF Gaming B850-Plus WiFi | AMD Ryzen 7 9800X3D + LC 360 AIO | MSI RTX 5090 LC 360 AIO | 55" Samsung Odyssey Gen 2 | 64GB PC5-48000 DDR5 | 1TB M2 SSD for OS | 2TB M2 SSD for DCS | NZXT C1000 Gold ATX 3.1 1000W | TM Cougar Throttle, Floor Mounted MongoosT-50 Grip on TM Cougar board, MFG Crosswind, Track IR

Posted

Thanks for the support. My post was written on a spur of the moment so it's kind of a sketch of the idea I'm after. Here's some more ideas about the topic I got after yesterday, some improving the base idea and some adding possible new features.

 

Skill levels should modify the spotting speed but not spotting distance. The spotting delay algorithm I described is valid only for visual search, ie. naked eye and electro optics.

 

Humans will find targets faster if they know where to search. Maybe this could be simulated with having "known enemy location" zones assigned in ME for groups. If the unit has had eyes on the zone long enough and not seen anything, the zone will be ignored afterwards. It could be nice to be able to assign or remove these zones also with triggers. AI could also create these according to radio traffic, explosions or smoke. RWR indications should also improve spotting ability to the direction of the RWR spike. All of the modifiers that improve spotting ability to one direction should also reduce the ability to other directions. This might be best simulated with turning the primary FOV towards certain directions of interest like target WP, enemy zone or RWR spikes in some kind of pattern, like if the pilot turns his head. This gets somewhat complicated and I'm not sure how doable this is. It's mainly useful for aircrafts and CAS aircrafts in particular but fighter AI could be improved with this also.

 

Readiness level is something that could be simulated somewhat easily. Readiness is basically a time it takes for the unit or group to spring to action after idling for a long time. Readiness level would range from people sleeping to finger on the trigger (or launch button). Currently the AI is always finger on the trigger but does stow radar and launchers if no enemies are present. Base readiness would be the readiness time when the unit isn't alerted, ie. if imminent contact isn't expected and could be set in ME or with triggers. After alert the units readiness would start to rapidly improve and reach the maximum quickly and then start to decline. The readiness would drop gradually from max readiness to high readiness in about 10-20 minutes if there's no contact or after the last contact to the enemy. Any contact with enemy would again put readiness back to the maximum level. Readiness level would also affect the units spotting delay and ability. You could set times for max, high and base readiness and also the decline time from max to high readiness in ME or with triggers. Moving units would always be at least at high readiness but triggers, nearby explosions or nearby units making contact would put them on max.

DCS Finland: Suomalainen DCS yhteisö -- Finnish DCS community

--------------------------------------------------

SF Squadron

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...