しばらく実生活での仕事が忙しく、何も手が付けられない日々が続いており大変申し訳ありません。戦闘BGM枠の拡張計画に関しては具体的に何をどう変更すればよいのか見当がついてはいるのですが、なかなか実行に移せない状態です。今のところこの調子で6月か7月いっぱいまでの間はなかなか時間が取れない予定です。 さて、何もできないのも面白くないので、今回は第4次スーパーロボット大戦のシステム変更の中で思いついたアイデアとして、機体の地形適応の仕様をCOMPACTシリーズ準拠にする方法について考察します。大半のスーパーロボット大戦での最終地形適応は「パイロットに設定された地形適応」と「機体に設定された地形適応」を合計したものが適用されるのですが、ワンダースワンで展開されたCOMPACTシリーズでは機体の地形適応のみが反映される仕組みになっています。これならば機体の特定の地形適応をAにする強化パーツを用意するだけでお気に入りの地形適応を簡単に変更可能です。やり方としては従来の「パイロットの地形適応」を読み込む際にこれを「機体の地形適応」を読み込むように変更すれば簡単に実施できそうです。ただ、これを実際に実行するとパイロットの無個性化を招くのではないかと若干心配になります。しかしこれを実施する事によってパイロットのパラメーターウィンドウから地形適応を消し去る事が可能となり、同時に撃墜数の表示欄を移動させれば特殊技能の表示を3つから6つに変更できます。なかなかやりがいのある変更だと思うのですが、皆様はいかがお考えでしょうか?
ざっと解析してみたところ、自軍登録メンバーの数を65以上にするにあたっての課題点が見えてきました。以下にその課題点を列挙していきます。
- 各種データの計算用RAM領域。これに関しては足りない分をコーエーの作品に見られる大容量SRAMや特殊チップ搭載ROMのように「外付けRAM」で増量してそちらに読み込みデータを逃がして展開させればいいが、中断データのセーブ・ロードの際の内容を大幅に変更しないと実現が難しい。外付けRAMがSRAMだった場合はリセットしたり電源を落としてもデータが更新されるまで逃がした展開データが保持され続けるので、中断データがある状態で別データのプレイをするとSRAM領域のデータが更新されてしまい内容が消えてしまう(=中断データが正常に再現されない)。特殊チップに展開する場合はリセットしたり電源を落とすと展開データ自体が消えてしまう。いずれにせよ、中断データにこの展開データを別領域にセーブ・ロードする処理を組み込む必要があり、作業量を考えると現実的ではない。
- 通常のセーブデータに保持できる内容はRAMでいうところの7E1000〜7E15D5まで。これより下の領域にセーブデータの内容を拡張しようとすると中断データに影響を及ぼし、やはり外部RAMへの展開データ拡張とセーブ・ロードの方式の変更が避けられない。
- 登録可能数を増やすとその分だけRAM各パラメーターの読み込み領域も増やさないといけない。通常は自軍・敵軍を合計して64体分で、これを超過するとRAMからデータがはみ出して不具合を起こすので一部パラメーターの分を丸ごと外部RAMに移す必要があるが、例によって中断データに影響を及ぼす。
- MAP上では展開データ領域は自軍・敵軍で共用64体分を使用するが、インターミッションでは同じ領域を自軍のみで64体分を使用する。つまり、逆に言うとそれぞれで使用するRAM領域が違えばインターミッションで使用するRAM領域だけ増やせばいいという事になる(MAP上で自軍・敵軍を合わせて65体以上出現させなければいいだけなので)。
以上の内容から見えてくるのは「7E1000〜7E152Dまでに登録データ数を保持しつつ不要と思われる内容を整理してセーブデータ領域に空きを作り、この空き容量を使って残りの登録データ容量を拡張。そしてインターミッションでのパラメーター閲覧や機体改造、乗り換えなどの作業実行の際には外付けRAMを指定してデータを展開して処理、対してMAP上では従来の通常メモリマップ内のRAMを使用して展開データを処理する」、つまりインターミッションの時だけ外付けRAMを使って増加させたデータを処理するという方法です。こうする事によって、理論上はセーブデータのSRAMへの書き込みや読み込み処理の大幅な改変をせずとも登録メンバーを増やせるのですが、そのためにはやはりSRAMに保存されるデータを一部減らさなければなりません。そうなると候補になるのが武器の個別改造とパイロットの撃墜スコアです。仮に武器の個別改造を捨ててパイロットやユニットの保持数を引き上げようとした場合、計算上は従来の64体から80~83体(個人的には80体を推奨したいところです)、パイロットの撃墜スコアを削除すればもう少し増やす事が可能になりますが、撃墜スコアはこれを利用した未使用のイベントコードが存在するので削除を避けたいところです。「武器の個別改造を捨てても16体分くらいしか増やせないのか」という見方もありますが、16体分増やせればできる事の幅は色々と広がると思います。
SRAM容量はROM内のRAM容量の項目を変更すれば最大で256kbiteまで増やせるので容量不足の心配はありませんが、問題はインターミッションの時だけ外付けRAMにアクセスしてデータを書き込み・読み込みできるという処理が実現できるかどうかですね。これによって登録メンバーの拡張ができるかどうかの明暗が分かれますが、できる限り実現への努力をしてみるつもりです。
コメント
コメントを投稿