先日、flatz氏がFW4.05のPS4で動作するPS2 classicsをベースにして任意のPS2ゲームを起動させる方法を公開されました。
flatz氏がFW4.05のPS4で動作しているPS2ゲームのダンプをベースにして任意のPS2ゲームを起動させる方法を公開
PS2 classicsが採用しているPS2のゲームデータはISOファイルのため、それを入れ替えて任意のゲームを起動させようというものです。
この方法はベースになるダンプが必要という所が壁だったわけですが、PSXHAXでg991氏がISOを抜いたベースを公開されました。
How to Create Emulated PS2 PS4 Packages (PKGs) Guide by G991!
今回紹介する手順ではg991氏が公開したベースを使用していきます。
各ゲームの互換性はソニーが用意したPS4用PS2エミュレータの素の状態です。
というのも、ソニーが各ゲームの動作の調整のために置いていると思われるpatchesフォルダはflatz氏の手順では削除します。
これは動作の調整を行うためにはデバッグ関連の機能が必要なので現時点では不要というflatz氏の判断です。
eboot.binやluaスクリプトが各ゲーム向けに調整されているかは不明ですが、flatz氏によれば
「ebootのチェックもしてください。configファイルのオプションがいっぱいありますし、いくつかの問題も修正可能なので。
それとluaスクリプトで簡単にそのゲーム用のフックやパッチが作れるのも忘れずに。」
という事なので互換性の向上等に関してはしばらくの間は手さぐりが続くと予想されます。
私が起動を確認したゲームは「クラッシュ5」「ドラクエ5」「ドラクエ8」「シャイニングティアーズ」の4本です。
この記事執筆時点ではその4本しか試していません。私個人の感想になりますが、
クラッシュ5はクラッシュの肌のテクスチャになんだか違和感があり、ドラクエ5は文字の影が強くてなんだか違和感があります。
ドラクエ8はキャラクターの影の表示がなんだかおかしいです。シャイニングティアーズは問題ありませんでした。
証拠画像は用意するのが面倒なので用意していませんが、そういう部分を気にする人間はPS2実機や初期型PS3、PCSX2をオススメします。
●用意する物、環境
・PS4 FW4.05
・PC
・FW4.05向けのKernel exploit実行環境
・PS4へペイロードを送信可能な環境
・Fake PKG Generator v1.1.3
・ps2emu.rar
・PS4HEN(HENペイロード)
・USBメモリや外付けHDD(exFATでフォーマット済み)
・遊びたいPS2のゲーム
PS2のゲームは事前にISOファイルにしておいてください。
●PKG作成手順
1、ps2emu.rarを適当な場所に解凍。
2、Fake PKG Generator v1.1.3 を適当な場所に解凍。
3、orbis-pub-sfo.exeを起動し、"File/Open"で "ps2emu/sce_sys/param.sfo" を開く。
4、Content IDの一部(タイトルID)を書き換える。
UP9000-CUSAXXXXX_00-SCUS974900000001
XXXXXの部分を適当な数字にしてください。
※これは複数のPS2ゲームを管理する上で必要な作業なので、遊びたいPS2ゲームが1本の場合は不要。
6、Title Textタブでタイトルを書き換えてorbis-pub-sfo.exeを閉じる。
5、"ps2emu/config-emu-ps4.txt" を開いて "--max-disc-num=1" を確認。
PS2のゲームのディスク枚数(ISOファイル数)が2本以上の場合は書き換える。
※ディスク1枚の場合は書き換えなくてOK
※kozarovv氏の調査によれば最大5枚の模様
6、ISOファイルを "ps2emu/image/" にコピーし、ファイル名を disc01.iso にする。
※ディスクが複数枚の場合は枚数に合わせてファイル名を整える
7、orbis-pub-gen.exe(Fake PKG Generator)を起動してメニューバーから "Command/Project Setting" を開く。
8、PackageタブのContent IDの部分に手順4のContent IDを入れる。
8、PackageタブのPasscodeを以下にする。
00000000000000000000000000000000
※Generateでランダム生成しても問題は無いが、0で埋めておけばorbis-pub-chk.exeでpkgを展開するとなった時に困らない
9、PackageタブのApplication TypeをFreemium Appに変更。
※私の環境では他のタイプでも動作しますが、こう解説している方が多いので一応。。。
10、OKボタンを押してProject Settingウィンドウを閉じる。
11、Image0 をダブルクリックしてImage Settingウィンドウを開く。
12、Image Settingウィンドウにps2emuフォルダの中身をドラッグ&ドロップ。
13、Chunkタブで Image0 Root を右クリックして "Switch Chunk Assignment of the file" でChunk#0を選択。
※PS2 classicsは全て1chunk/1scenarioらしいのでこれでOK
14、Image Settingウィンドウを閉じる。
15、右上のBuidボタンをクリックし、Output pathを設定して下のBuidボタンでビルド(パッキング)開始。
※sce_discmap.plt に関するエラーが出たらcloseで閉じて再度ビルド
16、作成したpkgをexFATでフォーマットしたUSBストレージのルートへコピー。
17、PS4にPS4HENを送信。
18、USBストレージをPS4に接続。
19、Package Installerから作成したpkgをインストールする。
("設定/★Debug Settings/Game/Package Installer/)
20、インストールが完了したらホームから起動してみる。
ここまでが起動する手順。以下少し凝りたい人向けに少し…
sce_sysフォルダに画像を入れる事で「ホームのアイコン」「起動時に表示される画像」
を変更する事が可能です。
・icon0.png … 512x512px
・pic1.png … 1920x1080px
上記のファイル名,大きさの画像をsce_sysフォルダにコピーしてPKGにするだけですが、24ビットカラー画像のみ対応です。
それ以外はビルド時にエラーを吐きます。ご注意を。
pic0.png(1920x1080px) という「ホームでカーソルを合わせている際にバックに表示される画像」も存在しますが、
こちらは私の環境では機能しませんでした。ビルド時のチェックは通ってるようなので問題は無いはずなのですが…
DS4の振動が機能してるのはなんかちょっと驚いた。