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 


Cheat Engine 5.2 has been released
Goto page 1, 2  Next
 
Post new topic   Reply to topic    Cheat Engine Forum Index -> Cheat Engine
View previous topic :: View next topic  
Author Message
Dark Byte
Site Admin
Reputation: 457

Joined: 09 May 2003
Posts: 25262
Location: The netherlands

PostPosted: Mon Nov 28, 2005 1:54 pm    Post subject: Cheat Engine 5.2 has been released Reply with quote

Because my beta testers havn't reported any bugs the last few weeks I'm assuming there are no bugs in this version, so it should be ok for a release. (of course, it may be their systems all died from using it and they can't get back on the internet, but lets not assume that possibility just yet...)

Added some shortcut keys to the main window. (ctrl+o opens a table, ctrl+s saves, and ctrl+alt+a opens the auto assembler)
Added reinterpretable addresses
Added auto assemble scripts to the auto assembler
Added auto assemble scripts to cheat tables
added a pointer scanner
added the ability to define structures
Added address recalculation by module in the standalone trainer as well (for code entries, standard addresses use interpretable addresses)
Added the db 'string' opcode to the assembler
Added the REGISTERSYMBOL and UNREGISTERSYMBOL functions to the auto assembler
Addresses now indicate of a address is in a static address or dynamicly allocated
Added a show checkbox and show hotkey property to the cheatlist in the trainer maker
Added a click handler to seperate cheats in the trainer maker. (clicking enables a cheat)
Made it possible to also use ce's kernel debugger for "change register on breakpoint"
Changed the code finder so it's not modal anymore. (You still can't use multiple at the same time but it'll fix some 'not so' user-friendly problems)
Changed the hyperscan injection method when windows 2000 is detected. should be more stable
Changed the save routines in the memory view to give more options when saving and loading
Fixed some assembler and disassembler bugs
Fixed "force memory to be writable" on PAE enabled systems
Fixed the bug where the module name was not saved in the cheat table of a code entry
Fixed the bug where the first character of the trainer maker user inoput field got replaced by a ?
Fixed float->unknown initial scan->first scan->exact value not showing the type selection
Fixed find out what ... when using access violations and clicking stop
Fixed invalid reordering of entries after delete of a entry in the trainer maker
Fixed the corrupted title and about text in the generated trainer when protection was enabled
Fixed resizing of the cheatlist after a delete in the trainer maker
Fixed one or two spell errors
Fixed the fullaccess function in the auto assembler
Fixed support for floating points in the trainer maker (difference between , and .)
Moved all symbolhandler code to one class instead of spreading it all over the rest of the code
changed the copy/paste of entries to be more stable
and a few other minor things...

Please report bugs when you find them.

oh, and for those with peanuts for brains , you can download it at http://www.cheatengine.org/download.php

_________________
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


Last edited by Dark Byte on Mon Nov 28, 2005 9:48 pm; edited 4 times in total
Back to top
View user's profile Send private message MSN Messenger
Dark Byte
Site Admin
Reputation: 457

Joined: 09 May 2003
Posts: 25262
Location: The netherlands

PostPosted: Mon Nov 28, 2005 2:12 pm    Post subject: Reply with quote

And for those that start to see green in front of their eyes, it's not you. CE shows static addresses in green. (static meaning they never change address regarding the module they are in)
_________________
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
View user's profile Send private message MSN Messenger
Dark Byte
Site Admin
Reputation: 457

Joined: 09 May 2003
Posts: 25262
Location: The netherlands

PostPosted: Mon Nov 28, 2005 4:58 pm    Post subject: Reply with quote

in case someone doesn't understand what reinterpretable addresses mean:
"gamex86.dll+1234" is a valid address
"OpenProcess+23" is a valid address
"00671234+12" is a valid address
"myowndefinedsymbol+42" is a valid address, when 'myowndefinedsymbol' has been defined in the userdefined symbollist either by registering it by a auto assemble script, manually adding it

_________________
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
View user's profile Send private message MSN Messenger
Turtle
Advanced Cheater
Reputation: 7

Joined: 25 Jul 2004
Posts: 85

PostPosted: Mon Nov 28, 2005 9:05 pm    Post subject: Reply with quote

Cool
Back to top
View user's profile Send private message
xeratal
Advanced Cheater
Reputation: 1

Joined: 05 Nov 2005
Posts: 93

PostPosted: Tue Nov 29, 2005 12:26 am    Post subject: Reply with quote

When you add something to your address your first address doesn't remain Sad
Back to top
View user's profile Send private message
Turtle
Advanced Cheater
Reputation: 7

Joined: 25 Jul 2004
Posts: 85

PostPosted: Tue Nov 29, 2005 2:48 am    Post subject: Reply with quote

Do Auto assemble scripts work with trainers now?
Back to top
View user's profile Send private message
ducspam
Expert Cheater
Reputation: 0

Joined: 07 Oct 2005
Posts: 171

PostPosted: Tue Nov 29, 2005 3:02 am    Post subject: Reply with quote

Great work DB.

Hopefully, you still check your paypal. You'll get something this xmas. Cheers!! Wink
Back to top
View user's profile Send private message
Dark Byte
Site Admin
Reputation: 457

Joined: 09 May 2003
Posts: 25262
Location: The netherlands

PostPosted: Tue Nov 29, 2005 7:07 am    Post subject: Reply with quote

xeratal wrote:
When you add something to your address your first address doesn't remain Sad


I have no idea what you mean with this, but if you are talking about the xxx+xx method of writing and want to write the offset yourself, I recommend ctrl+c and ctrk+v a few times and then on each copy justr add a different offset

_________________
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
View user's profile Send private message MSN Messenger
Dark Byte
Site Admin
Reputation: 457

Joined: 09 May 2003
Posts: 25262
Location: The netherlands

PostPosted: Tue Nov 29, 2005 7:09 am    Post subject: Reply with quote

Turtle wrote:
Do Auto assemble scripts work with trainers now?

yes, if you add the auto assembler script as a cheat table entry first

cheat engine table assembler scripts have a [enable] and [disable] section.
[enable] activates the cheat [disable] does the cleanup like restoring the original bytes and/or freeing memory.

check out the fear table I posted , I used that to make the trainer

_________________
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
View user's profile Send private message MSN Messenger
Turtle
Advanced Cheater
Reputation: 7

Joined: 25 Jul 2004
Posts: 85

PostPosted: Tue Nov 29, 2005 2:48 pm    Post subject: Reply with quote

1. Does the Auto assembler completely do away with the need for pointers? Or are pointers still needed in some cases?

2. Maybe someone can explain the new pointer scanner, the part that scans for 'pointers to pointers'.
Back to top
View user's profile Send private message
Dark Byte
Site Admin
Reputation: 457

Joined: 09 May 2003
Posts: 25262
Location: The netherlands

PostPosted: Tue Nov 29, 2005 3:19 pm    Post subject: Reply with quote

Quote:
1. Does the Auto assembler completely do away with the need for pointers? Or are pointers still needed in some cases?

it all depends on how you implement the assembler script. If you write code to imeadiatly change the memory by looking at the data of a pointer , then pointers arn't needed anymore, but if all you do is save the pointer to a static or registered location you can then use that address as base address for a pointer


Quote:
2. Maybe someone can explain the new pointer scanner, the part that scans for 'pointers to pointers'.

In the pointer scanner you can define that address to find a pointer for. (top edit field)
you can change some settings like fast(where it skips already dissected pointers) and how the static address is found.
Dissecting the code is just like the normal static scanner, disassembling code and look for a [xxxxxxxx] part. Using module memory only doesn't do any disassembling, but only sees memory inside modules as valid addresses/pointer, for base pointer.

the "Size of structure" defines how big you think the structures are that the game uses, usually 512 is good enough, but if you know there are no big structures used you can decrease it and otherwhise, if you know bugger are needed you can increase it.

e.g a instruction like [eax+312] indicates that the game uses structures of at least 0x312 bytes (786 byytes, but you can also type in $312 and ce will convert it automatically)

level 0 structsize is just something you can use to speed up scaning and/or decrease extre/unusefull hits. e.g if you know the base pointer is a pointer and not a ellement inside a array, then a structsize of 4 (1 pointer) is good enough, but if you're not sure, I recommend increasing it.

Max level indicates how many levels deep it should scan the memory
e.g if you give max level 5, and it finds at the 5th level pointer another address that represents a pointer, it won't dissect that pointer, but just skip it.

example of a pointer scan, and scanning for 00601128 (24 byte structure, max level 3)
Code:

00451230=00a00000 (level0, 00451230 is a static pointer)
00a00000 (level1)
  |-15
  |+00800100 (level2)
      |-a1
      |-a2
      |-a3
      |-a4
      |-a5
      |-a6
  |-12
  |+00501200 (level2)
      |-30
      |-40
      |-50
      |+00601120 (level3)
          |-ba
          |-bc <----00601128
          |-bd
          |-009a0000 (not dissected because max level =3)
          |-bf
          |-c0
      |-60
      |-70
  |-80
  |-12


it would then give as possible pointer path 00451230-10-10-8

in big games you may receive thousands of possible paths to a pointer. Just save all the results, restart the game or even comp, find the address , and then do a rescan addresses to filter out the pointer paths that have become invalid

_________________
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
View user's profile Send private message MSN Messenger
Turtle
Advanced Cheater
Reputation: 7

Joined: 25 Jul 2004
Posts: 85

PostPosted: Tue Nov 29, 2005 3:38 pm    Post subject: Reply with quote

Thanks for the explanation. This will be useful.
Back to top
View user's profile Send private message
GaBBaGaNDaLF
How do I cheat?
Reputation: 0

Joined: 01 Jul 2004
Posts: 9
Location: Germany

PostPosted: Wed Nov 30, 2005 9:00 am    Post subject: Reply with quote

Hm I think i found a trainer creation bug:

The standalone Trainer can't recocnize the right process if there are several processes with same name. I think it always takes first one.

Got this problem with Sacred Underworld, there are two processes named sacred.exe and i need to adress the second one. When trainer starts it says incompatible with this process. I assume it checks the memory area the process uses.
So it must be adressing wrong process.

Thx for this great progi i just love it Very Happy
Back to top
View user's profile Send private message
Dark Byte
Site Admin
Reputation: 457

Joined: 09 May 2003
Posts: 25262
Location: The netherlands

PostPosted: Wed Nov 30, 2005 9:10 am    Post subject: Reply with quote

yes, you're right, it picks the first process and it checks the memory you want to nop if it is what it should be or not (to prevent crashes, like different versions, etc...)

but are you sure it is always the second process in the list ?
Also, what is the first process? just the launcher or somethign else? If it is just the launcher you may be able to rename it and then run it.

_________________
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
View user's profile Send private message MSN Messenger
GaBBaGaNDaLF
How do I cheat?
Reputation: 0

Joined: 01 Jul 2004
Posts: 9
Location: Germany

PostPosted: Wed Nov 30, 2005 12:51 pm    Post subject: Reply with quote

I already tried renaming, it didn't work...both have same name again.
The process to edit is always started second.
(It's also much bigger than the first one so thats why i think first one is a kind of launcher in same file as game exe)
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
Goto page 1, 2  Next
Page 1 of 2

 
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