fix: 让家族徽章在解除隐匿后的首笔伤害触发

This commit is contained in:
Xinglan233 committed 2026-10-10 09:53:26 +08:00
1 parent 1db8e51023
commit a173a470b6
6 files changed
+210 -9

No files matched your search

+8
View File
@@ -1561,3 +1561,11 @@ yet — enemy content must pick one); 抵抗 covers the control statuses of `RES
“余音” owns a same-call pulse queue (DESIGN §28.24): reflected hits enqueue their earned pulses instead of recursively
entering another pulse. This retains the lethal-hit pulse and prevents valid high hit-count chains from tripping the
general hook guard. The queue is emptied in `finally`; it introduces no timer or simulation RNG.
### Family Crest damage-event timing
`content/items/battle.js` consumes 家族徽章's accumulated ATK at the first positive damage event without the `item` tag after the
Siracusa carrier's effective 隐匿 ends, without waiting for the growth timer. Its 叙拉古正装 combo is claimed before
synchronous nested damage and uses the boosted ATK before the buff is removed. A later hit cannot consume it again.
Leaving the field clears the accumulation; 迷彩 does not count as 隐匿 (see §3). Source: `data/items.json`.
+8
View File
@@ -224,3 +224,11 @@ the hook-depth guard on scaled hit-count HP; the guard remains unchanged for oth
as well as by its aura tick, including the first hit and immediately after the last companion leaves.
Sources and the feedback items requiring no simulation change are recorded in [§28.25](../history/0.2.3.md#2825-community-feedback-of-2026-10-10).
**Family Crest (家族徽章).** On a Siracusa carrier, the accumulated ATK lasts through the first positive damage
instance after effective 隐匿 ends. At that damage event, the crest + 叙拉古正装 combo uses the accumulated ATK for its
true damage, then removes the bonus. The first hit does not wait for the next 0.25 s growth poll. Consumption is
claimed before nested combo damage, so a multi-hit/AOE attack consumes it once; tagged item procs do not consume it.
Source: `data/items.json` 家族徽章 `desc` / `descRaw` and the
`act2autochess_equip_acarm122_global_buff` blackboard in `buffs`; the existing proc exclusion is preserved.
+16
View File
@@ -479,3 +479,19 @@ imports and typecheck pass. This round changes no production UI and does not rer
the `roster`, `bonds`, `fields`, `matches`, `standins` families are unchanged.
- **Contracts updated:** design/engine.md, SIM.md (cabin), design/client.md, design/network.md, META.md and PLAYING.md
(local identity recovery and handshake).
### 28.28 Family Crest consumes on the first damage after stealth — `content/items/battle.js`
- Cause: the growth poll armed consumption only after observing 隐匿 end. Damage between that transition and the
next 0.25 s poll therefore missed the combo and kept the accumulated ATK through a later hit.
- Source: `data/items.json` 家族徽章 normal/advanced descriptions and combo blackboard: accumulated ATK lasts until
the first damage after 隐匿 ends (or leaving), and 叙拉古正装 adds `atk_scale` true damage on that first instance.
- Read effective stealth at the damage event; claim once before nested proc damage, use the boosted ATK for the
combo and then remove it. Growth rate/cap, bond requirement, deployment/death clearing and proc exclusions stay.
No new [ASSUMED] rule; the existing tagged-proc exclusion is preserved.
- Regression: `test/content/family-crest-timing.test.js` covers stealth removal and natural expiry, ordinary and
advanced item combinations, the immediate first hit and a later hit, stealth re-entry and recharging, zero/proc
damage and other sources, synchronous damage re-entry, leaving/redeployment, and a real Provence kit against a
synthetic enemy. `test/content/items.test.js` no longer waits after stealth ends. These are model tests; they do
not cover reveal, blocked damage or AOE.