2D格斗游戏AI,训练模仿玩家's的游戏风格

2D fighting game AI, trained to mimic the player's playstyle?

本文关键字:游戏 风格 玩家 AI 格斗 2D      更新时间:2023-09-26

我不希望人工智能能够击败玩家,我希望人工智能分析玩家的游戏风格,并模仿它。

我目前的计划是跟踪球员的每一个动作,并根据情况将其分组。因此,如果我经常在远距离发射火球,那么"远距离"行动组中的大部分都是火球;当人工智能处于远程时,它会观察"远程"组中的动作,然后它最终会做大部分火球。当我在近距离时,它会有不同的动作。

但要做到这一点,需要采取太多的行动。根据我的状态、敌人的状态、我们的距离、谁被困在角落、我们的hp差异等,每种情况都会是不同的一组行动。他们有100个。

是否有其他方法?还是我走对了路?

它们不是所有不同的组,而是嵌套的组。

distance Far{
    when winning{
          attack{
             moves:
             frequency:
          }
          defense{
             moves:
             frequency:
          }
    }
    when even{
          ///
    }
    when losing{
          ///
    }
}

通过明智地嵌套它们,你可以加快速度,并使跟踪变得相对容易。在上面的例子中,如果距离很远,请检查是赢、输还是大致打平,然后比较攻击频率和防御频率。根据攻击和防御频率选择攻击或防御组。从移动组中选择特定的按频率移动。