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

最新の投稿

第4次スーパーロボット大戦 爆発エフェクト設定変更パッチを公開しました

 第4次スーパーロボット大戦では、各機体の撃墜時の爆発エフェクトは機体データのBGM設定と一緒の部分(機体データの6番目)に格納されたサイズ設定とBGM設定に依存しているのですが、これをそれぞれの機体毎にオフセットテーブルで管理・設定できるパッチを作成してみましたので、よろしければお使い下さい。各機体の撃墜エフェクト設定は3FE780以下のオフセットテーブルで変更可能です。オフセット設定は下位1バイトでマップ上での撃墜エフェクト(00=爆散、01=キノコ雲、02=黒い光+キノコ雲、03=黒い光+爆散、04=光の柱)、上位1バイトで戦闘アニメでの撃墜エフェクト(00=爆発しない、10=爆発、20=フラッシュ、40=光の玉)を設定可能です。  これにより、従来はBOSS属性の機体でのみ使用可能だった光の玉による爆縮やLLサイズ専用だった画面が真っ白になるエフェクトをサイズやBGM設定に関係なく設定できるほか、F以降の一部の生身ユニットに見られる「爆発しないまま戦闘が終了する」というエフェクトも選択できるようになりますので、ドモンやマスター・アジアのような人間が直接戦闘する機体の再現もある程度違和感なく再現可能です(但し、マップ上ではどうしても撤退エフェクトが選択できず、第2次Gのマスター・アジアのように何かしらの爆発エフェクトを選択する必要があります)。ダウンロードは以下のURLから。ファイル解凍に必要なパスワードは「-c.r5m*9ncdj.Kwa」です。 https://ux.getuploader.com/retrogamelaboratory/download/101  次回は機体のBGMを機体依存から「パイロット依存パッチ」のようにオフセットテーブルで設定、かつ3F(64曲)まで設定できるようにするパッチを作成する予定ですが、これを作成すると従来のBGM継続パッチが全て使用不能になりますので、その点も含めると作業はそれなりに大掛かりになりそうです。欲を言えば「カスタムサントラパッチ」のようにディップスイッチでBGM設定をパイロットと機体で切り替え可能にするか、あるいは反撃命令のようにユニット毎にBGMの基準設定を行えるようにできるとよいのですが、前者はディップスイッチに余裕がなく、後者はセーブデータ用のRAMに余裕がないためなかなか...

第4次スーパーロボット大戦 続・移動タイプ「ホバー」の課題

 前回は「ホバー」の仕組みと戦闘時の背景呼び出しについて幾つか推論を述べていきましたが、その後実際に解析して判明した事がありますので、今回はそれについて少し記述していきます。

 まず背景のグラフィックですが、これはそのユニットのいる地形パネルを参照して先攻側、後攻側にそれぞれ対応するものを読み込んでいます。そしてそれぞれのユニットの存在している領域(「空中」であるとか「地上」であるとか「地中」であるとか)をチェックして対応する背景グラフィックのセットを書き込むという仕組みになっています。例えばこれが川の地形パネルの場合は「水中であれば川の中の背景のグラフィックに、そうでない場合はそれぞれの存在領域に対応したグラフィック(この場合は全て「空」の背景グラフィック)に、更に夕方や夜の場合は昼間の空から夕方の空や夜空に変更して書き込む」という仕組みです。そして「ホバー」は水の地形パネル上にいても「陸上」の領域に存在する事になっているのです。

 つまりホバーを導入する場合はこれを「水中であればそれぞれの水中グラフィックに、陸上(=ホバー)の場合は代わりにそれぞれ(昼・夕・夜)の水上グラフィックに、それ以外の場合は空のグラフィックに設定し、更に夕方や夜の場合は昼間の空から夕方の空や夜空に変更して書き込む」という仕組みにすればよいのです。しかし水系の地形には「深海」というものが存在し、水中のグラフィックが昼・夕・夜で共通した1つのIDしかないため、これもホバーに対応するには更に「深海かつ水中であれば水中グラフィックに、陸上(=ホバー)の場合は代わりにそれぞれ(昼・夕・夜)の水上グラフィックに、それ以外の場合は空のグラフィックに、更に夕方や夜の場合は昼間の空から夕方の空や夜空に変更して書き込む」という専用の処理を組み込む必要がありそうです。実際に深海が存在するマップは「日輪は我にあり」と「ノイエDC」の2マップだけで、かつこのマップはいずれも昼間の設定なので昼間の分だけ処理すればいいという考え方もありますが、後々になって自作シナリオなどを追加する際に深海の地形がある夕方や夜のマップを作るとなると不具合で頭を抱えることになりますので、やはりここはきちんと対応しておかないといけないのでしょうね。まあ開き直って水中の背景グラフィックで間に合わせるという手もありますが…。

 さて、これに付随して背景のグラフィック呼び出しやスクロールの仕組みも解析してみたのですが、これに関しては背景に使う各スプライトの速度やスクロールの方向をそれぞれ別々に読み込んで処理している事が判明しました。水上は草原と同じように空と雲をバックにして草原そのものの部分を水にすればいいと思いますので、新たに用意すべきは水面の部分の画像のみ、空や雲の部分の画像やスクロールの速度や方向はそのまま流用できそうです。しかし究極的に言えば戦闘アニメーションをスキップしてしまえばこれらの作業は全て徒労に終わるのでこれがゲームとしての面白さに繋がるかと言えばそうではないのがこの手の処理に関する毎度のジレンマなのですが、やはり拘りを持って作業はしたいところですね。

コメント

人気の投稿

第4次スーパーロボット大戦 カスタムサントラモード完成