 |
Cheat Engine The Official Site of Cheat Engine
|
View previous topic :: View next topic |
Author |
Message |
danrevella Master Cheater
Reputation: 2
Joined: 11 Jun 2008 Posts: 292
|
Posted: Sat Mar 01, 2014 12:15 pm Post subject: it's easy manage pointers of pointers |
|
|
Yes, it's easy, but only in the CE tutorial.
But when you try even in a simple game, when the possible addresses found candidate to be pointers are tons and ton, what can we do?
It's impossible try one to one...
And also the scanpointer option, is really hard that works...
In a game we do NOT have got somethingh like a button "change pointer", instead we have to restart the level, or even worse we have to reload the game again otherways the pointer does not change.
I have read both on this forum and also googling otherways, but I'm unable in understandanding what can we do when the results are so excessive.
May we "poor newbie" receive further help about?
Thanks to all.
Danrevella
|
|
Back to top |
|
 |
Rydian Grandmaster Cheater Supreme
Reputation: 31
Joined: 17 Sep 2012 Posts: 1358
|
Posted: Sat Mar 01, 2014 2:20 pm Post subject: |
|
|
Psst.
The pointer scanner window has menus.
This includes the ability to rescan to filter out the pointers.
Just like you would a normal search.
_________________
|
|
Back to top |
|
 |
++METHOS I post too much
Reputation: 92
Joined: 29 Oct 2010 Posts: 4197
|
Posted: Sat Mar 01, 2014 2:55 pm Post subject: |
|
|
Additionally, you only need 1 pointer to work, consistently. Even if you have 10,000,000 pointers in your pointer list, as long as the pointer that you have chosen continues to work, there is nothing more to do.
Better yet, forget about using the pointer scanner and use injection.
|
|
Back to top |
|
 |
danrevella Master Cheater
Reputation: 2
Joined: 11 Jun 2008 Posts: 292
|
Posted: Sat Mar 01, 2014 7:57 pm Post subject: |
|
|
Many thanks for your help!!
@Rydian
I know about the option scanpointer, but two problems:
1) scanning a pointer does means restarting level, and sometimes, even worse: restart the game... In a real game, unlike CE tutorial we don't get a button: "change the pointer"....
2) even in case of scanning, I start f.e. with: 1.000.000, and after many rescan I still am at f.e. 5785 and the number does NO longer decrease...
@++Methos
You are telling me to use injection, in other words patch the code so the game does no longer use pointers.
May you tell me where may I get some example to understand this?
MBR to all!!!
|
|
Back to top |
|
 |
mgr.inz.Player I post too much
Reputation: 222
Joined: 07 Nov 2008 Posts: 4438 Location: W kraju nad Wisla. UTC+01:00
|
Posted: Sun Mar 02, 2014 8:06 am Post subject: |
|
|
@danrevella, it is perfectly normal.
If you want to filter out most pointers, you have to rescan. And that means restarting level, restarting game, restarting windows....
And sometimes it is not enough. Then you can try:
- launch game from another windows account (which means you will start game from the scratch)
- saving rescan files (fifth rescan or even more) on USB key and continue rescanning on another PC is a good idea too.
"I start f.e. with: 1.000.000, and after many rescan I still am at f.e. 5785 and the number does NO longer decrease... "
This is normal too. Sometimes you will have millions, after rescan few thousands, after next rescan few hundreds, and it doesn't change. But, sometimes it can drop from 100'000 to zero while third rescan.
Some scenarios I encountered in the past:
( first value is initial number of pointers, next values are after rescan )
( Pointer Max Level 4 )
- 45'000'000, 100'000, 200, 190, 180, 180, 180
- 45'000'000, 100'000, after game level restarts 90'000, 80'000, 79'000, 78'000, after PC restart 20'000, 19'900, 19'800, other PC the same game 500, again on my PC 480, 475, 460
- 45'000'000, 100'000, after game level restart 90'000, after game restart 20'000, after starting new profile in game 0 (yes ZERO, I had to try level 5)
_________________
|
|
Back to top |
|
 |
