Title    : Chase cam, v2.1
Filename : chasecam.zip
Version  : 2.1
Date     : 14 Sep 96
Author   : Rob Albin
Email    : albinatr@apci.net
Credits  : id software, and Ferrara Francesco and Olivier
           Montanuy for bringing us QuakeC Manual v1.0,
           Vhold <vhold@netwizards.net> for his Homing Missiles
           v.001 QC patch, I couldn't figure the velocity math until
           I found a better formula in his code for changing his
           missile's direction.

Type of Mod
-----------
Quake C  : yes
Sound    : no
MDL      : no


Format of QuakeC
----------------
unified diff  : no
context diff  : no
.qc files     : yes
progs.dat     : no


Description of the Modification
-------------------------------
bind a key to impulse 30 and press it to toggle between chase cam and
normal view.  Works as a single or multi-player patch.

Complete range of options for customizing the speed, distance, and
vertical offset the cam tracks at.  (See below.)

(Performance issue: this doesn't add overhead to the main tracking
function - other than one extra if statement.)

In MP you'll know who's in this view (chase eyes :)

How to Install the Modification
-------------------------------
All the mods are in WEAPONS.QC, they're cleaned up and modular so
you can easily use this patch with others.

Verbose version:
Make a sub-directory in quake called 'chasecam' and make a sub-dir in
'chasecam' called 'src'.  Copy all original QuakeC source files into 'src'
copy weapons.qc over the original, and run qcc from inside the directory,
a new progs.dat file will be created in the parent dir 'chasecam'.

copy autoexec.cfg, config.cfg, and quake.rc from 'id1' into 'chasecam'
add:
  bind <a key> "impulse 30"
to autoexec.cfg
From directory 'quake' type:
  quake -game chasecam

You must have the QuakeC package from id, which include instructions for
use, and the compiler.  Various versions are available under
ftp://cdrom.com/pub/quake/quakec/utils

Technical Details
-----------------
Changes since version 1.0:
-re-coded to work as a multi-player patch (still learning how entities
 work, this modification verified some things I hadn't been too sure
 of before.)
-automatically switches back to normal view if you aim too high or
 fall in water above the waist, since it isn't a good view-point in
 either situation. 

Changes since version 1.1:
-Works using missile physics to move the point of view instead of
 setorigin,  animation is smooth now.
-Doubles it's speed if you move out of view to keep you in front when
 backtracking.
-General tracking improvements to get it working better.

Changes since version 2.0:
- Customization options

impulse 31  loop modifying option between tracking speed,
            distance and verticle offset

            (depending on current option being modified)
impulse 32  fast/forward/up
impulse 33  slow/backward/down

Tracking speed is either fast (always doubled), or slow (only doubled
when you move out of view).
The other two options step by 4's, (within a sane range :)

After finding your numbers, here's where to set them as the
defaults:

WEAPONS.QC, line 1210:

// defaults reset every time level starts
float chasecam_slow = FALSE, chasecam_dist = 72, chasecam_zofs = 24;

Bugs:
Since there are many conditions that the cam can be in trying to
track and clip for walls, and especially now that you can set the
distance out far where a single turn causes it to fly through a large
arc, be prepared to toggle off and on.  Or have the view not behave
exactly like you think it should.  I'm working on it, thanks for
any e-mail that has constructive ideas and/or better code examples :)

Comments:
And of course, playing in this view for an extended time just makes
you appreciate the 1st person perspective even more :)  I've had the
opinion I was making a secondary view with this project from the
start.  That's why I made it quick to toggle back under certain
conditions, and left the change back to normal view instant so you
hardly even notice in a fight.

Copyright and Distribution Permissions
--------------------------------------

Authors MAY use these modifications as a basis for other
publically available work.

You may distribute this Quake modification in any electronic
format as long as this description file remains intact and unmodified
and is retained along with all of the files in the archive and no fees
other than the costs of distribution are charged.

Availability
------------
Online services: MSN Computer Games File Lib
FTP: cdrom.com/pub/quake/quakec/misc