リリースの手順に従う
Windows または Linux 向けの v0.1.2 の手順に従ってください。
このページを離れるまでチェックを保持します。
別の方法は次のガイドで確認できます: AnyPS5 Web変換ツールのガイド または AnyPS5 ソースビルドの導入手順.
AnyPS5 では、ゲームの実行ファイルとモジュールを変換し、読み込むライブラリとリソースを配置します。この三つを分けて準備すると、起動時の問題も調べやすくなります。
この手順は、公式 v0.1.2 と使用文書に基づき Windows または Linux 出力を準備します。
始める前に
- 利用する権利のある、暗号化されていない ELF、同梱モジュール、ゲームリソース。暗号化パッケージや SELF/fSELF はそのまま変換できる入力ではありません。
- AnyPS5 GitHubから入手した同じ版の relinker と対象 OS のライブラリ。
- AnyPS5 動作環境の Vulkan、CPU 命令などの確認。
- 報告を再現する場合は AnyPS5 ゲームの title ID、コンテンツバージョン、ビルド、特殊引数とパッチ。
手順 1:同じリリースのファイルを入手
公式 v0.1.2を開き、対象 OS で選びます。
| 対象 | relinker | ライブラリ |
|---|---|---|
| Windows | relinker-v0.1.2.exe |
prx-windows-v0.1.2.zip |
| Linux | relinker-v0.1.2 |
prx-linux-v0.1.2.tar.gz |
ライブラリにはもう一方の圧縮形式もあります。展開後のファイルは手順 4 で使います。Windows パッケージには libgcc_s_seh-1.dll、libstdc++-6.dll、libwinpthread-1.dll も含まれます。
手順 2:入力を配置
最小限の例です。
source/
input.elf
sce_module/
bundled-module.prx
ELF の名前は eboot.bin などでも構いません。判断するのは内容です。例に合わせるために、ゲームのモジュールフォルダー名を変更しないでください。
対応名は sce_module/、sce_modules/、prx/ です。prx/ は他のどちらかと共存できます。sce_module/ と sce_modules/ の両方がある場合、または三つともない場合はエラーです。処理対象は各フォルダー直下のファイルだけです。
別の場所なら --sce-module-path <path> でモジュールフォルダーの親を指定します。絶対パスか作業ディレクトリからの相対パスを使えます。追加のフォルダーには複数の --module-dir が必要な場合があるため、そのゲームのコマンドを参照してください。
手順 3:relinker を実行
ツールのあるディレクトリでターミナルを開きます。以下は上の入力を使い、ツールの隣に出力します。
Windows PowerShell
.\relinker-v0.1.2.exe --windows source\input.elf app.exe
--windows は省略しません。app.exe という名前だけでは既定の Linux ELF が出力されます。
Linux
chmod +x relinker-v0.1.2
./relinker-v0.1.2 source/input.elf app.elf
Intel ホスト向け
文書の Intel 経路では --to-intel を追加します。
.\relinker-v0.1.2.exe --windows --to-intel source\input.elf app.exe
入力とモジュール中の対応済み AMD 固有命令を書き換えます。ゲームが実行時に生成する命令には対応しません。止まったら、ファイルやビルドを変える前に最初のエラーを保管してください。
手順 4:実行時フォルダーを組み立てる
出力、対象 OS の代替ライブラリ、ゲームリソースを次の位置に分けます。
game_directory/
app.exe # app.elf for Linux
libs/
libkernel.prx
libScePad.prx
... # Matching AnyPS5 system libraries
libgcc_s_seh-1.dll # Windows package only
libstdc++-6.dll
libwinpthread-1.dll
app0/
sce_module/
bundled-module.prx # Converted module, not the original console file
... # The game's resources
Guest module: に各変換済みモジュールの正確な出力パスが表示されます。そのファイルを使い、フォルダー名を保持してください。入力が sce_modules/ や prx/ なら、app0/ 内でも同じ名前です。ゲームリソースは別途コピーし、相対パスを維持します。
libs/ は出力 OS 向けの AnyPS5 ライブラリ用です。元のゲーム機の .prx は入れません。Windows の三つの MinGW DLL もここに必要で、別の PATH の変更では欠けたファイルを補えません。
組み立てたフォルダーから起動します。
.\app.exe
Linux の場合:
chmod +x app.elf
./app.elf
ゲームがシステムフォントを開く場合は、実行ファイルの隣に anyps5-fonts/ を置くか、ANYPS5_SYSTEM_FONTS で指定します。使用文書に元のファイル名と対応する Noto 代替フォントがあります。通常の app0/ リソースとは別です。
手順 5:操作を確認
v0.1.2 入力ガイドは SDL コントローラーと標準キーボード・マウス操作を説明しています。最初に認識したコントローラーを使用し、Xbox A/B/X/Y は Cross/Circle/Square/Triangle に対応します。スティックとトリガーはアナログ入力です。タッチパッドのクリックには対応しますが、指の座標は未実装です。
キー割り当ては、出力プログラムの隣に anyps5-input.ini を作成します。
Cross = KEY:Space
Options = KEY:Return
別の場所なら ANYPS5_INPUT_CONFIG で指定します。省略項目は既定のまま、コントローラーの割り当ては変わりません。不正な行はファイル名と行番号を出し、入力初期化を止めます。コントローラーを疑う前にそのエラーを確認してください。
任意:プロジェクト全体をソースからビルド
特定コミットを使う場合やランタイムを変更する場合の方法です。AnyPS5 動作環境のコンパイラーと依存関係をそろえ、固定版ビルドガイドに従います。
git clone https://github.com/boykopovar/AnyPS5.git
cd AnyPS5
git checkout v0.1.2
git submodule update --init --recursive
cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++
cmake --build build --parallel
cmake --build build --target libs --parallel
別の結果には v0.1.2 ではなく記録のリビジョンを使い、別途記載されたパッチも適用します。ライブラリは build/core/libs/libs/ からコピーします。relinker のビルドだけではライブラリはできません。ライブラリ変更後に実行ファイルだけ更新しても、古いランタイムのままです。
最初の実行で残すもの
変換、ライブラリ読み込み、ロゴ、メニュー、ゲームプレイのどこで止まったか、最初のエラーと特殊な起動経路を記録します。
AnyPS5 トラブルシューティングで調べるか、別の変換経路として AnyPS5 Web変換ツールを参照してください。ブラウザー版には入力と保存に別々の制限があります。