Getting Started
This page shall give you a quick overview of what you need to write your own general game player.

Parts of a general game player

A player typically consists of the following parts:
Each player is a basic HTTP server waiting for messages from the Game Master and sending its moves as a reply.
Since a game description is essentially a logic program, the player has to use automatic reasoning or a logic programming system (e.g., Prolog) to infer legal moves and successor states.
You need the communication and reasoning parts to play games. To win you need a good strategy.
There are reference players available (here or here) to get you started.

What to do now?

  1. Familiarize yourself with the kind of games that are played, how games are described and how a match is run. The papers "General Game Playing: Overview of the AAAI Competition" and "The International General Game Playing Competition" might be good starting points. The GDL specification (available here) gives a detailed account of the semantics of the GDL and the communication protocol. There is an extension of the GDL for incomplete information games, which is described in this paper.
  2. Get an account for GGP Server or the Tiltyard Gaming Server to play matches with your player and have a look at other matches. Both servers have a variety of games available and nice visualization for most of them. Alternatively, you can download GameController, a game server clone that you can run locally. GameController is scriptable and can be used easily to run your own games.
  3. Download one of the reference players from our download page, Stanford's webpage, or the ggp-base project, play games with them and try to implement your own strategy. Or implement your own player from scratch.
  4. Subscribe to the GGP mailing list to get help. It is a low volume mailing list which also features information about current activities in the community, especially GGP competitions.