2019-06-20 16:30
扫码打开虎嗅APP
除了攻击,就是等待,横版游戏里的 NPC 总是直来直去没头脑。
想让 NPC 有自己的意志,通常有以下三种方式——
第一种,行为树(Behavior Tree)。
行为树是一大串如枝叶般扩散的指令,子结点包含了角色的执行前提和具体行为。当 NPC 需要行动时,就从根节点开始向下进行搜索,最终确定的子节点将是 NPC 做出的行为。
第二种,有限状态机(Finite-State Machine, FSM)。
有限状态机像一个更松散的行为树,由有限个状态和执行条件组成。当 NPC 遭遇一定的条件,就会从当前状态转换到对应的另一种状态。
第三种,人工智能,特别是强化学习(Reinforcement Learning,RL)。
强化学习是让 NPC 随意做出任何行为,如果做出的行为“正确”会收到奖励,反之受到惩罚,通过不断的反馈让 NPC 学习在不同情境下该选择的行为。
行为树逻辑明确,容易修改;有限状态机清晰灵活,但同时只能执行一个状态;强化学习能适应更复杂的游戏环境,还能互相协作。
目前大部分游戏会采用前两种方法构建 NPC,更聪明的强化学习型 NPC,还在尝试构建中。