Shock Lance
What it is
A unique-category artifact that fires a damaging shockwave forward on a fixed timer. The shockwave is a forward-traveling line that pierces everything in its path. Damage scales as a percentage of weapon damage; speed, width, lifetime, and range all grow with tier. Identified by a wind icon and a red palette (primary #ff4444, secondary #cc2222, bright #ff8888).
Reward-card flavor: “Every few seconds, a damaging shockwave rips forward through anything in its path.”
Identity
| Field | Value |
|---|---|
| Display name | Shock Lance |
| Category | Unique |
| Icon | 💨 |
| Damage tag | None (type-agnostic) |
| Primary color | #ff4444 |
| Secondary color | #cc2222 |
| Bright color | #ff8888 |
Per-tier values
The source defines four tiers (uncommon → rare → epic → legendary). At runtime a fifth “common” tier is prepended; its values record is shared with the uncommon row, with differentiation coming from the per-artifact flat stat bonus rather than these effect values.
| Tier | Rarity | Interval (s) | Damage (% of weapon damage) | Line speed (px/s) | Line width (px) | Lifetime (s) | Range (px) |
|---|---|---|---|---|---|---|---|
| 0 | Common | 6 | 150 | 1100 | 24 | 1.4 | 900 |
| 1 | Uncommon | 6 | 150 | 1100 | 24 | 1.4 | 900 |
| 2 | Rare | 5 | 180 | 1200 | 30 | 1.6 | 1050 |
| 3 | Epic | 4 | 220 | 1350 | 36 | 1.9 | 1200 |
| 4 | Legendary | 3 | 300 | 1600 | 48 | 2.5 | 1500 |
Effect
A single repeating timer effect drives the artifact.
| Property | Value |
|---|---|
| Trigger type | Timer (repeating) |
| Timer duration | interval (per-tier, see above) |
| Banner on proc | Yes |
| Conditions | None |
On each proc, two actions fire in order:
| Order | Action | Parameters bound from tier values |
|---|---|---|
| 1 | Custom handler tbone_shockwave_beam | damage, speed, width, lifetime, range |
| 2 | Flash artifact (HUD pulse) | None |
Stacking rules
This artifact is in the unique category. The data file declares no internal stacking, charge, or kill-counter logic — the timer simply ticks on its own interval and procs the beam handler. There is no maxStacks, no on-hit accumulator, and no per-enemy state in this definition.
EXTRACT-CANDIDATE flags
- Common-tier resolution rule. The
_types.tsdoc comment states that tier 0 (common) reuses the uncommon values record and that differentiation comes from a per-artifact flat stat bonus scaled byFLAT_BONUS_PCT_BY_TIER(10 at common, up to 50 at legendary). This rule is general to all artifacts and belongs on the artifacts roll-up page, not here. flash_artifactaction. Used by every artifact effect that wants a HUD pulse on proc. Belongs in a shared effect-actions reference.tbone_shockwave_beamcustom handler. The shockwave projectile/line behavior (forward travel, piercing, lifetime/range cutoff) lives in engine code, not data. Its rules (pierce-all, single-direction, despawn condition) should be documented on a shared shockwave/beam mechanics page once that handler is mapped.procAudioCuefield. Not used by this artifact. The_types.tscomment notes a project rule that common-trigger procs should have their own audio — Shock Lance currently omits it, which is a possible content gap.