This is the easy part in my experience. The difficult part is actually finding the correct memory addresses for what you want to do (which you can't always just google) AND getting around any potential anticheat systems in place for whichever game you're trying to do this with
Yo man really nice in depth tutorial ;) Been into memory hacking lately with C++ and into understanding the absolute basics, this helped me soo much ;) THANKS!
@@linuxterm7622 Are you stupid, I know c++ by heart, but this kid should've explained how the code works since he's using WINDOWS LIBRARIES, how the fuck does having a good c++ understanding can help you understand a library, a library is literally a whole new language that you need to learn...
Can I ask a question? How jump adresses or landing addresses are being the same addresses, i mean every time you start a game they have to be changed, how is that possible? (Im learning C++)
@-Plube- Even if he found on Google, there was still someone who found the values, right? One way is you can do changed and unchanged value. Then, you will find the right value. Take note of the value, so next time you can directly search for them.
Scripts are simulating input while hacks are straight up forcing it by changing the values. When you regular bhop there’s always a chance that it will or won’t work(even when you do it right) and scripting simulated regular bhopping and no values are changed manually, the game acts as if you are bhopping normally. but when you hack you are forcing your player to jump every time and you and changing values instead of letting them changing automatically
But yeah one question, so as you know the addresses for all of the forcejumps and shit change everytime i restart CS:GO and i would want to code it again everytime when i restart CS:GO so how could i make it so that it gets the addresses everytime like the big hacks do
Joje Perplex at unknown cheats there are all the addresses, they change every update. So would have to update your cheat every other csgo update. To have an auto updating cheat you would have to make an internal cheat. The one I demonstrated in this video is an external.
It is just too late to reply but it might still help some other people. To make a cheat that works everytime you restart the game you must find the pointers for the adresses which are indicated in the video.
nah this is very basic better to take the processes snapshot, locate the process id and sue it to retrieve the module base address and with the offset you will get the static player base address, from which you can dereference the other addresses , and use them to read and write the memory
in this example, he's using Cheat engine to find values that he already knew, you won't know them. That's 256 & 257, he didn't explain how he found them, probably lots of testing, or a forum. So in short, you won't be able to do that w/o a lot of trying, most newer, top end games have Cheat protection, so this is worthless. For something like health, if using the same tool, it's much more straight forward. If you download cheatEngine and do the Tutorial it'll be explained in pretty good detail. In a nutshell, check for current health, and check again once it changes to narrow down which part of memory is storing that value and was value 1 and later was value 2, or value 3. In just about any game these days it's around 3 locations in memory for things like health, (because protected values of how compilers write it). That's similar to what he did w/ the 2nd one and found a single value in memory. Cheat engine can actually do a lot of it for you since this is old.
@@osufwiffo I have a problem where the address keeps changing when I restarted the game. Is it possible to specify the exact memory address of player's health for example? So I don't have to scan the change of value to find the address every time I opened the game
does this work everytime? or do we have to code it every time with a new address. i heard that you need to have a static address but when i did it. it didnt work
create a .asm file with the required code link it with the cpp file like this external "C" Asm_Function(parameters here); in the ASM file you have to declare it with -------------------------------- .386 .model flat,c .code Asm_Function proc /// asm code here/// Asm_Function endp end
He explained in the video 257: The value returned when the player is on the ground 256: The value returned when the player is in the air 5: The value for the "+jump" command which causes the player to enter the jump state 4: The value for the "-jump" command which causes the player to leave the jump state
@nn I mean this is basically almost the same like an assault cube trainer right? Just with different values (addresses) (correct me if I am wrong with that)) and that you would change different things like ammo or health etc. Or even bhop idk if it works in assault cube. I just started codIng like 2 - 3 weeks ago but as far as I know it's the same principal just with different values as I said
Appreciate it, even 5 years later. Other tutorials just couldnt read/write the memory value, but this one actually did it.
This is the easy part in my experience. The difficult part is actually finding the correct memory addresses for what you want to do (which you can't always just google) AND getting around any potential anticheat systems in place for whichever game you're trying to do this with
In gta san andreas you can find the money address on a wiki
my guy in windows 7, playing css. He is a decade behind
You right
Yo man really nice in depth tutorial ;) Been into memory hacking lately with C++ and into understanding the absolute basics, this helped me soo much ;) THANKS!
do you have any good resource to learn from memory hacking in general? i like this vid too
do you call this in depth? You didn't explain what anything means ffs
true.
Check channel Cheat the Game
That guy is amazing
You should have a solid understanding of c++ before you try this.
It is not his fault
@@linuxterm7622 Are you stupid, I know c++ by heart, but this kid should've explained how the code works since he's using WINDOWS LIBRARIES, how the fuck does having a good c++ understanding can help you understand a library, a library is literally a whole new language that you need to learn...
Thx just made my first assult cube cheat with your Read and Write tutorial.
Can I ask a question?
How jump adresses or landing addresses are being the same addresses, i mean every time you start a game they have to be changed, how is that possible? (Im learning C++)
I hope you will enlight us :)
@@freeman9092 Learn offsett and pointer
You need to find a pointer, they never change unless you update your game or download a dlc
@@freeman9092Stephen Chapman has a series of videos that teach you how to use cheat engine, episode 7 teach you how to scan a pointer address
@@DionysusWines How to find a pointer
well done my friend from 2021.
Ha I’m in 2022
@@presidentjoebiden4307 I am from year 2029
Nice video !
Very good my friend
how do read protected memory?
VirtualProtectEx()
@@AlexOxygen to do that you already need the permissions that you obviously don't have. Which is PROCESS_VM_OPERATION permission.
@@senteyhitashi6584 I'm sorry?
How do you even find these values? Like 4 and 5 for jump? That's actually the only thing I'd need to know ^^
wdym? how to looked for it in cheat engine or how he knew the values would be 4 and 5?
@@-Plube- how he knew the value would be 4 and 5?
Animam He most likely found it off google since csgo is popular. He also said in source games the jump values are known to be 4 an 5 or 256-257.
@@-Plube- ok I see, thanks for the answer.
@-Plube- Even if he found on Google, there was still someone who found the values, right? One way is you can do changed and unchanged value. Then, you will find the right value. Take note of the value, so next time you can directly search for them.
Ok seems good tutorial. Will try it soon.
script won't be as good because it's not as good => in depth
?
Scripts are simulating input while hacks are straight up forcing it by changing the values. When you regular bhop there’s always a chance that it will or won’t work(even when you do it right) and scripting simulated regular bhopping and no values are changed manually, the game acts as if you are bhopping normally. but when you hack you are forcing your player to jump every time and you and changing values instead of letting them changing automatically
But yeah one question, so as you know the addresses for all of the forcejumps and shit change everytime i restart CS:GO and i would want to code it again everytime when i restart CS:GO so how could i make it so that it gets the addresses everytime like the big hacks do
Joje Perplex at unknown cheats there are all the addresses, they change every update. So would have to update your cheat every other csgo update. To have an auto updating cheat you would have to make an internal cheat. The one I demonstrated in this video is an external.
It is just too late to reply but it might still help some other people. To make a cheat that works everytime you restart the game you must find the pointers for the adresses which are indicated in the video.
Good tutorial sir
nah this is very basic
better to take the processes snapshot, locate the process id and sue it to retrieve the module base address and with the offset
you will get the static player base address, from which you can dereference the other addresses , and use them to read and write the memory
Why was it better to take the snapshot instead of directly search for the window name using FindWindow function?
bro please increase you sound. I WAS ABOUT TO GO CRAZY
nice video m8
good tut :)
Hello, I did as you showed thanks, but when I restarted, it stopped working for me. Please tell me what to do?
offsets change
How do you actually find the addresses in memory that represent jump or health or whatever?
in this example, he's using Cheat engine to find values that he already knew, you won't know them. That's 256 & 257, he didn't explain how he found them, probably lots of testing, or a forum. So in short, you won't be able to do that w/o a lot of trying, most newer, top end games have Cheat protection, so this is worthless.
For something like health, if using the same tool, it's much more straight forward. If you download cheatEngine and do the Tutorial it'll be explained in pretty good detail.
In a nutshell, check for current health, and check again once it changes to narrow down which part of memory is storing that value and was value 1 and later was value 2, or value 3. In just about any game these days it's around 3 locations in memory for things like health, (because protected values of how compilers write it). That's similar to what he did w/ the 2nd one and found a single value in memory.
Cheat engine can actually do a lot of it for you since this is old.
@@osufwiffo I have a problem where the address keeps changing when I restarted the game. Is it possible to specify the exact memory address of player's health for example? So I don't have to scan the change of value to find the address every time I opened the game
@lord I've found the offset. thx anyways
my value is always 0
Good video, maybe some tutorial for cs 1.6?
does this work everytime? or do we have to code it every time with a new address. i heard that you need to have a static address but when i did it. it didnt work
you need to find the offsets for the address
What’s about with offset
what happens if game is protected and cheat engine doesn't detect any value? :)
same :'(
Search for unknown value
And keep searching for changed value once its changed
That doesn't exist. You have to search it in all values.
@@bigbythebigbadwolf if doesn't exist then try to read from game Gunz
how can i read this long adress? DWORD geldadr = 0x204E8E43CB4; it doent return the right value back:(
was the value a double or float?
should be a int, tryed to implement one for witcher3 (money)
@@test2514 change DWORD to uinptr_t. also cwitcher 3 is a 64bit game. check if u compiled in 64 bit
thank you
How to do this with double value?
Köszi! Pont most tanulom tanár űrtől
anyád
ja
Anyway this can be converted into Python?
I dont know Python, so Im not too sure.
It can but you would have to use other librarys to replicate this overall i recommend c++ for this
@@tacowithgiantbeansallover if you answer like that you don't know programming at all
@@yourownazog8069 ha what?
You can do it with ctypes I believe
How Can Inject Asm Code ??
@offset-hunter no pro it can happend.
create a .asm file with the required code
link it with the cpp file like this
external "C" Asm_Function(parameters here);
in the ASM file you have to declare it with
--------------------------------
.386
.model flat,c
.code
Asm_Function proc
/// asm code here///
Asm_Function endp
end
Hi sir, what is 257 ? what is 5? what is 4?
He explained in the video
257: The value returned when the player is on the ground
256: The value returned when the player is in the air
5: The value for the "+jump" command which causes the player to enter the jump state
4: The value for the "-jump" command which causes the player to leave the jump state
Thank you
Does Vac detect?
Yes. It does.
@Frank M. Powell its counter strike source
@@tiem217 no it doesn't vac is so trash these days ...
wtf even is that???
I thought you actually knew how to write code lol.
booooooooooooooy i didnt understand a thing xD too hard
@nn I mean this is basically almost the same like an assault cube trainer right? Just with different values (addresses) (correct me if I am wrong with that)) and that you would change different things like ammo or health etc. Or even bhop idk if it works in assault cube. I just started codIng like 2 - 3 weeks ago but as far as I know it's the same principal just with different values as I said
I want app for reading memory on android