PS3 Apollo save tool (development thread)

Hello @bucanero (Buk).

Indeed, I can confirm that your work has been excellent with APOLLO. Revision 1.5 is perfect. Today, I was able to test the modification of the SAVE of GT5 via the "cheat code" of the "Money" and all is well, the value that I installed (19 990 190 cr) is perfectly taken into account by GT5.
Your software "APOLLO v1.5.0" is very successful now, I have less need to start the PC to make some modifications of SAVE. It only lacks an integrated "cheats" editor to make it perfect.

So many paths traveled, you my friend !!!

A huge THANK YOU.

Kind regards.

Algol "le papy".

glad to hear it worked! :)

regarding the cheat editing, I honestly haven't done much, as all the cheats were taken from the original Bruteforce Savadata tool. More cheats and patches could be added for sure, but that can be done by any user, since Apollo gives all the functionality.

still, since PS3 is almost a "vintage" console, I guess that not so many players will take time to create new cheats for it
 
Bonjour @bucanero.

Ce n'est pas l'objet de ma question que de créer des "cheats". Ma question est de faire l'édition des cheats via un éditeur de textes intégré à "Apollo Save Tool". C'est plus pratique et rapide de le faire par la PS3 que par un PC via les Tools d'Aldo.

Cordialement.


In English via G-Trad :

It is not the object of my question to create "cheats". My question is to edit the cheats via a text editor integrated into "Apollo Save Tool". It is more practical and faster to do it with the PS3 than with a PC via Aldo Tools.

Cordially.
 
How it looks the format of that cheat files btw ?, can someone post a link or a sample of some of them ?

