表題の通り。
※私的利用の範囲での使用を厳守してください。一切の責任は負いません。
最近友人の間でFightcade2での3rd対戦が若干ブームに。
わたしも初めてFightcade2なるものを知ったんですが、低遅延での通信とかトレモとかが充実しておりかなり楽しそう。
せっかくなので3rd以外もいけないかな~ということで、前々から気になってたヴァンパイアセイヴァーのロムデータ作成(吸出し?)にチャレンジしてみました。

Steam版のCapcom Fighting Collectionを買う
何はともあれ。セールなので買いました。
store.steampowered.com
買ったらとりあえずインストールしておく。もち。
抽出ツールをインストール
これ。でもGitHubのWebページから落としてくるものは特にないです。
Python3.9以上をインストールしてから、PowerShellで以下コマンドを実行
py -m pip install --user pipx py -m pipx ensurepath pipx install game-extraction-toolbox
これでインストールできた。
ロムデータを抽出
抽出ツール(Game-extraction-toolbox)が正常に動作するか一応確認。
gextoolbox.exe tasks details --task cfc //cfcは"capcom fighting collection"の略称名。これ以外のタイトル吸出しをしたい場合は適宜変更
問題なければ実際にロムの抽出をしてみる。
gextoolbox.exe tasks extract --task cfc --srcdir [Capcom Fighting Collectionのインストールパス] --destdir [ロムデータ保存先のパス]
正常に完了すれば、--destdirに与えたパス直下にたくさんzipファイルが生えてる。これでとりあえず成功、ひとまずロムデータは手に入りました。
※注意
Steamで何も考えず適当にインストールすると、インストールフォルダが「Capcom Fighting Collection」という半スぺ入りのパスになります。
ロム抽出の際にダブルクオートで囲ってあげるか、インストールフォルダを「cfc」などにリネームするといいでしょう。ちなみに日本語など2バイト文字が入るとだめらしいです。
いろいろする必要があるという話
このままだとFightcadeで使われるFBNeoや最近のMAMEなど新しめエミュで起動ができません。
なぜかというと、一つ前の手順で実行したコマンドの出力に理由が書かれています。
以下に引用します。
1: These ROMs require an older version MAME. They test fine in MAME 0.139 (Mame 2010 in RetroArch). This is typically due to a missing decryption key, dl-1425.bin qsound rom, or other ROM files that the older MAME did not strictly require
訳すと
1: これらのROMは、より古いバージョンのMAMEを必要とします。 MAME 0.139(RetroArchの MAME 2010)では正常に動作することが確認されています。 これは通常、復号キーの欠如、dl-1425.bin(QSoundのROM)、または古いMAMEでは厳密に必須とされていなかった他のROMファイルが不足していることが原因です。
チャピティサンキュー。ヴァンパイアセイヴァーはこのNotes1に該当します。
ちなみにdl-1425.binって?QSoundのROMって?
dl-1425.bin とは? カプコンのQSoundシステム用のROM 主に CPS-2(カプコンのアーケード基板) のゲームで使われる 音声データそのものではなく、 👉 QSoundチップが音を処理するために必要な内部ROM/マイクロコード みたいなもの
チャピティーサンキュー。
あー、確かに言われてみればゲーセン行ったときにCPS2機のオープニングデモループとかでこの画面見たことある。

ま、さておき、ツールに書いてある必要な対応2点を実施します。
- 複合キーの欠如
- dl-1425.bin(QSoundのROM)の不足
複合キーの欠如
いろいろ調べると、キーは自分で作れそうなことがわかります。
この辺はCPS2基板実機で遊ぶ人たちのナレッジが役に立ちます。
あまり詳しくないから間違ってるかもだけど...
要するに、実機で複合キーを保存する(おそらく)揮発性メモリを保存する電池が結構切れがち。カプコンのサポートも切れているので、電池が死んだらおしまい。
そんな状況を解決すべく開発されているのが先に貼ったArcade Hackerで、マイコンで揮発性メモリをエミュレートして実機の複合化を実現してくれる(ということだと思う)(たぶん)。
ともあれ、このソースコードの中に複合キーが隠れているので探します。ヴァンパイアセイヴァーであれば"vsavj"
dl-1425.bin(QSoundのROM)の不足
これはパワーオブインターネットで解決。
集めた各ファイルをロムデータに反映させたい。
zipに足りないファイルをいれるだけ。
vsavj.zipを一度解凍→vsavj.keyとdl-1425.binをフォルダに入れる→まとめて圧縮(ファイル名はvsavj.zip)
おわり
これで完成、FinalBurnやMAMEで正常に起動できることを確認する。


おわりのおわり
以上。
満足した。
怒られたら消します。
おわり。
