
Whack! for OS/2
---------------

- ... good fun on your PC screen ....  It's the perfect thing for those
  short breaks between other tasks when you just need to unwind and
  waste some time.
                - OS/2 e-Zine!, October 1996

This is my OS/2 interpretation of a popular carnival game.
The original was a board with some holes in it.  Mechanical creatures
would briefly stick their heads out from a random hole.  The player
had to whack the creature with a mallet before it returned to its hole.
I have taken license with some of the features.  Rather than being
limited to four or five holes, these creatures have the freedom to
appear anywhere on your screen, even on top of one another.  If you
are opposed to whacking furry animals, and have the appropriate bitmaps
handy, whack Bob Dole, your boss, or Barney the Dinosaur instead.  Whack
is now freeware.

Thanks for trying Whack!

Installation
------------
You must have MMOS/2 installed to play Whack!

New Install or upgrade from version 1.20 or higher- Simply copy the
executable and dlls to the same directory (or place the dlls in your
libpath), create an object for it on your desktop, and start banging
away.  The first time it runs, Whack! will create a file called
Whack.ini in the same directory as the executable.

!!!! NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE !!!!
Upgrade from older versions - Please delete your whack.ini file before
upgrading to version 1.20.  For maintainability's sake, I have switched
the ini file format to that used by OS/2 INI files.  I have also integrated
the high score file with the INI file.  If you are really attached
to your high scores, email me your whack.hsc file, and I'll
convert it for you.  Otherwise, just delete it.

The Controls
------------
Number of Creatures:  	This control will let you adjust the number of
						creatures in a game, from ten up to 1000.  The
						default is 22.

Speed:  This control lets you adjust the frequency at which creatures
        appear.  Note that the speed control has no effect on the
        Surprise! level.

Restore Defaults:  This control restores the default number of creatures
                   and default speed.

Start Game: I think this one is self explanatory.

Stop Game:  Ditto.

Settings...:    This brings up the Settings notebook.  The notebook
                currently has three pages.

    Notebook Page 1:    This page contains image options and a preview
                        of the currently loaded image.  The name of the
                        current image is displayed at the top.  Buttons
                        allow you to change the image or restore the
                        default image.  You may also drag image files
						directly onto the preview window.  Any image file
						format support by MMOS/2 may be used.

    Notebook Page 2:    This page contains sound effect options.  The name
                        of the current sound effect is displayed at the
                        top.  Buttons allow you to change and try out
                        sound effects, and restore the default effect.  A
                        checkbox allows you to disable the sound.  You
                        may drag WAV files directly onto the notebook page.

                        If you don't have multimedia installed or don't
                        have a sound card, the options on this page will
                        be disabled.  If you have multimedia AND a sound
                        card supported by OS/2, and the options are
                        disabled, it's a bug.  Please let me know about
                        it.

    Notebook Page 3:    This page contains the settings for level of play
                        and for choosing the things that are saved to your
                        ini file when you exit the program.  The play
                        levels are:
                            Hey, I'm Serious! - This is the default play
                            level.  It's exactly what was in previous
                            versions.

                            Child's Play - For young children, just
                            learning to use a mouse, this level pops 'em
                            up slower and leaves 'em up longer.

                            Surprise! - Who knows when it'll pop up?
                            Other than that it'll be sometime between one
                            minute and one half hour since the last one, I
                            don't even know when.

                        The Save On Exit options are:
                            Bitmap Setting - Save the current bitmap
                            setting whenever you exit the program.

                            .WAV Setting - Save the current sound effect
                            setting whenever you exit the program.

                            Speed Setting - Save the current speed setting
                            whenever you exit the program.

                            Level Setting - Save the current play level
                            setting whenever you exit the program.

                            Creature Count Setting - Save the current number
                            of creatures whenever you exit the program.

                In addition to the notebook pages, the Settings dialog has
                three buttons.  Defaults, Save, and Done.  Defaults will
                restore the default values for bitmap, sound, and play
                level.  Save will save the current options, and Done will
                dismiss the notebook.

