adventure: T6 Inversion Stitch (Seamstress) + boss re-strengthen (P8)

Second in-combat Layer-2 mechanic, reusing Amendment's round-end seam. In the
Seamstress's phase 2 (<=35% HP) the room sews inside-out in a repeating
warn(1)->sting(2) cadence, telegraphed one round ahead: during a pulse player
heals (self + ally) invert to damage, floored at 1 HP. State
inversionActive/inversionTelegraph round-trips through CombatStatuses so a
suspend/resume can't drop or double a pulse.

Sim surfaced that unplace is reach-bound (only ~37% reach the boss, then cleared
her ~98%), so the mechanic alone is sub-noise. Re-strengthened the Seamstress,
the weakest T6 boss (over-softened by P7 for a zone lift that never came):
HP 385->460, Atk 39->45, Needle Rain proc 0.40->0.45. Sim-validated at
fighter zone 37.5% (in range), and a real boss fight now instead of a victory lap.

Claude-Session: https://claude.ai/code/session_0156WqjgsbmSY2U8eQ3Kkb1s
This commit is contained in:
prosolis
2026-07-16 12:14:41 -07:00
parent 189a44e1eb
commit 479f77b9c5
7 changed files with 332 additions and 16 deletions

View File

@@ -243,6 +243,16 @@ type CombatStatuses struct {
// existing EnemyAtkBuff, so it needs no field of its own.
EnemyRewindHP int `json:"enemy_rewind_hp,omitempty"`
EnemyRewindUsed bool `json:"enemy_rewind_used,omitempty"`
// Inversion Stitch (Tier-6 postgame, The Seamstress). An in-combat Layer-2
// hook resolved at round end (applyBossInCombatRoundEnd), live only in the
// boss's phase 2. InversionActive is the rounds-remaining of the inside-out
// pulse during which player heals sting instead of mend (gated in
// stepPlayerActionEffect); InversionTelegraph is the one-round warning before
// a pulse activates. Both round-trip through combatState so a suspend/resume
// can't lose or replay a pulse mid-fight. Zero/false for every other enemy.
InversionActive int `json:"inversion_active,omitempty"`
InversionTelegraph bool `json:"inversion_telegraph,omitempty"`
}
// applyBuffDelta folds one resolved buff (the result of a !cast / !consume