 |
Cheat Engine The Official Site of Cheat Engine
|
View previous topic :: View next topic |
Author |
Message |
Zkima How do I cheat?
Reputation: 0
Joined: 27 May 2015 Posts: 7
|
Posted: Wed May 27, 2015 4:13 pm Post subject: [HELP] With some type of encryption. |
|
|
First of all i say sorry for bad english.
Good, i lost 5 days of my life wondering about of what do it with my health.
I tried xor, i tried backtrace, i tried everything what has in any tutorial in every forum about cheat engine and nothing, i just wanna a light to clear my mind, a tip, something. Here go the image. At the attachment.
Description: |
|
Filesize: |
31 KB |
Viewed: |
9779 Time(s) |

|
|
|
Back to top |
|
 |
Geri Moderator
Reputation: 111
Joined: 05 Feb 2010 Posts: 5636
|
Posted: Wed May 27, 2015 4:20 pm Post subject: |
|
|
It doesn't hurt if you post more info, like codes which are accessing to the value etc.
_________________
|
|
Back to top |
|
 |
Zkima How do I cheat?
Reputation: 0
Joined: 27 May 2015 Posts: 7
|
Posted: Wed May 27, 2015 4:25 pm Post subject: |
|
|
There.
Description: |
|
Filesize: |
34.31 KB |
Viewed: |
9773 Time(s) |

|
|
|
Back to top |
|
 |
atom0s Moderator
Reputation: 205
Joined: 25 Jan 2006 Posts: 8587 Location: 127.0.0.1
|
Posted: Wed May 27, 2015 4:31 pm Post subject: |
|
|
It is using float instructions. Try editing the value as a float instead of 4 bytes.
_________________
- Retired. |
|
Back to top |
|
 |
Zkima How do I cheat?
Reputation: 0
Joined: 27 May 2015 Posts: 7
|
Posted: Wed May 27, 2015 4:44 pm Post subject: |
|
|
Still doesn't make sense.
Description: |
|
Filesize: |
33.11 KB |
Viewed: |
9765 Time(s) |

|
Description: |
|
Filesize: |
26.67 KB |
Viewed: |
9765 Time(s) |

|
|
|
Back to top |
|
 |
Geri Moderator
Reputation: 111
Joined: 05 Feb 2010 Posts: 5636
|
Posted: Wed May 27, 2015 5:32 pm Post subject: |
|
|
Set a data breakpoint on the value and use break and trace. Then you will see the instructions after it's accessed. There are almost limitless ways to "encrypt" a value. It could be something as easy as x+1 or x*2 or it could be an encryption which takes up hundreds of lines.
_________________
|
|
Back to top |
|
 |
Gniarf Grandmaster Cheater Supreme
Reputation: 43
Joined: 12 Mar 2012 Posts: 1285
|
Posted: Wed May 27, 2015 5:38 pm Post subject: |
|
|
@Zkima: right click on your cheat entry->change record->type, and set to "float". Normally you'll see a ratio between 0 and 1 that expresses the percentage of your renaming health.
Otherwise here's a approximate formula:
Ratio=(health/max_health) as a float. (ex 380/580=0.6551724076)
Interpret ratio as an integer (ex 0.6551724076 gives 0x3F27B961=1059567969)
Approximate value in cheat engine (as 4 byte integer)=RatioAsInteger*1.2053061886 + 23983078. This gives me the correct value for 201 and 380 hp, and a value less than a percent off for 580 and 573.
Most likely that 1.2 is actually 1.0 and 23983078 is 0. I made my formula assuming your max health max 580.0 which may not be accurate... and then comes rounding errors when copy-pasting from my float<->integer converter.
EDIT: on second thought changing type to float won't work.
...And this multiply+add to a float seen as integer oddly reminds me of quake's fast invert square algorithm... I smell a logarithm somewhere...
_________________
DO NOT PM me if you want help on making/fixing/using a hack. |
|
Back to top |
|
 |
