Nice, im glad it was useful for AC1 too, i wonder if AC2 Brotherhood and Revelations are the similar too (i have them too on ps3 but never looked at their saves, maybe at the weekend) and other AC games for PS3, great work on those scripts
Well to start with i just looked at a save for AC2 and the save was fairly similar to PC but had different headers so i then loaded a save and ran to a different map then saved again and looked at the new save to see what had changed, and a lot had changed, so i did it again with something smaller, like just buying some daggers and this time it was much smaller changes in the save file, but i noticed even if the file stayed the same the header changed between bytes 0x4-0x7 but 0x0-0x3 didn't so this made sense it was the checksum, but with files of different sizes i noticed the first 4 bytes changed and it appeared to be nearly the exact same filesize but -8 bytes so it seemed kinda obvious this was the size of the file minus the checks,
Next i moved onto looking into the checksum, its 4 bytes so it was some kind of CRC32 which is great, the longer the checksum the harder it is to figure out, so i then set around trying all normal algorithms but none worked so my next step was to ask ChatGPT for some ideas and gave it the file so it could examine it and also gave it the checksum since we already knew it and asked it if it could work it out to the checksum i had given it, and ChatGPT claimed it had figured out the checksum and how it was calculated and wrote me a script so i thought i was done, BUT the script didnt work at all, it was just a generic CRC32 script so after trying about 200 times with ChatGPT and got nowhere and nearly broke my keyboard and added about £200 to the swear jar i decided to change tactics and asked me dog if she knew, she just looked at me funny and brought me a ball....... so after that didnt work i started looking into reversing or bruteforcing CRC32's there is a few useful tools out there to help with it, i tried Bruteforcing it first but after hours and constantly changing parameters i was getting nowhere fast so i decided to try some reversing tools until i found one that worked but only on linux so i then had to fix my old laptop to get it into a working state (i could have installed a VM but i thought fixing my laptop would be better) and ran it, it gave me lots of different results because i was first thinking the OPTIONS and .SAV would be the same so i was comparing them which was a stupid move and cost me more hours, eventually after just comparing OPTIONS that had small changes then messing with the parameters of the program (delsum) it was able to figure it out and it worked in game after rebuilding the file manually, then i later did the same for .SAV and now im currently trying to port the program to windows for future use.
Anyway thats how it happened and sorry if i waffled on a little there. And Special thanks to bucanero for the scripts and speeding up my CRC checking method.