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 


Track all changes to an address?

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

Joined: 15 Dec 2015
Posts: 3

PostPosted: Tue Dec 15, 2015 12:10 pm    Post subject: Track all changes to an address? Reply with quote

Hi guys. So in my situation I have 1 or 2 addresses that are constantly changing in value (every 5 or so secs)
Is it possible through Cheat Engine to somehow track all the changes to this address so that it shows up in a convenient list?

I.e.:

Address 1 changes values from 0.05 to 0.2 to 0.8 to 0.32

Normally, I would only be able to see the changes as they happen and I would have to be constantly looking at the value to see it's changes.

What I want is for me to "track" the changes so that at the end, I can see that the first value was 0.05, then 0.2, then 0.8 etc all at once.

Thanks
Back to top
View user's profile Send private message
++METHOS
I post too much
Reputation: 92

Joined: 29 Oct 2010
Posts: 4197

PostPosted: Tue Dec 15, 2015 12:45 pm    Post subject: Reply with quote

Have you tried changing all of your update intervals to 1ms?
Back to top
View user's profile Send private message
ParkourPenguin
I post too much
Reputation: 137

Joined: 06 Jul 2014
Posts: 4250

PostPosted: Tue Dec 15, 2015 9:09 pm    Post subject: Reply with quote

Edit: see this topic.
_________________
I don't know where I'm going, but I'll figure it out when I get there.


Last edited by ParkourPenguin on Mon Aug 08, 2022 10:41 am; edited 5 times in total
Back to top
View user's profile Send private message
theidiot
Newbie cheater
Reputation: 0

Joined: 15 Dec 2015
Posts: 14

PostPosted: Wed Dec 16, 2015 12:06 am    Post subject: Reply with quote

thanks for putting that up here ParkourPenguin. very useful to me. wanted something just like it. this could be useful for monitoring character buffers (encrypted and unencrypted) for comparison among other things.
Back to top
View user's profile Send private message
HotsGG
How do I cheat?
Reputation: 0

Joined: 15 Dec 2015
Posts: 3

PostPosted: Wed Dec 16, 2015 5:59 am    Post subject: Reply with quote

ParkourPenguin wrote:
I made a pretty long script that'll do this. It'll add a menu option at the bottom of the "Tools" menu in the memory view window called "Monitor Address for Changes". Click on it, and it'll ask for some information about your address, and once you're done, it'll pop up with a new window that shows the value of the address at the top, and any subsequent changes after that.

I'd recommend copying and pasting this into notepad or something, then saving it in the autorun folder in the main CE directory as "monitorChangesToAddress.lua" (or whatever, as long as it ends with .lua). This way you don't have to paste this in every time you go to run CE.
Of course, you could also just copy and paste it right into the Lua script window and click "Execute". Doesn't matter.

This might not get all changes to an address if it's changing somewhat quickly (less than ~50 ms and I wouldn't guarantee this will catch that change). Using breakpoints should catch all changes to it, regardless of how fast it's changing, but I can't think of a good way of doing that without screwing up any other breakpoints you have. Is there a good way to find out what address triggered a bptWrite trigger I'm not seeing in main.lua?

Anyway, here's the script:
Code:

code


Thank you! This works pretty well, if not perfectly. Bit busy so I can't figure out if anything's broken, but this is exactly what I needed. Thanks a lot!

Do you have any idea if it's also possible to manipulate the entries? I.e. number them from 1 to, say, 100. Or ctrl+f, copy/paste etc etc, as if it was a normal notepad .txt
Back to top
View user's profile Send private message
ParkourPenguin
I post too much
Reputation: 137

Joined: 06 Jul 2014
Posts: 4250

PostPosted: Wed Dec 16, 2015 4:56 pm    Post subject: Reply with quote

I updated the post to include those things. If you have any other requests or find any bugs, let me know, and I'll see what I can do.
_________________
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
theidiot
Newbie cheater
Reputation: 0

Joined: 15 Dec 2015
Posts: 14

PostPosted: Wed Dec 16, 2015 9:54 pm    Post subject: Reply with quote

