[Parity][hud][S2][F][H] 腰带药水图标文件名写错,卷轴不能进腰带,还按名字模糊匹配 #641

Closed
opened 2026-10-02 11:42:50 +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 公认行为。

来源审计项:hud#7 — [S2][F][H] 7. 腰带药水图标文件名写错,卷轴不能进腰带,还按名字模糊匹配

  • 位置:src/common/items/belt-model.ts:34-50(BELT_POTION_CATALOG)、:64-160(itemToBeltPotion 的名字正则兜底)、:250-260(setSlot 把识别不了的物品伪装成回复药水,invFile 填 'invpotl');src/client/ui-model/hud-model.ts:687-697(识别不了就当 { kind: 'hp', invFile: 'invpotr' });src/client/ui/belt.ts:92-95(缺图时画红、蓝、紫色方块)
  • 代码:vps: { …, invFile: 'invvps' }、yps: { …, invFile: 'invyps' }、wms: { …, invFile: 'invwms' }
  • 原版:misc.txt invfile:vps=invwps、yps=invnps、wms=invyps(rvs=invvps、rvl=invvpl 是对的)。tsc / isc 的 belt=1,itemtypes scro 的 Beltable=1(V-data)。
  • 影响:腰带里的耐力药水显示成回复药水图标;解毒药水显示成融冰药水图标;融冰药水找不到图,画成紫色方块;回城、鉴定卷轴放进腰带后被当成 "hp",引用一个不存在的 invpotr,画成红色方块。(public/ui/manifest.json 里的 codeToInvFile 是对的,问题出在腰带另写了一份错误的目录表。)
  • 建议:腰带图标直接用物品在 misc.txt 中的 invfile(或 manifest 的 codeToInvFile);能不能进腰带用 misc.txt belt / itemtypes Beltable 判断;删除名字正则和伪造药水。
  • 已有 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 公认行为。 ### 来源审计项:`hud#7` — [S2][F][H] 7. 腰带药水图标文件名写错,卷轴不能进腰带,还按名字模糊匹配 - 位置:`src/common/items/belt-model.ts:34-50`(`BELT_POTION_CATALOG`)、`:64-160`(`itemToBeltPotion` 的名字正则兜底)、`:250-260`(`setSlot` 把识别不了的物品伪装成回复药水,invFile 填 `'invpotl'`);`src/client/ui-model/hud-model.ts:687-697`(识别不了就当 `{ kind: 'hp', invFile: 'invpotr' }`);`src/client/ui/belt.ts:92-95`(缺图时画红、蓝、紫色方块) - 代码:`vps: { …, invFile: 'invvps' }`、`yps: { …, invFile: 'invyps' }`、`wms: { …, invFile: 'invwms' }` - 原版:misc.txt `invfile`:vps=invwps、yps=invnps、wms=invyps(rvs=invvps、rvl=invvpl 是对的)。tsc / isc 的 `belt`=1,itemtypes `scro` 的 `Beltable`=1(V-data)。 - 影响:腰带里的耐力药水显示成回复药水图标;解毒药水显示成融冰药水图标;融冰药水找不到图,画成紫色方块;回城、鉴定卷轴放进腰带后被当成 "hp",引用一个不存在的 `invpotr`,画成红色方块。(`public/ui/manifest.json` 里的 `codeToInvFile` 是对的,问题出在腰带另写了一份错误的目录表。) - 建议:腰带图标直接用物品在 misc.txt 中的 `invfile`(或 manifest 的 `codeToInvFile`);能不能进腰带用 misc.txt `belt` / itemtypes `Beltable` 判断;删除名字正则和伪造药水。 - 已有 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#641
No description provided.