Java 游戏的随机动作 AI 控制器

Random Action AI controller for Java game

我正在尝试为我的敌舰实现一个基本的游戏 AI,它执行随机动作(即转弯和射击,然后向前移动,然后可能转身射击等)。我做了一个简单的旋转和射击的基本 AI。

这是 RotateAndShoot AI:

public class RotateAndShoot implements Controller {
Action action = new Action();

@Override
public Action action() {
    action.shoot = true;
    action.thrust = 1; //1=on 0=off
    action.turn = -1; //-1 = left 0 = no turn 1 = right
    return action;
}
}

这里是控制器class如果这有助于解释:

public interface Controller {
public Action action();
}

这些使用了一个名为 Action 的 class,它只提供一些分配给动作的变量(例如 public int thrust,如果打开状态,它会使船向前移动)。我怎样才能实现一种只做一堆随机动作的 AI 形式?

您可以使用 Math.random() 或随机。

这是随机的解决方案:

@Override
public Action action() {
    Random rand = new Random();
    action.shoot = rand.nextBoolean();
    action.thrust = rand.nextInt(2);
    action.turn = rand.nextInt(3) - 1;
    return action;
}