一种常见的错误是认为游戏中的AI越复杂,玩家对角色的感觉就越好。事实上,创造优秀的 AI 就是要将游戏的要求与正确的行为、以及产生这些行为的正确算法相匹配,在本书中有一系列令人眼花缭乱的技巧,正确的方法并不总是最直观的选择。无数难以实现的复杂人工智能的例子导致了糟糕的,甚至愚蠢的行为。同样,如果使用得当,一个非常简单的技巧也可以是完美的。
一、当简单的事情看起来很棒
《吃豆人》是最早的具有任何形式角色的游戏之一人工智能,其中幽灵 AI 有3种状态:一种是玩家收集点数时的正常状态;第二种状态,当玩家吃了电源后会开始复仇行为;最后一种状态是定时触发的,让幽灵后退一点。
在这三种状态中,每一个幽灵都有一个目标。它沿着直线移动,直到它到达一个交叉点,然后选择最接近目标方向的路线。它不会试图计划整个路线,甚至不会检查它的目标是否能到达,而只是朝着目标移动。当追逐玩家时,每个幽灵都有自己的简单代码片段来选择目标:红色幽灵总是瞄准玩家的位置;粉色幽灵的目标是玩家面前的四个正方形空间,即使它在墙的里面或另一边;浅蓝色幽灵则保持着玩家一样的位移;橙色幽灵如果离玩家远则直接锁定玩家,如果近则去转角。所有这些选敌路线都可以用一两行代码实现。
这和你能想象的一个移动角色的AI一样简单。再简单一点,幽灵要么是非常可预测的(如果他们总是指向家的话),要么是完全随机的。就其本身而言,幽灵策略是很容易预测的;他们的AI 并不构成挑战。但总的来说,每个幽灵的不同行为足以形成一个强大的对立力量,以至于它们的智能程度直到今天都得到了奉承的评价。例如