Guide
Game weak point and breakable part systems explained
Harbor Siege shipped a district boss — a lumbering siege engine with 42,000 HP and a single giant collision capsule. Players sprayed damage from any angle, ignored telegraphed weak spots painted on concept art, and cleared the fight by out-healing random cannon volleys. Telemetry showed median time-on-target above 90% but skill expression near zero: everyone won the same way. The fix was not another HP tweak — it was a part-based damage model where exposed joints, fuel tanks, and tread assemblies route hits differently, break off at thresholds, and gate boss phases. This guide explains weak-point taxonomy, hit routing and multiplier stacks, part destruction state machines, integration with stagger and poise, the Harbor Siege siege-engine refactor, a technique decision table versus flat HP sponges, common pitfalls, and a production checklist.
A weak point is a hit region that modifies how incoming damage is calculated — usually a multiplier, armor bypass, or critical-only window. A breakable part goes further: it has its own HP pool (or damage budget), visual detachment, and gameplay consequences when destroyed (weapon disabled, shield dropped, vulnerability opened). Together they turn aim, positioning, and target priority into readable skill tests instead of DPS checks alone.
Weak-point and part taxonomy
Not every highlighted glow on a mesh needs the same rules. Classify regions before you author art:
Static weak points (multiplier zones)
Permanent regions with a damage modifier: headshots (×2), exposed cores (×1.5), armored plating (×0.25). The part never detaches; the modifier is always active when the hitbox is hittable. Common in shooters and action games where clarity beats persistence.
Conditional weak points (state-gated)
Multipliers only apply when a predicate is true: boss is staggered, shield generator offline, enemy back turned, part overheated. These tie weak points to encounter choreography — players learn when to burst, not just where to click.
Destructible sub-parts (HP budget)
Segments with independent HP that can be destroyed: wings, turrets, legs, shields. On break: mesh swaps or physics debris, ability removed, new weak point exposed. The parent entity may still be alive with reduced kit.
Armor layers and ablative plates
Outer shell absorbs damage until depleted, then reveals inner weak layer. Differs from a single HP bar because outer plate may have separate resist rules (immune to DoT, weak to explosives). Players see progress on the shell without chunking main boss HP.
Symbolic weak points (narrative telegraph)
Single interactable core after all limbs break — not a continuous hitzone but a phase object. Often used in cinematic bosses; still needs hitbox consistency so players trust the telegraph.
| Part type | Own HP pool | Typical multiplier | On destruction |
|---|---|---|---|
| Head / core weak spot | Usually shared with body | ×1.5 – ×3 | Instant kill only if design intends |
| Limb / appendage | Yes (10–25% of total) | ×1.0 on limb | Disable attack, open inner zone |
| Shield / plate layer | Yes (ablative) | ×0.1 until broken | Reveal weak core, phase trigger |
| Weapon mount | Yes | ×1.25 | Remove attack pattern |
| Environmental weak link | Interactable object | N/A (scripted) | Stun boss, collapse arena hazard |
Hit detection and damage routing pipeline
Weak points fail when routing is ambiguous. A clean pipeline looks like this:
- Cast / melee trace — ray, capsule, or arc produces hit events with surface normal and bone index.
- Resolve part ID — map bone / collider tag to
PartDefinition(multiplier, armor class, current HP, flags). - Apply hit filters — weapon type (precision vs explosive), damage type, backstab angle, crit roll.
- Compute routed damage —
final = base · partMultiplier · crit · (1 - partArmor); optionally clamp contribution to part HP budget. - Propagate to parent — decide overflow: spill to main HP, waste on overkill, or bank toward stagger meter.
- Emit events — VFX, UI floater, achievement hooks, AI flinch, phase controller.
Server authority: in multiplayer, the server resolves part ID from validated hit data; never trust client-reported “headshot” flags. Log part ID on every hit for balance tuning — without it you cannot see whether players found the weak point or ignored it.
Multiplier stacking rules
Document whether weak-point multipliers stack multiplicatively with crit
(×2 weak × ×2 crit = ×4) or add into a pool
first. Multiplicative stacks escalate fast; additive pools with a cap preserve
encounter budgets. Align with your
critical hit
and damage-type systems so one headshot does not one-shot content tuned for body
shots.
Part state machine and destruction flow
Each breakable part should be a small state machine, not a one-off script:
- Intact — full collision, abilities active, optional outer armor layer.
- Damaged — cosmetic cracks, optional damage reduction debuff on part (leaking fuel → fire DoT aura).
- Disabled — function off (turret silent) but mesh still attached; may be repairable by boss AI.
- Destroyed — detach mesh or swap to stump; collider removed or shrunk; expose inner weak point collider.
- Regrowing / repair (optional) — timed heal channel; telegraph clearly or players feel cheated.
Transitions fire events: OnPartDamaged, OnPartBroken,
OnAllPartsBroken. Phase controllers subscribe — breaking both
tread assemblies forces a stationary phase; destroying the cooling vent opens a
burn window. Keep transition guards explicit (“only from Intact →
Destroyed if HP ≤ 0 or scripted finisher”).
Telegraphing, UI, and accessibility
Weak points only work if players can discover and remember them:
- Visual language — consistent material (glowing seam, different metal tint) across all enemies; do not rely on color alone for color-blind accessibility — add shape or pulse.
- Damage floaters — distinct color or icon on weak-point hits; first-hit tutorial ping optional.
- Scanner / intel items — AR overlay revealing multipliers rewards exploration without permanent UI clutter.
- Audio — sharper impact SFX on weak hits; part-break sting so destruction reads without looking.
- Lock-on behavior — if you have soft lock, define whether it prefers center mass or nearest part; misaligned lock frustrates precision builds.
Harbor Siege siege-engine refactor (worked example)
Before: one capsule, uniform damage, three repeating attacks until HP zero. Weak-spot decals were cosmetic only.
After:
- Parts authored: left tread, right tread, main cannon, rear fuel cell (hidden until side armor plates broken), cockpit core (phase-3 only).
- Routing: precision weapons full multiplier on weak seams; explosives ×1.5 on treads, ×0.5 on front plate; fuel cell immune until both plates destroyed.
- Break effects: tread break → 30% move speed reduction and stagger vulnerability; cannon break → removes shelling pattern; fuel cell break → forced stagger and 8s burn DoT on engine.
- Phase hooks: phase 2 at 70% main HP or both treads broken (whichever first); phase 3 opens cockpit weak point only during stagger after fuel cell break.
- Data: all parts in
PartDefinitionScriptableObjects; anim events enable/disable colliders when plates open.
Result: weak-point hit share rose from 12% to 58% of damage after one tutorial ping; encounter length stayed within target TTK because main HP was reduced 18% — skill replaced sponge time. Co-op roles emerged naturally (one player strips treads, one bursts fuel cell).
Technique decision table
| Your problem | Prefer | Avoid |
|---|---|---|
| Boss feels like a HP sponge | Breakable weapons + gated core weak point | 10× HP without new mechanics |
| Players never aim precisely | Conditional weak points during stagger windows | Permanent ×0.1 everywhere except pixel head |
| Multiplayer damage attribution disputes | Server-side part resolution + part HP bars in UI | Client-only headshot flags |
| Encounter too swingy | Additive multiplier pool with cap | Stacking ×3 weak × ×2 crit × backstab |
| Players miss weak spots on fast enemies | Slow-motion stagger expose + larger hurtbox window | Headshot-only crit on subway-sized hurtbox |
| Destructible fantasy unclear | Progressive mesh damage before detach | Instant vanish with no VFX |
| Repeat fights boring | Randomized part repair order or optional limb order | Identical break sequence every run |
Common pitfalls
- Cosmetic weak points — the Harbor Siege launch failure; if art shows a glow but code routes to body, players stop trusting all telegraphs.
- Hitbox mismatch — detached wing still blocks traces; shrink or disable colliders on state transition.
- Overkill routing — breaking a 500-HP turret on a 50,000-HP boss feels pointless unless turret damage threatened the squad.
- Mandatory pixel sniping — weak zones smaller than average weapon spread punish without teaching positioning first.
- Part HP invisible — players cannot tell if progress matters; show plate cracks or sub-bar segments.
- Break order puzzles without hints — sequence locks (fuel before core) need environmental or scan intel.
- Physics debris blocking shots — cap debris lifetime or make hurtboxes non-solid.
- No telemetry — you balance blind; log damage by part ID per encounter tier.
Production checklist
- Every enemy with weak-point art has a
PartDefinitionrow in data. - Hit pipeline resolves part ID before damage formulas run.
- Multiplier stacking documented and unit-tested with crit and damage types.
- Part state machine: Intact → Damaged → Destroyed with explicit transitions.
- Colliders enable/disable synced to anim events or attachment sockets.
- Phase controller subscribes to
OnPartBrokenwith priority rules documented. - Weak-point hits use distinct VFX/SFX; first encounter optionally pings tutorial.
- Multiplayer: server authoritative part resolution; anti-cheat logs anomalous headshot rates.
- Accessibility: weak points identifiable without color-only cues.
- Telemetry dashboard: damage share by part, time-to-first-weak-hit, break order distribution.
Key takeaways
- Weak points modify routing; breakable parts modify encounter state — use both deliberately.
- Conditional windows (stagger, plate break) teach timing; static headshots teach aim.
- One damage pipeline with part ID logging beats per-boss spaghetti scripts.
- Harbor Siege recovered skill expression by making decals authoritative in code, not just art.
- Reduce main HP when adding parts — trade sponge time for target priority depth.
Related reading
- Game boss phase systems explained — phase triggers, move kits, and enrage timers
- Game stagger and poise systems explained — flinch windows and posture breaks
- Game hitbox and hurtbox systems explained — collision layers and trace fidelity
- Game boss fight design explained — arena layout, pattern readability, and fair difficulty