This easter weekend at AiGameDev.com, we’ve rounded up many Smart Links from around the web, including reviews and their analysis, useful white papers, and news tidbits to keep you informed about anything relating to artificial intelligence in games.
This roundup is brought to you by Novack and Alex Champandard. If you have any news or tips for next week, be sure to email them in to editors at AiGameDev.com. Also Remember there’s a mini-blog over at news.AiGameDev.com (RSS) with game AI news from the web as it happens.
Lua Reimplemented in Java
A project called KahLua, hosted by Google Code, got a lot of coverage on programming sites this week. It implements a Lua Virtual Machine for Java, which is distributed under the same MIT license terms than Lua.
“The target platform for Kahlua is J2ME (CLDC 1.1), which is commonly included in mobile phones. Everything in CLDC 1.1 is also included in standard Java so this run in most Java environments.
The Kahlua project has the following goals (in no particular order):
Small class file footprint
Fast runtime of the most common operations
Same behavior as standard Lua
Must be able to run on CLDC 1.1
Compact and non-redundant source
This project is worth looking at as an alternative (and easier to understand) implementation of Lua, which has become an essential tool for game developers over the last few years, whether for scripting (like in World of Worldcraft) or for the AI logic (as in Crysis).
Character Animation in Real-Time (PDF)
This white paper also got a lot of attention this week, mainly for its in depth introduction to physical simulation and rigid body dynamics — an essential component of Natural Motion’s euphoria. It’s published on Dipl.-Ing. Dr. Gerhard Kurba’s site, as a thesis of a student he supervised on 2006.
This thesis summarizes the fundamentals of mechanics that are necessary to build a simulation of rigid body dynamics. A modular overview of the simulation process is given, and the state of the art simulation methods will be examined. With this knowledge a framework for the simulation of rigid body dynamics in interactive 3d applications is presented. The designed framework is independent of special simulation methods and allows incorporating all examined simulation methods and physical effects.
If you’re not interested in the mathematical details, skip to chapter 8 for examples of character animation and ragdolls.
A Unified Framework for Rigid Body Dynamics Helmut Garstenauer, Jens Volkert, Gerhard Kurka. Download PDF
Rainbow Six: Vegas 2 Review
In times where demands for AI improvements are growing in crescendo, it often happens that new features are added and polished while old problems remain unsolved. As noted by Kotaku’s review:
“Uneven AI: The game’s artificial intelligence, both friendly and enemy, can at times be brilliant, flanking your position, laying down cover fire, clearing a room of bad guys with tactical sweeps. But just when you think you’ve met your match, you’ll run up on an enemy who literally just stands there staring at you until you decide you should probably shoot him.”
Peter Monlyneux MTV Debut
In the build up to Fable 2’s release, Peter Molyneux is featuring more often in these weekly roundup. This time, he retells a classic anecdote to Stephen Totilo of Multiplayer MTV blog, about the creation of Black & White’s AI:
“There was this creature that came to life and was driven completely by AI. The first moment that he was created, he stood up and I felt like Frankentein. I felt like he was alive. It was a very emotional moment. And he was swiping down and sort of hitting his legs. And me and Richard Evans, who was the AI programmer, were wondering what the hell was going on. We’d been working on his brain for months. And it turned out that that the first thing we had taught him was to find food. The most important thing was to find a food source. But we hadn’t said to him: exclude your own body. So he had seen the most nutritious thing around and the most nutritious thing around was his legs. And he tried to eat his legs. That taught me that you can’t predict a lot of these things. When these systems start working there’s chaos that goes on. But the biggest chaos is the player.”
Video: A Project in Half-Life 2 NPC AI
When idle non-ally HL2 NPCs detect a sound they usually turn to face the origin for a moment, don’t detect anything and resume whatever it is that NPCs do. I altered this using a wiki article discussing HL2’s NPC AI to investigate sound and I added more on to it.
A practical application could be stealth vs gunfire where the latter would mean drawing out more baddies or even a mod where knocking over something will grab a guard’s attention if someone were say, trying to sneak by in a cardboard box…
Tracking Relationships between 3D Objects
Over at his Code Suppository blog, John Ratcliff just released a tool for spatial awareness with important applications in game AI where many entities are simulated:
“A Spatial Awareness System is a tool which keeps track of relationships between a large collection of objects represented by 3d co-ordinates as floats.
The typical use for a spatial awareness system SAS is for AI and network traffic culling. In AI you may have a limited range that the entity is supposed to be aware of. Take for example a gun turret with a limited sight distance. The awareness system will automatically collect the set of objects which are within this range. The AI code can either iterate over this awareness list directly or respond to discrete events when objects come into and out of the awareness range.”
Behind the scenes of the Kynogon acquisition
The online magazine Develop published an article on the recent Kynogon acquisition, that put some light about the Autodesk intentions.
“At GDC, Autodesk announced its intention to buy French AI specialist Kynogon, makers of the Kynapse middleware. We speak to those involved to find out what the deal means for the industry…”
Behind the scenes of the Kynogon acquisition, developmag.com
The World’s Most Advanced Basketball Simulation?
BuzzerBeater.com updated its manager simulator engine. Here are some words from the press release, concerning AI.
“…developers have created a second-generation game engine designed to be the site’s centerpiece. The new engine features increased tactical depth and cutting-edge artificial intelligence designed to simulate coaching decisions in the last minutes of a game. “The previous version of the game engine was so realistic that it made the leap from our player blaming the computer for mistakes to complaining about their (artificial intelligence) coach. We hope the new engine will have them asking why their favorite team’s real coach can’t take a few pointers from their virtual one,” said lead developer Charles Steinhardt…”
TechRepublic on Game AI
Justin James writes a post “Video Games and the Current State of AI.” While he may not be the best placed to understand the STRIPS planner behind F.E.A.R’s AI (he thinks it’s just a state machine), he also gets a little philosophical describing the “differences” between a system that acts intelligently vs. one that is intelligent…
I finally found time to play the video game F.E.A.R. a few months ago, and I was initially impressed by the artificial intelligence (AI). The enemy soldiers appeared to work together towards a common goal (i.e., finding and killing my character); they seemed to use realistic tactics (such as taking cover and providing suppressing fire for advancing teammates); and they would flank me. But after a certain point, the AI seemed more like “artificial imitation intelligence” (or “AII”), which is a term I made up. “AII” does not try to be AI; it is an intelligent system that tries to imitate intelligence. The test for “AII” is fairly simple: Does someone think they are encountering intelligence at least part of the time?
Hasn’t game AI always been AII? It’s great food for thought nonetheless, and it ties back quite nicely into a recent forum discussion about Behaviorism (registration and introduction required).
WCCI 2008 Car Racing Competition
Julian Togelius sent in word of a new competition that aims to drag academic AI research into the world of game development. The goal is to produce the best controller for a simulated car in a 3D environment:
“The competition is a spiritual successor to the CEC 2007 competition, but uses the TORCS simulation environment. We developed a set of interfaces available that work on Mac OS X, Windows and Linux, using Java and C++. Our aim was to make the interfaces as simple as possible, and especially if you have some experience with last year’s competition (or the rl-glue framework) we hope they will be very workable.
The deadline for submitting your entry is May 25, 2008.
The aim of the competition is to learn (or otherwise develop) a controller that races around a number of laps as fast as possible, alone or in the presence of other drivers. We will score every submitted controller on the distance raced in a fixed amount of time when driving on its own on a set of tracks. At the end of the competition, the best few controllers will race against each other on a different set of tracks, validating that the controllers perform well in the presence of other cars and that their performance generalizes to other tracks than those they were trained for. The winner of the final competitive races will get to present their controller at WCCI2008, and will have their registration fee reimbursed.”
Intel’s Larrabee and Visual Computing
Gamasutra featured a preview article on Intel’s upcoming massively-concurrent processing technology, Larrabee, and its development opportunities:
Gelsinger said that “new visual workloads which will define the architecture of tomorrow.” Noting that “we’ve analyzed literally hundreds of workloads, hundreds of core algorithms. It’s not a simple problem to design an architecture for that future… one that looks at CPU graphics and media… from mobile up to server systems… the level of performance we can do is just about enough, but we need to scale it from any process point into the future… a rich set of tools and developer support.”
Visual Computing seeks to offer solutions for graphics, A.I. and other processing tasks both on the hardware and software side, though currently the company is fairly unspecific on this, noting mainly that “…a complete platform is required. This includes the multi-core CPU, chipset and graphics plus software and associated developer tools.”
How this turns out in practice for game AI remains to be seen!
Bryan Appleyard tries out Spore
The Times OnLine published an article by Bryan Appleyard about Will Wright, creator of The Sims. Here one of Will’s comments that’s particularly appropriate here:
“If you look at Spore, people are making this stuff, and computers collect it, then decide who to send it to. The computer is the broker. What they are really exploring is the collective creativity of millions of people. They are aggregating human intelligence into a system that is more powerful than we thought artificial intelligence was going to be.”
Considering the Proper Factors
Regular contributor at AiGameDev.com Dave Mark published an funny little article on his site about his favorite topic of behavioral mathematics:
“One of the most common errors in constructing weighted sum formulas to score a concept or recreate a behavior is simply leaving out an important factor. You can play with the weights of the factors you did include all you want - and that is great for fine tuning - but if you left out an input that the “real world” takes into consideration, you will never be able to completely mimic the result set you are trying to match.”
Takeaway for game AI developers, make sure you model all the necessary factors before tweaking the equations!
AI Programmer with Warren Spector
Junction Point Studios published in igda an announcement, looking for an AI Programmer.
Founded by Warren Spector, Junction Point Studios (JPS) joined Disney Interactive Studios (DIS) in September of 2007 and is quickly growing. While DIS is part of the larger Walt Disney Company, we still have the autonomy of a smaller developer/publisher without many of the risks and restrictions associated with start-ups.
Develop custom AI behaviors
Develop and extend AI sensory systems
Develop and extend motion control and navigation systems
Develop and extend development tools to provide fine control of AI characters
3+ year experience
Experience with animation and physics systems
Experience diagnosing and addressing performance problems related to AI
Experience with AI middleware packages is a plus but not required
Capable of contributing to overall product vision and design
Strong understanding of C++ and object-oriented design principles
Oddly enough, the company oddly requires a criminal history background… There must be a story behind that additional requirement!
Game AI and Silicon Valley
Along similar lines than Intel’s announcement, here’s short, concise statement by Rob Enderle, a Silicon Valley technology analyst. It doesn’t say much per se, but it shows the place that game AI development has on the Silicon Valley corridors.
“From a practical standpoint, when you start talking about artificial intelligence, one of the first areas to get applied is video games. They will get more realistic, more like people.”
Stay tuned next week for more smart links from around the web!