Client Commands Reference Guide

Last Updated: September 7, 2000

Overview

Client side commands refer to any commands that are used in the client game DLL (cgame DLL). These commands are placed and executed on frames of animation. When a TIKI model’s animation is played back on the client, the commands associated with those frames are executed. This document also contains a list of client INIT commands. These are commands that are ony executed on the client when the model is initialized. These commands deal with setting up emitters.

Example

This is a list of client commands and parameters for the client. These commands can be placed in a TIKI file for execution. Here is an example to get started:

Animations

{

power power.tan

{

client

{

first tagspawn tag_hand

(

count 50

model models/flameball.tik

velocity 50

randvel 0 0 200

avelocity random 360 random 360 random 360

life 1

accel 0 0 -100

scale 0.1

fade

bouncefactor 0.8

offset crandom 3 crandom 3 crandom 3

)

}

}

}

Here is an explantion of what is going to happen when the first frame of the "power" animation is executed.

After the definition of the animation "power power.tan" You can list client and server side commands that will be executed on the specified frames. In this case there is a client command on the first frame of the power animation. Notice that the command is called "tagspawn" and it has one parameter on the same line called "hand". This command allows you to spawn things ( particles, models, sprites ) from the tag that is built into the model ( in this case it’s the hand tag ).

The "(" on the next line starts a block of modifiers and parameters that will affect the spawning properties of the command. There are 11 lines of parameters after the "(" and then there is a closing ")". The ")" signifies the end of the parameters/modifiers and finishes off the command. Each one of the modifiers is explained below, along with the commands like "tagspawn".

Client Animation Commands

These commands can be executed on any frame of any animation on the client. These are placed in the client frame commands of the TIKI file

alias <path> <alias> | Creates an alias to to the specified path
aliascache <aliasname> <resourcename> | Caches in the specified resource name and creates the creates the alias specified to reference it.
cache <resourcename> | Caches in the specified resource name
client <arg1> <arg2>… | Execute the specified args on the client. This is gor use in global scripts.
commanddelay <time> <commandnum> <command> [arg1]…[argN] | Delays the <command> by the <time> specified. There wll be a delay between the execution of the command. The <commandnum> must be provided by the user, It is used to keep track of the different commands and the times they are executed.
dlight <red> <green> <blue> <intensity> <life> <type> | Spawn a dlight from the origin of the model. The <type> of the light can be normal, lensflare, or viewlensflare
emitteroff <emittername> | Turns "off" the specified emitter
emitteron <emittername> | Turns "on" the specified emitter
entcolor | Set the color(modulate) of the model.
loopsound <soundfile> [volume] [mindistance] | Plays the specified sound in a loop
originspawn ( [parameter list] … ) | Spawn "things" from the origin of the model. The parameter list after the command specify modifiers on the command.
randomchance <amount> <command> [arg1]…[argN] | This will randomly execute the specified command. The amount ranges from 0 to 1 and is the percentage chance that the command will execute.
sound <soundfile> [channel number] [volume] [mindistance] | Plays the specified sound. Channel, volume, and mindistance are optional
swipe | Add a segment to the swipe.
swipeoff | Signal the end of a swipe
swipeon <tagname> <size> <life> | Signal the start of a swipe.
tagdlight <tagname> <red> <green> <blue> <intensity> <life> <type> | Spawn a dlight from the specified tag of the model. The <type> of the light can be normal, lensflare, or viewlensflare
tagspawn <tagname> ( [parameter list] … ) | Spawn "things" from the tag specified on the model. The parameter list after the command specify modifiers on the command.
tagbeamspawn <tagname_start> <length> | Spawns a beam from <tagname_start> of the specified <length>. The direction is derived from the tag.

Client Initialization Commands

These commands set up client side effects that are not associated with animations These are placed in the client init section of the TIKI file.

tagemitter <tagname> <emittername> ( <parameter list> … ) | Creates a tag emitter named <emittername> that spawns out models from <tagname>. This is not associated with animation frames, so it can be used for static things that emit models without animating.
tagbeamemitter <tagname_start> <tagname_end> <emittername> { <parameter list> } | Creates a beam emitter named <emittername> that spawns beams from tagname_start to tagname_end. This is not associated with animation frames, so it can be used for static things that have beam effects on them

Parameters for Spawning stuff

These are used in the above commands to modify the "things"( tempmodels ) that are spawned from the emitters/spawn points.

