我想玩吃豆人游戏。吃豆人幽灵的移动存在问题。怎么能动鬼。我使用随机方法,但它向上或向下或向左或向右移动。我想要吃豆人运动背后的实际理论
4 回答
此页面对 Pac-Man 进行了极其详细的分析,并提供了有关每个幽灵的 AI 的信息。
有人阅读了 Pacman Dossier 并在http://gameinternals.com/post/2072558330/understanding-pac-man-ghost-behavior上写了一个更简短的专门针对幽灵行为的处理
我已经在 Android 中实现了 Pacman。为了方便我的工作,我从使用随机算法开始。即,在幽灵可以改变其方向的每一种可能性中,都会自动选择一个可用的方向。这实施起来并不难。但是有了这个算法,吃豆人的生活就轻松了,因为鬼并不是真的在猎杀吃豆人。
所以在第二种方法中,我阅读了这个来源:pacmandossier
在那里你可以看到每个鬼都有不同的行为。我并没有真正实现那里行为的精确副本,而是使用了近似值。在每一个可能的方向变化上:我通过使用 Pacman 的位置和幽灵可能的方向之间的最小曼哈顿距离来计算“最佳方向”。然后我对不同鬼魂的不同“攻击性”进行建模,我使用每个鬼魂选择“最佳方向”而不是随机方向的概率。
这并不是真正的原始算法,但我认为这是一个很好的近似值,因为您可以在玩游戏时轻松看到幽灵或多或少地试图猎杀吃豆人。
当然,您可以扩展此算法,例如,如果幽灵被猎杀而不是追逐吃豆人,则可以使用不同的可能性和速度。
Pacman 中的幽灵移动不仅仅是随机的。它是人工智能,其中包含一些图论。如果你想在你的游戏中(有点)逼真的敌人,你必须学习一点关于所有这些主题的知识。