![]() |
#41
|
|||
|
|||
![]()
In the new system you cannot strictly draw a line between SP and MP and the AI, because the AI is getting more a part of MP, compared to 1946 (without mods).
Therefore I would love to see better AI, but what is better AI worth, if the netcode cannot support more than 15 AI planes in a coop mission, otherwise the planes warp, lag or are not drawn at all (see ghost/phantom planes)? Seeing improvement of the AI as long term project, I would first focus on the obvious problems and bugs: FM (performance of the existing planes before introducing new ones f.e. service ceiling ![]() Network (get rid of the ghost dots and warp-fest of AI) -> MP LOD (dots visibilty) -> SP&MP AI -> SP&MP
__________________
http://cornedebrouwer.nl/cf48e |
#42
|
|||
|
|||
![]()
I have been reading this thread over the last couple of days at work, along with some other threads about the new beta patch and thinking to myself, it seems like it might be time to have another crack at this (after having shelved it for a couple months).
Tonight I got to have a crack at the new beta patch for the first time and while I can agree there is considerable improvement in over all graphics and sound I still couldn't find the hook I was hoping for (maybe too much forum hype, who knows). 109 sounds although, pretty much hit the bull's-eye! Nice work fellas! smink1701's original post sums it up for me almost perfectly as I see it. The AI with CoD has always seemed absolutely mad to me and one of the great put offs, I mean absolutely spastic manoeuvres that make a chase an absolute joke. 109's with a roll rate that would shame the best 190 pilot, not only in passive flight, but also in steep dives to the point that I thought they were going in without hope only to find them pull up at the last minute and return to the fight LMFAO!! I also read that some forum members believe that development focus does/should favour online play, well, from what I have read over the years to date, statistically off line play makes up the greater number of paying punters. I'm a 100% offline player as is everyone else I know that plays PC games. AI performance is not a trivial issue with gaming development, just ask the developers how important it is. This is certainly a very significant patch for CoD, but after all it was either that or shut the doors and call in the cleaners right? Well, for me it's off the shelf and now sitting on the desktop waiting for the next patch. I have faith now at least it will get there eventually. Cheers, CrazySchmidt. ![]() Last edited by CrazySchmidt; 09-09-2011 at 09:17 AM. |
#43
|
||||
|
||||
![]() Quote:
...and if world were perfect, to hire the talented guy who made -BOB II WOV- AI, no need to reinvent the wheel.
__________________
|
#44
|
||||
|
||||
![]()
Said it before and I'll say it again, the AI in BoBII WoV is the only AI I have competed against that made me actually think I was against a real player.
At the point I ended up in a Rolling Scissors against a 109 I was really hooked! If you want to experience true Flight Simulation AI, load up BoBII WoV and then compare it with the AI in Clod. BoBII is like playing chess against a Grandmaster while Clod is like playing against your mate who thinks he can use the Pawn's to jump over pieces and remove them from the board! Sign up Buddeye and pay him a salary...he'll be worth every penny! BTW, I fly mainly offline at the moment as CloD doesn't really interest me that much online as I don't have the time to go through learning CEM, so offline is fine for now. Eventually I will learn CEM but for now I just want to have a little fun and compete against quality AI, and at the moment....we don't have any! Cheers, MP
__________________
|
#45
|
|||
|
|||
![]()
The problem with realistic and Human like AI is that it is so very costly.
The developing of realistic Flight Sim AI can “not” really be coded to a spec (like graphics, landscape, textures, hardware interfaces, multi player, canned missions, etc.) where the cost can be accurately estimated and bounded. Developing AI is a process (develop, test, refine, test, refine, etc). You are trying to simulate a human whose options and thinking are almost endless. AI Robots can be built today if their functions are limited (repeatable task like the auto robots) but the building of human robots would require the refinement and testing process with endless delays and the cost gets too high or out of control. It is almost impossible to "bound" human thinking (say a good pilot, as individuals solve problems and invent solutions in an almost infinite manner). Combat Flight Sim AI has the same problem. The development cost to make the AI more human and thinking is just too high. The game developers are force to get the AI working and call a stop to the refinement process. They can not continue the process too long because of cost. In BOBII, we work for free. We get endless ideas from our players and testers which we can use for the BOBII AI refinement process.. The implementation and testing is still very difficult requiring much refinement and some really good testers who can offer refinements. We have been refining the AI in BOBII using this refinement process for 5 years. We could go on forever with the only limit being “new” ideas and experienced manpower. The answer IMHO is simple, the Flight Sim game industry, the developer, can not afford the money for an effective and complete human like AI system (a commercial game developer really can not afford a BOBII like refinement process). Only the military or NASA can afford to develop smart, effective, thinking, and human like AI and even they have had limited success, as yet.. |
#46
|
||||
|
||||
![]() Quote:
Below is a horrible example of how scripting is almost replacing A.I:
__________________
|
#47
|
|||
|
|||
![]()
buddye
It seems to me from what you say, if a developer like COD wanted a competent AI performance then the best course of action would be to open the source in such fashion as to allow coding for the AI. AI performance improvements would come from competent programming and a community involvement over time. There could be benefits to developer, because it would take the "hot potato" of AI developement from the developer and hand it off to the community. Naturally a reasonable AI performance package would have to be coded as a starter package. The AI would thereafter be done over time with 3rd party community developers and feedback from the community. I could live with that, and actually I'd be thrilled with the prospects that we could eventually have an outstanding AI performance package. |
#48
|
|||
|
|||
![]()
That's exactly what we should ask for: MG to open AI over-coding in an additional dll.
Maybe then the buddye and his mates from WoV BoB 2 could help with it, or anyone else with spare time and interest. |
#49
|
|||
|
|||
![]()
Maybe the community should compile a list of AI attributes or features that the developers or modders could use as a sort of checklist.
Something separated into two general categories of Friendly and Enemy AI. Then further separated into three categories of, Essential, Desired, and Ideal AI qualities or abilities. In the Essential category you could have not just positive pre-requisites, but negative ones too, things along the lines of what the Friendly or Enemy AI must never do or fail at. In the Desired category you could have more advanced features that should be possible given the current technology, but which aren't game-breakers like in the Essential category. In the Ideal category you could have wishful thinking, 'it would be good if we could one day have such and such a feature' type ideas. Just putting it out there. Might be more constructive and proactive than just waiting to see what the developers or modders do then reacting to that after it happens. Create some guidelines so the developers know what the community considers to be fundamentally necessary or essential, what they consider to be worth trying to achieve beyond that, and what they don't really expect to be done but would hold as the highest achievement or aim. |
#50
|
|||
|
|||
![]()
I am not sure if a commercial game developer would feel comfortable releasing his product (his source code). His source is his future with respect to new products which he plans to use as a baseline for future products. A flight sim developer must sell a string of products base on his engine to make any real money these days (you do not develop a new engine for only one product).
The COD manager might be willing to assign a programmer to work with a committed team of AI testers who would test, offer suggestions, analysis, and refinements. All parties would need to understand that the project would be long term (multi-year) with updates maybe every 6 months. A new priviate forum could be used to coordinate the work (the BOBII approach). I do not want to bore you guys with BOBII but for those interested in AI (and I understand that some players are only into MP), I will offer a document. I offer the document to show an overview of BOBII AI's the scope and complexity. Please skip it if not interested and am sorry for boring anyone. Overview of the BOBII AI Performance and Design The redesign of the AI Maneuver Selection The redesign 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. Of course there is a big danger in this strategy. We do not want BOBII to become repeatable. This will become a fine line to follow in the future and I will need both our testers and customers help and feedback. Here is a summary of the new selection criteria design: 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 (none to tail, tail to tail, nose to beam, tail to beam or left, right, front, back) 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. The new design uses the A/C’s current position but I am thinking about implementing the A/C’s “lead” position (his future position which would be a small delta in the future). Anyway, this new design is a long term work BOBII AI strategy (work in progress) that I can work on as I have new ideas for the AI from our testers and customers. It should position the BOBII AI design for future improvements by using more deterministic rather than random selection criteria. The goal is very simple "to improve the AI performance" and keep BOBII the best off line AI. My gut feel based on my experience and testing is that the AI is now stronger at selecting the best/correct maneuver, avoiding bad positions (like low altitude), better at avoiding low energy, and in general a bit stronger fighter and defender. Of course, the Player will always “win” with experience/practice but if we give the player a better fight (scrap), I personally consider that real progress. BTW, 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. 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 AI is assigned a Skill Level of Hero2 (the highest in the game) so that is where he gets his boost in performance (edge). AI Maneuver Selection is 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 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). 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). Maneuvers are then divided into three parts Climb, 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 simple maneuvers for selection for the JU87 and Defiant. The following are BOBII’s complex maneuvers (each maneuver is a significant program for completing the assigned maneuver): 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 MANOEUVRE_CLIMBFORHOME MANOEUVRE_STRAIGHTDIVE MANOEUVRE_OUTSIDELOOP MANOEUVRE_SHOOTTOFRIGHTEN MANOEUVRE_SHOOTTOOEARLY MANOEUVRE_GAINHEIGHT MANOEUVRE_LAGROLL MANOEUVRE_EXTENSION MANOEUVRE_DIVINGROLL MANOEUVRE_REVERSETURN MANOEUVRE_SELFASBAIT 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 MANOEUVRE_STEEPDIVE MANOEUVRE_UPANDUNDER MANOEUVRE_STALLTURN MANOEUVRE_SLASHINGATTACK MANOEUVRE_CLIMBTURN MANOEUVRE_ROLL360 MANOEUVRE_STRAFFE MANOEUVRE_TRANSITION MANOEUVRE_PEELOFF MANOEUVRE_SNAPSHOT MANOEUVRE_STAYONTAIL MANOEUVRE_FLYTHROUGHCLOUD MANOEUVRE_REGROUP MANOEUVRE_DISENGAGED MANOEUVRE_SPINRECOVERY MANOEUVRE_COLLIDE MANOEUVRE_LAST MANOEUVRE_ALIGNMENT MANOEUVRE_DROPANDZOOM MANOEUVRE_COLLISIONAVOIDANCE MANOEUVRE_TURNTOHDGANDPITCH MANOEUVRE_SCREWYOUGUYSIMGOINGHOME 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. |
![]() |
|
|