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:
. . . . . . . . . .
@ . @ . @ . @ . @ .
@ @ @ . @ @ @ . @ .
@ . . . . . @ . @ .
. T . . . . . . . .. . . . @ . . . . .
@ . @ . . . @ . @ .
@ @ @ . @ . @ . @ .
@ . . . @ . @ . @ .
. 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
The opening stage
The mid-game
The endgame
Miscellaneous Tactics to Consider
Tactical
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)
Conclusion
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.
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. |
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.
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.
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.
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