High Scores:    Displays the 10 best scores achieved.  In the high
                scores dialog box, you have the option to clear the
                high scores.  I placed this button far from the Ok
                button to make it more difficult to hit by accident.
                The high score dialog is context sensitive.  It shows
                only the high scores achieved at the current level of
                play.  Likewise, the CLEAR button will only clear the
                scores for the present level of play.

About Whack-A-Mole: Displays the support and copyright information for
                    Whack!  The "Register..." button has been left in but
					disabled for the freeware version.

Quit:   Another one that needs no explanation.


The Play
--------
Simply adjust the above-mentioned controls as desired, and hit the
start game button.  As creatures appear in random locations on the screen,
you must whack them as quickly as possible.  The titlebar of the main
window will keep track of the number of creatures created thus far in the
game.  If you don't want to play all the way to the end, simply whack
the creatures covering the Stop Game or Quit button, and click on said
button.  All the creatures will disappear, and the game will be over.


The Scoring
-----------
I had a rough time deciding how to score this, but finally decided on
the following:

Level                   Whack Time              Points
------------------------------------------------------
Hey, I'm Serious!       < .5s                   4*Speed
                        .5s - 1s                3*Speed
                        1s - 1.5s               2*Speed
                        1.5s - 2s               1*Speed
                        > 2s                    0
Child's Play            < 1.25s                 4*Speed
                        1.25s - 2.5s            3*Speed
                        2.5s - 3.75s            2*Speed
                        3.75s - 5s              1*Speed
                        > 2s                    0
Surprise                < .5s                   4
                        .5s - 1s                3
                        1s - 1.5s               2
                        1.5s - 2s               1
                        > 2s                    0

At the end of the game, if you've made it into the top 10, you'll be
given a chance to enter your name (up to 32 characters).  The top 10
high scores will then be displayed.

Internationalization
--------------------
I've moved most of my resources, and all of my strings, out of the
executable and into the included wam001.dll (001 is the US country
code).  If you wish to translate the strings in Whack! to
your native language, please email me.  I will send the file wam001.h,
which you should translate and send back to me as wamXXX.h, where
XXX is your country code.

As the new resource DLLs become available, I will place them on my
home page at

    http://www.randomc.com/~erlkonig

Note to DBCS users:  I'm pretty sure this won't work for you.  I don't
have any way to test DBCS code.  My apologies.

Known Bugs
----------
None.  Finally.


Registration
------------
Whack! is now freeware and no registration is necessary.

License and Disclaimer
----------------------
By using this software, you agree to the following terms.

This software may not be used for military purposes.  It may be used by
military personnel for nonmilitary purposes only.

History
-------
1.22a	July 1, 1999		Changed the name to keep from being sued.
							Made it free.
1.22    April 6, 1997       Changed the history list to say April, 1997
                            instead of 1996 for the previous two releases.
                            Got my first translation, which required some
                            code changes to automatically position buttons
                            and such.
1.21    April 5, 1997       Oops.  I was never really able to test the
                            country stuff.  Fixed a bug to not pop up
                            a message box when the country DLL isn't
                            found.
1.20    April 1, 1997       Added drag and drop for image and sound files.
                            Added support for new image formats.  Fixed
                            bugs.  Rewrote high score code again.  Added
                            registration key, sigh.
1.10    September 22, 1996  Added new speed levels and save options.
                            Reworked high score file handling to better
                            fit additional speed levels.
1.01    September 12, 1996  Fixed path bug
1.0     September 2, 1996   Initial Release

About the Author
----------------
I received my BS in Mathematics from MIT in 1993, and my MS in Applied
Mathematics from the University of Arizona in 1995.  I program in C (and
am learning C++) on OS/2, MVS, AS400, and Windows NT for FormMaker
Software, Inc.  I'm writing OS/2 shareware on the side to help pay back my
large college debt.


Thanks
------
A short list of those I'm indebted to.

* Andy Key, for releasing his excellent GBM source to the public domain.
* Whoever wrote BITMAP32 and published the source on the DevCon cd's.
* The guys at FormMaker software, for testing this stuff and ragging me
  when it didn't work.
* Mike Compton at FormMaker, for drawing my bitmaps.
* The authors of all the excellent OS/2 software, for setting a great
  example.
* Everyone who registers Whack-A-Mole and helps support further OS/2
  development.

