User:Daemonika Nightfire/Scripts/Daes Particle: Difference between revisions

From Second Life Wiki
Jump to navigation Jump to search
Daemonika Nightfire (talk | contribs)
m just some typos
Daemonika Nightfire (talk | contribs)
Line 86: Line 86:
</source>
</source>


==*DS* Particle Wiki v5.0.00 (2021-05-16 17:14:43 lsl2 script)==
==*DS* Particle Wiki v5.0.02 (2021-05-16 17:14:43 lsl2 script)==
Dieses ist mein beforzugtes Format zum erstellen saemtlicher Particle-Effecte.
Dieses ist mein beforzugtes Format zum erstellen saemtlicher Particle-Effecte.
Der Vorteil besteht darin, das sich diese Kurzfassung uebersichtlich in ein Script an die gewuenschte stelle einfuegen laesst.
Der Vorteil besteht darin, das sich diese Kurzfassung uebersichtlich in ein Script an die gewuenschte stelle einfuegen laesst.
Line 92: Line 92:
<source lang="lsl2">
<source lang="lsl2">
/*
/*
    ╔════════════════════════════════════════════════════════−−−−−−−−−→
    ║ *DS* Particle Wiki v5.0.00 for advanced by Daemonika Nightfire
    ╚═════════════════════════════−−−−−−−−−→
    http://wiki.secondlife.com/wiki/LlLinkParticleSystem#llLinkParticleSystem


    ╔════════════════════════════════−−−−−−−−−→
    ║ *DS* Particle Wiki by Daemonika Nightfire (daemonika.nightfire)
    ╚═══════════════════−−−−−−−−−→
   
    Daemonika's Particle Wiki fuer Fortgeschrittene (extrem kurzfassung, Deutsch)
    Nachfolgende Zeilen dienen ausschliesslich zur Information!
    Dieses Script eignet sich hervorragend zum vorbereiten von Particle fuer ein entgueltiges Produkt.
   
    [ Type (gruen) | Value-Zahl (schwarz) | Value-Text (blau) | Beschreibung (orange) ]


System Behavior
System Behavior
integer        0 = PSYS_PART_FLAGS                     // fuer folgende Befehle wichtig:
integer        0 = PSYS_PART_FLAGS                   // fuer folgende Befehle wichtig:
integer    0x004 = PSYS_PART_BOUNCE_MASK               // bleiben auf ebene
integer    0x004 = PSYS_PART_BOUNCE_MASK             // Der Emitter definiert eine kuenstliche horizontale Ebene auf Hoehe seiner Position, an der die Partikel abprallen
integer    0x100 = PSYS_PART_EMISSIVE_MASK             // option ganz hell
integer    0x100 = PSYS_PART_EMISSIVE_MASK           // Partikel sind lichtunabhaengig wie "Ganz hell" im Baumenue
integer    0x010 = PSYS_PART_FOLLOW_SRC_MASK           // Particle halten relative position zum Prim (!PSYS_SRC_BURST_RADIUS)
integer    0x010 = PSYS_PART_FOLLOW_SRC_MASK         // Partikel behalten ihren Startoffset relativ zum Prim und folgen dessen Bewegung
integer    0x020 = PSYS_PART_FOLLOW_VELOCITY_MASK       // Textur ausrichtung "Oben" zum ziel
integer    0x020 = PSYS_PART_FOLLOW_VELOCITY_MASK   // Textur richtet sich entlang der Bewegungsrichtung des Partikels aus
integer    0x001 = PSYS_PART_INTERP_COLOR_MASK         // erlaubt den farbwechsel
integer    0x001 = PSYS_PART_INTERP_COLOR_MASK       // beeinflusst Farbe und Alpha
integer    0x002 = PSYS_PART_INTERP_SCALE_MASK         // erlaubt die groessenaenderung
integer    0x002 = PSYS_PART_INTERP_SCALE_MASK       // beeinflusst Groesse
integer    0x080 = PSYS_PART_TARGET_LINEAR_MASK         // auf direktem weg zum ziel (!PSYS_SRC_ACCEL & !PSYS_SRC_BURST_RADIUS)
integer    0x080 = PSYS_PART_TARGET_LINEAR_MASK     // Partikel bewegen sich linear direkt zum Ziel, Beschleunigung und Radius verlieren ihre uebliche Wirkung
integer    0x040 = PSYS_PART_TARGET_POS_MASK           // auf umweg zum ziel
integer    0x040 = PSYS_PART_TARGET_POS_MASK         // Partikel bewegen sich physikalisch beeinflusst zum Ziel unter Beruecksichtigung von Beschleunigung
integer    0x008 = PSYS_PART_WIND_MASK                 // Particle folgen dem Wind
integer    0x008 = PSYS_PART_WIND_MASK               // Partikel werden vom simulierten Wind beeinflusst
integer    0x400 = PSYS_PART_RIBBON_MASK               // verbindet die Particle zu einem Faden (!PSYS_PART_FOLLOW_VELOCITY_MASK)
integer    0x200 = PSYS_PART_RIBBON_MASK             // verbindet aufeinanderfolgende Partikel zu einem Band


System Presentation
System Presentation
integer      9 = PSYS_SRC_PATTERN                     // fuer folgende Befehle wichtig:
integer      9 = PSYS_SRC_PATTERN                     // fuer folgende Befehle wichtig:
integer    0x02 = PSYS_SRC_PATTERN_EXPLODE             // Explusion
integer    0x02 = PSYS_SRC_PATTERN_EXPLODE             // Explosion
integer    0x08 = PSYS_SRC_PATTERN_ANGLE_CONE           // kugelfoermiger Effekt mit start und end Begrenzung
integer    0x08 = PSYS_SRC_PATTERN_ANGLE_CONE         // Vollkegel, Partikel entstehen innerhalb eines Kegels
integer    0x04 = PSYS_SRC_PATTERN_ANGLE               // ringfoermiger Effekt mit start und end Begrenzung
integer    0x04 = PSYS_SRC_PATTERN_ANGLE               // Ring oder Scheibenform in einer Ebene
integer    0x01 = PSYS_SRC_PATTERN_DROP                 // Tropfen (!PSYS_SRC_BURST_RADIUS & !SYS_SRC_BURST_SPEED_MIN & !PSYS_SRC_BURST_SPEED_MAX)
integer    0x01 = PSYS_SRC_PATTERN_DROP               // Partikel entstehen direkt unter dem Emitter ohne Startgeschwindigkeit
integer    0x10 = PSYS_SRC_PATTERN_ANGLE_CONE_EMPTY     // unvollstaendige Implementierung (NUTZLOS)
integer    0x10 = PSYS_SRC_PATTERN_ANGLE_CONE_EMPTY   // Hohlkegel, Partikel entstehen nur auf der Mantelflaeche


Particle Blending
System Blending Source
integer      24 = PSYS_PART_BLEND_FUNC_SOURCE          // fuer folgende Befehle wichtig:
integer      24 = PSYS_PART_BLEND_FUNC_SOURCE          // fuer folgende Befehle wichtig:
integer    0x01 = PSYS_PART_BF_ONE                      // volle Quellfarbe wird in die Mischung uebernommen
integer    0x00 = PSYS_PART_BF_ZERO                    // Quellfarbe wird ignoriert
integer    0x03 = PSYS_PART_BF_DEST_COLOR              // Quellfarbe wird mit der Hintergrundfarbe multipliziert
integer    0x02 = PSYS_PART_BF_SOURCE_COLOR            // Quellfarbe verstaerkt sich selbst
integer    0x05 = PSYS_PART_BF_ONE_MINUS_DEST_COLOR    // Quellfarbe wird mit invertierter Hintergrundfarbe multipliziert
integer    0x04 = PSYS_PART_BF_ONE_MINUS_SOURCE_COLOR  // Quellfarbe wird mit invertierter eigener Farbe multipliziert
integer    0x07 = PSYS_PART_BF_SOURCE_ALPHA            // Quellfarbe wird mit eigener Alpha gewichtet
integer    0x06 = PSYS_PART_BF_ONE_MINUS_SOURCE_ALPHA  // Quellfarbe wird mit invertierter eigener Alpha gewichtet
System Blending Dest
integer      25 = PSYS_PART_BLEND_FUNC_DEST            // fuer folgende Befehle wichtig:
integer      25 = PSYS_PART_BLEND_FUNC_DEST            // fuer folgende Befehle wichtig:
integer     0x0 = PSYS_PART_BF_ONE
integer   0x01 = PSYS_PART_BF_ONE                     // Hintergrund bleibt voll erhalten
integer     0x1 = PSYS_PART_BF_ZERO
integer   0x00 = PSYS_PART_BF_ZERO                     // Hintergrund wird komplett ersetzt
integer     0x2 = PSYS_PART_BF_DEST_COLOR  
integer   0x03 = PSYS_PART_BF_DEST_COLOR               // Hintergrund wird mit eigener Farbe multipliziert
integer     0x3 = PSYS_PART_BF_SOURCE_COLOR
integer   0x02 = PSYS_PART_BF_SOURCE_COLOR             // Hintergrund wird mit Partikelfarbe multipliziert
integer     0x4 = PSYS_PART_BF_ONE_MINUS_DEST_COLOR
integer   0x05 = PSYS_PART_BF_ONE_MINUS_DEST_COLOR     // Hintergrund wird mit invertierter eigener Farbe multipliziert
integer     0x5 = PSYS_PART_BF_ONE_MINUS_SOURCE_COLOR
integer   0x04 = PSYS_PART_BF_ONE_MINUS_SOURCE_COLOR   // Hintergrund wird mit invertierter Partikelfarbe multipliziert
integer     0x7 = PSYS_PART_BF_SOURCE_ALPHA            // Standard
integer   0x07 = PSYS_PART_BF_SOURCE_ALPHA            // Hintergrund wird mit Partikel Alpha gewichtet
integer     0x9 = PSYS_PART_BF_ONE_MINUS_SOURCE_ALPHA  // Standard
integer   0x06 = PSYS_PART_BF_ONE_MINUS_SOURCE_ALPHA  // klassisches Alpha Blending, transparente Ueberblendung


Particle Parameter
Particle Parameter
integer      0 = PSYS_PART_FLAGS                // System Behavior                   | Beispiel: 0,0x100 | 0x004 | 0x001 | 0x002 | 0x020,
integer      0 = // (System Behavior)          Beispiel: 0, 0x100 | 0x004 | 0x001 | 0x002 | 0x020 | u.s.w.,
vector      1 = PSYS_PART_START_COLOR          // Farbe Begin                      | <0.0,0.0,0.0> bis <1.0,1.0,1.0> PSYS_PART_INTERP_COLOR_MASK
vector      1 = PSYS_PART_START_COLOR          // Start Farbe           braucht 0x001 | <0.0,0.0,0.0> bis <1.0,1.0,1.0>
float        2 = PSYS_PART_START_ALPHA          // Transparenz Begin                | 0.0 bis 1.0                     PSYS_PART_INTERP_COLOR_MASK
float        2 = PSYS_PART_START_ALPHA          // Transparenz Start      ''      | 0.0 bis 1.0
vector      3 = PSYS_PART_END_COLOR            // Farbe Ende                        | <0.0,0.0,0.0> bis <1.0,1.0,1.0> PSYS_PART_INTERP_COLOR_MASK
vector      3 = PSYS_PART_END_COLOR            // End Farbe             ''      | <0.0,0.0,0.0> bis <1.0,1.0,1.0>
float        4 = PSYS_PART_END_ALPHA            // Transparenz Ende                 | 0.0 bis 1.0                     PSYS_PART_INTERP_COLOR_MASK
float        4 = PSYS_PART_END_ALPHA            // Transparenz Ende       ''      | 0.0 bis 1.0
vector      5 = PSYS_PART_START_SCALE          // Groesse Begin <x,y,z>             | min. = 0.03125 | max. = 4.00 | z = ungenutzt   PSYS_PART_INTERP_SCALE_MASK
vector      5 = PSYS_PART_START_SCALE          // Anfangsgroesse <x,y,z> braucht 0x002 | min. = 0.03125 | max. = 4.00 | z = ungenutzt
vector      6 = PSYS_PART_END_SCALE            // Groesse Ende  <x,y,z>             | min. = 0.03125 | max. = 4.00 | z = ungenutzt   PSYS_PART_INTERP_SCALE_MASK
vector      6 = PSYS_PART_END_SCALE            // Endgroesse    <x,y,z> ''      | min. = 0.03125 | max. = 4.00 | z = ungenutzt
float        7 = PSYS_PART_MAX_AGE              // Lebensdauer                       | max. 30.0 secunden
float        7 = PSYS_PART_MAX_AGE              // Lebensdauer der Partikel | max. 30.0 Sekunden
vector      8 = PSYS_SRC_ACCEL                // Beschleunigung                   | Globale Ausrichtung <x,y,z>
vector      8 = PSYS_SRC_ACCEL                // Globale Beschleunigung <x,y,z>
integer      9 = PSYS_SRC_PATTERN              // System Presentation               | Beispiel: 9,0x08,
integer      9 = // (System Presentation)      Beispiel: 9, 0x08,
            10 = // deleted
-------    10 =                               // --- unused reserved slot, not implemented ---
            11 = // deleted
-------    11 =                               // --- unused reserved slot, not implemented ---
string      12 = PSYS_SRC_TEXTURE              // Textur UUID erforderlich         | Beispiel: 12,"b1d84ecb-2a83-d3c4-7bfb-592648dcb20d",
string      12 = PSYS_SRC_TEXTURE              // Textur UUID erforderlich | Beispiel: "b1d84ecb-2a83-d3c4-7bfb-592648dcb20d"
float      13 = PSYS_SRC_BURST_RATE            // Geschwindigkeit pro Sekunde      | min. = 0.01
float      13 = PSYS_SRC_BURST_RATE            // Zeitintervall zwischen zwei Bursts in Sekunden | min. = 0.01
            14 = // not used
-------    14 =                               // --- unused reserved slot, not implemented ---
integer    15 = PSYS_SRC_BURST_PART_COUNT      // Particle Anzahl                   | Viewer Limit berechnen, _COUNT x _RATE x _MAX_AGE = Total
integer    15 = PSYS_SRC_BURST_PART_COUNT      // Partikel Anzahl pro Burst
float      16 = PSYS_SRC_BURST_RADIUS          // Radius                           | max. = 50.0 meter Radius (!PSYS_PART_FOLLOW_SRC_MASK)
float      16 = PSYS_SRC_BURST_RADIUS          // Startverteilung im Radius | 0.50 = 0.5 Meter Radius | max. = 50.0 Meter
float      17 = PSYS_SRC_BURST_SPEED_MIN      // minimal Austrits-Geschrwindigkeit |
float      17 = PSYS_SRC_BURST_SPEED_MIN      // Mindest Austritts Geschwindigkeit
float      18 = PSYS_SRC_BURST_SPEED_MAX      // maximal Austrits-Geschrwindigkeit |
float      18 = PSYS_SRC_BURST_SPEED_MAX      // Maximale Austritts Geschwindigkeit
float      19 = PSYS_SRC_MAX_AGE              // Abschalt-Timer                   | nicht mit Lebensdauer verwechseln (0.0 = dauerbetrieb)
float      19 = PSYS_SRC_MAX_AGE              // Abschalt Timer des Emitters | nicht mit Partikel Lebensdauer verwechseln (0.0 = Dauerbetrieb)
key        20 = PSYS_SRC_TARGET_KEY            // Particle zum Ziehl (key)"UUID"    | PSYS_PART_TARGET_LINEAR_MASK oder PSYS_PART_TARGET_POS_MASK
key        20 = PSYS_SRC_TARGET_KEY            // Ziel UUID fuer TARGET_LINEAR oder TARGET_POS
vector      21 = PSYS_SRC_OMEGA                // Rotation                          | Globale Achse <x,y,z>
vector      21 = PSYS_SRC_OMEGA                // Rotationsgeschwindigkeit in Radiant pro Sekunde um <x,y,z>
float      22 = PSYS_SRC_ANGLE_BEGIN          // innerer Abstand zum Zentrum      | PSYS_SRC_PATTERN_ANGLE oder PSYS_SRC_PATTERN_ANGLE_CONE
float      22 = PSYS_SRC_ANGLE_BEGIN          // Innerer Winkelbereich bei ANGLE oder ANGLE_CONE
float      23 = PSYS_SRC_ANGLE_END            // aeusserer Abstand zum Zentrum    | PSYS_SRC_PATTERN_ANGLE oder PSYS_SRC_PATTERN_ANGLE_CONE
float      23 = PSYS_SRC_ANGLE_END            // Aeusserer Winkelbereich bei ANGLE oder ANGLE_CONE
integer    24 = PSYS_PART_BLEND_FUNC_SOURCE    // Particle Blending                 | Beispiel: 24,0x7,
integer    24 = // (System Blending Source)    Beispiel: 0x07
integer    25 = PSYS_PART_BLEND_FUNC_DEST      // Particle Blending                 | Beispiel: 25,0x9,
integer    25 = // (System Blending Dest)      Beispiel: 0x06
float      26 = PSYS_PART_START_GLOW          // Gluehen Begin                    | 0.0 bis 1.0   PSYS_PART_INTERP_COLOR_MASK
float      26 = PSYS_PART_START_GLOW          // Glow Start | 0.0 bis 1.0
float      27 = PSYS_PART_END_GLOW            // Gluehen Ende                     | 0.0 bis 1.0   PSYS_PART_INTERP_COLOR_MASK
float      27 = PSYS_PART_END_GLOW            // Glow Ende | 0.0 bis 1.0


    Hier endet die Particle Wiki.
   
*/
*/
</source>
</source>
  Im eigentlichen Script wird lediglich folgendes Beispiel benoetigt.
