Real Mah Jongg is a social game that originated in China thousands of years ago. Four players, named after the four winds, take tiles from a wall in turn. The best tiles are made of ivory and wood; they click pleasantly when you knock them together.
Computer Solitaire Mah Jongg (xmahjongg being one of the sillier examples) is nothing like that but it's fun, or it must be, since there are like 300 shareware versions available for Windows. This is for X11/Unix and it's free.
The object is to remove all Mah Jongg tiles from the playing field by taking one matching pair at a time. Generally, two tiles match if they have identical pictures on top. There are some exceptions: any season tile (spring, summer, autumn, or winter) matches any other season, and any flower tile (bamboo, orchid, plum, or chrysathemum) matches any other flower. There are 144 tiles in all -- one of each season and flower, and four copies of each of the following: 1 to 9 dots; 1 to 9 bamboo sticks; characters for 1 to 9; the four winds (north, south, east, and west); and three dragons (red, green, and white).
Only free tiles can be removed. A tile is free if its entire top face is unobstructed and either its left or its right edge is open. (When looking at the left and right edges, only tiles on the same level count.)
The rules are simple, but winning, it turns out, can be pretty hard. It's easy to make a move that causes a stalemate thirty or more moves later. What's worse, the --any-boards option lets xmahjongg create boards that cannot be solved at all!
To select a free tile, simply click it with the left mouse button and it will light up. Click it again to deselect it. If you try to select a non-free tile, xmahjongg will beep at you. To remove a matched pair, just select one of the pair and click on the other one. The number in the upper left corner tells you how many tiles you have left. This is all you really need to know to play the game.
Xmahjongg comes with several features that may dismay purists, but make the game more pleasant to play. First is the match count, an array of small gold coins in the upper middle. Each coin represents one potential match on the board. (If three mutually matching tiles are free, it counts as three matches, and if four are free, that's six matches.) This will let you know when the game is over (no gold coins means no matches -- a dead end) and when you're getting close.
The five buttons along the top right have the following functions:
New (keystroke: n)
Start a new game.
Quit (keystroke: q)
Undo (keystroke: u)
Undoes your last move. You can undo multiple moves by clicking multiple times. If you change your mind about undoing a move, hold down Shift while you click the Undo button (or press r) to redo it.
Hint (keystroke: h)
Gives you a hint by flashing a set of free matching tiles. You can cycle through all existing matches by clicking multiple times. If you select a tile and then click Hint, xmahjongg will flash any free tiles that match that tile, or beep if there aren't any.
Clean (keystroke: c)
Cleans the board by automatically removing obvious matches. A match is obvious if it involves all the remaining tiles of a given type. (For example, if there are 2 green dragons left and they are both free, they form an obvious match; but if there are 4 left and only 3 are free, they don't.) Cleaning the board is guaranteed not to cause a stalemate later.
Solve (no button; keystroke: s)
If you get stuck, press the s key. After the board is restored to its original state, xmahjongg will show you one way to solve it by removing tiles two at a time. Press s again to speed up the solution, or press Esc to stop. This won't work if you gave the --any-boards option (see below).
Additionally, the Escape key deselects any selected tile.
Here are some key features of "XMahjongg":
- Those pretty, round-edged colored tiles
- Multiple tile sets (it comes with ten)
- Multiple layouts (it comes with twenty-four)
- Undo and redo
- Helpful hints for happy play, and a clean button for cheating
- Boards that are always solvable (but you can turn this feature off)
- It can show you a solution
- Aesthetics (or ugliness, depending on your taste)