A set of patches for the PSV/PS4 Persona games.
xdelta
inPATH
- Python 3
Clone or download this repository, then use patch.py
to apply patches:
patch.py [-h] [--patch [PATCH]] path_in [path_out]
positional arguments:
path_in path to game eboot (in ELF format)
path_out path to patched game eboot
optional arguments:
-h, --help show this help message and exit
--patch [PATCH] patch ids to apply
python .\patch.py .\eboot.bin
Example output:
Found Persona 5 Royal US v1.02 CUSA17416 0102
Available patches:
intro_skip Intro Skip
mod Mod Support
no_trp Disable Trophies
python .\patch.py .\eboot.bin --patch intro_skip mod
Example output:
Found Persona 5 Royal US CUSA17416 0102
Applying patches...
<...>
Applied intro_skip mod
Done
- Persona 5 (PS4)
- Persona 5 Royal (PS4)
- Persona 4 Dancing (PS4/PSV)
- Persona 3 Dancing (PS4/PSV)
- Persona 5 Dancing (PS4/PSV)
The pkg directory in this repo contains some templates you can use to build a custom patch package.
You may need to edit some files to match your version (e.g. param.sfo
, patch.gp4
, etc.)
The general process is:
-
Dump the following files from your game:
sce_sys/npbind.dat sce_sys/nptitle.dat eboot.bin
Replace the dummy
npbind.dat
andnptitle.dat
in the providedpatch/sce_sys/
directory. -
Apply the patches you'd like to use to
eboot.bin
.If
eboot.bin
is not in ELF format, you must convert it to ELF (e.g. using ps4_unfself before applying patches.Place the patched
eboot.bin
in the providedpatch/
directory. -
If you've applied a mod support patch, package the mods you'd like to use into a
mod.cpk
file using your preferred method.Replace the dummy
mod.cpk
in the in the providedpatch/
directory.Alternatively, if you're using the ftp
mod.cpk
method, uploadmod.cpk
to the correct location on the PS4 filesystem. -
Edit
patch.gp4
and setapp_path
to point to your base game package. -
Build the patch package with your preferred tool. When repacking a game update, make sure to also include all other data files that were originally included in said update (e.g.
patch2R.cpk
for P5R v1.02). -
Install the package on your PS4 and boot the game.
-
Dump a decrypted
eboot.bin
andeboot.elf
for your game:- On PS Vita, use FAGDec and decrypt to SELF and ELF.
- On PC, using Vita3K:
- Install the game (and any game patches) - the decrypted
eboot.bin
should then be in the game folder. - Convert
eboot.bin
from SELF to ELF format usingvita-unmake-self
.
- Install the game (and any game patches) - the decrypted
-
Patch
eboot.elf
. -
Backup the original
eboot.bin
. -
Inject the patched
eboot.elf
back into the originaleboot.bin
usingvita-elf-inject
. -
Replace the original
eboot.bin
:- On PS Vita, use rePatch.
- On PC, using Vita3K, overwrite the original
eboot.bin
.