### Hier beginnt der Scriptbereich ###
  Im Scriptbefehl werden ausschliesslich die Value Zahlen verwendet.
Das dient der Uebersichtlichkeit im eigentlichen Script
<source lang="lsl2">
<source lang="lsl2">
default
default
Line 170: Line 189:
     {
     {
         // In der Liste verwende ich nur benoetigte Parameter.
         // In der Liste verwende ich nur benoetigte Parameter.
       
         llLinkParticleSystem(LINK_THIS,[7,3.0,  0,0x100 | 0x001 | 0x002,  9,0x02,
         llLinkParticleSystem(LINK_THIS,[7,3.0,  0,0x100 | 0x001 | 0x002,  9,0x02,
         1,<0.8,0.6,0.2>, 3,<1.0,0.0,0.0>, 5,<0.10,0.10,0.00>, 6,<0.05,0.05,0.00>, 8,<0.00,0.00,0.1>,  
         1,<0.8,0.6,0.2>, 3,<1.0,0.0,0.0>, 5,<0.10,0.10,0.00>, 6,<0.05,0.05,0.00>, 8,<0.00,0.00,0.1>,  
         13,0.1, 15,2, 16,0.5, 17,0.01, 18,0.02, 21,<0,0,1>, 2,1.0, 4,0.5, 26,0.10, 27,0.00,
         13,0.1, 15,2, 16,0.5, 17,0.01, 18,0.02, 22,0.0, 23,0.0, 21,<0,0,1>,
         12,"b1d84ecb-2a83-d3c4-7bfb-592648dcb20d"]);
         12,"b1d84ecb-2a83-d3c4-7bfb-592648dcb20d",  2,1.0,  4,0.5]);
          
          
         //llLinkParticleSystem(LINK_SET, []); // loescht die Particle
         //llLinkParticleSystem(LINK_SET, []); // loescht die Particle

Revision as of 17:10, 15 February 2026

*DS* Particle Wiki v4.0.03 (2021-05-09 23:01:10 lsl2 script)

/*
        ╔════════════════════════════════−−−−−−−−−→
        ║ Dae's Particle by Daemonika Nightfire
        ╚═══════════════════−−−−−−−−−→
        http://wiki.secondlife.com/wiki/LlLinkParticleSystem#llLinkParticleSystem
*/

Particle()
{
    llLinkParticleSystem(LINK_THIS,[
    PSYS_PART_FLAGS,             PSYS_PART_EMISSIVE_MASK              // option ganz hell
                                 //| PSYS_PART_BOUNCE_MASK              // bleiben auf ebene
                                 | PSYS_PART_INTERP_COLOR_MASK        // erlaubt den Farbwechsel
                                 | PSYS_PART_INTERP_SCALE_MASK        // erlaubt die Groessenaenderung
                                 | PSYS_PART_WIND_MASK                // Particle folgen dem wind
                                 //| PSYS_PART_FOLLOW_SRC_MASK          // Particle halten relative position zum Prim (!PSYS_SRC_BURST_RADIUS)
                                 | PSYS_PART_FOLLOW_VELOCITY_MASK     // Textur Ausrichtung "Oben" zum Ziel
                                 //| PSYS_PART_TARGET_LINEAR_MASK       // auf direktem weg zum Ziel (!PSYS_SRC_ACCEL & !PSYS_SRC_BURST_RADIUS)
                                 //| PSYS_PART_TARGET_POS_MASK          // auf Umweg zum Ziel
                                 //| PSYS_PART_RIBBON_MASK              // verbindet die Particle zu einem Faden (!PSYS_PART_FOLLOW_VELOCITY_MASK)
                                 ,
    
    PSYS_SRC_PATTERN,            PSYS_SRC_PATTERN_EXPLODE             // Explusion
                                 //PSYS_SRC_PATTERN_DROP                // Tropfen (!PSYS_SRC_BURST_RADIUS & !SYS_SRC_BURST_SPEED_MIN & !PSYS_SRC_BURST_SPEED_MAX)
                                 //PSYS_SRC_PATTERN_ANGLE_CONE_EMPTY    // unvollstaendige Implementierung (NUTZLOS)
                                 //PSYS_SRC_PATTERN_ANGLE_CONE          // kugelfoermiger Effekt mit start und end Begrenzung
                                 //PSYS_SRC_PATTERN_ANGLE               // ringfoermiger Effekt mit start und end Begrenzung
                                 ,
                                
    PSYS_PART_BLEND_FUNC_SOURCE, //PSYS_PART_BF_ONE                     // 
                                 //PSYS_PART_BF_ZERO                    // 
                                 //PSYS_PART_BF_DEST_COLOR              // 
                                 //PSYS_PART_BF_SOURCE_COLOR            // 
                                 //PSYS_PART_BF_ONE_MINUS_DEST_COLOR    // 
                                 //PSYS_PART_BF_ONE_MINUS_SOURCE_COLOR  // 
                                 PSYS_PART_BF_SOURCE_ALPHA            // Standard
                                 //PSYS_PART_BF_ONE_MINUS_SOURCE_ALPHA  //
                                 ,
                                 
    PSYS_PART_BLEND_FUNC_DEST,   //PSYS_PART_BF_ONE                     // 
                                 //PSYS_PART_BF_ZERO                    // 
                                 //PSYS_PART_BF_DEST_COLOR              // 
                                 //PSYS_PART_BF_SOURCE_COLOR            // 
                                 //PSYS_PART_BF_ONE_MINUS_DEST_COLOR    // 
                                 //PSYS_PART_BF_ONE_MINUS_SOURCE_COLOR  // 
                                 //PSYS_PART_BF_SOURCE_ALPHA            //   
                                 PSYS_PART_BF_ONE_MINUS_SOURCE_ALPHA  // Standard
                                 ,
    
    //PSYS_SRC_TARGET_KEY,        "",                 // Particle zum Ziel (UUID)          | PSYS_PART_TARGET_LINEAR_MASK oder PSYS_PART_TARGET_POS_MASK
/**/PSYS_PART_MAX_AGE,          5.0,                // Lebensdauer                       | max. 30.0 Sekunden
    PSYS_SRC_MAX_AGE,           0.0,                // Abschalt-Timer                    | nicht mit Lebensdauer verwechseln (0.0 = dauerbetrieb)
    PSYS_PART_START_COLOR,      <1.0,0.0,0.0>,      // Farbe Begin                       | <0.0,0.0,0.0> bis <1.0,1.0,1.0>    PSYS_PART_INTERP_COLOR_MASK
    PSYS_PART_END_COLOR,        <0.0,0.0,1.0>,      // Farbe Ende                        | <0.0,0.0,0.0> bis <1.0,1.0,1.0>    ''
    PSYS_PART_START_SCALE,      <0.30,0.30,0.00>,   // Groesse Begin <x,y,z>             | min. = 0.03125 | max. = 4.00 | z = ungenutzt   PSYS_PART_INTERP_SCALE_MASK
    PSYS_PART_END_SCALE,        <0.15,0.15,0.00>,   // Groesse Ende  <x,y,z>             | min. = 0.03125 | max. = 4.00 | z = ungenutzt   ''
    PSYS_PART_START_ALPHA,      1.00,               // Transparenz Begin                 | 0.0 bis 1.0    PSYS_PART_INTERP_COLOR_MASK
    PSYS_PART_END_ALPHA,        0.00,               // Transparenz Ende                  | 0.0 bis 1.0    ''
    PSYS_PART_START_GLOW,       0.10,               // Gluehen Begin                     | 0.0 bis 1.0    PSYS_PART_INTERP_COLOR_MASK
    PSYS_PART_END_GLOW,         0.00,               // Gluehen Ende                      | 0.0 bis 1.0    ''
/**/PSYS_SRC_BURST_RATE,        0.05,               // Geschwindigkeit pro Sekunde       | min. = 0.01
/**/PSYS_SRC_BURST_PART_COUNT,  1,                  // Particle Anzahl                   | Viewer Limit berechnen, /**/ _COUNT x _RATE x _MAX_AGE = Total
    PSYS_SRC_BURST_RADIUS,      0.75,               // Radius                            | max. = 50.0 meter Radius (!PSYS_PART_FOLLOW_SRC_MASK)
    PSYS_SRC_BURST_SPEED_MIN,   0.10,               // minimal Austritts-Geschwindigkeit |
    PSYS_SRC_BURST_SPEED_MAX,   0.25,               // maximal Austritts-Geschwindigkeit |
    PSYS_SRC_ANGLE_BEGIN,       0.00,               // innerer Abstand zum Zentrum       | PSYS_SRC_PATTERN_ANGLE oder PSYS_SRC_PATTERN_ANGLE_CONE
    PSYS_SRC_ANGLE_END,         0.00,               // aeusserer Abstand zum Zentrum     | ''
    PSYS_SRC_OMEGA,             <1,1,1>,            // Rotation                          | Globale Achse <x,y,z>
    PSYS_SRC_ACCEL,             <0.00,0.00,0.10>,   // Beschleunigung                    | Globale Ausrichtung <x,y,z>
    PSYS_SRC_TEXTURE,           ""                  // Textur UUID erforderlich          | Beispiel: "b1d84ecb-2a83-d3c4-7bfb-592648dcb20d"
    ]);
}

// hier unten beginnt das eigentliche script
default
{
    state_entry()
    {
        Particle(); // startet hier das oben angepasste Particlesystem
        //llLinkParticleSystem(LINK_SET, []); // loescht die Particle
    }
}

*DS* Particle Wiki v5.0.02 (2021-05-16 17:14:43 lsl2 script)

Dieses ist mein beforzugtes Format zum erstellen saemtlicher Particle-Effecte. Der Vorteil besteht darin, das sich diese Kurzfassung uebersichtlich in ein Script an die gewuenschte stelle einfuegen laesst.

/*

    ╔════════════════════════════════−−−−−−−−−→
    ║ *DS* Particle Wiki by Daemonika Nightfire (daemonika.nightfire)
    ╚═══════════════════−−−−−−−−−→
    
    Daemonika's Particle Wiki fuer Fortgeschrittene (extrem kurzfassung, Deutsch)
    Nachfolgende Zeilen dienen ausschliesslich zur Information!
    Dieses Script eignet sich hervorragend zum vorbereiten von Particle fuer ein entgueltiges Produkt.
    
    [ Type (gruen) | Value-Zahl (schwarz) | Value-Text (blau) | Beschreibung (orange) ]

System Behavior
integer        0 = PSYS_PART_FLAGS                   // fuer folgende Befehle wichtig:
integer    0x004 = PSYS_PART_BOUNCE_MASK             // Der Emitter definiert eine kuenstliche horizontale Ebene auf Hoehe seiner Position, an der die Partikel abprallen
integer    0x100 = PSYS_PART_EMISSIVE_MASK           // Partikel sind lichtunabhaengig wie "Ganz hell" im Baumenue
integer    0x010 = PSYS_PART_FOLLOW_SRC_MASK         // Partikel behalten ihren Startoffset relativ zum Prim und folgen dessen Bewegung
integer    0x020 = PSYS_PART_FOLLOW_VELOCITY_MASK    // Textur richtet sich entlang der Bewegungsrichtung des Partikels aus
integer    0x001 = PSYS_PART_INTERP_COLOR_MASK       // beeinflusst Farbe und Alpha
integer    0x002 = PSYS_PART_INTERP_SCALE_MASK       // beeinflusst Groesse
integer    0x080 = PSYS_PART_TARGET_LINEAR_MASK      // Partikel bewegen sich linear direkt zum Ziel, Beschleunigung und Radius verlieren ihre uebliche Wirkung
integer    0x040 = PSYS_PART_TARGET_POS_MASK         // Partikel bewegen sich physikalisch beeinflusst zum Ziel unter Beruecksichtigung von Beschleunigung
integer    0x008 = PSYS_PART_WIND_MASK               // Partikel werden vom simulierten Wind beeinflusst
integer    0x200 = PSYS_PART_RIBBON_MASK             // verbindet aufeinanderfolgende Partikel zu einem Band

System Presentation
integer       9 = PSYS_SRC_PATTERN                     // fuer folgende Befehle wichtig:
integer    0x02 = PSYS_SRC_PATTERN_EXPLODE             // Explosion
integer    0x08 = PSYS_SRC_PATTERN_ANGLE_CONE          // Vollkegel, Partikel entstehen innerhalb eines Kegels
integer    0x04 = PSYS_SRC_PATTERN_ANGLE               // Ring oder Scheibenform in einer Ebene
integer    0x01 = PSYS_SRC_PATTERN_DROP                // Partikel entstehen direkt unter dem Emitter ohne Startgeschwindigkeit
integer    0x10 = PSYS_SRC_PATTERN_ANGLE_CONE_EMPTY    // Hohlkegel, Partikel entstehen nur auf der Mantelflaeche

System Blending Source
integer      24 = PSYS_PART_BLEND_FUNC_SOURCE           // fuer folgende Befehle wichtig:
integer    0x01 = PSYS_PART_BF_ONE                      // volle Quellfarbe wird in die Mischung uebernommen
integer    0x00 = PSYS_PART_BF_ZERO                     // Quellfarbe wird ignoriert
integer    0x03 = PSYS_PART_BF_DEST_COLOR               // Quellfarbe wird mit der Hintergrundfarbe multipliziert
integer    0x02 = PSYS_PART_BF_SOURCE_COLOR             // Quellfarbe verstaerkt sich selbst
integer    0x05 = PSYS_PART_BF_ONE_MINUS_DEST_COLOR     // Quellfarbe wird mit invertierter Hintergrundfarbe multipliziert
integer    0x04 = PSYS_PART_BF_ONE_MINUS_SOURCE_COLOR   // Quellfarbe wird mit invertierter eigener Farbe multipliziert
integer    0x07 = PSYS_PART_BF_SOURCE_ALPHA             // Quellfarbe wird mit eigener Alpha gewichtet
integer    0x06 = PSYS_PART_BF_ONE_MINUS_SOURCE_ALPHA   // Quellfarbe wird mit invertierter eigener Alpha gewichtet

System Blending Dest
integer      25 = PSYS_PART_BLEND_FUNC_DEST             // fuer folgende Befehle wichtig:
integer    0x01 = PSYS_PART_BF_ONE                      // Hintergrund bleibt voll erhalten
integer    0x00 = PSYS_PART_BF_ZERO                     // Hintergrund wird komplett ersetzt
integer    0x03 = PSYS_PART_BF_DEST_COLOR               // Hintergrund wird mit eigener Farbe multipliziert
integer    0x02 = PSYS_PART_BF_SOURCE_COLOR             // Hintergrund wird mit Partikelfarbe multipliziert
integer    0x05 = PSYS_PART_BF_ONE_MINUS_DEST_COLOR     // Hintergrund wird mit invertierter eigener Farbe multipliziert
integer    0x04 = PSYS_PART_BF_ONE_MINUS_SOURCE_COLOR   // Hintergrund wird mit invertierter Partikelfarbe multipliziert
integer    0x07 = PSYS_PART_BF_SOURCE_ALPHA             // Hintergrund wird mit Partikel Alpha gewichtet
integer    0x06 = PSYS_PART_BF_ONE_MINUS_SOURCE_ALPHA   // klassisches Alpha Blending, transparente Ueberblendung

Particle Parameter
integer      0 = // (System Behavior)           Beispiel: 0, 0x100 | 0x004 | 0x001 | 0x002 | 0x020 | u.s.w.,
vector       1 = PSYS_PART_START_COLOR          // Start Farbe            braucht 0x001 | <0.0,0.0,0.0> bis <1.0,1.0,1.0>
float        2 = PSYS_PART_START_ALPHA          // Transparenz Start      ''       | 0.0 bis 1.0
vector       3 = PSYS_PART_END_COLOR            // End Farbe              ''       | <0.0,0.0,0.0> bis <1.0,1.0,1.0>
float        4 = PSYS_PART_END_ALPHA            // Transparenz Ende       ''       | 0.0 bis 1.0
vector       5 = PSYS_PART_START_SCALE          // Anfangsgroesse <x,y,z> braucht 0x002 | min. = 0.03125 | max. = 4.00 | z = ungenutzt
vector       6 = PSYS_PART_END_SCALE            // Endgroesse     <x,y,z> ''       | min. = 0.03125 | max. = 4.00 | z = ungenutzt
float        7 = PSYS_PART_MAX_AGE              // Lebensdauer der Partikel | max. 30.0 Sekunden
vector       8 = PSYS_SRC_ACCEL                 // Globale Beschleunigung <x,y,z>
integer      9 = // (System Presentation)       Beispiel: 9, 0x08,
-------     10 =                                // --- unused reserved slot, not implemented ---
-------     11 =                                // --- unused reserved slot, not implemented ---
string      12 = PSYS_SRC_TEXTURE               // Textur UUID erforderlich | Beispiel: "b1d84ecb-2a83-d3c4-7bfb-592648dcb20d"
float       13 = PSYS_SRC_BURST_RATE            // Zeitintervall zwischen zwei Bursts in Sekunden | min. = 0.01
-------     14 =                                // --- unused reserved slot, not implemented ---
integer     15 = PSYS_SRC_BURST_PART_COUNT      // Partikel Anzahl pro Burst
float       16 = PSYS_SRC_BURST_RADIUS          // Startverteilung im Radius | 0.50 = 0.5 Meter Radius | max. = 50.0 Meter
float       17 = PSYS_SRC_BURST_SPEED_MIN       // Mindest Austritts Geschwindigkeit
float       18 = PSYS_SRC_BURST_SPEED_MAX       // Maximale Austritts Geschwindigkeit
float       19 = PSYS_SRC_MAX_AGE               // Abschalt Timer des Emitters | nicht mit Partikel Lebensdauer verwechseln (0.0 = Dauerbetrieb)
key         20 = PSYS_SRC_TARGET_KEY            // Ziel UUID fuer TARGET_LINEAR oder TARGET_POS
vector      21 = PSYS_SRC_OMEGA                 // Rotationsgeschwindigkeit in Radiant pro Sekunde um <x,y,z>
float       22 = PSYS_SRC_ANGLE_BEGIN           // Innerer Winkelbereich bei ANGLE oder ANGLE_CONE
float       23 = PSYS_SRC_ANGLE_END             // Aeusserer Winkelbereich bei ANGLE oder ANGLE_CONE
integer     24 = // (System Blending Source)    Beispiel: 0x07
integer     25 = // (System Blending Dest)      Beispiel: 0x06
float       26 = PSYS_PART_START_GLOW           // Glow Start | 0.0 bis 1.0
float       27 = PSYS_PART_END_GLOW             // Glow Ende  | 0.0 bis 1.0

    Hier endet die Particle Wiki.
    
*/
### Hier beginnt der Scriptbereich ###
Im Scriptbefehl werden ausschliesslich die Value Zahlen verwendet.
Das dient der Uebersichtlichkeit im eigentlichen Script
default
{
    state_entry()
    {
        // In der Liste verwende ich nur benoetigte Parameter.
        
        llLinkParticleSystem(LINK_THIS,[7,3.0,  0,0x100 | 0x001 | 0x002,  9,0x02,
        1,<0.8,0.6,0.2>,  3,<1.0,0.0,0.0>,  5,<0.10,0.10,0.00>,  6,<0.05,0.05,0.00>,  8,<0.00,0.00,0.1>, 
        13,0.1,  15,2,  16,0.5,  17,0.01,  18,0.02,  22,0.0,  23,0.0,  21,<0,0,1>,
        12,"b1d84ecb-2a83-d3c4-7bfb-592648dcb20d",  2,1.0,  4,0.5]);
        
        //llLinkParticleSystem(LINK_SET, []); // loescht die Particle
    }
}