Game AI Roundup Week #35 2008: 10 Stories, 2 Videos, 1 Paper

Novack on August 31, 2008

Weekends at are dedicated to rounding up smart links from the web relating to artificial intelligence and game development. This week, we have a variety of topics, some videos and a paper; as always, there are some good articles and blog posts for you to read. Remember, there’s also lots of great content to be found in the forums here! (All you have to do is introduce yourself.) Also don’t forget the Twitter account for random thoughts!

This post is brought to you mostly by Marcos Novacovsky (aka “Novack”). If you have any news or tips for next week, be sure to email them in to editors at Remember there’s a mini-blog over at (RSS) with game AI news from the web as it happens.

Scouting for Trouble

On his blog BrainWorks, Ted Vessenes posted an interesting article on the mechanisms of his bots to to “visualize” the “world”, and the implications to the further AI development.

One of the funny things about designing artificial intelligence is that you run into all kinds of problems you never even considered. For example, I spent a lot of time designing algorithms to handle realistic aiming. But what does the bot do when it’s not trying to line up a shot? It has to look at something, even if there’s no one else in the area. That’s because the bot must either hear or see an enemy to become aware of it and start shooting back. Scouting around for likely areas an enemy might be is the best thing the bot can do when, well, it has nothing else to do.

More BrainWorks: Sitting on the Fence

We have double Ted Vessenes dose this week, as he also posted a second article within a week (didn’t got the first one for the last Roundup, is the commented above). On this one, he writes about data analisys and dedecision making.

In most systems where a computer must analyze some data and make a decision, there’s a problem when two choices are very similar. Sometimes the system can get caught in an oscillation state where working on either choice makes the other one better. For example, a Quake 3 bot might decide to pick up armor, but the act of moving towards the armor makes it decide that picking up some health is a better choice. So the bot instead moves towards the health, and on the way decides the armor is better. The bot can end up in a situation of indecision where it picks up neither of the two items, and clearly this is the worst of the three choices.

The fresh Prince

More insights about the development of Prince of Persia main character’s new companion Elika were revealed. It highly reminds the process of development of the other well known female companion, Alyx Vance.

Elika is certainly a very convincing and impressive companion and McIntyre confirms that a huge amount of work went into her development.

“Since this is an acrobatic game we needed a character that could follow the Prince no matter where he was going and keep up with the player. So we did a lot of work on the AI (artificial intelligence) to make her good at that, and then had to take it another step forward so that she never gets in the player’s way.

Dragon Rising

1up published a preview on the upcoming sequel to Operation Flashpoint. It seems that they are paying attention to the fan made / community material, and are prepairing some interesting tools for the people to use.

The custom mission-editor tool has also been greatly enhanced in Operation Flashpoint 2. “In the original game, unless you really knew the A.I. scripting tools, it was sometimes tough to get the A.I. to work properly,” says Lindop. “You could build this big environment, and the A.I. wouldn’t know what to do in it.” According to Lindop, this time around it should be easy for anyone to build their own missions and scenarios, such as a custom game with 32 players versus the A.I. or one where each player is in charge of his own A.I. squad.

More rain

Jason Hill wrote for the blog Screen Play an article about the Sony’s upcoming adventure for PS3 Heavy Rain, interviewing the writer and director David Cage who demonstrates how a player’s actions can influence the interactive story.

Cage says “we could play it in front of you five, 10 or 20 times and show you different versions of this scene.”

“In one version we could kill him, we could have used a screwdriver or chainsaw, there are different ways of killing him inside the house.

“Also, we could have been killed by him, which would be taken onboard by the script, and the story would continue with this information, which is quite unusual.

Game Brains: Your Artificially Intelligent Opponent

Geldon Yetichsky on his blog Digitally Staving Off Boredom posted an article commenting his learnings and thoughts on AI behaviors.

As I take my BYOND project’s AI back to the drawing board for the 3rd or 4th time, I realize I’ve collected a bit of insight as to what goes into a game’s artificial intelligence that negated my earlier impressions.

Your Code Sunk My Battleship!

Coding4Fun the Microsoft blog for ‘fun’ developments using its tools, posted an article by Bryan Dougherty when he explains the code of a game, where the players need to program an AI in order to play the game.

Clarity Battleship is a multi-player game in which players code the “artificial intelligence” needed to command their fleet to victory on the high seas.The game is built using WPF and WCF.

