Fulqrum Publishing Home   |   Register   |   Today Posts   |   Members   |   UserCP   |   Calendar   |   Search   |   FAQ

Go Back   Official Fulqrum Publishing forum > Fulqrum Publishing > IL-2 Sturmovik: Cliffs of Dover

IL-2 Sturmovik: Cliffs of Dover Latest instalment in the acclaimed IL-2 Sturmovik series from award-winning developer Maddox Games.

Reply
 
Thread Tools Display Modes
  #41  
Old 12-29-2011, 09:13 PM
planespotter planespotter is offline
Approved Member
 
Join Date: Sep 2007
Posts: 446
Default

Quote:
Originally Posted by desastersoft View Post
Gentlemen!

The most things i read about the AI behavior are consequences of incorrect mission building. If you do the things correct in FMB, the AI is a very good and realistc one. If you behave wrong in FMB, than you have some Problem. This belongs also to the Quick Missions, from what, imho, most must be "rewritten". By spending now more than 1.000 Hours in the great FMB of CloD and over 770 Hours in Combat tests for the builded Missions, i realy stay on that point of view.

But i think this will not bother the AI discussion .

Cheers
Thomas
Thomas Desastersoft....Interesting, yes and no. I have also spent many many hours in fmb and successful built some great fights. But how to explain what i describe above? Opposing aircraft sailing past each other without engaging? All with fuel, ammo, fighters set to free hunt (but same if set to attack bomber or attack fighter)...there is no logical situation whatsoever in which fighters set to free hunt should totally ignore bombers...it is my biggest AI groan, along with AI blowing off all their ammo in long pointless hosepipe bursts. And the ace AI is just silly the manoeuvres it uses the barrel rolls...i never set AI to ace in fmb. And ps instead of saying this what you write, if you have learned so much of the fmb, why do you not share it with us, some of your tips for maximising the ai would be very helpful!

Last edited by planespotter; 12-29-2011 at 09:19 PM.
Reply With Quote
  #42  
Old 12-29-2011, 11:38 PM
salmo salmo is offline
Approved Member
 
Join Date: Mar 2011
Posts: 632
Default

Problem: Ai have repetable, predictable behaviours.

Suggestion: develop Heuristic rather than scripted (repetative) Ai code.

Rationale: Ai often perform predictable manouvers. Heuristic logic would produce more human-like Ai performance.
__________________
When one engine fails on a two engine bomber, you will always have enough power left to get to the scene of the crash.

Get the latest COD Team Fusion patch info HERE
Reply With Quote
  #43  
Old 12-30-2011, 06:03 AM
salmo salmo is offline
Approved Member
 
Join Date: Mar 2011
Posts: 632
Default

Thanks for hijacking the thread everyone BlackSix asked for SPECIFIC information about Ai behaviour. Can we stick to the format below & not wander off into discussions which have been canvased many times in other threads ...

“when plane X is in situation Y, instead of Z it should do ABC”

Error description:
Details:
Can it be consistently reproduced?:
Screenshot or video:
OS, system specs:

Or use this format for general suggestions:

Suggested improvement:
Detailed description:
Proposed benefits:
__________________
When one engine fails on a two engine bomber, you will always have enough power left to get to the scene of the crash.

Get the latest COD Team Fusion patch info HERE
Reply With Quote
  #44  
Old 12-30-2011, 07:25 AM
planespotter planespotter is offline
Approved Member
 
Join Date: Sep 2007
Posts: 446
Default

Quote:
Originally Posted by salmo View Post
Thanks for hijacking the thread everyone BlackSix asked for SPECIFIC information about Ai behaviour. Can we stick to the format below & not wander off into discussions which have been canvased many times in other threads ...

“when plane X is in situation Y, instead of Z it should do ABC”

Error description:
Details:
Can it be consistently reproduced?:
Screenshot or video:
OS, system specs:
:
Yes, fair

Error: aircraft do not engage in 1 vs 1
Details: if only one aircraft is in a flight, it is 'invisible' to other ai
Reproducable: yes, set up 1 vs 1 in qmb or fmb, or even 2 vs 1. Set aircraft for head on merge at same altitude. Set to autopilot to eliminate player actions.
Observation: setting enemy as 'target' in fmb does not help either.

