Bot Arena

The bot arena is a small program to test IGX bots. It plays a series of games and collects the data you specify in a log file. Click here to download it. The bot arena is run from the command line. Everything sent to System.out or System.err is added to the log. This means you can add comments to the log with commands like System.out.println("WinnerBot is launching a forked attack");
Below is the list of available command line parameters, followed by a few examples. The bots must be put before any other parameters.

botclass[a][b] puts the bot with level a from the specified bot class on team b. If the second bracket is ommited for the nth bot, it is put on team (n-1)
file=X sends all the logged data to the file X
RTQthreshold=X sets the threshold below which bots automatically become ready to quit. The value should be between 0.0 and 1.0, the default value is 0.3, as o the official online server
map=X the arena will play on the map X, where X is the name of the file containing the map not its in-game name. Leave the suffix. The map file will be sought from the Java class path. If it cannot be found, the bot arena tries to find it in the igx/maps/ subfolder of the Java class path. map=BigX and map=igx/maps/BigX will both open the Big X map from the igx/maps/ folder, unless there is a second BigX map on the class path. The default map is Take 5.
games=X makes the arena play X consecutive games
report=X if this is set to 0 or below, the game state is never logged, otherwise the arena will log the map, the data of all planets and the current score table before the game begins, after it ends and every X turns. The default value is 1000000, causing the arena to print only the initial and the end state of a game (since no game will ever run until turn 1000000)
messages=X determines which messages are logged. The default value is 2
0   none
1   only chat messages
2   chat messages and events
3   all messages except for fleet arrivals
4   all messages

java igx.bots.BotArena igx.bots.MoonBot[0] igx.bots.NoviceBot[0] games=10 file=test.txt map=TheCube
  The bot arena will play 10 games between the level 0 MoonBot and the level 0 NoviceBot on the map The Cube, storing the log in the file test.txt.

java igx.bots.BotArena igx.bots.MoonBot[0] igx.bots.NoviceBot[0][0] igx.bots.LucasBot[2] games=100 messages=0 report=0
  The bot arena will play 100 between the level 2 LucasBot and team 0, consisting of the level 0 MoonBot and the level 0 NoviceBot
  the only output will be the log header, the winner of each game and the log footer