Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Python JavaScript CSS HTML
Fetching latest commit...
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
ai Add timeoutAI for testing the ladder's ability to stop AI from hogging
lib Update colors being used to be from palettes.
media update CSS
.gitignore update a couple refs
app.yaml updates for python27 (remove django)
cron.yaml When running a tournament, use the same map layout for each match Add display of AI CPU time usage. Sory NCURSES output
queue.yaml trying to limit units spawned per base



check the dmangame page for more information.


You can find the latest version of the source code on github



python 2.x


If using graphics, pygtk (which should include cairo).

If posting to app engine, pyyaml


# Play with graphics
python ai/ ai/

# Play without graphics and a web replay. Open output.html to view the game replay.
# NOTE: This file is a massive JSON crusty file. If you want to copy it
# somewhere, make sure to compress it (scp -C) or gzip it first.
python ai/ ai/ -c -o output.html

# Use NCURSES GUI (Game output gets saved to game.log and game.out)
python ai/ ai/ -cn

# Play on a specific map
python ai/ ai/ -m maps/

# Show AI debug highlighting for AIs.
# Note: Each AI must have --hl before it to enable highlighting. See the
# Debugging section for more information.
# In this instance, only simpleAI gets highlighting.
python --hl ai/ ai/

# Help
python --help

# Run game via appengine. The app engine server is specified in # app.yaml.
# By default, it will hit, which
# will have the version of the code in github + the latest dmanai/ available.
# Note: You should need to set APPENGINE_LOCAL to False for this to work

# The results should get posted to
python dmanai/okay/ dmanai/bob/ -m maps/ --app-engine

# Using remote AI
# The format of a remote AI is:
# github_user:path_to_ai_module
# The AI is then downloaded from that github user's fork of dmanai and used
# as a player
# The following loads (with as a required dependency)
# and expand then search from
python okayzed:okay/ okayzed:bob/

See Also:

I've been a fan of AI based games for a while, such as the Google AI Challenge and the Queue ICPC Challenge. They are fun and challenging (could you tell from their titles?)

Something went wrong with that request. Please try again.