refactor(map-gen/maze): 还原迷宫特殊房间/楼梯扫描放置规则,消除强加的全局 BFS 最大距离启发式 #46
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?
背景与现状
在 commit
78b5351中,src/game/maze.ts:1634-1658(placeSpecialGroup)为了解决迷宫楼梯兜底问题,引入了基于拓扑的bfsDistances启发式:next/down/quest)优先挑选全局 BFS 拓扑距离最远的房间;prev)优先挑选离起点最近的房间。暗黑2原版逻辑(Oracle / Ground Truth)
D2Common/DRLG/DrlgMaze.cpp的DRLGMAZE_ScanReplaceSpecialPreset):startCursor = nRand & 3)顺位替换或外延生长;差异点与缺陷表现
解决建议与改造方案
已在分支
fix/issue-46中真实修复并验证通过。Commit:
8bb99de验证项:
tests/m4.test.ts,tests/m5.test.ts,tests/world-graph.test.ts)npx tsc --noEmit)npm run build)