home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Share Gallery 1
/
share_gal_1.zip
/
share_gal_1
/
GA
/
GA100.ZIP
/
MAHJONGG.DOC
next >
Wrap
Text File
|
1989-08-29
|
27KB
|
538 lines
┌────────┐ MAH JONGG ┌────────┐
│ ├┤ 3 │ Release 3.1, August 29, 1989 │ 0 0 8 │
│ ├┤ │ │ 0 0 │
│ ├┤ ├┤ │ Nels Anderson │ 0 0 │
│ ├┤ ├┤ │ 92 Bishop Drive │ 0 0 │
└────────┘ Framingham, MA 01701 └────────┘
MAH JONGG is an ancient Chinese game whose origins are supposed
to date back some 3000 years. This version has similarities to
solitaire played with cards and also with dominoes since it is
played with tiles. When I first discovered the game my initial
impression was that the game would quickly become dull but having
played it for a while and having given it to friends we've all
found that it is quite addictive despite its apparent simplicity.
This program is designed for a PCompatible that can run in EGA
graphics mode. If you're still running an older video card I'm
afraid the game won't work. (Apparently many people do not
understand the differences between EGA, CGA, VGA, MDA, etc.;
basically, if you get a screen full of letters blinking on and
off when you try to run MAH JONGG you don't have EGA and the
game will not work on your system.) When I originally wrote
MAH JONGG I had never seen a game that used the full EGA
capabilities (640x350, 16 colors) and I thought it would be nice
if there was one.
This version also supports Hercules graphics mode. Since it's
monochrome it's not nearly as pretty as EGA but the resolution is
similar so it's not bad. The type of video you have is
automatically detected, so you should not have to do anything to
get the right mode.
If your system won't automatically select the right video mode
for some reason, you can force a specific mode using command line
parameters as follows:
mahjongg -h (forces Hercules graphics mode)
mahjongg -e (forces full color EGA graphics mode)
mahjongg -l (forces monochrome EGA graphics mode)
I hadn't planned on doing any versions other than EGA, but
Hercules turned out to be so easy I figured, why not? Recently,
several people suggested adding a monochrome EGA mode for laptop
systems that have an EGA compatible LCD or similar display.
Since I'd already done all the work of making monochrome look
right for the Hercules version, this was easy to add too. I
don't have versions for other video adapters and I don't have any
plans for them since I don't consider any of the lower resolutions
adequate.
Since I do not program games for a living but still put quite a
bit of effort into MAH JONGG I am releasing the program as
Shareware. If you enjoy the game, as I think you will, a $10
donation to reward my efforts would be appreciated. Please let
me know what version you have and I'd also be interested in
knowing where you got it from. Make sure you put your name and
address on your letter. Or, use the instant registration form in
the file "orderfrm.txt". Just copy the file to your printer. If
you don't understand the term "Shareware" please read the file
"sharewre.txt".
If you have any suggestions or discover any problems with the
program you can reach me via the )(evious BBS system
(300/1200/2400/9600-HST, 8N1) at 508-875-3618 or 617-449-7322.
Leave a C)omment to the sysop to reach me. )(evious is the
official support BBS for all my software and the latest versions
are always available for downloading there. There is also a
support conference for people to exchange game tips or ask
questions. J)oin conference #31 and check out the latest tips.
If you're connected to one of the minicomputer nets (InterNet,
uucp...) you can try reaching me at one of these addresses:
ima!primerd!en-m32.prime.com!nja
uunet!en-m32.prime.com!nja
csnet-relay!en-m32.prime.com!nja
nja%en-m32.prime.com@relay.cs.net
nja@en-m32.prime.com
Of course you can also write me at the address at the beginning
of this file. If you're not a registered user don't expect an
answer unless you include a self-addressed, stamped envelope.
Most of the instructions you'll need for playing the game are
built into it; just type H when prompted at the title screen. Or
you can read the instructions below. There is quite a bit of
strategy involved if you are to do well but I'll leave the
strategies up to you to discover. Besides, I'm no expert in
playing the game either.
*****************************************************************************
* PLAYING THE GAME *
*****************************************************************************
OBJECT:
The object of the game is to remove as many of the tiles from
the playing board as possible within the rules of the game.
Tiles are always removed in pairs and can only be removed from
the left or the right edges. Any tile that is not on a left or
right edge is considered blocked and cannot be removed. Note
though that the tiles are arranged in 5 levels and each level
has a left and right edge so there are many more unblocked
tiles than it would first appear. Note that the tile on the
top of the pile blocks all four tiles below it, and tiles on
row 5 block both rows 4 and 6.
SUITS OF TILES:
There are many different suits of tiles and the suit of a tile
determines the rule used for determining matching pairs that
can be removed together.
MATCHING RULES:
Most of the tile suits require an exact match. This means that
you must match a tile to another that is exactly the same. For
example a Bamboo 1 matches another Bamboo 1 but does not match
a Bamboo 3 or a Dot 1. The other matching rule allows any tile
in the same suit to match any other tile in that suit. Thus,
any of the four seasons (SUM, AUT, WIN, SPR) match each other
and any of the four flowers (MUM, PLUM, BAM, ORC) match each
other.
NUMBER OF TILES:
There is only one each of SUM, AUT, WIN, SPR, MUM, PLUM, BAM,
and ORC. There are four of each of the other tiles for a
total of 144 tiles on the board. A counter keeps track of how
many tiles are left in play. If you want to see what tiles
you have removed so far, hit F2 (though some might consider
this cheating!).
BOARD LAYOUT:
If you're using a mouse to play you don't need to worry about
the board coordinates; you just point and click. The game
commands are also there as "keys" that can be clicked on. If
you don't have a mouse, read on...
The game board is a grid marked by letters and numbers. You
select tiles by entering a letter for the column and a number
for the row. Order doesn't matter, entering A5 is the same as
5A. The single tile on the topmost level is H5.
The numbering of the rows is a bit confusing. Row 5 only
exists at the very top level and at the extreme left and right
edges. Rows 4 and 6 are actually adjacent to each other.
If after you've selected your first tile you change your mind,
just hit 'Enter' instead of your second tile selection. After
you've selected both tiles you are asked to confirm your
selection with a Y or N before the tiles are removed.
COMMANDS:
There are commands you can enter in addition to just selecting
tile coordinates. You can quit the game at any time by
entering Q. You can get help by entering H when asked for the
tile selection. If you ask for help when selecting the 1st
tile it will first tell you whether there are any valid moves
and then you may choose to see any or all of them by hitting Y
or N when asked. If you ask for help when selecting the 2nd
tile it will show you any available matches for the first tile
selected. You can save your game by entering S and restore an
old game by entering R. You can start a new game by entering N
or play the same board again by entering A.
F1 will display a summary of commands and other information.
F2 will show the tiles you've removed so far.
F3 goes to the set up screen.
F4 will undo your last move.
F6 will undo your last undo (i.e., it will remove the tiles
again)
F5 shows you your playing statistics
F7 goes to the tournament set up screen.
If you have a mouse, just slide the cursor over the command
you want and click. Hitting the right mouse button is a
short-cut way of asking for help.
In summary, the commands are:
Q: Quit N: New game (new board)
H: Help A: Again (replay same board)
S: Save R: Restore
F1: Commands F2: Tiles played so far
F3: Set up F4: Undo last move (U also works)
F5: Stats F6: Undo last undo (Z also works)
F7: Tournament set up
COMMAND LINE OPTIONS:
There are several options you can give when starting the game.
You can skip the title screen by using -n (No title). You can
play a specific board by entering -bx where x is any number
between 0 and 65535. For example, you can replay the previous
game by noting the board number in the lower left hand corner
before quitting and using that. Or you can play against
another person by both choosing the same board number and
seeing who can remove the most tiles. You can play timed games
by entering -tx where x is the number of minutes you want the
game to be. This is primarily for competitive games. You can
still continue to play the game after the time runs out. The
amount of time left to play is shown in the upper right corner
of the screen just above the number of tiles left. Using -cx
allows you to set the background color and -dx the mouse
cursor color, where x is a number between 0 and 15. Using -m
selects mouse control instead of keyboard. Using -fn selects a
file named n as the file in which your statistics will be kept
instead of the default file "\mahstats"; n can be complete
with disk and path names. Using -f with no file name disables
keeping of statistics.
The command line options are done in a standard way but if
you're not familiar with this sort of thing they may be
somewhat confusing so here are some examples.
Command line option examples:
If you want to play a game that will be timed for 10 minutes,
the command line would be:
MAHJONGG -T10
Notice there is no space between the -T and the number of
minutes (10). The other commands work the same way. To play
board number 12345 the command line would be:
MAHJONGG -B12345
You can combine commands too, so to play board 12345 as a 10
minute timed game the command line would be:
MAHJONGG -T10 -B12345
There is also a setup screen that allows you to select any of
the options that are available on the command line. Just hit
S from the title screen to go to setup. You can also access
setup at any time during a game by hitting the F3 key.
If you forget the command line options, just start up the game
with an invalid option and it will give you the proper usage
(i.e., try using "mahjongg -?" which since it is not a valid
option with give the valid option list).
In summary, the command line options are:
-n No title page
-m use Mouse
-bx play Board x (0 <= x <= 65535)
-tx Timed game (x=length in minutes)
-cx background Color x (0 <= x <= 15)
-dx mouse cursor color x (0 <= x <= 15)
-fn File n is the statistics file
-h run in Hercules graphics mode
-e run in full color EGA graphics mode
-l run in Laptop (monochrome EGA) mode
-li run in Laptop mode with inverse video
STATISTICS:
It seems that a lot of players are interested in game
statistics, so the game now keeps track of some statistics for
you automatically. If you have several people playing on the
same PC they can each have their own statistics by using the
select statistics file command line option, -fn where n is the
name of the file. For example, if Fred and Dick both use the
same PC, Fred might start the game as:
MAHJONGG -FFRED.STT
and Dick might start the game as:
MAHJONGG -F\DICKSDIR\DICK.STT
Hit F5 at any time while playing to see your current statistics.
To disable keeping of statistics, use -f with no file name on
your command line.
TOURNAMENTS:
You can play Mah Jongg as a tournament against other players.
You enter the tournament set up screen either by using the T
option from the title screen or by hitting F7 at any time
during a game. The first player sets up the tournament by
selecting the board number (or by just leaving the one that
was randomly chosen) and whether or not the game will be
timed. After the selections are made the first player enters
his name and plays the game. A record is kept of his results
and the results of each additional player who plays the
tournament.
If you go to the tournament screen by accident or just to see
the current standings, you can leave the screen without
entering the tournament by entering Q.
If there is already a tournament started but you want to start
a new one, enter 'N'. This will let you set up a new
tournament as was described above. Tournament records are
kept in a file called "mah.trn" so you can also start a new
tournament by deleting this file.
USING A MOUSE:
To use a mouse, you must either select it from the setup
screen or use the -m option on the command line. The game was
tested using a Mouse Systems PC Mouse but any Microsoft-
compatible mouse will probably work. When using a mouse most
commands can be issued using the mouse. You must have your
mouse driver installed as a device in your config.sys file for
Mah Jongg to be able to use the mouse.
The mouse interface is a bit different from what you're
probably used to but it seems to be easy enough to use. Tiles
are selected by moving a colored outline over them and then
clicking once. To de-select the first tile, just click on it
a second time. After selecting both tiles a line with the
options "Y/N" (yes/no) comes up. If you just click without
moving the mouse you'll select yes and the tiles will be
removed. Slide the mouse left and right to change your
selection.
The commands available during the game (help, new, undo, file,
setup, quit) are available as "keys" along the left side of
the screen. Move the outline over the command you want and
click once.
"Help" and "Quit" require a yes or no confirmation so you
won't do them by accident. Slide the mouse left and right to
select yes or no and then click. The help command first asks
if you want to see matching tiles (if there are no more
matches it will tell you that instead) and then prompts for a
yes or no to see each additional matching pair of tiles. If
you ask for help after you've already selected the first tile
a search for matching free tiles takes place. If a match is
found, it is highlighted and all you need to do is confirm to
remove the pair of tiles. If no match is found it puts you
back to select the first tile again. There is a short-cut for
mouse users to invoke help. Just hit the right mouse button
to get help in selecting either tile. Normally it doesn't
matter which mouse button you use.
"New" lets you end the current game and either replay the same
board or go on to the next board. You will be prompted to
select either "next" or "again" to either go on to the next
consecutive board or to play the same board again.
"Undo" replaces the last two tiles you removed. You can undo
as many times as you want until all 144 tiles are back on the
board. Undo does not ask for any confirmation. Undo actually
allows you to replay your entire game both forward and
backward. Clicking the left mouse button restores tiles that
were removed and clicking the right mouse button takes the
tiles back off again.
"File" lets you either save the game at its current point or
load a previously saved game. You are prompted to choose
between "load" and "save" and finally to confirm that you
really want to do it.
"Setup" brings you to the set up screen, the same as hitting
"S" from the title screen. You can then change colors, set
timed games, enable the mouse, select a specific board, etc.
Changing colors or enabling the mouse will not effect the game
in progress; when you exit set up you will be back at the same
point in the game that you were at when you entered set up.
Any error messages that appear during the game (i.e. "Invalid
Selection") normally stay visible for a few seconds before
allowing play to continue. To immediately remove a message
and resume play just click the mouse or hit a key.
NEW FEATURES:
Many new features have been added since the original release
of the game. These include:
NEW IN 3.1:
Stats no longer overflow
Stats now correctly update when you win a game
Tournament set up screen now available during game
Automatically detects EGA and Hercules cards
Monochrome EGA selectable for LCD laptop computers
Command line parameters can be made permanent
using setup program
NEW IN 3.0:
Runs in Hercules graphics mode
Game statistics kept for current game and for all games
played
Undo command (both forward and backward)
Set up screen available during game
Tile corners now display properly
NEW SINCE 2.6:
Fixed bug in tournament mode (stats weren't being saved)
A list of all pairs of tiles played so far is available by
hitting the F2 key
NEW SINCE 2.5:
Mouse cursor color is now selectable from command line or
setup screen
When playing a tournament game your score was not always
saved if you completed the board; this is now fixed
NEW SINCE 2.3:
Help screen -- hit F1 to get a list of commands, options,
and some basic playing tips
"Boss Mode" -- hit F10 to hide the game and display a
harmless looking disk directory
New tournaments can be started from within the tournament
setup screen
After winning a game, answering "Y" to play again gives
you a different board instead of the same one over again
Requesting to quit when selecting the second tile now asks
for a confirmation
NEW SINCE 2.2:
Columns entered as letters instead of numbers; rows and
columns can be entered in any order as a result
Several tiles redrawn
NEW SINCE 2.1:
ATI EGAWonder card problem workaround added
Mouse cursor display sped up (possible fix to NEC EGA
card problem of not showing mouse cursor)
NEW SINCE 2.0:
Help on 2nd tile selection (find match to 1st tile if any)
Help available with right mouse button as a short-cut
Error messages can be cancelled by clicking the mouse
Confirmation required for mouse action "keys" to prevent
accidents
NEW SINCE 1.0:
Mouse support
Setup screen, allows access to all game options more easily
than through command line options
Tournament play
Selectable background color
New commands during play
A (play same board Again)
N (play New board)
More command line options
-cx (background Color)
-r (Restart saved game)
-m (use Mouse)
More authentic tile appearance
Faster tile displaying
WINNING
Not all boards are win-able but during testing a number of
boards that are beatable were found. In addition, many people
who have written to register their copy of Mah Jongg have
included lists of boards they have completed. If you want to
play a board that definitely can be won, try one of the
following:
55598, 49070, 64856, 15784, 29514, 54176, 40060, 8, 44213, 21,
43, 148, 290, 302, 329, 364, 370, 386, 410, 421, 459, 560,
627, 634, 656, 695, 735, 743, 795, 819, 827, 839, 858, 876,
888, 890, 905, 936, 952, 985, 1034, 1037, 1066, 1101, 1104,
1138, 1145, 1149, 1154, 1207, 1241, 1244, 1296, 1313, 1346,
1365, 1390, 1392, 1428, 1430, 1490, 1543, 55309, 43924, 47924,
38313, 23986, 45355, 55082, 6843, 52079, 50333, 24654, 64557,
14, 54438, 2, 52916, 32141, 62500, 50408, 5119, 8694, 12224,
27869, 47615, 49522, 56447, 4113, 6108, 36785, 38382, 54586,
36607, 63202, 4540, 21015, 1132, 37696, 20009, 19619, 42246,
56809, 5336, 61319, 15037, 33357, 52158, 63866, 41619, 48165,
13692, 17604, 40284, 47779, 57572, 13932, 4236, 4243, 24942,
15318, 59498, 50542, 41121, 4344, 38110, 26208, 307, 32812,
16496, 16213, 47788, 65123, 36792, 16965, 3989, 63331, 40111,
54491, 43421, 10796, 56185, 40640, 433, 9619, 8922, 800,
20926, 1, 23, 56, 7971, 21399, 32381, 33212, 36836, 48094,
53751, 58094.
Enjoy!
INCOMPATIBILITIES:
Early versions of MAHJONGG had problems running on an ATI EGA
Wonder card. The problem is with the BIOS ROM on the card,
not with the game. ATI should by now have an upgrade ROM
available to fix their bug so you may want to contact them
about it. MAHJONGG Release 2.1.1 and later should work
properly on the ATI card even without the BIOS upgrade.
I've also heard that an NEC built EGA card (not sure of model)
does not display the mouse cursor. I think I've done
something in Rev. 2.1.1 that will prevent the problem but I
don't have the proper system to test it on.