我一直在开发一个叫做 Phosphor Command 的即时战略游戏,它有一个基础建造系统。其中一个系统我花了最多时间的是敌方 AI。 我希望敌方能像实际上是在反应你部队的行为一样,而不是仅仅有单位知道你在哪里或者不知道。 这个 AI 有三个警戒状态: 平静、警觉和警报。 平静 是正常状态。 巡逻队伍在他们的指定区域移动,驻防部队会围绕他们保护的目标。 警觉 意味着敌方有证据表明正在发生什么事。 护卫部队会围绕他们负责保护的东西紧张起来,其他单位可以过来调查。 警报 是当情况已经升级到最高点时。 敌方小组会开始聚集在你的最后一次知名位置,高价值目标会重新部署到更深的掩护中,而不是简单地等待你的情报说他们在哪里。 我希望警戒系统能根据你如何进行行动来反应。如果你迅速接触并处理它,你可能永远不会引发整个警报。如果你在接触太久,情况会升级。 警戒级别也可以降低。如果你打破接触并远离战斗足够长的时间,敌方会逐渐回归到更平静的状态。 因此,如果一次埋伏失败,你不一定会被迫在整个地图上战斗。你可以打破接触,消失,等待情况冷却下来。 敌方的反应还取决于行动的威胁级别。在低威胁级别时,敌方更愿意穿过开阔地。 在更高的威胁级别时,他们更有可能在掩护之间移动并更谨慎地行事。 有趣的是,这意味着低威胁敌方实际上可以更激进和更不谨慎,而高威胁敌方则更谨慎和更小心。 AI 也不会仅仅坐在目标上。 巡逻队伍被分配到操作区域,而不是固定的路线。 他们的路线是在行动开始时生成的,因此同一张地图可以有不同的巡逻队伍每次部署。 掩护也是决策的一部分。当敌方决定推进时,它会对该运动保持几秒钟,而不是不断改变心意基于每次小小的战场变化。 这使得运动看起来更像实际决策,而不是单位之间的跳跃。 敌方的行为也会根据行动而变化。 例如,在消灭行动中,一旦他们剩下两个小队,他们就会停止像防御力量一样行事,并开始积极地追捕你。 我试图让敌方感觉不像一个等待玩家互动的单位集合,而是像一个不断试图理解你正在做什么并对其反应的力量。 我附上了一些视频,展示了不同警戒状态和一些 AI 行为的例子,但是当然,这些很难完全捕捉。 我关闭了隐藏的敌人,以便更好地看到。