I'm developing a tool that will allow users to modify the 360/PC version of SA2's Chao save. However, I'm having troubles coding a fix for the hash that the game uses. MainMemory was a big help by providing some nice code on the method used. But I'm still having issues figuring it out (I'm no good at coding for random numbers). With MainMemory's help, I was able to find and confirm the hash location and length, but I'm still not familiar with the algorithm type or the area covered (all of my attempts to incorporate the code MainMemory provided into my source have failed).
I have never fixed anything like this before. I've worked with basic unencrypted checksums and size hashes, but I don't have any experience with this sort of thing. Any help I can get would be great. If I am able to finish my tool (which revolves entirely around making a fix for this hash) I fully intend to make a page detailing the structure and layout of the SA1 and SA2 Chao save files for both 360 and PC.
Here are two example files: SA2 save.zip The hash is located at 0x0000FAA4 and is 8 bytes (64bit).
These files are extracted from the 360 file container; to test them, inject them into a SA2 Chao save with Horizon's package editor (from here) and again with Horizon's device manager inject the entire package into a 360 formatted USB drive.For PC users, I hear that the files I provided are interchangeable with the PC version, but I don't own that version and so I can't test/confirm it. These are not compatible with the PC game, and must be injected into a 360 package in order to use.
I have never fixed anything like this before. I've worked with basic unencrypted checksums and size hashes, but I don't have any experience with this sort of thing. Any help I can get would be great. If I am able to finish my tool (which revolves entirely around making a fix for this hash) I fully intend to make a page detailing the structure and layout of the SA1 and SA2 Chao save files for both 360 and PC.
Here are two example files: SA2 save.zip The hash is located at 0x0000FAA4 and is 8 bytes (64bit).
These files are extracted from the 360 file container; to test them, inject them into a SA2 Chao save with Horizon's package editor (from here) and again with Horizon's device manager inject the entire package into a 360 formatted USB drive.
This post has been edited by Emerald Lance: 23 December 2012 - 01:19 AM


00