在游戏Unblock Me中生成随机板的算法

时间:2012-09-02 13:04:30

标签: algorithm

这款名为Unblock Me的iphone热门游戏。目标是移除红色块前面的所有障碍物,以便有一条通往出口的清晰路径:

enter image description here

为这款游戏制作随机棋盘会有什么明智之举? 我正在思考这些问题:

  1. 将红色块放在出口处。
  2. 在红色区块周围随机放置M个区块。
  3. 使N随机移动,直到红色块被阻挡。
  4. 每个级别增加M或N.
  5. 请注意,移动设备的CPU功率和RAM有限,因此效率非常重要。

1 个答案:

答案 0 :(得分:2)

我玩了很多游戏,所以这里有一些想法:

  • 简单地使 N 随机移动并不一定会使关卡变得更难。您可能最终处于可以在 n 移动中解决的状态,其中 n 明显小于 N
  • 级别可以在台式机上生成,然后简单地包含在移动游戏中。这允许更详尽的搜索(很可能是基于树的并且具有回溯)以确保该级别需要至少一定数量的移动来解决。水平应该越难,当然应该需要的动作越多。
  • 您可以在算法中添加更多知识:如果您希望红色片段传递,则长度为3的垂直片段必须位于底部位置。这限制了水平的解决方式。这可能会使关卡更加困难,特别是当有多个垂直棋子时。