Writing a soluble-grid generator for Mines
a day ago
- 作者的扫雷实现Mines确保每个网格无需猜测即可解谜,它采用一个模拟人类推理的解算器。
- 生成器不依赖可解网格的数学特征,因为这种规则会过度限制布局并降低游戏多样性。
- 相反,解算器与一个‘扰动器’协同工作:当解算器卡住时,扰动器会对地雷位置进行小幅调整,从而无需从头开始就能继续推进。
- 扰动并非绝对安全——它们可能引入新的阻塞,尤其在游戏后期,因此需要通过重新运行解算器来复核网格。
- 如果扰动后解算器仍失败,该过程会迭代进行更多修改;若情况恶化,则完全重新生成网格。
- 这种启发式方法效果显著,能支撑比标准Windows扫雷高两倍以上的地雷密度,这让作者感到惊讶。