[M14] 可破坏物件美术与剧情任务链

里程碑 M14 · 重要程度 ★★★☆☆ · 风险 中 · 依赖:M6, M7
完整路线图见 ROADMAP.md


背景

可破坏物件美术

data\\global\\objects\\ 下是 1748 个 DCC + 1461 个 COF,只有 13 个 DC6——
也就是说 D2 画对象用的是和角色一样的 COF + DCC 合成管线。

资源包目前只烘焙了它们的位置与元数据(Objects.txt 的名称 / HP / Token + 选定的美术成员名),
像素留白。

⚠️ 不要把这些文件当 DC6 硬解:头部对不上,解出来是垃圾(已实测验证过)。必须走 DCC 路径。

另一个已知的坑:DS1 对象的 id 不是 Objects.txt 的行号,而是「该 act 对象表」的索引
(见 src/game/object-lookup.ts,数据由 npm run port:object-lookup 从 OpenDiablo2 的表生成)。
identity 映射会把 act1 的喷泉(id 0)读成 Objects.txt 第 0 行 "Expansion"。

剧情

questsFromTable 目前只有 1 个 demo 任务。

改动清单

  • [MODIFY] scripts/pack-act-assets.ts —— 烘焙可破坏物件美术(走 DCC/COF 管线,与 M7 的怪物精灵同一套机制)
  • [MODIFY] src/game/quests.ts —— 真实任务链

验收

  • 罐子 / 箱子 / 火把可破坏,有正确的破坏动画
  • 对象美术在等距深度排序中位置正确(不穿墙、不盖角色)
  • npm run verify:object-lookup 仍然通过(DS1 对象 id → token/mode 与 Objects.txt 交叉核对)
  • 第一幕完整任务链可通关
No due date
100% Completed
#29 by troytt was closed 2026-09-23 01:12:13 +00:00 0 / 4