Assualt Cube Hack

Posts 114 of 14 · Page 1 of 1
Assualt Cube Hack
This is an external hack using WriteProcessMemory(). I have yet to look at it in detail, but it seems like it covers some pretty important concepts. I might try to compile it and see if it works:
Credits go to a guy by the name of: unic0rn
Code:
///////////////////////////////////////////////////////////////////
//Memory Hack Source by Plexi/Tate/Tatez (All the Same Person    //
//This was made for ActionHacks, *************, and *********     //
//Remove those other two sites, if it's not allowed              //
//It doesn't have links, so idk if its allowed or not :S         //
///////////////////////////////////////////////////////////////////
//Give this code to EVERYONE YOU WANT! Idc.                      //
//Just don't claim it as "The Hack You Made With No Help At All" //
///////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////
//Smaller Credits: Roverturbo of UC, learn_more of uc            //
//Also big credits to MyZT, who also contributed                 //
//Contributed to this nooby little code                          //
///////////////////////////////////////////////////////////////////
//								 //
//			Refactored by unic0rn, lawl.		 //
//								 //
///////////////////////////////////////////////////////////////////
#include <windows.h>
#include <iostream>

#define SubMachine 0x08DE9A28
#define MachineGun 0x08DE9A30
#define Pistol 0x08DE9A20
#define Health 0x08DE99E4

using namespace std;

int main()
{
	
	while(true)
	{
		//Find Window
		char szTitle[256] = { 0 };
		Ge***assNameA(GetForegroundWindow(), szTitle, 255);
		HWND ACHACK = FindWindow("SDL_App", "AssaultCube"); // determines 'ACHACK' as the desired window to modify
		if(ACHACK == 0)
		{
			//Couldn't find it!
			cout << "Looking for SDL_APP" << " Assault Cube    //" << "Current App Type: " << szTitle << endl;
			Sleep(6000);
		}
		else
		{
			//Window found, breakout and start modifying!
			break;
		}
	}  //Close inifinite While loop
	
	//Window found, and Handle is trying to be acquired.
	DWORD ID;
	GetWindowThreadProcessId(ACHACK, &ID);
	HANDLE hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, ID);
	if(!hProcess)
	{
		cout << "Could not obtain handle to process.";
	}
	else
	{
		//Values that will be written to memory addresses.
		int pistAmmo   = 10000;
		int healthAmt  = 10000;
		int subAmmo    = 10000;
		int mgAmmo     = 10000;

		//Actual Editing of Each Addie
		if(WriteProcessMemory(hProcess, (LPVOID)Pistol, &pistAmmo, (DWORD)sizeof(pistAmmo), NULL)) //CHANGES Pistol ammo to 10000.
		{
			Sleep(50);
		}
		if(WriteProcessMemory(hProcess, (LPVOID)Health, &healthAmt, (DWORD)sizeof(healthAmt), NULL)) //CHANGES Health value to 10000.
        	{
			Sleep(50);                            
        	}
		if(WriteProcessMemory(hProcess, (LPVOID)SubMachine, &subAmmo, (DWORD)sizeof(subAmmo), NULL)) //CHANGES SubMachine gun ammo to 10000.
        	{
			Sleep(50);                            
        	}
		if(WriteProcessMemory(hProcess, (LPVOID)MachineGun, &mgAmmo, (DWORD)sizeof(mgAmmo), NULL)) //CHANGES MG Ammo to 10000.
        	{
			Sleep(50);                            
        	} 
	}
}  //Close Main
For the old AC probably since AC is protected against health and ammo hacks now
Quote Originally Posted by Hell_Demon View Post
For the old AC probably since AC is protected against health and ammo hacks now
What it is now? gtfo of here... why? D:
Quote Originally Posted by why06 View Post
What it is now? gtfo of here... why? D:
It's not true. In AC health is hex memory value, not server sided like in ca or wr. You can use WriteProcessMemory to switch it to a value you want. Not patched.
Quote Originally Posted by Silentknife View Post
It's not true. In AC health is hex memory value, not server sided like in ca or wr. You can use WriteProcessMemory to switch it to a value you want. Not patched.
Update to the latest version, it is server sided.
I'm not any pro hax0r here but i'm sure there has to be something in the client that tells what to send to the server. If you NOP that address won't it just send you the same value every time? Yeah, I have like no experience in hacking games, so I have no idea what i'm saying here. T.T
Quote Originally Posted by Void View Post
I'm not any pro hax0r here but i'm sure there has to be something in the client that tells what to send to the server. If you NOP that address won't it just send you the same value every time? Yeah, I have like no experience in hacking games, so I have no idea what i'm saying here. T.T
If you dont send any new info the server will reuse the old info.
So you will die serverside while being alive clientside -> desync -> Can't shoot anyone untill you've been respawned server side
Is there anyway to detour the function that sends the information to the server and always send the server 100% HP? .____.
How about you just manipulate the info you receive from the server by intercepting it before it reaches the client =P. If the packet which holds the info(payload) is encrypted, then just hook it after the client decrypts it.
Quote Originally Posted by rwkeith View Post
How about you just manipulate the info you receive from the server by intercepting it before it reaches the client =P. If the packet which holds the info(payload) is encrypted, then just hook it after the client decrypts it.
Then you would still be out of sync with the server if you edit it.
Quote Originally Posted by Hell_Demon View Post
Then you would still be out of sync with the server if you edit it.
You mean "out of sync" by the delay of editing the packet and sending it to the client right? Are clients usually programmed to wait only a certain amount of time for a response from the server?
Quote Originally Posted by rwkeith View Post
You mean "out of sync" by the delay of editing the packet and sending it to the client right? Are clients usually programmed to wait only a certain amount of time for a response from the server?
I'm not too sure but..clients are trying to recieve info as fast as possible. I think that's why when you play games online. Some people have good ping, and some people are laggers. They have worse connection to the server, thus they don't recieve as fast as you do.
Quote Originally Posted by Void View Post
I'm not too sure but..clients are trying to recieve info as fast as possible. I think that's why when you play games online. Some people have good ping, and some people are laggers. They have worse connection to the server, thus they don't recieve as fast as you do.
Yea, that's true. You would need a program to automatically read and manipulate packets on the fly. I would like to figure out how to block specific packets.
Quote Originally Posted by rwkeith View Post
Yea, that's true. You would need a program to automatically read and manipulate packets on the fly. I would like to figure out how to block specific packets.
Well look into packet editing. Course you would still have to figure out which packets do what, and such.
Posts 114 of 14 · Page 1 of 1
This thread is closed for replies.

Similar Threads

Tags for this Thread

None

Need help?