Error: aircraft do not engage enemy aircraft in clear view
Details: despite good visibility and proximity ai does not engage
Reproducable. Yes, in fmb set one flight blenheim to bomb target. Set 3 flight 109s to patrol target. Set 109s to free hunt, veteran, full fuel and ammo. Blenheims will attack target and exit without being attacked despite proximity to 109s.
Observation: this seems to have something to do with ai ability to 'see'. I have made mission where ai will not engage, then I move waypoint a little, laterally not higher or lower, not closer or further away and start again and ai engage. Is not a 'proximity bubble' problem either as ai formations can sail through each other eithin metres without engaging.
Suggestion: ai in free hunt should always target nearest visible enemy. Implement option for ai to 'always see ' enemy. Need code preventing more than eg 2 ai attacking same enemy.

Error: bombers not releasing full bomb load on default setting shallow dive
Details: bombers sometimes release only one bomb at target, going home withmore in bomb bay. This is without any player adjustment to bomb load, timing, fuses etc.
Reproducable: set a Blenheim to bomb a target with shallow dive.
Suggestion: default ai should always release full bomb load

Error: ai does not evade when attacked
Details: when ai is in 'go home' state...eg landing, low fuel, no ammo, it does not evade when attacked but stays as sitting duck. Or, maked only one evadive manoeuvre and then returns to level flight even though still under attack
Reproducable: easily
Suggestion: ai should stay active and execute defensive moves as long as enemy is within eg 500 metres.

Error: ai does not attack player
Details: player can participate in large furballs where ai never attacks player despite player shooting at multiple ai.
Details: this is a gameplay design quedtion/issue. One or more ai should always be 'assigned' to attack the player. Maybe customisable by player. Or, an ai which is shot or near missed by player, should try to attack the player in return.
Reproducable: choose large quick mission and observe multiple times how many times player is actually attacked by ai. Is few.
Suggestion: implement code like in BoB2 which has line in config: 'max ai attacking player=X'

Last edited by planespotter; 12-30-2011 at 08:02 AM.
Reply With Quote
  #45  
Old 12-30-2011, 08:10 AM
Continu0 Continu0 is offline
Approved Member
 
Join Date: Aug 2011
Location: Luzern, Switzerland
Posts: 702
Default

As i read in the other thread that we should post general suggestions here as well, here is one more:

Suggested improvement: Disapearing Mouse Pointer

Detailed description: Mouse Pointer disapears after not being used for maybe 3 seconds. When the mouse is moved again, the mouse pointer appears at the old spot.

Proposed benefits: Easier Handling, Mousepointer doesn´t disturb you because you have to move it away.
__________________
AMD Penom ll 6x 1055T Processor 2.8 GHz // 8GB Ram // XFX Radeon HD 7870 Black Edition DD (2048 MB Memory DDR5, GPU 1055MHz) // Windows 7 Professional 64 Bit Version
Saitek x52 // Saitek Throttle Quadrant // Saitek Pro Flight Rudder Pedals // Track IR 5
Reply With Quote
  #46  
Old 12-30-2011, 08:25 AM
nearmiss nearmiss is offline
Global Moderator
 
Join Date: Dec 2007
Posts: 1,687
Default

Quote:
Originally Posted by csThor View Post
Quite honestly I am not sure a static "if this happens than that should happen" is what should be the goal. That is canned AI, utterly predictable and after a while players know what the AI will do. I find it difficult to say what an AI should do in a given situation since I'm not sure of the exact circumstances in the first place and I don't really want a "AI reaction manual" with only pre-scripted reactions.

The whole issue is complex, very complex ...
Yes and no... probability can be programmed. Human behaviours can be determined with high degree of probability, not perfect of course.

If a pilot is veteran and he is engaged in a certain fashion by 1 or more fighters there is high probability he will make several responses. One choice might require difficult maneuver, another might be a safer move, another a risky move but could be very effective, etc. Yes there should be some reliance on skill for responses, yes there should be reliance upon the condition of the pilot and/or aircraft (tired, injured, damaged, out of fuel).

Many factors need consideration, but the trial and error portions of creating a competent AI performance can be programmed. The probability aspects of various action and responses can also have a low probability of a "random responses" as well.

Simple example of probabilities, if a enemy is diving on you head on from higher altitude at high rate of speed with a lot of E. 30% chance you will turn up your nose and try to hit him on pass which will also lower your E and airspeed, 60% chance you will nose over negative G's and try to gain E and airspeed in opposite direction, 10% chance you will turn hard and maneuver to get behind him, and then there is the random choice - yaw hard and try to deceive the enemy of your flight path.

Yes there are many scenarios that can play out with 360 degree attacks, speed and E, but with enough probabilities, trial and error a good AI performance can be achieved. The package doesn't have to be done all a once. It will have to be developed over time, with help from the community as it was done with the BOB II WOV community.

