増援ユニットの設定StepA1StepA2StepA3StepA4StepA5StepA6StepA7StepA8StepA9StepA10StepA11StepA12StepA13StepA14StepA15StepA16StepA17StepA18StepA19StepA20StepA21StepA22StepA23StepA24StepA25StepA26StepA27StepA28StepA29StepA30StepA31StepA32StepA33StepA34StepA35StepA36StepA37人数の増減StepB1StepB2StepB3StepB3StepB4StepB5StepB6StepB7StepB8StepB9StepB10StepB11StepB12StepB13おしまいFE定番の増援イベントの作り方について説明します。序章に毎ターン増援を出したいと思います。増援ユニットの設定まずは、増援するユニットを作ります。編集StepA1「ユニット配置」ボタンをクリックしてください。編集StepA2新規に増援ユニット群を定義したいので、「新規領域の確保」ボタンをクリックしてください。編集StepA3確保する人数を設定します。3人ぐらい確保します。編集StepA4新規枠が確保されました。NEWとかかれている部分です。新規枠には、とりあえずエイリークが設定されているので、そのキャラをどけて増援で出したいキャラを設定します。編集StepA5まずは、一番上のキャラクターを設定します。編集StepA6とりあえず、こんな感じにしてみました。座標は、左上にしました。X=2,Y=3編集StepA7「書き込む」ボタンで内容を確定します。編集StepA82人目を設定します。座標は、さっきの奴の隣です。設定したら、「書き込む」ボタンで結果を確定します。編集StepA93人目を設定します。同様に、「書き込む」ボタンで結果を確定します。編集StepA10設定が終わったら、彼らが配置されている先頭アドレスをメモってください。今回は、0x01000000が先頭アドレスです。先頭アドレスをメモする必要があるのか?それは、彼らを表示するイベントはこれから作るため、彼らのデータはどこへも紐付けされていないためです。そのため、ユニット配置ウィンドウを閉じたり、別の章に切り替えたりすると、データが失われるためです。データが失われても、領域を占有していることにはかわりなく、無駄な領域が生まれてしまいます。編集StepA11メインの簡易メニューに移動します。次は、先ほど作成したユニットを出現させるイベントを作ります。編集StepA12イベントを作るには、「イベント」と書かれている部分をクリックします。編集StepA13イベント設定画面に来ました。今回は、ターンイベントで彼らを出現させます。編集StepA14イベントの種類が、ターン条件になっているか確認してください。ディフォルトはターン条件なので、たいていの場合、何もしなくても大丈夫です。編集StepA15次に、ターン条件に新規枠を確保するため、「リストの拡張」ボタンをクリックします。編集StepA16何やら画面が表示されますが、とりあえずそのまま「移動処理を実行する」ボタンをクリックします。編集StepA17ターン条件イベントが確保されました。多すぎましたね・・・まあ、1つ12バイトなので、誤差みたいなものです。やる場合は、先ほど領域を確保するときに、確保するサイズをちゃんと指定してください。小さすぎると、もっと増やしたくなった時に、再度追加で確保すると、断片化によるロスが発生しますので、どちらがいいかは、難しいところです。編集StepA18領域を確保はできたので、新規に確保したターン条件に増援のイベントを作ります。新規に増設された5番目のイベントをクリックしてください。編集StepA19今回は以下のように設定しました。イベントは後で設定するので0のままにします。主人公ターンに実行つまり、2-3ターン目の主人公ターンに増援を出します。合計2回の増援が行われます。主人公ターンとは、プレイヤーが操作できるターンのことです。主人公ターンに増援するのと、敵ターンに増援するのでは、難易度が大幅に変わります。主人公ターンに増援されたキャラは、出てきたターンは動きません。そのため、先制攻撃で倒すことができます。敵ターンに増援すると、出てきたターンに即行動するので、プレイヤーからすると完全な不意打ちになります。背後から増援され、敵ターンで先行して動かれたりなんてすると、悪夢ですね。前半のステージは、プレイヤーターンに増援して、後半は敵ターンにするとかの使い分けを考える必要があります。編集StepA20とりあえず、「書き込み」ボタンを押して結果を確定します。この後に、イベントの確保をしたときにも書き込みは行われるので、ここで書き込みをするかどうかは、実はどうでもいいです。やったところで損は何もありません。編集StepA21次に、イベントの設定をします。「新規イベント」ボタンをクリックしてください。編集StepA22「新規に領域を割り当てますか?」と聞かれるので、「はい」と答えます。編集StepA23領域を確保しました。編集StepA24新規にイベント領域が確保されました。この領域にイベントを作っていきます。編集StepA25イベントと書かれている部分をクリックすると、イベント命令を設定する画面に行けます。編集StepA26イベント命令を設定する画面に来ました。現在は、終端命令のリターンしかない、まったくの白紙の状態です。ここに増援を実行するイベントを作ります。編集StepA27画面の余白を、ダブルクリックしてください。コントロールパネルが出現します。編集StepA28「命令変更」ボタンをクリックしてください。編集StepA29イベントでどんな命令を実行するか選ぶことができます。ここには、先人たちの解析で現在判明しているすべての命令が登録されています。命令はFEシリーズごとにことなります。ASMを使えれば新規に命令プログラムすることもできます。編集StepA30今回は、ユニットを出したいので、カテゴリの「ユニット設置」を選択します。カメラ移動有り」を選択してください。選択後に、「命令を選択する」ボタンを押してください。命令をダブルクリックしても、大丈夫です。編集StepA32先ほど選択した命令が選択されました。命令の引数を設定します。編集StepA33最初の方でユニットを増設したアドレスをメモりましたよね。その内容をここで書きます。01000000となります。+0x08000000しないといけません。0x09000000が正しい値です。そんな計算をいちいちするのは面倒です。面倒ということはミスが発生するのでよくないです。そのため、FEBuilderは自動的に変換してくれます。ユーザは、何も考えずに、値を書くだけで自動的にすべて解決します。+0x08000000した正しい値を書いていただいてもまったく問題ありません。編集StepA34ユニット情報の値を書いたら、変更か新規挿入ボタンを押します。現在イベントはないので、どちらでも結果は同じです。編集StepA35記載した内容がリストに表示されています。編集StepA36最後に、「書き込み」ボタンを押して内容を確定してください。これで、データの紐付ができました。先ほどメモした、ユニット配置のアドレスはもう消しても大丈夫です。編集StepA37F5キーを押して、エミュレータを起動して、動作を確認します。2ターンから3ターン目に増援が現れます。増援を確認したら、エミュレータは終了してください。人数の増減いきなり3人増援はちょっとやりすぎたかもしれません。増援を減らすべきなのかも・・・・ということで、ユニット数の増減をやってみます。編集StepB1メイン画面である簡易メニュー画面に戻ってください。FEBuilderGBAは、PAUSE/BREAKキーを押すと、どの画面からでも、メイン画面に戻れて便利です。簡易メニュー画面では、増援で出てくる敵キャラがちゃんとマップに表示されています。彼らの数を変えたいので、増援ユニットをダブルクリックしてください。編集StepB2増援キャラの設定に飛びます。作ったときは、NEWでしたが、彼らはターンで増援されるという設定になりましたので、ターン条件で増援されるキャラとして表示されます。編集StepB3数を減らしましょう。1人だけにしてみます。真ん中のキャラを選択してください。いうのは、終端という意味です。これ以降にはデータはありませんという意味になります。編集StepB4「書き込み」ボタンで書き込んで結果を確定させます。これは終端マークが入っているキャラという意味です。一度ユニット設定を移動してしまうと、終端以降のキャラの表示は消えます。編集StepB6F5キーでエミュレータを起動して動作を確認します。終端マークを2人目に入れたため、今回は、1人しか増援されません。編集StepB71人だけだと味気ない場合は、元に戻すこともできます。先ほどのユニット情報を再度見てみると、1人になっています。これは、ディフォルトは終端まで読み込むからです。2人目に終端が入っているので、1人だけの読込になっています。編集StepB8元に戻すには、「読込数」で、元の人数である「3」を入力し、「再取得」ボタンを押します。すると、ちゃんと3人表示されます。以外にすれば復元できます。編集StepB9では、増やす場合、読込数をもっと大きい値にすればいいのか?というと、そんなことはダメです。試しに、読込数を10と、当初の3よりもっと大きい値にすると、このようになりました。なにやら、めちゃくちゃな情報が表示されました。これは、終端を突き破って、別の情報を強引にユニット情報として解釈したためです。これらを書き換えると、他の情報を壊してしまうため、とても危険です。ゲームのフリーズにつながります。編集StepB10何かまずいことが起きた場合は、もう一度、リストを選択しなおすと、自動的に再取得が行われるため、安全になります。「書き込む」ボタンを押さない限り、大丈夫です。間違って「書き込む」ボタンを押したとしても、Undo機能で元に戻せますし、そもそも、メインメニューでROMに書き込むと、命じない限り、すべての処理はメモリ上で行われるので、ROMファイルを傷つけることはありません。ROMにも書き込んでしまったという場合でも、FEBuilderはROMに書き込む前にバックアップを取っています。いって、バックアップもすべて消してしまったという場合は、さすがにどうしようもありません。最初に確保した数よりユニットを増やした場合はどうするか?というと、「リストの拡張」ボタンを利用します。編集StepB12リストの拡張で、設定したい人数を入れれば、安全にデータを拡張できます。編集StepB135人に増やしてみました。リストの拡張でいくらでも変えられるといっても、リストの拡張をやりまくると、使えない断片データがたくさん生まれて、残り容量を圧迫します。ご利用は計画的にどうぞ。将来的には、断片データを再利用するdeflagする機能を作りたいとは思います。難しい機能なので開発は難航しています。編集おしまい以上で増援の説明は終了です。ユニット数の調整は、章開始イベントとかでもやりますので、やり方を覚えてしまうと、幅広い応用が可能です。以前のリビジョンバックリンク文書の先頭へ。