Sniper City Shootout
====================
A game. Of sorts.

- By Tam Toucan of Three Drops Software
    http://tamtoucan.com
    http://twitter.com/tamtoucan


CREDITS
=======
Me and the Voices In My Head.


SUMMARY
=======
Shoot the snipers before they shoot you!
Look for the muzzle flash to help spot them, but beware the red line
of their laser sights. It means they're about to shoot!


RUNNING THE GAME
================
Running sniper.exe will run the program using whatever config has been
set up, by default this uses a windowed screen of 1024x512. To change
or reset the configuration to fullscreen/windowed use the following
scripts

  sniper_windowed.bat
        starts the game in a 1024x512 window.

  sniper_fullscreen.bat
        start the game in fullscreen using desktop resolution.

The first time the game is run a screen will be displayed prompting for
the input control method. There are four different methods

1. ONEKEY Control
-----------------
  A single key (SPACE by default) is used for input. The
  difference from ONESWITCH is that the user can only
  provide a single input with it; that the key has been
  PRESSED.

  The Menu options are cycled through with time left on the
  current option shown as a reducing coloured rectangle.
  To select an option press the key.

  The game will automatically aim the cross-hair at snipers and
  you must press the key to shoot.

  To PAUSE the game simply don't press a key until the pause
  menu appears (default 10 seconds). This can be changed
  using the configuration.exe program and setting the
  ONEYKEY AUTOPAUSE option.

2. ONESWITCH Control
--------------------
  A single key (SPACE by default) is used for input, the
  difference from ONEKEY is that the user can provide two
  inputs with it; that the has been PRESSED and that the
  key has been HELD.

  The Menu options as selected by HOLDING the key. The time
  to hold the key is shown as a reducing coloured rectangle.
  If the key is released before the rectangle disappears then
  the current option moves to the next.

  So a shorter PRESS of the key is used to move between options
  and a long HOLD is used to select.

  The game will automatically aim the cross-hair at snipers and
  you must press the key to shoot.

  To PAUSE the game hold the key down until the pause menu
  appears (default 4 seconds). This can be changed using the
  configuration.exe program and setting the
  ONESWITCH HOLD PAUSE TIME option.


3. HEADTRACKER Control
----------------------

  The mouse cursor, but not mouse buttons, is used for input.

  To select a Menu option the cursor must DWELL (be placed on)
  the option until the reducing coloured rectangle disappears.

  The game will automatically zoom the display in if there is
  a sniper near the middle of the screen. The display will
  zoom out if there is no sniper visible.

  To shoot the cursor must be on a sniper, without moving off,
  for a default of one quarter of a second. This can be set
  using the configuration.exe program and changing the
  AUTOFIRE DELAY option.

  To pause the game don't move the mouse until the pause menu
  appears (default 4 seconds). Specifcally if the mouse stays
  within the screen area defined by the AUTOPAUSE MOUSE BOX
  for the time given by HEADTRACKER AUTOPAUSE value then the
  game will pause. These values can be changed using the
  configuration.exe program.



GAME CONFIGURATION
==================
Lots of options are configurable. To change them run the

    configuration.exe

program. This will use the same input method (ONEKEY, ONESWITCH,
HEADTRACKER or STANDARD) as currently be used for the game (or
will prompt for the method if none has been chosen).

Descriptions are provided for all the options. To reset all the
options back to their defaults run

   RESET_CONFIG.bat

NOTE: This also clears the current input method and so the game
will prompt when re-run. So use this if you choose the wrong
control method.

GAME DIFFICULTY
---------------
There is a game level called 'CUSTOM' which can be selected from
the title page. This uses values which can be set using the
configuration.exe program. You can therefore make the game as
easy or hard as you like.

There are also the AUTOAIM, AUTOFIRE and AUTOZOOM options. In
fact if all three of these are turned on the game will play
itself and beat the EASY level.

ADVANCED TWEAKING
-----------------
There are lots of other options in the grape.cfg file. If you
are feeling adventurous you can edit this file (maybe take a
copy first!) and see what you find.


CONTROLS
========
The method of input is chosen the first time the game or the
configuration editor is run. To chose a diferent one the
RESET_CONFIG.bat script must be run. See the RUNNING THE GAME
section for full details of the control methods.

Here is a summary (keys and times are defaults, use the
configuration editor to change them)

   STANDARD
      AIM with mouse
      FIRE with left mouse or SPACE
      ZOOM with mouse wheel or Z/X or Y/X
      PAUSE with right mouse or ESCAPE

   HEADTRACKER
      AIM with mouse look
      FIRE automatically when cross-hair on sniper
      ZOOM automatically when cross-hair near sniper
      PAUSE sorry, not supported

   ONEKEY
      AIM automatically when sniper appears
      FIRE with SPACE
      PAUSE sorry, not supported

   ONESWITCH
      AIM automatically when sniper appears
      FIRE with left mouse or SPACE
      PAUSE by holding SPACE for 4 seconds


TROUBLESHOOTING
===============
The latest version of the game can be found at

    http://tamtoucan.com/

or (direct link)

    http://tamtoucan.com/games/sniper.zip

The game tries it's best to work with different graphics cards, but there
maybe some problems (if so please tell me!). One complex area is the method
of updating the map texture. If the game runs slowly or fails to start then
you could try changing the MAP_UPDATER value.

Edit the grape.cfg file and search for MAP_UPDATER. Then comment out the
current choice (CHOOSE_UPDATER) by putting a '#' at the start of the line
and uncomment one of the other options. E.g. to select TSUB_UPDATER the
file would contain

#MAP_UPDATER == FBOS_UPDATER
#MAP_UPDATER == BLIT_UPDATER
#MAP_UPDATER == PBOS_UPDATER
MAP_UPDATER == TSUB_UPDATER
#MAP_UPDATER == CHOOSE_UPDATER

The TSUB_UPDATER should always work, so try that if the game crashes. It
may however be slower than the other options.

NOTE: Your graphics card may not support all these options, if so the game
will fail to start (it will run, but starting a game will crash)

You can also try running the game from a command window and checking for
an error message. That won't actually help, but you can then contact me
with it :)


CONTACT
=======
I can be found

  Skulking around the retroremakes forum
    http://www.retroremakes.com/remaketalk/

  Twitter
    http://twitter.com/tamtoucan

  Email
    dr@tamtoucan.com

I'd love you hear from you; Love or Abuse or just Hello!


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

   RetroRemakes community for help, support, and a place to spurt words

   GloriousTrainwrecks for existing thereby making the world a better place

   Barrie Ellis (@OneSwitch) for the great work he does and help with this

   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.50  First, very basic release for GDC Pirate Kart 2012
v0.90  Functionality:
       * Improved/fixed scrolling
       * Added continuous scroll at edges
       * Added blood splat
       * Added game difficulty levels
       * Added title screen "menu"
       * Support for fullscreen and any window size
       Bug fixes:
       * Remove flash/laser if kill sniper
       * Fixed graphic glitches for small snipers
       * Fixed problems with integrated graphics
       * Lots of minor fixes and improvements

v0.95  Functionality:
       * Added HEADTRACKER support (auto-zoom/fire)

v0.96  Functionality:
       * Tweaked EXTREME mode to make it harder
       Bug fixes:
       * Pause->Quit->Start was broken

v0.97  Functionality:
       * Added VERY EASY game level
       * Added CUSTOM game level
       * Added ONEKEY/ONESWITCH support
       * Added Input Selection and Info screen
       * Added HELP button to title screen
       * Added Configuration editor
       * Various minor tweaks

v1.00  Finished!


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.
