Welcome to the Divine Skins Emitter Library — a collection of Emitters and Parameters.
╰›bindWeight controls how much the particle follows the movement of the bone it's attached to — 1 means fully follows, 0 means stays in place.

bindWeight: embed = ValueFloat {
constantValue: f32 = 1
}
╰›The rate value controls how many particles are spawned per second by the emitter.

--------------------------------
rate: embed = ValueFloat {
constantValue: f32 = 1 #1 particle in emitter
}
--------------------------------
rate: embed = ValueFloat {
constantValue: f32 = 20 #20 particle spawning in 1 emitter
}
╰›particleLifetime defines how long each particle lives after being emitted.
╰›lifetime sets how long the emitter itself lasts before disappearing.

particleLifetime: embed = ValueFloat {
constantValue: f32 = 1
}
--------------------
particleLifetime: embed = ValueFloat {
constantValue: f32 = -1 #infinity
}
--------------------
lifetime: option[f32] = {
1
}
╰›particleLinger delays the disappearance of the particle after the emitter is finished, letting it stay visible for the given time (in seconds).

particleLinger: option[f32] = {
1
}
╰›miscRenderFlags is a special setting that controls extra rendering behaviors for the particle


miscRenderFlags: u8 = 0
╰›EmitterPosition sets where the particle spawns relative to the emitter — higher Y values move it up, lower values move it down.

---------------------------------------------
EmitterPosition: embed = ValueVector3 {
constantValue: vec3 = { 0, 100, 0 } #higher
}
---------------------------------------------
EmitterPosition: embed = ValueVector3 {
constantValue: vec3 = { 0, -100, 0 } #lower
}
---------------------------------------------
EmitterPosition: embed = ValueVector3 {
constantValue: vec3 = { 100, 0, 0 } #right
}
---------------------------------------------
EmitterPosition: embed = ValueVector3 {
constantValue: vec3 = { -100, 0, 0 } #left
}
---------------------------------------------
EmitterPosition: embed = ValueVector3 {
constantValue: vec3 = { 0, 0, 100 } #forward
}
---------------------------------------------
EmitterPosition: embed = ValueVector3 {
constantValue: vec3 = { 0, 0, -100 }
}
---------------------------------------------
TranslationOverride also moves the particle’s position, but it works independently of emitter settings and can be used to offset the entire system globally.

translationOverride: vec3 = { 0, 100, 0 } #higher
translationOverride: vec3 = { 0, -100, 0 } #lower
translationOverride: vec3 = { 100, 0, 0 } #right
translationOverride: vec3 = { -100, 0, 0 } #left
translationOverride: vec3 = { 0, 0, 100 } #forward
translationOverride: vec3 = { 0, 0, -100 } #backward
TimeBeforeFirstEmission tells an emitter after which amount of time it spawns.

timeBeforeFirstEmission: f32 = 1
mEyeCandy: bool = true/false enables the Hide Eye Candy option in video settings.
needs to be placed on the bottom of a particlesystem.

Pass controls draw order — higher numbers render on top of lower ones.
Think of Pass like layers in Photoshop:
Pass: i16 = 0 is the bottom layer (drawn first)
Pass: i16 = 16 is a top layer (drawn last, appears above others)

blendMode: u8 = 1 / Defines the blendmode
1 |
No transparency, feel free to recolor black/white | |
3 |
SCB transparency | |
4 |
Standard transparency, dont recolor it too black or else it will become invisibile ingame | |
yes