[M20-P7] 五幕特殊机制、任务日志、组队、玩家交易、雇佣兵与音效(档 C:五幕完整客户端) #515

Closed
opened 2026-09-28 13:10:08 +00:00 by troytt · 0 comments
Owner

背景与目标

补齐第二至五幕的特殊关卡表现、任务状态同步、多人组队、玩家面对面交易、雇佣兵管理与音效触发,达成档 C(可替代原版 1.13c Game.exe 的五幕完整纯客户端)。

核心内容与 1.13c Ground Truth 对标

  1. 五幕特殊关卡与机关表现:
    • Act II:塔拉夏真假古墓符号标识、召唤者秘法圣殿四向传送台、孔洞插杖开启督瑞尔房间表现。
    • Act III:崔凡克憎恨宝珠摧毁与墨菲斯托过桥表现。
    • Act IV:混沌避难所五封印激活与暗黑破坏神登场表现、地狱熔炉砸魂石表现。
    • Act V:亚瑞特山巅三远古人雕像激活、毁灭王座巴尔五波仆从(0xA4)与世界之石大殿表现。
  2. 任务日志与小站全幕同步:
    • 解析下行 0x28 / 0x29(任务完成状态位图)与 0x52(任务日志更新),驱动任务面板(Q 键)6 幕共 27 个任务的图标、阶段提示与 NPC 任务对话分支。
    • 解析下行 0x63(已激活小站位图),驱动五幕小站面板可用状态。
  3. 多人组队(Party)与敌对(Hostile):
    • 处理下行 0x8B / 0x8C / 0x8D(组队关系、敌对关系、队伍成员所在关卡)与 0x7F / 0x90(队友血量与小地图坐标同步)。
    • 发送上行 0x5E(组队邀请/接受/离开)、0x5D(切换敌对/尸体拾取许可),实装组队面板(P 键)与左上角队友头像血条。
  4. 玩家间面对面交易(Player Trade)与雇佣兵(Mercenary):
    • 交易:处理 0x77(交易框按钮动作)、0x78(对方交易栏金币更新)与 0x9D 交易容器物品,发送 0x4F(请求/确认/取消交易),实装双栏玩家交易 UI。
    • 雇佣兵:处理 0x81(分配雇佣兵)、0x9E / 0x9F / 0xA0(雇佣兵属性与经验),发送 0x36(雇佣)、0x61(给雇佣兵穿脱装备/喂药)、0x62(复活雇佣兵),实装雇佣兵面板(O 键)。
  5. 音效、断线重连与大规模同屏性能:
    • 处理 0x2C(单位语音/音效事件)并接线 AudioManager。
    • 完善断线检测、退房保存(0x69 D2GS_EXITGAME)返回 bnet_lobby 闭环,以及巴尔王座/母牛关高密度单位与飞弹同屏下的 60fps 渲染预算。

验收标准(档 C 里程碑)

  • 本客户端与原版 1.13c Game.exe 组队同局,从 Act I 普通难度完整通关至 Act V 击杀巴尔(含任务、组队分经验、玩家当面交易、雇佣兵穿装与复活),全程无断线、无解析异常、无位置分叉。
  • 全套自动化回归(npm run typecheck、vitest、.d2cap 全量回放、单机 136 关卡 headless 审计)100% 通过。
## 背景与目标 补齐第二至五幕的特殊关卡表现、任务状态同步、多人组队、玩家面对面交易、雇佣兵管理与音效触发,达成**档 C(可替代原版 1.13c `Game.exe` 的五幕完整纯客户端)**。 ## 核心内容与 1.13c Ground Truth 对标 1. **五幕特殊关卡与机关表现**: - Act II:塔拉夏真假古墓符号标识、召唤者秘法圣殿四向传送台、孔洞插杖开启督瑞尔房间表现。 - Act III:崔凡克憎恨宝珠摧毁与墨菲斯托过桥表现。 - Act IV:混沌避难所五封印激活与暗黑破坏神登场表现、地狱熔炉砸魂石表现。 - Act V:亚瑞特山巅三远古人雕像激活、毁灭王座巴尔五波仆从(`0xA4`)与世界之石大殿表现。 2. **任务日志与小站全幕同步**: - 解析下行 `0x28` / `0x29`(任务完成状态位图)与 `0x52`(任务日志更新),驱动任务面板(`Q` 键)6 幕共 27 个任务的图标、阶段提示与 NPC 任务对话分支。 - 解析下行 `0x63`(已激活小站位图),驱动五幕小站面板可用状态。 3. **多人组队(Party)与敌对(Hostile)**: - 处理下行 `0x8B / 0x8C / 0x8D`(组队关系、敌对关系、队伍成员所在关卡)与 `0x7F / 0x90`(队友血量与小地图坐标同步)。 - 发送上行 `0x5E`(组队邀请/接受/离开)、`0x5D`(切换敌对/尸体拾取许可),实装组队面板(`P` 键)与左上角队友头像血条。 4. **玩家间面对面交易(Player Trade)与雇佣兵(Mercenary)**: - 交易:处理 `0x77`(交易框按钮动作)、`0x78`(对方交易栏金币更新)与 `0x9D` 交易容器物品,发送 `0x4F`(请求/确认/取消交易),实装双栏玩家交易 UI。 - 雇佣兵:处理 `0x81`(分配雇佣兵)、`0x9E / 0x9F / 0xA0`(雇佣兵属性与经验),发送 `0x36`(雇佣)、`0x61`(给雇佣兵穿脱装备/喂药)、`0x62`(复活雇佣兵),实装雇佣兵面板(`O` 键)。 5. **音效、断线重连与大规模同屏性能**: - 处理 `0x2C`(单位语音/音效事件)并接线 `AudioManager`。 - 完善断线检测、退房保存(`0x69 D2GS_EXITGAME`)返回 `bnet_lobby` 闭环,以及巴尔王座/母牛关高密度单位与飞弹同屏下的 60fps 渲染预算。 ## 验收标准(档 C 里程碑) - [ ] 本客户端与原版 1.13c `Game.exe` 组队同局,从 Act I 普通难度完整通关至 Act V 击杀巴尔(含任务、组队分经验、玩家当面交易、雇佣兵穿装与复活),全程无断线、无解析异常、无位置分叉。 - [ ] 全套自动化回归(`npm run typecheck`、`vitest`、`.d2cap` 全量回放、单机 136 关卡 headless 审计)100% 通过。
troytt added this to the [M20] D2GS 纯客户端:接入 PvPGN + D2GS 1.13c 服务端联机 (1.13c Ground Truth) milestone 2026-09-28 13:10:08 +00:00
Sign in to join this conversation.
No Label
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#515
No description provided.