您可能希望在Google中查找路径规划算法,查看哪些算法符合您的要求。
想一想,潜在的场路径规划算法出现在我脑海。它可以让你设定一个目标,同时避开障碍物(在这种情况下,玩家会成为障碍)。
你可以读到这里:http://www.cs.mcgill.ca/~hsafad/robotics/,并在互联网上搜索以获取更多信息。
因此,基本上,你有一张地图,地图中的每个点都有一个载体,载体应导致你的目标。靠近障碍物的向量远离它。
现在,这是伟大的,当你有一个静态障碍物,因为你只计算力场,在每个点的矢量,有一次,你不需要继续做下去。但是对于你的情况,我想玩家可以移动,如果玩家移动,那么你必须再次计算矢量,所以在你的情况下,你必须计算地图每个点的矢量,每次用户移动时,所以这不是一个理想的解决方案,但它可能会让你开始。
这种算法也有局部极小的问题:
但我认为这在网页中我前通过解决(他们有一个例子实现)。
如果不这样做,你可能想搜索在谷歌“的路径规划算法”,甚至“路径与移动的障碍物规划”,并把玩家的一个障碍。
编辑
你可以尝试轻松地实现这样的:
在这些图像中可以看到AI绿色,玩家在红色和黄色的目标。每个广场的数字是到目标的距离。
在你看到的是,距离1开始的目标,一个单位每平方米的,就像这第一张图像。
这第二图像是一样的,但广场的价值增长周围的玩家都高,高出多少您决定,但我做到了这样,如果+2与其相邻的球员,+1,如果它进一步。
现在机器人只需要选择数字较小的方格。所选路径以灰色突出显示。
这最后的影像是值相加的结果。
在下一个例子中,你可以看到AI实际上向左移动一点,因为它离玩家太近了。
你可以发布你的代码吗? –
我还没有开始为这个问题写任何东西,因为我不知道从哪里开始。我可以告诉你我的AI是如何设置的。基本上,我提供了一个目标变换,它会在那里。这里的所有都是它的。我的问题在于选择转换点的逻辑,AI要转到远离玩家的位置,所以看起来他们正在逃跑,但要到一个合理的地方,如出口或电话寻求帮助(用我需要为目标选择的变换标记出来)。 –