3 ms·
How would you figure out which memory location stored a given thing, e.g. # of lives?
by CoastalCoder 3y ago
How would you figure out which memory location stored a given thing, e.g. # of lives?
- wwalexander 3y agoAFAIK Cheat Engine[1] is the standard approach. There are some cool tutorial videos on YouTube. [1] https://www.cheatengine.org/ https://www.cheatengine.org/
- mewpmewp2 3y agoI remember there were tools where you filtered all the matching values, then went back to game and played a little, came back filtered again, until one value stood out.
- coldpie 3y agoIndeed. I wrote an article a while back showing this in action with a Gamecube game running in an emulator: https://www.smokingonabike.com/2021/01/17/hacking-super-monkey-ball-part-1-banana-bunch-values/ https://www.smokingonabike.com/2021/01/17/hacking-super-monk...
- im3w1l 3y agoI remember doing this with the built-in tool of some emulator. They would let you filter by exact match and you could filter it down again after changing the value (losing a life). But for stuff where exact matching wasn't practical like say a more or less continous health-bar, you could instead filter by searching for values that decreased / increased / didn't change. Of course you would also have to guess at the data type but there weren't that many likely choices.
- cassianoleal 3y agoThis is it. You'd mark the memory locations, go back to the game, repeat the search and filter down. Either that, or you'd just go about trying one by one until you found it, then tried to figure out a pattern of what was around it and make notes on a paper for next time.
- gopher_space 3y agoHex editor with Ultima III I think we’d search for our character name and then start twiddling values until mom called us for dinner.