Slashdot Mirror


Halo 2 Artificial Intelligence Explained

An anonymous reader writes "Stuffo has an interesting interview with Bungie's lead AI developer, Chris Butcher. Butcher explains in detail how the enemies in Halo 2 think and exactly why they do the things they do."

6 of 68 comments (clear)

  1. Re:AI by mrdogi · · Score: 5, Insightful

    Humans 'tag' as well. We just do it much faster (with experience) and have years of experience to help with that tagging, both in speed and in richness of tagging. Although, I suppose we also get superfluous tagging ("What idiot painted that box yellow?") to distract us a bit.

  2. Re:Could someone explain... by mrdogi · · Score: 3, Insightful
    I suppose something like this...

    In Quake, etc. the creatures just stand around until you come into their field of view (or they come into yours, I suppose), then attack.

    In Halo 2, they can look around at the start of the game, and then start banding together, or exploring until they find you.

  3. It is a different approach basically by SmallFurryCreature · · Score: 3, Insightful
    I think it was a recent star wars fps where I was stuck so I switched of clipping and drifted through the walls to see where I was supposed to go. Bit of a suprise when I saw myself standing somewhere. It was the setup for a cutscene.

    Basically in a quake like game wether it is half-life or quake itself the game centers around the player. The player is the center around wich the world moves. Until you move and trigger something wether it is AI or a scripted sequence the world will remain static.

    In a simulated world the world will go happen wether you move or not. A very good example is MS flight simulator. With the proper settings if you start the game you are sitting on the ground at an airport. But as you sit there you can see weather patterns moving. Other aircraft taking off an landing. Air control giving instruction to ensure seperation.

    Note that this is purely an approach to how the "story" in the game is developed. You could easily use the quake engine to create a simulated world and use MS flight simulator to create a trigger driven story game. In fact they exist.

    So halo has the same kind of graphical answer as quake. What is different is how the population changes. It seems that the halo makers claim they have a more MS flight simulator like approach where the AI does its thing even if you just stand at the start. Note that in the recent MS flight simulator you are part of the AI as both air traffic control and other aircraft react to you (sometimes).

    It should be easy to check if there is an invisible mode/no clipping mode in halo 2. If they are right then you should see that enemy walking around and chatting long before you have walked along the corridor and triggered them to do their stuff.

    Personally I think Halo2 is a cross. A true simulated FPS would have far more of a realistic combat mode as you would be on a battlefield with a battle going on and you would be just one of the soldiers. If you remember Call of Duty then think about the russian square assault. While their is obvious AI going on the AI is totally incapable of achieving anything. You score the majority of kills and you "unlock" the next bits in a level.

    If Call of Duty had a simulated world then you could just sit to the side and slowly see the AI on one side win. F16 falcon had this to a certain degree. It was a very realistic combat flightsim and I sucked at Air to Air. However as long as I setup the right mission where I bombed and had my wing mates cover me the AI would do the job. One time I started a mission but had a call of nature. The rest of the flight started in the air and the base was attacked. As I was sitting on the toilet I could hear my wing engaging the attacking flight and shooting them down. All without me even having touched the controls. That is a simulated world.

    So is this the future? Well for some games. Imagine if you played a simulated RPG. If you then went to the toilet and let the game running a NPC would pick up the role of hero and complete the story quests. Hmmm.

    Imagine in Halo if it was truly simulated world. If you take the wrong turn your AI buddies could very well have completed the level while your trying to find your way back.

    Flight sims and realistic combat games might be fun with truly simulated worlds. FPS ala Halo are perhaps better when the player is the hero who triggers events. Some simulation can take place but do you really want the intresting bits to be done by the your AI buddies?

    Half-life is a scripted STORY engine. Halo claims to be a simulated STORY engine. The graphics are exactly the same. They choose the wrong words.

    --

    MMO Quests are like orgasms:

    You may solo them, I prefer them in a group.

  4. Re:Unamazing AI by AzraelKans · · Score: 4, Insightful

    Well.. you have to remember a few details before judging, first of all halo 2 is all about battles, so you would expect they expent more time on that than say "conversations" or other nuisances and on that level both as partners and as enemies the AI acts pretty convincingly. Second, halo2 is definetily a lot larger and complex than half life.(not HL2 though) so is a lot harder to coordinate the AI and place tag points effectively. And 3rd the AI in a console game expending so much cycles in a console in network and graphics code, can only be good enough to be believable, but cant expent so much cycles to be "ground breaking" so their target was believable and enjoyable and I think they got that right.

    I havent even noticed before reading the article but the enemies DO talk to each other (in english) before teaming up on your poor butt. Thats an interesting detail to watch (although it ussually ends with you dead in the ground).

    Oh I almost forgot, you have to play in the "heroic" dificulty level to see what the AI can really do. The easy and normal levels are quite dumbed down in comparison.

    --
    Go ahead MOD my day!
    More opinions here
  5. Re:Sounds like a good approach by DrSkwid · · Score: 2, Insightful

    is to model things in a manner as similar to the real world as possible...

    first we model the fundamental particles

    then photons, electrons, neutrons and protons

    add in a few forces, gravity of the planets & stars, expansion of the universe that sort fo thing

    evolve your target planet where your game is to take place

    keep running the evolution software until your required habitats form

    grow some simulated babies and in a simulation of the particular culture of your required characters and find those who are right and agree to be in your game

    stage the game

    or you could just build complicated decision trees that fool the gamer into seeing what he wants to see for considerably less input than modelling the whole universe.

    --
    There are places where the networks are not touching,and there are places where they are-Boeing's Lori Gunter
  6. Re:AI by Osty · · Score: 2, Insightful
    Ahh, humans tag, if you will, but they do it dynamically. If we were like an AI, we'd need someone to go around in front of us painting things orange or red or green so we'd know where to go.
    What would be great would be to have an AI that can tag terrain dynamically and decide which is the best place to go based only on what it can "see". That way you could design any map, random or planned, and drop an AI into it and have a great game. Unfortunately what happens is that the game developers plot out all of the paths and areas and points of interest for the AI before the game starts.

    Actually, a lot of things humans do have been pre-tagged. It's just that we can apply one set of tags from one situation to a new situation and expect them to work relatively well. As an example, look at driving a race car on a track. For a given driving style, there is an optimal line to take on the track for best speed. If you put a human in a race car on that track for the first time, with nobody helping them, they have to go through many laps of trial and error to find the line (level developers tagging things). If instead you put an experienced driver in the car, but kept this as his first time on the track, he'd be able to apply sets of tags from other race tracks to similar turns on this one. It won't be perfect, but it gives him a good place to start (level designers learning how to tag levels for AI, becoming more proficient). Now if you put an instructor who knows the track in the car with driver, and put down cones on the track for braking points, turn-in, apex, and exit points, most drivers will be able to turn flawless laps almost immediately (they'll still have to work up their speed, though). That's equivalent to putting an AI into a pre-tagged level.

    It's not much fun watching someone drive a race track for the first time (it's fun doing it, but not watching it). Most people prefer to watch the actual race, filled with drivers who know what they're doing and who know the track. It's more fun that way. Similarly, you don't really want to spend your time running around with the AI while they learn a level. Therefore, the best thing to do is to pre-tag levels so the AI already knows what to do. Alternatively, you could use a learning AI, but you still need to spend the time up front to teach the AI the levels before you ship. If you build a new map, it's up to you to train the AI and provide that information when you ship the map.