Mahjongg, created by Paul E. Brennick






Welcome To TASCware 2005's Version Of Mahjongg

Check out the game instructions below to learn about the new features. Of course, I still crave your feedback, so if you have suggestions, feel free to email me. In the meantime, however, you can also play the other games on this site. I hope you enjoy playing them as much as I enjoyed writing them.



How To Play

Mahjong is a game where you have to remove as many of the tile as possible from the playing board, as the rules allow. Tiles are removed by selecting them in pairs that match. They then vanish, revealing other tiles to be removed. Tiles can only be removed from the left or right edges of a group. Any tile that is not on the left or right edge of a group is deemed to be blocked, and therefore cannot be removed until the ones either side of it have themselves been removed.


The tiles come in three suits of 10, and three suits of 4 and the suit of a tile determines the manner in which it is paired with other tiles. For the most part, a tile can only be removed by pairing it with a tile of the same suit and value. For example an 'eight dots' tile must be paired with another 'eight dots' tile, a 'west' tile can only be removed with another 'west', etc. The other matching rule says that a tile can be removed by pairing it with any tile in the suit, but that isn't of the same value. This rule applies to the four seasons (SUM, AUT, WIN, SPR), and the flowers (MUM, PLUM, BAM, ORC).


There are 144 tiles in a game of Mahjongg: 4 each of the three suits of ten, and one of the suits of four. The suits representing the seaons and the flowers are only placed once within a tileset.


The tiles are arranged randomly in each new game. Not every tile set can be fully removed. I have read somewhere that roughly 50-75% of boards can be completed. So if you get stuck and run out of moves, try restarting the same tileset and removing the tiles in a different manner.



Notes About The Program

New Game: Click this button to begin a new game with a random 1tileset
Replay Game: Click this button to play the same tileset again
Undo: This will progressively put back tiles that have been removed. Unlimited scope means that you can undo right back to the start of the game if you want to.
Show Move: This button will highlight a possible move each time you press it. When the full number of moves has been revealed it cycles back to the start of the list.
Reveal like: If you have a tile selected, pressing this button will show any unblocked matches in black, and any blocked matches in yellow. Very handy when planning sequences of moves. Infact, since adding this feature I have come to like it more than show move.
Do it: If you have a valid move highlighted (you have just used the 'Show move' facility), then pressing 'Do it' will complete that move for you with one easy click. Quite the time saver ;-)
Scramble: Scramble is a new feature that comes in particularly handy if you are playing a game and have run out of moves. Simply hit scramble, and it will mix up the remaining tiles without starting a whole new game. Be aware however, that once you scramble the tiles, you can't go back - hitting scramble clears the 'move history' so you cannot undo the scramble, or any moves before it.
Tileset Code: You can now determine the tileset you wish to play by entering a number in this text field and pressing the return key. At the moment acceptable input is an integer in the range of minus 9,223,372,036,854,775,808 to plus 9,223,372,036,854,775,807 not including zero.


1You may have noticed the difference between the range of numbers possible for tilesets, and the range in which tileset codes are randomly determined. This is because if you do not specify a tileset then the current time in milliseconds is used to seed the pseudo-random number generator. Hence it will always be a positive integer roughly twelve digits long. I will get round to finding a consistant way of doing things. In the meantime go wild :-)


This build of Mahjongg officially constitutes version 1.0. It's feature complete in terms of what I intended to implement, and I don't think there are any bugs (please notify me if I am mistaken in that belief). Not bad for just under a fortnight's work :->


If you come across any bugs whilst playing the game then please send me an e-mail about it detailing what happened, and what the state of play was when it occured. Thank you in advance.




IMPORTANT: If you are using Netscape to view this site then the Mahjong applet may not work reliably. I have just fixed a problem that prevented the execution of this applet, and it should be okay. Nevertheless, I am still a little worried. If you are using NN and you have problems please could you send me an email telling me that you had a prob, and the version of Navigator you are using. You can reach me at pebrennick@verizon.net


Paul E. Brennick
TASCware, Associates