Now my real problem is i am new to coding and i need a tutorial to get me started because i am trying to release a combat arms hack. So if you have any links to any previous threads that you think will help me with my project PLEASE post it below. Thanks <3
I don't know what you're talking about, i am not trying to get attention i am asking for help... so what's your problem? if you don't have something useful to say don't say anything at all... -.-
Originally Posted by kissofdiss
I don't know what you're talking about, i am not trying to get attention i am asking for help... so what's your problem? if you don't have something useful to say don't say anything at all... -.-
Learn C++ If you think you have learned "enough" Then go back to step 1 and retry because you didnt learn anything. When you have learned "enough" it will be the end of the lesson.
Originally Posted by Skaterforeva1
Learn C++ If you think you have learned "enough" Then go back to step 1 and retry because you didnt learn anything. When you have learned "enough" it will be the end of the lesson.
Well said. ^^
Originally Posted by Skaterforeva1
Learn C++ If you think you have learned "enough" Then go back to step 1 and retry because you didnt learn anything. When you have learned "enough" it will be the end of the lesson.
that is not the issue. learning a new language is not the issue, The problem is even if i learn C++ how do i get started? what do i need to know about hacking a game?
Originally Posted by kissofdiss
that is not the issue. learning a new language is not the issue, The problem is even if i learn C++ how do i get started? what do i need to know about hacking a game?
Learning a new language is the entire issue. Cause after you learn c++, you need to learn assembly. Witch is even more complex. And to start, after you have learned alot of assembly, and c++, Download a base and go threw it. Make sure you understand everything in it. Then dont use that base. Write your own base so you know what is in it and how it works. You can look into other bases and rip some functions out, like IsGameReady() so that you dont have to type so much. But other then that write everything yourself. It will be the most beneficial thing you can possibly do.
/edit Even if you do rip simple functions like IsGameReady() you must still give credit to who ever's base you took it from. And IsGameReady() is just an example.
I'm not sure if those addresses are up to date or not but assuming they are the first thing to do is write a dll.
I did some digging and found this snippet which demonstrates perfectly how to make a simple hack.
Code:
//insert comment here
#include <windows.h>
//declare pointers/variables here
int * Health = (int*)0x12345678
int * Ammo =(Health+4)
//main function
DWORD WINAPI lolthread(LPVOID lParam)
{
//your statements, loops, etc here!
While(1)
{
*Health = 99999;
*Ammo = 250;
Sleep(5);
}
ExitThread(0);
}
BOOL APIENTRY DllMain(HINSTANCE hDll, DWORD callReason, LPVOID lpReserved)
{
if(callReason == DLL_PROCESS_ATTACH)
{
//edit your message box here (or create more) by changing what is in the quotation marks
MessageBox(0, "My New Hack ", "Injected", MB_ICONEXCLAMATION | MB_OK);
CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)&lolthread, 0, 0, 0);
}
return 1;
}
The only difference is that in combat arms we cant just change the value of an address to change our health, instead for a simple hack we can change what happens at an address (the instruction) to do something else. A good example of this is superbullets.
The bytes listed there i would assume are the bytes that we want to change it to.
When it comes to bytes you may find this useful http://ref.x86asm.net/coder3*****ml
Then when it comes to actually writing the memory you would do this in the thread that you have created:
Code:
memcpy((void*)0x37452656/*Address*/, "\x0F\x94\xC0"/*Bytes you want to write*/, 3/*how much bytes*/);
So a full example would be:
Code:
#include <windows.h>
#define SuperBulletsAddress 0x37452656 //I have defined this at the top as it changes every patch and if you have multible addresses its easy to have them all in one place.
//main function
DWORD WINAPI MainThread(LPVOID lParam)
{
While(1)//This will loop forever so that we keep our code running.
{
if(GetAsyncKeyState(VK_NUMPAD1)&1) //This checks if we have pressed the numpad1 button.
memcpy((void*)0x37452656/*Address*/, "\x0F\x94\xC0"/*Bytes you want to write*/, 3/*how much bytes*/); //This will changes the bytes of our superbullets address to give us the superbullets effect.
}
}
BOOL APIENTRY DllMain(HINSTANCE hDll, DWORD callReason, LPVOID lpReserved) //This is called when the dll is injected.
{
if(callReason == DLL_PROCESS_ATTACH)
{
MessageBoxA(null, "My New Hack ", "Injected", MB_OK); //Displays a messagebox so that we know our code has been executed.
CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)&MainThread, 0, 0, 0); //Creates some space for our code to run.
}
return 1;
}
You really don't need to know much c++ to make a hack, you should be able to learn as you go as long as you know how programming languages work.
Good Luck
Originally Posted by matypatty
I'm not sure if those addresses are up to date or not but assuming they are the first thing to do is write a dll.
I did some digging and found this snippet which demonstrates perfectly how to make a simple hack.
Code:
//insert comment here
#include <windows.h>
//declare pointers/variables here
int * Health = (int*)0x12345678
int * Ammo =(Health+4)
//main function
DWORD WINAPI lolthread(LPVOID lParam)
{
//your statements, loops, etc here!
While(1)
{
*Health = 99999;
*Ammo = 250;
Sleep(5);
}
ExitThread(0);
}
BOOL APIENTRY DllMain(HINSTANCE hDll, DWORD callReason, LPVOID lpReserved)
{
if(callReason == DLL_PROCESS_ATTACH)
{
//edit your message box here (or create more) by changing what is in the quotation marks
MessageBox(0, "My New Hack ", "Injected", MB_ICONEXCLAMATION | MB_OK);
CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)&lolthread, 0, 0, 0);
}
return 1;
}
The only difference is that in combat arms we cant just change the value of an address to change our health, instead for a simple hack we can change what happens at an address (the instruction) to do something else. A good example of this is superbullets.
Then when it comes to actually writing the memory you would do this in the thread that you have created:
Code:
memcpy((void*)0x37452656/*Address*/, "\x0F\x94\xC0"/*Bytes you want to write*/, 3/*how much bytes*/);
So a full example would be:
Code:
#include <windows.h>
#define SuperBulletsAddress 0x37452656 //I have defined this at the top as it changes every patch and if you have multible addresses its easy to have them all in one place.
//main function
DWORD WINAPI MainThread(LPVOID lParam)
{
While(1)//This will loop forever so that we keep our code running.
{
if(GetAsyncKeyState(VK_NUMPAD1)&1) //This checks if we have pressed the numpad1 button.
memcpy((void*)0x37452656/*Address*/, "\x0F\x94\xC0"/*Bytes you want to write*/, 3/*how much bytes*/); //This will changes the bytes of our superbullets address to give us the superbullets effect.
}
}
BOOL APIENTRY DllMain(HINSTANCE hDll, DWORD callReason, LPVOID lpReserved) //This is called when the dll is injected.
{
if(callReason == DLL_PROCESS_ATTACH)
{
MessageBoxA(null, "My New Hack ", "Injected", MB_OK); //Displays a messagebox so that we know our code has been executed.
CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)&MainThread, 0, 0, 0); //Creates some space for our code to run.
}
return 1;
}
You really don't need to know much c++ to make a hack, you should be able to learn as you go as long as you know how programming languages work.
Good Luck
Thanks man i love you (no homo)
As matty said, you dont need to be the best in C++, the most important step is to code on your own and dont c&p shit.
IF you c&p code, always read what it EXACTLY does, best is to change the coding style according to your own style.
You need to know asm to be successfull at hacking a game, best way is to make EVRYTHING alone, so you arent dependent on someone elses skill.