ParkourPenguin wrote:
I updated the post to include those things. If you have any other requests or find any bugs, let me know, and I'll see what I can do.


very cool thanks a lot, again, for sharing
Back to top
View user's profile Send private message
HotsGG
How do I cheat?
Reputation: 0

Joined: 15 Dec 2015
Posts: 3

PostPosted: Fri Dec 18, 2015 4:54 am    Post subject: Reply with quote

ParkourPenguin wrote:
I updated the post to include those things. If you have any other requests or find any bugs, let me know, and I'll see what I can do.

Works great, thank you Smile I found a small "bug" I suppose. When using the search function, if a value is, let's say, 0.37782261 (just an example). If you search for 0.377, it'll tell you that there were no results, because it's looking for the specific "0.377" value rather than anything that has "0.377" in it. Would be great if it showed any values that had 0.377 as part of their value rather than exactly 0.377.

Hope you know what I mean, I explained it in a very convoluted way.

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

Joined: 06 Jul 2014
Posts: 4250

PostPosted: Sat Dec 19, 2015 12:30 pm    Post subject: Reply with quote

I updated it so that it should properly truncate the floating point numbers in the list to whatever digits of precision you specify. The only exception to this should be 0, in which searching for 0 will only give you values that are exactly 0 (won't give you 0.1 or 0.001).
Again, might be a few bugs (especially with floating point numbers), so let me know if you run into any.

_________________
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
Floydman
How do I cheat?
Reputation: 0

Joined: 31 Oct 2016
Posts: 4

PostPosted: Wed Nov 02, 2016 5:27 pm    Post subject: Reply with quote

Does this script still work? I've tried using it in version 6.5.1 and 6.6, but nothing happens. When it's in the autorun folder as a .lua file, it doesn't load. and executing from the Lua script window does nothing.

EDIT: It is working. See below.


Last edited by Floydman on Wed Nov 02, 2016 5:38 pm; edited 1 time in total
Back to top
View user's profile Send private message
ParkourPenguin
I post too much
Reputation: 137

Joined: 06 Jul 2014
Posts: 4250

PostPosted: Wed Nov 02, 2016 5:32 pm    Post subject: Reply with quote

It's old and could probably use an update, but it still works. By "nothing happens," do you mean the menu item "Monitor Address for Changes" doesn't appear in the tools menu of the memory viewer, or that it doesn't magically do everything for you?
_________________
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
Floydman
How do I cheat?
Reputation: 0

Joined: 31 Oct 2016
Posts: 4

PostPosted: Wed Nov 02, 2016 8:17 pm    Post subject: Reply with quote

Another question: Is there a way to modify the script to capture at a specific interval, or to capture two addresses instead of one? Right now, running the script in two different windows at the same time makes it so that the values are slightly off for a specific entry. I don't know if that's an easy modification or not. Confused
Back to top
View user's profile Send private message
Zanzer
I post too much
Reputation: 126

Joined: 09 Jun 2013
Posts: 3278

PostPosted: Wed Nov 02, 2016 8:42 pm    Post subject: Reply with quote

Could use the debugger to only track when something writes to the address. Here's a little table script:
Code:
{$lua}
if syntaxcheck then return end
address = 0x137F149F598
[ENABLE]
output = io.open("E:/zanzer.txt", "w")
debug_setBreakpoint(address, 4, bptWrite, function()
  local value = readInteger(address)
  output:write(value)
  output:write("\n")
  debug_continueFromBreakpoint(co_run)
  return 1
end)
[DISABLE]
debug_removeBreakpoint(address)
output:close()
Back to top
View user's profile Send private message
ParkourPenguin
I post too much
Reputation: 137

Joined: 06 Jul 2014
Posts: 4250

PostPosted: Wed Nov 02, 2016 8:56 pm    Post subject: Reply with quote

Floydman wrote:
Is there a way to modify the script to capture at a specific interval, or to capture two addresses instead of one?

Sure. This needs to be updated and refined, so I'll work on this when I've got some free time.

Edit: see this topic.

_________________
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