Well, see here's the thing.... I kinda half cheated......... I've been working on Ys VIII for a long time and have a LONG list of notes... so here's what I did.I'm fucking awesome.
Well, my STUPIDITY is fucking awesome.
I knew it. I knew there was a seg1/pointer... thing. I was talking to @monodevil about it a while back, but I couldn't figure out how to implement what I was thinking.
If your strategy can be consistently successful, you just totally broke apart the main issue in Vitacheat code hacking.
In Ys VIII there's an area I know about. It lists all the characters' names and has a pointer to their Stats next to it. I've made pointers using this list before, but everyone else's lists were always in a different area. So I based my code off that area... I'll call it 82001337, because it's the hacking sweet spot there. It's NOT in the seg0/seg1. If I were to follow one of those pointers and add F04 for the offset, I'd have a character's HP. We'll pretend that 82001337 is Adol's Pointer.
So, I loaded a dump into CE. File-> Open a file... -> select dump -> set dump to start at 81000000 and 32bit.
Then I did a normal mem search in CE for addresses inside seg1 that might be pointers to 82001337. Settings are:
Hex [checked]
Value: 81FFD337 - 82001337 (The first value is 82001337 minus 4000. Use calc.)
Scan type: Value between...
Start: Seg1's Address (I'll pretend it starts at 81001000)
End: Seg1's address + it's size. (I'll pretend it was 1000, so this address would be 81001000+1000=81002000)
New search button showed one address (i'll say it's 81FFDAC7).
81FFDAC7 is our pointer. If we use Calc, we can see a couple things.
first: 81FFDAC7 - 81001000 = FFCAC7 This is our offset from Seg1.
second: 82001337 - 81FFDAC7 = 3870 This is our pointer offset.
So, with seg1+FFCAC7, we could go to a new area in memory that's based on seg1's instructions. +3870, we'll be at 82001337 which is Adol's Pointer. +F04 and we'll be at Adol's HP. So then the code would be:
$B200 00000001 00000000
$3202 00FFCAC7 00003870
$3200 00000000 00000F04
$3300 00000000 FFFFFFFF
That's what I did. So I did have some little bit of info to start with, but the important stuff all came from Cheat engine. (and Calc.exe because my hexadecimal maths is limited to 1+9=A....)
Attachments
Last edited by Yohoki,