実施には該当のプラグインが必要となります。
初めに
ツクールMZの敵の行動パターンははっきりいって貧弱です。
- ターンごとに行動回数を変えられない。
- また1回目の行動で攻撃力アップ、2回目で攻撃といった制御もできない。
- 回復魔法は対象が完全ランダム。HPの減った相手を狙ってくれない。
- 蘇生魔法は死亡者がいなくとも空振りする。
条件にステートもあるが、対象は自分のみ。
つまり仲間が戦闘不能の時という条件は指定できない。
- また、ステートの条件は「かかっている時」限定である。
「自分がステートでない時に使用」というように重ねがけを避けるのが困難。
- スイッチが条件にあるがONの場合だけ。OFFがなく融通が利かない。
- 変数が条件にない。
- 生存数が条件にない。
- 行動後のスイッチ操作がない。2000にはあったので、なぜか劣化。
- そもそも、パーティLV以外の味方側の情報を一切参照できない。
……などなど、多すぎて書ききれません。
※なお、列挙した問題の一部は敵行動ルーチンの改善プラグインによっても解決できます。簡単なので超オススメ!
イベントコマンドで敵を制御することによって、そういった諸々の問題を一挙に解決します。
また、その際には当然ながら全てのイベントコマンドが使い放題です。文章の表示もピクチャーもアニメーションもスクリプトも自由自在に挟めます。
若干手間がかかることもあって、主にボス敵の行動を想定しています。……が、もちろん雑魚でも使えます。
手間がかかるといっても、敵の行動パターン画面で複雑な制御を行うよりは遥かに楽です。
設定方法
まず、戦闘中にバトルイベント(コモンイベント)を呼び出す方法からです。
各戦闘システム共通の方法
デフォルトのターン制でも、当サイトにあるCTB(およびCTTB)でも使える方法です。また、MZのタイムプログレスバトルでも有効です。
- コモンイベントを呼び出すスキルを作成します。
- メモ欄に<NoStartAction>と記述すると、スキルの開始演出を省略できます。
- 範囲はなしに設定してください。でないと余計なメッセージが表示されます。
- 敵の行動パターンにこのスキルを設定してください。
敵がこのスキルを実行したタイミングでコモンイベントが呼び出されます。
そのままコモンイベントに処理を記述してもよいですし、スイッチを起動して敵グループのバトルイベントを呼び出すのも自由です。例えば、ボスの行動制御などはその敵グループ内に書いたほうが、管理しやすいかもしれません。
※敵グループのバトルイベントを使う場合、スパンはモーメントにしてください。
どこかでスイッチをオフにしないとオンのままなので注意!
なお、敵ごとに呼び出し用のスキルやコモンイベントを必ずしも増やす必要はありません。
- コモンイベント内で、敵IDを使って分岐させる。
- スイッチで敵グループを呼び出し、別々の処理を記述する。
といった方法でも対応できます。やりやすい方法でどうぞ。
以下はコモンイベント内で分岐させた例です。
条件分岐:スクリプト:a._enemyId == 2
というように、敵IDを取得して分岐させています。
スクリプトを使うので、ちょっと戸惑うかもしれませんが、コピペで数字だけ変えればOKです。
また『=』ではなく『==』であることに注意です。
aというのはスキルの計算式(例:a.atk * 4 - b.def * 2)でも使っているものと全く同じです。スキルの使用者(MZでは行動主体という)の情報が色々と詰まっています。
※本来、バトルイベント上では参照できませんが、このプラグインの機能で無理やり参照できるようにしています。プラグインパラメータの『aで行動主体を参照』というのがそれです。
※『a._enemyId』の他にも『a.enemyId()』でも同じ値を参照できます。ただし『a.enemyId()』はaがアクターだとエラーになるので注意です。
CTB専用
当サイトにあるCTB用プラグインを導入している場合、コモンイベントを使用しない方法も可能です。
条件を毎ターン(スパン=ターン、ターン=0+1*X)にしたバトルイベントのページを作成します。
その先頭で敵IDなどを条件にして、目当ての行動主体の時だけ処理を行うようにします。
CTBではターン=1行動なので、こういう使い方もできるというわけですね。
条件分岐:スクリプト:a._enemyId != 8
にある『!=』というのは『==』の反対であり『≠』と同じ意味です。JavaScriptにおいて、『!』は否定を意味します。
※ここはアクターも通るため、a.enemyId()だとエラーになるので注意です。
後は上と同じです。
既に準備段階で結構長くなってしまいましたが、基本はコピペするだけなので大して時間はかかりません。
それでは実際に、次の記事から敵の行動制御を記述していきましょう。
>敵の行動を自在に制御する A実践編
>RPGツクールMZ&MV目次に戻る