Fanorona for GNOME

By John Stracke

Fanorona for GNOME (not "GNOME Fanorona", since it isn't part of the GNOME games package) is an implementation of Fanorona, a classic board game from Madagascar.

Table of Contents

The Board

Fanorona is played on a 9-by-5 board. As you can see, it's not just a rectangular grid like chess; the spaces are connected by lines. Pieces may move only along the lines. Notice that not all spaces which seem to be adjacent diagonally are actually connected. This turns out to be important for strategy: a piece can, in essence, hide from another piece, yet stay nearby.

In Fanorona for GNOME, the human player's pieces are red, and the computer's pieces are green. Empty spaces are white. (For the benefit of those with red/green colorblindness, this color scheme can be changed in the Preferences dialog. Eventually, I'll also need to do something for people who are completely colorblind; but I start with the easy solution for the common problem.)

The Rules

Pieces may move only along the lines, one step at a time.

Capture is by approach or withdrawal. In other words, to capture a piece, you either move into place to be adjacent to it (i.e., so that, if you moved one more step in the same direction, you would be on top of it), or else start out adjacent to it and move away from it (so that, if you had moved in the opposite direction, you would be on top of it). A piece may not capture both by approach and by withdrawal in the same move; the player must choose.

When you capture, you're actually capturing a line of pieces, not just one (not necessarily, anyway): all the opponent pieces in the same direction, up until a blank space or one of your pieces.

After each capture, if the same piece can make another capture, it may, provided it is changing direction, and provided it does not cross back on its path (within the same turn, that is).

The game is over when all of one player's pieces are gone.

Some examples:
Capture by approach:
Note that, in this case, a line of two green pieces has been captured.
Capture by withdrawal:
In this case, only one green piece has been captured, because the piece beyond it is red. Note also that the green piece that the red piece approached is not captured; the red player had to choose between approach and withdrawal. The red piece is outlined in yellow because its turn is not over yet: it can move upwards, capturing the single green piece below it by withdrawal.

The User Interface

To make a move, start by clicking on the piece you want to move. As you press on it, it will be outlined in yellow; when you release, its outline will revert to black, and the spaces to which it can move will be outlined in yellow. Click on one of these spaces.

If you have made a capture, and can continue your move, your piece will now be highlighted in yellow again. Click on it; the spaces to which it can move will be outlined in yellow. (Note that, in this case, there will be fewer spaces available than if this piece were starting fresh, since it must now make a capture, and cannot cross its own path, or continue in the same direction it just moved in. To help you follow what you're doing, an X will be drawn in each space you've already occupied this turn.)

When you have made all the moves you can, the computer will move. When it has finished, it will be your turn again.

To undo a move, select Undo from the Edit menu.

To control how well the computer plays, use the Preferences dialog (under Settings). To start a new game, use the New Game menu item (under File). To quit, use the Exit menu item (also under File). To save or load the game, use the Open and Save commands under the File menu. (You can also load a saved game at the command line: for example, "fanorona".)

If you resize the game, it will remember that size the next time it runs.


There are some known problems with the user interface. They do not make the game unplayable, but they do need to be fixed eventually.


Fanorona for GNOME is dedicated to Jeff DeLuca (known in the SCA as Salamallah the Corpulent, OL), who sold me my first Fanorona board. I learned the game from his rules, which are published in his book Medieval Games (Raymond's Quiet Press; 3rd ed. 1995; ISBN 0-943228-03-4).

Thanks to Kazuya Numata, who created the Japanese message catalog.

Thanks to riq (only name I have), who corrected my Spanish translation.

Thanks to Jean-Phillipe COMBE, who created the French message catalog.

Thanks to Rado Ramarotafika, who created the Malagasy message catalog (and corrected my original misspelling--I thought it was called "Fanarona"), and who pointed out that it wouldn't compile on Mandrake (now fixed).