• Welcome to SCdev.org. Please log in.

Welcome to the new SCdev forums!

Lost Magic save hacking

Started by charachu, April 30, 2006, 03:02:54 PM

Previous topic - Next topic

charachu

i've opened up the save in my hex editor but it's all gibberish...most games usually have data that's a little more coherent.

i've made a few changes that don't seem to have done anything, but it didn't get my save deleted, so either you have to change something significant, or there may not be a checksum for this game.

anyone have ideas or have tried anything yet?
O

joeglens

So far this what i have found out

address 0x120 is the start address of the first save slot
address 0x14D is your current level
address 0x150 to 0x155 is your magic exp and level and divisible by 10 with level 1 at 0, level 2 at 10, and so on

address 0x3C0 is the start address of the second save slot

address 0x660 is the start address of the third save slot

then there are back-ups in case the upper save slots are corrupted

address 0x1120 1st save slot
address 0x13C0 2nd save slot
address 0x1660 3rd save slot

So here is how it works base on fiddling with it. The save is protected by some kind of checksum which i suspect is the first 2 bytes of the start address but i dont know yet how it works, but swapping bytes here wont work unlike other game saves. If the upper save is corrupted it will read the back-up. If both are corrupted it will post an error and delete the corrupted save slot only.

I will have to experiment on the mechanics of the checksum. I hope everybody here can help me with this one

And i also hope its some kind of generic checksum that is also being used by other games such as Tao's adventure which byte swapping also wont work.

shark2003

Quote from: "joeglens"So far this what i have found out

address 0x120 is the start address of the first save slot
address 0x14D is your current level
address 0x150 to 0x155 is your magic exp and level and divisible by 10 with level 1 at 0, level 2 at 10, and so on

address 0x3C0 is the start address of the second save slot

address 0x660 is the start address of the third save slot

then there are back-ups in case the upper save slots are corrupted

address 0x1120 1st save slot
address 0x13C0 2nd save slot
address 0x1660 3rd save slot

So here is how it works base on fiddling with it. The save is protected by some kind of checksum which i suspect is the first 2 bytes of the start address but i dont know yet how it works, but swapping bytes here wont work unlike other game saves. If the upper save is corrupted it will read the back-up. If both are corrupted it will post an error and delete the corrupted save slot only.

I will have to experiment on the mechanics of the checksum. I hope everybody here can help me with this one

And i also hope its some kind of generic checksum that is also being used by other games such as Tao's adventure which byte swapping also wont work.

Does anyone know how to find the Checksum in Castlevania-Dawn Of Sorrow :?:  I know where all the stats are,but if I change any of them it corrupts the save.

charachu

ooo..didn't know about the backup save part.  would explain why any changes i made didn't appear though. thanks, that was useful.  now to figure out how to use this information..
O

shark2003

Quote from: "charachu"ooo..didn't know about the backup save part.  would explain why any changes i made didn't appear though. thanks, that was useful.  now to figure out how to use this information..

Yeah,do a search on some of my posts and read the stuff I was getting crazy over...LOL then someone pointed me to Dipstar...and well...I got lost from there...but yeah,there is....I guess...some ridiculous checksum on DS saves,no one knows the formula and probably never will unfortunatley... I am not a programmer or coder...just want to get through those tough spots in games... I tried this for weeks with a hex editor and posting on forums and anything I could think of...no one had an answer....

shark2003

Quote from: "joeglens"So far this what i have found out

address 0x120 is the start address of the first save slot
address 0x14D is your current level
address 0x150 to 0x155 is your magic exp and level and divisible by 10 with level 1 at 0, level 2 at 10, and so on

address 0x3C0 is the start address of the second save slot

address 0x660 is the start address of the third save slot

then there are back-ups in case the upper save slots are corrupted

address 0x1120 1st save slot
address 0x13C0 2nd save slot
address 0x1660 3rd save slot

So here is how it works base on fiddling with it. The save is protected by some kind of checksum which i suspect is the first 2 bytes of the start address but i dont know yet how it works, but swapping bytes here wont work unlike other game saves. If the upper save is corrupted it will read the back-up. If both are corrupted it will post an error and delete the corrupted save slot only.

I will have to experiment on the mechanics of the checksum. I hope everybody here can help me with this one

And i also hope its some kind of generic checksum that is also being used by other games such as Tao's adventure which byte swapping also wont work.

I looked at these address' with a hex editor and even changed a few things,but nothing was matching up with any of the stats I had (after the hex conversion of course) is there any place else where these might be stored. I was looking at my save .dat file because I am using M3. Is there something else I need to do to truly see things right? Have you figured out the checksum so that the save file can be altered?