我是一名 C# 老手,以前从未玩过游戏。为了拓宽我的视野,我开始自学基本的 XNA 东西,试图制作一个简单的 2D 迷宫类型游戏,其中涉及一些典型的敌人射击。我的问题涉及多个敌人的寻路。
考虑一个典型的例子:吃豆子。
当你在吃豆人游戏中开始一轮时,幽灵会从盒子里出来,走上不同的看似随机的路径,但有一个例外——它们的权重是寻找玩家的当前位置。我以为我可以在玩家每次移动时重新计算每个敌人的路径以达到类似的效果,但我不希望敌人过多地重叠路径,所以我需要随机扭曲每个计算出的路径以赋予一定程度的独特性敌人。对此有标准方法吗?
我想我可以把它看作每个敌人本身就是一个障碍,因此没有敌人的路径可能涉及与另一个敌人相撞的路线。在没有新路径可以让玩家自由奔跑的情况下,我会让敌人继续其现有路径,直到找到可行路径或碰撞改变当前路径。这可能就足够了,但我是否过于简化它?