A Maze Game
===========
- By Tam Toucan of Three Drops Software.

CREDITS
=======
Music by HyoChan
- http://www.youtube.com/hyochan

FTGL - Copyright (C) 2001-3 Henry Maddocks
- http://sourceforge.net/projects/ftgl/develop


SUMMARY
=======
Written for my four year old it's a simple maze game.

Guide the robot to the cheese (robots love cheese).

Rinse and repeat.

Full range of input schemes supported (onekey, oneswitch, headtracker).


RUNNING THE GAME
=================
Running amaze.exe will run the program using whatever config has been
set up (see GAME OPTIONS below). By default this uses the STANDARD
input scheme which uses keys, mouse or joypad to move the player.

There are some extra targets provided for different input schemes

    amaze_standard.bat
    amaze_onekey.bat
    amaze_oneswitch.bat
    amaze_headtracker.bat
    amaze_headtracker_arrows_edge.bat
    amaze_headtracker_arrows_player.bat

These are provided as quick starts for the different schemes. The
default input method can be changed by settings the "INPUT_METHOD"
config value (see GAME OPTIONS below).


GAME OPTIONS
============
The game options are controlled through the apple.cfg file.
Pretty much everything can be changes,  but it's probably best
to make a backup first. The config values all take the form of

    <config key> == <config value>

The <config value> can optionally be enclosed in double quotes.
For example

    FULLSCREEN_ON == NO

Editing the apple.cfg file and changing the NO to YES will start the
game in full screen.

Some Useful Config Values
-------------------------
The following is a list of some of the more useful config values to change

    SCREEN_WIDTH
    SCREEN_HEIGHT
    FULLSCREEN_ON
    MUSIC_ON
    SOUND_ON

    MAZE_SIZES

    INPUT_METHOD
    AUTO_PAUSE_DELAY          (For ONEKEY input)
    GAME_VIEW_BOX             (For HEADTRACKER input)
    PLAYER_MOVE_DELAY
    PLAYER_CHANGE_DIR_DELAY   (If using SPACE to move)


User Specific Options
---------------------
If you want to have user specific settings you can create a

   SETTINGS_<user>.cfg

file containing just the changed settings and pass it as the first
parameter when running the program. To do this

1) Right-click on "amaze.exe" and choose "Create Shortcut".
2) Right-click on "amaze.exe - Shortcut" and choose "Properties"
3) Click on the "Target" box text and press the "End" key.
4) Press space and type the name of your SETTINGS_<user>.cfg file.
5) Click "Ok" then press "F2" and rename the shortcut to something meaningful.

For example, if you had two kids and want different maze sizes for each then
create a file SETTINGS_kid2.cfg and put the config line

    MAZE_SIZES == "<values>"

in it along with any other changes you want.


CONTROLS
========
There are several different input methods to control the player. The chosen
method is controlled by the INPUT_METHOD config value. There are two config
files for each method. These are located in the data/config/inputs directory
and are named

   GAME_<input method>.cfg
   MENU_<input method>.cfg

In these files it is possible to change the keys, speeds etc of the input
method. You can even create your own new input methods (contact me on the
RetroRemake forums - http://retroremakes.com/forum).


1. STANDARD
-----------
In the game

   SPACE moves the player the current direction highlighted by the rotating
   square. The player continues to move until a junction is reached.

   ARROW keys or JOYPAD moves the player in the appropriate direction.

   LEFT MOUSE will move the player towards the point clicked.

   ESCAPE, RIGHT MOUSE, JOYPAD BUTTON2 displays the pause menu.

In the pause menu

   ARROWS, JOYPAD or MOUSE to pick item.

   SPACE, RETURN, LEFT MOUSE, JOYPAD BUTTON1 to select option.

   ESCAPE to quit game (see MENU_ECAPE_QUITS config option).


2. ONEKEY
---------
In the game

   SPACE moves the player the current direction highlighted by the rotating
   square. The player continues to move until a junction is reached.

   NO KEY PRESS for AUTO_PAUSE_DELAY seconds (default 15) and game will
   enter the pause menu.

In the pause menu

   SPACE to select the current option.


2. ONESWITCH
------------
In the game

   Press and Release SPACE moves the player the current direction highlighted
   by the rotating square. Player continues to move until a junction is reached.

   Hold SPACE for 1 second to enter the pause menu.

In the pause menu

   SPACE to select the current option.

3. HEADTRACKER
--------------
There are 3 styles of headtracker input. In the config files these are named
HEADTRACKER, HEADTRACKER2 and HEADTRACKER2. They correpond to the following

   HEADTRAKER:   Has four arrows around the maze edge and a pause icon.
   HEADTRACKER2: Has arrows around the player and a pause icon
   HEADTRACKER3: Moves the player towards the mouse and a pause icon

The last option is probably the most useful.

The arrows move the player in the appropriate direction. DWELLing on the
pause icon in the top left enters the pause menu.

In the pause menu

   DWELL on a menu option to select


THANKS
======
This would not exist if I had not stood on the shoulders of giants. Some of
those colossi are

   My son for being unbelievable

   RetroRemakes community for help, support, giving me awareness of OneSwitch
   and a place to spurt words on the screen

   Audacity for a great sound editor - http://audacity.sourceforge.net/

   OpenGL for being a graphics API that's not D3D

   OpenAL for being a sound API that's not Microsoft

   YOU! for reading this far!


HISTORY
=======
v0.90  First and hopefully only release.
v0.91  Headtracker arrows now highlight when selected
v0.92  Whitespace in config lists such as _SWITCH_LIST
       Images now 64x64 since 32x32 had corruption on my ATI card
       VSYNC_ON now works
v0.93  Used NEAREST sampling for graphics
       Redrew the robot

LEGAL STUFF
===========
This software can be distributed by non-commercial means for
free as long as the entire package is unaltered and all files
included.

There is NO COMMERCIAL DISTRIBUTION of this package or any of
it's contents without prior permission from the copyright
owner.  This includes a fee for copying and distributing this
software.  This includes a on a cd, dvd or other distribution
methods.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
