enriquesomolinos / pkgRipper

Removes content from PS4 pkg files
GNU General Public License v2.0
95 stars 5 forks source link

[Error] Format of the project file is not valid. (<volume_ts>) #8

Open CorruptedKnowledge opened 2 years ago

CorruptedKnowledge commented 2 years ago

Bloodborne, CUSA03173 // CUSA00900 I have been getting this error with different .pkg files from different sources. What is it, and how do I fix it? There seems to be very little to no information about this Error that I could find and understand. Is there anything that could be done?

Extracting pkg ......................................................................................................................[Warn] Output of the command may contain confidential information. [Debug] Image extract succeeded.

Pkg extracted correctly Patching files Patches applied successfully [Error] Format of the project file is not valid. ()

enriquesomolinos commented 2 years ago

@apaxc , maybe you need to download the Fake pkg tools another time, because it seems that they are an outdated version

PhR34x0r commented 2 years ago

Dont think thats the problem. I get the same message with Apex Construct and Update 2.02, after several successful patches with other games. Fake PKG Tools 3.87 V5

Extracting pkg ................[Warn] Output of the command may contain confidential information. [Debug] Image extract succeeded.

Pkg extracted correctly Patching files Patches applied successfully [Error] Format of the project file is not valid. () UP3046-CUSA10860_00-0000000000000000.zip

PhR34x0r commented 2 years ago

Same also with Red Matter and Update v1.03 UP3548-CUSA14553_00-0000000REDMATTER.zip

and also Smash Hit Plunder and Patch 1.03 UP0864-CUSA11263_00-SMASHHITPLUNDER1.zip

Seems hower it IS a problem caused by certain games only that needs to be handled by the underlying PKG tools, so probably nothing that can be fixed within PKGRipper. Googled for some time now, other ppl having the same issue with absolutely zero confirmed or even suggested solutions :-/ Guess we'll have to live with it for the time being. Maybe its possible to mark those games as "unrippable" somewhere...

PhR34x0r commented 2 years ago

Ok i couldnt let this rest, so i installed the affected packages as they were, then re-dumped them myself and viola: they now play along with PKGripper. Removed and reinstalled the games from said rips - quick gameplay test, everything works fine. So whatever the cause of this error is, its probably nothing substantial with the gamefiles themselfs, but rather something in the way the FPKG was created that the tools dont like. Since noone on the net has a better solution (or any at all that i could find) i suggest to close this issue and put a note somewhere on the mainpage what to do in case of this error (unless you find a way that pkgripper makes the fpkg tools override and just ignore this).

CorruptedKnowledge commented 2 years ago

I am a little late to respond but, when you downloaded the fpkg files did you get them from dsplgame.org?

It seems that this problem affects me but not others, as I have asked about it and read around that people, are getting these to work just fine with downloads from dsplgame. (Also a game that I couldn't update and some DLC selectively instaslled NIOH 2) So the way I got it fixed was to use a different sites fpkg files as a test at first but soon realized that it actually worked. The working site being ps4pkg.com

This problem at least for me is very random and some games work flawlessly when downloaded from dspl. The biggest problem that I had was the update and DLC files, which for some unknown reason don't work that no one seems to be able to answer. Game updates and DLC giving the error code CE-34878-0

PhR34x0r commented 2 years ago

I got them from various sites, including the one you mentioned, but couldnt tell now which ones from where. However since it only affected you AND you couldnt even install them, i would assume the files got corrupted somewhere along the way (maybe on the network or on your harddrive). The reason why it works when you get them from a different site could also be because the files are not exactly the same but just somewhat different in the right way, maybe created with other tools, just like when i re-created them myself.

If the original base files wont even work on the PS4, i wouldnt bother with them and just redownload, if possible a different release from a different source. Although we still dont know what the actual problem is, it doenst seem to be a PKGRipper issue since the PS4 itself cant handle these files either.

PhR34x0r commented 2 years ago

Ok so i finally figured out the problem by manually doing the build steps in the underlying fake PKG tools. Luckily the culprit is only in the generated .gp4 file. This could be easily fixed via PKG Ripper if it just parses this file itself before handing over the build to the fake pkg tools.

So far what i gathered, what needs to be set in the apps gp4 file:

<volume_ts>2022-04-21 00:00:00</volume_ts>  -- the date sometimes is 1944, just set it to current date
<package content_id="EP9000-CUSAxxxx_00-xxxxxx" passcode="00000000000000000000000000000000" storage_type="digital50" app_type="full"/> -- this line sometimes contains a "c_date=xxxxxx" string at the end - remove it
  <scenarios default_id="0"> -- this sometimes is set to 1, dont know the meaning but it seems to only work with 0

What needs to be set in the patch gp4 file:

<volume_type>pkg_ps4_patch</volume_type> -- replace _app with _patch
<volume_ts>2022-04-21 00:00:00</volume_ts>  -- the date sometimes is 1944, just set it to current date
<package content_id="EP9000-CUSAxxxx_00-xxxxxx" passcode="00000000000000000000000000000000" storage_type="digital25" app_type="full"/> -- replace digital50 with digital25 and if a "c_date=xxxxxx" string is present - remove it
  <scenarios default_id="0"> -- this sometimes is set to 1, dont know why but setting it to 0 fixes it

Alternativley, if there just was a pause-option before the build starts (as already requested by a different user), this could be done manually in the rare cases necessary. @enriquesomolinos could you implement this? Just a quick, popup message after extracting with "click ok to continue"