Steam版「ロックマンクラシックコレクション」からROMを抽出する方法
Windows11の環境でSteam版「[ロックマン クラシックス コレクション]」から、ロックマン1~6(ロックマン(日本版)とMEGA MAN1~6(海外版))のNESファイルの抽出した方法をご紹介します。
抽出を行うには「Python(パイソン)」というプログラミング言語上で
「game-extraction-toolbox」というツールを使用してNESファイルを抽出します。
下記サイトにて抽出方法が記載されていましたが、試してみた環境では手順通りに実行してもエラーが出て抽出が出来ませんでした。
独自にスクリプトを解析、実行して抽出した手順を記載します。
現在は、キタよしさん(https://twitter.com/kitayoshi47)がコンバーターを開発されたとの事で、この手順よりもお手軽に吸出しが可能だと思います。
コンバーターみたいなものを作ってみました
— キタよし (@kitayoshi47) 2023年7月11日
かなり適当なので動かなかったらスミマセン🤖https://t.co/KnOh5pLA2f
https://github.com/shawngmc/game-extraction-toolbox
手順
Pythonのインストール
Windows11のパソコンにPythonの実行環境をインストールする手順
公式サイトからPythonをインストールします。
特にチェック項目に必須条件はありません。
■Python公式サイト
インストールにはこちらのブログを参考にさせていただきました。
https://challenge-pg.com/2023/01/21/win11-python-install/
Pipxのインストール
インストールはコマンドプロンプトから実施します。
Win+Rを押して「ファイル名を指定して実行」 入力欄に「cmd」を入力すると「コマンドプロンプト」が起動します。
下記コマンドをコピー、コマンドプロンプトへ張り付けて実行してインストールが完了します。
py -m pip install --user pipx py -m pipx ensurepath
game-extraction-toolboxのインストール
インストールはコマンドプロンプトから実施します。
Win+Rを押して「ファイル名を指定して実行」 入力欄に「cmd」を入力すると「コマンドプロンプト」が起動します。
下記コマンドをコピー、コマンドプロンプトへ張り付けて実行してインストールが完了します。
pipx install game-extraction-toolbox
スクリプトの編集
コマンドプロンプトからgame-extraction-toolboxを実施します。
個々のPC環境によって格納先などが異なるためスクリプトを編集する必要があります。
基本スクリプト
gextoolbox.exe tasks extract --task ゲームタイトル --srcdir "抽出するゲームが格納されているインストール先ディレクトリ" --destdir "抽出したROMの保存先のディレクトリ"
抽出するゲームタイトル
今回はロックマンクラシックコレクションを抽出するので、
game-extraction-toolboxで略称になっている「mmlc1」をタイトルの箇所に記載します。
今回はロックマンクラシックコレクションを選択していますが、こちらのタイトルや抽出先を変更することで他のタイトルも同様に出来ます。
gextoolbox.exe tasks extract --task mmlc1 --srcdir "抽出するゲームが格納されているインストール先ディレクトリ" --destdir "抽出したROMの保存先のディレクトリ”
ロックマンレガシーコレクションの保存先を確認する
Steamのライブラリから抽出するタイトル「ロックマンレガシーコレクション」の格納先のディレクトリを確認します。
インストール先がデフォルトの場合は
「C:\Program Files (x86)\Steam\steamapps\common\Susy」
抽出するゲームが格納されているインストール先ディレクトリの箇所にディレクトリの場所をコピー&ペーストします。
例:
gextoolbox.exe tasks extract --task "mmlc1" --srcdir "C:\Program Files (x86)\Steam\steamapps\common\Susy" --destdir "抽出したROMの保存先のディレクトリ”
抽出した保存先を指定する
抽出したNESファイルを保存する場所を指定する必要があります。
特に指定はないので適当なディレクトリにシンクフォルダを作成、アドレスをコピーしてスクリプトに貼り付けます。
例:Cドライブ直下に「rockman」というフォルダに書き出す設定とする場合
gextoolbox.exe tasks extract --task "mmlc1" --srcdir "C:\Program Files (x86)\Steam\steamapps\common\Susy" --destdir "C:\rockman”
抽出実行
Win+Rを押して「ファイル名を指定して実行」 入力欄に「cmd」を入力すると「コマンドプロンプト」が起動します。
抽出準備で編集したスクリプトを、コマンドプロンプトに張り付けて抽出作業を行います。
スクリプトが正常に動作していれば、保存先にNESファイルが抽出されているはずです。
あとがき
実は、自分は実機を持ってるので別の方法で吸い出していて、この手順はりりむさん(https://twitter.com/lilimgame)へ手順を案内していただけなんです。
Pythonのスクリプトを初めて触りましたが、単語やスクリプトの記載内容から、何をしようとしているのか紐解く力が必要だと感じました。
game-extraction-toolboxでは他にも抽出できるタイトルがいくつかあるので、
Steamのセールなどの安いタイミングに合わせて購入・抽出にチャレンジしてみては如何でしょうか。
対応ゲームの変換略称の一覧は下記コマンドで出てきます。
gextoolbox.exe tasks list
Twitter:@akkey_san(https://twitter.com/akkey_san)