Wiki page
[tcl21contest] by
andreas_kupries
2014-11-07 18:34:51.
D 2014-11-07T18:34:51.194
L tcl21contest
P 4b2fd080905e1a8fa5bf01f9e68232b2483c4f19
U andreas_kupries
W 2880
This year we will be "running" two distinct but related contests.
We will announce/show the results at the banquet.
The attached files are the basis for the contests.
<h2>Contest #1 -- "Risk" playing Bot</h2>
Create a robot to play a "Risk" like game using SampleBot.tcl as a starting point.
Robots will play a double round robin. Starting at "high noon" on
Wednesday. In each match a robot will be awarded points as follows:
* 0 points -- lost
* 1 point -- tie
* 2 points -- win
Winner on pure points.
<h2>Contest #2 -- Display of BotGame</h2>
Write a program to display the "log" of a game (you can modify the
RunGame.tcl to output whatever you want as a log) either via Tk or
HTML/JavaScript -- the "driver" has to be Tcl based. See the WorldMap
files.
Winner(s) to be judged by artistic merit (whatever that means).
To run:
<ol><pre>tclsh8.6 RunGame.tcl gameName gameDir mapSpec bot_1_name bot_1_path
bot_2_name bot_2_path</pre></ol>
Where:
<ol>
<br>gameName - name of the game
<br>gameDir - directory game files are in
<br>mapSpec - map specification file (i.e. WorldMap.tcl)
<br>bot_1_name - name of bot #1
<br>bot_1_path - command to launch bot #1
<br>bot_2_name - name of bot #2
<br>bot_2_path - command to launch bot #2
</ol>
This is all based on
http://theaigames.com/competitions/warlight-ai-challenge
Now contains all the files we got from Gerald, with some changes, namely
* Fixed a few typos in the sample bot and in the engine
* Refactored the engine internally a bit
* Gave the engine a higher-level log written to stderr.
<ol>
* An example of this log is in the repository
* The log should be Tcl-readable (lines of Tcl lists)
* This should be a good starting point for visualization/replay of a
game.
</ol>
* Added two manager scripts, Shootout and Tournament.
<ol>
* The shootout takes two bots, possibly the same and runs
them through a series of independent matches (50 by default)
and accumulates the results. This should allow you to judge
relative strength better.
* The tournament takes a directory of bots and runs them against
each other per the rules Gerald listed in his initial mail.
* Both scripts save the lower- and higher-level log in the logs/ subdir
of the world directory they operate in.
For reviewing things, and also as a source of game logs for
visualization.
</ol>
* Call either script without arguments to see the usage information.
All in all having these infrastructure script should allow us to focus
on writing a bot, and not on writing helper scripts.
* Access without login, and anon access have standard permissions.
* So, everybody should be able to clone.
* Anon login can get zip/tar balls from a revision.
Z aac531b1c85475fff3ed11c4b4e1e307