Synaptic Shock
Contents
OverviewSignal BroadcastersSignal ReceiversDamage MechanicsDifficulty ScalingMaster Damage TablesSender VariantsGame FilesOverview
Synaptic Shock is a death-trigger AoE that fires from a synapse-tier Tyranid when it takes a lethal hit. When a synapse-tier Tyranid takes a killing blow, it broadcasts a death pulse that damages and staggers nearby Hormagaunts, Termagants, Spore Mines, and Acid Mines. The Shock perk has two parallel applications:
AI message broadcast (
Tyranid_SynapticShock) - distance-based damage spline applied to subscribed receivers (Hormagaunt, Termagant, Spore Mine, Acid Mine). This is the only effect that hits gaunts in PvE Operations.Direct sphere damager (
synaptic_sphere_damagerviaPerkApplicationShockSwarm) - flat 200 damage in a 10m sphere, restricted to collision layers 23-24, which are the ECS swarm-system layers used byswarm_contact_damagerand similar swarm-actor damagers. Standard NPC enemies (including all four subscribed receivers) live on layers 8-11 instead, so the sphere damager does not hit them. This effect is for ECS swarm actors like the campaign-only Ripper Tornado and has no impact against the receivers in PvE Operations.
Both applications fire simultaneously when the perk's PerkTriggerOnDyingHit activates, but in PvE Operations the second one has no target. The AI message is what produces the gameplay effect we observe.
The damage type is dmg_type_synaptic for both. This is its own type with its own per-enemy sensitivity rules and its own difficulty scaling modifier (DAMAGE_FROM_SYNAPTIC_SENSITIVITY).
Signal Broadcasters
A Tyranid broadcasts synaptic shock on death if it carries the Shock perk in perk_holder_server.perkLinks. The perk fires on PerkTriggerOnDyingHit regardless of whether the unit is also tagged SYNAPTIC.
Tyranid | Has | Has SYNAPTIC tag | Broadcasts on death |
|---|---|---|---|
Tyranid Warrior (melee) | Yes | Yes | Yes |
Tyranid Warrior Assault | Yes | Yes | Yes |
Tyranid Warrior Grenadier | Yes | Yes | Yes |
Tyranid Warrior Sniper | Yes | Yes | Yes |
Tyranid Warrior Whip | Yes | Yes | Yes |
Lictor | Yes | No | Yes |
Ravener | Yes | No | Yes |
Biovore | Yes | No | Yes |
Zoanthrope | Yes | Yes | |
Neurothrope | Yes | Yes | |
Carnifex | Yes | Yes | Yes |
Trygon | Yes | No | Yes |
Hierophant Bio-Titan | Yes | No | Yes |
Tyranid Prime | Yes | Yes |
The SYNAPTIC character tag itself does not gate the broadcast; it appears to be metadata used by other systems (faction queries, stratagem mutators, etc.).
Signal Receivers
A Tyranid receives synaptic shock damage and stagger only if its prop_ai_messenger_server.messagesToReceive contains a Tyranid_SynapticShock entry routed to AiMessageHandlerSynapticShock. Only four NPC types subscribe:
Receiver | Base HP | Subscribed | Difficulty multiplier applies |
|---|---|---|---|
Hormagaunt | 11 | Yes | Yes (FODDER threat class) |
Termagant | 10 | Yes | Yes (FODDER threat class) |
Spore Mine | varies | Yes | No (in |
Acid Mine | varies | Yes | No (in |
Damage Mechanics
Default damage spline
The defaultDamageInfo.damageSpline in ai_message_synaptic_shock_argument_provider.sso is a Bezier curve with three control points: peak damage at point-blank, smooth falloff to zero at 25m. Approximate values along the curve:
Distance from caster | Base damage |
|---|---|
0 m | 20 |
5 m | ~16 |
10 m | ~13 |
15 m | ~11 |
20 m | ~10 |
24 m | ~8 |
25 m | 0 |
Knockback spline
Linear falloff from full ragdoll to none at 15m:
Distance | Knockback impulse |
|---|---|
0 m | 100 |
7.5 m | 50 |
15 m | 0 |
beyond 15 m | 0 |
Heavy-hit / stagger reaction
Each receiver runs ctrl_hit_condition_synaptic_heavy_hit.sso, which forces a heavy-hit animation whenever any dmg_type_synaptic damage is taken, even if the damage doesn't kill:
Property | Value |
|---|---|
| 0 |
| 1 |
| 2 |
|
|
Translation: any synaptic damage automatically triggers heavy hit (poise 0 and sensitivity 1 means the threshold is met by any positive damage), the force-heavy-hit ignore is disabled specifically for synaptic, and a 2-second cooldown prevents stacked shocks from chain-staggering. So at long range where the spline damage is below the gaunt's HP, the gaunt survives but plays a heavy-hit stagger animation.
Difficulty Scaling
The base spline values do not change between difficulties. Instead, the receiver's vulnerability is multiplied by DAMAGE_FROM_SYNAPTIC_SENSITIVITY in difficulty_presets_library.sso. The modifier is applied to NPCs in the FODDER + COMMON threat classes minus an ignoredArchetypes list (Spore Mine and Acid Mine are explicitly ignored, so they take raw spline damage).
The receiver's HP also scales per difficulty via the same block's MAX_HEALTH modifier (the unnamed first entry in the modifiers list, confirmed against the live game's HP values).
Internal preset | Operations difficulty | HP multiplier |
| Hormagaunt HP | Termagant HP |
|---|---|---|---|---|---|
EASY | Minimal | 1.0× | (no entry) 1.0× | 11 | 10 |
NORMAL | Average | 1.6× | +60% (1.6×) | 18 | 16 |
HARD | Substantial | 2.9× | +190% (2.9×) | 32 | 29 |
VERY_HARD | Ruthless | 4.0× | +300% (4.0×) | 44 | 40 |
INSANE | Lethal | 4.0× | +200% (3.0×) | 44 | 40 |
EXTREME | Absolute | 4.0× | +200% (3.0×) | 44 | 40 |
Master Damage Tables
Hormagaunt:
Distance | Minimal (11 HP) | Average (18 HP) | Substantial (32 HP) | Ruthless (44 HP) | Lethal (44 HP) | Absolute (44 HP) |
|---|---|---|---|---|---|---|
0 m | 20 | 32 | 58 | 80 | 60 | 60 |
5 m | ~16 | ~26 | ~46 | ~64 | ~48 | ~48 |
10 m | ~13 | ~21 | ~38 | ~52 | ~39 | ~39 |
15 m | ~11 | ~18 | ~32 | ~44 | ~33 | ~33 |
20 m | ~10 | ~16 | ~29 | ~40 | ~30 | ~30 |
25 m | 0 | 0 | 0 | 0 | 0 | 0 |
Termagant:
Distance | Minimal (10 HP) | Average (16 HP) | Substantial (29 HP) | Ruthless (40 HP) | Lethal (40 HP) | Absolute (40 HP) |
|---|---|---|---|---|---|---|
0 m | 20 | 32 | 58 | 80 | 60 | 60 |
5 m | ~16 | ~26 | ~46 | ~64 | ~48 | ~48 |
10 m | ~13 | ~21 | ~38 | ~52 | ~39 | ~39 |
15 m | ~11 | ~18 | ~32 | ~44 | ~33 | ~33 |
20 m | ~10 | ~16 | ~29 | ~40 | ~30 | ~30 |
25 m | 0 | 0 | 0 | 0 | 0 | 0 |
The damage values are identical between receivers because the spline is keyed on distance, not on the target. What differs is the outcome - the column-header HP determines whether the cell value drops the gaunt to zero, and Termagants have access to an incap state that Hormagaunts don't.
Outcome by radius:
Hormagaunts have no incap module (enemy-incap.md) - they die outright when HP hits 0. Termagants have an incap module with dmgOvercapFactor = 2, so a single hit must deal at least 2× max HP to skip incap and instakill; otherwise they enter the 3-second incap window at 20% HP. dmg_type_synaptic is not in the Termagant's excludingIncapDamages, so synaptic damage runs through the normal incap pathway.
Difficulty | Hormagaunt kill radius | Termagant instakill radius | Termagant incap radius |
|---|---|---|---|
Minimal | ~15 m | point-blank only | ~0-20 m |
Average | ~15 m | point-blank only | ~0-20 m |
Substantial | ~15 m | point-blank only | ~0-20 m |
Ruthless | ~15 m | point-blank only | ~0-20 m |
Lethal | ~7-8 m | none | ~0-10 m |
Absolute | ~7-8 m | none | ~0-10 m |
Key Takeaways:
Hormagaunt kill radius holds at ~15m from Minimal through Ruthless because HP and synaptic damage scale at the same multiplier (1:1 ratio: 1.0×, 1.6×, 2.9×, 4.0× both). At Lethal and Absolute the synaptic multiplier (3.0×) lags behind the HP multiplier (4.0×), so the damage:HP ratio drops to 0.75× and the kill radius shrinks to where the spline alone deals ≥ 14.67 base damage - around 7-8m.
Termagant instakill radius is essentially zero at every difficulty. From Minimal through Ruthless the spline value of 20 at exactly 0m matches the 2× HP threshold (e.g. 20 = 2 × 10 at Minimal, 32 ≥ 32 at Average via 20 × 1.6, etc.) - but any distance past 0 falls below the threshold. At Lethal and Absolute the synaptic multiplier of 3.0× against base HP 10 needs spline ≥ 26.67, which the spline never reaches (capped at 20 at 0m).
Termagant incap radius is the band where spline damage drops the Termagant to 0 HP without hitting the instakill threshold. From Minimal through Ruthless this is essentially the entire falloff zone (~0-20m) because the instakill threshold is only met at point-blank. At Lethal and Absolute the synaptic-mult lag means the spline only drops Termagants to 0 HP within ~10m - past that it's stagger-only.
Past every receiver's listed radii, the gaunt still plays the heavy-hit stagger animation out through the 25m spline falloff edge.
The big takeaway: at every difficulty Termagants in the falloff zone almost always enter incap rather than instakill, which fits the design intent flagged in Enemy Incapacitation ("the game wants Termagants to enter incap so players can execute them for armor recovery"). A Tyranid Warrior dying near a Termagant cluster effectively becomes a free armor-recovery setup.
Sender Variants
Three caster types use override damage profiles instead of the default spline. Overrides are keyed by sender archetype in the argument provider.
Tyranid Prime (TyrPrime override)
Defined in the Shock perk's argument provider in perk_server_factory.sso. When a Tyranid Prime takes the lethal hit, the spline collapses to a flat curve:
Distance | Damage |
|---|---|
0 m to falloff edge | 100 |
Knockback | 100 (flat) |
100 base damage × 3.0× synaptic multiplier at Absolute = 300 damage applied to every gaunt on the map. This wipes every Hormagaunt, Termagant, Spore Mine, and Acid Mine that is subscribed - the Tyranid Prime's death is effectively a global synapse-fodder erase. This makes the Prime extraordinarily valuable to lure into a swarm before killing.
Zoanthrope and Neurothrope (TyrZoanthrope override)
Defined in ai_message_synaptic_shock_argument_provider.sso. The spline becomes wide and weak:
Distance | Damage | Knockback |
|---|---|---|
0 m | 20 | 100 |
50 m | 1 | 0 |
50.1 m | 0 | 0 |
The damage drops from 20 at point-blank to 1 by ~10-15m and stays at 1 out to 50m before falling to zero. After the synaptic multiplier this still won't kill any gaunt past close range - it's almost entirely a stagger/knockback effect over a much wider radius. Knockback also extends out to 30-40m. This is consistent with the in-fiction picture of Zoanthropes as floating broadcast nodes whose death sends a wide soft pulse rather than a localized burst.
All other casters
Use the default spline. Tyranid Warriors (all five subtypes), Lictor, Ravener, Biovore, Carnifex, Trygon, and Hierophant all produce the same 20-damage / 25m / 100-knockback / 15m profile.
Game Files
{SERVER}/ssl/player/perks/perk_server_factory.sso{SERVER}/ssl/player/perks/applications/perk_application_shock_swarm.sso{SERVER}/ssl/ai/ai_communication/messenger/argument_providers/ai_message_synaptic_shock_argument_provider.sso{SERVER}/ssl/ai/ai_communication/messenger/ai_messenger_uid_library.sso{SERVER}/ssl/body/hit_death/controllers/ctrl_hit_condition_synaptic_heavy_hit.sso{SERVER}/ssl/damage/damager/damager_descriptions_library.sso{SERVER}/ssl/game_mode/difficulty_system/difficulty_presets_library.sso{SERVER}/ssl/characters/tyranids/npc_hormagaunt_server.cls{SERVER}/ssl/characters/tyranids/npc_termagant_server.cls{SERVER}/ssl/characters/tyranids/npc_spore_mine_server.cls{SERVER}/ssl/characters/tyranids/acid_mine/npc_acid_mine_server.cls
{CLIENT}/ssl/ai/common_blueprints/synaptic_death_blueprint.sso