Cannon was first conceived by David E. Whitcher in fall of 2002 as an attempt to use piece formation to determine movement and offensive ability rather than having them pre-assigned as in chess. As a secondary goal the game was designed to start at the brink of conflict eliminating lengthy periods of maneuvering in the games open that can be less than interesting especially for new players.

Rules can be found at these links:

Please note that in tournaments and ladder games an additional rule is in effect. "No cannon may shift more than three times in a row regardless of the direction without an intervening move from another cannon or single soldier."


Note that your first order is to place your town. The SDG user interface doesn't explicitly tell you the order format (unlike the other types of orders). It is simply b1 or c1 or … or i1.


I'm beginning to notice some trends in the games that I've been playing. Maybe this could help you:

  • In the opening, new players tend to place their town directly behind a cannon, while more experienced players tend to place their town in between two cannons. Being directly behind a cannon takes away the option to pull your cannon back, if that cannon is targeted by the enemy. Your only choice is to move the soldier at the front of the cannon one space forward. However, even though you can move the entire cannon back if the town is between two cannons, it seems the most popular choice is to move the front solider one space regardless. (bigby)
  • The enemy town position to which I most consistently lose is when the enemy places their town at b1 or i10. This takes so much of the board out of play for your soldiers to advance. For instance, if I am playing black and the red town is at i10, already the soldier at a4 cannot reach the town with regular soldier moves. The closer your town is to the middle, the more accessible it is to the enemy, and the fewer soldiers, on average, between you and an attacker. I still, however, like to move around my town placements and experiment. What works for you? (bigby)
  • A popular opening that seems to work well:
  • . . . . . . . . . .
    @ . @ . @ . @ . @ .
    @ @ @ . @ @ @ . @ .
    @ . . . . . @ . @ .
    . T . . . . . . . .
  • I am fond of doing this. The forward soldier keeps them from steping up out of the way of cannon fire.
  • . . . . @ . . . . .
    @ . @ . . . @ . @ .
    @ @ @ . @ . @ . @ .
    @ . . . @ . @ . @ .
    . T . . . . . . . .

Prior to SDG I wrote an analysis of the game stages of Cannon. It has been rewritten as of January 25, 2007 based on my play experience at SDG. The section on material advantage has been expanded and a miscellaneous tactics section has been added. It now covers the following topics and is located at

An analysis of Cannon. (Keith)

Setting the stage - Town location

  1. In the wings
  2. Center stage
  3. Open or column
  4. Opposing or diagonal
    1. The mutual zone
    2. The advantage of going 2nd

The opening stage

  1. Exchanges
  2. Rushing forward to avoid cannon fire

The mid-game

  1. Being dense/Lineup
    1. General advantage
    2. Cannon fire
    3. Cannon maneuver
  2. Tactical retreat
    1. By cannon
    2. By contact

The endgame

  1. The Eventual Value of Having a Material Advantage
  2. Evaluating potential outcomes
    1. Someone has a clear advantage
    2. It’s a race
    3. Down but not out
  3. The tactics of delay and advance
    1. Of delay
    2. Of advance

Miscellaneous Tactics to Consider

  1. Don’t get in a situation where a Cannon is needed for defense
  2. Don’t initiate that even exchange between soldiers
  3. Two vs Three moves away – pinning
  4. One soldier holding up two enemy soldiers
  5. Doing more forward cannon moves than the opponent
  6. Have the front line of the conflict on the opponents side of the board


The house is the castel, the soldiers in front are the walls, and all others are the village. Now, if an army whant to take a castel,it will first make holes in the walls.Attacking the village will be useless if your main purpose is to conquer the castel. So,the main target must always be the soldiers in front of the house.All your turns in the game must be to built an attack against these soldiers,to kill them or to get them out of the way.Every time that you have the choice between kill a "wall soldier"
or a "village soldiers" you must kill the first one.Of course you must also be aware of the general situation.It's like any battle:the task and the result are two eyes of the same face ! (Remneb)


Game Database

The Cannon Game Database is now online! This is the official archive for PGN files generated both offline and here at Super Duper Games. This site allows you to review/play through past games, set up experimental positions, and even has an in-development AI opponent to play against.

Position Evaluation

I am trying my hand at developing an AI engine for Cannon. The key to any good AI is it's ability to accurately assess the current position. This is usually done by assigning some numeric score to each player in a given position. I am seeking input on ways to do this. My current idea is to examine various aspects of a position and assign each one of those a value, the sum of which will be the total score for the board. Below is a list of the various aspects currently being considered and how they are assessed. Feedback and modifications/additions are highly desired. Currently, as you can see, each of the categories is evenly weighted. Perhaps the AI should value cannons more then material advantage, for example. In that case, maybe the delta should be multiplied by 2 or something like that?

Positional Attribute Score Weight Note
Checkmate +/- 100 1.0 +/- 100 will be the min/maximum score assignable
Material Advantage +/- delta 3.0 If Black has 10 soldiers and Red 7, the score would be +/- 3 * weighting. I have increased the weighting to 3 to try to keep the AI from unduly sacrificing pieces. It's still not quite right.
Offensive Pressure + raw 1.0 The zone in which a player generally wants to exert pressure is the cone of cells originating from the opponent's town (including the cells immediately E and W). The AI should be pressed to exert maximum force in this area. The score is the sum of move/capture potentials you possess within that area. To encourage the AI to advance towards the opposing town, the value of each potential will be weighted increasingly based on proximity to said town.
Defensive Pressure ? ? This will likely need to be added depending on how the AI responds aggressively. It is conceivable, particularly when the towns are placed far away from each other, that the AI might leave himself unduly vulnerable while attacking his opponent. It may be necessary to add some measure of defensive structure to balance this out.

AI Issues

The AI is very aggresive, very willing to sacrifice pieces. It plays well in the early and mid game, but quickly loses piece advantage in midgame, leaving its remaining pieces widely dispersed. Those it does have left are advanced in an arbitrary and unconservative manner. I have played two games against the AI so far, and in both games I had a major piece advantage after the midgame. This is consistant behavior and I have no trouble at all defeating the AI.

  • Aye, the AI is currently pretty dumb over the long-term. The only way to improve this is to alter the position evaluation algorithm described above. Any ideas are warmly welcomed.

As an interesting note: the AI plays a more challenging game as black rather than red.

To see some unusual behavior, have the AI play itself.

To see some even more unusual AI behavior, go to the position evaluation page and start with a blank board. Without placing any pieces, transfer the "game" to the AI, and force it to play both sides.

  • This is a bug and will be fixed. I never even thought of that possibility :-)

The AI does not recognize checkmates. It will continue the game even after its town is able to be captured! Endgame conditions are entirely decided by the human user.

  • It should not be able to move if it is checkmated. You can click the buttons all you want but nothing should happen. If indeed it does, please email me the PNG image of the position so I can debug. But you are right, ending the game is up to the player. I should at least put the + and ++ signs in the moves history. I will do that.

These are my thoughts so far. I find this feature amusing and entertaining, and will certainly be playing around with it in the near future. As the database grows, will the AI become smarter? - Cerulean, 18 August 2005

  • No, the AI is based on a fixed position evaluation algorithm and is not emergent in the way you describe. Improving the AI depends on improving the algorithm that assigns scores to positions.
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License