A practical guide to the Fire effect on Crystal Focus X, including how the flame simulation works, what each parameter changes, and ready-to-use recipes for torch fire, infernos, candle flames, inverted fire, and molten lava looks.
hcool, lcoolsparkf, sparkdmapping_color, mapc, mapb, mapping_unstableThe Fire effect (unstable=2) simulates a realistic flame running along the blade. Unlike Classic Unstable, Fire has a clear direction. Heat starts near the base, travels upward toward the tip, and fades as it climbs.
That gives Fire a very different personality. Instead of full-blade chaos, it looks like a torch or flame sword with a visible source and a natural flow.
| Feature | Classic Unstable (1) | Fire (2) |
|---|---|---|
| Spark placement | Random across the entire blade | Concentrated near the base |
| Sparks per frame | Multiple, based on density percentage | One spark at a time |
| Heat drift | Random up or down each frame | Always upward, base to tip |
drift=1 | Random drift movement | Reverses fire to start from the tip |
| Cooling | Flat across the blade | Scales with blade length |
| Reactivity | Audio only by default | Audio, Angular, Angular Reversed |
In your blade profile, set:
unstable=2
Fire runs a three-step cellular simulation every frame.
sparkd.After that, the resulting heat map is translated into visible blade color by the same mapping system used by other unstable effects.
hcool — High CoolingDefault: 70
This is the maximum cooling intensity. In Fire mode, it scales with blade length. That means the same value behaves differently on a short blade versus a long blade.
Short blades effectively cool more aggressively per pixel, so they need lower hcool values to reach the same visible flame height.
| Value | Short Blade (36 LED) | Long Blade (144 LED) |
|---|---|---|
30–50 | Moderate flame | Tall, lively flame |
70 | Short to medium flame | Full-blade fire |
100–150 | Very short flame | Tall flame |
200+ | Candle stub | Moderate flame |
lcool — Low CoolingDefault: 20
This is the minimum cooling per frame. Unlike hcool, it is applied directly and does not scale with blade length.
Tip: For Fire, keepinglcoolrelatively low, often between5and20, usually gives the best range of flame variation.
sparkf — Sparking ForceDefault: 120
This controls how often a new spark appears. Higher values mean more frequent ignition and a brighter, more active base.
| Value | Visual Result |
|---|---|
30–60 | Dying ember, barely alive |
120 | Steady default flame |
180–220 | Roaring aggressive fire |
250 | Near-constant ignition, very bright base |
sparkd — Spark Density / Spark ZoneDefault: 10
In Fire mode, this does not mean density across the whole blade like it does in Classic Unstable. Here it defines the spark zone as a percentage of blade length measured from the base.
| Value | Spark Zone |
|---|---|
5 | Bottom 5% only, very tight base |
10 | Bottom 10%, classic torch look |
25 | Bottom quarter, wider base |
50 | Bottom half, large fire body |
100 | Entire blade, loses most of the bottom-up look |
Note: Even with sparkd=100, Fire still only generates one spark per frame. So it never behaves exactly like Classic Unstable.
drift — Reverse Fire DirectionDefault: 0
In Fire mode, drift works very differently than in Classic Unstable. Here it reverses the heat array so the fire starts from the tip and flows downward.
drift=0 # normal fire, base to tip
drift=1 # reversed fire, tip to base
This is useful for inverted flame looks, dripping energy effects, or deliberately unnatural fire behavior.
Caution: If you notice odd visual interactions with other features while usingdrift=1, test the same setup withdrift=0to confirm whether the reverse mode is the cause.
mapping_unstable — Reactivity SourceDefault: 1
mapping_unstable=0 — NoneThe fire burns with only the parameters you set. No external input changes it.
mapping_unstable=1 — AudioThe fire reacts to sound volume. Loud moments reduce cooling and increase sparking, so the fire grows taller and more chaotic during motion, clashes, and hum peaks.
Use mapping_audio=low,high to fine-tune the response range.
mapping_unstable=2 — AngularThe fire reacts to blade tilt angle.
This produces a very intuitive result. Raise the blade and the fire grows. Lower it and the fire shrinks.
mapping_unstable=4 — Angular ReversedThis flips the angular behavior.
This can be handy for reversed installs or if you want the opposite visual behavior.
Tip: Angular mapping is one of Fire’s best looks. It can make the blade feel physically alive instead of just animated.
Fire uses the same general color mapping system as the other unstable effects.
ecolor — Effect ColorThis is the color used in hot and bright areas. Warm colors usually work best for Fire.
ecolor=1023,400,0,0 # orange
ecolor=1023,0,0,0 # red
ecolor=1023,720,200,0 # golden
ecolor=400,0,1023,0 # purple fantasy fire
On CFX, color channel values can go up to 1023.
mapping_color — Color Mapping Mode| Mode | Look |
|---|---|
mapping_color=0 (Legacy) | Two-tone blend between base blade color and ecolor |
mapping_color=1 (Heat Map) | Heat-style gradient from cooler to hotter flame regions |
For realistic fire, mapping_color=1 is usually the best choice.
mapc — Color Mapping StrengthDefault: 50
This controls how strongly the effect color influences the visible blade.
mapb — Brightness Mapping StrengthDefault: 50
This controls how strongly heat values affect brightness, giving more or less contrast between cool and hot regions.
refreshfx — Effect Refresh IntervalDefault: 12 ms
Because Fire has directional movement, the refresh rate noticeably changes how fast the flame seems to climb.
| Value | Approx. FPS | Character |
|---|---|---|
8 | ~125 | Fast, nervous flame |
12 | ~83 | Natural default fire speed |
20 | ~50 | Slower, more deliberate flame |
30 | ~33 | Slow burn, lava-like |
50+ | ~20 | Very slow molten movement |
A balanced, natural-looking flame and a very good starting point.
unstable=2
sparkf=120
sparkd=10
hcool=70
lcool=20
drift=0
mapping_color=1
mapc=150
mapb=180
mapping_unstable=1
ecolor=1023,480,0,0
A tall, aggressive flame that fills most of the blade. Best with audio reactivity.
unstable=2
sparkf=200
sparkd=30
hcool=40
lcool=5
drift=0
mapping_color=1
mapc=200
mapb=220
mapping_unstable=1
ecolor=1023,320,0,0
refreshfx=8
A small, delicate flame. This works especially well with angular mapping so the flame grows and shrinks when you tilt the blade.
unstable=2
sparkf=80
sparkd=5
hcool=150
lcool=30
drift=0
mapping_color=1
mapc=120
mapb=150
mapping_unstable=2
ecolor=1023,640,160,0
refreshfx=15
Fire flowing downward from the tip like dripping molten energy.
unstable=2
sparkf=140
sparkd=10
hcool=60
lcool=10
drift=1
mapping_color=1
mapc=180
mapb=200
mapping_unstable=1
ecolor=1023,200,0,0
A monochrome fire look using Legacy color mapping. This works nicely with a very dark base blade color.
unstable=2
sparkf=150
sparkd=15
hcool=80
lcool=15
drift=0
mapping_color=0
mapc=200
mapb=230
mapping_unstable=1
ecolor=1023,1023,1023,0
A heavy, molten look with slower motion and deep glowing heat.
unstable=2
sparkf=100
sparkd=20
hcool=50
lcool=10
drift=0
mapping_color=1
mapc=180
mapb=160
mapping_unstable=0
ecolor=1023,240,0,0
refreshfx=40
| Key | Description | Default | Range / Notes |
|---|---|---|---|
unstable | Effect mode | 0 | 0–18 |
hcool | Max cooling, scales with blade length | 70 | 1–255 |
lcool | Min cooling, applied directly | 20 | 1–255 |
sparkf | Spark probability | 120 | 1–255 |
sparkd | Spark zone from the base | 10 | 1–100 |
drift | Reverse fire direction | 0 | 0 or 1 |
mapping_color | Color mapping mode | 0 | 0 or 1 |
mapc | Color mapping strength | 50 | 0–255 |
mapb | Brightness mapping strength | 50 | 0–255 |
ecolor | Effect color | — | 0–1023 per channel |
mapping_unstable | Reactivity source | 1 | 0, 1, 2, or 4 are the most relevant Fire modes |
mapping_audio | Audio sensitivity range | — | low,high |
refreshfx | Refresh interval in ms | 12 | 1–255 |
hcool.mapping_color=1. Fire usually looks best with heat-map style color progression.sparkd to control flame width, not flame height. Height mainly comes from the balance between sparking and cooling.drift=1 is dramatic. Use it intentionally for inverted flame looks, not as a tiny tweak.hcool, low sparkf, and a slower refreshfx.