accel <accelx> <accely> <accelz> | Sets the acceleration for the tempmodel. You can simulate gravity by setting the accelz component to a negative value (E.g. accel 0 0 –200)
align | Aligns the tempmodel in the direction it is traveling
alpha <alpha_value> | Sets the alpha value of the tempmodel
angles (crandom|random) <yaw> (crandom|random) <pitch> (crandom|random) <roll> | Sets the angular velocity of the tempmodel. Use the keywords random or crandom as stated in the randvel command.
anim <anim_name> | Set the anim of the spawned tempmodel.
animateonce | Animate the tempmodel once before killing it
avelocity (crandom|random) <yaw> (crandom|random) <pitch> (crandom|random) <roll> | Sets the angular velocity of the tempmodel. Use the keywords random or crandom as stated in the randvel command.
bouncefactor <bounce_value> | Sets the bounciness of the tempmodel. Values greater than 1 will make the model gain speed when it bounces.
circle | Spawns the tempmodels in a circlular pattern on the XY plane
collision [‘water’] | Turns on collision for the tempmodels (saves CPU if you don’t need collision ). Add the water keyword if you want the particles to collide with water.
color <red> <green> <blue> <alpha> | Sets the color of the tempmodel. This color is modulated with the tempmodel when it is drawn.
colorrange <startRed> <startGreen> <startBlue> <endRed> <endGreen> <endBlue> | Set the color range to be interpolated over the life of the tempmodel
count <number> | The number of tempmodels to be spawned.
dietouch | Kills the tempmodel when it touches a solid surface.
dlight <r> <g> <b> <intensity> | Makes the emitter a dynamic light source of color (r,g,b) and the specified intensity ( radius ).
fade | Fades the tempmodel to complete translucency over the life.
fadein <time> | Fades the tempmodel in over the amount of time specified.
flicker | Causes the tempmodel to flicker randomly
globalfade <"in" | "out> | Makes the spawned tempmodels fade in or out at the same rate based on the number of frames in the animation of the parent animation.
inwardsphere <radius> | Spawns the tempmodel at radius distance from the origin and moves them inward towards it.
life <seconds> | The life of the spawned tempmodel.
model <modelname1> [modelname2] [modelname3] … | The name of the model you want to spawn. If more than one model is specified then the model is chosen randomly from the list
offset (crandom|random) <offsetx> (crandom|random) <offsety> (crandom|random) <offsetz> | Sets an offset of the tempmodel. Use the keywords random or crandom as stated in the randvel command.
offsetalongaxis (crandom|random) <offsetx> (crandom|random) <offsety> (crandom|random) <offsetz> | Sets an offset of the tempmodel. Use the keywords random or crandom as stated in the randvel command. The offset is applied in the coordinate system of the parent
parentlink | Links the spawned tempmodel to the parent. If the parent moves, so does the spawned tempmodel.
randvel (crandom|random) <speedx> (crandom|random) <speedy> (crandom|random) <speedz> | Adds a random velocity to the tempmodel in the x, y, and z axis. Use the keyword random to make the value between 0 and speed. Use the keyword crandom to make the value between –speed and speed. If you don’t use the random or crandom keywords, then the added velocity will be constant.
scale <scale_value> | Sets the scale of the tempmodel to value.
scalemax <scale_value> | Sets the maximum scale of the tempmodel to value.
scalemin <scale_value> | Sets the minimum scale of the temp model to value. By setting this, the spawned model will be randomly scaled to a value between scalemin and scalemax.
scalerate <scale_value> | Animates the tempmodel by scaling it in size according to the specified scalerate value.
spawnrate <rate_value> | Sets the rate of spawning for an emitter. This parameter is only valid for emitters that have been defined for the model.
sphere | Spawns the tempmodels traveling in in an outward sphere pattern from the origin.
startoff | Starts an emitter in the "off" state.
swarm <freq> <maxspeed> <delta> | Causes a swarming effect on the tempmodels. freq is the frequency at which the tempmodel changes direction. maxspeed is the maximum speed of the tempmodel. delta is the amount the tempmodel moves toward the origin to get the swarming effect.
texanimtime <time> | If you are spawning animated texture sprites, this sets the animation time for that sprite.
trailcolor <red> <green> <blue> <alpha> | Sets the color of the trail for the tempmodel.
trailradius <radius> | Sets the width of the trail
trailtime <seconds> | Sets the life of the trail in seconds
velocity <speed> | The speed of the tempmodel. It will travel in the direction based on the orientation of the parent.
wavy <amount> | Causes the tempmodel to move in a wavy effect. amount sets the amount of the wavieness.

Beam Specific Parameters

These parameters are only applicable to beamemitters and tagbeamspawn

numsegments <num> | Set the number of segments in the beam
minoffset <offset> | Set the minimum offset from center that the beam will move
maxoffset <offset> | Set the maximum offset from center that the beam will move
beamshader <shader_name> | Set the shader that the beam will use
beamdelay <delay> | Set the delay (in seconds) between the drawing of beams
beamtoggledelay [random] <delay> | Set the delay (in seconds) that is used to toggle the beams off and on. If random is used, then the delay will be between 0 and delay.
beampersist | Effect that makes the beams persist and fade out over time
beamsphere <count> | Shoot the beams out in a sphere pattern. If the radius (see above) is set, beams will be drawn at this distance from center