お待たせしました。一通りのテストが完了しましたので「カスタムサントラパッチ」を公開しました。なお、使用にあたり重大な注意点や幾つかの作業がございますので、必ず最後までご一読下さい。
※重大な注意点
- 作成したカスタムサウンド用のPCMファイルは自作のBGMデータから変換したもの以外は個人での使用に留めて下さい。
- 自作BGMデータによるPCMファイル以外はいかなる理由があろうとも絶対に配布しないようにお願いします。
- このパッチを組み込んだ状態でのパッチの公開や配布を固く禁じます。
- このパッチを組み込んだ状態でのプレイ動画の公開や配信を固く禁じます。
拡張領域の3FE9A0~3FECCFを使用します。事前に何らかの手段を用いてROMイメージを4M化して下さい。なお、RAMの7E1005のモノラル/ステレオ切り替え用ディップスイッチフラグを使用してサウンドの仕様を変更するため、「ステレオ/モノラル入れ替えパッチ」は使用できませんが、元祖「BGM継続パッチ」や拙作の「BGM継続パッチ(パイロット基準)」や「ジェノサイド・マシンパッチ」、「レベルアップジングル変更パッチ」は併用可能です。パッチ内容は以下の通りです。
- BGMのモノラル/ステレオ設定の変更機能を廃し、強制的にステレオサウンド固定化する。
- オプション画面やMAP画面のBGM設定のモノラル/ステレオ設定の項目が「ノーマル/カスタム」に変更される。
- 「ノーマル」モードは従来通りSFCの内蔵音源チップであるSPCによるBGMが再生される。
- 「カスタム」モードはSPCによるBGM再生の他に、任意のBGMの代わりに専用フォーマットのPCMファイルを再生させる事ができる。
カスタムモードが使用できるエミュレーターはSnes9x系列かBSNES系列のMSU-1チップをサポートしたものに限られます(これら以外は動作保証対象外です)。また、MSU-1チップ対応を公表しているPOLYMEGAやSuper Nt等の模倣ハードウェアでの動作は作者がこれらを所持していないため検証しておりません。カスタムモード用のBGMは3FEAC0以下のオフセットテーブルで設定可能です。このオフセットテーブルは通常BGMのIDとリンクしており、ここにPCMファイルと同じ番号(後述)を設定すればそのファイルをBGMとして使用可能となります。
まず、ROMイメージと同じフォルダにROMイメージと同じ名称のmsuファイル(パッチと同梱のものをリネームしてお使い下さい)を配置し、同時にフォルダの隠しファイルの表示を有効化して下さい。msuファイル自体はパッチと一緒に同梱してあります。同梱されているmsuファイルの名称は、例えばROMイメージの名称が「第4次スーパーロボット大戦」であれば「第4次スーパーロボット大戦.msu」といった具合です。
カスタムサウンドを使用するには専用フォーマットのPCMファイルが必要です。当然ですが、カスタムサウンド用のPCMファイルは同梱されていません。各自でご準備願います(使用したい任意の楽曲ファイルをノーマライズ処理した44.1kHzのWAVファイルに変換し、それを更に専用の変換ツールを用いてPCMファイルに変換して各自でご用意下さい)。
楽曲ファイルのPCMファイルへの変換方法ですが、まずは、楽曲編集ソフトで楽曲ファイルの編集やノーマライズを行います。推奨ツールは以下のURLからダウンロード可能です。ツールの基本的な使い方はそちらを参考にして下さい。なお、ノーマライズと44.1kHzのWAVファイルに変換できる機能があるのであれば他のツールでも特に問題はありません。
・Audacity(https://www.audacityteam.org/download/)
特に楽曲ファイルの編集(楽曲の切り貼りやエフェクトの追加など)が不要であれば、Audacityの場合は以下の通りに作業してください。編集が必要であれば、それらの編集作業後に後に以下の作業を行います。
- 楽曲のファイルをAudacityに読み込ませる。
- Ctrl+Aで全範囲を指定。
- 「音圧と圧縮」から「ノーマライズ」を選択し、実行。
- 「オーディオをエクスポート」から「WAV形式/44,100kHz」で保存。
次に「wav2msu」を用いて、先ほど生成したWAVファイルをPCMファイルに変換します。以下のURLからツールをダウンロードして下さい。
・wav2msu(https://web.archive.org/web/20180821030302/http://helmet.kafuka.org/thepile/Wav2msu)
wav2msuに対象のWAVファイルをドラッグ&ドロップすると、同名のPCMファイルが出力されますので、出力されたPCMファイルにROMイメージと同じ名前を設定し、名前の最後に半角で「-XX(XXには任意の10進法の数値)」という番号を付記します。このPCMファイルをROMイメージやMSUファイルと同じフォルダに配置し、ROMイメージの3FEAC0以下のオフセットテーブルの任意(=置き換えたいBGMのID)の場所に、PCMファイルの番号を16進法で記述(例えば、PCMファイルの番号が10進法の「20」であればオフセットテーブルには16進法の「14」と記述)します。これにより、カスタムモードでそのBGMが再生される際にはSPC楽曲の代わりにPCMファイルのBGMが再生されるようになります。
- ボリュームが大きかったり小さかったりする場合は、ROMイメージの3FEB80以下のオフセットテーブルで楽曲ごとに音量が調整可能です。FF(255)が最大値で、00(0)が無音になります。音量をあまり大きくし過ぎるとSEが聞こえなくなりますのでご注意下さい(基本的には3F~9F程度を推奨します)。
- リピートの有無はROMイメージの3FEB20以下のオフセットテーブルで楽曲ごとに設定が可能です。01がリピートなし(楽曲の再生後は次の楽曲演奏までSEを除き無音になります)、03がリピートあり(楽曲の終端に到達すると最初から演奏を再開)です。原則としてジングル扱いの楽曲やムービーデモ用BGMとして使用される楽曲を除き「03:リピートあり」に設定するのが望ましいと思われます。
PCMファイル作成のポイント
- PCMファイルの仕様の関係で、SPCデータのように切れ目なしや楽曲の任意の位置からのループを行う事はできません。リピート再生の切れ間が気になる場合は元の楽曲自体の時間数を多めにしておく事をお勧めします。特にBGM継続パッチを使用して戦闘をしていると、この仕様(というか欠点)を強く感じる事でしょう。そのため、BGM継続パッチと併用する場合は戦闘用の楽曲は5~10分程度の長さにしておくとループによる不自然さをカバーできます。一巡後にすぐリピート再生すると都合の悪い楽曲の場合は、元の楽曲データを編集して後ろに長めの空白時間を設けるとよいでしょう。
- ゲーム内のウェイトタイムの都合があり、切り替わった楽曲の最初の空白時間が短いと画面切り替えなどの前に楽曲が流れてしまい不自然に感じる場合があります。この場合、元の楽曲データを編集して先頭に0.5~1秒程度の空白時間を設けるとよいでしょう。
PCMファイルが存在しない番号が記述されたBGMが再生される際は、ノーマルと同様にそのIDに割り振られたSPCのBGMが通常通り再生されます。なお、SPCによるBGMやSEの常駐波形データの関係上、オフセットテーブルの00、01、02には「フォルダ内にPCMファイルが存在しない番号」を割り振って下さい。仮にこれらのIDに「番号が存在する楽曲」を割り振っても実際にはノイズが発生してしまうため正常に使用できません(常駐SPCが無効化されるため、SEが正常に再生されなくなります)。
ダウンロードは以下のURLから可能です。ファイルの解凍に必要なパスワードは「y||Q(w_RTGd3A~Qmuy*wQ4eu.wHAH_LwbGnmPwHY」です。
コメント
コメントを投稿