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

最新の投稿

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

 不具合修正や各種動作チェックも完了し、ようやくカスタムサントラモードの実装が完了しました。オプション画面やマップ画面の BGM設定を「ノーマル」にすればデフォルトの楽曲が再生され、「カスタム」にすれば任意のBGMを自分で用意した楽曲と差し替える事が可能です(どちらのモードでも再生される楽曲は強制的にステレオ出力になります)。また、動画の通りBGM継続パッチにも対応し、カスタムモードで差し替えた楽曲は楽曲ごとにバイナリエディタやBNE2で音量の指定設定も可能です。カスタムサントラモードはMSU-1チップをサポートした一部のエミュレーターやフラッシュカートリッジ(Snes9xやbsnes、 FXPAK PROなど )でのみその機能を使用できますが、ノーマルモードであれば他の環境でも問題なくプレイ可能(カスタムモードにするとBGMが再生されないだけ)です。 現状で確認できる不具合…というか仕様として、カスタムモードでサウンドテストを選択して楽曲を再生させた後にメニューに戻すと、再度サウンドテストのウィンドウを開いた際に楽曲の項目が1番目(デフォルトであれば「時を越えて」)になってしまうというものがあります。特にプレイに支障が出るものでもないと思うのですが、一応修正するアイデアがないわけでもないので、できる事ならば修正しておきたいところです。 今回は事前の知識としてBGM継続パッチやサウンドドライバ、BGMにSE周りのシステム関連の解析を行っていたので割と容易に実装可能となりましたが、作業量やデバッグの手間を考えるとその時間を他のリソースに割く方が懸命に思え、MSU-1関連のパッチ作成は他のタイトルでは積極的にやりたくはないというのが本音ですね。

第4次スーパーロボット大戦 PCMファイル再生パッチ作成の進捗状況と課題

 MSU-1チップ導入によるPCM音源再生パッチの進捗状況ですが、やはり当初思っていたよりも難解な技術というものではなく、割と簡単にMSU-1チップを介してPCMファイルを読み込み・再生する事に成功しました。しかし問題がない訳ではなく、特定のエミュレーターでしかMSU-1チップを組み込んだROMイメージが正常に動かず(具体的には現状で対応しているのはbsnes-PlusとSnes9xの2種類のみ)、それ以外のエミュレーターや実機でROMイメージを起動させるとゲーム自体はプレイできるもののBGMが再生されなくなってしまいます。これはMSU-1チップがあくまで発案者による架空の存在であるためこのチップに対応するプログラムが組み込まれたエミュレーターでないとPCM音源が再生されない(というかMSU-1チップを認識しない)ために起こる不具合です。つまりMSU-1チップを組み込んだROMイメージは嫌でも指定のエミュレーターでしかまともにプレイできなくなるという問題が生じる事になり、SNESGTをメインに使用する私としては少々モチベーションが下がってしまう思いです。

 さて、PCM音源再生パッチを作成したはいいのですがもう一つの問題があります。それは「カラオケモードで字幕が一切先に進まなくなる」というものです。カラオケモードはSPCデータの内容とリンクして文字が切り替わる仕組みになってるので、PCMファイルでBGMを再生させた場合はこれが成立しなくなってしまうために起こる不具合です(不具合といっても字幕が更新されないだけでフリーズしたりする訳ではなく、キャンセルしたり本来のBGMの長さと同じだけの時間が経過すればカラオケ画面から曲目選択メニューに戻る事は可能です)。解決方法としては二つあり、一つはプランA「諦めて放置するかカラオケモードに入れないようにロックを掛ける」、もう一つはプランB「カラオケモードのカラオケ画面に入る際にカラオケモードフラグをONにし、このフラグが立っている間だけ本来のサウンドドライバによるSPCモードのBGMが再生されるように処理を切り替え、カラオケ画面終了と同時にフラグをOFFにする」というものです。作業としてはどう考えてもプランAの方が楽なのですが、折角なのでプランBが実際に実現可能なのか試してみたいところです。ただ、そこまでカラオケモードに固執する必要があるかと言われればあまり必要がないとも言えますので、この不具合は無視してしまってもいいような気はします。いずれにせよパッチが公開できる日はそう遠くないと思われますので、興味のある方はあまり期待せずにお待ち下さい。

コメント

人気の投稿

第4次スーパーロボット大戦 初期型ROMと後期型ROMの物理的な見分け方と入手方法

第4次スーパーロボット大戦 ジェノサイド・マシンパッチ改を公開しました