Python JavaScript CSS HTML
Permalink
Failed to load latest commit information.
ai Add timeoutAI for testing the ladder's ability to stop AI from hogging Jul 6, 2011
appengine remove disqus from appengine May 31, 2016
lib updates to work with remote AIs again May 20, 2016
maps add random 1v1 maps and move tournament server to use those (version 14) May 31, 2016
media update CSS Mar 10, 2015
test Refactor maps settings into maps.default. Jun 12, 2011
.gitignore Update gitignore Jul 10, 2011
README.md update README github links May 26, 2016
ai_exceptions.py Fixes for loading local filesystem AI on appengine May 28, 2011
app.yaml add random 1v1 maps and move tournament server to use those (version 14) May 31, 2016
appengine_config.py updates for python27 (remove django) Mar 13, 2015
cli.py cloudstore files don't support appending May 28, 2016
code_signature.py Add remote AI capabilities, update code digest for only initial modules May 19, 2011
cron.yaml purge task queue regularly Apr 5, 2015
gui.py Add warning when spawn points are taken and don't add AI to ui. Jun 27, 2011
main.py add random 1v1 maps and move tournament server to use those (version 14) May 31, 2016
mapobject.py Organize the settings by object type, instead of GLOBALS Jun 15, 2011
ncurses_gui.py Add display of AI CPU time usage. Sory NCURSES output Apr 15, 2011
queue.yaml purge task queue regularly Apr 5, 2015
settings.py default to 20 fps to start with Mar 13, 2015
tournament.py The tournament games may have been biased, now there is a random Jun 4, 2011
tuct.py More updates for running on google app engine. Apr 30, 2011
unit.py Organize the settings by object type, instead of GLOBALS Jun 15, 2011
world.py trying to limit units spawned per base Mar 13, 2015
worldmap.py Organize the settings by object type, instead of GLOBALS Jun 15, 2011
worldtalker.py Organize the settings by object type, instead of GLOBALS Jun 15, 2011

README.md

DMANGAME

Website

check the dmangame page for more information.

Download

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

Dependencies

Required:

python 2.x

Optional:

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

If posting to app engine, pyyaml

Playing

# Play with graphics
python main.py ai/captureai.py ai/killncapture.py

# 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 main.py ai/captureai.py ai/killncapture.py -c -o output.html

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

# Play on a specific map
python main.py ai/captureai.py ai/killncapture.py -m maps/micro.py

# 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 main.py --hl ai/simpleai.py ai/basepatroller.py

# Help
python main.py --help

# Run game via appengine. The app engine server is specified in # app.yaml.
# By default, it will hit dmangame-hrd.appspot.com, 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
# http://dmangame-hrd.appspot.com
python main.py dmanai/okay/rushai.py dmanai/bob/expand-then-search.py -m maps/macro.py --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 goose.py (with okay.py as a required dependency)
# and expand then search from github.com/dmangame/dmanai
python main.py dmangame:okay/goose.py dmangame:bob/expand-then-search.py

See Also:

I've been a fan of AI based games for a while, such as the [Google AI Challenge][g_src] and the [Queue ICPC Challenge][i_src]. They are fun and challenging (could you tell from their titles?) [g_src]: http://ai-contest.com [i_src]: http://queue.acm.org/icpc/