avg32tools元サイト:http://www.geocities.co.jp/Playtown-Domino/8282/
2001/04/09 公開 2001/04/21 koemp3を追加 2003/12/08 RealLiveに対応 2004/01/11 RealLive編に「音声のwav化は可能?」を追加 目次これって?エロゲーマーにはお馴染み、Visual Art'sのAVG32/RealLiveシステムですが、このシステムを使っているゲームでも最近、BGMがCD-DAでないものが多くなってきています。これらのゲームをCD音源化することによって、_inmmを使ってBGMファイルのサイズを小さくしたり、曲を差し替えたりできるようにしようというものです。 AVG32編AVG32の動作は、GAMEEXE.INIの書き換えによってある程度変更できます。BGMとしてwavファイルを使うゲームのGAMEEXE.INIには、 #MUSIC_TYPE=002 という行があります。これを #MUSIC_TYPE=003 に変えると、BGMとしてwavではなくCDを再生するようになります。曲の位置情報とかそういったものもGAMEEXE.INIに書いてあるので、それも適切にCD用に書き換えてやれば(avgini.exeがやってくれるので詳しくは説明しません)、_inmmパッチを当ててmp3でもなんでも鳴らせるというわけです。 ところが、ひとつ困ったことが出てきます。上記の変更を加えると、ゲーム中の音声が出なくなるのです。 AVG32で使われている音声ファイルは、拡張子.KOEの独自の圧縮形式です。(1) そこで、KOEファイルをWindowsが再生できる形式に変換する必要があります。これはkoeunpac.exeで行います。koeunpac.exeはKOEファイルをwavファイルに変換しますが、要はWindowsが鳴らせる形式であればいいので(ただし拡張子.wavであることが必要)、MP3-WAVE等にして置いておけばKOEファイルよりもさらにサイズを小さくすることができます。 最後に、AVG32がKOEファイルではなくwavファイルを使うように、GAMEEXE.INIの この辺りの詳しい説明は、Keiさんによる 解説 ページ を参照してください。
avgini.exe - GAMEEXE.INIを書き換えるGAMEEXE.INIのあるフォルダで実行すると、
それぞれ書き換えます。 1.によって、BGM・効果音・音声がDirectSoundではなくMCIを使って再生されるようになります。 2.では、BGMの情報(開始位置、停止位置、再開位置)をwav形式用からCD用に変換します。 3.では、音声の再生にKOEファイルではなくwavファイルを使うようにします。(これはkoeunpac.exeでやるべきことのような…手抜きです) ついでに、 トラックの位置決めのためにBGMファイルの再生レートが必要なので、このプログラムは、レジストリからBGMフォルダの位置を調べて、そこにあるBGMファイルから再生レートを取得しています。ですので実行するときは、ゲームがインストールされていて、BGMファイルが読める状態になければなりません。要するにゲームをインストールして、CDを入れたままで実行してね、ってことです。 実際には使われないBGMがGAMEEXE.INIに書いてあると、「wavを開けない」といわれますが、[無視]を選んでください。(2)
koeunpac.exe - KOEファイルをwavファイルに変換するGAMEEXE.INIのあるフォルダで実行すると、GAMEEXE.INIとレジストリからKOEファイルのある場所を調べて、全てのKOEファイルをwavファイルに変換します。 1つのKOEファイルには通常、複数の音声が含まれています。このプログラムは、実行したフォルダにまずkoewavというサブフォルダを作り、さらにその下に、KOEファイルごとにフォルダを作成します。wavファイルはその中に作成します。 また、ゲームのレジストリ項目の"KOE_FOLDER"を書き換えます。これは音声ファイルの位置を指定するもので、例えば"Q:\KOE"という風になっていますが、これを"koewav"にします。つまり作成したwavのほうを使う設定にするわけです。同時にkoe_restore.regというファイルを作成します。これをダブルクリックするとレジストリを書き換え前に戻せます。 フォルダ名やwavファイル名はAVG3217D.EXEが使う規則にしたがって決められています。名前を変更するとAVG3217D.EXEがwavを見つけられなくなって音声が出なくなりますので注意してください。 作成されるwavファイルの総サイズは、KOEファイルの3~4倍程度になります。ディスクの空き容量に注意してください。 変換したwavファイルは個人で使用する範囲にとどめておきましょう。 koemp3.exe - SCMPXでwavファイルをMP3-WAVEに変換する上のkoeunpac.exeで生成されたwavファイルをMP3-WAVE(MP3ファイルにRIFF/WAVEヘッダをつけたもの)に変換します。変換にはSCMPXを使用します。 koeunpac.exeが作成したkoewavフォルダで実行すると、サブフォルダのwavファイルを全てMP3-WAVE形式に変換します。変換前のwavファイルは削除されます。 SCMPXの場所は、_inmmcnf.exeのレジストリ項目から読みとります。_inmmcnf.exeにSCMPXのパスを設定していない場合は、koewavフォルダにscmpx.exeをコピーしてから実行してください。 MP3-WAVE形式のファイルをAVG32で再生するには、この形式用のコーデックが必要です。コーデックは_inmm.dllのホームページからダウンロードできます。 結局何をすればいいのさ?
2~4はどの順番で実行してもかまいません。 これで、とりあえずゲームが動く状態になります。ただしBGMの巨大なwavファイルは_inmm.dll経由で、また音声にはKOEファイルではなく、変換されたwavが使われます。 あとはBGMを差し替えるなり、(koemp3.exeを使って)声をMP3-WAVEにするなりしてください。 RealLive編RealLiveもAVG32と同様、GAMEEXE.INIを書き換えることでCD音源化することができますが、AVG32をCD音源化する場合とは以下の違いがあります。
3.より、RealLiveの場合はkoeunpac.exeとkoemp3.exeは不要で、avgini.exeだけを使用します。 avgini.exeでGAMEEXE.INIを書き換えるGAMEEXE.INIとREALLIVE.EXEのあるフォルダで実行すると、avgini.exeはRealLive用の書き換えを行います。書き換える内容は以下の通りです。
AVG32の場合と同様、 CDチェックRealLiveは起動時にCDがあるかチェックして、チェックに通らないとCD再生を強制的に無効にしてしまいます。 CDチェックには、レジストリのDISK_MARKの値が関係しています。レジストリのキー名はGAMEEXE.INIのREGNAMEにあります( CDドライブで、かつルートにDISK_MARKの名前のファイルが存在するドライブがあれば、RealLiveはそこからCDを再生します。そのようなドライブがなければ、CD再生は無効化されます。(3)
音声のwav化は可能?AVG32では、KOEファイルの音声をMP3-WAVEなどのより圧縮率の高い形式に変換することで、音声のサイズを減らすことができました。RealLiveでも同じことが出来ないでしょうか? 結論から言うと、音声のwavファイル化は可能ですが、圧縮wavを使えないため、高圧縮化はできません。 GAMEEXE.INIの #FOLDNAME.KOE = "KOE" = 1 : "" という行を #FOLDNAME.KOE = "KOE" = 0 : "" にすると、RealLiveは例えばZ1234.KOEの56789番の音声を出そうとするときに、KOE\Z1234.KOEがなければKOE\1234\Z123456789.wavから音声を読み込みます。ただしAVG32とは違って、WindowsのWAVEファイル再生機能は使わずに自前で再生します。この再生ルーチンが圧縮wavに対応していないようで、MP3-WAVEなどを鳴らそうとすると「圧縮されたウェーブデータです。再生できません。」と言われてしまいます。 WindowsのWAVEファイル再生機能で音声を再生する機能はRealLive(1.0.2.9で調査)には実装されていないようで、設定をいじってMP3-WAVEなどを再生するのは無理のようです。 結局何をすればいいのさ?
2~4はどの順番で実行してもかまいません。 nwa形式からwav形式への変換ツールは、http://www.angelfire.com/ks3/kaede/avg2k/などから入手できます。 これで、ゲームを起動して右クリックメニューで「BGM設定」→「CD-DA」を選択すると、_inmm経由でBGMが再生されるようになります。 あとはBGMを圧縮するなり差し替えるなりしてください。CDレス化する場合は、上の「CDチェック」の項を参考にしてください。 謝辞発案者のたくまんさん、いろいろな助言をくださったKeiさんに感謝いたします。 KOEのデコードルーチンはKenjo氏の「わっふる」を参考にさせていただきました。また、nwaファイルからの情報取得にはjagarl氏のnwatowavを参考にさせていただきました。ありがとうございます。 さいごにどこか間違ってたら教えてください。 改変・再配布は制限しません。「プログラム使いやすくしたよ」等は大歓迎です。超歓迎です。 このプログラムを使用した結果については作者は一切責任もてません。このプログラムについてVisual Art'sやゲーム制作元に問い合わせをしないでください。 |