From 8cd6491e435f0a0355077b6162d1b17b77baa19e Mon Sep 17 00:00:00 2001 From: sganggs Date: Sat, 3 Oct 2026 19:45:27 +0800 Subject: [PATCH] =?UTF-8?q?feedback1=20final:=20DESIGN=20=C2=A721.29's=20m?= =?UTF-8?q?easured=20line=20says=20the=20six=20cast=20before=20any=20hit?= =?UTF-8?q?=20(some=20defenders=20are=20never=20reached)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/DESIGN.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/DESIGN.md b/docs/DESIGN.md index 7b0228ff..012721d0 100644 --- a/docs/DESIGN.md +++ b/docs/DESIGN.md @@ -1451,7 +1451,7 @@ Two public GitHub issues after 0.1.0, both client-only. Normative lines rewritte - **Official, unchanged**: the 下半 (act2autochess, 2026-03) `skillTriggerDataList` row `TANK | | | 0 | TAKE_DAMAGE` and PRTS 卫戍协议/帮助's 重装 strategy "不受技能范围影响,受到伤害时释放技能" (下半, 2026/3/14) — a class row, covering every MANUAL 重装 skill whatever its index (§20.2); 上半 (act1autochess, 2025-11) had no TANK row, so 重装 skills used the basic strategy then (research 03 §1.4 keeps the history). PR #12's reasons — the row as "skill 1 only" and "offensive skills activate when an enemy is in their skill range" — rested on a community summary (arknights.wiki.gg), not on the CN client or PRTS; that quote is removed from research 03 (promised on PR #12). - **Decision** (the owner, 2026-10-03): a deliberate, documented deviation — six offensive 重装 skills take the basic strategy (DEFAULT: SP ready, about to attack, an enemy inside the initial range or one it blocks): **深巡 S2 行动能力剥夺, 雷蛇 S2 反击电弧, 号角 S2 暴风号令 and S3 终极防线, 灰毫 S1 攻击力强化·γ型 and S2 专注轰击**. Every other MANUAL 重装 skill keeps TAKE_DAMAGE — 深巡 S1 侵袭破坏应对 included. - **Where**: in the data, so the server, the browser battle and the bots read one rule. `TRIGGER_DEVIATIONS` is keyed by the normal chess id and the skill id (the elite record follows through its `baseId`), never by the skill id alone: 灰毫 S1 is the generic `skcom_atk_up[3]`, which 惊蛰, 幽灵鲨, 耶拉, 莫斯提马 and 莱恩哈特 carry too. `resolveTrigger` applies it last; the 12 records read `trigger { rule: 'DEFAULT', rawRule: 'TAKE_DAMAGE' }` — `rawRule` keeps the official row for traceability — and `validateAll` fails the build when an entry no longer meets a TAKE_DAMAGE row. PR #12's kit lines (`trigger: 'DEFAULT'` on 深巡 / 雷蛇 S2) stay, agreeing with the data (a test pins kit = data); their comments and the contributor's tests now give this section's reason. -- **Measured** (a real battle: 战场#01(下半), one 萨卡兹枯朽前锋 walking the lane from the gate, the operator SP-full on (9,5) facing it): 深巡 / 雷蛇 S2 cast 6.2 s after the spawn, when the enemy steps onto the 2-2 line; 号角 S2 / S3 and 灰毫 S1 / S2 within 1.3 s (their 要塞 range reaches the gate) — the enemy reaches and first hits them at 23.8 s; each of the other 46 MANUAL 重装 records (normal + elite) casts on that first hit. +- **Measured** (a real battle: 战场#01(下半), one 萨卡兹枯朽前锋 walking the lane from the gate, the operator SP-full on (9,5) facing it): 深巡 / 雷蛇 S2 cast 6.2 s after the spawn, when the enemy steps onto the 2-2 line, and 号角 S2 / S3 and 灰毫 S1 / S2 within 1.3 s (their 要塞 range reaches the gate) — each before anything has hit it (the enemy reaches the defender after ≈ 24 s, if at all); each of the other 46 MANUAL 重装 records (normal + elite) casts on the first hit it takes, at 23.8 s. - **Players notice**: these six fire sooner and more often — from range, before anything reaches the defender; 号角 S3's 过载 HP drain therefore starts sooner; 灰毫 S2 (block 0) lets an enemy pass as soon as one comes into range, not after the first hit; on a fenced tile (§21.23) 深巡's S2 fires. - One-line flip: remove the entry from `TRIGGER_DEVIATIONS` (for 深巡 / 雷蛇 also the kit line) and rebuild. - Normative lines rewritten with it: §5.6 (`TAKE_DAMAGE`), §19.2 (灰毫 S2), §20.2 (players notice, the table), §21.20 (a settled row), §21.23 (深巡 on a fenced tile).