Difference between revisions of "Particle.cfg"

From GTAMods Wiki
Jump to navigation Jump to search
(table corrections and styles update)
Line 1: Line 1:
 
{{lowercase}}
 
{{lowercase}}
The '''particle.cfg''' file stores particle [[CFG|configuration]] data and settings for the particle system of [[Vice City]] and [[GTA III]].
+
The '''particle.cfg''' file stores particle [[CFG|configuration]] data and settings for the particle system for [[GTA III]] and [[Vice City]].
  
 
== Format ==
 
== Format ==
  
All information is stored in plain-text format as a simple list of settings. Each line defines one entry. Lines can also be commented. Unlike the [[DAT|data files]] the typical comment character for [[CFG|configuration files]] is the semicolon ('';''). Each line is a collection of values seperated by tabstops. The following table shows the values and their description in the order they appear inside the file:
+
The file is in plain text format. Line comments are indicated by the character <code>;</code> (semicolon) and empty lines are allowed. Each entry takes one line and data in them are separated by <code> </code>&nbsp;(space) and <code> </code>&nbsp;(horizontal tab). The end is indicated by the terminating string <code>;the end</code>.
  
{|{{Prettytable}} class="collapsible" width="100%"
+
{|class="wikitable center-col-1 center-col-2" width="100%"
!width="150px"|Value
+
!{{Icon|3}} ||{{Icon|VC}}
!width="120px"|Type
+
!style="width: 12em;"|Identifier
 +
!style="width: 6em;" |Type
 
!Description
 
!Description
 
|-
 
|-
|Particle name||[[wikipedia:String_(computer_science)|String]]||The name of the particle for the [[SCM|script]].
+
|colspan="2" |A ||Particle name ||string ||The name of the particle.
 
|-
 
|-
|Rendering color||Color (RGB)||3 values (from 0 to 255) defining the red, green and blue level of the particle color.
+
|colspan="2" |B,C,D ||Rendering color ||integer[3] ||The particle color in RGB format. Each is a value between 0 and 255.
 
|-
 
|-
|Initial color variation||[[wikipedia:Integer_(computer_science)|Integer]]||Value between 0 and 100, defining the initial color variation of the particle. Using this value a random value gets calculated to manipulate each color level of the particle. This makes every particle look different.<br><br>''Example:''<br>Rendering color = (100, 100, 100), Initial color variation = 20<br>Real variation = random(-20, 20)<br>Real color = (100 + Real variation, 100 + Real variation, 100 + Real variation)
+
|colspan="2" |E ||Initial color variation ||integer ||Initial color variation of the particle. Using this value a random value gets calculated to manipulate each color level of the particle. This makes every particle look different. Value is between 0 and 100 (any value above 100 is set to 100).
 +
 
 +
''Example:''<br>Rendering color = (100, 100, 100), Initial color variation = 20<br>Real variation = random(-20, 20)<br>Real color = (100 + Real variation, 100 + Real variation, 100 + Real variation)
 +
|-
 +
|colspan="2" |F,G,H ||Fade destination color ||integer[3] ||Destination color in RGB format if the particle is fading. Each is a value between 0 and 255.
 +
|-
 +
|colspan="2" |I ||Fading time ||integer ||Time required to fade from the rendering color to the fade destination color. Value is between 0 and 100.
 +
|-
 +
|colspan="2" |J ||Initial radius ||float ||Initial radius of the particle sprite.
 +
|-
 +
|colspan="2" |K ||Expansion rate ||float ||Rate the particle sprite grows during its lifetime.
 
|-
 
|-
|Fade destination color||Color (RGB)||3 values (from 0 to 255) defining the red, green and blue level of the destination color if the particle is fading.
+
|colspan="2" |L ||Fade to black initial intensity ||integer ||If the particle "fades to black" (means it gets destroyed with fading) this value defines its initial intensity. The value is between 0 and 255 where 255 means 100%.
 
|-
 
|-
|Fading time||Integer||Value between 0 and 100, defining the time required to fade from the rendering color to the fade destination color.
+
|colspan="2" |M ||Fade to black time ||integer ||The number of frames between each fade step.
 
|-
 
|-
|Initial radius||[[wikipedia:Floating point|Float]]||The initial radius of the particle [[wikipedia:Sprite_(computer_graphics)|sprite]].r.
+
|colspan="2" |N ||Fade to black amount ||integer ||The amount the initial intensity gets decreased with each step.
 
|-
 
|-
|Expansion rate||Float||The rate the particle sprite grows during it's lifetime.
+
|colspan="2" |O ||Fade alpha initial intensity ||integer ||
 
|-
 
|-
|Fade to black initial intensity||Integer||If the particle "fades to black" (means it get's destroyed with fading) this value defines it's initial intensity. The value can be between 0 and 255 where 255 means 100%.
+
|colspan="2" |P ||Fade alpha time ||integer ||
 
|-
 
|-
|Fade to black time||Integer||The number of frames between each fade step.
+
|colspan="2" |Q ||Fade alpha amount ||integer ||
 
|-
 
|-
|Fade to black amount||Integer||The amount the initial intensity gets decreased with each step.
+
|colspan="2" |R ||Z rotation initial angle ||integer ||Initial angle around the z-axis. The value is between 0 and 1023.
 
|-
 
|-
|Initial rotation||Integer||The initial angle around the z-axis. This value must can be between 0 and 1023.
+
|colspan="2" |S ||Z rotation change time ||integer ||Number of frames between each rotation step.
 
|-
 
|-
|Rotation change time||Integer||The number of frames between each rotation step.
+
|colspan="2" |T ||Z rotation angle change amount ||integer ||Amount the sprite gets rotated around the z-axis with each step.
 
|-
 
|-
|Rotation change amount||Integer||The amount the sprite gets rotated around the z-axis with each step.
+
|colspan="2" |U ||Initial z radius ||float ||Initial radius of the particle around the z-axis.
 
|-
 
|-
|Initial radius||Float||The initial radius of the particle around the z-axis.
+
|colspan="2" |V ||Z radius change time ||integer ||Number of frames between each radius change step.
 
|-
 
|-
|Radius change time||Integer||The number of frames between each radius change step.
+
|colspan="2" |W ||Z radius change amount ||float ||Amount the radius changes with each step.
 
|-
 
|-
|Radius change amount||Float||The amount the radius changes with each step.
+
|colspan="2" |X ||Animation speed ||integer ||Time between each animation step. 0 means that the particle is not animated.
 
|-
 
|-
|Animation speed||Integer||The time between each animation step. 0 means that the particle is not animated.
+
|colspan="2" |Y ||Animation start frame ||integer ||Index first frame of the animated particle.
 
|-
 
|-
|Animation start frame||Integer||The index first frame of the animated particle.
+
|colspan="2" |Z ||Animation final frame ||integer ||Index of the last frame of the animated particle.
 
|-
 
|-
|Animation final frame||Integer||The index of the last frame of the animated particle.
+
|colspan="2" |AA ||Rotation speed ||integer ||
 
|-
 
|-
|Gravitational accleration||Float||The accleration of the particle falling to the ground.
+
|colspan="2" |AB ||Gravitational acceleration ||float ||Acceleration of the particle falling to the ground.
 
|-
 
|-
|Frictional deccleration||Float||The frictional deccleration of the particle. This value can be between 0 and 1 where 1 represents 100%.
+
|colspan="2" |AC ||Frictional deceleration ||integer ||Frictional deceleration of the particle. This value is between 0 and 1 where 1 represents 100%.
 
|-
 
|-
|Default lifetime||Integer||The default lifetime of the particle in milliseconds.
+
|colspan="2" |AD ||Default life span ||integer ||Default lifetime of the particle in milliseconds.
 
|-
 
|-
|Position error||Float||The final position gets corrected using a random value between 0 and this one.
+
|colspan="2" |AE ||Position random error ||float ||Final position gets corrected using a random value between 0 and this one.
 
|-
 
|-
|Velocity error||Float||The final velocity gets corrected using a random value between 0 and this one.
+
|colspan="2" |AF ||Velocity random error ||float ||Final velocity gets corrected using a random value between 0 and this one.
 
|-
 
|-
|Expansion error||Float||The expansion rate gets corrected using a random value between 0 and this one.
+
|colspan="2" |AG ||Expansion rate error ||float ||Expansion rate gets corrected using a random value between 0 and this one.
 
|-
 
|-
|Rotation error||Float||The rotation rate gets corrected using a random value between 0 and this one.
+
|colspan="2" |AH ||Rotation rate error ||integer ||Rotation rate gets corrected using a random value between 0 and this one.
 
|-
 
|-
|Lifetime error||Integer||Value between 0 and 255 defining the shape for the distribution of the particles lifetime.
+
|colspan="2" |AI ||Life span error shape ||integer ||Shape for the distribution of the particle's lifetime. Value is between 0 and 255.
 
|-
 
|-
|Trail length error||Float||If the particle trail flag is set the length of it's trail gets multiplied by this value.
+
|colspan="2" |AJ ||Trail length multiplier ||float ||If the particle trail flag is set the length of its trail gets multiplied by this value.
 
|-
 
|-
|Strech X||Float||The amount the particles texture gets streched along x-axis.
+
|&ndash; ||AK ||{{a|c}} |Stretch X ||float ||Amount the particle's texture gets stretched along x-axis.
 
|-
 
|-
|Strech Y||Float||The amount the particles texture gets streched along y-axis.
+
|&ndash; ||AL ||{{a|c}} |Stretch Y ||float ||Amount the particle's texture gets stretched along y-axis.
 
|-
 
|-
|Wind influence||Float||The factor for the influence of wind for the particle.
+
|&ndash; ||AM ||{{a|c}} |Wind influence ||float ||Factor for the influence of wind for the particle.
 
|-
 
|-
|Creation range||Float||The maximum distance from the camera for actually creating the particle.
+
|AK ||AN ||{{a|c}} |Creation range ||float ||Maximum distance from the camera for actually creating the particle.
 
|-
 
|-
|Flags||Integer||See [[Particle.cfg#Flags|below]]!
+
|AL ||AO ||{{a|c}} |Flags ||integer ||[[#Flags|See below]]
 
|}
 
|}
  
Line 83: Line 94:
 
There are different flags that influence the particles rendering process. Those flags are listed in the following table:
 
There are different flags that influence the particles rendering process. Those flags are listed in the following table:
  
{|{{Prettytable}} width="100%" class="collapsible"
+
{|class="wikitable center-col-1 center-col-2 center-col-3" style="width: 100%;"
!width="120px"|Name
+
!style="width: 12em;" |Name
!width="120px"|Flag
+
!style="width: 4em;" |Flag
!width="25%"|Binary
+
!style="width: 16em;" |Binary
 
!Description
 
!Description
 
|-
 
|-
|<center>&ndash;</center>||<center>-1</center>||<center><code>1111 1111 1111 1111</code></center>||Enables all flags. {{ref|1}} Never used by default.
+
|&ndash;||-1||<code>1111 1111 1111 1111</code>||Enables all flags. {{ref|1}} Never used by default.
 
|-
 
|-
|<center>ZCHECK_FIRST</center>||<center>1</center>||<center><code>0000 0000 0000 0001</code></center>||&ndash;
+
|ZCHECK_FIRST||1||<code>0000 0000 0000 0001</code>||&ndash;
 
|-
 
|-
|<center>ZCHECK_STEP</center>||<center>2</center>||<center><code>0000 0000 0000 0010</code></center>||&ndash;
+
|ZCHECK_STEP||2||<code>0000 0000 0000 0010</code>||&ndash;
 
|-
 
|-
|<center>DRAW_OPAQUE</center>||<center>4</center>||<center><code>0000 0000 0000 0100</code></center>||&ndash;
+
|DRAW_OPAQUE||4||<code>0000 0000 0000 0100</code>||&ndash;
 
|-
 
|-
|<center>SCREEN_TRAIL</center>||<center>8</center>||<center><code>0000 0000 0000 1000</code></center>||&ndash;
+
|SCREEN_TRAIL||8||<code>0000 0000 0000 1000</code>||&ndash;
 
|-
 
|-
|<center>SPEED_TRAIL</center>||<center>16</center>||<center><code>0000 0000 0001 0000</code></center>||&ndash;
+
|SPEED_TRAIL||16||<code>0000 0000 0001 0000</code>||&ndash;
 
|-
 
|-
|<center>RAND_VERT_V</center>||<center>32</center>||<center><code>0000 0000 0010 0000</code></center>||&ndash;
+
|RAND_VERT_V||32||<code>0000 0000 0010 0000</code>||&ndash;
 
|-
 
|-
|<center>CYCLE_ANIM</center>||<center>64</center>||<center><code>0000 0000 0100 0000</code></center>||Cycles the particles animation.
+
|CYCLE_ANIM||64||<code>0000 0000 0100 0000</code>||Cycles the particles animation.
 
|-
 
|-
|<center>DRAW_DARK</center>||<center>128</center>||<center><code>0000 0000 1000 0000</code></center>||&ndash;
+
|DRAW_DARK||128||<code>0000 0000 1000 0000</code>||&ndash;
 
|-
 
|-
|<center>VERT_TRAIL</center>||<center>256</center>||<center><code>0000 0001 0000 0000</code></center>||&ndash;
+
|VERT_TRAIL||256||<code>0000 0001 0000 0000</code>||&ndash;
 
|-
 
|-
|<center>DRAWTOP2D</center>||<center>1024</center>||<center><code>0000 0100 0000 0000</code></center>||&ndash;
+
|DRAWTOP2D||1024||<code>0000 0100 0000 0000</code>||&ndash;
 
|-
 
|-
|<center>CLIPOUT2D</center>||<center>2048</center>||<center><code>0000 1000 0000 0000</code></center>||&ndash;
+
|CLIPOUT2D||2048||<code>0000 1000 0000 0000</code>||&ndash;
 
|-
 
|-
|<center>ZCHECK_BUMP</center>||<center>4096</center>||<center><code>0001 0000 0000 0000</code></center>||&ndash;
+
|ZCHECK_BUMP||4096||<code>0001 0000 0000 0000</code>||&ndash;
 
|-
 
|-
|<center>ZCHECK_BUMP_FIRST</center>||<center>8192</center>||<center><code>0010 0000 0000 0000</code></center>||&ndash;
+
|ZCHECK_BUMP_FIRST||8192||<code>0010 0000 0000 0000</code>||&ndash;
 
|}
 
|}
  
Line 123: Line 134:
 
The following gallery shows ingame screenshots of the particles defined inside the default particle configuration.
 
The following gallery shows ingame screenshots of the particles defined inside the default particle configuration.
  
<center>
+
<gallery caption="Particle effects" widths="150px" heights="150px" perrow="4" style="text-align: center; margin: auto;">
<gallery caption="Particle effects" widths="150px" heights="150px" perrow="4">
 
 
File:VCP0.png|<b>SPARK</b>
 
File:VCP0.png|<b>SPARK</b>
 
File:VCP1.png|<b>SPARK_SMALL</b>
 
File:VCP1.png|<b>SPARK_SMALL</b>
Line 136: Line 146:
 
File:VCP9.png|<b>DEBRIS</b>
 
File:VCP9.png|<b>DEBRIS</b>
 
</gallery>
 
</gallery>
</center>
 
  
 
== See also ==
 
== See also ==
Line 146: Line 155:
 
{{N|VC|3}}
 
{{N|VC|3}}
  
[[Category:File_Formats]]
+
[[Category:File Formats]]

Revision as of 17:03, 15 April 2017

The particle.cfg file stores particle configuration data and settings for the particle system for GTA III and Vice City.

Format

The file is in plain text format. Line comments are indicated by the character ; (semicolon) and empty lines are allowed. Each entry takes one line and data in them are separated by  (space) and  (horizontal tab). The end is indicated by the terminating string ;the end.

GTA III Vice City Identifier Type Description
A Particle name string The name of the particle.
B,C,D Rendering color integer[3] The particle color in RGB format. Each is a value between 0 and 255.
E Initial color variation integer Initial color variation of the particle. Using this value a random value gets calculated to manipulate each color level of the particle. This makes every particle look different. Value is between 0 and 100 (any value above 100 is set to 100).

Example:
Rendering color = (100, 100, 100), Initial color variation = 20
Real variation = random(-20, 20)
Real color = (100 + Real variation, 100 + Real variation, 100 + Real variation)

F,G,H Fade destination color integer[3] Destination color in RGB format if the particle is fading. Each is a value between 0 and 255.
I Fading time integer Time required to fade from the rendering color to the fade destination color. Value is between 0 and 100.
J Initial radius float Initial radius of the particle sprite.
K Expansion rate float Rate the particle sprite grows during its lifetime.
L Fade to black initial intensity integer If the particle "fades to black" (means it gets destroyed with fading) this value defines its initial intensity. The value is between 0 and 255 where 255 means 100%.
M Fade to black time integer The number of frames between each fade step.
N Fade to black amount integer The amount the initial intensity gets decreased with each step.
O Fade alpha initial intensity integer
P Fade alpha time integer
Q Fade alpha amount integer
R Z rotation initial angle integer Initial angle around the z-axis. The value is between 0 and 1023.
S Z rotation change time integer Number of frames between each rotation step.
T Z rotation angle change amount integer Amount the sprite gets rotated around the z-axis with each step.
U Initial z radius float Initial radius of the particle around the z-axis.
V Z radius change time integer Number of frames between each radius change step.
W Z radius change amount float Amount the radius changes with each step.
X Animation speed integer Time between each animation step. 0 means that the particle is not animated.
Y Animation start frame integer Index first frame of the animated particle.
Z Animation final frame integer Index of the last frame of the animated particle.
AA Rotation speed integer
AB Gravitational acceleration float Acceleration of the particle falling to the ground.
AC Frictional deceleration integer Frictional deceleration of the particle. This value is between 0 and 1 where 1 represents 100%.
AD Default life span integer Default lifetime of the particle in milliseconds.
AE Position random error float Final position gets corrected using a random value between 0 and this one.
AF Velocity random error float Final velocity gets corrected using a random value between 0 and this one.
AG Expansion rate error float Expansion rate gets corrected using a random value between 0 and this one.
AH Rotation rate error integer Rotation rate gets corrected using a random value between 0 and this one.
AI Life span error shape integer Shape for the distribution of the particle's lifetime. Value is between 0 and 255.
AJ Trail length multiplier float If the particle trail flag is set the length of its trail gets multiplied by this value.
AK Stretch X float Amount the particle's texture gets stretched along x-axis.
AL Stretch Y float Amount the particle's texture gets stretched along y-axis.
AM Wind influence float Factor for the influence of wind for the particle.
AK AN Creation range float Maximum distance from the camera for actually creating the particle.
AL AO Flags integer See below

Flags

This section is incomplete. You can help by fixing and expanding it.

There are different flags that influence the particles rendering process. Those flags are listed in the following table:

Name Flag Binary Description
-1 1111 1111 1111 1111 Enables all flags. [1] Never used by default.
ZCHECK_FIRST 1 0000 0000 0000 0001
ZCHECK_STEP 2 0000 0000 0000 0010
DRAW_OPAQUE 4 0000 0000 0000 0100
SCREEN_TRAIL 8 0000 0000 0000 1000
SPEED_TRAIL 16 0000 0000 0001 0000
RAND_VERT_V 32 0000 0000 0010 0000
CYCLE_ANIM 64 0000 0000 0100 0000 Cycles the particles animation.
DRAW_DARK 128 0000 0000 1000 0000
VERT_TRAIL 256 0000 0001 0000 0000
DRAWTOP2D 1024 0000 0100 0000 0000
CLIPOUT2D 2048 0000 1000 0000 0000
ZCHECK_BUMP 4096 0001 0000 0000 0000
ZCHECK_BUMP_FIRST 8192 0010 0000 0000 0000

List of particles

This section is incomplete. You can help by fixing and expanding it.

The following gallery shows ingame screenshots of the particles defined inside the default particle configuration.

See also

References