Tutorial PoC: how to decrypt (and unpack) SRPGStudio data.dts if it is encrypted

notamuted

Newbie
May 12, 2018
76
71
Well, that's what the SRPG manual says ( )
system.dat
This file contains a value that uniquely identifies the creator of the project.


And because it's 16 bytes long, it's safe to call it UUID (Universally Unique IDentifier, but MS likes to call it GUID, Globally Unique IDentifier).
Not sure about that, I think the "handle" is just a simple struct pointer. But okay.

Anyway, I've implemented your method in GR, it should work work with Oathbreaker too. Could you give it a spin and report back? I double checked the code, but I couldn't test it myself.
Yup. It works (y)

But, I have a bug to report...
I compared the outputs of Gameripper and (with manually provided key) - and there is a difference. It seems Gameripper misses some images and can't properly process foldered(?) images (extracts only the first file). I've attached `tree` outputs for both results.
View attachment GameRipper_datadts_list.txt
View attachment HNIdesu_datadts_list.txt
 
Last edited:

justaplayer69

Member
Nov 29, 2023
294
341
It seems Gameripper misses some images and can't properly process foldered(?) images (extracts only the first file). I've attached `tree` outputs for both results.
Unfortunately I can't see anything on those outputs because they use some weird codepage. Multiple subfolders shouldn't be a problem, I've tested that and it works.
Could you please run it as "gameripper.exe -vvv" and attach the generated gameripper.log file here?
 

justaplayer69

Member
Nov 29, 2023
294
341
The files appear broken if opened in browser. If you download them and open in notepad or other text editor they'll look normal.
Sure
Thank you very much for your feedback and the provided logs! Thanks to that, I was able to figure out what's going on.

It seems this wasn't a folder issue per se, rather some images might have color variations (for charachips this means different cloth colors; for backgrounds a variant at day, at night, at afternoon etc.). So far only the first variation was saved, but I was able to implement this and now these are saved in a folder as XXXX.png (where XXXX is a number) just like how the java app does.

I've updated the attachments in the GR post and the binaries in the gitlab repo as well! Thanks again!
 

notamuted

Newbie
May 12, 2018
76
71
I've updated the main post with a new information we got there and added links to the known (to me) extraction tools
 

justaplayer69

Member
Nov 29, 2023
294
341
I've updated the main post with a new information we got there and added links to the known (to me) extraction tools
Thanks, awesome! And thanks again with the custom key stuff!

If you run into any troubles with a specific game or SRPG gets updated with new methods, just let me know and I'll fix / keep GR up to date.
 

notamuted

Newbie
May 12, 2018
76
71
Thanks, awesome! And thanks again with the custom key stuff! If you run into any troubles with a specific game or SRPG gets updated with new methods, just let me know and I'll fix / keep GR up to date.
You're welcome! I myself was curious about the key.