最近はさまざまな業界でAI活用が進んでいますが、特にゲーム業界はその応用範囲が広がっています。今や、人間のように振る舞うAIプレイヤーも登場するほどです。まずは「ストリートファイター」シリーズなどをはじめとする対戦型ゲームについて考えてみたいと思います。
自分が操作しているキャラクターと、対戦相手が操作しているキャラクターが戦い合う格闘ゲームの場合、それぞれのプレイヤーが方向レバーを動かして、画面内にいる自分のキャラを移動させます。「ここだ!」というタイミングで攻撃する場合は、パンチやキックなど対応するボタンを押します。
格闘ゲームには、方向レバーを動かして技コマンドを入力する独特の操作があります。「↓↘ →+パンチ」で波動拳のような必殺技が、「→↓↘ +パンチ」で昇龍拳のような対空必殺技が出る――というのは、ほとんどの格闘ゲームに共通しています。また、相手キャラクターの動き以外にも、体力ゲージ、パワーゲージなどを見ながら都度状況を判断する必要があります。
格闘ゲームでは、人間だけでなくコンピュータとも戦えますが、これは人間の操作系とはかなり異なった仕組みで動作しています(便宜上、敵キャラを操作する主体をAIプレイヤーと表現)。各種ゲージの状態を把握し、人間側が操作しているキャラの動きに応じて行動する点は、人間対人間の戦いと同じです。
しかし、AIプレイヤーは方向レバーやボタンを操作してキャラを動かしているわけではありません。プログラムで直接キャラクターを動かしているので、やろうと思えば人間が絶対に勝てないAIプレイヤーを構築することもできるでしょう。
ただ、それではゲームとして成り立たないので、一定の確率で隙のある行動を挿入するなどしてバランスをとります。なので、AIプレイヤーが操作する敵キャラは、攻略方法さえ分かってしまえば簡単に倒すことができる場合が多いです。
格闘ゲームの対人戦が面白いのは、相手をだますようなフェイントをしたり、相手のミスを誘発するような行動を仕掛けたりする駆け引きがあるからです。それでは、そんな人間のプレイヤーに近いAIプレイヤーを作り出すにはどうしたらよいのでしょうか。
Copyright © ITmedia, Inc. All Rights Reserved.
Special
PR