There is no AI performance package comparable or as competently programmed as the BOB II WOV AI. The sim is over 10 years old and it cannot be a state of the art application with the old code and graphic capabilities.

I would be very content to have a fairly competent AI package to start, which has options for the community to have access to areas of the source code where AI is programmed.

Anyone that thinks a competent AI cannot be done just needs to go the BOB II WOV site, buy the download of BOB II and apply the update patches. Spend some time with the BOB II in action and you will be astonished what can be done.

The BOB II WOV has no multi-player or programmable mission builder, but the campaign is very good. The action is air combat, but that is what the Battle of Britain was for most part.

Last edited by nearmiss; 12-30-2011 at 08:32 AM.
Reply With Quote
  #47  
Old 12-30-2011, 09:00 AM
heidelbergensis heidelbergensis is offline
Approved Member
 
Join Date: Mar 2008
Posts: 14
Default

Regarding comms, this is a proposal for formatting a list for only the most basic functions that we would like to have:

a) Navigation:

a.1- on route, ability to request from the ground control and while on radio range, bearing to:
- the next waypoint
- The own airbase
- current map position as given from the radar, and true bearing of target (interception), if radar is active; if it is not, the last position and bearing given by ground observers and the time of this observation.

- On landing, permission request and recommended bearing.
-Out of radio range or in case of any comm failure, the answer to any of those questions could be a radio noise.

a.2) on route, ability to request from the flight leader if on his radio range :
- current true bearing and altitude.

- Here also, out of radio range or in case of any comm failure, the answer to any of those questions could be a radio noise.

a.3) Being the wing leader:

- The planned orders for forming, attacking, break, and leave mission and go home both for the whole flight unit, for the wingman, and for each flight team under command. i.e. if you lead a finger four, you can select as recipient: 1) the wingman 2) the other team of liden and wingman both together 3) the whole finger four.



Please feel all free to comment, add, or criticise

Last edited by heidelbergensis; 12-30-2011 at 09:04 AM.
Reply With Quote
  #48  
Old 12-30-2011, 02:27 PM
SG1_Lud's Avatar
SG1_Lud SG1_Lud is offline
Approved Member
 
Join Date: Jul 2010
Location: Spain
Posts: 376
Default

Quote:
Originally Posted by planespotter View Post
+100!

Oleg would never admit it but BoB2 is the benchmark in AI and all you need to do is buy some time from Buddye. Just look at his list of manoevres which the BoB AI code can choose from, there are hundreds, depending on the tactical situation (not just a few as in CoD).

But here is my big AI wish...

If a flight of luftwaffe fighters flies directly past, within ten feet of a flight of Blenheim bombers, they should bloody well attack them!!!! How hard is that to program for goodness sake!

I just set up a mission in fmb with blenheims bombing france, three groups of luftwaffe fighters set to free hunt all at same altitude, clear skies and even when the blenheims gunners fire at them they ignore the blenheims. Try it yourselves. It sux.

This is from a Buddye post...Read it and LEARN!


The design of the AI Maneuver Selection

The design of the AI maneuver Selection Criteria was driven by the need to become more deterministic and less random in selecting AI maneuvers. I felt the need to move in this direction to improve the AI offence and defense so the AI selection software had more control...

Here is a summary of how the AI selects from the (more than 80) available manouvres:

1. Altitude (how much altitude and rate of change)
2. Speed (how much speed, and rate of change)
3. Position of A/C to each other (nose to tail, tail to tail, nose to beam, tail to beam or left, right, front, back) This is what makes the AI really 'smart' - it is constantly testing to see if it is 'offensive' or 'defensive' and chooses its response dynamically as the fight progresses.

To implement the new selection criteria I built a 3 X 6 matrix (a truth table) and many new programs. For each A/C (the unfriendly and the AI or the player), I designed programs to look at Altitude, Speed, and position and to first try and select the best maneuver option (aggressive or defense) based on AI skill level.

Altitude and speed can also be thought of as “energy” as altitude can be turned into speed.

