CCCT: Crunchy Christmas Carrot Tosser
=====================================
- A "game" in a few hours to tidy up some code I had.
- Several more hours exploring new code for the next tidy up
- Not

CREDITS
======
HyoChan for awesome title music - My Dear Rhubarb
- http://www.youtube.com/hyochan

Scott Lembcke for Chipmunk. A free, easy to use 2D Physics library.
- http://code.google.com/p/chipmunk-physics/wiki/Documentation

Tam Toucan for everything else
- http://tamtoucan.com

SUMMARY
=======
Throw carrots at the snowmen to score points.
Kill the snowman before the time runs out.
Complete all the "levels" for a pat on the back.

Mouse controlled, via Headtracker (dwell click) or mouse button.

Apologies for only Headtracker support, this isn't meant to be
a proper game, so I haven't spent the time putting in one switch etc.


RUNNING THE "GAME"
==================
To run CCCT with standard mouse button controls use

    CCCT_standard.bat
    
To run CCCT with headtracker support use

    CCCT_headtracker.bat
 
Running

    CCCT.exe
    
will use whatever config you last used e.g. standard or headtracker.


STORY
=====
Zombie Ninja Space Marine Snowmen are invading the Garden.
Only YOU! can destroy them using the

    !! Crunchy Carrots Of Chaos !!

to smite them down.



GUI
===
Menus are used to setup various things like the graphics, game options
etc. Functional without the "Fun" is probably the kindest description.

The Game shows you your score, a timer before the snowman attacks and
a selection of organic root vegetables (well actually it's only carrots).

The bottom half of the screen shows the snowman and the current carrot.
When you throw a carrot it will follow track it.

NOTE: If you resize the screen whilst playing then you have to pause and
resume before you can pick carrots back up. Would fix it, but really come
on this is just a 2 minute comedy game.


MENU OPTIONS
============
The usual set of options (sound, resolution, etc) can be changed via
the menus. Unfortunately some of these don't take effect until you
exit and restart. Notably

    Fullscreen On/off

There are also various game options that can be set. Here's a description

    SMOOTH   - Enable/Disable smooth lines

However, I took out all the lines in the graphics so if you notice a difference
when using this option please consult an optician.

There are also several .cfg files which can be played with if you are
so inclined. See the MODDING section below.



CONTROLS
========
1. Standard
------------
Press Left Mouse Button (LMB) to grab a carrot.
Release LMB or move the mouse out of the window to drop a carrot.
Release the carrot when moving the mouse to throw it.

Escape to pause, arrow keys or mouse to move in menus. Click or
enter to select in menus

2. Headtracker
--------------
Look at (dwell on) a carrot to grab it.
Mouse out of the window or to a bottom corner to drop it.
Release the carrot when moving to throw it.

Look at the bottom middle third of screen to pause.


MODDING
=======
Most of CCCT is driven from stuff in config files. These are simple text files
in the format

<KEY> == <value>

If you are bored or insane you can have a play around with these. Things may
well break, especially if you make a syntax problem e.g. miss a closing quote.
There are two methods to change things.

The first is to create a SETTINGS_CCCT.cfg file and put whatever
<KEY> == <value>
settings you want in it. This will take preferences over ALL other settings. 
If you want you can use a different filename beginning with "SETTINGS_" and pass
it as the first parameter to CCCT.exe. This allows you to have "profiles".

The other way to change things is to copy the config file with the setting you
want to change to the same location but with .mod added to the end. You can then
edit that file and the game will use your changes (unless CCCT_SETTINGS.cfg also
sets it). You can even remove entries from the .mod file and just those that set
new values e.g. You could create a CCCT_MENUS.cfg.mod file containing the line

   ITEM_CHOICES_MUSIC_VOL == "0,10,20,30,40,50,60,70,80,90,100"

if you objected to the lack of granularity the current 5 values provides.


1. CCCT.cfg
   --------
This is the main config file. As well as defining the main game settings this
also defines where to find the other config files. E.g. SOUNDS_CFGFILE.

As well as having a CCCT.cfg.mod file you can use any file by passing it's name
as the FIRST parameter to CCCT.exe, so long as it's not named "SETTINGS_<something>"


2. data/Config/CCCT/CCCT_SOUNDS.cfg
   ---------------------------
What sound files are used and how they are played.


5. data/Config/CCCT/CCCT_MENUS.cfg
   --------------------------
The setup and text of the menus.


8. data/Models/CCCT/*.cm.ply
   ----------------------
The physical properties e.g. mass, of the game items e.g. the Carrot, and how to
draw them.


9. data/Config/CCCT_Level1.cfg
   ----------------=====------
Sort of the map file for the game.


10. data/Config/CCCT/CCCT_Physics.cfg
    ----------------------------
Default parameters for the physics.



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, giving me awareness of OneSwitch
and a place to spurt words on the screen

DeleD for a simple 3D editor - http://www.delgine.com/

OpenGL for being a graphics API that's not D3D

OpenAL for being a sound API that's not Microsoft

Carrots everywhere for being orange.

You for reading this far!


HISTORY
=======
v0.9  First and only release(*)

(*) Unless the program becomes self-aware and starts to take over the world.
In which case I'll release a patch.


LEGAL STUFF
===========
Copyright 2010 Tam Toucan http://tamtoucan.com

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.
