 |
Cheat Engine The Official Site of Cheat Engine
|
View previous topic :: View next topic |
Author |
Message |
Redouane Master Cheater
Reputation: 3
Joined: 05 Sep 2013 Posts: 363 Location: Algeria
|
Posted: Mon Oct 14, 2013 2:38 am Post subject: Very important bug report! |
|
|
Question:
how to move a float value to a register like xmm# or mm#?(mov xmm0,(float/double)# not working)
also,Is there any good tutorial about how to make a custom scan that does a known operation (adds n number to every value or multiplies/divides any value by n' number or scan for (un)Xored values in a game like chicken invaders (encrypted values))?thanks.
Bugs:
1-[MAJOR BUG]:In both float and double (floating points),when you first make an "unknown initial value" scan,the "increased/decreased value by x amount isn't working,try opening ce,choosing a random process,scanning for "Unknown I.V." and using increased/decreased value by a big amount (like 546910634) and do many similar rescans,you'll notice the bug.
2-[MINOR]Open new scan tab/(Choose any scan type (integer or floating point),do unknown initial value) on both,when you'll go to the other one,you'll find 0 results.
3-[MINOR]Place a cheat table inside a folder and use unicode characters to rename the folder (like ☺☻♥♦♣♠•◘○◙♪♫☼►◄↕‼ etc.),then try to open the cheat table and it won't work (It'll just open a blank CE window).
4-[MINOR]Spellar mistake in the auto assembler:"you havn't specified a DISABLE section",It should be "haven't"
5-[MINOR]If you open a file in cheat engine (process/open file),then scan for a value and "find out what writes/accesses it" (attach debugger),your PC will crash,I know it's stupid but the option shouldn't be there.
5-[MINOR]If you open a file in cheat engine (process/open file),then scan for unknown initial value you'll have n results,if you do a rescan with "unchanged" option it'll show n-3 results,otherwise,if you scan for "changed" values after the initial scan you'll have 0 results,that means that the results counter is doing something wrong.
Suggestion:
1-[IMPORTANT]A changed/unchanged rescan option for string values,especially useful in games like z-rox where you must type the answer of every level,to find the address that holds the correct answer.
2-[LESS IMPORTANT]Syntax for float registers:In the ASM,the synax highlightning makes it much easier to detect mistakes and stuff like that,while the normal registers have an orange color (eax,ebx,esp,ebp,esi,edi etc.),the float registers (like xmm0,xmm1,mm0,mm1) are not highlightened.
3-[AVERAGE]An option to scan for "static addresses only" (green),just put a checkbox under the scan :
|Checked: Scan only static addresses.
|Unckecked: Don't scan static addresses.
|Gray:Don't care if it's static or not.
|With the setting : Gray by defaut.
---------------------------------------
@Dark-byte: Good luck Improving CE,I hope that you'll use this topic to make your amazing software even better.
Also,I'm using Cheat engine 6.3 no_setup.
Windows XP.
Last edited by Redouane on Thu Oct 17, 2013 8:18 am; edited 1 time in total |
|
Back to top |
|
 |
Dark Byte Site Admin
Reputation: 470
Joined: 09 May 2003 Posts: 25785 Location: The netherlands
|
Posted: Mon Oct 14, 2013 5:32 am Post subject: |
|
|
I'll check it out
About suggestion 4, is it a .exe, .ct or something else you launched?
_________________
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 |
|
 |
Redouane Master Cheater
Reputation: 3
Joined: 05 Sep 2013 Posts: 363 Location: Algeria
|
Posted: Mon Oct 14, 2013 5:58 am Post subject: |
|
|
Dark Byte wrote: | I'll check it out
About suggestion 4, is it a .exe, .ct or something else you launched? |
It wasn't a Ct file,it was a .sol file (AS3 save file),I was expecting it to automatically open the file (like select process-open file).
|
|
Back to top |
|
 |
mgr.inz.Player I post too much
Reputation: 222
Joined: 07 Nov 2008 Posts: 4438 Location: W kraju nad Wisla. UTC+01:00
|
Posted: Mon Oct 14, 2013 6:26 am Post subject: |
|
|
@Redone, it's perfectly normal.
You can not open other files like this:
Code: | "C:\Program Files\Cheat Engine 6\Cheat Engine.exe" "e:\whatever\AS3\whatever.ext" |
_________________
|
|
Back to top |
|
 |
Redouane Master Cheater
Reputation: 3
Joined: 05 Sep 2013 Posts: 363 Location: Algeria
|
Posted: Tue Oct 15, 2013 10:51 am Post subject: |
|
|
mgr.inz.Player wrote: | @Redone, it's perfectly normal.
You can not open other files like this:
Code: | "C:\Program Files\Cheat Engine 6\Cheat Engine.exe" "e:\whatever\AS3\whatever.ext" |
|
Dude,did you forgot about the hex editing part of CE? try opening CE,then click on the select process button,then "open file",then open any file you want and scan for whatever you want there.
|
|
Back to top |
|
 |
