ORACER(test2)	
 
This is the ORACER (test2) readme file.
You must read and agree to this licence before running any executable component of this archive.
Licence	

THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
!!WARNING!!	

This program/demo/test is in an early stage of development and not fully tested. DO NOT RUN CRITICAL SOFTWARE whilst running this program. As stated in the licence.txt I(the author, see below) AM NOT RESPONSABLE FOR ANY CONSEQENCES OF RUNNING THIS PROGRAM.
General	

This is the second test release of an ODE based racing game. It is a fairly large improvment on the old version. See changes below.

It is not intended to be a simulator, but a (hopefully) fast arcade racer. Think Micromachines, dectruction derby, super skidmarks, that kind of thing.
Features	

•	3D Gfx & Sound
•	Heightmapped terrain
•	Particle systems
•	Stenciled shadow volumes
•	Environment mapped cars
1 pass on cool hardware (spheremapping or cube mapping)
2 pass should work on any hardware (spheremapping)
•	  Basic car ai
•	Lens flare
•	'Quake style' in game console
•	Stuff i forgot (see changes)
Installation	

Extract all the files in the archive to a new directy. The directory structure of the zip must be preserved or the game wont find its resourses.

(dlls and exe together and all data in /data)
Running the game	

Run the game.exe located in the folder you extracted to. The game should pop up a console window and start spewing text as it initalises. If all goes well a game window will appear.
How to play	

At the titlescreen you can choose a track to play on, or change a few options. Press Esc to switch between the titlescreen and the game (only when a track is loaded). Keys can be redefined in the menu.

Note: changes made in the "game options" menu have no effect untill the track is reloaded. (goto the play menu and select a track)

In the game, default controls are 

w - accelerate
a - steer left
d - steer right
s - break
r - shift up a gear
f - shift down a gear
t - recover the car
0-9 - camera modes

There is NO automatic gear mode, you'll have to manage to change gear yourself for now. imho, this is more fun. To pause the game press Esc (titlescreen). Further commands can be accessed only by the console.
Console	

