RPCS3 / rpcs3

PS3 emulator/debugger
https://rpcs3.net/
GNU General Public License v2.0
15.26k stars 1.9k forks source link

Unable to unlock the full version of trial games with edats #7066

Closed benderscruffy closed 3 years ago

benderscruffy commented 4 years ago

most games that use edats are unable to unlock the full version eg Rush'N Attack Ex-Patriot Demo [NPUB30112] Time Machine: Rogue Pilot Demo [NPUB30474] and before people start i know you can rename the edats to raps but that is not the proper way

Margen67 commented 4 years ago

Duplicate of #3097.

benderscruffy commented 4 years ago

yes but that one is closed and they have not reopened it

blackstade commented 4 years ago

Just wrote an an post regarding these in the rpcs3 forum for NPUB30505 Castlevania, seems like sth wents complete wrong with these c00 (demo) games, to summ it up u can download these games for officialy for free, even without an ps3, since u get the downloadlinks for the pkg from the psn store. To unlock these games u need to buy them what gives u another pkg containing an edat, for these then an rap exists (for that u actually need a ps3). in the example of Castlevania NPUB30505 these files would look like UP0101-NPUB30505_00-CASTHARMONYOFDES.pkg gamedemo UP0101-NPUB30505_00-CVHDZDLCZUNLOCKZ.pkg pkg with just an edat to unlock the game UP0101-NPUB30505_00-CVHDZDLCZUNLOCKZ.rap license belonging to unlock pkg. The big problem now is, the game just checks if the rap file exists, it doesnt matter what is insidethe rap file, thats why the renaming thing of the edat works like in https://github.com/RPCS3/rpcs3/issues/3097 described. It even can be an empty stub, aslong the name is correct. So basicly we have alot of demo games which are legally obtainable by just signing up on the psnstore (no need for an ps3 and) are unlockable for free with 0 effort on the one side and on the other side all demos who try to decrypt some sprx or edat files at some point crashes.

To summ this up at some point rpcs3 doesnt handle c00 games right.

Gonna link my forum post which describes this issue when its approved.

Shoegzer commented 4 years ago

@blackstade I was not able replicate the issue with empty stub rap files, at least with the Zen Pinball 2 DLC "Balls Of Glory Pack" that I tested. This DLC has the following files:

UP4042-NPUB30573_00-ZENPINBALL2FOX00_bg_1_6a00e89544d6c710c84320fac5d5b18e28f96735.pkg (152MB file that I assume is the actual game package)

UP4042-NPUB30573_00-ZENPINBALL2FOX0K_bg_1_9d6987c2960b008bf881ed786e5d2911fefa5d81.pkg (100K file that I assume is the unlock package)

I installed the game package first. Then I installed the unlock package which installs two edat files (fox01.edat and license.edat) to the game directory. However this causes Zen Pinball 2 itself to freeze before loading.

According to rpcs3 logs, the game looks for a rap file called "UP4042-NPUB30573_00-ZENPINBALL2FOX0K.rap" I created an empty stub rap file with that name and put it in exdata, but the game still freezes. I believe it needs the actual rap file to stop freezing and go ingame again with the unlocked DLC unless I'm missing something?

13xforever commented 4 years ago

yes, you're missing your license for unlock dlc, which you should have if you follow the quickstart guide

Shoegzer commented 4 years ago

@13xforever Thanks and you're certainly right, assuimng you're referring to the guide's statement that you can get the rap license file through the rif and act.dat etc. I realize that can be done, I was just testing the theory that any empty stub rap would work, and at least in this case it doesn't.

piratesephiroth commented 3 years ago

@blackstade I was not able replicate the issue with empty stub rap files

He stated that it's a quirk specific to c00 demos, not DLC.

Shoegzer commented 3 years ago

May want to check this one against master which merged #10581 and close if possible.

AniLeo commented 3 years ago

Yeah, this issue was solved, safe to close.

piratesephiroth commented 2 years ago

That pull request #10581 is locked so we can't reply anymore but the interesting part is that it's an innacurate implementation. A real PS3 works as @blackstade wrote above: it doesn't require a .rap file for unlocking C00 demos because it never reads the contents of the .edat, it only checks for its existence.