Outdated External CSGO Triggerbot

  • CSGO recently moved logic from 'client_panorama.dll' to 'client.dll', you must update all code that uses 'client_panorama.dll' and replace it with 'client.dll' or the code will not work.
Hexui Undetected CSGO Cheats Sinkicheat PUBG Cheat

Nether

The Angel Of Verdun
Meme Tier VIP
Dank Tier Donator
Dec 11, 2013
293
3,738
16
Hey Guys,

Here is my CS: GO external source, I hope you guys can give some feedback on how this can be improved.

Required Files:
C++ Memory Class: https://guidedhacking.com/showthread.php?4633-Nether-s-V1-4-C-Memory-Class-10

VAC Status: Unknown [Use At Own Risk]
We Only Read Information, NO memory writing is involved, I am personally using this code so ill post an update in 2-3 weeks to see if I was banned.

How To:
1. Create Win32 Console Application.
2. Download And Extract The Memory Class Files (ProcMem.h / ProcMem.cpp) to your project folder.
3. In The Solution Explorer Click Add Existing Item And Add Both Files (Must Be In Same Directory).
4. Integrate My Source Into Your Main (You May Have Pre-Compiled Headers Etc So Be Careful)

Hot Keys:
Home : Start Trigger
End : End Trigger
- / + : Inc/Dec Fire Rate (set 1 for SMG's) [Default 1]

C++:
#include "ProcMem.h"
#include <conio.h>

ProcMem mem;
using namespace std;

class read; //Definition
class read{
public:
	  
	int i_Enemies[32]; //Enemy Array
    int i_Count; //Found Counter / Array Index - Allows Us To Populate Enemy Array Correctly (in order)
	int i_team;
	int e_team;
	DWORD dwClient;
	DWORD dwPBase;
	DWORD dwEntity;

	void Read()
	{
		dwClient = mem.Module("client.dll");
		dwPBase = mem.Read<DWORD>(dwClient + 0xA33234);
		i_team = mem.Read<int>(dwPBase + 0xF0);

		for(int i = 0; i < 64; i++)
		{
			//Loop From Base Entity Address by 0x10 On Each Iteration
			dwEntity = mem.Read<DWORD>((dwClient + 0xA4C3E4) + (i * 0x10));

			//Prevent Crash From Reading Null Pointer - also stop counting when weve read the last entity
			if(!dwEntity)
				continue;

			e_team = mem.Read<int>(dwEntity + 0xF0);

			//If An Enemy Has Been Found, Store Their Entity Index ID Inside Array
			if(e_team != i_team && e_team > 1)
			{
				i_Enemies[i_Count] = mem.Read<int>(dwEntity + 0x64);
				i_Count++;
			}
		}
	}
}info;

void Trigger()
{
	//Variables
	int iTarList[32]; //Enemy Array
	int iResponse = 1; //Default Fire Rate
	int * i_cID;
	int cID;

	//Read Relevant info
	info.Read();

	while(1)
	{
		//Read Relevant info
		info.Read();
	
		//Populate Enemy Array
		for(int i = 0; i < info.i_Count; i++)	
			iTarList[i] = info.i_Enemies[i];	
			
		//Read Whats In Crosshair
		cID = mem.Read<int>(info.dwPBase + 0x2374);

		//Compare Current ID To Enemy Arra
		i_cID = find(iTarList, iTarList + info.i_Count, cID);

		//Shoot If Current ID Matches Enemy ID
		while(*i_cID == cID)
		{ 		
			//Read Whats In Crosshair
			cID = mem.Read<int>(info.dwPBase + 0x2374);

			//Compare Current ID To Enemy Arra
			i_cID = find(iTarList, iTarList + info.i_Count, cID);

			//Less Detectable Method
			mouse_event( MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0 );
			Sleep(iResponse);
			mouse_event( MOUSEEVENTF_LEFTUP, 0, 0, 0, 0 );
				
			//End Triggerbot - Safety Key Encase Of Infinite Loop
			if(GetAsyncKeyState(VK_END)&1)
				return;
		}

		//Reset Entity Counter
		info.i_Count = 0;

#pragma region Fire Rate Modifier

		if(GetAsyncKeyState(VK_ADD)&1)
		{
			iResponse++;
			if(iResponse > 15)
				iResponse = 15;

			system("cls");
			_cprintf("%d", iResponse);
		}

		if(GetAsyncKeyState(VK_SUBTRACT)&1)
		{
			iResponse--;
			if(iResponse < 1)
				iResponse = 1;

			system("cls");
			_cprintf("%d", iResponse);
		}

#pragma endregion

		//End Triggerbot
		if(GetAsyncKeyState(VK_END)&1)
			break;
	}	
}


int main()
{
	mem.GetProcess("csgo.exe");

	while(1)
	{
		if(GetAsyncKeyState(VK_HOME))
		{
			cout << "\nON";
			Trigger();	
			cout << "\nOFF";
		}
	}
	return 0;
}

PS:
if you guys didn't notice, the array sizes are 32, but we are in fact only scanning and adding/using the exact number of enemies so we don't loose efficiency reading our team as well we just skip them,
even if the array size is 32 but we have 5 enemies, we will only work with those first 5 in the array.

UPDATED: 24/02/2014 | (GMT) 04:58
 
Last edited:

Nether

The Angel Of Verdun
Meme Tier VIP
Dank Tier Donator
Dec 11, 2013
293
3,738
16
Thanks for sharing
Your welcome, I have just edited most of the source so please check it again if you wish to use it.
There was many bugs before but now it will run perfectly, i will upload a video later on of me using it online ( have been using it for about 2 hours now its pretty fun ).

Also I have updated my post in the other thread for my internal version with important code updates.
 
Last edited:

rN'

Jr.Hacker
Meme Tier VIP
Jan 19, 2014
340
6,268
41
It works but it isn't the best method to do a triggerbot..
 

dinosaurr

Newbie
Full Member
Aug 7, 2013
24
498
0
Nether , if i want to change VK_END to mouse3/4 for example , what do i need to use ? Didnt find something in the internet and VK_ dont offer an mouse option so ?
#pragma endregion

//End Triggerbot
if(GetAsyncKeyState(VK_END)&1)
break;
 

Nether

The Angel Of Verdun
Meme Tier VIP
Dank Tier Donator
Dec 11, 2013
293
3,738
16
I cant edit first post anymore so here is an update (NOTE: New memory class++ coming soon with custom vector class)

So before I was creating a 2nd array for enemies, this was affecting performance and was also kind of silly of me so I have updated it to use only one array and shorten code for efficiency and performance, I would really appreciate some feedback on any bugs you may find or what more I could improve on, I am also playing around with creating a trigger-bot with my aim-bot I will release the source code soon.

C++:
#ifndef FUNC_H
#define FUNC_H

#include "ProcMem.h"

ProcMem mem;
using namespace std;

class read; //Definition
class read{
public:
	  
	int i_Enemies[32]; //Enemy Array
    int i_Count; //Found Counter / Array Index - Allows Us To Populate Enemy Array Correctly (in order)
	int i_team;
	int e_team;
	int cID;
	DWORD dwClient;
	DWORD dwPBase;
	DWORD dwEntity;

	void Read()
	{
		dwClient = mem.Module("client.dll");
		dwPBase = mem.Read<DWORD>(dwClient + 0xA33234);
		i_team = mem.Read<int>(dwPBase + 0xF0);
			
		//Read Whats In Crosshair
		cID = mem.Read<int>(info.dwPBase + 0x2374);
	
		for(int i = 0; i < 64; i++)
		{
			//Loop From Base Entity Address by 0x10 On Each Iteration
			dwEntity = mem.Read<DWORD>((dwClient + 0xA4C3E4) + (i * 0x10));

			//Prevent Crash From Reading Null Pointer - also stop counting when weve read the last entity
			if(!dwEntity)
				return;

			e_team = mem.Read<int>(dwEntity + 0xF0);

			//If An Enemy Has Been Found, Store Their Entity Index ID Inside Array
			if(e_team != i_team && e_team > 1)
			{
				i_Enemies[i_Count] = mem.Read<int>(dwEntity + 0x64);
				i_Count++;
			}
		}
	}
}info;

void Trigger()
{
	//Variables
	int iResponse = 1; //Default Fire Rate
	int *i_cID;
	
	//Read Relevant info
	info.Read();

	while(!(GetAsyncKeyState(VK_END))&1)
	{
		//Read Relevant info
		info.Read();

		//Compare Current ID To Enemy Arra
		i_cID = find(info.i_Enemies, info.i_Enemies + info.i_Count, info.cID);

		//Shoot If Current ID Matches Enemy ID
		if(*i_cID == info.cID)
		{ 		
			//Less Detectable Method
			mouse_event( MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0 );
			Sleep(iResponse);
			mouse_event( MOUSEEVENTF_LEFTUP, 0, 0, 0, 0 );
		}

		//Reset Entity Counter
		info.i_Count = 0;
	}
	return;	
}

#endif
ofc you will want to update the base addresses, I didn't update my game so I was able to test with these.

PS: instead of always reading inside the loop maybe have a hotkey and have read inside of that as a kind of update enemy list (like if new players join etc) and have the xHair ID Reading inside again for efficiency

NOTE: (Updated Memory Class) https://guidedhacking.com/showthread.php?4793-Nether-s-V1-5-C-Memory-Class&p=22016#post22016
 
Last edited:

rN'

Jr.Hacker
Meme Tier VIP
Jan 19, 2014
340
6,268
41
Would you care to explain what I could improve on or do differently?
Because that triggerbot isn't very accurate.. You can use the Player Hitboxes and VectorTransform to create a Hitbox Triggerbot
 

Nether

The Angel Of Verdun
Meme Tier VIP
Dank Tier Donator
Dec 11, 2013
293
3,738
16
Because that triggerbot isn't very accurate.. You can use the Player Hitboxes and VectorTransform to create a Hitbox Triggerbot
Thanks for the info, but in my opinion that seems just like extra work for something that will be almost the same, the margin for a hitbox to the entity area inside crosshair is not really that much so you would only see a small % increase on precision but and would most likely see a decrease on performance of the actual application
 

brinkz

Coder
Meme Tier VIP
Sep 3, 2012
209
1,688
12
Thanks for the info, but in my opinion that seems just like extra work for something that will be almost the same, the margin for a hitbox to the entity area inside crosshair is not really that much so you would only see a small % increase on precision but and would most likely see a decrease on performance of the actual application
Nope actually you can chose the hitbox, the perfomence won't be bad in any way and you will be able to add spread / recoil calculation.
 

Nether

The Angel Of Verdun
Meme Tier VIP
Dank Tier Donator
Dec 11, 2013
293
3,738
16
Nope actually you can chose the hitbox, the perfomence won't be bad in any way and you will be able to add spread / recoil calculation.
ah cool, well for recoil calculation i have something in the works, although still pretty basic just writing x,y coords to mouse event after so many shots and go down :p

and considering im not really bothered about turning this into a hack I think ill leave it using the Ent ID, although I found a tutorial here about using a
Hitbox instead so if it gets requested maybe ill update it to work with hitboxes.

I may do this later on tonight or tomorrow ( https://guidedhacking.com/showthread.php?3760-HL2-CSS-Triggerbot-tutorial ) if i get bored, but I have other things to do which I feel
are a more valuable way to spend my time.
 
Last edited:

rN'

Jr.Hacker
Meme Tier VIP
Jan 19, 2014
340
6,268
41
ah cool, well for recoil calculation i have something in the works, although still pretty basic just writing x,y coords to mouse event after so many shots and go down :p

and considering im not really bothered about turning this into a hack I think ill leave it using the Ent ID, although I found a tutorial here about using a
Hitbox instead so if it gets requested maybe ill update it to work with hitboxes.

I may do this later on tonight or tomorrow ( https://guidedhacking.com/showthread.php?3760-HL2-CSS-Triggerbot-tutorial ) if i get bored, but I have other things to do which I feel
are a more valuable way to spend my time.
Bone-Triggerbot by getFOV is not very accurate too :p. Yeah you can add NoSpread & NoRecoil too but i prefere a Hitbox Triggerbot^^
 

Nether

The Angel Of Verdun
Meme Tier VIP
Dank Tier Donator
Dec 11, 2013
293
3,738
16
thank you for this will most certainly help a noob like me.
thanks dude, currently I'm working on other things right now so time is all taken up, but i need to update this code and release new memory class with it as this is still inefficient, I will create ID/HitBox/FoV trigger-bot so you have 3 methods of creating a trigger as not in every game you'll be able to use crosshair ID.

It would be better to use a while statement on the firing, I have actually worked on some code, I'm creating a kind of template/framework for creating easy hacks if you can just get addresses but also learn from it.
 
Last edited:
Attention! Before you post:

Read the How to Ask Questions Guide
99% of questions are answered in the Beginner's Guide, do it before asking a question.

No Hack Requests. Post in the correct section.  Search the forum first. Read the rules.

How to make a good post:

  • Fill out the form correctly
  • Tell us the game name & coding language
  • Post everything we need to know to help you
  • Ask specific questions, be descriptive
  • Post errors, line numbers & screenshots
  • Post code snippets using code tags
  • If it's a large project, zip it up and attach it

If you do not comply, your post may be deleted.  We want to help, please make a good post and we will do our best to help you.

Similar threads

Community Mods