I also gave the Terminator AI a bit of boost in performance and tune-up so you might want to try it out. With the boost in Terminator performance, he was getting “cocky” so I implemented a spinout feature. The Terminator flies so close to the edge now that he has a tendency to “spinout”. This is when you can get him. (BOB2 has a 'Terminator' skill setting, which guarantees the AI will fly offensively/aggressively against the player in all situations. It isn't superhuman, it still makes mistakes and follows the laws of physics, but it will, in every way, be out to kill you!)

I also implemented a new AI feature called “Flying Factor (FF)”. This is the knowledge of the AI pilot to fly a given maneuver (experience) and how well the AI pilot will actually fly the given maneuver (skill). The FF is based on the Skill Level (customer selected in Instant Action Missions and software assigned in the Campaign). The Terminator is assigned a Skill Level of Hero2 (the highest in the game) so that is where he gets his boost in performance (edge). BOB2 has since 2009 had up to 4 mixed skills within a flight Novice, Veteran, Ace or Hero. So you might get lucky and bag a novice with limited abilities, to then be up against an ace who has the full range of AI talents available to it.

AI Maneuver Selection is the KEY

First, the BOBII AI has a special case for selection called “Evasive maneuver selection”. The Evasive maneuver is required when an AI is shot at (either a hit or near miss). The AI will select a defensive maneuver randomly based on the criteria/data for both Player and enemy AI (speed, altitude, and the position of the targeting AI and the AI being targeted with respect to each other). Of course, the AI will evade the players quicker, if and only if, the AI can see the enemy (remember in BOBII, the AI vision is blocked just like the player's vision is blocked by the cockpit, wings, sun, and distance).

The first key decision to be made is to select either an aggressive or defensive maneuver. This is a complex decision based on the available information on both the Player and the Enemy AI or the friendly AI and the enemy AI. The data considered for both Player and enemy is speed, altitude, and the position of the targeting AI and the AI being targeted with respect to each other.

After selecting either an aggressive or defensive, then a random approach is used to select a category (choose good, choose bad, or choose “neither” good nor bad maneuver). This also makes the AI very human, the chance that it will choose a 'bad' maneouvre in the circumstances.

Maneuvers are then divided into three parts Vertical, Horizontal, and dive for each of our categories (choose good, choose bad, and choose neither good nor bad maneuver).

The individual maneuver selection is then based on speed, altitude, and position of both the player and the enemy AI.

In BOBII we have over 80 complex maneuvers for selection (both the aggressive and defensive maneuvers) for the fighters (Spit,Hurri,109.110) and over 50 maneuvers for selection for the JU87 and Defiant. The following are BOBII’s complex maneuvers: (My comments in bold on some of the less obvious labels)

MANOEUVRE_SELECT
MANOEUVRE_LOOKROUND
MANOEUVRE_WELDEDWINGMAN
MANOEUVRE_BAILOUT
MANOEUVRE_TOPCOVER
MANOEUVRE_FORCETOPCOVER
MANOEUVRE_LINEABREAST
MANOEUVRE_PINCER
MANOEUVRE_MULTIWAVE
MANOEUVRE_DIVEANDZOOM
MANOEUVRE_INSIDELOOP
MANOEUVRE_LAGPURSUIT
MANOEUVRE_SPLITMANOEUVRE
MANOEUVRE_HEADON
MANOEUVRE_LINEASTERN
MANOEUVRE_VICATTACK
MANOEUVRE_BARRELROLLATTACK
MANOEUVRE_SCISSORS
MANOEUVRE_MILDSCISSORS
MANOEUVRE_TURNINGFIGHT
MANOEUVRE_SPLITS
MANOEUVRE_ZOOMANDDROP
MANOEUVRE_STRAIGHTANDLEVEL
MANOEUVRE_SPINOUT
MANOEUVRE_DIVEFORHOME
MANOEUVRE_GOHOME
MANOEUVRE_MAKEFORFRIENDLY
MANOEUVRE_MOVEAWAY
MANOEUVRE_QUICKROLL
MANOEUVRE_IMMELMANNTURN
MANOEUVRE_IMMELMANN
MANOEUVRE_STAYWITHPREY (forces AI to ignore eg fighters and concentrate on bombers)
MANOEUVRE_CLIMBFORHOME
MANOEUVRE_STRAIGHTDIVE (for LW, this is a bunt, for the RAF Merlin engine fighters, they will roll to invert, then dive)
MANOEUVRE_OUTSIDELOOP
MANOEUVRE_SHOOTTOFRIGHTEN (eg if AI detects a comrade under attack within range)
MANOEUVRE_SHOOTTOOEARLY
MANOEUVRE_GAINHEIGHT
MANOEUVRE_LAGROLL
MANOEUVRE_EXTENSION
MANOEUVRE_DIVINGROLL
MANOEUVRE_REVERSETURN
MANOEUVRE_SELFASBAIT (or 'drag and bag' in other parlance - one AI will fly steady and slow, luring the player, while its wingman stalks)
MANOEUVRE_JINK
MANOEUVRE_BREAKTURN
MANOEUVRE_LAZYTURN
MANOEUVRE_BREAKLOW
MANOEUVRE_BREAKHIGH
MANOEUVRE_BREAK90
MANOEUVRE_BREAK180
MANOEUVRE_HIGBARRELROLL
MANOEUVRE_PANICTURN
MANOEUVRE_TURNANDRUN
MANOEUVRE_LOWALT
MANOEUVRE_ZOOM
MANOEUVRE_INTERCEPTHIGH
MANOEUVRE_INTERCEPTLOW
MANOEUVRE_GAINSPEED
MANOEUVRE_HEADONATTACK
MANOEUVRE_LUFBERRY (a special manoeuver for the Bf110s)
MANOEUVRE_STEEPDIVE
MANOEUVRE_UPANDUNDER
MANOEUVRE_STALLTURN
MANOEUVRE_SLASHINGATTACK
MANOEUVRE_CLIMBTURN
MANOEUVRE_ROLL360
MANOEUVRE_STRAFFE
MANOEUVRE_TRANSITION
MANOEUVRE_PEELOFF
MANOEUVRE_SNAPSHOT
MANOEUVRE_STAYONTAIL
MANOEUVRE_FLYTHROUGHCLOUD (a defensive manouver available if clouds are present - the AI dives for the nearest cloud)
MANOEUVRE_REGROUP
MANOEUVRE_DISENGAGED
MANOEUVRE_SPINRECOVERY
MANOEUVRE_COLLIDE
MANOEUVRE_LAST
MANOEUVRE_ALIGNMENT
MANOEUVRE_DROPANDZOOM
MANOEUVRE_COLLISIONAVOIDANCE
MANOEUVRE_TURNTOHDGANDPITCH (turn to heading, a waypoint command)
MANOEUVRE_SCREWYOUGUYSIMGOINGHOME (when damaged, out of fuel, or low on morale - unlike in CoD, the AI will still evade if attacked when running for home).

The AI Performance Criteria/Dependencies

Skill Level

The AI performance is dependent on AI Skill Level (which is customer selected in Instant Action and SW assigned in the campaign). BOBII AI do make mistakes (spin, crash, dumb maneuvers, bad judgment, shoot late , shoot bad, etc) which is after all very human.

The skill level of the AI is key in making decisions on about everything with respect to AI performance like (1) how well the AI fly, shoot, shoot fast, slow, accuracy, or not shoot, (2) how well the AI fly, what maneuvers are selected, and how well the AI will fly the chosen maneuver.

Random Numbers (Luck of the draw)

The BOBII AI A/C is also dependent on luck (specifically on random numbers). Random number decisions are coded through out the AI code. BOBII’s random approach keeps BOBII from doing the same thing each time. Even something as simple as the direction to start a maneuver (left or right), I will use a random number to decide (why hard code something when you can use a random number).


For example, most BOBII vertical maneuvers use a random number to assign a length of time to for a specific vertical maneuver (Like Zoom). The AI pilot will sometimes cut off early, or late, or somewhere in the middle. If early, the maneuver may carry too much speed, and if late, the AI may slow down so much that control is lost (very human).

The bottom line is that the customer will always see a somewhat different maneuver (very good, good, not so good, and loss of control) both because of the random implementation and the different physic’s parameters (speed, roll, heading, pitch, and overall energy) going into each maneuver.

The very real downside of random numbers is it is very hard to test (not repeatable) and the processing power used.

Conditions

The conditions for each maneuver are always different (energy, speed, altitude, skill, damage, and enemy position). This also changes how the maneuver is performed. A damaged AI will not fly as well as an undamaged AI (damage is always taken into account in the AI flying performance).
+ 1000

Please B6, take some time to study it and talking to Buddye.
Reply With Quote
  #49  
Old 12-30-2011, 03:21 PM
nearmiss nearmiss is offline
Global Moderator
 
Join Date: Dec 2007
Posts: 1,687
Default

Buddye has made several postings in the AI thread and expressed a willingness to help.

There is an old saying... "Never look in the mouth of a gift horse".

In other words, you are getting a free horse, there is no reason to find something wrong with it.
Reply With Quote
  #50  
Old 12-30-2011, 05:04 PM
ZaltysZ's Avatar
ZaltysZ ZaltysZ is offline
Approved Member
 
Join Date: Sep 2008
Location: Lithuania
Posts: 426
Default

Quote:
Originally Posted by nearmiss View Post
In other words, you are getting a free horse, there is no reason to find something wrong with it.
Tell that to citizens of Troy
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 08:39 PM.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright © 2007 Fulqrum Publishing. All rights reserved.