feedback5 CB2: DESIGN §25.16 — the community reports of 2026-10-06 of stream CB2 (healers, summons, timers): 12, 18, 33, 34, 26, 14 fixed; 11, 13, 31, 32 answered with the evidence; design/network.md notes the countdown summons' snapshot hp
This commit is contained in:
1 parent
f1e462ef62
commit
97105cbfad
2 files changed
+101
-2
No files matched your search
@@ -23,7 +23,7 @@ S→C:
|
||||
- NOTE: game time in `b.snap`/`b.ev` is carried as **`gt`** (the frame's `t` is the message type).
|
||||
- Active finite zero-SP timed skills display `sp=timeLeft`, `spMax=duration` and `UF.SKILL`; after end they display
|
||||
`0/0`. Snapshot display capacity does not change runtime SP/cost.
|
||||
- `b.snap` — `{ fieldId, gt, units: [[id, x, y, hp, maxHp, sp, spMax, flags, anim]] , dp, killed, total, down?, elem? }` 20 Hz. Optional, only when non-empty (§18.3): `down: [[id, respawnAt (game s), respawnTime (s), state, row, col]]` — knocked-out operators waiting to redeploy, `state` 0 counting | 1 timer done, waiting for DP | 2 timer done, its tile taken — a safeguard, no ally deploys there (sim/constants.js `DOWN_STATE`); `row, col` = the tile it lies on and comes back on (§21.24); `elem: [[id, element, fill, cooldownEnd (game s), cooldown (s)]]` — the one gauge a unit shows: the fullest (ties by the official element id 神经 < 侵蚀 < 灼燃 < 凋亡), fill with 2 decimals rounded DOWN and kept at 0.01–0.99 outside a burst (§20.8); during a 爆发冷却 the bursting element with fill 1 and the cooldown numbers (else 0, 0)
|
||||
- `b.snap` — `{ fieldId, gt, units: [[id, x, y, hp, maxHp, sp, spMax, flags, anim]] , dp, killed, total, down?, elem? }` 20 Hz (a countdown summon's `hp` is maxHp × the share of its life left, §25.16.5). Optional, only when non-empty (§18.3): `down: [[id, respawnAt (game s), respawnTime (s), state, row, col]]` — knocked-out operators waiting to redeploy, `state` 0 counting | 1 timer done, waiting for DP | 2 timer done, its tile taken — a safeguard, no ally deploys there (sim/constants.js `DOWN_STATE`); `row, col` = the tile it lies on and comes back on (§21.24); `elem: [[id, element, fill, cooldownEnd (game s), cooldown (s)]]` — the one gauge a unit shows: the fullest (ties by the official element id 神经 < 侵蚀 < 灼燃 < 凋亡), fill with 2 decimals rounded DOWN and kept at 0.01–0.99 outside a burst (§20.8); during a 爆发冷却 the bursting element with fill 1 and the cooldown numbers (else 0, 0)
|
||||
- `b.ev` — `{ fieldId, ev: [ ... ] }` event tuples: `['spawn', UnitInfo]`, `['atk', srcId, tgtId, projKind]`, `['dmg', tgtId, amount, type]`, `['heal', tgtId, amount]`, `['skill', id, on:0|1]`, `['die', id, reason]` (reason `'killed'`, `'retreat'`, `'expired'` …; only `'killed'` plays an operator's knock-down sound), `['status', id, key, on]`, `['fx', kind, x, y, extra]` (`'hitCap' {id, n}` = a cancelled 限伤 hit, drawn as nothing, §20.12; `extra.form` = the unit's model form from then on (an enemy's mode, a 傀儡师's 替身 §22.11) — `shared/protocol.js fxForm`, state like a spawn: never dropped by the client, §21.4), `['layer', playerId, bondId, n]`, `['bounty', playerId, coins]`, `['deploy', id]`
|
||||
- `m.toast {kind, text}` · `m.ticker {text, id, type, priority, playerId}` (the strip plays the highest priority first, §21.10) · `m.emote {playerId, id}` · `m.result {...}`
|
||||
- `m.unitStats {seq, round, units: [unitStatsEntry]}` — the answer to `g.unitStats` (`seq` echoed): every own board operator / summon by uid with `{id, uid, defId, hp, alive, maxHp, atk, def, res, interval, blockCnt, moveSpeed, range?, base: {…same}}` (shared/protocol.js `unitStatsEntry`; `range` = an ally's live range grid, facing RIGHT, never a target-selection grid, §21.16) as its next battle starts (§18.5)
|
||||
|
||||
+100
-1
@@ -25,7 +25,10 @@ settled (泥岩's 闭锁; 忍冬, 深靛, 阿) → §25.11; release packaging an
|
||||
with no Spine model) → §25.12; round 18 — 拟态物质 at the copy cap (GitHub #207), 华法琳's 7 / 14 (GitHub #175, PR #192),
|
||||
a merged elite 拉普兰德 as a new one (GitHub #169), the leader pool per player alive (PR #209), the flying lift and two
|
||||
model quirks (PR #211) → §25.13; the community reports of 2026-10-06 (the 孤岛风云 prisoners drawn freed, 忍冬's trigger, a
|
||||
bounty burned to death by the 活性源石, 枯朽之种 paying a bounty) → §25.14.
|
||||
bounty burned to death by the 活性源石, 枯朽之种 paying a bounty) → §25.14; the second batch of community reports of
|
||||
2026-10-06, stream CB2 (healers, summons, timers: 刺玫's S2 heals, 琳琅诗怀雅 healing herself and her 破财消灾 cost after a
|
||||
redeploy, 赫默's drone at full SP, the countdown summons' 无敌 / 禁疗 / timer bar, stacked alchemy zones; the chain heal,
|
||||
DoT damage, 伺夜's 狼影 and the 吟游者 trait answered) → §25.16.
|
||||
|
||||
Decisions of the owner: 2026-10-04 — the server stays on plain `node:http` + `ws`, no web framework (§25.1);
|
||||
2026-10-05 — the 补位 plan (§25.3); the 自选编队 rules, the collab operators out of the pool, ISW-A refused (§25.4);
|
||||
@@ -1062,3 +1065,99 @@ fixed (W5AA's commits name every golden scenario moved); two were already fixed
|
||||
bounty 使徒 whose seeds leaked sent every seed into 联防 carrying the card — 15 of 16 re-entries paid it again — which
|
||||
is the report; on this tree only the 使徒's own leak carries it.
|
||||
- Golden: unchanged. Pinned: `test/sim/feedback5-community-pins.test.js`.
|
||||
|
||||
### 25.16 Community reports of 2026-10-06, stream CB2: healers, summons, timers — `kits/ops/chess_char_1_06-vendla.js`, `chess_char_3_04-swire2.js`, `chess_char_2_02-silent.js`, `content/tokens.js COUNTDOWN_SUMMONS / startCountdown`, `sim/snapshot.js unitTuple`, `render/fx/zones.js zoneAlpha`
|
||||
|
||||
The owner's second collection of community reports (2026-10-06/07) was split over five streams; CB2 took the healers,
|
||||
the summons and the timers (items 11, 12, 13, 14, 18, 26, 31, 32, 33, 34 of the list). Each was reproduced on the 0.2.0
|
||||
tree with a script first (on the v0.1.4 sources too where the report could be older), then checked against the official
|
||||
data — the local client's battle prefabs (charpack, token and skill prefabs, projectiles; abnormal flag ids per PRTS 异常
|
||||
效果: 5 无敌, 7 禁疗), ArknightsGameData's buff templates, skill_table / character_table, PRTS (备注 included) — and the
|
||||
earlier decisions. Six were real and are fixed, one commit each with its golden scenarios named; four are answered with
|
||||
the evidence.
|
||||
|
||||
#### 25.16.1 「刺玫开技能(装备源石药剂)之后不能治疗」 (item 12): only the S2 counter's trait heal goes to her protégé — `kits/ops/chess_char_1_06-vendla.js`
|
||||
|
||||
- **Seen**: during 荆藤庇荫 every trait heal went to the protégé, usually at full HP — a 源石溶剂 carrier drained from 1017 to
|
||||
297 HP over the skill with all eight heals spent on a 9000 / 9000 ally.
|
||||
- **Official**: 「该角色受到攻击时刺玫对目标造成攻击力20%的法术伤害并仅对该角色触发刺玫特性」 (en "…and activates her Trait on the
|
||||
ally"); the client buff `vendla_tr` heals through the selector S2TraitHealRange (the `vendla_s_2` holder) only for a
|
||||
damage whose modifier carries the key `vendla_s_2` — the counter, `vendla_s_2[extra_damage]` — else through
|
||||
TraitHealRange (`_excludeOwner` 0, 禁疗 excluded).
|
||||
- **Now**: the counter's damage names the protégé (`traitAlly`); every other damage she deals heals the lowest-HP ally of
|
||||
her range, herself included, skill running or not.
|
||||
- Golden: roster-001 / 002, bond-deputShip-low / -high, bond-suntShip-high, bond-victoriaShip-low / -high, the bot matches
|
||||
solo-FUNNY-2, coop2-NORMAL-3, coop3-ABYSS-5, coop4-FUNNY-6, coop4-ABYSS-7. Tests:
|
||||
`test/content/feedback5-vendla-heal.test.js`.
|
||||
|
||||
#### 25.16.2 「琳琅诗怀雅不会治疗自己」 (item 18): S1 仗义疏财 heals her own tile too — `kits/ops/chess_char_3_04-swire2.js`
|
||||
|
||||
- **Official**: the client charpack (char_1033_swire2, mode S1, ability HealAlly) selects with range x-4 — the 3×3 with her
|
||||
own tile —, ally side, `_excludeOwner` 0, max HP ratio 0.7, one target. **Cause**: the kit skipped her and kept
|
||||
Chebyshev distance 1 only. **Now**: the lowest HP ratio below 70 % of the 3×3, herself included (her own 禁疗 still
|
||||
stops it); the owner's cadence of 2026-10-04 is unchanged.
|
||||
- Golden: roster-027. Tests: `test/content/feedback5-swire2-self-heal.test.js`.
|
||||
|
||||
#### 25.16.3 「进入联防阶段琳琅诗怀雅所需的复活费用应该重置,正常对局中死亡之后再部署复活费用也应该重置」 (item 33): 破财消灾 restarts at 5 DP with every deployment — `kits/ops/chess_char_3_04-swire2.js`
|
||||
|
||||
- **Official**: PRTS 破财消灾 备注 「再部署时重置本天赋费用消耗」; the client buff `swire2_t_2` doubles the `cost` of its own
|
||||
blackboard, rebuilt when she is deployed. **Cause**: the kit kept its save count for the whole battle (5 → 10 → 20 across
|
||||
a redeploy). **Now**: reset at each of her deployments (battle start, redeploy, 突袭 再部署); a 联防 field is a battle of
|
||||
its own, so it always started at 5 (pinned).
|
||||
- Golden: roster-008 (a cheaper save after a redeploy), roster-049 (snapshots only). Tests:
|
||||
`test/content/feedback5-swire2-revive-cost.test.js`.
|
||||
|
||||
#### 25.16.4 「赫默的无人机在2技能好了之后应该秒放」 (item 34): S2 医疗无人机 casts at full SP — `kits/ops/chess_char_2_02-silent.js`
|
||||
|
||||
- **Seen**: S2 full at 26 s and no cast while nobody was hurt; the drone came only once an ally in her range was injured.
|
||||
- **Official**: the client skill `skchr_silent_2` (AUTO) has no `_trigger`, `_allowNoTarget` 1, `_checkHasTargetBeforeDoCast`
|
||||
0 and a RechargeToken action — no cast condition; `_stopSpWhenTokenIsFull` 1 = PRTS S2 备注 「库存达到上限后赫默获得阻回,
|
||||
直到库存被消耗为止」.
|
||||
- **Now**: trigger SP_FULL — the placed drone takes its tile the moment S2 is ready; 阻回 (`noSp`) while her stock is full.
|
||||
- Golden: roster-003 / 005, bond-visiShip-low / -high. Tests: `test/content/feedback5-silent-drone.test.js`.
|
||||
|
||||
#### 25.16.5 「赫默的无人机、浊心斯卡蒂的海嗣等这种召唤物不会受到外来伤害(包括源石地板),也不会被干员治疗,血量随时间减少」 (item 26): the countdown summons — `content/tokens.js COUNTDOWN_SUMMONS / startCountdown`, `sim/snapshot.js unitTuple`, `sim/units.js` (`countdown`), the kits of 浊心斯卡蒂, 温蒂, 莱伊, 鸿雪, 酒神
|
||||
|
||||
- **Seen**: a 海嗣 on 活性源石 lost 70 of its 100 HP every second; a hurt drone drew every medic's heals and the 吟游者
|
||||
regeneration; their bars were plain HP.
|
||||
- **Official / sources**: PRTS 斯卡蒂的海嗣 备注 「持有禁疗、无敌」; the token prefabs give 海嗣 and 沙地兽 the abnormal flags 5 +
|
||||
7, 工程蓄水炮 7; their lives are suicide buffs (`suicide_after_buff`, the drone's `skcom_withdraw`). The report describes
|
||||
the official mode: no outside damage, no heal, a bar that runs down like a timer and the summon gone when it is empty.
|
||||
- **Now**: the summons that "不会受到攻击" and leave after a fixed time — 医疗探机 (10 s), 诅咒娃娃 (15 s), 斯卡蒂的海嗣 (25 / 30
|
||||
s) and the 自选 工程蓄水炮 (20 s), 沙地兽 (25 s), “打字机” (25 s), 本能的召唤 (10 s) — hold 无敌 + 禁疗 from each deployment
|
||||
(`startCountdown`, called where each lifetime is scheduled) and the snapshot's hp is maxHp × the share of the life left
|
||||
(`unit.countdown`). The sim HP stays full, so no selector sees a low-HP summon. Summons that block and are attacked
|
||||
(沙之碑, 战术装备, “小自在”, 结构性原理, 狼群 …) keep real HP.
|
||||
- [ASSUMED]: 无敌 + 禁疗 for the four whose base prefabs carry no flag (医疗探机, 诅咒娃娃, “打字机”, 本能的召唤), and the bar as
|
||||
a display of the time left — from the report; no HP-drain node exists in the client data.
|
||||
- Golden: snapshot hashes only (the bar): roster-003 / 016 / 018 / 035 / 045 / 046, bond-visiShip-low / -high,
|
||||
boss-boss_1 / 3 / 5 / 7-pair, unite-1; gameplay too: roster-005 (medics no longer heal the drone), roster-037 and
|
||||
hidden-boss_9-pair (a 海嗣 / drone under damage stays up). Tests: `test/sim/feedback5-countdown-summons.test.js`. Docs:
|
||||
docs/SIM.md (token pieces), docs/PLAYING.md.
|
||||
|
||||
#### 25.16.6 「炼金师分支干员的炼金单元等范围持续性技能特效太亮(尤其是多层叠加以后)」 (item 14): stacked areas stay readable — `render/fx/zones.js zone / zoneAlpha`, `render/fx/simfx.js`, `kits/ops/chess_char_5_15-thorn2.js`
|
||||
|
||||
- **Cause**: 引星棘刺 S2's drifting unit was re-sent every second and drawn as a new additive zone for the rest of its life —
|
||||
up to twelve layers on one spot; overlapping units (锡人's charges, several alchemists) added up the same way.
|
||||
- **Now**: the fx carries `key` and the client moves / resizes that one zone; a persistent area (> 3 real s) is drawn at
|
||||
0.16 / 0.5 (disc / edge) and ÷ √n among the n persistent areas overlapping it; short bursts and telegraphs unchanged.
|
||||
- Golden: unchanged. Tests: `test/render/feedback5-zone-stack.test.js` (node; no browser suite draws zones).
|
||||
|
||||
#### 25.16.7 Answered with the evidence: items 11, 13, 31, 32 — no change
|
||||
|
||||
- **11 「链愈师…只能从周身8格里的干员开始,最远不会跳出攻击范围,…即使后续跳跃干员满血也会按照规则顺序跳跃」**: the x-4 jump
|
||||
around the last one healed and full-HP allies jumped in order are 0.2.0's WE1 (§25.7.6; on v0.1.4 a full-HP ally was
|
||||
never jumped). The main target is the lowest-HP ally of the whole attack range y-2 (PRTS 分支特性信息), and the client's
|
||||
chain selector (`projectile_chr_papyrs`: `_rangeId` x-4 around the hit, `_maxTarget` 3) has no attack-range bound, so a
|
||||
jump may leave the range — not implemented.
|
||||
- **13 「有的持续造成伤害类的技能无伤害(如炼金师分支干员的炼金单元)」**: not reproduced — every DoT skill of the pool and of
|
||||
the 自选 operators deals damage once its condition is met (a sweep with two layouts; on two real stages 锡人 S1 / S2 and
|
||||
引星棘刺 S2 / S3 deal 13 000–134 000, the same on v0.1.4). The only zero is the hidden 锡人 record chess_char_1_16 (never
|
||||
in the shop) whose kit lacks S1. The stacked, over-bright zones (item 14) are the likely cause of the impression.
|
||||
- **31 「伺夜的召唤物随时间增长的狼影最高能叠三只(即在新的狼影恢复前能受到三次致命伤害才死亡)」**: what the sim does (kit pack
|
||||
and placed piece, this tree and v0.1.4): 2 狼影 at deployment, 3 after 25 s, lethal hits 3 → 2 → 1 at full HP, the third
|
||||
into the 战术点形态 — PRTS 狼群 备注. Pinned by `test/content/tokens_devices.test.js`, `kits_alt_t3.test.js`.
|
||||
- **32 「吟游者的特性能恢复战术家的召唤物、不屈者分支干员的血量…(但赫默的无人机、浊心斯卡蒂的海嗣这种的血量不可以恢复)」**: the
|
||||
trait is 生命回复速度, which 禁疗 and 无法被友方治疗 do not stop (§25.6.8): 狼群 440 → 532 and 斥罪 1480 → 1618 HP in 3 s
|
||||
under 魔王 (pinned by `test/content/feedback5-regen.test.js`); 孤立 units stay out (PRTS 孤立). The countdown summons
|
||||
cannot be refilled since §25.16.5.
|
||||
Reference in new issue
Block a user