スキップしてメイン コンテンツに移動

投稿

12月, 2021の投稿を表示しています

最新の投稿

第4次スーパーロボット大戦 合体式複数パイロット乗り機体用特殊台詞の設定アイデア

 第4次スーパーロボット大戦ではコン・バトラーVダンクーガ、ザンボット3といった合体後に複数パイロットが乗るようになる機体のサブパイロットの台詞を反映させる機能はありませんが、以前作成したゲッターチームの仕様変更のシステムを応用すれば「F」以降のコン・バトラーVのように合体後専用の特殊台詞を反映させる事が可能であると判明しました。  具体的な手法は「特定のパイロットが特定の機体に搭乗している場合はSRAM上のパイロットIDを保持したままRAM上のパイロットIDを入れ替える」というもので、これは以前にも少し触れたハイパーモードや暴走システムの手法と同じものですが、これを応用すれば、例えばバトルジェット搭乗時の豹馬とコン・バトラーV搭乗時の豹馬のパイロットIDを個別に用意する事で異なる台詞パターンを適用できるという事も可能になります。また、同時に複数精神コマンドのサブパイロット適用パターンも変更できるため、非分離型のコン・バトラーVを用意するといった必要もなくなります。但しこの方法には欠点もあり、例えば敗北条件に豹馬の撃墜が設定されている場合にこのパイロットIDが合体前と合体後で別々であると、パイロットIDが合致しなくなってしまった途端に敗北条件を満たしてゲームオーバーとなってしまいます(これはハイパーモードや暴走の再現時にも当てはまる問題です)。そのため、台詞の変更のみに留めるのであれば特殊サブルーチンを組んで特定のパイロットが特定の機体に搭乗している場合は台詞の参照IDを変更(例えば、豹馬がコン・バトラーV搭乗の場合は通常の台詞IDではなく専用の台詞IDを参照)するという手法の方がいいのかもしれません。もっとも、シナリオ上での敗北条件を設定する際にそれら両方のパイロットIDを全て確認できなかった場合にのみ敗北とすれば問題はないので、あくまで好みの問題とも言えそうです。

第4次スーパーロボット大戦 パッチの8M拡張化と対応ROMバージョン変更検討について

 パッチ更新にあたりデータを整理しているのですが、 BGMの追加やグラフィックの追加、様々な追加プログラムと今後追加予定の要素に使う領域の関係でそろそろ4Mでは辛くなってきたので、ROMイメージを8Mに拡張する事を検討しています。  基本的には拡張した領域に追加BGMや追加BGMのデータを置く予定ですが、どうやら拡張領域に置いたデータを読み込むためにタイムラグが発生するらしく、試しに置いてみたBGMデータの再生が若干遅くなったような気がします。他の作品からのBGM追加に関しては権利的な問題も多いので、あくまで個人の範囲で移植して楽しむために該当BGMデータの移植手順のみ付けて対応する事も検討しています。  また、パッチが対応するROMイメージに関しても現在のバグ修正版から初期版に変更する事を検討しています。これは「正規の方法で中古のソフトを何本か購入したもののバグ修正版が入手できない」というご意見に考慮したもので、作成した追加プログラムの大半を書き直す必要がありますが肝心の元になるソフトが入手難ではパッチを更新する意味がなくなってしまいますので、時間はかかりますがこれを機会に対応ROMを変更する予定です。

第4次スーパーロボット大戦 「ダークプリズン」の実装に成功しました

  以前はループの度に曲の再生速度が落ちていく不具合のためうまくコンバートできなかった「ダークプリズン」ですが、今回はデータ長を変更してループ後に再生速度を調整するオペコードを追加する事で再現に成功しました。これでシュウとの対決に念願の専用BGMが使えるという事になりますので、少しモチベーションがアップしています。次回があれば「終わりなき戦い」に挑戦したいところです。

第4次スーパーロボット大戦 「フラッパーガール」の実装に成功しました

以前はループの度に曲の再生がおかしくなってうまくコンバートできなかった「フラッパーガール」ですが、新たに判明したオペコードを踏まえ今回は再現に成功しました。要するに、前回まで一部のオペコードの解釈を間違えていたという事ですね。お恥ずかしい限りです。 使用サンプリングデータ数を11個から8個に減らしたので若干再現率は落ちますが、減らしておかないとSEが正しく再生されなかったり一部の武器を使う際にフリーズしてしまうのでやむを得ないところですね。 今回の調査で判明したオペコードのおかげで他の魔装機神やバトルロボット烈伝の一部のBGMのコンバートも可能かと思いますので、コンバートが成功したBGMについては随時ご報告致します。

第4次スーパーロボット大戦 コープランダー隊について

 バグ修正とシナリオ更新のついでにRAMに登録できるパイロットやユニットを変更しようと試みているのですが、どうも上手くいきません。原因は明白で、機体やパイロットの最大登録数である64=3FまでがMAP上に展開した全ての機体やパイロットを管理する際の連番になっていて、プログラム上でNPCや敵であるかを判定する際には40やC0などの番号を使っているからです。つまり、一度にMAP上に展開できるパイロットや機体の数そのものの上限も64体で、ここを変更した上で所属部隊などを判定するプログラムも書き換える必要があるという事です。なお、MAP開始や出撃メンバー選出の際に一旦敵味方を含めたそのMAP全てのパイロットと機体のデータを展開(というかリザーブ)してしまう仕組みなので、出撃メンバー選出後にそのメンバーだけのデータをRAM上に展開する仕組みのタクティクスオウガのように簡単に登録できる数を増やせるわけではありません。これはかなり骨が折れそうです。  それはさておき、コープランダー隊の扱いについて色々と考えています。神宮寺、麗、マリの三人の中から一人をメインパイロットとして選抜するイベントは残すつもりなのですが、本来ブルーガーは二人乗りなのでそこを考慮するとメインパイロットを選ぶ際に誰がサブパイロットになるのか選べると有意義な気がします。もちろんプログラム的にそうする事は可能なのですが、面倒な作業になる事は避けられません。これを実行する意味があるのか否か、じっくりと考えてみるつもりです。