A technical specification for Carmageddon GROOVEsGROOVEs are used for "animating" models (hereafter known as Actors) within Carmageddon 1 and 2. While fairly basic in themselves they can be used to add depth and realism cheaply and effectively.
StructureActorName // The name of the actor to animate
Lollipop // Lollipop settings
Trigger // When the groove should animate
Path // Path settings
Animation // Animation settings
"NEXT GROOVE" after each one, on a line of it's own, or
"END OF GROOVE" after the very last one.
DetailsActorNameThe ActorName is simply the name of the model you wish to animate.
LollipopWhile not used in either Carmageddon 1 or 2 the lollipop code still works! Acceptable values are
xLollipop
yLollipop
zLollipop
not a lollipop
Anything else will be treated as
not a lollipop
. Lollipops can be used for "always face the camera" sprites such as the peds in Carmageddon 1. Toshiba-3 has an excellent article in the subject (
here)
TriggerThe trigger dictates when the effect should occur. Acceptable values for GROOVEs are
constant
distance
GROOVEs on cars are usually
constant
, maps are usually
distance
PathPath based animation will move the Actor. Acceptable values are
straight
circular
no path
Anything else will be treated as
no path
. Each path has different settings.
if
straight
PathMovement
absolute
harmonic
linear
flash
Centre
if absolute
GroovyFunkRef
else
CyclesPerSecond
Distance
if
circular
PathMovement
absolute
linear
CentreOfCircle
if absolute
GroovyFunkRef
else
Speed
Radius
Axis
x
y
z
AnimationAnimation will distort/deform the Actor. Acceptable values are
rock
shear
spin
throb
no animation
Anything else will be treated as
no animation
. Each animation has different settings.
If
spin
SpinType
controlled
continuous
if controlled
GroovyFunkRef
else
CyclesPerSecond
Centre
Axis
x
z
if
rock
RockType
absolute
harmonic
linear
if absolute
GroovyFunkRef
else
CyclesPerSecond
Centre
Axis
x
y
z
Degrees
if
shear
ShearType
absolute
controlled
if absolute or controlled
GroovyFunkRef in the form of a vector3 (0,GFR,0)
Centre
Extents
if
throb
I LIKE TURTLES
Community examplesMapsSolar Flare by Toshiba-3 has a rather fancy GROOVE in the middle of the map
CarsSMARTMOVE by Harmalarm is a shining example of what can be achieved through GROOVEs
Technical examplesI plan on making some rough and ready cars and maps to illustrate the various GROOVEs. These will be available here when done.
Additional reading"Advanced" map tricks - this thread over at the CWABoard has a wealth of excellent and advanced tricks.
Suspension Mechanics - C2Scientist explains how to set up vehicle suspension
Break the 1000 triangle limit, with a GROOVE! - Toshiba-3 describes a sneaky trick to beat the 1000 poly limit in C2.
Angled GROOVEs - Toshiba-3 explains how to angle your GROOVEs.
Opposite turning wheels - Toshiba-3 details how to make your wheels turn the opposite direction to what they usually would.
The 5th suspension - Toshiba-3 fixes a bug in C2 using his enormous brain and some clever GROOVEs
Lollipops - Toshiba-3 is at it again, this time bringing sprites to Carmageddon