Skip to content
csj edited this page Sep 18, 2013 · 3 revisions

Many different sets of expertise are needed.

Game designers

First of all, games need to be designed. Games that are crafted should follow the guidelines set out above. A design consists of a written document that clearly describes the game, its flow, its players’ expected inputs and outputs, and a description of the game’s ending conditions including payoffs to all players.

Engine developers

Once games are designed, they need to be implemented.
An engine is a stand-alone program which, when provided with pipes representing players, can coordinate and execute a single game, and return a set of payoffs for the participating players -- all in accordance with the written specification of the game. An engine should also produce a text-file representation of the game’s progress from start to end, also in accordance with the spec.

Environment developers

A game engine is pretty useless if nobody ever invokes it. An environment is needed to trigger the execution of games, and update the ELO ratings of each participant based on the returned result. The environment includes a staging area for each bot’s source code, and different language tools to compile the code into executables that are ready for action. The environment also includes any database component for keeping track of authors, their bots, and rankings.

Web developers

Authors need to see how their bots are doing.

  • Web developers are needed to design and build web pages for bot authors to:
  • Manage their bot submission(s) for games
  • View their bots’ ladder standings in all games
  • View their own prestige ladder standings across all games
  • Request/trigger a game against a specific opponent
  • Review games
  • Write about their bots

Furthermore, more general areas of the website are needed for each game to:

  • Promote discussions about its design (including those in progress)
  • Report engine bugs
  • Maintain language-specific implementations (and report their bugs)

Replay developers

This is a big one. A replay shows a game which has finished. A good replay: Is useful for the participating bots’ authors Is fun to watch for interested third parties Requires no additional installation. Hint: a video would satisfy these requirements; however, a more interactive experience might be nice, depending on the game.

Bot authors!

Or, users. Building games is generally no fun if nobody wants to play them. It is for these people that this system is being built. I fall under this category (among others). :)

Clone this wiki locally