jzongker edited this page Jul 9, 2012 · 16 revisions
Clone this wiki locally

Technical Components


  • HTML5
  • SVG for map drawing
  • Polyfill for Android clients below 3.0 that do not support SVG (most currently)
  • Pan and zoom
  • Needs an easy way to find territories by name or to link them in the chat window.


Real-Time Collaboration Server

  • Used for:
    • see other player's moves as they are queued
    • chat
    • players can ping territories when discussing.
  • Uses WebSockets
  • Does not directly affect gameplay. Final orders are submitted to API.
  • It is optional - AI and Smartphone clients can get by with just the API.


  • Does not communicate directly with the database. Everything runs through the API.
  • Stores a map repository sorted by popularity with the option for any member to upload.


  • Will interface with the game via the API
  • Will be treated the same as a normal player form the API - no additional info.
  • Third parties can create and run their own AIs.


  • MySql
  • Only the API communicates directly with it.
  • Stores a history of all games, moves and outcomes. (this will help with future AI development)

Game Features

  • Multi-player, with teams
  • Turn-based play
  • Player reputation system to help flag cheaters.
  • Paratrooper card - Allows you to drop troops behind enemy lines.
  • When a player surrenders, they will to switch to an AI if specified in the game settings.
  • Have option to specify different offense/defense success rate per team to handicap uneven teams.
  • On an all AI team, the AIs will offer a surrender when it's clear a loss is inevitable.
  • In team games players can mark territories to indicate intent such as:
    • Claiming a territory they wish to take
    • Marking a territory they don't plan on taking.
    • These indicators have no direct impact on the game, but the AI should take them into consideration.

Missing Features

At least, these will be missing from the first alpha version...

  • AI players
  • Collaboration server - including chat functionality