danrevella Master Cheater
Reputation: 2
Joined: 11 Jun 2008 Posts: 292
|
Posted: Sun Mar 02, 2014 9:11 am Post subject: |
|
|
mgr.inz.Player wrote: | @danrevella, it is perfectly normal.
If you want to filter out most pointers, you have to rescan. And that means restarting level, restarting game, restarting windows....
|
Ok, at least now I know I was not totally wrong....
BTW,
I'm really also interest in understanding the concept of bypassing pointers problem with injecting, I think as general rule is always important to know more then one solution for solve the problem.
Maybe you may submit to me some example?......... AHHH OK!
I was only stupid: I have to try about "avoid DMA", now go and study!
Many thanks for your patience
|
|
Back to top |
|
 |
++METHOS I post too much
Reputation: 92
Joined: 29 Oct 2010 Posts: 4197
|
Posted: Sun Mar 02, 2014 11:54 am Post subject: |
|
|
Regarding injection, it's easy if you can right-click on the address in your cheat table, select 'find what accesses', and one of the instructions that shows up is ONLY accessing your address and no other address. However, if that is not the case, then the explanation that follows is very long and can vary, depending on your preferred approach.
First, I would learn how to do basic injection by completing the tutorial (if you haven't already done so). Then, you can find some of my previous posts that deal with this and see some of the example tables that I have posted.
|
|
Back to top |
|
 |
Rydian Grandmaster Cheater Supreme
Reputation: 31
Joined: 17 Sep 2012 Posts: 1358
|
Posted: Sun Mar 02, 2014 7:03 pm Post subject: |
|
|
You can right-click the address you're trying to find a good pointer to (when it's correct) and find what writes or accesses it, and if you find specific instructions (like Method said, that only access that address) and it's in the form of like eax+123, then you can assume that the game's proper pointer will have the last offset as +123, and tell the pointer scanner that pointers have to end with that offset (both during the initial scan, and a rescan).
This is unlikely to bring things down to just 1-2 results like with normal memory scans, but it's another way to trim the results to things that can be assumed to follow the game code more closely.
_________________
|
|
Back to top |
|
 |
danrevella Master Cheater
Reputation: 2
Joined: 11 Jun 2008 Posts: 292
|
Posted: Mon Mar 03, 2014 3:27 am Post subject: |
|
|
Many thanks for your suggestions!!
Do you think is a good idea when scanning for pointers to freeze the game?
|
|
Back to top |
|
 |
Dark Byte Site Admin
Reputation: 470
Joined: 09 May 2003 Posts: 25796 Location: The netherlands
|
Posted: Mon Mar 03, 2014 5:45 am Post subject: |
|
|
You can even close the game during the scan (after the initial part with the progressbar is done)
_________________
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 |
|
 |
danrevella Master Cheater
Reputation: 2
Joined: 11 Jun 2008 Posts: 292
|
Posted: Tue Mar 04, 2014 1:40 pm Post subject: |
|
|
++METHOS wrote: | Regarding injection, it's easy if you can right-click on the address in your cheat table, select 'find what accesses', and one of the instructions that shows up is ONLY accessing your address and no other address. However, if that is not the case, then the explanation that follows is very long and can vary, depending on your preferred approach.
First, I would learn how to do basic injection by completing the tutorial (if you haven't already done so). Then, you can find some of my previous posts that deal with this and see some of the example tables that I have posted. |
I have followed your suggestions.
In the game Minesweeper (ita version is "Prato fiorito" ), every time I get different adresses for time, so:
Code: | [ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
alloc(newmem,2048,"minesweeper.exe"+2B73F)
label(returnhere)
label(originalcode)
label(exit)
newmem: //this is allocated memory, you have read,write,execute access
//place your code here
xor rcx,rcx
originalcode:
test rcx,rcx
je minesweeper.exe+2B77B
exit:
jmp returnhere
"minesweeper.exe"+2B73F:
jmp newmem
returnhere:
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
dealloc(newmem)
"minesweeper.exe"+2B73F:
test rcx,rcx
je minesweeper.exe+2B77B
//Alt: db 48 85 C9 74 37 |
This code solve the problem.
BTW, the street is still so long, but...... patience...
Thanks to this forum!!!!!
|
|
Back to top |
|
 |
|
|
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
|
|