Reflective Burst
What it is
Reflective Burst is a world-roaming elite affix. When a single incoming hit clears a damage threshold, the host fires a radial purple-particle burst from its position; if the player ship is inside the burst radius, the player takes a flat damage tick. Damage to the host itself is unchanged — the burst is pure side-effect on the player. On death, the elite drops a Volatile Crystal prop at its position.
Identity
| Field | Value |
|---|---|
| Affix ID | reflective_burst |
| Category | world-roaming elite |
| Priority | 70 |
| Hooks | filterIncomingDamage, onDeath |
| Roll pool | world-roaming elite-affix roll |
| Halo palette entry | purple (r 180, g 100, b 255) |
Reflective Burst sits in the world-roaming elite roll pool alongside burning aura, volatile, regenerating, phasing, summoner, hardened, and gravity well. Priority 70 places it above lower-band offensive affixes and below phasing (75), so a phasing host’s invuln window short-circuits the burst chain when both are present on the same host.
What it does
The damage filter runs on every incoming hit against the host. If the hit’s damage is below the threshold, the filter returns the damage unchanged and skips all side effects. If the hit’s damage is at or above the threshold, the filter:
- Spawns 18 purple particles in an even radial ring from the host’s position, each with outward velocity around 100 to 140 units per second and a 0.45 to 0.65 second lifetime.
- Checks the player ship’s distance from the host. If the squared distance is within the burst radius squared, the player takes a flat damage tick credited to the
affix:reflective_burstsource. - Returns the original damage unchanged so the host still takes the full hit.
On the host’s death, the affix attempts to drop a Volatile Crystal prop at the death location. The prop pool cap may silently reject the spawn; the affix continues regardless.
Per-tier values
| Param | Default | State key |
|---|---|---|
| Damage threshold | 12 | threshold |
| Burst radius | 180 px | radius |
| Burst damage | 10 | burstDamage |
| Burst particle count | 18 | — |
| Burst particle speed | 100 to 140 px/s | — |
| Burst particle lifetime | 0.45 to 0.65 s | — |
| Death-drop prop | volatile_crystal | — |
The threshold gate uses the default constant first as an early-out, then re-checks against the per-instance value once the instance is loaded. Per-instance overrides apply through affixState.reflective_burst slots; mistyped values (string for a number slot) throw at first hook invocation. The death-drop is fixed and not configurable.
How it interacts
Affix interaction — reflective_burst plus gravity_well
When the host also carries the gravity_well affix, the burst’s effective radius scales by 1.5 (180 px default to 270 px). A secondary outward ring of 12 violet gravity-well particles paints the enlarged radius. The player-damage check uses the amplified radius. Telemetry records both affix_proc:reflective_burst and affix_interaction:reflective_gravity_amp on a player hit.
| State | Radius |
|---|---|
| Reflective Burst alone | radius (default 180 px) |
| With gravity_well co-present | radius × 1.5 (default 270 px) |
Affix interaction — volatile plus reflective_burst
When the host also carries volatile, the volatile death proc fires a secondary purple burst on top of its magenta starburst. The chain burst spawns 18 purple particles at 110 to 160 px/s outward speed and runs a player-distance check at the original (un-amplified) reflective_burst radius. A hit credits damage to the affix:volatile_reflective_chain source and records affix_interaction:volatile_reflective_chain.
Affix interaction — summoner plus reflective_burst
When the host also carries summoner, the summon proc permanently halves the host’s reflective_burst threshold for the remainder of its life. After the proc, every hit at or above half the configured threshold triggers the burst. Telemetry records the post-halving threshold under affix_interaction:summoner_reflective_cohesion_loss.
| Stage | Threshold |
|---|---|
| Pre-summon | threshold (default 12) |
| Post-summon | threshold × 0.5 (default 6) |
Affix interaction — phasing plus reflective_burst
Phasing’s filter runs at priority 75, above reflective_burst at 70. While the phasing invuln window is open, the phasing filter zeroes the incoming damage before reflective_burst sees it; with damage below the threshold (zero), the burst never fires. Outside the phasing window the burst fires normally.
Prop crossover — Volatile Crystal death drop
The Volatile Crystal dropped on death has its own break-synergy: a 25 percent chance to fire a burning_aura proximity tick on break. The crossover keeps a “stay-away ring” pressure on the death point even after the elite is gone, and pairs thematically with the burst’s own outward energy.
Priority order
The affix damage filter chain runs in descending priority. Reflective Burst at 70 sees the hit after shielded (100), shielded_respawn (100), respawn_as (95), gated (90), periodic_invuln (85), reflective (80), and phasing (75); it sees the hit before hardened (25) and armored (20). Any earlier filter that returns zero short-circuits reflective_burst’s threshold check.
EXTRACT-CANDIDATE
- The damage-filter short-circuit rule and priority-ordered chain are a global affix-system concern; canonical home is the affixes overview page, referenced from each variant page rather than duplicated.
- The Volatile Crystal death-drop pattern is shared with volatile (same prop) and regenerating (mineral_vein with the same fail-silent pool-cap behavior); a common “affix death-drop crossover” concept page may belong on the affixes overview.
- Affix-on-affix interaction hooks (gravity amp, volatile chain, summoner cohesion-loss, phasing short-circuit) are a recurring system pattern; a single “affix interactions” matrix page would consolidate the cross-product without each entity page repeating the rule.