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 


Cant find values

 
Post new topic   Reply to topic    Cheat Engine Forum Index -> Cheat Engine
View previous topic :: View next topic  
Author Message
Buscargreatness
How do I cheat?
Reputation: 0

Joined: 19 Feb 2023
Posts: 1

PostPosted: Sun Feb 19, 2023 9:07 pm    Post subject: Cant find values Reply with quote

I feel like the emulators Im currently using are more advanced,
not super advanced,
than what I have previously used on Visual Boy Advanced or PSX,

yet when I try to find values on DeSmuME 0.9.11 x86, or retroarch for anygame I can sometimes get close.
Like I see something that might be the value but it changes later and clearly isnt or is an address that is a representation of the value
and when I open up the debugger and import all the addresses to the list that write or access it;
it becomes clear that these are all incorrect addresses, many of them being orders of magnitude off from what im looking for and sometimes changing rapidly

I know the numbers Im looking for are not floats, and am pretty sure of the type of byte they should be.
Back to top
View user's profile Send private message
Xx XoTiC V1 xX
Cheater
Reputation: 1

Joined: 03 Aug 2012
Posts: 43

PostPosted: Mon Feb 20, 2023 7:59 am    Post subject: Re: Cant find values Reply with quote

Buscargreatness wrote:
I feel like the emulators Im currently using are more advanced,
not super advanced,
than what I have previously used on Visual Boy Advanced or PSX,

yet when I try to find values on DeSmuME 0.9.11 x86, or retroarch for anygame I can sometimes get close.
Like I see something that might be the value but it changes later and clearly isnt or is an address that is a representation of the value
and when I open up the debugger and import all the addresses to the list that write or access it;
it becomes clear that these are all incorrect addresses, many of them being orders of magnitude off from what im looking for and sometimes changing rapidly

I know the numbers Im looking for are not floats, and am pretty sure of the type of byte they should be.


It's not even that, I've found my addresses in Desmume plenty of times no sweat. The thing is emulators support dynamic memory allocation. Not all games use DMA (usually the older it is the less likely it'll be used) but there's even some on VBA and PSX I've ran into where both registers of an opcode instruction changes leaving pointers useless. Example in Visual Boy Advance when you find out what writes to the address you'll get an opcode instruction with [edx+ecx] included, some games just EDX changes in others both EDX and ECX changes leaving pointers useless because you're only getting one part, EDX. For the most part you're going to want a pointer or something to keep track of the address when it changes. When you quit the emulator and restart it chances are addresses will change too.

Make sure MEM_MAPPED is checked in scan settings too. Also it can be common for values to not be what they're displayed as on games and there is info (plenty of it) for dealing with those. Keep in mind once you do find your value, in my experience many games use DMA on Desmume so you'll have to make a script, preferably AOB injection copy or if you know your way around LUA. But before that, unfortunately Desmume, VBA, PSX, Saturn, Genesis emulators everything goes through a single opcode when you find what addresses accesses it leaving AOB injection out of the question until you trace and find something only using your address or you exclude registers in your script so incorrect values aren't being picked up.

None of this is easy of course, emulators are honestly more tricky than say if you were just doing a standalone game. Emulators you're literally digging through a bunch of virtual machine code. But it's not impossible like I've seen some replies say at all, and once you know how to do it you can do it for any emulator. And if you can do it in an emulator, you can definitely do it in a standalone game. I have little experience with Retroarch but I doubt it's any different than from what I've ran into, you either find a pointer, or if memory allocates a lot and no good pointer can be found you make an AA AOB or do LUA. Nopping code on said emulators is not something you can do either to my knowledge, but you can nop code on PS2, PS3, Xbox, Xbox360, Sega Dreamcast, Wii U, N64 emulators for example and not get crashes. As long as it's not important code you're nopping.

_________________
Learning as I go.
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