Now I'm dealing with float, the original value is 10, and activated it should be 0, but completely different numbers come out.
Can someone please help?
This isn't the correct category since it's about Auto Assembler and not Lua; however, float values use either the FPU stack or the XMM registers. You can either use those or allocate memory to store an arbitray value. Either of these methods require copy injection methods.
This snippet allocates 8 bytes to store our arbitrary value, and under the newmem: label we subtract 16-bytes from the stack to store the value held in the xmm0 register just in case. We then copy (move) the arbitrary value to the xmm0 register which is then copied to [rax]. We then move the stack value back to xmm0 and restore the stack by adding 16-bytes back.
What I'm trying to understand is why he's doing "add [rax],al". Who teaches you people these things o_O? Tell me which post you read or video you watched to go after them...
It should be plain simple:
[[[[[["GAME.exe"+0554A568]+B08]+A8]+F8]+50]+250]+F40:
db 1
-or-
dd 1
-or-
dd (float)1.0
What I'm trying to understand is why he's doing "add [rax],al". Who teaches you people these things o_O? Tell me which post you read or video you watched to go after them...
It should be plain simple:
[[[[[["GAME.exe"+0554A568]+B08]+A8]+F8]+50]+250]+F40:
db 1
-or-
dd 1
-or-
dd (float)1.0
Take your pick.
Rather elegant solution, although I did find the instruction the OP posted quite strange myself.
What I'm trying to understand is why he's doing "add [rax],al". Who teaches you people these things o_O? Tell me which post you read or video you watched to go after them...
(Google translate)
This is a very, very important and useful assembler instruction, it is used very often, even many times in a row.
For example, the first lines of code in the Cheat Engine program are: