Difference between revisions of "ParticleFields"
Line 1: | Line 1: | ||
− | List of particle fields: | + | List of particle fields:<br> |
− | + | <br> | |
− | ! Note: all fields default to 0 or "" unless otherwise indicated or inherited from special case particle types. | + | ! Note: all fields default to 0 or "" unless otherwise indicated or inherited from special case particle types.<br> |
− | + | <br> | |
− | Spawn Related Fields | + | Spawn Related Fields<br> |
− | + | <br> | |
− | . *count (count)* | + | . *count (count)*<br> |
− | + | - count: specifies number of particles to spawn with point effects<br> | |
− | - count: specifies number of particles to spawn with point effects | + | <br> |
− | + | . *step (step)*<br> | |
− | + | - step: specifies Quake units per particle to spawn with trails<br> | |
− | . *step (step)* | + | ! Note: step (x) is a synomyn for count 1/(x)<br> |
− | + | <br> | |
− | - step: specifies Quake units per particle to spawn with trails | + | . *die (die)*<br> |
− | + | <br> | |
− | ! Note: step (x) is a synomyn for count 1/(x) | + | - die: specifies time in seconds it takes for the particle to die. A value of 0 means that the particle will be rendered for a duration of 1 frame.<br> |
− | + | <br> | |
− | + | . *diesubrand (rand)*<br> | |
− | + | <br> | |
− | . *die (die)* | + | - rand: subtracts a random value from 0 to rand from the die time on particle spawn, and causes the particle to "decay" for that amount of time<br> |
− | + | <br> | |
− | - die: specifies time in seconds it takes for the particle to die. A value of 0 means that the particle will be rendered for a duration of 1 frame. | + | ! Note: Using diesubrand with delta ramps will cause weird things to happen.<br> |
− | + | <br> | |
− | + | . *assoc (particleeffectname)*<br> | |
− | . *diesubrand (rand)* | + | - particleeffectname: name of other particle effect to execute when the current particle effect is executed<br> |
− | + | ! Note: Using assoc to loop back to the same particle effect is invalid.<br> | |
− | - rand: subtracts a random value from 0 to rand from the die time on particle spawn, and causes the particle to "decay" for that amount of time | + | <br> |
− | + | . *emit (particleeffectname)*<br> | |
− | ! Note: Using diesubrand with delta ramps will cause weird things to happen. | + | - particleeffectname: specifies the particle effect that the current particles should emit<br> |
− | + | <br> | |
− | + | . *emitinterval (time)*<br> | |
− | + | - time: specifies the time between the emitting of the chosen effect (a value of less than 0 means to emit the chosen effect as a trail)<br> | |
− | . *assoc (particleeffectname)* | + | <br> |
− | - particleeffectname: name of other particle effect to execute when the current particle effect is executed | + | . *emitintervalrand (timerand)*<br> |
− | ! Note: Using assoc to loop back to the same particle effect is invalid. | + | - timerand: adds a value between 0 and timerand to the time interval on emit<br> |
− | + | <br> | |
− | . *emit (particleeffectname)* | + | . *emitstart (time)*<br> |
− | - particleeffectname: specifies the particle effect that the current particles should emit | + | - time: specifies time that emitting of the chosen effect should start after particle spawn<br> |
− | + | <br> | |
− | . *emitinterval (time)* | + | Render Related Fields<br> |
− | - time: specifies the time between the emitting of the chosen effect (a value of less than 0 means to emit the chosen effect as a trail) | + | <br> |
− | + | . *type (type)*<br> | |
− | . *emitintervalrand (timerand)* | + | - type: specifies the type of particles to use for the effect, possible types are "normal", "beam", and "decal".<br> |
− | - timerand: adds a value between 0 and timerand to the time interval on emit | + | ! Note: type defaults to "normal"<br> |
− | + | ! Note: "decal" is currently experimental. Use at your own risk.<br> | |
− | . *emitstart (time)* | + | <br> |
− | - time: specifies time that emitting of the chosen effect should start after particle spawn | + | . *colorindex (colorindex)*<br> |
− | + | - colorindex: specifies the current loaded palette index to use with the particle<br> | |
− | Render Related Fields | + | ! Note: colorindex overrides red/green/blue values<br> |
− | + | ! Note: A colorindex with a value greater than 255 means to apply an alpha value of 0.5 and use the remainder of colorindex / 256 for the actual colorindex. This is to mimic Hexen 2 behavior.<br> | |
− | . *type (type)* | + | ! Note: colorindex defaults to -1, meaning not to use a colorindex.<br> |
− | - type: specifies the type of particles to use for the effect, possible types are "normal", "beam", and "decal". | + | <br> |
− | ! Note: type defaults to "normal" | + | . *colorrand (colorrand)*<br> |
− | ! Note: "decal" is currently experimental. Use at your own risk. | + | - colorrand: adds a random value between 0 and colorrand-1 to the colorindex field on particle spawn<br> |
− | + | <br> | |
− | . *colorindex (colorindex)* | + | . *citracer (citracer)*<br> |
− | - colorindex: specifies the current loaded palette index to use with the particle | + | - citracer: 1 enables Quake tracer-like index changes<br> |
− | ! Note: colorindex overrides red/green/blue values | + | ! Note: Do not use this for any sane particle configs. This is bound to change.<br> |
− | ! Note: A colorindex with a value greater than 255 means to apply an alpha value of 0.5 and use the remainder of colorindex / 256 for the actual colorindex. This is to mimic Hexen 2 behavior. | + | <br> |
− | ! Note: colorindex defaults to -1, meaning not to use a colorindex. | + | . *red (red)*<br> |
− | + | - red: changes the red color value with the range of 0-255<br> | |
− | . *colorrand (colorrand)* | + | <br> |
− | - colorrand: adds a random value between 0 and colorrand-1 to the colorindex field on particle spawn | + | . *green (green)*<br> |
− | + | - green: changes the green color value with the range of 0-255<br> | |
− | . *citracer (citracer)* | + | <br> |
− | - citracer: 1 enables Quake tracer-like index changes | + | . *blue (blue)*<br> |
− | ! Note: Do not use this for any sane particle configs. This is bound to change. | + | - blue: changes the blue color value with the range of 0-255<br> |
− | + | <br> | |
− | . *red (red)* | + | . *rgb (r) (g) (b)*<br> |
− | - red: changes the red color value with the range of 0-255 | + | - r: changes the red color value with the range of 0-255<br> |
− | + | - g: changes the green color value with the range of 0-255<br> | |
− | . *green (green)* | + | - b: changes the blue color value with the range of 0-255<br> |
− | - green: changes the green color value with the range of 0-255 | + | - Note: If b is excluded, g and b are assumed to be r<br> |
− | + | <br> | |
− | . *blue (blue)* | + | . *reddelta (reddelta)*<br> |
− | - blue: changes the blue color value with the range of 0-255 | + | - reddelta: specifies the rate of change of the red color value to reddelta per second<br> |
− | + | <br> | |
− | . *rgb (r) (g) (b)* | + | . *greendelta (greendelta)*<br> |
− | - r: changes the red color value with the range of 0-255 | + | - greendelta: specifies the rate of change of the green color value to greendelta per second<br> |
− | - g: changes the green color value with the range of 0-255 | + | <br> |
− | - b: changes the blue color value with the range of 0-255 | + | . *bluedelta (bluedelta)*<br> |
− | - Note: If b is excluded, g and b are assumed to be r | + | - bluedelta: specifies the rate of change of the blue color value to bluedelta per second<br> |
− | + | <br> | |
− | . *reddelta (reddelta)* | + | . *rgbdelta (r) (g) (b)*<br> |
− | - reddelta: specifies the rate of change of the red color value to reddelta per second | + | - r: specifies the rate of change of the red color value to r per second<br> |
− | + | - g (optional): specifies the rate of change of the green color value to g per second<br> | |
− | . *greendelta (greendelta)* | + | - b (optional): specifies the rate of change of the blue color value to b per second<br> |
− | - greendelta: specifies the rate of change of the green color value to greendelta per second | + | ! Note: If b is excluded, g and b are assumed to be r<br> |
− | + | <br> | |
− | . *bluedelta (bluedelta)* | + | . *rgbchangetime (time)*<br> |
− | - bluedelta: specifies the rate of change of the blue color value to bluedelta per second | + | - time: specifies the time that reddelta/greendelta/bluedelta will remain in effect<br> |
− | + | ! Note: defaults to die time<br> | |
− | . *rgbdelta (r) (g) (b)* | + | <br> |
− | - r: specifies the rate of change of the red color value to r per second | + | . *redrand (redrand)*<br> |
− | - g (optional): specifies the rate of change of the green color value to g per second | + | - redrand: adds a random value between 0 and redrand to the red color value on particle spawn<br> |
− | - b (optional): specifies the rate of change of the blue color value to b per second | + | <br> |
− | ! Note: If b is excluded, g and b are assumed to be r | + | . *greenrand (greenrand)*<br> |
− | + | - greenrand: adds a random value between 0 and redrand to the green color value on particle spawn<br> | |
− | . *rgbchangetime (time)* | + | <br> |
− | - time: specifies the time that reddelta/greendelta/bluedelta will remain in effect | + | . *bluerand (bluerand)*<br> |
− | ! Note: defaults to die time | + | - bluerand: adds a random value between 0 and bluerand to the blue color value on particle spawn<br> |
− | + | <br> | |
− | . *redrand (redrand)* | + | . *rgbrand (r) (g) (b)*<br> |
− | - redrand: adds a random value between 0 and redrand to the red color value on particle spawn | + | - r: adds a random value between 0 and r to the red color value on particle spawn<br> |
− | + | - g (optional): adds a random value between 0 and g to the green color value on particle spawn<br> | |
− | . *greenrand (greenrand)* | + | - b (optional): adds a random value between 0 and b to the blue color value on particle spawn<br> |
− | - greenrand: adds a random value between 0 and redrand to the green color value on particle spawn | + | ! Note: If b is excluded, g and b are assumed to be r<br> |
− | + | <br> | |
− | . *bluerand (bluerand)* | + | . *redrandsync (redrandsync)*<br> |
− | - bluerand: adds a random value between 0 and bluerand to the blue color value on particle spawn | + | - redrandsync: specifies how much of the red random value should be in sync with a common random value (0 meaning no synchronization, 1 meaning full synchronization)<br> |
− | + | <br> | |
− | . *rgbrand (r) (g) (b)* | + | . *greenrandsync (greenrandsync)*<br> |
− | - r: adds a random value between 0 and r to the red color value on particle spawn | + | - greenrandsync: specifies how much of the green random value should be in sync with a common random value (0 meaning no synchronization, 1 meaning full synchronization)<br> |
− | - g (optional): adds a random value between 0 and g to the green color value on particle spawn | + | <br> |
− | - b (optional): adds a random value between 0 and b to the blue color value on particle spawn | + | . *bluerandsync (bluerandsync)*<br> |
− | ! Note: If b is excluded, g and b are assumed to be r | + | - bluerandsync: specifies how much of the blue random value should be in sync with a common random value (0 meaning no synchronization, 1 meaning full synchronization)<br> |
− | + | <br> | |
− | . *redrandsync (redrandsync)* | + | . *rgbrandsync (r) (g) (b)*<br> |
− | - redrandsync: specifies how much of the red random value should be in sync with a common random value (0 meaning no synchronization, 1 meaning full synchronization) | + | - r: specifies how much of the red random value should be in sync with a common random value<br> |
− | + | - g: specifies how much of the green random value should be in sync with a common random value<br> | |
− | . *greenrandsync (greenrandsync)* | + | - b: specifies how much of the blue random value should be in sync with a common random value<br> |
− | - greenrandsync: specifies how much of the green random value should be in sync with a common random value (0 meaning no synchronization, 1 meaning full synchronization) | + | ! Note: 0 means no synchronization, 1 means full synchronization<br> |
− | + | ! Note: If b is excluded, g and b are assumed to be r<br> | |
− | . *bluerandsync (bluerandsync)* | + | <br> |
− | - bluerandsync: specifies how much of the blue random value should be in sync with a common random value (0 meaning no synchronization, 1 meaning full synchronization) | + | . *isbeam*<br> |
− | + | - Specifying this field with no parameters means all particles represents points in beams.<br> | |
− | . *rgbrandsync (r) (g) (b)* | + | ! Note: This field is obsolete, use "type" instead<br> |
− | - r: specifies how much of the red random value should be in sync with a common random value | + | <br> |
− | - g: specifies how much of the green random value should be in sync with a common random value | + | . *stains (stain)*<br> |
− | - b: specifies how much of the blue random value should be in sync with a common random value | + | - stain: specifies if the particle should leave stains (0 meaning no, 1 meaning yes)<br> |
− | ! Note: 0 means no synchronization, 1 means full synchronization | + | <br> |
− | ! Note: If b is excluded, g and b are assumed to be r | + | . *blend (mode)*<br> |
− | + | - mode: specifies blend mode for the particles, valid modes are "add", "subtract", and "merge"<br> | |
− | . *isbeam* | + | ! Note: mode defaults to "merge"<br> |
− | - Specifying this field with no parameters means all particles represents points in beams. | + | ! Note: "blend add" will remove the black in .png particle texture images (and possibly other image file formats too).<br> |
− | ! Note: This field is obsolete, use "type" instead | + | <br> |
− | + | . *rotationstart (angle) (anglerand)*<br> | |
− | . *stains (stain)* | + | - angle: specifies angle the sprite should be rendered<br> |
− | - stain: specifies if the particle should leave stains (0 meaning no, 1 meaning yes) | + | - anglerand (optional): adds a random number between 0 and anglerand to the angle on particle spawn<br> |
− | + | ! Note: angle defaults to -180, and anglerand defaults to 360<br> | |
− | . *blend (mode)* | + | <br> |
− | - mode: specifies blend mode for the particles, valid modes are "add", "subtract", and "merge" | + | . *rotationspeed (anglespeed) (anglespeedrand)*<br> |
− | ! Note: mode defaults to "merge" | + | - anglespeed: specifies angles per second the sprite should rotate<br> |
− | ! Note: "blend add" will remove the black in .png particle texture images (and possibly other image file formats too). | + | - anglespeedrand (optional): adds a random number between 0 and anglespeedrand to the angle speed on particle spawn<br> |
− | + | <br> | |
− | . *rotationstart (angle) (anglerand)* | + | . *alpha (alpha)*<br> |
− | - angle: specifies angle the sprite should be rendered | + | - alpha: specifies starting transparency of the particle (0 meaning invisible, 1 meaning fully visible)<br> |
− | - anglerand (optional): adds a random number between 0 and anglerand to the angle on particle spawn | + | ! Note: alpha defaults to 1<br> |
− | ! Note: angle defaults to -180, and anglerand defaults to 360 | + | <br> |
− | + | . *alphachange (alphachange)*<br> | |
− | . *rotationspeed (anglespeed) (anglespeedrand)* | + | - alphachange: specifies alpha change due to time (0 meaning no change in alpha over time, 1 meaning alpha change to 0 according to die time and starting alpha)<br> |
− | - anglespeed: specifies angles per second the sprite should rotate | + | ! Note: alphachange defaults to 1<br> |
− | - anglespeedrand (optional): adds a random number between 0 and anglespeedrand to the angle speed on particle spawn | + | <br> |
− | + | . *texture (texturename)*<br> | |
− | . *alpha (alpha)* | + | - texturename: the texture name to apply to this particle. If no texture is applied, the particle is drawn as a spark, or a shaded beam if isbeam is set.<br> |
− | - alpha: specifies starting transparency of the particle (0 meaning invisible, 1 meaning fully visible) | + | <br> |
− | ! Note: alpha defaults to 1 | + | . *scale (scale)*<br> |
− | + | - scale: sets scale of the particle<br> | |
− | . *alphachange (alphachange)* | + | <br> |
− | - alphachange: specifies alpha change due to time (0 meaning no change in alpha over time, 1 meaning alpha change to 0 according to die time and starting alpha) | + | . *scalerand (scalerand)*<br> |
− | ! Note: alphachange defaults to 1 | + | - scalerand: adds a random value between 0 and scalerand to the scale on particle spawn<br> |
− | + | <br> | |
− | . *texture (texturename)* | + | . *scalefactor (scalefactor)*<br> |
− | - texturename: the texture name to apply to this particle. If no texture is applied, the particle is drawn as a spark, or a shaded beam if isbeam is set. | + | - scalefactor: the factor that the particle scales due to distance. 0 means no scaling to distance, and 1 means normal scaling due to distance.<br> |
− | + | <br> | |
− | . *scale (scale)* | + | . *scaledelta (scaledelta)*<br> |
− | - scale: sets scale of the particle | + | - scaledelta: specifies the scale per second change of the particle<br> |
− | + | <br> | |
− | . *scalerand (scalerand)* | + | Movement/Placement Fields<br> |
− | - scalerand: adds a random value between 0 and scalerand to the scale on particle spawn | + | <br> |
− | + | . *spawnmode (mode)*<br> | |
− | . *scalefactor (scalefactor)* | + | - mode: specifies spawn mode to use for the particles, valid modes are "circle", "ball", "spiral", "tracer", "telebox", "lavasplash", "uniformcircle", "syncfield", and "box"<br> |
− | - scalefactor: the factor that the particle scales due to distance. 0 means no scaling to distance, and 1 means normal scaling due to distance. | + | ! Note: mode defaults to "box"<br> |
− | + | <br> | |
− | . *scaledelta (scaledelta)* | + | . *spawnorg (xy) (z)*<br> |
− | - scaledelta: specifies the scale per second change of the particle | + | - xy: specifies origin range in the x and y components that the spawn mode should effect<br> |
− | + | - z (optional): specifies origin range in the z component that the spawn mode should effect<br> | |
− | Movement/Placement Fields | + | ! Note: If z is excluded, z is assumed to be xy<br> |
− | + | <br> | |
− | . *spawnmode (mode)* | + | . *spawnvel (xy) (z)*<br> |
− | - mode: specifies spawn mode to use for the particles, valid modes are "circle", "ball", "spiral", "tracer", "telebox", "lavasplash", "uniformcircle", "syncfield", and "box" | + | - xy: specifies velocity range in the x and y components that the spawn mode should effect<br> |
− | ! Note: mode defaults to "box" | + | - z (optional): specifies velocity range in the z component that the spawn mode should effect<br> |
− | + | ! Note: If z is excluded, z is assumed to be xy<br> | |
− | . *spawnorg (xy) (z)* | + | <br> |
− | - xy: specifies origin range in the x and y components that the spawn mode should effect | + | . *spawnparam1 (param)*<br> |
− | - z (optional): specifies origin range in the z component that the spawn mode should effect | + | - param: passes a parameter which changes spawn behavior based on spawn mode<br> |
− | ! Note: If z is excluded, z is assumed to be xy | + | <br> |
− | + | . *spawnparam2 (param)*<br> | |
− | . *spawnvel (xy) (z)* | + | - param: passes a parameter which changes spawn behavior based on spawn mode<br> |
− | - xy: specifies velocity range in the x and y components that the spawn mode should effect | + | <br> |
− | - z (optional): specifies velocity range in the z component that the spawn mode should effect | + | . *cliptype (particleeffectname)*<br> |
− | ! Note: If z is excluded, z is assumed to be xy | + | - particleeffectname: specifies particle effect to spawn when a particle clips an object, specifying itself means that no effect will be spawned and the current particle will be maintained<br> |
− | + | <br> | |
− | . *spawnparam1 (param)* | + | . *clipcount (count)*<br> |
− | - param: passes a parameter which changes spawn behavior based on spawn mode | + | - count: amount of particle effects to spawn when a particle clips an object<br> |
− | + | <br> | |
− | . *spawnparam2 (param)* | + | . *areaspread (areaspread)*<br> |
− | - param: passes a parameter which changes spawn behavior based on spawn mode | + | - areaspread: specifies origin range in the x and y components that the spawn mode should effect<br> |
− | + | ! Note: This field is obsolete, use spawnorg instead.<br> | |
− | . *cliptype (particleeffectname)* | + | <br> |
− | - particleeffectname: specifies particle effect to spawn when a particle clips an object, specifying itself means that no effect will be spawned and the current particle will be maintained | + | . *areaspreadvert (areaspreadvert)*<br> |
− | + | - areaspreadvert: specifies origin range in the z component that the spawn mode should effect<br> | |
− | . *clipcount (count)* | + | ! Note: This field is obsolete, use spawnorg instead.<br> |
− | - count: amount of particle effects to spawn when a particle clips an object | + | <br> |
− | + | . *offsetspread (offsetspread)*<br> | |
− | . *areaspread (areaspread)* | + | - offsetspread: specifies velocity range in the x and y components that the spawn mode should effect<br> |
− | - areaspread: specifies origin range in the x and y components that the spawn mode should effect | + | ! Note: This field is obsolete, use spawnvel instead.<br> |
− | ! Note: This field is obsolete, use spawnorg instead. | + | <br> |
− | + | . *offsetspreadvert (offsetspreadvert)*<br> | |
− | . *areaspreadvert (areaspreadvert)* | + | - offsetspreadvert: specifies velocity range in the z component that the spawn mode should effect<br> |
− | - areaspreadvert: specifies origin range in the z component that the spawn mode should effect | + | ! Note: This field is obsolete, use spawnvel instead.<br> |
− | ! Note: This field is obsolete, use spawnorg instead. | + | <br> |
− | + | . *up (z)*<br> | |
− | . *offsetspread (offsetspread)* | + | - z: adds z to the z component of the origin for all particles<br> |
− | - offsetspread: specifies velocity range in the x and y components that the spawn mode should effect | + | <br> |
− | ! Note: This field is obsolete, use spawnvel instead. | + | . *gravity (gravity)*<br> |
− | + | - gravity: applies an acceleration of -gravity per second^2 to the particle<br> | |
− | . *offsetspreadvert (offsetspreadvert)* | + | ! Note: this is not effected by [sv_gravity]<br> |
− | - offsetspreadvert: specifies velocity range in the z component that the spawn mode should effect | + | <br> |
− | ! Note: This field is obsolete, use spawnvel instead. | + | . *randomvel (randomvel) (vert)*<br> |
− | + | - randomvel: adds a random value from -randomvel to randomvel to the x and y components of the particle velocity<br> | |
− | . *up (z)* | + | - vert (optional): adds a random value from -vert to vert to the z component of the particle velocity<br> |
− | - z: adds z to the z component of the origin for all particles | + | ! Note: if vert is excluded, vert is assumed to be randomvel<br> |
− | + | <br> | |
− | . *gravity (gravity)* | + | . *veladd (veladd)*<br> |
− | - gravity: applies an acceleration of -gravity per second^2 to the particle | + | - veladd: if a direction is associated with the effect, veladd*direction is added to the particle velocity, otherwise veladd is added to the z component of the particle velocity<br> |
− | ! Note: this is not effected by [sv_gravity] | + | <br> |
− | + | . *friction (x) (y) (z)*<br> | |
− | . *randomvel (randomvel) (vert)* | + | - x: applies friction to the x axis of the particles, slowing down by a factor of x per second<br> |
− | - randomvel: adds a random value from -randomvel to randomvel to the x and y components of the particle velocity | + | - y (optional): applies friction to the x axis of the particles, slowing down by a factor of y per second<br> |
− | - vert (optional): adds a random value from -vert to vert to the z component of the particle velocity | + | - z (optional): applies friction to the x axis of the particles, slowing down by a factor of z per second<br> |
− | ! Note: if vert is excluded, vert is assumed to be randomvel | + | ! Note: if 2 parameters are given, the format is assumed to be friction (xy) (z), with x and y assumed to be xy <br> |
− | + | ! Note: if 1 parameter is given, x, y, and z are all assumed to be that 1 parameter<br> | |
− | . *veladd (veladd)* | + | <br> |
− | - veladd: if a direction is associated with the effect, veladd*direction is added to the particle velocity, otherwise veladd is added to the z component of the particle velocity | + | . *clipbounce (factor)*<br> |
− | + | - factor: the velocity maintained after a particle bounces off of an object (0 meaning no velocity maintained, 1 meaning all velocity maintained)<br> | |
− | . *friction (x) (y) (z)* | + | ! Note: factor defaults to 0.8<br> |
− | - x: applies friction to the x axis of the particles, slowing down by a factor of x per second | + | <br> |
− | - y (optional): applies friction to the x axis of the particles, slowing down by a factor of y per second | + | Ramp Fields<br> |
− | - z (optional): applies friction to the x axis of the particles, slowing down by a factor of z per second | + | <br> |
− | ! Note: if 2 parameters are given, the format is assumed to be friction (xy) (z), with x and y assumed to be xy | + | . *rampmode (mode)*<br> |
− | ! Note: if 1 parameter is given, x, y, and z are all assumed to be that 1 parameter | + | - mode: specifies the ramp style to be used, possible modes are "none", "absolute", and "delta"<br> |
− | + | ! Note: mode defaults to "none"<br> | |
− | . *clipbounce (factor)* | + | <br> |
− | - factor: the velocity maintained after a particle bounces off of an object (0 meaning no velocity maintained, 1 meaning all velocity maintained) | + | . *rampindexlist (index1)...(indexn)*<br> |
− | ! Note: factor defaults to 0.8 | + | - Adds a point in the ramp per number of color indexes<br> |
− | + | - index1...indexn: list of color indexes to be used with the ramps<br> | |
− | Ramp Fields | + | ! Note: Alpha values are assumed to be 1 or 0.5 if the colorindex is greater than 255.<br> |
− | + | <br> | |
− | . *rampmode (mode)* | + | . *rampindex (index) (alpha) (scale)*<br> |
− | - mode: specifies the ramp style to be used, possible modes are "none", "absolute", and "delta" | + | - Adds a new point in the ramp<br> |
− | ! Note: mode defaults to "none" | + | - index: index to be used with this point of the ramp<br> |
− | + | - alpha (optional): alpha value to be used with this point of the ramp<br> | |
− | . *rampindexlist (index1)...(indexn)* | + | - scale (optional): scale value to be used with this point of the ramp<br> |
− | - Adds a point in the ramp per number of color indexes | + | ! Note: If alpha is excluded, alpha is assumed to be 1 or 0.5 if the colorindex is greater than 255.<br> |
− | - index1...indexn: list of color indexes to be used with the ramps | + | ! Note: If scale is excluded, scale is assumed to be the scale given in the scale field.<br> |
− | ! Note: Alpha values are assumed to be 1 or 0.5 if the colorindex is greater than 255. | + | <br> |
− | + | . *ramp (r) (g) (b) (alpha) (scale)*<br> | |
− | . *rampindex (index) (alpha) (scale)* | + | - Adds a new point in the ramp<br> |
− | - Adds a new point in the ramp | + | - r: red color value to be used with this point of the ramp, with range 0-255<br> |
− | - index: index to be used with this point of the ramp | + | - g (optional): green color value to be used with this point of the ramp, with range 0-255<br> |
− | - alpha (optional): alpha value to be used with this point of the ramp | + | - b (optional): blue color value to be used with this point of the ramp, with range 0-255<br> |
− | - scale (optional): scale value to be used with this point of the ramp | + | - alpha (optional): alpha value to be used with this point of the ramp<br> |
− | ! Note: If alpha is excluded, alpha is assumed to be 1 or 0.5 if the colorindex is greater than 255. | + | - scale (optional): scale value to be used with this point of the ramp<br> |
− | ! Note: If scale is excluded, scale is assumed to be the scale given in the scale field. | + | ! Note: If b is excluded, g and b are assumed to be r.<br> |
− | + | ! Note: If alpha is excluded, alpha is assumed to be the alpha given in the alpha field.<br> | |
− | . *ramp (r) (g) (b) (alpha) (scale)* | + | ! Note: If scale is excluded, scale is assumed to be the scale given in the scale field.<br> |
− | - Adds a new point in the ramp | ||
− | - r: red color value to be used with this point of the ramp, with range 0-255 | ||
− | - g (optional): green color value to be used with this point of the ramp, with range 0-255 | ||
− | - b (optional): blue color value to be used with this point of the ramp, with range 0-255 | ||
− | - alpha (optional): alpha value to be used with this point of the ramp | ||
− | - scale (optional): scale value to be used with this point of the ramp | ||
− | ! Note: If b is excluded, g and b are assumed to be r. | ||
− | ! Note: If alpha is excluded, alpha is assumed to be the alpha given in the alpha field. | ||
− | ! Note: If scale is excluded, scale is assumed to be the scale given in the scale field. |
Latest revision as of 08:11, 29 October 2005
List of particle fields:
! Note: all fields default to 0 or "" unless otherwise indicated or inherited from special case particle types.
Spawn Related Fields
. *count (count)*
- count: specifies number of particles to spawn with point effects
. *step (step)*
- step: specifies Quake units per particle to spawn with trails
! Note: step (x) is a synomyn for count 1/(x)
. *die (die)*
- die: specifies time in seconds it takes for the particle to die. A value of 0 means that the particle will be rendered for a duration of 1 frame.
. *diesubrand (rand)*
- rand: subtracts a random value from 0 to rand from the die time on particle spawn, and causes the particle to "decay" for that amount of time
! Note: Using diesubrand with delta ramps will cause weird things to happen.
. *assoc (particleeffectname)*
- particleeffectname: name of other particle effect to execute when the current particle effect is executed
! Note: Using assoc to loop back to the same particle effect is invalid.
. *emit (particleeffectname)*
- particleeffectname: specifies the particle effect that the current particles should emit
. *emitinterval (time)*
- time: specifies the time between the emitting of the chosen effect (a value of less than 0 means to emit the chosen effect as a trail)
. *emitintervalrand (timerand)*
- timerand: adds a value between 0 and timerand to the time interval on emit
. *emitstart (time)*
- time: specifies time that emitting of the chosen effect should start after particle spawn
Render Related Fields
. *type (type)*
- type: specifies the type of particles to use for the effect, possible types are "normal", "beam", and "decal".
! Note: type defaults to "normal"
! Note: "decal" is currently experimental. Use at your own risk.
. *colorindex (colorindex)*
- colorindex: specifies the current loaded palette index to use with the particle
! Note: colorindex overrides red/green/blue values
! Note: A colorindex with a value greater than 255 means to apply an alpha value of 0.5 and use the remainder of colorindex / 256 for the actual colorindex. This is to mimic Hexen 2 behavior.
! Note: colorindex defaults to -1, meaning not to use a colorindex.
. *colorrand (colorrand)*
- colorrand: adds a random value between 0 and colorrand-1 to the colorindex field on particle spawn
. *citracer (citracer)*
- citracer: 1 enables Quake tracer-like index changes
! Note: Do not use this for any sane particle configs. This is bound to change.
. *red (red)*
- red: changes the red color value with the range of 0-255
. *green (green)*
- green: changes the green color value with the range of 0-255
. *blue (blue)*
- blue: changes the blue color value with the range of 0-255
. *rgb (r) (g) (b)*
- r: changes the red color value with the range of 0-255
- g: changes the green color value with the range of 0-255
- b: changes the blue color value with the range of 0-255
- Note: If b is excluded, g and b are assumed to be r
. *reddelta (reddelta)*
- reddelta: specifies the rate of change of the red color value to reddelta per second
. *greendelta (greendelta)*
- greendelta: specifies the rate of change of the green color value to greendelta per second
. *bluedelta (bluedelta)*
- bluedelta: specifies the rate of change of the blue color value to bluedelta per second
. *rgbdelta (r) (g) (b)*
- r: specifies the rate of change of the red color value to r per second
- g (optional): specifies the rate of change of the green color value to g per second
- b (optional): specifies the rate of change of the blue color value to b per second
! Note: If b is excluded, g and b are assumed to be r
. *rgbchangetime (time)*
- time: specifies the time that reddelta/greendelta/bluedelta will remain in effect
! Note: defaults to die time
. *redrand (redrand)*
- redrand: adds a random value between 0 and redrand to the red color value on particle spawn
. *greenrand (greenrand)*
- greenrand: adds a random value between 0 and redrand to the green color value on particle spawn
. *bluerand (bluerand)*
- bluerand: adds a random value between 0 and bluerand to the blue color value on particle spawn
. *rgbrand (r) (g) (b)*
- r: adds a random value between 0 and r to the red color value on particle spawn
- g (optional): adds a random value between 0 and g to the green color value on particle spawn
- b (optional): adds a random value between 0 and b to the blue color value on particle spawn
! Note: If b is excluded, g and b are assumed to be r
. *redrandsync (redrandsync)*
- redrandsync: specifies how much of the red random value should be in sync with a common random value (0 meaning no synchronization, 1 meaning full synchronization)
. *greenrandsync (greenrandsync)*
- greenrandsync: specifies how much of the green random value should be in sync with a common random value (0 meaning no synchronization, 1 meaning full synchronization)
. *bluerandsync (bluerandsync)*
- bluerandsync: specifies how much of the blue random value should be in sync with a common random value (0 meaning no synchronization, 1 meaning full synchronization)
. *rgbrandsync (r) (g) (b)*
- r: specifies how much of the red random value should be in sync with a common random value
- g: specifies how much of the green random value should be in sync with a common random value
- b: specifies how much of the blue random value should be in sync with a common random value
! Note: 0 means no synchronization, 1 means full synchronization
! Note: If b is excluded, g and b are assumed to be r
. *isbeam*
- Specifying this field with no parameters means all particles represents points in beams.
! Note: This field is obsolete, use "type" instead
. *stains (stain)*
- stain: specifies if the particle should leave stains (0 meaning no, 1 meaning yes)
. *blend (mode)*
- mode: specifies blend mode for the particles, valid modes are "add", "subtract", and "merge"
! Note: mode defaults to "merge"
! Note: "blend add" will remove the black in .png particle texture images (and possibly other image file formats too).
. *rotationstart (angle) (anglerand)*
- angle: specifies angle the sprite should be rendered
- anglerand (optional): adds a random number between 0 and anglerand to the angle on particle spawn
! Note: angle defaults to -180, and anglerand defaults to 360
. *rotationspeed (anglespeed) (anglespeedrand)*
- anglespeed: specifies angles per second the sprite should rotate
- anglespeedrand (optional): adds a random number between 0 and anglespeedrand to the angle speed on particle spawn
. *alpha (alpha)*
- alpha: specifies starting transparency of the particle (0 meaning invisible, 1 meaning fully visible)
! Note: alpha defaults to 1
. *alphachange (alphachange)*
- alphachange: specifies alpha change due to time (0 meaning no change in alpha over time, 1 meaning alpha change to 0 according to die time and starting alpha)
! Note: alphachange defaults to 1
. *texture (texturename)*
- texturename: the texture name to apply to this particle. If no texture is applied, the particle is drawn as a spark, or a shaded beam if isbeam is set.
. *scale (scale)*
- scale: sets scale of the particle
. *scalerand (scalerand)*
- scalerand: adds a random value between 0 and scalerand to the scale on particle spawn
. *scalefactor (scalefactor)*
- scalefactor: the factor that the particle scales due to distance. 0 means no scaling to distance, and 1 means normal scaling due to distance.
. *scaledelta (scaledelta)*
- scaledelta: specifies the scale per second change of the particle
Movement/Placement Fields
. *spawnmode (mode)*
- mode: specifies spawn mode to use for the particles, valid modes are "circle", "ball", "spiral", "tracer", "telebox", "lavasplash", "uniformcircle", "syncfield", and "box"
! Note: mode defaults to "box"
. *spawnorg (xy) (z)*
- xy: specifies origin range in the x and y components that the spawn mode should effect
- z (optional): specifies origin range in the z component that the spawn mode should effect
! Note: If z is excluded, z is assumed to be xy
. *spawnvel (xy) (z)*
- xy: specifies velocity range in the x and y components that the spawn mode should effect
- z (optional): specifies velocity range in the z component that the spawn mode should effect
! Note: If z is excluded, z is assumed to be xy
. *spawnparam1 (param)*
- param: passes a parameter which changes spawn behavior based on spawn mode
. *spawnparam2 (param)*
- param: passes a parameter which changes spawn behavior based on spawn mode
. *cliptype (particleeffectname)*
- particleeffectname: specifies particle effect to spawn when a particle clips an object, specifying itself means that no effect will be spawned and the current particle will be maintained
. *clipcount (count)*
- count: amount of particle effects to spawn when a particle clips an object
. *areaspread (areaspread)*
- areaspread: specifies origin range in the x and y components that the spawn mode should effect
! Note: This field is obsolete, use spawnorg instead.
. *areaspreadvert (areaspreadvert)*
- areaspreadvert: specifies origin range in the z component that the spawn mode should effect
! Note: This field is obsolete, use spawnorg instead.
. *offsetspread (offsetspread)*
- offsetspread: specifies velocity range in the x and y components that the spawn mode should effect
! Note: This field is obsolete, use spawnvel instead.
. *offsetspreadvert (offsetspreadvert)*
- offsetspreadvert: specifies velocity range in the z component that the spawn mode should effect
! Note: This field is obsolete, use spawnvel instead.
. *up (z)*
- z: adds z to the z component of the origin for all particles
. *gravity (gravity)*
- gravity: applies an acceleration of -gravity per second^2 to the particle
! Note: this is not effected by [sv_gravity]
. *randomvel (randomvel) (vert)*
- randomvel: adds a random value from -randomvel to randomvel to the x and y components of the particle velocity
- vert (optional): adds a random value from -vert to vert to the z component of the particle velocity
! Note: if vert is excluded, vert is assumed to be randomvel
. *veladd (veladd)*
- veladd: if a direction is associated with the effect, veladd*direction is added to the particle velocity, otherwise veladd is added to the z component of the particle velocity
. *friction (x) (y) (z)*
- x: applies friction to the x axis of the particles, slowing down by a factor of x per second
- y (optional): applies friction to the x axis of the particles, slowing down by a factor of y per second
- z (optional): applies friction to the x axis of the particles, slowing down by a factor of z per second
! Note: if 2 parameters are given, the format is assumed to be friction (xy) (z), with x and y assumed to be xy
! Note: if 1 parameter is given, x, y, and z are all assumed to be that 1 parameter
. *clipbounce (factor)*
- factor: the velocity maintained after a particle bounces off of an object (0 meaning no velocity maintained, 1 meaning all velocity maintained)
! Note: factor defaults to 0.8
Ramp Fields
. *rampmode (mode)*
- mode: specifies the ramp style to be used, possible modes are "none", "absolute", and "delta"
! Note: mode defaults to "none"
. *rampindexlist (index1)...(indexn)*
- Adds a point in the ramp per number of color indexes
- index1...indexn: list of color indexes to be used with the ramps
! Note: Alpha values are assumed to be 1 or 0.5 if the colorindex is greater than 255.
. *rampindex (index) (alpha) (scale)*
- Adds a new point in the ramp
- index: index to be used with this point of the ramp
- alpha (optional): alpha value to be used with this point of the ramp
- scale (optional): scale value to be used with this point of the ramp
! Note: If alpha is excluded, alpha is assumed to be 1 or 0.5 if the colorindex is greater than 255.
! Note: If scale is excluded, scale is assumed to be the scale given in the scale field.
. *ramp (r) (g) (b) (alpha) (scale)*
- Adds a new point in the ramp
- r: red color value to be used with this point of the ramp, with range 0-255
- g (optional): green color value to be used with this point of the ramp, with range 0-255
- b (optional): blue color value to be used with this point of the ramp, with range 0-255
- alpha (optional): alpha value to be used with this point of the ramp
- scale (optional): scale value to be used with this point of the ramp
! Note: If b is excluded, g and b are assumed to be r.
! Note: If alpha is excluded, alpha is assumed to be the alpha given in the alpha field.
! Note: If scale is excluded, scale is assumed to be the scale given in the scale field.