• Joined on 2026-05-11
troytt commented on issue troytt/diablo2-web#8 2026-09-14 13:28:28 +00:00
[Bug] tbl.ts 字符串表解码器偏差:线性假想索引未对齐暗黑2官方哈希桶(Hash Table)键值格式

已修复 — fix(formats): 按官方哈希桶格式重写 tbl 解码器与编码器 (f4dd55b)

原实现按顺序表解析,与真实 .tbl 的哈希桶布局不符。现已按实际格式…

troytt commented on issue troytt/diablo2-web#14 2026-09-14 13:28:24 +00:00
[测试工程] 缺少现代化单元测试框架:引入 Vitest 规范化测试套件、覆盖率统计与持续集成

已修复 — test: 引入 Vitest 测试框架、覆盖率统计与 CI 流水线 (1a81693)

  • 新增 vitest.config.ts、npm test / test:watch / test:coverage。
  • 把原先…
troytt commented on issue troytt/diablo2-web#12 2026-09-14 13:28:20 +00:00
[工程化/环境] 测试与构建脚本执行强依赖特定 Node.js 运行时:引入 tsx 解决跨平台与 CI 无法运行 TypeScript 脚本

已修复 — chore(scripts): 使用 tsx 运行 TypeScript 脚本 (63b3962)

package.json 中所有 node scripts/*.ts 的调用已全部改为通过 tsx 运行,并把原先零散的…

troytt closed issue troytt/diablo2-web#12 2026-09-14 13:28:11 +00:00
[工程化/环境] 测试与构建脚本执行强依赖特定 Node.js 运行时:引入 tsx 解决跨平台与 CI 无法运行 TypeScript 脚本
troytt closed issue troytt/diablo2-web#14 2026-09-14 13:28:11 +00:00
[测试工程] 缺少现代化单元测试框架:引入 Vitest 规范化测试套件、覆盖率统计与持续集成
troytt closed issue troytt/diablo2-web#8 2026-09-14 13:28:11 +00:00
[Bug] tbl.ts 字符串表解码器偏差:线性假想索引未对齐暗黑2官方哈希桶(Hash Table)键值格式
troytt closed issue troytt/diablo2-web#13 2026-09-14 13:28:11 +00:00
[音频/多媒体] MPQ ADPCM + Huffman 音频解码缺失:支持 572 个音频成员并接入 Web Audio API
troytt closed issue troytt/diablo2-web#10 2026-09-14 13:28:11 +00:00
[架构重构] 场景系统架构割裂:抽离统一游戏世界领域层,消除 map-scene 沙盒与 act-scene 大地图割裂
troytt closed issue troytt/diablo2-web#6 2026-09-14 13:28:11 +00:00
[功能] NPC:把城镇 NPC 画出来并可对话(凯恩 / 杰海因 / 赫拉铁力 / 拉祖克 / 尼拉塞克…)
troytt closed issue troytt/diablo2-web#11 2026-09-14 13:28:11 +00:00
[代码质量/鲁棒性] 底层二进制解码过度依赖非空断言 !:缺失防御性越界校验与异常统一
troytt pushed to main at troytt/diablo2-web 2026-09-14 13:28:11 +00:00
cd87c2c5fa chore(git): 忽略 vitest 覆盖率报告输出目录
f52edd85f9 test(formats): 增加针对损坏资产的覆盖率和回归测试 (fixes #11)
53f52ba61e fix(formats): 替换原始缓冲区的未检查读取
a6ca337a10 feat(formats): 添加安全的二进制数据读取器
7d8629cd73 feat(scene): 衔接 NPC 数据至引擎层及交互面板验证 (fixes #6)
Compare 20 commits »
troytt pushed to main at troytt/diablo2-web 2026-09-14 11:23:17 +00:00
3cfa0cff9a fix(scripts): use npx tsx for publish:packs
troytt pushed to main at troytt/diablo2-web 2026-09-14 11:22:50 +00:00
c6f176f784 chore(scripts): configure commit author in publish-packs
troytt pushed to main at troytt/diablo2-web 2026-09-14 11:22:34 +00:00
1cdbe5de19 chore(scripts): update level count in publish-packs readme generator
troytt pushed to main at troytt/diablo2-web 2026-09-14 11:15:23 +00:00
2a0dd4ce25 feat(packer): bake all 101 generated levels into static packs with 3 variants each
troytt commented on issue troytt/diablo2-web#2 2026-09-14 10:34:07 +00:00
[功能] 纯随机/生成类地图无法生成:70 关随机迷宫 + 31 关野外(鲜血荒野等)全部缺失

Issue #2 解决方案与修复报告

提交 1cfef30 已合入 main 分支。npm run verify:generators 与 npm run typecheck 已全部通过:

  • 随机迷宫 (DrlgType 1): 70/70…
troytt closed issue troytt/diablo2-web#2 2026-09-14 10:33:53 +00:00
[功能] 纯随机/生成类地图无法生成:70 关随机迷宫 + 31 关野外(鲜血荒野等)全部缺失
troytt pushed to main at troytt/diablo2-web 2026-09-14 10:33:53 +00:00
1cfef30878 fix(generators): 修复 70 关随机迷宫与 31 关野外地图生成与连通性 (fixes #2)
troytt closed issue troytt/diablo2-web#5 2026-09-14 09:41:41 +00:00
[功能] 绘制对象层:火把/火盆、木桶/木箱/篮子/箱子、尸体、武器架、传送点…(数据已进包,只差解码与绘制)
troytt commented on issue troytt/diablo2-web#5 2026-09-14 09:41:38 +00:00
[功能] 绘制对象层:火把/火盆、木桶/木箱/篮子/箱子、尸体、武器架、传送点…(数据已进包,只差解码与绘制)

Issue #5 解决报告:对象层美术解码、图集打包与场景深度排序绘制完成

1. 根本原因排查

  1. 打包器仅解析未解码(scripts/pack-act-assets.ts): …