feat(map-gen/wilderness): 野外底土地表由单一瓦片平铺升级为基于 dwDt1Mask 的多 DT1 动态权重混合 #52
Loading…
Reference in New Issue
No description provided.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
背景与现状
在
src/game/wilderness.ts:481中,fillGround使用单一的groundTile将整张画布铺满完全相同的地砖。暗黑2原版逻辑(Oracle / Ground Truth)
0x40002底板逻辑标记。DRLGROOMTILE_GetTileCache依据关卡所配置的dwDt1Mask(如第一幕野外激活 5 个 DT1 库),按各瓦片的RarityFrameIndex权重进行随机抽取,将纯草地、碎石地、杂草地自然混合平铺。差异点与缺陷表现
解决建议与改造方案
fillGround中读取关卡dwDt1Mask对应的所有可用地面瓦片。RarityFrameIndex权重进行加权随机分布,实现地表的自然混合平铺。修复完成并验证通过
fix/issue-5212588ea9488f6336402084e872c517ad81c4c568dwDt1Mask与rarityFrameIndex权重的多 DT1 地表瓦片动态混合流水线;tests/wilderness-ground-blend.test.ts(17/17 项单测全绿),全量 647 项测试无回归,npx tsc --noEmit0 报错。