troytt
|
0fa6c6afb0
|
加入烘焙图集包(samples/d2-packs,66 MB / 275 个文件)
62 张地图的索引色 PNG 图集页 + scene.json(画家序绘制列表、碰撞 RLE、出生点、对象
元数据)+ index.json(含各 act 调色板)。这是原版美术的解码产物,仓库已改为私有后入库。
有了它,在没有原版 MPQ 的机器上也能跑资源包模式(/acts.html、/diablo2/);
?live=1 与 pack:data 仍需要自备 samples/d2/ 下的原版数据。
没走 Release 附件的原因:本实例的上传接口对 3 MB 与 59.5 MB 都返回 HTTP 500
(大概率是 [attachment] MAX_SIZE 或存储路径限制),所以直接进 Git。
若之后把附件上限调大,可以把这份数据从历史里挪到 Release。
|
2026-09-13 18:29:28 +08:00 |
troytt
|
7a24a3f806
|
加入自产夹具美术(samples/fixtures,492 KB)
这些文件全部由仓库内脚本生成,无第三方版权问题:
node scripts/make-fixtures.ts samples/fixtures # DC6/调色板/文本表/期望网格
node scripts/make-map-fixtures.ts samples/fixtures # DT1/DS1/夹具 MPQ
入库后 clone 即可跑夹具相关的校验与页面(verify:all、map.html?data=samples/fixtures),
不必先拿到原版 MPQ。
.gitignore 相应调整:用 `samples/*` 而不是 `samples/`(git 不允许反选被整体排除的目录),
并单独放行 samples/fixtures/*.mpq(那个 MPQ 是我们自己生成的)。原版 MPQ、烘焙图集包
与第三方参考源码仍然不入库。
|
2026-09-13 18:27:16 +08:00 |
troytt
|
897b3735d6
|
初始提交:从零实现的暗黑破坏神 II WebGL2 引擎(TypeScript + Vite,零运行时依赖)
内容概览
- 归档层:MPQ v1 容器(hash/block 表、Storm 加密、分扇区编解码),含 PKWARE
implode/explode 移植;支持 HTTP Range 只读取所需字节。
- 格式层:dc6 / ds1 / dt1 / pal / pl2 / cel / pcx / tbl / sprite,以及 dcc / cof / bitstream。
- 地图层:等距投影场景构建(地板/墙/屋顶分层、逐格瓦片变体加权随机、sub-tile 碰撞),
资源包(索引色 PNG 图集 + scene.json)离线烘焙与逐像素差分校验。
- 角色层:DCC + COF 合成(8 方向),法师行走/站立替换占位棋子。
- 页面:acts.html 全屏画布 + 三级选择器(章节 / 场景 / 细分场景),资源包优先、
可回退到直读归档(?live=1)。
- 验证脚本:verify:all / implode / acts / d2 / packs / dcc / deploy / listfile /
object-lookup / alignment / tiles / generators 等,均带断言与退出码。
数据与许可
- 游戏数据(samples/)与第三方参考源码(reference/)不入库:体积大且无再分发许可,
见 THIRD_PARTY_NOTICES.md。
- 生成关卡(70 迷宫 + 31 野外)尚未烘焙,现状与修复清单见 HANDOVER.md §4f。
|
2026-09-13 18:10:28 +08:00 |