-
Notifications
You must be signed in to change notification settings - Fork 2.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
I need some advice how 3rd line or more(maybe) Pointer works #20073
Comments
First let's go over the cheat format:
Then the explanation for how the pointer cheat works:
(Very likely I made a mistake somewhere.) In my experience (which is not a lot), pointers to emulated memory like this are complicated to work with in Cheat Engine. In a single cheat entry we can only go as far as resolving the pointer base. Then we would have to add a second cheat entry with the address you get from the first cheat entry. Eg:
or:
However, because pointers are dynamic, the address from your first cheat entry can change at any time (usually when you die or switch levels). This means you have to recreate your second cheat entry every time that happens. As far as I know the only way to correctly work with pointers throughout multiple sessions requires writing Lua scripts. See my example: @LunaMoo might know of a better solution. Anyway this kind of question should go onto the Forums (or Discord server). |
Better solution is to not use pointers at all, but to modify game code to do what we want and only use CWC to inject our code. People think it requires a lot of learning, but it's not true, basics of low level programming + a cheat sheet with MIPS opcodes is enough. |
Sadly there isn't a comprehensive documentation (in English), that is something we should consider writing up a page for on the website. Your best bet is reading the source code of how PPSSPP interprets the CWCheat commands here Line 516 in ecbbadd
Line 871 in ecbbadd
From here we find that there is no |
I already mastered how pointer works on ps2 cbv7 even the 3rd line but cwcheat works differently and no source of that format to understand
not sure if is same as codebreaker for normal format
_L 0x6AAAAAAA 0xVVVVVVVV
_L 0x000Y0001 0xIIIIIIII
but 3 line is different
_L 0x200002B4 - plus 2B4?
0x00001A34 - offset?
working example from database
_C0 Infinite Health
_L 0x6027B850 0x00007530
_L 0x00020002 0x00001A34
_L 0x200002B4 0x00000000
0x027B850 + 08800000 = 8A7B850 is pointer at 08FB7780 ?
The text was updated successfully, but these errors were encountered: