AIGS 2009 Update

Updated with almost everything necessary to play the tournament.  I still need to implement the game timer per side.  I will have the up before AI class meets Monday.

All of the changes that are mentioned in the Tournament Rules document have been completed with the following notes:

  • Always 3 players per team
  • Not guaranteed to be solvable (though I haven’t seen an unsolvable one yet).
  • You can only capture flags on the other side of the board
  • Flags respawn at random locations on your side of the map
  • You can only see your flags when they have not been captured
  • Non-wall squares you cannot see will be sent as a ‘*’
  • Captured players will spawn adjacent to their home base
  • If no location is available, they will try further out in concentric circles

AIGS 2009 Update

New version of the server is available:


  • Added RemainingFlags message.
  • MoveMade packets will be sent for each move. Periodically checking for the server for sync is suggested.
  • It should now be possible for players to move past each other (swap places, etc).

AIGS 2009 Update

The new version of the server has been updated.


  • Added a rudimentary AI player to play against for the next assignment.
  • Added scenarios for assignment 3.
  • Fixed typos in previous assignments.
  • Added an argument to the protocol for YourTurn messages to tell you who you are (update your CTFProtocol file).

AIGS 2009 Update

Ok, so the new server is up.  I can almost guarantee that there are some problems (so goes the life of a CS), so go ahead and hammer away at it and see what you can do.

One major thing, the game string format has changed:** **

  • Players are represented by lower case letters from ‘a’ to ‘j’
  • Players carrying flags are represented by upper case letters from ‘A’ to ‘J’
  • Bases are represented by numbers ‘0’ to ‘9’
  • Players will immediately score if no bases are present but must return a flag to a base if one is present
  • Players must step on flags to pick them up, but only must be adjacent to a base to drop it off
  • Players can only carry one flag

AIGS 2009 Update

Initial upload of the server.  There was a pre-release version emailed to the class (that I no longer have), thus the ‘updates.’

All versions of the server should run correctly with .NET installed in Windows or with Mono on Linux or OSX.  I’ve tested the Windows and Linux versions and both seem to work perfectly.


  • Sequential games are possible. You can not join two games at the same time, but once one game is complete you can join another.
  • You can send “Unsolvable” as a move string (see CTFProtocol). If you are correct, you win. If you are incorrect, you lose. I suggest that you are completely sure before you send this message. ;D

AIGS 2009 Overview

Despite what I said last year, I started the AIGS over this year. To shake things up a bit, I’m implementing this year’s version with .NET in C# (the previous two years used Python and Java respectively). This year, the game will be Capture the Flag. Hopefully, we can have a more complex game without overdoing it and avoid the problems with low branching factor that we had last year with Hex.

AIGS 2008 Update

This version of the AI Game Server includes several minor updates to documentation (mostly to reflect the changes outlined below in the server) and a few changes (including one major change) to the server.

First, the server has been changed to send the final move along with GameOver moves, primarily for bookkeeping on the part of the clients.

AIGS 2008 Update

The documentation has not changed for this version; however, a few relatively major updates have been made to the server code.

First, the second player swap rule has been implemented to prevent either player from having an easily implemented perfect strategy. Now, after the first player has played, the second player can choose to either continue the game as normal or to switch places with the first player.

Next, a 4th argument has been added to the JoinSuccess and GameState messages to tell the client if they are player 1 or player 2.

AIGS 2008 Update

This is the first version of both the AI Game Server documentation and code. To write a client for the AIGS, I would suggest reading the documentation, it should contain all you need to connect to and interact with the server.

If you run the included jar file, it will run a working copy of the server. This version of the server does not contain a complete GUI, I hope to have that in a few days; however, a working version of Hex is included. If you would like to see the source cope, just open the jar file, all of the source code is included.

AIGS 2008 Overview

The AI Game Server started last winter when I was taking CSSE 413 (Artificial Intelligence). As part of the class, we were told to design an AI program capable of playing checkers. Rather than the entire class having to decide on and build in network communication routines, I decided to volunteer to build a server for the class. The first version of this server (which eventually became AIGS) was called PyCheck.