Zkima How do I cheat?
Reputation: 0
Joined: 27 May 2015 Posts: 7
|
Posted: Wed May 27, 2015 8:13 pm Post subject: |
|
|
Gniarf wrote: | @Zkima: right click on your cheat entry->change record->type, and set to "float". Normally you'll see a ratio between 0 and 1 that expresses the percentage of your renaming health.
Otherwise here's a approximate formula:
Ratio=(health/max_health) as a float. (ex 380/580=0.6551724076)
Interpret ratio as an integer (ex 0.6551724076 gives 0x3F27B961=1059567969)
Approximate value in cheat engine (as 4 byte integer)=RatioAsInteger*1.2053061886 + 23983078. This gives me the correct value for 201 and 380 hp, and a value less than a percent off for 580 and 573.
Most likely that 1.2 is actually 1.0 and 23983078 is 0. I made my formula assuming your max health max 580.0 which may not be accurate... and then comes rounding errors when copy-pasting from my float<->integer converter.
EDIT: on second thought changing type to float won't work.
...And this multiply+add to a float seen as integer oddly reminds me of quake's fast invert square algorithm... I smell a logarithm somewhere... |
Ohh guy you're awesome really thanks, this formula return exactly my value as 4 byte. Now i'll be really glad if you say to me how you got that formula, the mana uses a formula like this but doesn't the same and i want to find it too.
EDIT: I forgot to say, i want to do an algorithm which read the value of health on the memory, and i don't say what to do with these number /\ :/
because the float radio are not equal to my real health ratio.
REEDIT: I found something like the all formula look (where x = my real hp:
int(hex(x/580(I'll early know my full hp)))*1.2053061886 + 23983078 = HP 4 byte value(I know that base address) you know how to isolate the x to get the real hp value?
|
|
Back to top |
|
 |
Gniarf Grandmaster Cheater Supreme
Reputation: 43
Joined: 12 Mar 2012 Posts: 1285
|
Posted: Wed May 27, 2015 10:14 pm Post subject: |
|
|
Here's a more convenient but less accurate formula for HP:
set type to float, Hp in cheat engine=(Hp in game - 75)*1 000 000
As for how I determined the coefficients, I think this spreadsheet will explain it better than a lenghty post: Code: | max Hp,580,,,,<-you have to fill this line manually
,,,,,
,Sample 1,Sample 2,Sample 3/test,Sample 4/test,
Hp in game,380,201,573,580,<-you have to fill this line manually
ratio=,=B4/$B$1,=C4/$B$1,=D4/$B$1,=E4/$B$1,
ratio as an int,"=HEX2DEC(""3F27B961"")","=HEX2DEC(""3EB16F3A"")","=HEX2DEC(""3F7CE90C"")","=HEX2DEC(""3F800000"")",<-you have to fill this line manually
,,,,,
value seen in CE (int),1301086908,1291743096,1307287354,1307523516,<-you have to fill this line manually
value seen in CE (float),295720832,133397440,494135104,501692288,<-you have to fill this line manually
,,,,,
,,,,,
,,,,,
,,,,,
FORMULA 1,,,,,
coefficient=,=(B8-C8)/(B6-C6),,,,
offset=,=B8-B15*B6,,,,
,,,,,
"=""The first formula is CE integer=RatioAsInteger*""&B15&""+""&B16",,,,,
,,,,,
output (CE integer)=,=$B$15*B6+$B$16,=$B$15*C6+$B$16,=$B$15*D6+$B$16,=$B$15*E6+$B$16,
accuracy=,irrelevant,irrelevant,=100*D20/D8,=100*E20/E8,
,,,,,
,,,,,
,,,,,
FORMULA 2,,,,,
coefficient=,=(B9-C9)/(B4-C4),,,,
offset=,=B9/B26-B4,,,,
,,,,,
"=""The second formula is CE float=(Value in game + ""&B27&"")*""&B26",,,,,
,,,,,
output=,=(B4+$B$27)*$B$26,=(C4+$B$27)*$B$26,=(D4+$B$27)*$B$26,=(E4+$B$27)*$B$26,
accuracy=,irrelevant,irrelevant,=100*D31/D9,=100*E31/E9,
| Paste into an empty text file, set extension to .cvs and open with open office/excel.
Warning the forum might add a single space at the beginning of each line. A workaround is to quote my post and copy from the post editor.
Zkima wrote: | the float radio are not equal to my real health ratio | I don't understand what you mean there. The "float radio" you speak about there, is it my 380/580? And what is your "real health ratio"?
Zkima wrote: | where x = my real hp:
int(hex(x/580(I'll early know my full hp)))*1.2053061886 + 23983078 = HP 4 byte value(I know that base address) you know how to isolate the x to get the real hp value? | x=580*ReadAsFloat( (CE_IntValue-23983078)/1.2053061886 )
Looks like someone wasn't very fond of math classes...
_________________
DO NOT PM me if you want help on making/fixing/using a hack. |
|
Back to top |
|
 |
Zkima How do I cheat?
Reputation: 0
Joined: 27 May 2015 Posts: 7
|
Posted: Wed May 27, 2015 11:28 pm Post subject: |
|
|
I'll going to sleep tomorrow i see this.
Gniarf wrote: |
As for how I determined the coefficients, I think this spreadsheet will explain it better than a lenghty post: Code: | max Hp,580,,,,<-you have to fill this line manually
,,,,,
,Sample 1,Sample 2,Sample 3/test,Sample 4/test,
Hp in game,380,201,573,580,<-you have to fill this line manually
ratio=,=B4/$B$1,=C4/$B$1,=D4/$B$1,=E4/$B$1,
ratio as an int,"=HEX2DEC(""3F27B961"")","=HEX2DEC(""3EB16F3A"")","=HEX2DEC(""3F7CE90C"")","=HEX2DEC(""3F800000"")",<-you have to fill this line manually
,,,,,
value seen in CE (int),1301086908,1291743096,1307287354,1307523516,<-you have to fill this line manually
value seen in CE (float),295720832,133397440,494135104,501692288,<-you have to fill this line manually
,,,,,
,,,,,
,,,,,
,,,,,
FORMULA 1,,,,,
coefficient=,=(B8-C8)/(B6-C6),,,,
offset=,=B8-B15*B6,,,,
,,,,,
"=""The first formula is CE integer=RatioAsInteger*""&B15&""+""&B16",,,,,
,,,,,
output (CE integer)=,=$B$15*B6+$B$16,=$B$15*C6+$B$16,=$B$15*D6+$B$16,=$B$15*E6+$B$16,
accuracy=,irrelevant,irrelevant,=100*D20/D8,=100*E20/E8,
,,,,,
,,,,,
,,,,,
FORMULA 2,,,,,
coefficient=,=(B9-C9)/(B4-C4),,,,
offset=,=B9/B26-B4,,,,
,,,,,
"=""The second formula is CE float=(Value in game + ""&B27&"")*""&B26",,,,,
,,,,,
output=,=(B4+$B$27)*$B$26,=(C4+$B$27)*$B$26,=(D4+$B$27)*$B$26,=(E4+$B$27)*$B$26,
accuracy=,irrelevant,irrelevant,=100*D31/D9,=100*E31/E9,
| Paste into an empty text file, set extension to .cvs and open with open office/excel.
Warning the forum might add a single space at the beginning of each line. A workaround is to quote my post and copy from the post editor.
Zkima wrote: | where x = my real hp:
int(hex(x/580(I'll early know my full hp)))*1.2053061886 + 23983078 = HP 4 byte value(I know that base address) you know how to isolate the x to get the real hp value? | x=580*ReadAsFloat( (CE_IntValue-23983078)/1.2053061886 )
Looks like someone wasn't very fond of math classes...  |
My formula are returning something differente than it be look x=580 ReadAsFloat( (1308774563-23983078)/1.2053061886 ). It's resulting 620 what's wrong?
|
|
Back to top |
|
 |
Gniarf Grandmaster Cheater Supreme
Reputation: 43
Joined: 12 Mar 2012 Posts: 1285
|
Posted: Thu May 28, 2015 12:30 pm Post subject: |
|
|
After entering the values from your 1st and 3rd screenshots into a spreadsheet, doing an XY plot and asking for a "power" trendline, I get a near perfect fit with:
CE_float=173000*(InGameValue^1.252829752)
or
InGameValue=(CE_float/173000)^(1/1.252829752)
"^" meaning "elevated to the power".
Zkima wrote: | My formula are returning something differente than it be look x=580 ReadAsFloat( (1308774563-23983078)/1.2053061886 ). It's resulting 620 what's wrong? | A typo in 1308774563?
1 307 523 516 corresponds to 580, so
1 308 774 563 will correspond to something bigger than 580. All 3 formulas give something in the 620 vicinity... What value does is correspond to ingame?
_________________
DO NOT PM me if you want help on making/fixing/using a hack. |
|
Back to top |
|
 |
Zkima How do I cheat?
Reputation: 0
Joined: 27 May 2015 Posts: 7
|
Posted: Thu May 28, 2015 1:08 pm Post subject: |
|
|
Gniarf wrote: | After entering the values from your 1st and 3rd screenshots into a spreadsheet, doing an XY plot and asking for a "power" trendline, I get a near perfect fit with:
CE_float=173000*(InGameValue^1.252829752)
or
InGameValue=(CE_float/173000)^(1/1.252829752)
"^" meaning "elevated to the power".
|
Thanks, really thanks. But has one more thing. Every time i restart the game the max hp float and int value changes, i think it's impossible to do something like i want. Now my 580 hp is 584098240 in float and 1309360775 as integer. It's so confusing to me :/. But thanks anyway.
EDIT: Please, can you try to explain to me how are you finding these formulas? Maybe one of that numbers are stored on an address and i can find that base address then made the calculate by myself. Just if you can and not will waste your time and more one time thanks.
|
|
Back to top |
|
 |
Gniarf Grandmaster Cheater Supreme
Reputation: 43
Joined: 12 Mar 2012 Posts: 1285
|
Posted: Thu May 28, 2015 4:42 pm Post subject: |
|
|
Zkima wrote: | Please, can you try to explain to me how are you finding these formulas? | Pretty much all the explanation is in this sentense: Gniarf wrote: | After entering the values from your 1st and 3rd screenshots into a spreadsheet, doing an XY plot and asking for a "power" trendline, I get a near perfect fit | If you don't see what I mean, watch this: https://www.youtube.com/watch?v=bYf6qO-iBW0
Only difference is that I put in-game values where the guy put the temperatures, and CE floats where he put his sales of jackets. Trendlines are shown near 3:20, the second formula was found with a linear trendline, the third one with a power trendline. Just tick the show equation box and the formulas I posted will appear onscreen (minus human rounding, IIRC 173000 was something like 1728**.*****). This IS how I found them, not a shortcut to the result.
You can also use the updated csv spreadsheet below to get the exponent+coefficient for formula 3 with only 2 known game value-ce float pairs, but it's probably slightly less accurate since it only uses 2 matches while chart trendlines averages over all their points. Code: | max Hp,580,,,,<-you have to fill this line manually
,,,,,
,Sample 1,Sample 2,Sample 3/test,Sample 4/test,
Hp in game,380,201,573,580,<-you have to fill this line manually
ratio=,=B4/$B$1,=C4/$B$1,=D4/$B$1,=E4/$B$1,
ratio as an int,"=HEX2DEC(""3F27B961"")","=HEX2DEC(""3EB16F3A"")","=HEX2DEC(""3F7CE90C"")","=HEX2DEC(""3F800000"")",<-you have to fill this line manually
,,,,,
value seen in CE (int),1301086908,1291743096,1307287354,1307523516,<-you have to fill this line manually
value seen in CE (float),295720832,133397440,494135104,501692288,<-you have to fill this line manually
,,,,,
,,,,,
,,,,,
,,,,,
FORMULA 1,,,,,
coefficient=,=(B8-C8)/(B6-C6),,,,
offset=,=B8-B15*B6,,,,
,,,,,
"=""The first formula is CE integer=RatioAsInteger*""&B15&""+""&B16",,,,,
,,,,,
output (CE integer)=,=$B$15*B6+$B$16,=$B$15*C6+$B$16,=$B$15*D6+$B$16,=$B$15*E6+$B$16,
accuracy=,irrelevant,irrelevant,=100*D20/D8,=100*E20/E8,
,,,,,
,,,,,
,,,,,
FORMULA 2,,,,,
coefficient=,=(B9-C9)/(B4-C4),,,,
offset=,=B9/B26-B4,,,,
,,,,,
"=""The second formula is CE float=(Value in game + ""&B27&"")*""&B26",,,,,
,,,,,
output=,=(B4+$B$27)*$B$26,=(C4+$B$27)*$B$26,=(D4+$B$27)*$B$26,=(E4+$B$27)*$B$26,
accuracy=,irrelevant,irrelevant,=100*D31/D9,=100*E31/E9,
,,,,,
,,,,,
FORMULA 3,,,,,
exponent=,=LN(B9/C9)/LN(B4/C4),,,,
coefficient=,=B9/(B4^B36),,,,
,,,,,
"=""The third formula is CE float=""&B37&"" * (Value in game^""&B36&"")""",,,,,
,,,,,
output=,=$B$37*B4^$B$36,=$B$37*C4^$B$36,=$B$37*D4^$B$36,=$B$37*E4^$B$36,
accuracy=,irrelevant,irrelevant,=100*D41/D9,=100*E41/E9, |
_________________
DO NOT PM me if you want help on making/fixing/using a hack. |
|
Back to top |
|
 |
Zkima How do I cheat?
Reputation: 0
Joined: 27 May 2015 Posts: 7
|
Posted: Thu May 28, 2015 7:23 pm Post subject: |
|
|
@Gniarf
Guy i really glad of everythin you did to me, really. But you know if has some other way to do it? Like trace backing, breakpoint the value or what access this or another way for i understand it and do the formula with just one know number? Look i know the real total hp, the ce value total hp and i know the base address of current hp, but i don't know what to do with that, i'm really confused. Maybe if i learn some ASM codes i can handle it better?
|
|
Back to top |
|
 |
Gniarf Grandmaster Cheater Supreme
Reputation: 43
Joined: 12 Mar 2012 Posts: 1285
|
Posted: Thu May 28, 2015 8:58 pm Post subject: |
|
|
Zkima wrote: | Guy i really glad of everythin you did to me, really. But you know if has some other way to do it? Like trace backing, breakpoint the value or what access this or another way for i understand it and do the formula with just one know number? | Find what accesses your value, pick any of the "fld ***" results->show disassembler and try to see what the games does with this float, but you'll need good assembly knowledge.
Mathematically you cannot find 2 unknown parameters with only one known value, you need as many known stuff as unknown stuff you're trying to figure. Try to see if both the exponent and the coefficient change, because an exponent of 1.25 doesn't look very randomly generated to me....
_________________
DO NOT PM me if you want help on making/fixing/using a hack. |
|
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
|
|