面白い敵を作ろうへぷたなすくろーるRPGツクールのブログです。s/ash]プロフィールHN:奈々(なな)RPGツクールVXAceを中心に製作を行っています。できる範囲で他のツクーラーさんのお手伝いができたらなと思っています。面白い敵を作ろうこのコーナーでは、主に初心者さんに向けた戦闘関連のテクニックを紹介していきます。RPGツクールVXAceで説明していきますが、多くはVXや他のツクールでも可能です。合言葉は「いやならやめてもいいんじゃぞ。」3回に別けた講座もいよいよ最後、エネミーの戦闘行動について解説します。それでも、デフォルトのAIはマヌケだと思っていませんか?どうしても敵の行動条件が使いにくいと困っていませんか?そんな人生にも似たお悩みを解決していきましょう!面白い人は空気が読める、今回は「簡単に状況判断してくれるAI」です。つづきはこちら、からどうぞ。千里の道もツールからデータベースよりエネミータブ、戦闘行動を開いて下さい。各項目にマウスカーソルを置くと説明文がポップします。この条件、魅力的な割に些か残念な仕様が2つあります。1つはHP、MP、ステートは「自分」のものしか参照できないこと。1つは、諸条件は択一で組み合わせることができないこと。おかげで「味方が瀕死だからHPを回復しよう」とか「毒と麻痺が掛かってるから万能薬を使おう」とかRPGのセオリー行動をAIに取らすことができません。おっとところで最後の行動条件はスイッチです。その名の通り特定のスイッチがONの場合に行動します。......勘の良い人は気が付きましたね!そうこれがAIの限界突破の「鍵」となります。スイッチと来たらイベント、これテストに出ますよ。条件のアウトソージングまず最初に、バトルイベントを作成しましょう。バトルイベントについてはこちらも参照して下さい。条件は毎ターン開始時(0+1*X)です。ターン制以外のスクリプトを導入している場合は説明を良く読んで、誰かの行動前に毎回起動するようにしましょう。それから、忘れずにスパンをバトルからターンに変更すること。内容は条件分岐を使って敵の状態を確認し、対応させるスイッチをONに。(2ターン目以降のために、最初に全てOFFにするのを忘れないように)そのスイッチを条件として指定することで行動を制御してやろうというのが大まかな仕組みになります。条件分岐だけだと扱える情報が少ないですが変数の操作でゲームデータを代入する、その変数を条件分岐という手順を踏めばHPやMP、その他の情報も対象にできます。HPでHPのパーセントなんかも割り出せますしスクリプトを利用すればやりたい放題ですよ。具体的な作例は次回に紹介します。パターンを更に増やしたいこれまで紹介したパターンの基本構造は「条件=上の階層を作って行動を上書きする」というもの。優先度の関係上、建て増しに制限があることは前回述べました。ボスなどの一部の敵に限って言えば、余裕がない感は否めません。そこでバトルイベントによる「変身」を使います。簡単かつ自然に演出できるのは、やはりHPでしょうね。条件:HPが何%以下、スパン:バトルでバトルイベントを作り対象のエネミーを別のエネミーに変身させます。演出などを挟んで、文字通り変身させても良いと思います。同じグラフィックの行動だけ違うエネミーに変身させればあたかも追い詰められて行動が変化したように見えます。簡単ながら有効な手段ですが、やはりここぞという敵に使いましょう。RPGツクールのAIとは?どうでしょう、ここまで色々と紹介してきましたが特別なスクリプトを入れないでもかなりのことが出来るでしょう。それを感じてもらうことが今回の講座の目的です。確かに、デフォルトのAIはバカでアホでマヌケかもしれません。いうのも敵のAIなんて用意されていないからです。用意された行動リストの中から消去法と確率で動くだけ。~にも考えずに行動を突っ込んだところでやっぱりな~にも考えずにランダムで行動するだけです。多くの人が勘違いしているようですがAIとは「どういう状況でどう行動するか」という論理のことでAIなる特殊なプログラムが存在するわけではありません。データベースで戦闘行動が条件付きで設定できるということはAIも自分でツクれる、いやツクれ!ということなんですね。面白い敵AIを作るには、とにかく楽しんで作ること。