I've been watching with interest as some of the recent game reviews have been (briefly) touching on the AI of the games. As a brief aside, it's annoying that a reviewer can spend 2 paragraphs on the purty graphics and 2 sentences on the AI. Yet, you could shave 20% of the graphics quality and it wouldn't hurt the gameplay experience too much. Add 20% to the AI and it may affect the gameplay a significant amount. Keep that in mind as you read these excerpts.
Matters aren't helped by a number of other irritations. The unit pathfinding is dim-witted, with units frequently getting stuck, taking the long way round or sometimes just rotating in place.
That doesn't sound promising at all. This is sad, too. The original Empire Earth was very noteworthy because of its AI. In fact, those in game AI circles know full well that many a whitepaper was written on some of the techniques that they used in the game. That being said, Mad Doc software, current custodian of the EE franchise, is headed up by Dr. Ian Lan Davis who has a doctorarte from Carnegie Mellon University in Artificial Intelligence and Robotics. That doesn't seem to jive with the above observation about the unit AI. I haven't played EE2 or EE3, but I remember hearing similar comments about EE2. I may just pick them both up to observe.
That is, when you’re not hiding in the shadows trying to be Sam Fisher or Solid Snake. Stealth tactics play an important role in the game, but in a gory game like Manhunt 2, this feels a little out of place. I mean, it’s obvious Daniel doesn’t want to get caught… It also doesn’t help that the A.I. is as dumb as a sack of bricks at times, meaning that if you just slightly slip into the shadows, it’s as if you’ve disappeared off the face of the Earth. And really, when you’ve got a bunch of people hunting you down to silence you, you’d figure they might try a little harder.
I thought this was interesting. For the past 4 or 5 years there has been some interest in sensory systems such as were exhibited in Theif and Splinter Cell. It seems (just from this quote) that Manhunt 2 is trying to do that as well. However, while analyzing light vs. shadows is an important aspect of stealth work, that is only part of the solution. Where the developers may have stopped short is building in a bit of "urgency momentum" into their AI agents. That is, if you are truly searching for someone, you are specifically going to check the dark areas.
This is something that it looks like Rockstar wanted to address... at least according to this review:
Coupled with the enhanced AI of hunters in Manhunt 2 will be the fact that even in the darkest of shadows, your character will not be totally safe. In the original Manhunt, often you found yourself safely concealed in darkness inches away from a hunter, which was a tad unrealistic. This is a thing of the past with Manhunt 2 as now, even with total darkness and complete stillness, hunters can still detect you and drag you out into the open for the kill.
Note that the above is future tense - that is what Rockstar said they were going to do. Take that with a large block of salt coming from any studio. Continuing from the same review however, is an interesting caveat...
The way Manhunt 2 will portray this is via a mini game of sorts - if you're well hidden in darkness but a hunter suspects your presence, you will have to successfully complete a series of button presses to avoid detection. While this is not exactly the most innovative idea around, it should keep you on your toes knowing that no matter where you are, in Manhunt 2, you are never completely safe. Of course, detection won't necessarily mean game over, but it will definitely make survival much harder.
The enemy AI is also mostly competent, working as a team and retreating when injured. However, tangos usually leave part of their body exposed when hiding behind cover, meaning skirmishes are seldom a lengthy affair.
This looks generally good news. It's always nice to see group behaviors rather than simply a collection of individual ones. I wish I knew what "working as a team" means, however. A lot of that can be faked. Are they providing cover fire while others are moving? Are they flanking you? There's so much unsaid there.
Retreating when injured is such a simple thing to do - but I give it kudos because it's an obvious - almost instinctual - behavior that designers seem to leave out more often than not.
The issue of using cover is a little harder to pull off properly. But I don't want to fault the AI programmers on something that may very well have been a designer decision rather than the inability of the programmers. I will leave that alone.
But also, gone are the days of stupid zombies. The AI in the game is very well done. They will coordinate attacks, throw things at you, position themselves to corner you, basically all the things that can be done in real life.
This is in the similar vein as Kane & Lynch above. What do they mean by "coordinate attacks?" Still, this is promising to hear about. I also like the idea of the AI "cornering you". If that's true, that shows that they are doing some analysis of the "terrain" to determine either choke points or exit routes. I would like to see if this is the case.
I left the last sentence in there for a reason - "all the things that can be done in real life." While I doubt that is the case and chalk it up to oversimplification by the author, I do like the idea. After all, isn't that what we are looking for in our game AI? Isn't that the whole point?
Let's hope we keep moving forward... and maybe eventually we will get there. I will do my part!
Hey all... if you are going to be at GDC, make sure to let me know! Of course, if you are an AI person, we are likely to see each other at the roundtables or other sessions, but I would hate to be standing next to you and not know who you are!
I made a comment/rant on the post myself, which I will repost here just for the sake of saking.
I think part of the problem that continues to be the fence between the game AI world and academia is the game worlds continued insistence that we have to strip down our AI to "fake AI" in order to wedge it into games.
I'm getting tired of the rubber stamp statements that "our players don't want realistic behaviors... they want FUN behaviors!" And yet, in review after review of the latest games, people bitch about the AI not being realistic enough. We hear it. We acknowledge it. But when it comes to developing the next cycle, the edict from on high is "we don't have enough clock cycles to do that nifty XYZ technique."
As Moore's Law trips merrily along from year to year, we have more and more processing available to us. In theory, that should give us, as game developers, the overhead we need to close the gap between the need for 60 FPS in our games and the academics who don't really care if they are rendering their half-ass, low poly bots at 4 FPS.
Another point on this subject... I'm sick of hearing designers - and even AI programmers - make the statement "but it's not predictable!" about agent-based, emergent AI. Uh... isn't that the point? Again, look at the reviews and the comments from our customers. "The AI sucks because it is too predictable." Even the implication via statements such as "you can beat this level by doing XYZ to the AI because..." means that there is a shallowness to our creations. Why? Is it because we are lazy and don't want to write more complicated code? Is it because we are scared of the unpredictability of non-deterministic models? Is it because our designers would better be served writing static movie screen-plays than game levels? What holds us back?
I'm not saying that academia is the answer. Sometimes it seems that they can get so wrapped up in an esoteric sojourn that they cease to realize that what they are doing is not even remotely relevant. However, some of the concepts and techniques that they take the time to explore (because they don't have producers and ship-dates) are things that can map over into the game world. And, if we are truly interested in putting realism into our games (which can be fun for the player!), then what academia comes up with should be noted by us. Adapted maybe, but noted nonetheless.
Alex at AIGameDev has a great essay up entitled "Memento, Temporal Coherence and Debugging Planners". In it, he talks about how planning algorithms have the problem of having their assumptions about the world fall quickly out of scope as the world changes. One solution is to continually replan from scratch - which can become quite expensive to do for numerous agents.
He offers a couple of solutions - and the comments on the post have turned into a rather interesting discussion on the caveats and possibilities. Check it out!
I was Stumbling through AI sites on the web when I ran across this little creation called "Parasites" by Michael Battle. It's an app of a very simple "a-life" mechanism. It's almost reminiscent of John Conway's "Game of Life" in that it is a collection of very simple rules that then turns into seemingly complex looking behavior. (In fact, see below for another entry from the same site that is based on Conway's life.)
The parasites follow the following rules:
Continue forward until you discover another parasite of a different colour and of equal or lesser size
Once a suitable target parasite is found, follow it.
If you manage to get close enough, take a bite out of it
When eating others, grow in size.
If size gets too big, dissolve into two child parasites of the same colour
If someone is eating you, shrink in size.
If size gets too small, die
The bigger you are, the faster you can move
(I recommend looking at it a few times before continuing with reading this. Remember to click on the app to reset it otherwise you will end up with parasites that are all the same.)
While I like looking at it and it is mezmerizing for a while, there are some things I would love to see added to it. Most of them come from Craig Reynolds' work with steering behaviors.
For example, I would like to not see the parasites overlap but rather avoid each other. Also, while the parasites will turn toward and follow potential food, there doesn't seem to be a mechanism in place to have smaller parasites run away from predators at all. Lastly, it would be nice to see some group behaviors - perhaps a certain color of parasites could tend to be in a group using flocking algorithms.
I like what Michael has done but it would be nice to see more out of this very basic simulation.
Tri-Life
On a slightly different note, Battle has done another project that IS very much like Conway's Life. This one, called "Tri-life" is a little less satisfactory. In it, he uses the RGB color components of the neighboring triangles in a sort of "Rock-Paper-Scisors" battle . The winner gets to propogate its color to the loser. The full rules are:
To get your head around the Combat phase, you’ll first need to know the overarching rule that Red conquers Green, Green conquers Blue and Blue conquers Red.
… Red > Green > Blue > Red …
The pseudocode for the process looks like this:
Figure out if I’m predominantly Red, Green or Blue by looking at my hex components.
Find the average colour of my three adjacent Triangles and find their predominant colour.
If we both have the same predominant colour, set my colour to the average between me and them.
If I win the fight, set my most dominant colour component to max (255) and my least dominant colour component to zero.
If I lose the fight, set my least dominant colour component to max and my most dominant to max
I like the attempt to add more than just "alive or dead" to the possibility space and almost incorporating a sort of genetic component. I do find it fascinating to watch the relatively stabilized blobs of color with all the fighting going on at the edges. It really reminds me of a sort of influence map.
I'm not entirely sure what to think of this project. However, it is certainly very interesting. This group is developing artificial life via what they call "Framsticks". It is an attempt at creating artificial life forms that evolve into higher and higher functioning beings using neural networks for control and genetic algorithms for breeding more advanced, capable Framsticks. I suppose you could think of it as a less cuddly version of "Creatures".
The sticks that comprise the body are specialized for things such as touch, smell, locomotion, ingestion, and even defense. They go into great detail on the site about how the NNs are trained and how they are applied to the Framsticks.
There are numerous (large!) videos and many pictures on the site showing some of the Framsticks in action. You can also download the software - although I admit that I haven't done that yet. If any of you do get a chance to play around with it, I ask that you stop back by and comment on it.
OK... I'm liking where these guys are going with this. This is a description of some of the natural behaviors that are being used in the upcoming game, "Warhound". I admit I haven't heard about this game until now, but I'm definitely impressed with what I see here. They don't talk about the AI design/programming techniques that they use (and I don't blame them), but they mention some of the resultant behaviors.
Make sure you click on the video link. It will show you how the AI uses the cover of a large crate to attack the player in a variety of ways.
Thanks to Alex Champandard at AIGameDev for the link.
The author makes some great points. One is about the wall that developers seem to run up against: We can make for some great "live" behavior that looks new and fresh - until we run out of assets (via space on the CD or dollars in the budget) and we start to repeat those fresh behaviors. At that point, the facade is exposed and things start to get stale. It goes to show that, at least with today's technological limitations, the Turing Test will always fail as long as there is no time limit on the test. Until we can break away from entirely designer-constructed content, our AIs will eventually expose themselves
The second point is something that is actually born from the past when we couldn't stuff a lot of fresh content into our agents - we faked it. He points to a technique that has been used over and over: let the player's mind be the best brush for coloring in the AI. There is a lot of power in that. However, one caveat is that we can't necessarily tell what the player is going to be thinking. Sometimes this is good and sometimes it can make for disappointment. Still, it makes for a lot of fleshing out of the perception of our AI without a lot of effort.
The solution seems to be a constant balancing act between two extremes. What really needs to be modeled in great detail and what can I fake entirely? Aahh, such is the quandary.
Anyway, I enjoyed the reading and personally plan to keep checking on neuRAI. Good work so far!
Ever wonder what it may look like to see the computer opponent in chess working on its moves? This site has done just that. By simply playing a game of chess against the computer opponenent, you get to watch as it itterates through the minimax decision tree.
One thing that's interesting to see is how the flow lines change as the game progresses. I wish there was more detail about exactly what the color and strength of the lines meant. I also wish that you could compare how the flow lines changed from one move to the next so that you could see how you may have completely shut off certain strategies - or made them less valuable. Still, it's kind of interesting to watch!
There is a gallery page that shows some mid-game shots as well so you don't have to play through a full game to see how it looks toward the end.
According to this blog posting on an MMORPG blog, a development team working on "The Chronicles of Spellborn" has some ideas on how to make mob AI a little more engaging. The post points to an entry in CoS's development journal. I need to do a bit more reading on the game and their ideas (the article is a little sparse on details) but at least their hearts are in the right place.
One interesting point that fell out of the comments on that journal is that people are actually worried that the behavior will become predictable. That was startling to me since the concept they were proposing actually makes the behavior less predictable. One example cited was that most MMO mobs will attack the player that attacked them ad nauseum (predictable and shallow). The CoS mob will break off that one player that attacked them and go after the weakest player in the raid group. Yes, that's somewhat predictable, but only because it makes sense.
One of the comments in the journal responded that the idea was "brilliant". To me, the idea is bloody obvious. And really, it's not all that hard or computationally expensive to implement. I just don't see why MMO AI hasn't advanced beyond where it is right now. *sigh*
I was browsing around on various AI sites, and I came upon a link to a presentation titled "The Illusion of Intelligence: The Integration of AI and Level Design in Halo" that was given at the Game Developer's Conference in 2002 by Chris Butcher and Jaime Griesemer of Bungie. That was the year of my first GDC, but I can't remember if I made it to this session or not. I tried to hit every AI session there was, but sometimes there were conflicts. I actually probably have my 2002 GDC stuff around here with the session list and map - I bet I checked it off. Enough musing about my conference history, however.
The presentation is an interesting in that it provides a peek into some of the design mindsets of the developers. They fully admit that AI cheating and "faking it" is a viable methodology - and that the player will usually buy it because they want to.
Like it or hate it, Halo was and is a prominent fixture in the game world - and this presentation gives a great peek inside for AI developers and players alike. Since it was a GDC lecture, there isn't any serious code to wade through. Because of that, it's something that can be digested by a wide audience with only the occasional stumble over esoteric industry terminology. It's a good read.
According to reviews of "Pro Evolution Soccer 2008" from Konami, there is now an adaptive AI component. This system, called "TeamVision", aparently learns the way you play. If you always use the same tactics, it will start taking advantage of them - both on offense and defense. Every review site I have looked at has a similar blurb to that effect, but I have yet to see any technical description of how they are accomplishing it. More research is necessary!
If you have run across information on this game and specifically the "TeamVision" adaptive AI system from Konami, please let me know so I can follow up.