View previous topic :: View next topic |
Author |
Message |
Dark Byte Site Admin Reputation: 458
Joined: 09 May 2003 Posts: 25296 Location: The netherlands
|
Posted: Thu Jun 19, 2014 7:03 am Post subject: Cheat Engine 6.4 Released |
|
|
Cheat Engine 6.4 has been released
download links :
http://mirror2.cheatengine.org/download/d1/CheatEngine64.exe
http://mirror3.cheatengine.org/download/d1/CheatEngine64.exe
http://mirror1.cheatengine.org/download/d1/CheatEngine64.exe
Code: |
fixes:
Network: Network server can now handle multiple incoming connections at the same time
Gui: Fixed a crash when using multiple scan tabs
Assembler/Disassembler: Fixed several assembler/disassembler bugs
Debug: Fixed issues where deleting a breakpoint wouldn't actually remove it, causing a crash
Debug: Fixed a problem where deleting a breakpoint that was marked for deletion would never happen if the game was constantly triggering the debugger
Lua: Fixed the 6.2 and earlier version of opendialog_execute
Lua: Fixed memscan.waitTillDone() when using it on the gui memscan
Lua: Fixed speedhack_setSpeed() not taking more than 3 digits
D3D Hook: Direct3D9 objects now support transparency
D3D Hook: Fix detection of which directx version is actually used for rendering
Dissect Data: Fixed the column click detection when scrolled
Auto Assembler: Fixed some commands not highlighting properly
Ultimap: Fixed ultimap so it now works in windows 8
Ultimap: Fixed the hotkeys
Ultimap: Fixed the hint popup for pre-emptive flushing
Symbols: Fixed a problem where 32-bit modules where detected as 64-bit
Memory Scan: Fixed next scan causing a buffer overflow in some rare situations
Form Designer: Fixed a problem where deleting a non visible object failed (press the delete key in the object inspector tree)
Trainer Designer: Fixed the go back to generated form from functioning and related issues
PE-Info: Fixed a possibility where a bad PE header could cause an read error
Memory view: Hexview: Fix 8-byte value editing
Syntax Highlighters LUA/AA: Fixed UTF8 encoded text
Syntax Highlighters AA: Added xmm registers
Additions and changes:
Address List: Added a group option that shows a +/- sign in front of group entries
Address List: Pressing enter on a single entry now goes into value edit mode
Address List: Added an option so certain entries in the address list show a groupbox the user can pick from
Auto Assembler: New auto assembler templates that focus on Array of Byte scans(thanks to jgoemat)
Auto Assembler: The auto assembler can now handle {$LUA} and {$ASM} preprocessors for multiline lua scripts
Break And Trace: Added a donottrace.txt file in the base directory which holds a list of modules that should not be traced but stepped over instead
Pointerscan: Improved performance of the pointer scanner
Pointerscan: The pointerscan now has the option to generate a lot smaller .PTR files
Pointerscan: Added the ability to do a distributed pointerscan and pointer rescan
ProcessList: You can now type in the processlist to filter for the specific process
Network: Added a basic ARM assembler/disasembler
Network: The linux/android network version can now use basic debugging (find what access/writes)
Network: Added speedhack to the network version
Network: The network version now compresses read/write process memory before sending to the client. The compression level can be changed at runtime
Network: Added module injection for linux/android
Symbols: Added better support for .PDB debug files so parameters and local variable references show when that data is available
Symbols: Added support for .Net
Symbols: Added support for Java (proof-of-concept showing off the extendabilty of CE)
Symbols: Added support for Mono (^)
Memory view: Hexview: Added decimal display modes for the other types
Memory View: Added shift-scrollng to the hexview and disassembler so you can scroll by 1 byte changes instead of the default calculated sizes
Stack View: Added a search option
D3D Hook: you can now reattach the D3D hook to a process that previously had been hooked
Lua engine window: Added a search and replace option to the editor
Lua engine window: Added the ability to set breakpoints, inspect variables and step over lines
Lua engine window: Enabled tab indentation of blocks
Lua engine window: Some extra customization options
Trainer Generator: Replaced the beepOnAction with playSoundOnAction and added 2 build in activate/deativate sounds. (You can override them)
Trainer Generator: The XM file field now has a play button
Lua/Trainer Generator/Designer: Added several new components , propertes and methods.
Lua: Added a dll search path to cedir\clibs32 or cedir\clibs64 depending on which cheat engine version is used. Use it for lua extentions
Lua: Made it more forgiving about method and property names
Lua: Added some threading helper functions
Lua: You can now override the disassembler/assembler
Lua: Lots of other new features. Check out main.lua
|
Please let me know about bugs. I may make some small fixes within the next 7 days depending on the bugs reported (or 30 days if it's a giant bug)
fixes:
06/20/2014: Fixed the driver from not listening to cheat engine when it has it's SeDebugPrivilege stripped away
06/26/2014: Fixed custom types,fixed the Visible property of forms, fixed highlighting multiline sections in {$lua} sections in the auto assembler, and changed the way unreadable addresses are handled
06/26/2014: Fixed the trainer generator playing the wrong sound for disable and added an underscore to luafile names that aren't recognized as xml names
Known bugs: The distributed pointerscan can not use compressed pointers
_________________
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 Wed Jul 30, 2014 2:01 am; edited 6 times in total |
|
Back to top |
|
|
mgr.inz.Player I post too much Reputation: 218
Joined: 07 Nov 2008 Posts: 4438 Location: W kraju nad Wisla. UTC+01:00
|
Posted: Thu Jun 19, 2014 7:20 am Post subject: |
|
|
Great. Thanks. Installing now.
PS: is it rev. 2605 or 2601 ?
_________________
|
|
Back to top |
|
|
Csimbi I post too much Reputation: 94
Joined: 14 Jul 2007 Posts: 3110
|
Posted: Thu Jun 19, 2014 9:59 am Post subject: |
|
|
Thanks and congrats!
|
|
Back to top |
|
|
Dark Byte Site Admin Reputation: 458
Joined: 09 May 2003 Posts: 25296 Location: The netherlands
|
Posted: Thu Jun 19, 2014 11:06 am Post subject: |
|
|
mgr.inz.Player wrote: | Great. Thanks. Installing now.
PS: is it rev. 2605 or 2601 ? |
2605
_________________
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 |
|
|
Recifense I post too much Reputation: 166
Joined: 17 Mar 2008 Posts: 3688 Location: Pernambuco - Brazil
|
Posted: Thu Jun 19, 2014 11:30 am Post subject: |
|
|
Hi fantastic guys,
- Congratulations to those that contributed with ideas;
- Congratulations to those that implemented them;
- Congratulations to Dark Byte for keeping things going;
Thank you all for making the work of those that work on scripts/table/trainers a lot easier. I've got a great respect for you.
Cheers!
_________________
Don't think TRAINER, think TABLE.
MSG: Contributing since 2008 (March,17th)
STATUS: if you want one of my tables, e-mail me.
NO NEW TABLE. ONLY MAINTENANCE OF SOME OLD ONES.
|
|
Back to top |
|
|
Stregum Advanced Cheater Reputation: 0
Joined: 17 Jun 2014 Posts: 56 Location: We make baguettes there !
|
Posted: Thu Jun 19, 2014 11:30 am Post subject: |
|
|
The "Saved" Column is the same as the "Previous" column right ? (Correct me if i'm wrong)
So there's a display bug when you right click you have "Show previous value column" instead of "Show saved values column" (that's noooooot super important but that may be confusing for the new users)
Nice work though !
_________________
Rhaa Stregum Vitae |
|
Back to top |
|
|
++METHOS I post too much Reputation: 92
Joined: 29 Oct 2010 Posts: 4197
|
Posted: Thu Jun 19, 2014 1:09 pm Post subject: |
|
|
Great work, guys. Thanks!
|
|
Back to top |
|
|
mgr.inz.Player I post too much Reputation: 218
Joined: 07 Nov 2008 Posts: 4438 Location: W kraju nad Wisla. UTC+01:00
|
Posted: Fri Jun 20, 2014 8:20 am Post subject: |
|
|
Small problem with pointers in memoryrecords ( or is it addressList issue) and userdefined symbols.
Example:
I'm using this AA script
Code: | [ENABLE]
alloc(newmem,2048)
label(returnhere)
aobscan(codeAOB,CC CC 8B 81 D0 01 00 00 C3 CC CC )
registersymbol(codeAOB)
label(ItemAddressBase)
registersymbol(ItemAddressBase)
newmem:
mov [ItemAddressBase],ecx
mov eax,[ecx+000001D0] // original code
jmp returnhere
ItemAddressBase:
dd 00
codeAOB+2:
jmp newmem
nop
returnhere:
[DISABLE]
codeAOB+2:
//Alt: mov eax,[ecx+000001D0]
db 8B 81 D0 01 00 00
unregistersymbol(ItemAddressBase)
unregistersymbol(codeAOB)
dealloc(newmem) |
And I have few 1-level pointers in addressList. I've set hotkeys for all of them
[ItemAddressBase]+800
[ItemAddressBase]+804
[ItemAddressBase]+808
etc.
Now, I enable that script, I use some cheats (changing item properties) then I turn off that script.
Problem is:
ItemAddressBase doesn't exists (because of unregistersymbol command)
But, pointers still keep old ItemAddressBase value as base address. Game allocates and deallocates memory quite frequently, it can allocate the same memory where our script was residing. If you hit some keys accidentally, you can overwrite some important data and cause game crash.
Other example, example_1.CT
Open attached CT file. Enable "my cheat" script, pointer will point to 00400500
Disable "my cheat" script, pointer will point to 00000000 as expected.
Now, enable "simulate that game allocated something" script. You will see that pointer will point to 00400850. It is not expected because pointer base (userdefined symbol) doesn't exists.
Double click pointer (address column) and click CANCEL, pointer will reset itself, so it will point to 00000000.
This kind of pointer:
Other type is even worse (try again above steps)
Of course I found dirty workaround for this issue. Check example_2.CT (2-level pointer)
I see two possible solutions to this problem:
- for every unregistersymbol CE should refresh memory records which have that userdefined symbol.
- another "group config". Maybe "(De)Activating this entry (de)activate hotkeys of children"
Description: |
|
Download |
Filename: |
example_2.CT |
Filesize: |
2.15 KB |
Downloaded: |
1769 Time(s) |
Description: |
|
Download |
Filename: |
example_1.CT |
Filesize: |
2.05 KB |
Downloaded: |
1680 Time(s) |
_________________
Last edited by mgr.inz.Player on Fri Jun 20, 2014 9:03 am; edited 3 times in total |
|
Back to top |
|
|
gavran How do I cheat? Reputation: 0
Joined: 13 Jun 2014 Posts: 8
|
Posted: Fri Jun 20, 2014 8:56 am Post subject: |
|
|
Great
|
|
Back to top |
|
|
NanoByte Expert Cheater Reputation: 1
Joined: 13 Sep 2013 Posts: 222
|
Posted: Fri Jun 20, 2014 9:04 am Post subject: |
|
|
Wooohoo thx alot
|
|
Back to top |
|
|
Redouane Master Cheater Reputation: 3
Joined: 05 Sep 2013 Posts: 363 Location: Algeria
|
Posted: Sun Jun 22, 2014 5:18 pm Post subject: |
|
|
1-In help file CheatEngine.chm :
Auto Assembler help:aobscanmodule(name,module,aob) and luacall(luacode) are missing.
Basic assembler:'note: It's really usefull to understand how those values between brackets work, because then you can make the most use of the pointer stuff in CE 4.1 (It will remove for most games the Dynamic Memory Allocation problem for most games, if you know how how to look at the assembler code that accesses the values you found)'
'for most games' is repeated twice,the 1st one should be removed.
Also,64-bit operating systems are more widely used,and there is nothing in the help file about 64-bit asm,in the 'basic assembler' part,he said 'There are also 64 and 128 bit registers, but I wont discuss them since they are hardly ever used, and cant be used with the other instructions that also work with 32 bit)' but nowadays,64bit stuff are more widely spread.
There are already tutorials on 64bit asm on the web.
2-In the auto assembler of CE:
when a script starts with {$Lua},when you press execute,the Lua code gets executed before the popup 'This code can be injected,are you sure?'
For experimental purpose,try this and see which popup you get first:
Code: | {$Lua}
showMessage'Hello Dark-Byte,how is going?'
--[[This could write to the memory of the opened process]]--
|
This could cause problems if the code writes to an address or something.
3-Still in the auto assembler,'return' does not work like print,it raises an error (in line 0),see the picture for more details.
Awesome work man ^^.
[EDIT] Added a few things I noticed.
Description: |
|
Filesize: |
10.45 KB |
Viewed: |
101971 Time(s) |
|
|
|
Back to top |
|
|
Dark Byte Site Admin Reputation: 458
Joined: 09 May 2003 Posts: 25296 Location: The netherlands
|
Posted: Sun Jun 22, 2014 6:02 pm Post subject: |
|
|
1: I guess I still forgot to document it (it's been in since ce 6.3)
2: {$lua} sections are preprocessor sections. They get executed before the auto assembler script actually gets executed.
Their return value will be what the auto assembler will assemble
which explains problem 3
the auto assembler script
(84 can't be compiled as it's not a valid AA command)
you may instead want to do something like
Code: |
00400500:
{$lua}
local x
x=84
if x then
return "mov eax,"..x
else
return "db 90 90 90 90 90"
end
|
(tip: If you are dealing with a situation where assign to cheat table triggers it then add a check for the variable "syntaxcheck" , which is true when assigning )
_________________
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 |
|
|
Csimbi I post too much Reputation: 94
Joined: 14 Jul 2007 Posts: 3110
|
Posted: Mon Jun 23, 2014 3:13 am Post subject: |
|
|
CE keeps re-creating the "My Cheat Tables" directory under "My Documents" even though that's not the last used location.
|
|
Back to top |
|
|
Dark Byte Site Admin Reputation: 458
Joined: 09 May 2003 Posts: 25296 Location: The netherlands
|
Posted: Mon Jun 23, 2014 4:00 am Post subject: |
|
|
That's normal. Just ignore it, or delete that folder each time
_________________
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 |
|
|
Csimbi I post too much Reputation: 94
Joined: 14 Jul 2007 Posts: 3110
|
Posted: Mon Jun 23, 2014 4:54 am Post subject: |
|
|
Any chance to get rid of it?
Code: | if (!DirExists(sLastFolder) && !DirExists(sMyCheatTables)) CreateDir(sMyCheatTables); |
|
|
Back to top |
|
|
|