LLVM compiler projects

This week, we found two Google Code hosted projects on Low Level Virtual Machine (LLVM) compilers.


py2llvm is working on another approach on translating codes in Python syntax into LLVM IR for fast execution.

You can develop & run your code in Python for rapid-prototyping phase. Once your code become in stable, your code is turned into native code by py2llvm and it runs extremely fast(as fast as C).

py2llvm enables easy development of your performance-oriented algorithm while its code runs as fast as C.


LLVM-Lua, is a JIT and static Lua compiler that uses Low Level Virtual Machine (LLVM) as the compiler backend.

  • JIT compile Lua scripts to native code using LLVM’s JIT engine. JIT supports x86, x86_64, PowerPC 32/64 processors.

  • Compile Lua scripts to native(to any cpu architecture supported by LLVM) executables.

Decomposing Environments

New Paper posted on the fast growing AiGameDev Wiki.

“This paper presents a new method for decomposing environments of complex geometry into a navigation mesh represented by bounding geometry and a connectivity graph for real-time agent usage in virtual worlds. This is accomplished by the generation of a well-defined and high-coverage set of convex navigable regions and the connected gateways between them. The focus of this paper is a new automated algorithm developed for decomposing a 2D representation of world-space into arbitrary sided high-order polygons. The DEACCON (Decomposition of Environments for the Creation of Convex-region Navigation-meshes) algorithm works by seeding a 2D polygonal representation of world-space with a series of quads. Each quad is then provided with the opportunity to grow to its maximum extent before encountering an obstruction. DEACCON implements an automatic subdividing system to convert quads into higher-order polygons while still maintaining the convex property. This allows for the generation of navigation meshes with high degrees of coverage while still allowing the use of large navigation regions, providing for much easier agent navigation in virtual worlds. Compared to the Space-filling Volumes and Hertel-Melhorn navigation mesh decomposition methods, DEAC-CON provides more complete coverage, controllable mesh sizes, and better overall algorithmic control to desired decomposition quality with an improvement in agent navigation speed due to better decompositions.”

Automatically-generated Convex Region Decomposition for Real-time Spatial Agent Navigation in Virtual Worlds
D. Hunter Hale, G. Michael Youngblood, and Priyesh N. Dixit
Download PDF

Making the A.I. fortify bottlenecks

Philip Hardin, on his blog Red Brick Games its once again telling us his adventures on the game that has been developing Orcs vs Humans. This time, we can read the third post of a series on his path of make the AI found an make tactical use of terrain bottlenecks.

I feel like this feature really adds to the quality of the gameplay. The A.I. now fights with towers, not just troops! The A.I. can try to push you back using mostly towers, like human players do. Also, I’ve noticed that pitched battles develop much more frequently now. I LOVE pitched battles, with the sieging of some strategic map location, that requires one side to come up with a breakthrough, in either technology or tactics.

Lecture: AI in Video Games

Hosted by Metropolitan College Department of Computer Science, Ian Davis gave a lecture describing what makes for a good video game character and what’s been missing in video game characters to date.

Ian Davis became interested in video game development at Carnegie Mellon University while using driving simulators to test out code he wrote to program a Humvee to drive itself. Davis says that his work in the $30 billion to $40 billion video game industry puts him on the cutting edge of computer science. “I get to work on the most demanding networking problems, artificial intelligence, and multimedia graphics,” he says.

A.I. Enhanced Graffiti: Artificial Dummies

Hosted by Metropolitan College Department of Computer Science, Ian Davis gave a lecture describing what makes for a good video game character and what’s been missing in video game characters to date.

Italian group, “TODO, interaction & media design” have created an installation that is the Pavlovian bell to my salivating dog. We’re talking boids, Processing, intelligent agents, simple vector creatures and classic architecture as a canvas.

I’ve got two videos for you. The first shows the installation from the perspective of the viewer, the second is a behind-the-scenes synopsis of the software and flocking methodologies.

The pretty stuff…

Now for the stuff that will tickle your grey matter…

Stay tuned next week for more smart links from around the web!

Discussion 1 Comments

Novack on September 2nd, 2008

Thanks for reading Lynn!

If you'd like to add a comment or question on this page, simply log-in to the site. You can create an account from the sign-up page if necessary... It takes less than a minute!