Joined: Apr 2001 Posts: 121,384PanzerMeyer
Pro-Consul of Florida
PanzerMeyer
Pro-Consul of Florida
King Crimson - SimHQ's Top Poster
Joined: Apr 2001
Posts: 121,384
Miami, FL USA
Originally Posted By: Raw Kryptonite
not just some kind of BS hitpoints/damage ratio.
The vast majority of games that I've played do just that. It annoys me and this is why I hardly play any games on anything higher than "normal" difficulty. I've noticed with RTS games that putting the AI on "hard" or "very hard" difficulty simply means that the AI will get bonus resources and extra units. That's simply giving the AI a cheat. It's not making it more intelligent.
“Whoever fights monsters should see to it that in the process he does not become a monster. And if you gaze long enough into an abyss, the abyss will gaze back into you.”
At least in the Thief games they can increase the guards' ability to see you, increase their persistence in searching for you, and so on. It's not just "their guns get bigger and yours get smaller" that many games fall back on.
I liked the AI in games like FEAR and NOLF. Monolith was pretty good at it, actually, AvP2 and TRON 2 were good as well.
I loved it when one of HARM's goons would shout "Whoa, bullets!" and dive for cover when you started firing.
The Jedi Master
The anteater is wearing the bagel because he's a reindeer princess. -- my 4 yr old daughter
Joined: Apr 2008 Posts: 19,581Raw Kryptonite
Beat the Kobayashi Maru
Raw Kryptonite
Beat the Kobayashi Maru
Veteran
Joined: Apr 2008
Posts: 19,581
MS
SC: Chaos Theory had pretty good AI. The best part was that the entire map was always running and "alive", not just some section you were in after a checkpoint. Something you did early in the mission could be noticed...a missing guard, a closed/open door that wasn't before, a light shot out or even just turned off...they would wake up a knocked out guard as well. Anything that was off and it could set off all guards to be more alert, or equip armor and guns, lights etc. This is the main thing missing from the current gen of the SC games, since they rely on checkpoints.
Realistic AI (meaning actually behaving realistically) in open world games would inevitably ruin the story or destroy the intent of the game. For instance, in Grand Theft Auto, you wouldn't be able to do those things and get away with it, you would be a fugitive for the rest of your life until you were brought down, likewise, I've played a few games where you kill a villager or kill a guard sentry, so maybe like the locals react to what you did for a few minutes of game time, then reset back to their original state. Memories are short at best, or don't exist at all.
I don't care how evil some of the characters are in Grand Theft Auto, once they see that you're capable of carjacking and murdering grannies, slaying law enforcement, and shooting up the town, you're a huge liability, they simply wouldn't deal with you, or they'd kill you themselves. While there are no checkpoints, for the game world to be consistent within the context of the story (and playable as well, one versus millions wouldn't work too long as a game), there are always shortcuts made for practical reasons.
Not a sim, but Galactic Civilizations II has some absolutely amazing AI
Now there is a man who knows good AI when he sees it!
I absolutely agree with you on GalCiv2. I had some of my most amazing strategy gaming experiences with that game, the AI was very well done. It had an option in the game settings "Allow AI to use max CPU" which was only recommended for fast CPUs but would unleash the full complexity of the AI. I still have that game installed on both my desktop and laptop. I really hope GalCiv3 lives up to the legacy of its predecessor!
I can think of a few examples of both good and bad AI. The AI in BoB2:WOV with the BDG patches really blew me away when I first encountered it. Really smart, almost human like behaviour. Likewise the AI in the original IL-2 series (all the way up to 1946) was never terribly impressive. One of the headline features of WOFF is they've overhauled the AI from Phase 3 and made it much less predictable and human like in its behaviour.
Way back in 2009 when Empire Total War was released to howls of derision because the AI was basically nerfed to the point of standing passively in front of you whilst your own forces blasted them away I remember reading a really good article about AI development. Basically the point was there are umpteen modellers, texture artists, animators, etc etc but comparitively few AI programmers. AI programming takes a great deal of skill and ingenuity on the part of the programmer, yet the results aren't readily apparent in promotional screenshots or Youtube trailers... Then of course as somebody above pointed out the current trend of Call of Duty clones and corridor shooters doesn't exactly require sophisticated AI, and nor will the intended customer appreciate it. Hence developers blow the biggest part of their budget on the high impact stuff like graphics and neglect stuff like AI. Which in turn creates the kind of climate where quality AI programmers are neither particularly sought after nor nurtured in the contemporary video game industry.
Some stuff to remember regarding AI. First is that there's a limited amount of resources that the computer has and when you're dealing with a lot of units you can only spend so much time on each one (and that's with what's left after graphics and other systems). There are tricks you can do to help with that, like only having the lead AI of a group doing the heavy thinking and passing it along to the rest, but it adds up. Generally I try to avoid having the AIs doing much every frame (some things need to be) and then try to work it so I don't have too many AIs doing complex thinking in the same frame.
Also there are only a few common things that translate well between games. Path finding is the best example I can think of. Its not like graphics engines where, while there are variations, you can get one which will work for a number of different games. Even games of the same genre can have really different requirements. For example a fast mover game isn't going to need the same level of ground combat simulation fidelity as a slow mover. Sure, the slow mover's code could probably be used in the fast mover's but you're covering a lot more area and so will have a lot more units and there go your resources. Most games try to do or focus on something to differentiate themselves from others and the AI code has to take that into account.
The broader the AI needed means the less time there is to add depth. For the flight sims Ive worked on along with dogfighting logic (taking into account group tactics) some of the other stuff you have to have logic for is CAP, SEAD, SAR, strike packages, escorts, refueling, takeoff and landing procedures, all of which has to take into account the interactions of a group of planes, and this is just dealing with air AI. Then you need to code the wingman logic which cant really talk with the Player much and determine the interface so the Play can talk with them. Also theres adding the hooks for all the radio calls that need to be made at the appropriate time and figuring out what data needs to be passed for multiplayer.
Another factor which has been mentioned is that often you have to spend extra time writing code to limit the AIs knowledge. It doesnt take much code for an AI to find someone in a particular radius. Its another to take into account line of sight, blind spots and other things like that.
If you want to throw in a dynamic campaign then thats probably coming close to adding the complete logic for an RTS game. Thats not something Id want to try to do on the first version of a game. If we had done another Janes title then thats what I would have been working on. (F-15 base game, F/A-18 multiplayer and convert to Navy based, ??? dynamic).
Also the less predictable an AI is the harder it is to debug. You only see the bug after the fact and you have to get used to looking for patterns so you can figure out where to look and add debugging aids.
Then theres things like trying to make your code adaptable to different play styles and a few other bits that just ran out of my head but Ive probably rambled enough.
I think the problem is really just that the resources to make really good AI aren't provided, for the reasons mentioned, but the industry as a whole seems "ok" with that.
There's no "feels like you're playing against a human" pledge that devs have signed to indicate they will spend less time on flashy effects (that frankly all the games have and we've seen before) and more on that kind of logic that makes the game more entertaining to play.
I would LOVE an AI slider in games that lets you balance the AI with the graphics so after you OOOH and AAHHHH over a game for the first few hours you could lower that and kick up the AI so that it's still worth playing years later once your PC is faster and you can then increase both AI AND graphics.
The Jedi Master
The anteater is wearing the bagel because he's a reindeer princess. -- my 4 yr old daughter
I Wonder do the military use Advanced AI in there super computers I can think of a lot of military Applications for same. think Deep blue it beat a grand master in chess.