Ren'Py 製ゲームのソースコードを覗く
翻訳のため、あるいは純粋な興味のために Ren'Py 製ゲームをアンパック・デコンパイルし、ソースコードを取り出す方法です。
Ren'Py 製ゲームであることの確認方法
PC 版の場合、exe
と同じ階層に renpy
フォルダがあります。
[Ren'Py Game]
├ game/
├ lib/
│ └ windows-i686/
│ └ python.exe
├ renpy/
├ [Ren'Py Game].exe
└ [Ren'Py Game].sh
Windows の場合
1. UnRen.bat を配置
UnRen.bat をダウンロードし、 game
フォルダに配置します。
この時、PowerShell が無い、または ../lib/windows-i686/python.exe
が存在しない場合、エラーとなるので注意してください。
2. Extract RPA packages
を実行
UnRen.bat を起動し、Enter a number:
が表示されたら、1
を入力して Enter
を押します。
すると game
フォルダ内の .rpa
ファイルがアンパックされ、中の .rpyc
ファイルやリソースファイルが展開されます。
3. Decompile rpyc files
を実行
続けて key to exit:
で 1
を入力し、Enter a number:
が表示されたら、2
を入力して Enter
を押します。
すると game
フォルダ内の .rpyc
ファイルがデコンパイルされ、.rpy
ファイルが展開されます。
Mac/Linux の場合
1. rpatool と unrpyc のダウンロード
Shizmob/rpatool と CensoredUsername/unrpyc をダウンロードします。
2. .rpa
ファイルをアンパック
以下のようなコマンドで rpatool を実行します。
python rpatool -x "アンパックするrpaファイル"
3. .rpyc
ファイルをデコンパイル
同様に unrpyc も実行します。
python un.rpyc "デコンパイルしたいrpycファイル"
注意点
- python2 をインストールしていない場合は Ren'Py に同梱されている Python2 を利用してください。(
./lib/linux-x86_64/python
) - rpatool や un.rpyc に path を通していない場合は相対パスに直してください。
- エラーになってしまう場合、ソースコードをダウンロードして実行するとうまくいくことがあります。
ソースコードを覗く
.rpy
ファイルは普通のテキストファイルなので、好きなエディタで編集できます。
Ren'Py 用の拡張機能がある以下のエディタがおすすめです。