Suppressor
What it is
A long-range hitscan enemy tagged mechanical. Built as a “wall of fire” variant of the standard close-range hitscan gunner archetype: roughly half-speed, four times the HP, twice the per-hit reach, more than twice the burst length, and a longer recovery window between bursts. The intent is a stationary suppression turret with breathing windows the player can dive through, rather than a mobile close-range threat.
Reuses the gunner behavior and the gunner enemy weapon, so its combat loop (soldier-march movement, charge-up telegraph, hitscan burst, fizzle on dodge, +50% damage to shield / -70% damage to HP) is identical to the base gunner — only the tuning numbers differ.
Stats (per rarity tier)
Base stats are multiplied by the shared enemy rarity multipliers. Per-hit damage shown is the weapon damage after rarity scaling but before the shield/HP modifier.
| Rarity | HP | Speed | Radius | XP | Per-hit damage |
|---|---|---|---|---|---|
| Common | 32.4 | 58.8 | 5.5 | 84 | 9 |
| Uncommon | 59.4 | 61.74 | 6.325 | 168 | 13.5 |
| Rare | 83.16 | 65.94 | 7.15 | 336 | 19.8 |
| Epic | 118.8 | 70.56 | 7.7 | 504 | 25.2 |
| Legendary | 142.56 | 76.44 | 8.25 | 672 | 31.5 |
Base values before rarity scaling: HP 12, Speed 42, Radius 5.5, XP 28, Weapon damage 3.
Behavior
Movement. Inherits the gunner’s soldier-march cadence — alternating move and pause phases:
| Phase | Duration |
|---|---|
| Move | 0.6 s |
| Pause | 0.25 s |
During the move phase, if the suppressor is outside its hitscan range it steers toward the player like a car (turn-rate 0.7); if already in range, it coasts forward with soft friction. The pause phase always coasts with soft friction and no steering. While firing or charging, the suppressor holds position with hard friction; while firing it also applies a small recoil pushback away from the player.
Combat loop. Hitscan range, burst count, and burst cooldown are taken from the entity definition; engagement range and charge duration are shared constants from the gunner behavior and do not change for the suppressor.
| Parameter | Value |
|---|---|
| Hitscan range | 130 |
| Engagement range | 100 |
| Charge-up duration | 1.2 s |
| Burst count | 7 shots |
| Interval between shots in burst | 0.15 s |
| Burst cooldown (after full burst) | 4.5 s |
| Burst cooldown (cancelled on dodge) | 1.35 s (0.3× of 4.5) |
| Burst cooldown (early-game skip) | 2.25 s (0.5× of 4.5) |
| Cooldown tick rate when out of range | 0.5× normal |
Note: hitscan range (130) is set wider than engagement range (100), so the suppressor will continue closing distance to within 130 px to coast, but the charge-and-fire trigger fires only once inside 100 px. EXTRACT-CANDIDATE: confirm whether this 30-px gap is intentional design or a tuning oversight.
Sequence:
- Approach the player using the march cadence.
- When inside engagement range, start charging. A red circle forecast spawns at the suppressor’s position, radius equal to 30% of engagement range, lasting the full 1.2 s charge.
- If the player leaves 1.1× engagement range during charge, cancel and enter the dodge cooldown (1.35 s). Forecast is removed.
- Once charge completes, fire the burst: one shot per 0.15 s for seven shots total (about 0.9 s of sustained fire). Each shot applies damage instantly and spawns a short-lived hitscan line VFX (0.08 s) from the suppressor to a small random scatter around the player position.
- If the player leaves 1.2× engagement range mid-burst, fizzle and enter dodge cooldown.
- After a full burst, enter the full 4.5 s burst cooldown (divided by the player’s attack-speed multiplier, if any).
Damage modifier. Each hit’s weapon damage (3 base, scaled by rarity) is multiplied by 1.5 when applied to the player. The framing is +50% damage to shield, -70% damage to HP — the suppressor chews through shields and stalls against raw hull.
Early-game softener. During the first 60 seconds of a mission, only 20% of cooldown checks attempt an attack; the other 80% set a half cooldown and skip. After 60 s, every cooldown completion triggers an attack attempt.
State flags. Stunnable and knockbackable. Uses shared separation, but not the shared attack FSM or shared aggro system.
On death. Cancels any in-flight firing/charging state and clears all owned forecasts and hitscan lines.
Tier scaling
Rarity tier applies multiplicatively to the base stats:
| Rarity | HP × | XP × | Speed × | Radius × | Damage × |
|---|---|---|---|---|---|
| Common | 2.7 | 3.0 | 1.40 | 1.0 | 3.0 |
| Uncommon | 4.95 | 6.0 | 1.47 | 1.15 | 4.5 |
| Rare | 6.93 | 12.0 | 1.57 | 1.3 | 6.6 |
| Epic | 9.9 | 18.0 | 1.68 | 1.4 | 8.4 |
| Legendary | 11.88 | 24.0 | 1.82 | 1.5 | 10.5 |
These multipliers are shared across every enemy archetype, not suppressor-specific. Burst count, burst cooldown, hitscan range, charge duration, engagement range, and the shield/HP modifiers do not scale with rarity — only HP, speed, radius, XP, and per-hit damage do.
The rarity also drives the polygon stroke color: grey (common), green (uncommon), blue (rare), purple (epic), orange (legendary).