Skip to content

[Vengeance] Per-fragment activation timing for Fracture#11057

Open
taherbert wants to merge 1 commit intosimulationcraft:midnightfrom
taherbert:feature/vdh-fracture-fragment-timing
Open

[Vengeance] Per-fragment activation timing for Fracture#11057
taherbert wants to merge 1 commit intosimulationcraft:midnightfrom
taherbert:feature/vdh-fracture-fragment-timing

Conversation

@taherbert
Copy link
Contributor

Fragment activation timing calibrated against 5,200+ WCL events across 3 VDH dungeon runs. Fracture fragments spawn at the player, not the target, so they need their own timing instead of the shared Gaussian.

Changes

Vengeance default Gaussian

gauss<760, 120>()gauss<830, 80>(). WCL shows ~830-864ms for damage-tick sources. Tighter cluster than previously modeled.

Fracture per-fragment timing

Adds optional activation_delay to spawn_soul_fragment() / soul_fragment_t that bypasses the shared Gaussian in get_travel_time(). Default sentinel (timespan_t::min()) preserves existing behavior for all other call sites.

Fragment spawning moves from fracture_damage_t::impact() to fracture_t::impact().

Aldrachi Tactics fragment delay

AT arrives at ~940ms (no Meta) / ~1065ms (Meta). Added Vengeance-specific spawn delay (110ms / 235ms) before the default Gaussian. Havoc/Devourer unchanged.

Timing summary

Fragment WCL observed Old model New model
Fracture MH 641ms 0 + gauss(760) = 760ms gauss<641, 10>
Fracture OH 933ms 150ms + gauss(760) = 910ms OH delay + gauss<783, 20>
Fracture Meta +1 ~1000ms 500ms + gauss(760) = 1260ms 170ms spawn + gauss<830, 80>
AT (no Meta) ~940ms 0 + gauss(760) = 760ms 110ms spawn + gauss<830, 80>
AT (Meta) ~1065ms 0 + gauss(760) = 760ms 235ms spawn + gauss<830, 80>

Other sources (unchanged, validated against WCL)

These all fit the shared Gaussian. No per-source overrides needed.

Source WCL observed (ms) Notes
Fallout 858 Initial burst only, all frags arrive on same tick
Sigil of Spite 830 After activation delay (1s Quickened / 2s base)
Soul Carver 862 First frag at server tick; 3 "immediate" arrive ~150ms apart
Fel Devastation 864 (tick 1), 1707 (tick 2) Meteoric Rise only (n=31, one player). Mean 2.48 frags/cast. tick 3 likely clipped by 2s channel ending.

WCL empirical data (5200+ events, 3 VDH dungeon runs) shows Fracture's
fragments activate at distinct sequential times, not from the shared
Gaussian used by damage-tick sources. The shared gauss<830, 80>() remains
correct for Fallout, Sigil, Soul Carver, Fel Devastation, etc.

Add an optional activation_delay override to spawn_soul_fragment() and
soul_fragment_t. When set, get_travel_time() returns the override instead
of the spec-wide Gaussian. All existing call sites (30+) are unaffected.

Fracture fragment timing (observed → modeled):
- MH: 641ms (was ~830ms) — gauss<641, 10>
- OH: 933ms (was ~980ms) — OH delay + gauss<783, 20>
- Meta 3rd: ~1000ms — unchanged (170ms spawn + Gaussian)
- AT (no Meta): ~940ms (was ~830ms) — 110ms spawn delay + Gaussian
- AT (Meta): ~1065ms (was ~830ms) — 235ms spawn delay + Gaussian
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant