October 4, 2009

Using StarCraft as a Game AI Testbed

StarCraft

StarCraft

I’ve been interested in developing AI for StarCraft for several years now. I recently came across the Broodwar API project, which provides hooks into StarCraft. It enables developers to query game state as well as issue orders to units. The Broodwar API makes it possible to write custom AI bots for StarCraft.

There are several benefits to using StarCraft as an environment for evaluating game AI. StarCraft is a robust, commercial RTS game that has been around for over 10 years. The game is more complex than current research systems due to its distinct races, deep tech trees and large map pool. Also, StarCraft has developed a large following of players, resulting in a huge number of game traces available for analysis.

August 16, 2009

Software Engineering as Artifact Creation

if (sandWeight != idolWeight) { throw new BoulderException(); }

if (sandWeight != idolWeight) { throw new BoulderException(); }

Geek disclosure: I’ve become fascinated by the different facets of Software Engineering. Not just as a means to an end, but as a practice, as an art and as a historical artifact. I feel like I’m in Indiana Jones and the Java Temple, full of Pythons, with the riches of Perls and Rubies.

My desire for faster, better, stronger code has been spurred on by being bitten one too many times by unchecked exceptions in Python, leading me back to the comfortable blanket of Java, unit testing and a framed photo of Kent Beck on my bedside table.

Powered by WordPress