You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
For GBA Action Replay v3 pointer codes, currently only the 32-bit pointer codetype is working properly. The 8-bit and 16-bit pointer codetype aren't functioning as intended and may even crash mGBA. This has to do with the address offset (available on 8/16-bit type).
Write to the [address located in base address] + offset.
The current calculation: address = _readMem(device->p, address + cheat->addressOffset, 4);
This is adding the offset to the base address.
But instead, we should be reading the base address first, and adding the offset to that. Something like: address = _readMem(device->p, address, 4) + cheat->addressOffset;
The text was updated successfully, but these errors were encountered:
I think perhaps Pokémon Emerald/FireRed/LeafGreen would have the most pointer codes. To counter cheat devices, some sensitive data in these games dynamically moves around, but the pointer codetype can tap the game's own pointers to accurately target the data.
An old Codejunkies (M) code targeted the game's item encryption key using: 38EBB91D 36FE8458 BCF15887 85F2256A
but it was removed since erasing the CryptKey messed up bag item quantities, rather than their intention to decrypt them.
The CryptKey address if made static is 0x02024B00.