View previous topic :: View next topic |
Author |
Message |
CertifiedPyro How do I cheat? Reputation: 0
Joined: 16 May 2024 Posts: 3
|
Posted: Thu May 16, 2024 12:50 am Post subject: Help with finding pointer to structure |
|
|
Hi, I'm trying to create a LiveSplit autosplitter for a Unity game called Chants of Sennaar. I'm trying to look for the pointer to the GameController instance, and I've done the following:
1. Mono > Dissect Mono > go to Assembly-CSharp > find GameController
2. Right click and do Data Structure > Dissect Stucture, and "Find instances of class"
3. Find the correct instance, and copy address into the "Structure Dissect" window
4. Find a field, in this case a float called clockTime, and right-click > "Add to address list"
5. In the main Cheat engine window, do "Generate pointermap" and save the file
6. Repeat several times after quitting and reopening the game
Then, I'm doing a pointer scan on address 1, using the saved pointermap for address 1 and comparing results with the other pointermap/address pairs I have. After this, I do some slight filtering to only include results from "UnityPlayer.dll".
The problem is that I still have about 700 results, and I don't know how to filter them down. I've tried a couple of the pointers, but they ultimately have issue after opening/closing the game a couple of times. Is there a way to filter based on offsets and pointers from the address in the pointer scan table? For example, the value for `GameController` at +0x90 > +0x38 > +0x20 should be X. Thanks!
|
|
Back to top |
|
|
Dark Byte Site Admin Reputation: 465
Joined: 09 May 2003 Posts: 25509 Location: The netherlands
|
Posted: Thu May 16, 2024 3:55 am Post subject: |
|
|
There are multiple paths to go to a destination. Same goes for pointers, but best pick the one with the least amount of offsets so random stuff is less likely to interfere
tip: sort by offsets, the path with the lowest amount will end up at top
_________________
Do not ask me about online cheats. I don't know any and wont help finding them.
Like my help? Join me on Patreon so i can keep helping |
|
Back to top |
|
|
CertifiedPyro How do I cheat? Reputation: 0
Joined: 16 May 2024 Posts: 3
|
Posted: Thu May 16, 2024 6:15 pm Post subject: |
|
|
I found 8 pointers with the shortest length of 4 offsets. The problem I'm noticing is the pointer to GameController sometimes points to another address before quickly switching back to the original. I have no idea why this is happening. Here's an example that I've logged in my autosplitter:
Code: | [1407.7283] game controller ptr changed: 1E8AAA18500 -> 1E668E9EA50
[1407.7441] game controller ptr changed: 1E668E9EA50 -> 1E8AAA18500
|
|
|
Back to top |
|
|
CertifiedPyro How do I cheat? Reputation: 0
Joined: 16 May 2024 Posts: 3
|
Posted: Sun May 26, 2024 6:05 am Post subject: |
|
|
I was able to resolve this, I just did "rescan memory", put in the address to look for, and "Repeat rescan until stopped". This helped me get rid of the flaky pointers
|
|
Back to top |
|
|
|