Forgot your password?
typodupeerror
Games Entertainment

The State of Game AI 88

Posted by Soulskill
from the don't-let-it-get-the-railgun dept.
Gamasutra has a summary written by Dan Kline of Crystal Dynamics for this year's Artificial Intelligence and Interactive Digital Entertainment (AIIDE) Conference held at Stanford University. They discussed why AI capabilities have not scaled with CPU speed, balancing MMO economies and game mechanics, procedural dialogue, and many other topics. Kline also wrote in more detail about the conference at his blog. "... Rabin put forth his own challenge for the future: Despite all this, why is AI still allowed to suck? Because, in his view, sharp AI is just not required for many games, and game designers frequently don't get what AI can do. That was his challenge for this AIIDE — to show others the potential, and necessity, of game AI, to find the problems that designers are trying to tackle, and solve them."
This discussion has been archived. No new comments can be posted.

The State of Game AI

Comments Filter:
  • by Anonymous Coward

    After all, publishers these days only care about churning out sequels quickly, so the so-called 'advanced' AI is basically just a computer versions of cheating player, instead of spending time on increasing the 'I' of the AI.

    • by TheLink (130905) on Tuesday November 04, 2008 @02:59AM (#25623377) Journal
      But does increasing the I of the AI actually make games fun?

      The Problem that AI is supposed to solve in most Games is not "how to beat the human".
      The Problem is "how to make it fun for the human".

      Creating an AI that can consistently beat humans is not hard. Making it fun for most humans might not be so easy.

      Fact is humans aren't that good at most games (amongst other things). You don't have to be very intelligent to be good at most games. How many of you can beat a computer at chess at high difficulty? How many people actually _lose_ in tic-tac-toe - I've seen more than a few :).

      It's often not hard to make a computer extremely good at a game, at least good enough to beat most people. But does that make it fun?

      In most FPS games, stupid humans want to be able to mow down _thousands_ of stupider computer controlled enemies - "against the odds". That's what makes it fun for them.

      That's just not possible if the enemies start having a lot more brains. Then most players might have difficulty getting past the first 3 enemies :).

      It's not that difficult to make an enemy FPS "bot" have superb tactics, coordination, timing etc. Especially if the map is pre-known (which is usually the case). You can code the tactics and heuristics in. If you hear the player in position X, group A enemies head to position Y and group B head to position Z, and bye bye player.

      Imagine if enemies that are low in health kept running away and hiding, and then snipe at you from far away when they see that you are busy doing something else. While that might be more realistic, it might not be so fun eh? Who really wants realism in games?

      At that rate the player can never pretend to be the hero he wants to be. He'll just be dead. And your game won't sell.

      Same goes for RTS games, believe me, you don't have to make a computer cheat to beat humans - a computer can micromanage better than most humans.

      Just ensure that basic stuff like navigation is better. Stuff doesn't have to be that smart, but at least they shouldn't be totally stupid - they should be able to walk around stuff without getting stuck - even a "dumb" animal can navigate open spaces better than many computer controlled stuff in games.
      • by Kenoli (934612)
        A 'smart' enemy (or NPC or whatever) is not necessarily a 'hard' one. AI could be used much more than it is current to make characters look and act more natural and believable.
        You've probably played first person shooters with enemies that act in very simple and predictable ways, and with non-enemy characters being fully scripted and just standing around with a blank expression once they've said their lines.
        • Re: (Score:3, Interesting)

          by TheLink (130905)
          Well I guess you could script some of the AI enemy soldiers to try to save their comrades - who have had their legs blown off by you or something.

          The mortally injured ones might alternate from cursing you and begging you to put them out of their misery.

          Some might try to surrender to you if they cornered, out of ammo and clearly out-classed.

          Might make for a different sort of game. Smart but not hard opponents :).

          At the end of the game when you have killed thousands of these, maybe you'd need a shrink ;).

          I th
      • by VShael (62735) on Tuesday November 04, 2008 @04:56AM (#25623825) Journal

        Imagine if enemies that are low in health kept running away and hiding, and then snipe at you from far away when they see that you are busy doing something else. While that might be more realistic, it might not be so fun eh? Who really wants realism in games?

        Huh, you must be right. I guess that's why online gaming and LAN parties are so incredibly unpopular.

        Personally, I want to see the day where two AI's argue on the battlefield...
        "You camping b*stard!!"
        "It's a legitimate strategy!"

        • by TheLink (130905)
          OK I'm wrong.

          But don't they already have pretty smart bots for those sort of games already?

          If the Game AI is stupid it's usually a game where you're supposed to play against many enemies at a go, and that's why it's crappy.

          If it's not stupid it's one where you play against very few enemies. Maybe even just one at a time.
        • Re: (Score:2, Funny)

          by Genrou (600910)


          Personally, I want to see the day where two AI's argue on the battlefield...

          And then shouting "LeRoy Jenkins!!" and running away to kill enemies.

          But that might not be that intelligent...

        • Re: (Score:3, Interesting)

          by nick_davison (217681)

          Huh, you must be right. I guess that's why online gaming and LAN parties are so incredibly unpopular.

          Everyone still hates campers. Most LAN party games have rulesets that discourage it.

          If you have rapid respawns, the guy who runs out, gets fifty kills vs. twenty deaths, is going to massively outscore the guy who nurses his last two percent of health and snipes five guys from hiding.

          Similarly, with short round times, it's much more fun to try something a little bit crazy so you can tell your friends about how you got a last point of health kill. After all, you know there's another round starting in thirty s

        • by Allicorn (175921)

          Already done - Quake 3 Arena's bots routinely discuss their opponents' performance during play. From a logfile, Doom and Major both being bots:

              0:32 Kill: 3 1 10: Doom killed Major by MOD_RAILGUN
              0:34 say: Major: Camping AGAIN doom? Didn't your therapist tell you to stop?

          TBH, where this falls down on being convincing is probably only that it's spelled and punctuated so well.

          Alli

      • by kvezach (1199717) on Tuesday November 04, 2008 @05:04AM (#25623865)
        Sure, it's easy to make hard enemies. Just look at the Duke 3D bot. Absolutely no brains, but it moved like a rabbit on crack, and therefore it would beat you every time (unless you had a great advantage).

        However, bots like that aren't any fun. It's more fun if the bots have limitations that at least somehow resemble the limitations players have; can't turn quickly, nor move too fast, know the map by instinct, etc.. Then, within those constraints, use AI and use AI well.

        Put a limit on how many commands the enemy can do in a certain time for FPSes - or a limit on the rapidity it can issue commands in RTSes.. and suddenly you have a much more interesting problem. Or for that matter, let the player decide how smart the enemy should be, and whether or not it can cheat (issue a thousand orders in a second?). If he likes playing against a cheating bastard, let him play against a cheating bastard; if he wants to play against a chessmaster with no mobility and all brains, let him do so, that he'll be surprised when it still beats him.
      • Yes and no (Score:5, Insightful)

        by Moraelin (679338) on Tuesday November 04, 2008 @05:45AM (#25624007) Journal

        1. I'll somewhat disaggree about RTS. Sure, in theory it sounds good, but I've yet to see a strategy game where the AI doesn't plain old cheat to stay alive.

        Yes, it can "micromanage" better, in the sense of cycling through all units every frame or couple of frames. Sure, it can do a "for" loop better than a human. But actually allocate resources intelligently, apply smart tactics against a human who built in the unexpected place, etc, is where computers are still as stupid as it gets.

        Again, we could argue about theoretically being easier to make them smarter, but way I see it, that's the basic rule of thumb: does it need to cheat? Does advancing in the storyline to face a new enemy, described as more cunning and ruthless, actually just mean the same retarded AI with a bigger pre-built base and more silos full of spice/tiberium/whatever and more reinforcements out of nowhere? Does it just mean that the new "cunning and ruthless" enemy just gets better units from the start? Does upping the difficulty actually just means that the AI gets even more money and a damage bonus, as opposed to just un-hobbling that supposedly super-AI a little?

        If any of those are true, no, you have _not_ coded teh uber-AI and then dumbed it down for the player. You can claim to have a too smart AI when it can start just with a town centre and 2 peons, just like the player, and put up a better fight. And, oh, make it run just as long a way to the mines/geisers/spice-fields as the players, at that. Starting with 3 resource nodes in an already built base doesn't quite qualify as equal difficulty.

        2. Yes, chess makes a good poster child, but that has had decades of real AI research into just that speciffic game, and at that by real AI researchers. A brand new game, with brand new rules, within 3 years, and with the cheapest team possible... heh... sorry. I can't take that seriously.

        Most of the games so far have even trouble pathfinding, or keeping their flamethrower guys from frying their own team mates in front of them, etc. Or look at bigger scale strategy games, like Paradox's, where it takes several years of patching just to get the AI to no longer waste its whole army attacking Switzerland. And even then often the "fix" isn't as much AI, as just making fortifications randomly disappear in combat, so eventually the mountains around Switzerland just stop giving a defense bonus. You know, 'cause apparently 100,000 soldiers with rifles and grenades can demolish a mountain. And then invariably it becomes vulnerable in some other way, to some new exploit created by the previous fix.

        3. Ditto for FPS. What the computer has as an advantage isn't really better AI, it's unerring accuracy. It's trivial to make a bot that never misses, and has faster reactions than any human, because it simply needs to calculate the angle and pretend it aimed accurately that way. It simply doesn't have the whole issue of moving the whole arm with the mouse, or the finite resolution of the mouse, or the whole lag of the pipeline from mouse to seeing the cursor move (the TFT alone introduces another 1-2 frames lag) which is already known to ruin one's accuracy because it lets you overshoot before seeing any results, etc.

        Some cheat even further, by basically having eyes in the back of their head, or being able to see through walls, or just not having the issue of "does that 3 pixel tall figure over there look like one of our guys or one of theirs? Is it even a human?" It just doesn't have to parse an array of pixels, it already knows where everyone is. Even when you say "if you hear the player at position X", you're already cheating. A player can at most judge "I hear some footsteps in that general direction" (and even that at best in 30 degree increments), but not an exact position, nor know if it's a friend or foe or neutral there.

        Give the computer a spread comparable to a human for the selected difficulty level, give it a similar lag in reacting and turning, and limit it to the exact same field of view, and that suppos

      • Re: (Score:2, Interesting)

        by Anonymous Coward

        Who says AI has to be used to make opponents harder?

        It could also be used to:
        - Make opponents have conversations with each other.
        - Exchange knowledge, gear, supplies, etc.
        - Boost or ruin other opponents morale.
        - Live as they should and not just stand still waiting for the player.
        - Trade with each other.
        - Play card games, chess with each other.
        - Get recreational and make sand castles when bored
        - Have sex with each other
        - Go explore surroundings and remember them afterwards.
        - Disobey orders
        - Think new orders

        • Re: (Score:3, Informative)

          by default luser (529332)

          Wouldn't that be something?

          Unfortunately, there's no way to produce an AI like this, because each one would be a work of art. The immense amount of time it would take the programmer to construct personalities like the above from the ground-up would be prohibitive, and no amount of tools could streamline this.

          Really, this is the hardest part abouut AI design: classifying the entire human existence into easy-to-handle pieces. Unless you can successfully generalize human experiences and tendancies into neat

          • by Velocir (851555)
            They actually did something similar to the grandparent's suggestions with the Orc AI for the battle scenes in the 2nd and 3rd LotRs movies (yes, IAAKiwi). They just had a whole lot of characteristics, with acceptable levels of variation between each orc, and then they'd press play and observe how those characteristics played out. They found that some orcs would retreat once they started losing the battle.
            • Re: (Score:3, Interesting)

              by default luser (529332)

              Sure, that's fine and good if you limit your character to an "Orc," and limit their exposure to "field of battle." Limiting scope is the easiest way to get AI that "works."

              A good example of limited-scope AI is the shock troopers from the original Half-Life: despite poor hardware specs, the troops reacts to player attacks, falling back and covering their movements with fire/grenades. This only "worked" because the troopers had a very limited list of actions to select from, and the paths the troopers could

      • Re: (Score:3, Informative)

        by redscare2k4 (1178243)

        I don't agree. In your example, you can make those groups of enemies flank the player but give them low accuracy, for example. So in low difficulty the AI tactics are smart but their competence is low. And those of us that like masochistic difficulty levels would enjoy havin to put some mines to cover our back from those flankers.

      • Re: (Score:3, Interesting)

        Yes, increasing the AI could very well make the games fun for many people. What you're talking about is not exactly the kind of AI that's needed. There is a very big difference between being able to beat the human player and being able to outwit the human player. It's not necessarily difficulty or realism that's needed, it's creativity and genuine surprise.

        I want a game where the AI is smart enough to send a probe over and throw assimilator over the player's vespene geyser to keep the player behind in
      • Re: (Score:3, Insightful)

        by manekineko2 (1052430)

        In most FPS games, stupid humans want to be able to mow down _thousands_ of stupider computer controlled enemies - "against the odds". That's what makes it fun for them.

        That's just not possible if the enemies start having a lot more brains. Then most players might have difficulty getting past the first 3 enemies :).

        It's not that difficult to make an enemy FPS "bot" have superb tactics, coordination, timing etc. Especially if the map is pre-known (which is usually the case). You can code the tactics and heuristics in. If you hear the player in position X, group A enemies head to position Y and group B head to position Z, and bye bye player.

        Imagine if enemies that are low in health kept running away and hiding, and then snipe at you from far away when they see that you are busy doing something else. While that might be more realistic, it might not be so fun eh? Who really wants realism in games?

        At that rate the player can never pretend to be the hero he wants to be. He'll just be dead. And your game won't sell.

        I see your point, but disagree to a certain extent. Idiot AI in modern FPS really devalues the successes, at least for me, to a large extent. It should be an incredible accomplishment for a single man to kill a squad of 5 people, but it's just one encounter, and I feel nothing afterwards. If the AI could be juiced up in these games, then you wouldn't need to throw a 1000 enemies at the player to make them feel like a hero, because you'd feel more accomplishment from each encounter.

        I recently just played

        • by Ayavaron (971110)

          I recently just played through Deus Ex for the first time, and it is an outstanding game, especially for the time. However, the AI was really the Achilles Heel in terms of immersion in that game. At times, you can really get into games like that, but once the rules of the AI start to become apparent the whole experience starts to feel less like you're a hero, and more like a toy world. You shoot a guy in the chest, hide for a while, he decides it must have been the wind and goes back to his patrol without telling anyone.

          It was also pretty silly how people would just stand there if you threw a gas grenade at them. A group of seven or eight guards in a corridor could be dispatched with boring ease if you threw a gas grenade and took your time aiming so you could cap each one of them off with headshots.

      • Re: (Score:2, Insightful)

        by Ringthane (415537)

        "Just ensure that basic stuff like navigation is better. Stuff doesn't have to be that smart, but at least they shouldn't be totally stupid - they should be able to walk around stuff without getting stuck - even a "dumb" animal can navigate open spaces better than many computer controlled stuff in games."

        A lot of games -- even high profile games like Halo 3 -- can't get this fundamental down. God forbid you have an AI character driving your Warthog anywhere. You're sure to ram into a tree or rock & get

      • Re: (Score:3, Interesting)

        by maugle (1369813)
        As far as RTS goes, I'd like to see the AI act more human. Not just in how "smart" it plays, but in how quickly it can act.

        Remember in Warcraft 2 (I've started playing it again recently, so I'll use it as an example), how you had to send roughly double the number of troops as the enemy to get a fair fight? The AI would have all its ogre-magi cast bloodlust (or all its paladins cast heal) simultaneously, while you'd be struggling to get a single spell out.

        And while that was going on, they'd be effortles
      • "It's not that difficult to make an enemy FPS "bot" have superb tactics, coordination, timing etc. Especially if the map is pre-known (which is usually the case). You can code the tactics and heuristics in. If you hear the player in position X, group A enemies head to position Y and group B head to position Z, and bye bye player."

        I'd say the holy grail is to have the AI without pre-knowing the maps, and without having to hand-code the small details.
    • by sgt scrub (869860)

      I've been playing Fallout. I think the "I" is pretty good. If designers could decrease the "A" I'd be happier. IMHO dedicated hardware for AI is something that desperately needs to be tapped. If someone could figure out a way to implement persistent neural nets the device could be used for an array of applications, not just games. ie. OCR, voice/face/fingerprint recognition, hearing/vision aid... I've always wanted to try hacking a graphics card to do it but they don't have any persistent memory. Car

  • by B5_geek (638928) on Tuesday November 04, 2008 @12:01AM (#25622449)

    The one game that has always stood out in my mind as having great A.I. was Comanche Maximum Overkill. The original (386DX-40 era) DOS game actually advertised in the manual that if you repeat the same attack pattern for 30 seconds then the game would adapt, AND IT DID!

    Imagine this scenario; you are in a helicopter hiding behind a hill. Whenever a bad-guy gets close enough, you pop-up above the hill, get a missile lock, fire, then drop below the hill. If you repeat this pattern long-enough (30+ seconds) then enemy copters will sneak up behind you and blow you up. I was always impressed at this "Learning A.I." as opposed to what most computers games do.

    RTS/TBS: build stuff quicker then you can and/or advance technology faster then should be possible.
    FPS: Have 'super accurate' shots, higher health, bigger guns.

    • Re: (Score:3, Insightful)

      by Zephyrmation (1372025)

      RTS/TBS: build stuff quicker then you can and/or advance technology faster then should be possible.
      FPS: Have 'super accurate' shots, higher health, bigger guns.

      This to me is a huge downfall of modern games - instead of making AI opponents "smarter", devs simply tweak the rules to give the AI more of an advantage.

      That being said, it is incredibly hard to define an AI that doesn't have "unrealistic" skills when the players' skills are advancing in the same fashion. For example, your skill in Halo is to a large extent determined by how accurate you are, which is easily mimicked by AI. I can't count the number of times I've heard someone accused of using an "aimbot"

      • Re: (Score:2, Interesting)

        by Rysith (647440)
        The problem there is that the two factors you mentioned (accuracy and commands-per-minute) are both things that AI can far exceed humans at, especially if you aren't careful to limit it. I think that the real solution is to make a game where learning and adapting is more important than accuracy or speed, but then someone would have to write actual AI.
        • Re: (Score:3, Insightful)

          by Dun Malg (230075)

          The problem there is that the two factors you mentioned (accuracy and commands-per-minute) are both things that AI can far exceed humans at, especially if you aren't careful to limit it. I think that the real solution is to make a game where learning and adapting is more important than accuracy or speed, but then someone would have to write actual AI.

          Yeah, wouldn't it be nice to have games like that again? I blame the original "Nintendo generation" games for the proliferation of the abominations that are RTS games. In my experience, the contrived demands of the "Real Time" aspecs so completely dominate the game that what little "Strategy" remains might as well not exist.

        • by SnowZero (92219) on Tuesday November 04, 2008 @01:11AM (#25622919)

          Education can help; A lot of college CS programs don't force the breadth that an "AI game developer" would need. In my undergrad degree, graphics, AI, game programming, and distributed systems were "applications" classes, and you only needed one or two. Usually the game programmers would have to take graphics, because even if your the sound or networking guy, they'd expect you to know graphics like they did. If more game programmers had taken systems classes (such as operating systems), I don't think they would have had as rough a road with multicore either.

          However, even given the current narrow classes, you can at least try to bleed through enough of the wider topics into game-oriented classes to get people footed. In the game programming course I was a teaching assistant for, I gave a couple lectures on AI (I was an AI/Robotics grad student). Then we gave them an AI-only assignment. It was a multiplayer tank game where we pitted their AIs against some test opponents, and then against one another in a tournament. It didn't allow much cheating in the AIs (only global visibility, where a player can see every unit at all times, which is nearly universal in game AIs). The assignment really seemed to be a hit, and hopefully for those students that went on to the games industry, it gave them the basis to branch out and learn other deeper AI techniques.

          It would also help if the AI community wouldn't look down on things such as games as "lowly applications". In some sense I think game programmers would be best off talking to robotics people or even web machine learning people (spam filtering, web search ranking, etc). Those people are already doing applied AI, and particularly for robotics folks, working on many of the same problems that good game AIs would face.

          • by Rockoon (1252108)
            I think that you are wrong about the AI community looking down on games as "lowly applications."

            I think that many posters here are confusing Artificial Intelligence with Machine Learning. The later is a subset of the former, but is often difficult to apply to games. Accepting adaptation is typically equivient to abandoning Game Theory.

            Certainly there are entire fields of A.I. that are entirely unrelated, but there are many fields of A.I. whos core development is exclusively related to games.

            Most games
            • by SnowZero (92219) on Tuesday November 04, 2008 @02:24AM (#25623243)

              I think that you are wrong about the AI community looking down on games as "lowly applications."

              Well, at conferences such as AAAI, even robotics isn't treated as more than a "mere application". At least that's the treatment I felt going there and presenting work. Its ok I guess, because AI theory doesn't directly relate to where most work in applied AI happens (just like in applying machine learning -- most of the work is in the features, not the algorithms). However, I feel there is a real gap between what conferences such as AAAI are willing to embrace, and what happens at game development conferences or robotics conferences. Being someone who did RoboCup for many years, I really do know what it is like to span that gap -- some of the most important breakthroughs we made were not publishable in either type of conference. I really feel that the field lacks something like the AI equivalent of JGT (Journal of Graphics Tools) or Graphics Gems. If I were a more professorial type I might try to start something like that, but instead I just wait and hope someone else will, and then I could contribute to it.

              I think that many posters here are confusing Artificial Intelligence with Machine Learning. The later is a subset of the former, but is often difficult to apply to games. Accepting adaptation is typically equivalent to abandoning Game Theory.

              Other than the fact that applying machine learning successfully is difficult in general, I don't know if I really agree with that statement. Game theory is a subset of AI just like machine learning. Game theory is very important for abstract games such as chess, but I'd argue that most "physical simulation" games need things more like potential fields, advanced motion planning, high quality hand coded policies, and geometric stuff of that ilk. Old stuff like rule base AIs really has a place in games too -- the work done on scaling up expert systems is really like "software engineering for AI", and sadly a lot of that work didn't get published either.

              A simple form of learning we used in our robotics work was weighted experts given a set of hand-coded policies (~= "a set of AI strategies" for the non AI people out there). We used that to learn during 30-minute autonomous robotics games against robotic opponents, and it worked, even during a relatively short game. All you need is a way to define successful subgoals (Ex: scoring in a team game, kills in an FPS, or areas won in an RTS) and you can get convergence to the optimal strategy in a logarithmic number of rounds. In a turn-based game, if those experts each applied game theory, you could have game theory and learning combined in a pretty reasonable way. Yes I know that would not be optimal, since you normally would just pick the strongest AI, but humans rarely play optimally, nor is even fun to always play against the same strong strategy.

              Certainly there are entire fields of A.I. that are entirely unrelated, but there are many fields of A.I. whos core development is exclusively related to games.

              True. I guess I just haven't really seen the dots connected. Then again, I haven't been to any AI conferences in the last year or two, so maybe that has changed already. I hope so.

              Most games do not implement any heavy A.I. techniques because it is too difficult to provide skill gradients: Easy, Normal, Hard, Godlike. These skill gradients are pretty simple to implement as an escalation of "cheating," but not so simple as a tweak to AlphaBeta and pretty much futile with Machine Learning.

              Well, here's another place where I think the communities need to work more closely. Coming up with search strategies that are more human-like when measured statistically would be fascinating work. Limiting search depth and random mistakes works in some games, but we could do a lot better. I think some of the commercial chess games already do a pretty good job of various skill

        • by Dutch Gun (899105) on Tuesday November 04, 2008 @02:56AM (#25623369)

          The problem there is that the two factors you mentioned (accuracy and commands-per-minute) are both things that AI can far exceed humans at, especially if you aren't careful to limit it.

          You're correct. I've written AI for a number of commercial games. Some of the most challenging AI is for games in which the players are competing with the AI on what are supposed to be equal terms. An AI can home in on a player's forehead with a sniper rifle with little difficulty. It's a simple mathematical equation. How do you simulate the aiming a player has to do?

          The solution I came up with was to put the target's aim point on a set of springs attached to the player. By jumping around and changing direction quickly, the player would tend to throw the bot's aim off (imaging the target bouncing around, attached by the springs). But, stand still or move in the same direction for too long, and the bot would home in on the player. And, of course, just like a human player, the AI would get in a lucky shot every once in a while as the target crossed in front of the player.

          You have to come up with creative solutions to make the game "feel" fair. That's not the kind of stuff that's typically taught in college courses. Naturally, formal training doesn't hurt, but there are a lot of challenges unique to game development.

          • by TheLink (130905) on Tuesday November 04, 2008 @03:16AM (#25623443) Journal
            Yeah, most people don't seem to get it. They show how stupid/ignorant they are by asking for "smarter/stronger" opponents.

            It's trivial to program a computer to beat humans in most games.

            But the problem AI is supposed to help solve in games is not "How to beat the human".

            The problem AI is supposed to help solve is "How to make it _fun_ for the human, so that lots of humans will pay $$$ to play".

            Most people would have near zero odds against a top notch computer opponent - FPS, RTS, whatever.

            Does anyone really think that Starcraft, Doom etc would have sold so much if playing them was like playing against a World Champion or two?

            I've seen the top humans play in FPS and they can aim pretty well. You'd never be the Hero winning against the odds if the _thousands_ of enemies you fought were even only half as good as a world champion.
            • Re: (Score:1, Interesting)

              by Anonymous Coward

              Again, AI don't have to be used to make opponents harder or easier. Just to make them more human.

              For starters, all computer opponents should have as accurate FoV as what player sees. Yeah that's right, calculate the 3D FoV for all opponents too. In realtime as they are also moving around.

              Without real FoV, there's no point trying to do opponents that explore their surroundings, don't know beforehand what's behind new corners, can remember where they've been, etc.

              In any case, AI should not know where player i

            • by delt0r (999393)
              Not in RTS I'm afraid. Its too open for good AI, the state space is too big, since things the computer can do well is already done for the human player too. Its like good chess AI verse good Go AI.
      • This is the reason I only play strategy games where I can play other people. The game is totally different when everyone must follow the same rules. I can't tell you the amount of times some jackass claimed to be a god of civ4 or some other nonsense, and got his shit pushed in in a multiplayer game like he didn't know a scout from a tank.
        • And that is part of the reason you probably won't see a massive investment in game AI. Its much easier to add networking to the game than it is to try design, implement, and test a good AI.
      • by SnowZero (92219) on Tuesday November 04, 2008 @12:56AM (#25622827)

        This to me is a huge downfall of modern games - instead of making AI opponents "smarter", devs simply tweak the rules to give the AI more of an advantage.

        Indeed. Cheating AIs make me cringe. I'd really rather see a dumber AI that doesn't know where every unit on the level is, than play a more "skilled" one that's just using the fact that it's not playing the same game to gain its advantage.

        That being said, it is incredibly hard to define an AI that doesn't have "unrealistic" skills when the players' skills are advancing in the same fashion. For example, your skill in Halo is to a large extent determined by how accurate you are, which is easily mimicked by AI. I can't count the number of times I've heard someone accused of using an "aimbot" because their skill (or luck) in an FPS seemed "too good" or "unrealistic". The same goes for RTS games - the top human players in the world are to a large degree measured by how many commands, or actions, they can perform in a minute - which is again easily transferred to an AI opponent.

        It's hard to define, but not necessarily hard to measure. Record a bunch of humans playing, look at plots of where they aim based on location, distance, velocity, etc, and build a statistical model. Or, if you've got something more algorithm based, measure it the same way and make sure its distribution on plots looks fairly human. Of course, game companies will have to be willing to hire statistics/AI type people (or train their devs in those areas), and devote the money to gather player data and time to make it happen. So far few companies have gone that route, but I think more will in the future.

        Several years ago I went to an AI conference (AAAI), and they had a quake bot that was coded by some rule-based AI experts (SOAR bot). I was into quake quite a bit at the time, and I'd have to say that was the most fun human-like AI I've played in a game where the player and AI had equal footing (same unit(s) and capabilities). I don't think the game companies have been willing to hire those kind of people yet, but as I said before, hopefully that will change, especially once customers realize that screenshots don't always mean good gameplay.

        P.S. I did AI/Robotics for my degrees, and work on machine learning for a living. Haven't worked in the game industry, but I've worked with a bunch of people in school who have gone into that.

        • Re: (Score:3, Interesting)

          by hardburn (141468)

          I suspect that all the devs say they want a great AI in their game, but when deadlines start to come up, AI is one of the first things to get cut. That's why every RTS in history that got a preview in a magazine a year before release promised a "groundbreaking AI", and yet the same game when released still has ore trucks driving around a hill, across three bridges, and through the enemy base, just because that particular piece of ore was the closest in a straight line.

          I noticed devs getting slightly clever

      • Re: (Score:3, Interesting)

        by tibman (623933)

        I've been in love with NeuralNets since first sight. After a few projects i really wanted to try my hand at a game. I came up with an idea for an RTS that was something like this: The majority of your units were ai, FF nets that evolved genetically. So you don't have to micro manage your economy or patrols or anything. You say, i want a factory here and your builders will find the resources needed and build that factory. They will have to learn the optimal way of doing this. The most successful indiv

        • I've played a little OSS RTS game called Globulation 2, it sounds just like the game you describe. Even though it's unfinished, it's a lot of fun to play and, and to give these commands (such as "Make a building here", "Attackers stand here" etc). It suffers in larger/longer games when units trip over each other and starve to death, or cannot survive the trip from the battlefront to the inn, but I think these issues can be resolved.
          Try it out:
          http://globulation2.org/ [globulation2.org]
    • by cgenman (325138) on Tuesday November 04, 2008 @01:29AM (#25623025) Homepage

      When working on the RTS Empires: Dawn of the Modern World, we had a difficulty setting that was truly insane. The enemy wasn't a computer pretending to be a human, it was an impenetrable black wall of impending dismemberment. If you really wanted to defeat it, you had to pile-on 7 vs 1, with at least 3 top-notch players overseeing the operation. Those were long, intense, brutal battles... Helping to bringing down that beast was a real badge of achievement. Unfortunately we had to cut it back a bit before release for technical reasons, but the ability is still there.

      A realistic FPS would have the enemy sneak up behind you and stab you before knew they were there. A realistic racing game would end in firey death the moment you accidentally rode up on the curb. A realistic tactical squad shooter would have your men pinned down by heavy opposition fire until they called in an airstrike on you. A realistic war game would involve lots, and lots, of digging.

      This is a long way of saying that AI isn't about promoting hyperrealism, but rather is in service of making the game fun.

      That having been said, I'd kill for 3D pathing that doesn't suck. If I need to do another escort mission with some idiot who can't walk around a boulder in the middle of the road, I'm going back to Tetris and I'm never leaving.

      • by elrous0 (869638) * on Tuesday November 04, 2008 @10:48AM (#25626909)

        If I need to do another escort mission with some idiot who can't walk around a boulder in the middle of the road

        That is why I hate, hate hate, HATE escort missions and missions where you must keep some AI character alive in games. It's one thing to deal with a stupid AI enemy (perhaps a little laughable, but not frustrating). It's quite another to deal with a stupid AI ally. Basically, in most of the games I play on higher difficulty settings, the ally AI's are just cannon fodder. Anything else is just damned annoying (especially when you can't even command them to get down or take cover).

        There are a few games that do this right: Halo 3 (which makes vital character invulnerable and everyone else dispensable), Half-Life 2 (which periodically replenishes your cannon fodder AI allies and makes the one non-cannon fodder character near-invulnerable), and Mass Effect (where you can command your allies directly). And there are also games that do it wrong, like Oblivion (where your allies on escort missions don't scale as well as enemies, can't repair their weapons and armour, and do stupid shit like walk off cliffs).

      • That having been said, I'd kill for 3D pathing that doesn't suck. If I need to do another escort mission with some idiot who can't walk around a boulder in the middle of the road, I'm going back to Tetris and I'm never leaving.

        Funny you mention Tetris. Since 2001, most Tetris games have had pathing bugs. Look at how this T piece jumps into an F-shaped hole [ytmnd.com], which works in Tetris Worlds, Tetris DS, Tetris Zone, Tetris Evolution, Tetris Splash, and Tetris Party.

    • Re: (Score:3, Interesting)

      by VShael (62735)

      Agreed.
      Another great game to do this was Descent.

      If you flew into a room, started shooting madly, then reversed out so you pick off the enemies as they moved into the doorway one at a time, they quickly learned.

      Soon you'd find that the enemies wouldn't chase you. And would in fact, surround the doorway, as if knowing you would have to enter sooner or later... and then they'd all shoot you.

      It made the game very replayable.

  • People man! (Score:1, Interesting)

    by Anonymous Coward

    Granted we haven't seen great AI in some time, I still rather play people any day of the week.

    RTS - People will do things unexpected and make mistakes.

    FPS - People will "get lucky" and there is always fun in that.

    the list goes on.

    Until your A.I. can call me an asshat and actually MEAN it, I'd rather play people.

    On a side note, once your A.I. can call me an asshat and mean it I want him unplugged...

  • main problems..... (Score:1, Interesting)

    by Anonymous Coward

    the main problem is that AI is HARD. like NP HARD. and its difficult to program so it goes in last. what would change it is a predefined AI library which can elarn and be plugged into multiple games like the havok physics engine. something easy, can be shoved in last and can learn.

    • by jbarlow (35149)

      Mod parent up. This is exactly what's needed - especially for the smaller programming teams. More games period (and therefore, statistically, more good games) can be made if the team can focus on the game itself, and just plug in graphics, physics, AI, etc APIs.

      Granted, it's sortta been done. Things like DMM, Euphoria... they're getting closer for sure, but wow, TFU was disappointing.

    • Re: (Score:3, Informative)

      by WuphonsReach (684551)
      The secondary problem, as you alluded to, is that nearly every game uses a completely different system for representing the world. Different combat types, different terrain, different environments.

      Which makes it extremely difficult to build upon previous work.
  • Fallout 3 (Score:1, Funny)

    by Anonymous Coward

    Can take a hint on this. As much as I find standing on a vehicle with an NPC perpetually running at me entertaining it just shows sloppy work.

  • by Saffaya (702234) on Tuesday November 04, 2008 @01:36AM (#25623059)

    As someone who wanted to develop better AI for games, I'll say this : the state of AI didn't change because there is no customer need for it.

    When AI becomes a selling feature, then it will be given more consideration by developpers AND allowed more resources by managers.
    Which may be never, as it faces a tough adversary : the 'ooooh Shiny' whizz effect of graphics.

    • Re: (Score:1, Insightful)

      by Anonymous Coward

      It's mostly the fault of mainstream game producers There are not many [widely distributed] games where the player needs to use their brain to succeed....consider any games for which gold farm sweat shops are plausible.

      Most games are not designed around awarding intelligence ( to the general chagrin of the /. community) but it is the reality...people who can think critically are the extreme minority, and game companies generally cater to the majority (lowest common denominator)

      I could ramble on, but my targ

      • by cgenman (325138)

        The intelligence-rewarding sections of the game all need to be tightly scripted. Otherwise you run the risk of having impossible situations. Similarly, the AI in most of these situations needs to be excessively predictable, so that the player can put together the component levers, bells, and whistles in their mind and see how the rue-goldberg machine would function.

        Also, are we talking about the same types of games here? Most games are about simple escapism and the sorts of Human adrenaline rushes that o

  • Check out the OpenTTD NoAI [tt-forums.net] branch. The AI for the original Transport Tycoon reacted quite badly to having its cheating turned off, and in OpenTTD generally sucks, even to the point of bankrupting itself sometimes. The NoAI branch is an attempt to make AI that don't cheat, and are incredibly good. An AI can always be made slower or stupider.
    There have even been some experiments into building an interconnected rail network [student.tue.nl] instead of sticking to point-to-point lines.

    If there is anyone here who thinks they can

  • by setien (559766) on Tuesday November 04, 2008 @04:37AM (#25623757)

    As a game developer myself, I can tell you one of the reasons why game developers often use finite state machines for AI instead of advanced neural networks that employ clever learning machine learning algorithms: It's orders of magnitude easier to analyze and understand (and thus debug and fix) how and why a FSM does what it does than a complicated neural network.

    When you're making a game, you want results that are easy to predict and easy to schedule - if you decide to make advanced AI and train the NPC behaviors, it's hard to schedule and very hard to pinpoint and definitively fix a problem where one or more NPCs suddenly start acting extremely strange and un-human. And it's hard to fix if they become to clever.

    It's one of those cases where simple models can get you most of the way, and it's more reliable and it's much cheaper to develop (in terms of processing time and implementation time).

    • Re: (Score:2, Informative)

      by skelterjohn (1389343)
      Yeah... you don't want to use neural networks for game AI. Reinforcement Learning, on the other hand, is. At its heart the RL problem is the same as the sequential decision making problem. An agent acts in the world, receiving observations and numerical reward signals that it tries to maximize. The RL community is young (compared to the AI community as a whole) and is building up the theory and experience needed to approach these sorts of problems. All of my work focuses on agents learning to play video g
  • I think part of the issue is that methods of interactions with games are still fairly clunky.

    Keyboards with lots of different buttons can take some time to navigate. Moving appropriately with mice is also not super efficient. Even special gaming devices for the PC are not that great. Game controllers for the Wii, Xbox 360, and PS3 are not super great either.

    With controls for interacting with games that are not all that great, designing great computer AI that can potentially react as well as or better than a

  • my teacher who, seriously, spoke with a lisp.

  • I pop in the latest RTS and I have that initial moment of "ZOMG! BEST GRAPHICS EVER!!!" but once I scrape my jaw off the floor I see that the units are as dumb as ever. Same pathfinding problems that were around in Warcraft 1 and we're how many years later? Ultimately it just means I'm playing the same game as before with prettier graphics. YAWN.

  • by Anonymous Coward
    There are some good points about having AI enhance the fun for the player instead of greater difficulty or realism but there are still some genera of games that more difficulty and realism would be better. I use horror and survival games for an example. I've never found great interest in scripted monsters jumping out at you and then running mindlessly in your direction. I'd love to see a survival game were you have a sleek intelligent killing machine using opportunity and time to take you out, that backs o
  • I wish more FPS games had an AI that behaved like it did in FEAR. That single player game had a lot of replay ability for me just because the AI responded with logical tactics.

    They hear you make a noise, they'll move in to flank you while a few of them keep you distracted.

    IF they notice the grenade they'll take off and run, they don't just run when there is a grenade nearby. A few times I've seen them just stand there still like they didn't notice the 'nade land near them.

    If you go hand to hand, they woul

  • Because game AI developments don't give you pretty pictures, bullet point features or big numbers to put in the ads and on the box.

  • I liked the article. Some good bits in there, lacking in detail or a good algorithm like any AI article.

    But I am going to euphemistically call the author a Jackass for the following:

    For example, inside a classroom there would be one specific set of social norms if it's full, a different set if it's empty, and wholly unrelated reactions when being shot at.

    Thanks. I've got this idea in my head about always think about your characters animating with adverbs. I'm feeling mildly inspired. Then you give me a visu

The reason that every major university maintains a department of mathematics is that it's cheaper than institutionalizing all those people.

Working...