you can open any .ps3savepatch file from Apollo (or from Aldo's BSD), for example:
https://github.com/bucanero/apollo-ps3/blob/master/appdata/BLES00705.ps3savepatch
more files here: https://github.com/bucanero/apollo-ps3/blob/master/appdata/

both GameGenie and Bruteforce Savedata formats are supported. Here's some information about those formats:
https://github.com/bucanero/apollo-ps3/wiki/BSD-ps3savepatch-file-format
https://github.com/bucanero/apollo-ps3/wiki/Game-Genie-code-format

to find cheats, the usual process is to compare save-games files, and find the specific area for certain values. E.g., you have a save with $300 coins, then another save with $250 coins. If you find the file offset where the money is stored, you can create a patch for $999999 coins.
 
Last edited:
you can open any .ps3savepatch file from Apollo (or from Aldo's BSD), for example:
https://github.com/bucanero/apollo-ps3/blob/master/appdata/BLES00705.ps3savepatch
more files here: https://github.com/bucanero/apollo-ps3/blob/master/appdata/

both GameGenie and Bruteforce Savedata formats are supported. Here's some information about those formats:
https://github.com/bucanero/apollo-ps3/wiki/BSD-ps3savepatch-file-format
https://github.com/bucanero/apollo-ps3/wiki/Game-Genie-code-format

to find cheats, the usual process is to compare save-games files, and find the specific area for certain values. E.g., you have a save with $300 coins, then another save with $250 coins. If you find the file offset where the money is stored, you can create a patch for $999999 coins.
I asked about it because i was thinking in @Algol suggestion about allowing the user to create (or only edit) that .ps3savepatch files

He mentioned a complete text editor (managunz have one btw, but is only viewer, it doesnt allows to edit and save the changes)
But i was wondering if it could be made in a more simple way, the idea is to prepare an screen specific for it in one of the apollo menus where appears some "fields" that the user can select (with the d-pad), and then click in them to make appear the "on screen keyboard" to enter any values in them

Im looking at the .ps3savepatch and some differs too much from the others... so im not so sure if it can be made so simple as i imagining it :D
Never mind, it was just an idea

*Btw, irisman have a hexeditor (allows to view, edit, and save files)
 
I asked about it because i was thinking in @Algol suggestion about allowing the user to create (or only edit) that .ps3savepatch files

He mentioned a complete text editor (managunz have one btw, but is only viewer, it doesnt allows to edit and save the changes)
But i was wondering if it could be made in a more simple way, the idea is to prepare an screen specific for it in one of the apollo menus where appears some "fields" that the user can select (with the d-pad), and then click in them to make appear the "on screen keyboard" to enter any values in them

Im looking at the .ps3savepatch and some differs too much from the others... so im not so sure if it can be made so simple as i imagining it :D
Never mind, it was just an idea

*Btw, irisman have a hexeditor (allows to view, edit, and save files)

Maybe some people is not familiar with it, but webMAN MOD has a memory and file viewer (/hexviewer.ps3).
The file viewer is very convenient to view large files without download them. It also has a md5 checker.

For the memory viewer it is very convenient to check if a patch was applied in a process.
To use it go to /getmem.ps3mapi, select the process to view and navigate with the arrow keys from the PC.
It also allows to change the memory like Artemis.

I mention it because these tools can be handy for save patch creators.

Another tool that may be handy is the web command /edit.ps3<file-path> it allows to edit **small** text files stored in the PS3.
Small means 1.2KB or less. Many save patch files are smaller than that :)
 
Bonsoir vous tous.

Je n'ai pas modifié le patch pour la SAVE de GT5 sans connaître l'endroit où est indiquée la valeur à introduire. Pour moi, la valeur décimale de "19 990 100" est une valeur phare (laissant un peu de marge) en sachant que la valeur maximale décimale des crédits de ce jeu est de "20 000 000".
J'ai laissé une première fois se mettre en place la valeur d'origine du patch, lancé le jeu, vérifié la quantité, vu qu'elle était trop forte, cherché la correspondance en Hexadécimal (par comparaison), remplacé celle-ci par la correspondance des "20 000 000" en Hexadécimal et mise au bon endroit via l'éditeur de "cheats" de Aldo.

Si l'on peut se passer de l'éditeur de Aldo (sur PC) pour faire cette petite manipulation via la PS3, alors c'est gagné.


In English via G-Trad :

Good evening you all.

I did not modify the patch for the GT5 SAVE without knowing the place where the value to be introduced is indicated. For me, the decimal value of "19,990,100" is a flagship value (leaving a little bit of margin) knowing that the maximum decimal value of credits in this game is "20,000,000".
I let the original value of the patch set up for the first time, started the game, checked the quantity, since it was too high, looked for the correspondence in Hexadecimal (by comparison), replaced it by the correspondence of "20,000,000" in Hexadecimal and put in the right place via the editor of "cheats" of Aldo.

If we can do without the editor of Aldo (on PC) to do this little manipulation via the PS3, then it's won.

Cordialy.
 
Maybe some people is not familiar with it, but webMAN MOD has a memory and file viewer (/hexviewer.ps3).
The file viewer is very convenient to view large files without download them. It also has a md5 checker.

For the memory viewer it is very convenient to check if a patch was applied in a process.
To use it go to /getmem.ps3mapi, select the process to view and navigate with the arrow keys from the PC.
It also allows to change the memory like Artemis.

I mention it because these tools can be handy for save patch creators.

Another tool that may be handy is the web command /edit.ps3<file-path> it allows to edit **small** text files stored in the PS3.
Small means 1.2KB or less. Many save patch files are smaller than that :)
Là, je suis bluffé. Je ne connaissais pas ces commandes.
Je peux les utiliser via le PC connecté en réseau à la PS3 ???
 
now that I've got a fat PS3 (with 2 USB ports) for improved development, I saw an unexpected thing:

the left USB port is "/dev_usb006", and the right port is "/dev_usb000" :confused:

I always assumed that the 2 frontal ports were "/dev_usb001", and "/dev_usb000", but it seems that it's not true for every ps3 model.
I'd like to confirm how the USB ports are mapped across ps3 versions (fat, slim, super slim) so I can improve Apollo's usb options.
 
