[Parity][motion-input][S1][R] 死亡怪物一律不能选中,尸体类技能无法指定目标 #583

Closed
opened 2026-10-02 11:42:41 +00:00 by troytt · 0 comments
Owner

1.13c 客户端保真度审计立项(基准快照:7bd1090 / main @ 77a20c7)

证据标记说明:V-data = 1.13c MPQ 数据表 (.txt / animdata.d2 / .tbl / pal.pl2);V-src = D2MOO 逆向源码;V-bin = 1.13c DLL 反汇编;K = 1.13c 公认行为。

来源审计项:motion-input#3 — [S1][R] 3. 死亡怪物一律不能选中,尸体类技能无法指定目标

  • 位置:command-mapper.ts:243-246(注释写着 "unless interactable"),:272-275
  • 代码:if (unitType === 1 && (unit.mode === 12 || unit.lifePct <= 0)) continue
  • 原版:skills.txt 里 TargetCorpse=1 的技能必须以尸体为目标:#70 Raise Skeleton、#74 Corpse Explosion、#80 Raise Skeletal Mage、#95 Revive、#131 Find Potion、#142 Find Item、#150 Grim Ward(V-data;它们的 SelectProc 依次是 2/1/2/3/4/5/6,说明客户端对每个技能有专门的尸体选择过程)。服务器端的技能处理(如 Raise Skeleton)必须拿到目标单位(V-src D2Game SkillNec.cpp:97-109)。注释里说的 "unless interactable" 分支,代码里根本没有。
  • 影响:死灵法师(复活骷髅、尸爆、复活)和野蛮人(寻找物品、寻找药水、恐怖图腾)的核心技能都无法对尸体施放,这两个职业基本没法玩。
  • 建议:按当前所选技能在 skills.txt 中的 TargetCorpse / SelectProc / TargetPet / TargetableOnly 列决定哪些单位可选。选尸体技能时,死亡怪物应当可选。
  • 已有 issue:—
> **1.13c 客户端保真度审计立项**(基准快照:`7bd1090` / `main @ 77a20c7`) > 证据标记说明:`V-data` = 1.13c MPQ 数据表 (`.txt` / `animdata.d2` / `.tbl` / `pal.pl2`);`V-src` = D2MOO 逆向源码;`V-bin` = 1.13c DLL 反汇编;`K` = 1.13c 公认行为。 ### 来源审计项:`motion-input#3` — [S1][R] 3. 死亡怪物一律不能选中,尸体类技能无法指定目标 - 位置:`command-mapper.ts:243-246`(注释写着 "unless interactable"),`:272-275` - 代码:`if (unitType === 1 && (unit.mode === 12 || unit.lifePct <= 0)) continue` - 原版:`skills.txt` 里 TargetCorpse=1 的技能必须以尸体为目标:#70 Raise Skeleton、#74 Corpse Explosion、#80 Raise Skeletal Mage、#95 Revive、#131 Find Potion、#142 Find Item、#150 Grim Ward(V-data;它们的 SelectProc 依次是 2/1/2/3/4/5/6,说明客户端对每个技能有专门的尸体选择过程)。服务器端的技能处理(如 Raise Skeleton)必须拿到目标单位(V-src D2Game `SkillNec.cpp:97-109`)。注释里说的 "unless interactable" 分支,代码里根本没有。 - 影响:死灵法师(复活骷髅、尸爆、复活)和野蛮人(寻找物品、寻找药水、恐怖图腾)的核心技能都无法对尸体施放,这两个职业基本没法玩。 - 建议:按当前所选技能在 `skills.txt` 中的 `TargetCorpse` / `SelectProc` / `TargetPet` / `TargetableOnly` 列决定哪些单位可选。选尸体技能时,死亡怪物应当可选。 - 已有 issue:—
Sign in to join this conversation.
No Label
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: troytt/diablo2-web#583
No description provided.