mgr.inz.Player I post too much
Reputation: 222
Joined: 07 Nov 2008 Posts: 4438 Location: W kraju nad Wisla. UTC+01:00
|
Posted: Wed Oct 16, 2013 8:52 am Post subject: |
|
|
@Redone
No, you do not understand.
Quote: | 4-[LESS IMPORTANT]If you right click on a file/open with/choose program/cheat engine,It won't really open,It'll just open a blank CE window with no file (or process) selected. |
Open system registry and go to:
HKEY_CLASSES_ROOT\CheatEngine
Go further:
HKEY_CLASSES_ROOT\CheatEngine\shell\open\command
There is default value (yours can be different):
"C:\Program Files\Cheat Engine 6\Cheat Engine.exe" "%1"
So, right-clicking on file and choosing CheatEngine, will launch this command
"C:\Program Files\Cheat Engine 6\Cheat Engine.exe" "X:\path\to\selected\file"
CheatEngine tries to open those files as "cheat tables" ("cheat engine trainer" or "cheat engine table").
Ask DB to add special switch to CheatEngine and special "CE Explorer's context-menu for other files".
@DB, if you do, here my suggestion:
"C:\Program Files\Cheat Engine 6\Cheat Engine.exe" -hexedit "%1"
_________________
|
|
Back to top |
|
 |
Redouane Master Cheater
Reputation: 3
Joined: 05 Sep 2013 Posts: 363 Location: Algeria
|
Posted: Thu Oct 17, 2013 8:22 am Post subject: |
|
|
mgr.inz.Player wrote: | @Redone
No, you do not understand.
Quote: | 4-[LESS IMPORTANT]If you right click on a file/open with/choose program/cheat engine,It won't really open,It'll just open a blank CE window with no file (or process) selected. |
Open system registry and go to:
HKEY_CLASSES_ROOT\CheatEngine
Go further:
HKEY_CLASSES_ROOT\CheatEngine\shell\open\command
There is default value (yours can be different):
"C:\Program Files\Cheat Engine 6\Cheat Engine.exe" "%1"
So, right-clicking on file and choosing CheatEngine, will launch this command
"C:\Program Files\Cheat Engine 6\Cheat Engine.exe" "X:\path\to\selected\file"
CheatEngine tries to open those files as "cheat tables" ("cheat engine trainer" or "cheat engine table").
Ask DB to add special switch to CheatEngine and special "CE Explorer's context-menu for other files".
@DB, if you do, here my suggestion:
"C:\Program Files\Cheat Engine 6\Cheat Engine.exe" -hexedit "%1" |
[UPDATE]
Sorry for the last suggestion (too useless)
Can you please approve/deny the bugs?or give feedback on suggestions.
also,other small suggestion:in ASM:syntax highlightning for the dq opcode (write quadword),just like db and dd.
Also,from time to time,I get the "debugger crash: access violation" error that crashes the game,I don't really know when it happens,but got it more than 6 times.
|
|
Back to top |
|
 |
Dark Byte Site Admin
Reputation: 470
Joined: 09 May 2003 Posts: 25785 Location: The netherlands
|
Posted: Thu Oct 17, 2013 8:56 am Post subject: |
|
|
I'll check them out when i get time (dq has already been fixed, and the mm* registers will be fixed too)
As for 1, those results seem correct. Floating point values are not precise values.
14E44 + 100000 = 14E44
I can't add a scan to see if it's different first, because increased value by 0 is a valid option as well, especially for floats
And I'm not sure the changed/unchanged string values is as usable as you might think. Most programming languages allocate a whole new memory block whenever a string get changed
Anything specific you do when you get the debugger crash? (Which debugger interface? What type of breakpoints? How many breakpoints where active? Did you use the tracer? Where you manually tracing ? Did you have a lua script that intercepts debug events running? )
_________________
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 |
|
 |
Gniarf Grandmaster Cheater Supreme
Reputation: 43
Joined: 12 Mar 2012 Posts: 1285
|
Posted: Thu Oct 17, 2013 6:12 pm Post subject: |
|
|
Dark Byte wrote: | I can't add a scan to see if it's different first, because increased value by 0 is a valid option as well, especially for floats | In TScanner.configurescanroutine, what about changing scanOption to soUnchanged when strtofloat(scanvalue1,FloatSettings)=0 and scanOption is soDecreasedValueBy or soIncreasedValueBy (and then making sure the data changed in the in/decreased by filters)?
_________________
DO NOT PM me if you want help on making/fixing/using a hack. |
|
Back to top |
|
 |
Redouane Master Cheater
Reputation: 3
Joined: 05 Sep 2013 Posts: 363 Location: Algeria
|
Posted: Sun Oct 20, 2013 5:49 am Post subject: |
|
|
Dark Byte wrote: | I'll check them out when i get time (dq has already been fixed, and the mm* registers will be fixed too)
As for 1, those results seem correct. Floating point values are not precise values.
14E44 + 100000 = 14E44
I can't add a scan to see if it's different first, because increased value by 0 is a valid option as well, especially for floats |
Yeah,float falues are not precise,but this screws up my search most of the time,let's say for example that the money is stored as double,and it's an exact value (let's say 203),when you scan for 203 (truncated) then scan for values smaller than 203.00000000000000001 (to filter out the crap that is not exactly equal to 203)or bigger than 202.99999999999999 It'll most likely skip the correct result,also,a value that is increased by 50% is multiplied X1.5,so if the float value is equal to 1000,increased by 50% would mean equal to 1500 (increased by 500 should work too,it's not the case),In one hand you say that floating point values can hold real values (more precise than integers),and their range is bigger,but in another hand,you say that float values are not that precise.
Quote: | Anything specific you do when you get the debugger crash? (Which debugger interface? What type of breakpoints? How many breakpoints where active? Did you use the tracer? Where you manually tracing ? Did you have a lua script that intercepts debug events running? ) |
That mostly happens when I try to find out what addresses a code reads from,then close the window when I get the result without pressing stop and open another one for another code etc. till i get a message like "all debuggers are used,do you want to use a software debugger" or something like that and then I get the error.
|
|
Back to top |
|
 |
|
|
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
|
|