プログラマチーム「ああ、酔った勢いで・・・。」
中野 健児

ども。助っ人プログラマの中野です。
なんでAC3に関わることになったのか?確か居酒屋で小池とヒットチェック(物体の衝突)の話をしたのが、事の始まりです。
ちょうど次の作品に向けて作っていたものがあったんですが、それをAC3でほしい
と。なんとなく酔っていた勢いで「OK!まかせろ!」
気がついたら本当にAC3やる羽目になっていました。

マップデータを視界で切り取るようなルーチンも任されたのですが、少し表示領域を広げるだけでもトラブルが発生。とにかくハードをつつきまくって処理速度を保ちつつもさらに大きな視界をとらえるということに2ヶ月はかけました。
それとポリゴンとのヒットチェック。
しかしこうして書いてみると地味な部分をやってますね。
ひたすら高速化を重ねつつ、「ああ、あの酔った勢いの一言が…」とは思いませんでしたけどね。大変でした。

AC3開発末期はあまりのボリュームでどこまで入れられるか!の戦いだったんです。当然バグを取ったりの作業をしなければならないのに、「これだけ入れてくれ!」って。熱意が凄いんですよ。入れましたとも睡眠時間を削って。燃えました。
ほんと少しだけですがAC3に関われたことを幸せに思います。
私はもうすでに別のプロジェクトで突っ走ってます。
また皆さんの手元に良い作品が届けられるようがんばります。それではまた。

石井 雄大

こんにちは。プログラマーの石井です。
今回は担当したノンプレイヤーのアルゴリズムの部分について、ちょっとお話しを。

ノンプレイヤーというのは、僚機、敵機、地上物など、プレイヤー以外に登場するもののことで、それらの思考ルーチンや行動ルーチンを作りました。
A地点からB地点まで、機体はどんな動きをしてそこへ向かうのか、というのはもちろん、新米パイロットはどうロスするか、近未来機の挙動ならどうするか。それらの機体を追いかける時、エース級のパイロットならどのように追うか、どういうタイミングでミサイルを撃つか。様々な条件を考慮して作っています。

こういった「作る」ということは、難しくて、苦労話もたくさんあるのですが、楽しいことや面白いこともたくさんあります。
例えば、機体の行動チェック。試作したアルゴリズムでノンプレイヤー同士による“30機でのサバイバル戦”とか“5対5のチーム戦”などをさせて、今回は機体の行動をチェックしました。これは作った人間が見るとなかなか面白いんです。「あ、あいつ思ったより賢い!」とか「うぁ、こいつだめじゃん!」とかね。

チェックも終わり、実際のミッションを作って、さぁ出撃だ!、なんて始めると、最初の面でいきなりエリックがレナとフィーを撃ち落としたりターゲットがエリア外に逃げちゃったり(←ホントは一番賢い行動!?)、僚友が全部のターゲット倒してミッションクリアしちゃったり・・・ほんと、制作途中での機体達は、言うこと聞かないんです。そしてまた、アルゴリズムの見直し&チェックのやりなおし・・・

もちろん製品でのノンプレイヤーの動きは万全です。
皆さん、楽しんで空を飛んで撃ち落としてください。