Cheat Engine Forum Index Cheat Engine
The Official Site of Cheat Engine
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 


Pointer Scan [need help]

 
Post new topic   Reply to topic    Cheat Engine Forum Index -> Cheat Engine
View previous topic :: View next topic  
Author Message
cedo
Newbie cheater
Reputation: 0

Joined: 02 Feb 2020
Posts: 10

PostPosted: Sun Feb 19, 2023 3:06 pm    Post subject: Pointer Scan [need help] Reply with quote

I need some help setting up my pointer scan settings. I remember the pointer scanner used the be the best way for me to find values in a game that would Stick on multiple reloads.

Now... I can't seem to find any pointer that's permanent.

trying to scan a 64bit UE5 game. For values like Health/stamina etc.
I'm getting over 50mil results and even my 2TB HDD is getting full fast.
even with those results, none of the pointers are permanent, they randomize every launch.



Screenshot_1.png
 Description:
 Filesize:  32.79 KB
 Viewed:  4845 Time(s)

Screenshot_1.png


Back to top
View user's profile Send private message
ParkourPenguin
I post too much
Reputation: 152

Joined: 06 Jul 2014
Posts: 4702

PostPosted: Sun Feb 19, 2023 4:15 pm    Post subject: Reply with quote

Regarding your storage getting full: you should be using multiple pointer maps generated under different game instances. This is the relevant warning given by CE that most people seem to disregard:
Quote:
If you do not use the compare results with other saved pointermap option you will get billions of useless results and giga/terrabytes of wasted diskspace and rescans will take hours if not days. Are you sure ?
See this video for information on how to use multiple pointermaps:
https://www.youtube.com/watch?v=3dyIrcx8Z8g

The pointer scanner isn't omnipotent. There are plenty of circumstances where it won't work: JIT-compiled code using immediates as base addresses, randomized data structures, certain race conditions, etc.

Alternatives: use code injection (search "injection copy"), find a pointer path manually, or backtrace from an access to get the exact path the game is using (requires good knowledge of assembly and a fair amount of effort).

_________________
I don't know where I'm going, but I'll figure it out when I get there.
Back to top
View user's profile Send private message
Autem
Expert Cheater
Reputation: 1

Joined: 30 Jan 2023
Posts: 156

PostPosted: Sun Feb 19, 2023 9:58 pm    Post subject: Re: Pointer Scan [need help] Reply with quote

cedo wrote:
I need some help setting up my pointer scan settings. I remember the pointer scanner used the be the best way for me to find values in a game that would Stick on multiple reloads.

Now... I can't seem to find any pointer that's permanent.

trying to scan a 64bit UE5 game. For values like Health/stamina etc.
I'm getting over 50mil results and even my 2TB HDD is getting full fast.
even with those results, none of the pointers are permanent, they randomize every launch.


I don't know if this will help your situation since my experience is limited, but I've had some good pointer scan results when I make sure to check the "Max different offsets per node" box and make the value either a 2 or a 3.

But also as ParkourPenguin said, using the generated maps is way better and also lets you rescan faster (for example if you want to slowly increment the max offsets and see if the list improves). Another couple values I often will play around with are "Maximum offset value" and "max level". Sometimes increasing Maximum offset value to 7095 but reducing Max level to 5 or 4 has given be better results that end up sticking as good pointers forever. Sometimes vice-versa, bringing the Maximum offset down lower than the default and slowly increasing the Max level.

But yeah, those 3 areas are what I try different combinations of and I always eventually get what I want in UE games. Sometimes it takes a while mixing these up to get a small enough result list that also happens to contain pointers that always stick.

Max different offsets per node
Maximum offset value
Max level
(and on rare occasions, a 4th option "Stop traversing a path when a static has been found" also has helped narrow down results)

Also! Don't forget you can hover the mouse over each checkbox in the settings and a little popup will give a quick rundown of the pros and cons of each option. This has also helped me decide what to experiment with.

Hope this helps!
Back to top
View user's profile Send private message
cedo
Newbie cheater
Reputation: 0

Joined: 02 Feb 2020
Posts: 10

PostPosted: Mon Feb 20, 2023 12:29 pm    Post subject: Re: Pointer Scan [need help] Reply with quote

ParkourPenguin wrote:
Regarding your storage getting full: you should be using multiple pointer maps generated under different game instances. This is the relevant warning given by CE that most people seem to disregard:
Quote:
If you do not use the compare results with other saved pointermap option you will get billions of useless results and giga/terrabytes of wasted diskspace and rescans will take hours if not days. Are you sure ?
See this video for information on how to use multiple pointermaps:


The pointer scanner isn't omnipotent. There are plenty of circumstances where it won't work: JIT-compiled code using immediates as base addresses, randomized data structures, certain race conditions, etc.

Alternatives: use code injection (search "injection copy"), find a pointer path manually, or backtrace from an access to get the exact path the game is using (requires good knowledge of assembly and a fair amount of effort).


Autem wrote:

I don't know if this will help your situation since my experience is limited, but I've had some good pointer scan results when I make sure to check the "Max different offsets per node" box and make the value either a 2 or a 3.

But also as ParkourPenguin said, using the generated maps is way better and also lets you rescan faster (for example if you want to slowly increment the max offsets and see if the list improves). Another couple values I often will play around with are "Maximum offset value" and "max level". Sometimes increasing Maximum offset value to 7095 but reducing Max level to 5 or 4 has given be better results that end up sticking as good pointers forever. Sometimes vice-versa, bringing the Maximum offset down lower than the default and slowly increasing the Max level.

But yeah, those 3 areas are what I try different combinations of and I always eventually get what I want in UE games. Sometimes it takes a while mixing these up to get a small enough result list that also happens to contain pointers that always stick.

Max different offsets per node
Maximum offset value
Max level
(and on rare occasions, a 4th option "Stop traversing a path when a static has been found" also has helped narrow down results)

Also! Don't forget you can hover the mouse over each checkbox in the settings and a little popup will give a quick rundown of the pros and cons of each option. This has also helped me decide what to experiment with.

Hope this helps!


thank you both for the reply. I haven't really used Generated Pointermaps in the past because every time I use that option It fails to find the necessary pointers. In the past I've had more luck scanning manually for about 1h. then just doing Alt F4, restart game, Rescan.

I'll try the GP route and see if it helps.

The video also shows a MANUAL pointer search, using the code debugger.
Can you explain how I know which Code bit has the offset I need?
Because if you use "Show Access" on a game, that code window will have at least 10 different opcodes shown.
Back to top
View user's profile Send private message
ParkourPenguin
I post too much
Reputation: 152

Joined: 06 Jul 2014
Posts: 4702

PostPosted: Mon Feb 20, 2023 3:24 pm    Post subject: Reply with quote

The "correct" offset is probably the most frequently used in instructions.
Code:
mov eax,[rsi+74]
mov ebx,[rcx+74]
add [rcx+74],1
mov rax,[rcx]
cmp [rcx+74],64
e.g. in this list the "correct" offset is probably 74. The only other offset of 0 can almost surely be ignored.
Every instruction with the same offset will give you the same "probable address". The only exception might be instructions that write to the register used in the address specifier, e.g. `mov eax,[rax+74]`. CE doesn't calculate the address correctly, so you'll have to subtract 0x74 from the address being watched manually.

_________________
I don't know where I'm going, but I'll figure it out when I get there.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Cheat Engine Forum Index -> Cheat Engine All times are GMT - 6 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group

CE Wiki   IRC (#CEF)   Twitter
Third party websites