View Single Post
Old 08-27-2015, 01:03 AM
Pursuivant Pursuivant is offline
Approved Member
Join Date: May 2010
Posts: 1,439

Originally Posted by majorfailure View Post
What totally works against any and all attempts to disengage is the omniscient AI, who when once has acquired a target only loses it when out of range.
I'm not sure this is true. 4.12 finally got AI "target acquisition" more or less right, and it seems that Rookie or Average pilots can be pretty clueless if you get into their blind spots.

What doesn't seem to be modeled is loss of Situational Awareness (SA) due to target maneuvering, information overload, and other factors.

A "simple" way to make loss of SA possible would be this:

Baseline ability to retain SA is based on pilot quality.

When an enemy aircraft flies into a plane's blind spot, there's an x% chance every second that AI will lose SA with respect to that plane, based on the target's range and speed. (Elements like target size, camouflage, visibility, etc. don't apply because this algorithm attempts to model the human ability to mentally track targets you can't see.)

This base chance is modified upwards if the spotting plane is damaged, under attack, or pulling Gs, or if the pilot (or some of the crew) are wounded. If the other plane is pulls Gs, or gains or loses altitude while in a blind spot, there's also an upward modifier. (This is also a simplification which represents that its harder to keep track of a fast or wildly maneuvering target.)

If the other plane is smoking, leaking fuel or coolant, or contrailing, there's a big downward modifier. (This represents a pilot's ability to track a plane, and follow its path, by using its smoke or vapor trail.)

There's also a big downward modifier if the other plane is firing on the plane attempting to sight it. (Simulating the fact that a human can easily extrapolate a firing plane's position from the angle of the tracers going past the cockpit.)

Finally, there's a cumulative penalty to keep track of targets after the first, based on pilot skill. This represents "information overload" of SA, with more distant and faster-moving targets being lost first.

A simple but arbitrary formula for maximum number of objects a pilot can track at once might be (pilot skill level)^2. With Rookie pilots being assigned a skill level of 1 and Ace pilots being assigned a skill of 4. (The very high number of objects an Ace can potentially track represents the fact that ace pilots tended to excel at the sort of spatial reasoning tasks represented by SA.)

If AI loses SA and is attempting to disengage, Rookie pilots will fly straight and level at top speed. (They assume that they're safe, even if they're not.) Average or better pilots will dive or climb at full power, as appropriate, while gently maneuvering to establish visual confirmation that they're not being pursued.

All pilots will use clouds and terrain as cover when attempting to disengage.

All pilots will fly towards friendly flak and fighter formations as a method of discouraging pursuit.

If AI loses SA and is attempting to engage, it will attempt to reestablish visual contact by maneuvering.

Rookie pilots will maneuver to establish line of sight to the target's last known position. Average pilots will attempt to regain line of sight by turning towards the target's last known line of travel.

Veteran or better pilots maintain some degree of SA with respect to lost targets and will usually turn towards the quarter of the sky which the target currently occupies. The exact percentage depends on pilot skill, say 60% for Veteran, 90% for Ace. Otherwise, they behave like Average pilots and turn towards the target's last known line of travel. (This represents a gross simplification of the mental calculations that a human would make regarding the opponent's energy state, speed, direction of travel, maneuverability, etc. Its not intended to make AI omniscient, just to give them a better than even chance of being able to reestablish Tally.)

Originally Posted by majorfailure View Post
Against fighters it should not depend on skill level -only on agressiveness.
As I imagined it, Aggression doesn't mean stupidity or bad tactics, it just means willingness to do battle. In some cases, it also means a willingness to force the opponent to play your game rather than accepting his.

While any pilot will take front quarter shots if they come his way, like you said, most pilots won't go out of their way to set them up.

If an enemy sets up a head-on pass where both planes can shoot each other up, even an aggressive pilot might not choose to reciprocate if it puts his plane at a disadvantage.

In such cases, the "aggressive" maneuver is to briefly go defensive, rolling or diving out of your opponent's line of fire and using your opponent's commitment to the attack to gain an advantage so you can attack him from a more favorable angle.

For the Japanese, it really depends on the plane. I could imagine a skilled and aggressive A6M2 pilot taking a head-on long-range shot against an allied fighter - particularly one with an inline engine - before rolling or diving out of the line of fire. The Zero driver is betting that his superior gunnery and heavy weight of his cannon fire will let him get in a fight-ending shot before his opponent can bring his guns to bear.

But, I can't imagine a sensible Ki-43 pilot doing the same thing. Unless he's got laser-like gunnery skills, he's got little to gain and everything to lose.

Originally Posted by majorfailure View Post
I do not accept head on exchanges against AI fighters - except
That's the sort of "accept/refuse the head-on attack" decision tree I'm trying to outline as suggestions to improve AI programming.

Factors that weight AI decision towards "accept" (in order of importance): Presence of frontal armor/armor glass, superior engine durability (i.e., radial vs. inline, includes current engine damage), inferiority maneuverability vs. opponent, weight of forward firepower, self-sealing fuel tanks, superior airframe durability, inferior speed vs. opponent, inferior climb vs. opponent, fighting over friendly territory, fighting over land.

Factors that weight AI decision towards "refuse" (in order of importance): Lack of frontal armor, inferior engine durability, superior maneuverability vs. opponent, inferior forward firepower, lack of self-sealing fuel tanks, inferior airframe durability (includes damage), superior speed vs. opponent, superior climb over opponent, fighting over hostile territory, fighting over water.
Reply With Quote