;-------------------------------------------- :Particle System: ;-------------------------------------------- Term Definitions: system - the entire system as a whole particle(s) - refer to the particles generated by the system frame - (33ms) minimal gametime interval, 30 Frames = 1 Second. damping - (Velocity, Angular, SizeRate, etc.) The parent value (e.g. Velocity) is multiplied with the damping value every frame. values range from 0 to 1, 0 = maximum dampening, 1 = no dampening z axis - the axis in which the particle spins; aligned to the view (unless IsGroundAligned = Yes) positive value spins this way <--- negative value spins that way ---> +---+---+ | | + Z + | | +---+---+ ;-------------------------------------------- ;-------------------------------------------- ParticleSystem [system name] Priority = [entry from Particle System Priority listing] IsOneShot = [Yes/No] Shader = [ADDITIVE/ALPHA/ALPHA_TEST] ADDITIVE = RGB intensity used for transparency => glowy (white = solid, black = transparent) ALPHA = image alpha used for transparency (required alpha channel in texture) ALPHA_TEST = same as alpha, but binary alpha is used (sharp edges) Type = [PARTICLE/STREAK] PARTICLE = renders each particle individually STREAK = connects particles together (used by trails) ParticleName = [particle texture in .dds or .tga] AngleZ = [decimal] [decimal] ; initial particle z axis angle IN RADIANS (0 - 2*PI), value is randomized between the two values inputed AngularRateZ = [decimal] [decimal] ; z axis spin rate in radians per frame, value is randomized between the two values inputed AngularDamping = [decimal] [decimal] ; AngularRateZ is multiplied with this value every frame. value is randomized between the two values inputed VelocityDamping = [decimal] [decimal] ; particle velocity is multiplied with this value every frame, value is randomized between the two values inputed Gravity = [decimal] ; particle World Z movement (Up/Down) in distance per frame. 0 = particles don't move, >0 = particles go up, <0 = particles go down Lifetime = [integer] [integer] ; how long a particle remains in frames (e.g. Liftime = 30 = 1 second), value is randomized between the two values inputed SystemLifetime = [integer] ; how long the particle system remains in frames (0 = unlimited) PerParticleAttachedSystem = [entry from ParticleSystem.ini] ; attaches another particle system to particles created by this system, yo dawg! SlaveSystem = [entry from ParticleSystem.ini] ; attaches another particle system to this system. SlavePosOffset = X:[decimal] Y:[decimal] Z:[decimal] ; offsets the position of the slave system in distance Size = [integer] [integer] ; particle size, value is randomized between the two values inputed StartSizeRate = [integer] [integer] ; start size scale rate, if a nonzero value is specified it'll gradually change to the SizeRate value, value is randomized between the two values inputed SizeRate = [integer] [integer] ; particle size increases by this value per frame (negative value causes shrinking), value is randomized between the two values inputed SizeRateDamping = [integer] [integer] ; particle SizeRate is multiplied with this value every frame , value is randomized between the two values inputed Alpha[1-9] = [0.0-1.0] [0.0-1.0] [integer] ; parameters 1 and 2 are Alpha values, integer = time in frames. controls particle transparency when ALPHA or ALPHA_TEST particle type is chosen. ;Multiple entries with different time values. Alpha Values are interpolated between them. Color[1-9] = R:[0-255] G:[0-255] B:[0-255] [integer] ; controls particle color, also controls particle transparency if ADDITIVE particle type is chosen ;Multiple entries with different time values. RGB Values are interpolated between them. ColorScale = [integer] [integer] ; changes particle color based on values specified (every frame). >0 = colors get brighter, <0 colors get darker. value is randomized between the two integers. BurstDelay = [integer] [integer] ; delay between particle generation in frames, value is randomized between the two values inputed BurstCount = [integer] [integer] ; number of particles generated per BurstDelay interval, value is randomized between the two values inputed InitialDelay = [decimal] [decimal] ; initial delay before particle generation in frames, value is randomized between the two values inputed DriftVelocity = X:[decimal] Y:[decimal] Z:[decimal] ; Additional velocity aligned to World coordinates in distance per frame. Not affected by Damping [VelocityType - controls how the particle moves below is a list of all the available velocity types and their settings] VelocityType = NONE ; no movement VelocityType = ORTHO ; moves along x, y, z axis (oriented to particle system) VelOrthoX = [decimal] [decimal] ; velocity along x axis {forward, backward} in distance per frame, value is randomized between the two values inputed VelOrthoY = [decimal] [decimal] ; velocity along y axis (left, right) in distance per frame, value is randomized between the two values inputed VelOrthoZ = [decimal] [decimal] ; velocity along z axis {up, down} in distance per frame, value is randomized between the two values inputed VelocityType = OUTWARD ; moves outward and upwards VelOutward = [decimal] [decimal] ; distance per frame outwards with random angle, value is randomized between the two values inputed VelOutwardOther = [decimal] [decimal] ; distance per frame upwards, value is randomized between the two values inputed VelocityType = CYLINDRICAL ; used with CYLINDER volume type, moves in a cylindrical shape VelCylindricalRadial = [decimal] [decimal] ; in distance per frame, value is randomized between the two values inputed VelCylindricalNormal = [decimal] [decimal] ; in distance per frame, value is randomized between the two values inputed VelocityType = SPHERICAL ; used with SPHERE volume type, moves in a spherical shape VelSpherical = [decimal] [decimal] ; in distance per frame, value is randomized between the two values inputed VelocityType = HEMISPHERICAL ; moves in a hemispherical shape VelHemispherical = [decimal] [decimal] ; in distance per frame, value is randomized between the two values inputed [VolumeType - the starting shape of the system below is a list of all the available volume types and their settings] VolumeType = POINT ; no shape just a point VolumeType = LINE ; creates particles along a line between 2 offsets. VolLineStart = X:[decimal] Y:[decimal] Z:[decimal] ; start of the line VolLineEnd = X:[decimal] Y:[decimal] Z:[decimal] ; end of the line VolumeType = CYLINDER ; used with CYLINDIRCAL velocity type, creates a cylindircal shaped system VolCylinderRadius = [decimal] ; Cylinder radius VolCylinderLength = [decimal] ; Cylinder length. Negative values allowed. VolumeType = SPHERE ; used with SPHERICAL velocity type, creates a spherical shaped system VolSphereRadius = [decimal] ; Sphere radius VolumeType = BOX ; creates a box shaped system VolBoxHalfSize = X:[decimal] Y:[decimal] Z:[decimal] IsHollow = [Yes/No] ; Yes = creates particles on the border of the volume, No = creates particles everywhere within the volume IsGroundAligned = [Yes/No] ; Yes = aligns particles (Z-axis) to the ground, No = Aligns particles to the view IsEmitAboveGroundOnly = [Yes/No] ; particles only appear on the ground IsParticleUpTowardsEmitter = [Yes/No] ; orients particles towards the object that generates it [WindMotion - simulates the wind] WindMotion = Unused ; no wind WindMotion = PingPong WindAngleChangeMin = [decimal] WindAngleChangeMax = [decimal] WindPingPongStartAngleMin = [decimal] WindPingPongStartAngleMax = [decimal] WindPingPongEndAngleMin = [decimal] WindPingPongEndAngleMax = [decimal] End ;-------------------------------------------- Particle System Priority Types: ;-------------------------------------------- ALWAYS_RENDER ; always show the particle CRITICAL AREA_EFFECT WEAPON_TRAIL CONSTANT SEMI_CONSTANT DEATH_EXPLOSION UNIT_DAMAGE_FX DEBRIS_TRAIL BUILDUP DUST_TRAIL SCORCHMARK WEAPON_EXPLOSION