thanks @Berion @DeViL303 for the confirmation

btw, dev_usb002, dev_usb003, usb004, usb005 exists only on those fat PS3 launch models?

I'll try to scan them all when the user selects Apollo's "USB saves" menu :)
 
thanks @Berion @DeViL303 for the confirmation

btw, dev_usb002, dev_usb003, usb004, usb005 exists only on those fat PS3 launch models?

I'll try to scan them all when the user selects Apollo's "USB saves" menu :)

from what I remember, slims are just 000, 001, and 006 if using a hub. I don't know if other hub ports make up those other assignments. I think it goes up to dev_usb007 or at least that's as far as it goes with package installs in the category_game.xml of the flash. I think there might be more, but I've never really had that much plugged in at one time. right now, in fact, I have no usb drives plugged in, just the internal hdd for all my games.
 
I have been working on some of those additional tools that were related to BSD (custom decrypters, checksum fixers)

I've reversed for posterity some of those helper tools and now Apollo can handle:
- Resident Evil HD Remaster encryption (blowfish ECB)
- Resident Evil Revelations 2 encryption (blowfish ECB)
- Resident Evil Revelations 2 checksums (DWADD, and SHA1)
- Prototype 1 & Prototype 2 checksums (custom CRC32)
- Dead Space 2 & Dead Space 3 checksums (SDBM hash)

as usual, credits to the original authors for their tools (RedEyeX32, forjador123, @pink1 ).

To handle Dead Space 2/3, I've added a new sdbm hash type to the BSD command list. Notes about the hash function: http://www.cse.yorku.ca/~oz/hash.html#sdbm

For sure, having the source code would have made things easier! ;) but I still had a lot of fun decoding and learning :D

btw, I was surprised to see that Prototype 1 and Prototype 2 are actually using the ICON0.PNG as part of their security checksum! nice find @pink1 ! probably the only games that are doing it too :D
for the record: the game uses the icon0.png to calculate a first crc32, then uses that result as initial crc32 value for the next file.
 
The Orange Box is doing something weird with the ICON0.PNG files (it have several, some are specific for the saves) and the PARAM.SFO (is storing special data, very unusual)
Is related with security and encryptions, as far i remember if you modify the ICON0.PNG the game refuses it and doesnt works

If some of you have the game try apollo with it, im guessing is not going to work because what this game does is a bit hardcore, it seems someone in valve team was a bit paranoid :D
gabe_newell_meme-580x334.jpg
 
I made a .PSV save with psv-converter-win but when I tried copying it back to the PS3 it said the save was copy protected.
I instead inserted it into a Mcd001.ps2 from pcsx2 an replaced the memory card1 file & then it was valid on the PS3 on the next reboot, from their I exported the save to a fresh .PSV, i've uploaded both .PSVs for comparison.
 

Attachments

I made a .PSV save with psv-converter-win but when I tried copying it back to the PS3 it said the save was copy protected.
I instead inserted it into a Mcd001.ps2 from pcsx2 an replaced the memory card1 file & then it was valid on the PS3 on the next reboot, from their I exported the save to a fresh .PSV, i've uploaded both .PSVs for comparison.

thanks for the report. :encouragement:
I assume that the original PS2 save was copy-protected, and the protection was still present when the container .PSV file was built by the psv-converter tool. I'm not an expert on the PS2 save format, but I think that the copy-flag could be removed before building the .PSV to avoid this issue.
 
The Orange Box is doing something weird with the ICON0.PNG files (it have several, some are specific for the saves) and the PARAM.SFO (is storing special data, very unusual)
Is related with security and encryptions, as far i remember if you modify the ICON0.PNG the game refuses it and doesnt works

oh, I had no idea about that either :D but I guess that adding the icon0 in the security mix is a valid choice if you want to avoid any tampering even with the icon, because that file can't be added to the PARAM.PFD so you need to "protect it" from the game side.
 

Similar threads

Back
Top