xvortex / ps4-dumper-vtx

All-in-one game dumper for PS4
130 stars 28 forks source link

[Feature Request] Add DLC dumping support [now with complete steps to recreate in dumper] #11

Open TheRadziu opened 6 years ago

TheRadziu commented 6 years ago

After game is run, decrypted DLC files are stored in /mnt/sandbox/pfsmnt/CUSAXXXXX_00-DLCID-ac/ directories. If user uses any theme there will be additional -ac directory that DOES NOT MATCH CUSAXXXXX directory of a game user run. Since *-ac/sce_sys/ directories is empty, you have to extract param from /user/addcont/CUSAXXXXX/DLCID/ac.pkg file. so in a nutshell step would be:

  1. Wait for user to run the game (dumper does it right now)
  2. Copy all detected directories [that have same CUSAXXXXX as game that is running] from /mnt/sandbox/pfsmnt/CUSAXXXXX_00-DLCID-ac/ to /mnt/usb0/CUSAXXXXX-ac/CUSAXXXXX_00-DLCID-ac/
  3. Get proper param.sfo for those directories from matching /user/addcont/CUSAXXXXX/DLCID/ac.pkg

This part fully covers dumping DLCs WITH EXTRA DATA.

Now for DLCs WITH NO EXTRA DATA: currently I have no clue where console stores their contentids and/or names. The closest thing I found is: user/home/0000xx/license/regioncode+somenumber_CUDAXXXXX_00.rif (example: EP0002-CUSA07399_00.rif`) you can get all installed contentids from this file and: -skip first contentid in this file since its basegame contentid -skip any contentids that have their -ac directories in/mnt/sandbox/pfsmnt/ and for the ones that do not have their directories: -create new/mnt/usb0/CUSAXXXXX-ac/CUSAXXXXX_00-DLCID-ac/` create subdir sce_sys in it + generate param.sfo file (from hardcoded template) with proper CONTENTID. Title does not matter (it cant be displayed under options -> information -> installed dlcs anyway) so you can name them DLC 1 (and increase this number for every next detected unlock dlc) There is one downside by using this workaround for unlock dlcs - if user had other/any dlcs installed previously it will create DLCs with no extra data despite dlc probably being dlc with extra data since ps4 does store licenses for uninstalled games and dlcs.

I successfully dumped 2 DLCs with additional data and about 10 DLCs without additional data(unlock dlcs) and installed them - they are working just fine.

edit: gengp4 does not support any kind of DLC, so its needs to be updated as well. In the meantime, user can manually create fpkg. image

TheRadziu commented 6 years ago

Updated my request with step by step tutorial that you can recreate in your dumper.

chronoss09 commented 6 years ago

I have the same problem to dump my PSN game Theme on my account, no param.sfo in sce_sys folder...

TheRadziu commented 6 years ago

@chronoss09 extract it from the .pkg then. either on pc or on ps4.

this is not ISSUE THREAD. this is request thread with full writeup!

chronoss09 commented 6 years ago

Sorry, thanks !

xvortex commented 6 years ago

Anyone please provide example content for CUSAXXXXX_00-DLCID-ac folder. I'll include the support into upcoming gengp4

TheRadziu commented 6 years ago

@xvortex do you mean actual files or tree + example sce_sys?

if you meant files I can hook you up with a small example, ported from vita, but 100% working and valid for ps4, so it should be ok for your needs right now, but IDK if you want me to post link in public in here. If you want native ps4 dlc to work on instead, get ready to download 10gb+ package, lol

xvortex commented 6 years ago

You can delete/zero irrelevant files so package should be smaller. I just want to stick w dlc packag creation tests.

TheRadziu commented 6 years ago

sorry for late reply, unexpected vacation trip happened :)

here is small dlc ported from vita, should be enough for your tests: gdrive dl