View previous topic :: View next topic |
Author |
Message |
zero29 How do I cheat? Reputation: 0
Joined: 20 Jul 2017 Posts: 4
|
Posted: Thu Jul 20, 2017 10:57 am Post subject: Huge values (x.xxEyyy) in double type |
|
|
Got a problem with searching for numbers in scientific notation. The game (clicker genre) stores money in a double, searching for it via unknown starting value and increased/decreased value works fine (cumbersome though). The found value can be manipulated and as soon as the game updates money, it's shown correctly (e.g. 1.00E100).
Thing is, when trying to find the displayed value more directly with something like value between 9E99 and 2E100, it doesn't yield any results. And searching for values bigger than 9E99 shows millions of results but almost all of them are in the range of xE-300 to xE-320. Am I missing something here? Is there something special to keep in mind when searching for values in scientific notation?
|
|
Back to top |
|
|
OldCheatEngineUser Whateven rank Reputation: 20
Joined: 01 Feb 2016 Posts: 1587
|
Posted: Thu Jul 20, 2017 4:49 pm Post subject: |
|
|
add that value to address list, then change value type to 4byte or float.
and very rarely you find it an actual complex value.
like even if you changed it to 4byte it would be 1billions something, or 4billion something.
_________________
About Me;
I Use CE Since Version 1.X, And Still Learning How To Use It Well!
Jul 26, 2020
STN wrote: | i am a sweetheart. |
|
|
Back to top |
|
|
zero29 How do I cheat? Reputation: 0
Joined: 20 Jul 2017 Posts: 4
|
Posted: Fri Jul 21, 2017 3:04 am Post subject: |
|
|
ok, changed types:
double: 1E175 (as shown in the game and ce)
float: 1.545017836E32
4byte: 1962132166
double: 9.99998132856659E174 (game cuts off at 9.99E174)
float: -1.809142132E36
4byte: 4222498508
|
|
Back to top |
|
|
atom0s Moderator Reputation: 199
Joined: 25 Jan 2006 Posts: 8518 Location: 127.0.0.1
|
Posted: Fri Jul 21, 2017 9:12 pm Post subject: |
|
|
If the value is stored in a double, the size is 8 bytes. Using a 4-byte value is not going to work properly or efficiently since it won't contain the entire value.
An unsigned int (4 bytes) can hold a max value of: 4,294,967,295
A signed int (4 bytes) can hold a max value of: 2,147,483,647
Which will not hold the amount of money the game is going to allow you to have.
If the value is stored as an 8-byte value (int64) then the max values can be:
- signed: 9,223,372,036,854,775,807
- unsigned: 18,446,744,073,709,551,615
If the value is an actual double floating point value, then the max will be up to: 1.7E +/- 308
Also represented as:
1.7976931348623157E+308
_________________
- Retired. |
|
Back to top |
|
|
zero29 How do I cheat? Reputation: 0
Joined: 20 Jul 2017 Posts: 4
|
Posted: Sat Jul 22, 2017 7:38 am Post subject: |
|
|
don't wanna sound ungrateful, but i know about the lengths and ranges of the standard data types. and i think ce and me already identified the value as a double, otherwise trying to change the money value to 1E175 would be rather unsuccessful.
still doesn't answer my question, why searching for bigger than 1000000000000000000000000000000 works fine, but searching for bigger than 1E30 finds millions of wrong results (especially the millions of zeros among them are weird).
|
|
Back to top |
|
|
zero29 How do I cheat? Reputation: 0
Joined: 20 Jul 2017 Posts: 4
|
Posted: Wed Jul 26, 2017 2:30 pm Post subject: |
|
|
seriously? nobody with an idea why the search behaves this way?
|
|
Back to top |
|
|
ParkourPenguin I post too much Reputation: 140
Joined: 06 Jul 2014 Posts: 4300
|
Posted: Wed Jul 26, 2017 2:49 pm Post subject: |
|
|
IIRC DB once said something about CE parsing input based on the number of characters entered, but I can't easily find it.
_________________
I don't know where I'm going, but I'll figure it out when I get there. |
|
Back to top |
|
|
|