This guide will walk you though the process of creating an agent for the competition
This page will describe the process by which agents are prompted by the game engine to make moves.
Your agent should have a no-arg constructor which is public. This will be used by the game engine to create your agent. You should not use any static state as part of your agent.
For the Mirror and Mixed tracks you can assume that the agent will be re-created for each game played. This is not the case for the learning track however, for this track see the Advanced Methods section below.
The primary way in which your agent interacts with the game is though the doMove method. This is called every time your agent needs to make a decision. You are passed two arguments, your playerID and a copy of the current game state from your perspective.
Your agent should return a valid move action from this method. If you return an illegal move, the game will end and the result will be recorded as a disqualification.
public Action doMove(int playerID, GameState state)
Although we do our best to prevent cheating, the system is not foolproof. If you are caught cheating your account will be banned. If you have come up with a statergy and you are not sure if it is permitted, contact the competition organisers who will be happy to assist you.
The agent interface includes some 'advanced' methods that can be used by your agent.
This method is called when the game starts. For most tracks, this will only ever be called once per agent.
public void receiveID(int playerID)
Now you're written your agent, you're ready to submit.
Submitting your agent