Join Us and become a Member for a Verified Badge to access private areas with the latest PS4 PKGs.
PS5 CFW and Hacks       Thread starter PSXHAX       Start date Feb 9, 2024 at 9:41 AM       19      
Developer idlesauce on Github released a PS4 / PS5 EBOOT DLC Patcher Python Script crediting @jocover for discovering the functions used to load DLCs intended for use with PlayStation 4 Fake PKGs running on Exploited PlayStation 5 consoles where the PS4 DLC FPKGs currently aren't working. 🤩

Download: ps4-5-eboot-dlc-patcher-main.zip (includes eboot_patcher.py) / GIT

@BedroZen reports on Twitter he's already working on some patched PS4 games, with further details from the accompanying README.md: PS4-5-EBOOT-DLC-Patcher

:alert: This project is very much in an experimental stage. Dont expect it to be reliable. :alert:

Patches sceAppContentGetAddcontInfoList, sceAppContentAddcontMount and sceAppContentAddcontUnmount calls in the eboot to load dlcs from the same pkg. This is made for PS4 fpkgs, running on PS5, where dlc fpkgs don't work, although I guess it might also be useful for games where the main game is unlocked with dlcs so it can all be in one pkg (like some telltale games).

This is a quick and dirty script and its also not the best way to achieve this, since it needs strings (of a certain minimum length) that are not important, which means its possible some games wont work with this. If I have time I might update this with a better method.
Usage:
  1. Extract eboot.bin from update (or base pkg if you dont have an update) and un-fself it.
  2. Load eboot.elf in IDA (Make sure you select PS4 - Main Module - ASLR type when opening, if you dont see this option the eboot.bin might be an fself still)
  3. Wait for analysis to finish. The bar at the top should be mostly blue (Regular functions)
  4. Go to File->Script file... and select the python script from this repo.
  5. Follow the instructions, if you see Patching complete you're good.
  6. Extract all files from the update pkg.
  7. Replace the eboot.bin from the extracted update pkg's Image0 folder with our patched one (rename to eboot.bin)
  8. During the patching process you were asked to input a list of content ids. In the extracted update's Image0 folder, create new folders named the content ids (these folders should be in the same folder where the eboot.bin is.), and copy in the contents of the respective dlc's Image0 folder.
    Code:
    GEDLC00000000001
    TRAUMAPACK000000
    GEPREDLC00000001
  9. Repack update pkg and you're done
Notes:
  • You can use Modded Warfare's Patch Builder to get the content id, it'll look something like this:
Code:
Content ID: UP0102-CUSA18017_00-GEDLC00000000001
You need the last bit from it:
Code:
GEDLC00000000001
Credits to jocover for discovering the functions responsible for loading dlcs.

Spoiler: Related Tweets
PS4 PS5 EBOOT DLC Patcher Python Script for FPKGs by IdleSauce.jpg
 

Comments

Hello~ Thank you so much for this new insight :)

After I copy over the PS4 modules files into the root of my IDA folder, whenever I run IDA I get the warning message: IDAPython: error executing init.py: DLL load failed while importing _ida_loader: The specific file could not be found.

This warning message only happens after copying the PS4 module files. After I click okay, it opens the IDA but when I click the eboot.elf file, the option of 'PS4 - Main Module - ASLR' does not show :(

any ideas what could be the problem? I'm on IDA 7.5.

Thank you in advance :)
 
@kimchisoo2 In the PS4 MODULE LOADER archive you have a phyton folder and in this you have another folder named (3) you have to take all the files from this folder and copy them directly to the python folder without having the folder named 3

P.s : sorry for my bad english
 
Although I did get IDA to work with your method @hyndrid, there seems to be an error in the final step of building the package through patch builder :
Code:
ERROR: .*\src\sbl\host\make_fself\gen.c:eek:verwriteSelfInfo(469) illegal elf ex info 0x57

ERROR: .*\src\sbl\host\make_fself\gen.c:genSelfCfg(627) overwriteSelfInfo -38

ERROR: .***\src\sbl\host\make_fself\gen.c:sceSblSelfGenGenSelf(1038) genSelfCfg -38

[Error] Could not convert elf file. (eboot.bin)
Can anyone help? :cry:
 
Back
Top