View previous topic :: View next topic |
Author |
Message |
Dark Byte Site Admin Reputation: 457
Joined: 09 May 2003 Posts: 25262 Location: The netherlands
|
Posted: Mon Nov 28, 2005 1:54 pm Post subject: Cheat Engine 5.2 has been released |
|
|
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 |
|
|
Dark Byte Site Admin Reputation: 457
Joined: 09 May 2003 Posts: 25262 Location: The netherlands
|
Posted: Mon Nov 28, 2005 2:12 pm Post subject: |
|
|
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 |
|
|
Dark Byte Site Admin Reputation: 457
Joined: 09 May 2003 Posts: 25262 Location: The netherlands
|
Posted: Mon Nov 28, 2005 4:58 pm Post subject: |
|
|
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 |
|
|
Turtle Advanced Cheater Reputation: 7
Joined: 25 Jul 2004 Posts: 85
|
Posted: Mon Nov 28, 2005 9:05 pm Post subject: |
|
|
|
|
Back to top |
|
|
xeratal Advanced Cheater Reputation: 1
Joined: 05 Nov 2005 Posts: 93
|
Posted: Tue Nov 29, 2005 12:26 am Post subject: |
|
|
When you add something to your address your first address doesn't remain
|
|
Back to top |
|
|
Turtle Advanced Cheater Reputation: 7
Joined: 25 Jul 2004 Posts: 85
|
Posted: Tue Nov 29, 2005 2:48 am Post subject: |
|
|
Do Auto assemble scripts work with trainers now?
|
|
Back to top |
|
|
ducspam Expert Cheater Reputation: 0
Joined: 07 Oct 2005 Posts: 171
|
Posted: Tue Nov 29, 2005 3:02 am Post subject: |
|
|
Great work DB.
Hopefully, you still check your paypal. You'll get something this xmas. Cheers!!
|
|
Back to top |
|
|
Dark Byte Site Admin Reputation: 457
Joined: 09 May 2003 Posts: 25262 Location: The netherlands
|
Posted: Tue Nov 29, 2005 7:07 am Post subject: |
|
|
xeratal wrote: | When you add something to your address your first address doesn't remain |
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 |
|
|
Dark Byte Site Admin Reputation: 457
Joined: 09 May 2003 Posts: 25262 Location: The netherlands
|
Posted: Tue Nov 29, 2005 7:09 am Post subject: |
|
|
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 |
|
|
Turtle Advanced Cheater Reputation: 7
Joined: 25 Jul 2004 Posts: 85
|
Posted: Tue Nov 29, 2005 2:48 pm Post subject: |
|
|
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 |
|
|
Dark Byte Site Admin Reputation: 457
Joined: 09 May 2003 Posts: 25262 Location: The netherlands
|
Posted: Tue Nov 29, 2005 3:19 pm Post subject: |
|
|
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 |
|
|
Turtle Advanced Cheater Reputation: 7
Joined: 25 Jul 2004 Posts: 85
|
Posted: Tue Nov 29, 2005 3:38 pm Post subject: |
|
|
Thanks for the explanation. This will be useful.
|
|
Back to top |
|
|
GaBBaGaNDaLF How do I cheat? Reputation: 0
Joined: 01 Jul 2004 Posts: 9 Location: Germany
|
Posted: Wed Nov 30, 2005 9:00 am Post subject: |
|
|
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
|
|
Back to top |
|
|
Dark Byte Site Admin Reputation: 457
Joined: 09 May 2003 Posts: 25262 Location: The netherlands
|
Posted: Wed Nov 30, 2005 9:10 am Post subject: |
|
|
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 |
|
|
GaBBaGaNDaLF How do I cheat? Reputation: 0
Joined: 01 Jul 2004 Posts: 9 Location: Germany
|
Posted: Wed Nov 30, 2005 12:51 pm Post subject: |
|
|
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 |
|
|
|