To access the console press ` (the key above tab) at any time.

Type a command into the console and press return eg:

To get a list of console commands type cmdlist
To get a list of console variables type cvarlist
To get a list of bindable controls type bindlist
To get a simple help type help

Press up/down arrow to navigate the command history.
(there is no autocomplete, maybe soon)

commands
loadtrack trackname [loads a track]
newrace [starts again on this track]
testrace [starts with no race animations/delay]
fullscreen [toggles fullscreen mode]
bind [binds keys]
unbind [unbinds a key]
chasecam number [choose a chasecam] 
drivebycam [drive by camera] 
(more in cmdlist)

console variables are set by typing there name followed by the desired new value. To read the current value, just type the variable name. Most are console variables for menu items.
Credits/Feedback	

All feedback is welcome.

Author: Code, graphics and sound by Matt Barnett
Contact: gunther@dial.pipex.com
Website: http://ds.dial.pipex.com/town/terrace/qg20/matt

Thanks to:
The authors of all the librarys i am using.
Requirements	

•	Windows (win98SE, Win2K, WinXP)
•	DirectX needed for sound (about version 7 or better)
Recommended spec	

•	Windoze (98SE or better, Win2K or XP recommended)
•	Full OpenGL accelerated driver
•	about 32Mb graphics memory
•	about PIII 500Mhz
•	Fast CPU and/or Graphics card.
Troubleshooting	

General

Problem: OpenAL Initalisation failed.
Solution:
This error occurs when OpenAL could not be initalised.
Can be caused by wrongly installed drivers.
(if you have upgraded your soundcard you MUST uninstall the drivers for the old one)
DirectX is also required for sound on Windows because OpenAL depends on it.
Problem: An OpenGL error occured.
Solution:
Can be caused by bad OpenGL drivers or incorrect OpenGL code on my
part. If the error occurs during initalisation then you can just 
ignore it and play anyway. If the error occurs continously during the game,
then let me know (+ all system info/driver versions) and i'll do my best
to release a fix.
Problem: The game runs to slow.
Solution:
Run the game in a lower resolution or a smaller window.  Adjust the gfx options, for example, turn off shadows and envmapping.
Pixel formats
The game works best with 

32 bit color buffer
24 bit depth buffer
8 bit stencil buffer

If the game complains about less than 8bits of stencil,
or less than 24bits of depth
MATROX G400 Users:
There are many issues with the OpenGL ICD(?) for the G400 card,
the worst being the shit buffers it gives you (sometimes).

If the game complains about stencil, or less depth goto
the matrox control panel and check the box for "Use 32bit Z-Buffer".
This will allow the card to allocate the 32-24-8 setup.

(i dont know if this is a good idea on the 16Meg card)
Crashes etc:
If the game crashes, especially if it happens more than once, i would like to know. Feel free to email me with the details of the crash. (see Credits/Feedback)
Changes (test1->test2)	

* Added a GUI
* Title Screen / Menu system
* Console (quake style). (console variables,console commands,key bindings)
* Race Logic.
* The game now plays a three lap race on whatever track is loaded.

* Shadow problems fixed 
(Implemented Z-fail stencil operations (Carmacks reverse). 
Shadow volumes are now capped (front and back), making
shadows slower but correct)
* Togglable fullscreen mode (console-> fullscreen)
(Only supports 800x600x32 for now) 

* Re-organised this readme a bit. 
* Slightly improved physics.
* Simple car-engine code, 3 speed gearbox + reverse and neutral. friction added.
* Graphic for speedometer, revmeter, gear indicator, map.
* Static objects (Immovable track objects)
* Scripted(?) camera system. Chase cameras and drive by camereas.
* Invisible Wall(tm) added. No more driving into the void.
* Sound improved. Both the sound code and sound effects.
Todo/Bugs	

* Caravans can end up inside the car they are attached to (fix by joint contraints)
* Race position calculation is off when player laps computer cars
* Computer cars cheat from time to time.
* Do a linux port.
* Spheremapping / cubemapping artifacts
  Some discussed in this thread...
  (http://www.opengl.org/discussion_boards/ubb/Forum3/HTML/008063.html)
* Known crappy OpenGL drivers cause problems ( Matrox G400 | ATI Rage etc )
* Texture resolution is low to save space in the archive.
* Texture compression is under used.
* Stack overflow. (not occuring anymore)

* Car physics isnt right yet.
Friction is too low at low speeds.
Cars dont act too well during car-car collisions.
Bug in breaking/friction, (no friction untill player breaks!)
* Car engine sound doesnt have a good enough range.
After playing with a few car sounds, i think i found one that
sounds ok/good enough using only pitch modulation. OpenAL does
not seem to support changing the frequency of a sound as it plays
on a specific source. (only pitch)
* Decals for car damage? (like mafia)
* Optimize rendering
* Optimize lens flare
* Improve car AI
* Improve car handling/physics
* More / better tracks
* More types of trackside objects
* More sounds
* Stuff to smash.
Tested on	

•	Win2K AMD TBird 1.4Ghz + geForce3 (fast)
•	Win98SE P2 350Mhz + Matrox G400 (slow)
Previous version tested on...
•	WinXP AMD TBird 1.4Ghz + geForce2 (fast)
•	Win2K + ATI Radeon 8000 series 
•	Others
Dev corner	

Laungage - C++ (STL, classes, inheritance)
Graphics - OpenGL
Sound - OpenAL
Physics - ODE
Image loading - DevIL/OpenIL
Windowing - Win32API (interface for others)
Modelling & UV - Wings3D, Milkshape3D
2D Art - Photoshop, Gimp, terragen.

Compilied for Win32 only so far, but the code is portable, so a linux port is a possibility. I only need to add some code to open a window in X and setup OpenGL. I now have a working linux installation to get going with.

ODE is an awsome open source physics library. I have coded in support for heightmaps into ODE itself.

Wings3D was used for most of the modelling and UV mapping. Milkshape for getting it into a decent format (3DS files)