Solved CSGO Triggerbot Help

Hexui Undetected CSGO Cheats Sinkicheat PUBG Cheat

BeesKnees

Coder
Full Member
Nobleman
Jul 24, 2013
124
1,973
3
Hello, Long time lurker, first time poster.
I was wondering if i could get some help for my external triggerbot.

It works fine and all, it's just that sometimes it doesn't recognize certain people on the server and ignores them when it'll work like a charm on any other player.
I'm not sure if it's in the player check or what, but some help would really be appreciated.

C++:
#include <Windows.h>
#include <iostream>
#include "HackProcess.h"
#include <math.h> 


using namespace std;  

#define F6_KEY 0x75
CHackProcess fProcess;  
const DWORD Player_Base =  0x55DB34;
const DWORD dw_teamOffset = 0x98;
const DWORD dw_PlayerCount = 0x5A24E0;
const DWORD dw_crosshairOffs = 0x14D4;
const DWORD dw_entityBase = 0x56B3E4;
const DWORD dw_EntityLoopDistance = 0x10;
int NumOfPlayers = 64;

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
		
	struct MyPlayer
		{
		DWORD CLocalPlayer;
		DWORD BoneBase;
		int Team;
		int CrosshairEntityID;
		float Position[3];

		void ReadInformation()
		{
			ReadProcessMemory(fProcess.__HandleProcess, (PBYTE*)(fProcess.__dwordClient + Player_Base), &CLocalPlayer, sizeof(DWORD), 0);
			ReadProcessMemory(fProcess.__HandleProcess, (PBYTE*)(CLocalPlayer+dw_teamOffset), &Team, sizeof(int), 0);
			ReadProcessMemory(fProcess.__HandleProcess, (PBYTE*)(CLocalPlayer+dw_crosshairOffs), &CrosshairEntityID, sizeof(int), 0);
			ReadProcessMemory(fProcess.__HandleProcess, (PBYTE*)(fProcess.__dwordEngine+dw_PlayerCount), &NumOfPlayers, sizeof(int), 0);
			ReadProcessMemory (fProcess.__HandleProcess, (PBYTE*)(CLocalPlayer + 0x22C), &Position, sizeof(float[3]), 0);
			ReadProcessMemory(fProcess.__HandleProcess, (PBYTE*)(CLocalPlayer + 0x570), &BoneBase, sizeof(DWORD), 0);
		}
	}MyPlayer;

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
		
	struct PlayerList
		{
		DWORD CBaseEntity;
		DWORD BoneBase;
		int Team;
		int Health;
		float Position[3];
		float m_vecStoreboneData[3][4];
		float Head[3];
		
		void ReadInformation(int Player)
			{
			ReadProcessMemory(fProcess.__HandleProcess, (PBYTE*)(fProcess.__dwordClient + dw_entityBase + (Player * dw_EntityLoopDistance)), &CBaseEntity, sizeof(DWORD), 0);
			ReadProcessMemory(fProcess.__HandleProcess, (PBYTE*)(CBaseEntity+dw_teamOffset), &Team, sizeof(int), 0);		 
			ReadProcessMemory (fProcess.__HandleProcess, (PBYTE*)(CBaseEntity + 0x22C), &Position, sizeof(float[3]), 0);
			ReadProcessMemory (fProcess.__HandleProcess, (PBYTE*)(CBaseEntity + 0x90), &Health, sizeof(int), 0);
			ReadProcessMemory(fProcess.__HandleProcess, (PBYTE*)(CBaseEntity + 0x570), &BoneBase, sizeof(DWORD), 0);
			}
		}PlayerList[64];

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

	void TriggerBot()
		{
			if(MyPlayer.CrosshairEntityID == 0)
				return;
			if(PlayerList[MyPlayer.CrosshairEntityID-1].Team == MyPlayer.Team)
				return;
			if(MyPlayer.CrosshairEntityID > NumOfPlayers)
				return;

			//bangbang
			if(MyPlayer.CrosshairEntityID != 0)
				{
				INPUT mouse;
				ZeroMemory(&mouse,sizeof(mouse));
				mouse.type = INPUT_MOUSE;
				mouse.mi.dwFlags = MOUSEEVENTF_LEFTDOWN;
				SendInput (1 , &mouse, sizeof(mouse)); 
				mouse.mi.dwFlags = MOUSEEVENTF_LEFTUP;
				SendInput (1 , &mouse, sizeof(mouse)); 
				Sleep(1);
				}
		}

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

	int main()
		{
		std::cout << "HL2.exe found." << std::endl;
		std::cout << "Monitoring Crosshair..." << std::endl;
		fProcess.RunProcess();
	
		while(!GetAsyncKeyState(F6_KEY))
			{
			while(GetAsyncKeyState(0x06))
				{
				MyPlayer.ReadInformation();
				for(int i = 0; i < NumOfPlayers; i++)
					{
					PlayerList[i].ReadInformation(i);
					}
				TriggerBot();
				}
			}
		}
 

GAFO666

Hacker
Meme Tier VIP
Aug 19, 2012
520
3,188
23
did you do as my rusty brain said ?

C++:
 #include <Windows.h> 
#include <iostream> 
#include "HackProcess.h" 
#include <math.h>  


using namespace std;   

#define F6_KEY 0x75 
CHackProcess fProcess;   
const DWORD Player_Base =  0x55DB34; 
const DWORD dw_teamOffset = 0x98; 
const DWORD dw_PlayerCount = 0x5A24E0; 
const DWORD dw_crosshairOffs = 0x14D4; 
const DWORD dw_entityBase = 0x56B3E4; 
const DWORD dw_EntityLoopDistance = 0x10; 
int NumOfPlayers = 0; 
int maxplayers = 32;

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 
         
    struct MyPlayer 
        { 
        DWORD CLocalPlayer; 
        DWORD BoneBase; 
        int Team; 
        int CrosshairEntityID; 
        float Position[3]; 

        void ReadInformation() 
        { 
            ReadProcessMemory(fProcess.__HandleProcess, (PBYTE*)(fProcess.__dwordClient + Player_Base), &CLocalPlayer, sizeof(DWORD), 0); 
            ReadProcessMemory(fProcess.__HandleProcess, (PBYTE*)(CLocalPlayer+dw_teamOffset), &Team, sizeof(int), 0); 
            ReadProcessMemory(fProcess.__HandleProcess, (PBYTE*)(CLocalPlayer+dw_crosshairOffs), &CrosshairEntityID, sizeof(int), 0); 
            ReadProcessMemory(fProcess.__HandleProcess, (PBYTE*)(fProcess.__dwordEngine+dw_PlayerCount), &NumOfPlayers, sizeof(int), 0); 
            ReadProcessMemory (fProcess.__HandleProcess, (PBYTE*)(CLocalPlayer + 0x22C), &Position, sizeof(float[3]), 0); 
            ReadProcessMemory(fProcess.__HandleProcess, (PBYTE*)(CLocalPlayer + 0x570), &BoneBase, sizeof(DWORD), 0); 
			
			if(NumOfPlayers > maxplayers)
				maxplayers = NumOfPlayers;
        } 
    }MyPlayer; 

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 
         
    struct PlayerList 
        { 
        DWORD CBaseEntity; 
        DWORD BoneBase; 
        int Team; 
        int Health; 
        float Position[3]; 
        float m_vecStoreboneData[3][4]; 
        float Head[3]; 
         
        void ReadInformation(int Player) 
            { 
            ReadProcessMemory(fProcess.__HandleProcess, (PBYTE*)(fProcess.__dwordClient + dw_entityBase + (Player * dw_EntityLoopDistance)), &CBaseEntity, sizeof(DWORD), 0); 
            ReadProcessMemory(fProcess.__HandleProcess, (PBYTE*)(CBaseEntity+dw_teamOffset), &Team, sizeof(int), 0);          
            ReadProcessMemory (fProcess.__HandleProcess, (PBYTE*)(CBaseEntity + 0x22C), &Position, sizeof(float[3]), 0); 
            ReadProcessMemory (fProcess.__HandleProcess, (PBYTE*)(CBaseEntity + 0x90), &Health, sizeof(int), 0); 
            ReadProcessMemory(fProcess.__HandleProcess, (PBYTE*)(CBaseEntity + 0x570), &BoneBase, sizeof(DWORD), 0); 
            } 
        }PlayerList[64]; 

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 

    void TriggerBot() 
        { 
            if(MyPlayer.CrosshairEntityID == 0) 
                return; 
            if(PlayerList[MyPlayer.CrosshairEntityID-1].Team == MyPlayer.Team) 
                return; 
            if(MyPlayer.CrosshairEntityID > maxplayers) 
                return; 

            //bangbang 
            if(MyPlayer.CrosshairEntityID != 0) 
                { 
                INPUT mouse; 
                ZeroMemory(&mouse,sizeof(mouse)); 
                mouse.type = INPUT_MOUSE; 
                mouse.mi.dwFlags = MOUSEEVENTF_LEFTDOWN; 
                SendInput (1 , &mouse, sizeof(mouse));  
                mouse.mi.dwFlags = MOUSEEVENTF_LEFTUP; 
                SendInput (1 , &mouse, sizeof(mouse));  
                Sleep(1); 
                } 
        } 

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 

    int main() 
        { 
        std::cout << "HL2.exe found." << std::endl; 
        std::cout << "Monitoring Crosshair..." << std::endl; 
        fProcess.RunProcess(); 
     
        while(!GetAsyncKeyState(F6_KEY)) 
            { 
            while(GetAsyncKeyState(0x06)) 
                { 
                MyPlayer.ReadInformation(); 
                for(int i = 0; i < maxplayers; i++) 
                    { 
                    PlayerList[i].ReadInformation(i); 
                    } 
                TriggerBot(); 
                } 
            } 
        }
 

rN'

Jr.Hacker
Meme Tier VIP
Jan 19, 2014
340
5,268
41
I'm pretty sure that you don't know what are you doing. Looks like c&p from fleep & adding EntityIndexInCrosshair. Start learning C++ and stop copy&paste.
 

BeesKnees

Coder
Full Member
Nobleman
Jul 24, 2013
124
1,973
3
I also updated the offsets and addresses on my own, replaced the WPM with hardware emulation.
I have learned the basics of c++, there's nothing about looping through players on an online vidya server in any c++ basics book or c++ basics online tut.
Oh and i thought this was "guidedhacking" and i thought maybe i was posting on the 'Help' board...
Why are you even in this thread?
It's people like you that prevent others from learning.
 
Last edited:

GAFO666

Hacker
Meme Tier VIP
Aug 19, 2012
520
3,188
23
I also updated the offsets and addresses on my own, replaced the WPM with hardware emulation.
I have learned the basics of c++, there's nothing about looping through players on an online vidya server in any c++ basics book or c++ basics online tut.
Oh and i thought this was "guidedhacking" and i thought maybe i was posting on the 'Help' board...
Why are you even in this thread?
It's people like you that prevent others from learning.
haha i like you xD
so basicly its quite different on servers, you did not tell when exactly it ignores players for shooting but if enemys go out of your range they are dormand and so not reachable..
here a breve examble that you can understand what I mean: (it has somehow may something todo with your problem, but just guesing)
If you eg read out the player pos on a private match, the data gets red out nicely and you can eg draw boxes on it, but on servers its quite dirrerent, means if the enemys are
dormant and you forgot to check that, the boxes will be drawn into nowhere cuz the pos does not get updated..

So my gues it that sometimes your cross id does not get updated somehow, may you tell us when exactly it does not shoot (i mean if they far away or directly next to you)
 

BeesKnees

Coder
Full Member
Nobleman
Jul 24, 2013
124
1,973
3
haha i like you xD
so basicly its quite different on servers, you did not tell when exactly it ignores players for shooting but if enemys go out of your range they are dormand and so not reachable..
here a breve examble that you can understand what I mean: (it has somehow may something todo with your problem, but just guesing)
If you eg read out the player pos on a private match, the data gets red out nicely and you can eg draw boxes on it, but on servers its quite dirrerent, means if the enemys are
dormant and you forgot to check that, the boxes will be drawn into nowhere cuz the pos does not get updated..

So my gues it that sometimes your cross id does not get updated somehow, may you tell us when exactly it does not shoot (i mean if they far away or directly next to you)
Thanks so much for your reply. It happens no matter the distance, completely depends on the player.
thanks again for your time.
 

GAFO666

Hacker
Meme Tier VIP
Aug 19, 2012
520
3,188
23
hmm not matter which distance huh
aaaah my rusty brain remembers something, you need to set the maxplayers manualy, means 32 otherwise it wont work on servers properly :)

edit:

do like

int maxplayers = 32;
if(numofplayers>maxplayers)
maxplayers = numofplayers;

to be sure, cuz there are server over 32 ppl also
 
Last edited:

BeesKnees

Coder
Full Member
Nobleman
Jul 24, 2013
124
1,973
3
hmm not matter which distance huh
aaaah my rusty brain remembers something, you need to set the maxplayers manualy, means 32 otherwise it wont work on servers properly :)

edit:

do like

int maxplayers = 32;
if(numofplayers>maxplayers)
maxplayers = numofplayers;

to be sure, cuz there are server over 32 ppl also
that's in there ;) and i used 64 for that reason
edit:
oh i think i see now, add a max aswell as keep numofplayers


added that and fixed it here
C++:
if(MyPlayer.CrosshairEntityID > maxplayers)
				return;
it works for everyone now, but even teammates lol
 
Last edited:

BeesKnees

Coder
Full Member
Nobleman
Jul 24, 2013
124
1,973
3
if you don't mind, why isnt my...

if(PlayerList[MyPlayer.CrosshairEntityID-1].Team == MyPlayer.Team)
return;

...working?
 

BeesKnees

Coder
Full Member
Nobleman
Jul 24, 2013
124
1,973
3
did you do as my rusty brain said ?

C++:
 #include <Windows.h> 
#include <iostream> 
#include "HackProcess.h" 
#include <math.h>  


using namespace std;   

#define F6_KEY 0x75 
CHackProcess fProcess;   
const DWORD Player_Base =  0x55DB34; 
const DWORD dw_teamOffset = 0x98; 
const DWORD dw_PlayerCount = 0x5A24E0; 
const DWORD dw_crosshairOffs = 0x14D4; 
const DWORD dw_entityBase = 0x56B3E4; 
const DWORD dw_EntityLoopDistance = 0x10; 
int NumOfPlayers = 0; 
int maxplayers = 32;

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 
         
    struct MyPlayer 
        { 
        DWORD CLocalPlayer; 
        DWORD BoneBase; 
        int Team; 
        int CrosshairEntityID; 
        float Position[3]; 

        void ReadInformation() 
        { 
            ReadProcessMemory(fProcess.__HandleProcess, (PBYTE*)(fProcess.__dwordClient + Player_Base), &CLocalPlayer, sizeof(DWORD), 0); 
            ReadProcessMemory(fProcess.__HandleProcess, (PBYTE*)(CLocalPlayer+dw_teamOffset), &Team, sizeof(int), 0); 
            ReadProcessMemory(fProcess.__HandleProcess, (PBYTE*)(CLocalPlayer+dw_crosshairOffs), &CrosshairEntityID, sizeof(int), 0); 
            ReadProcessMemory(fProcess.__HandleProcess, (PBYTE*)(fProcess.__dwordEngine+dw_PlayerCount), &NumOfPlayers, sizeof(int), 0); 
            ReadProcessMemory (fProcess.__HandleProcess, (PBYTE*)(CLocalPlayer + 0x22C), &Position, sizeof(float[3]), 0); 
            ReadProcessMemory(fProcess.__HandleProcess, (PBYTE*)(CLocalPlayer + 0x570), &BoneBase, sizeof(DWORD), 0); 
			
			if(NumOfPlayers > maxplayers)
				maxplayers = NumOfPlayers;
        } 
    }MyPlayer; 

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 
         
    struct PlayerList 
        { 
        DWORD CBaseEntity; 
        DWORD BoneBase; 
        int Team; 
        int Health; 
        float Position[3]; 
        float m_vecStoreboneData[3][4]; 
        float Head[3]; 
         
        void ReadInformation(int Player) 
            { 
            ReadProcessMemory(fProcess.__HandleProcess, (PBYTE*)(fProcess.__dwordClient + dw_entityBase + (Player * dw_EntityLoopDistance)), &CBaseEntity, sizeof(DWORD), 0); 
            ReadProcessMemory(fProcess.__HandleProcess, (PBYTE*)(CBaseEntity+dw_teamOffset), &Team, sizeof(int), 0);          
            ReadProcessMemory (fProcess.__HandleProcess, (PBYTE*)(CBaseEntity + 0x22C), &Position, sizeof(float[3]), 0); 
            ReadProcessMemory (fProcess.__HandleProcess, (PBYTE*)(CBaseEntity + 0x90), &Health, sizeof(int), 0); 
            ReadProcessMemory(fProcess.__HandleProcess, (PBYTE*)(CBaseEntity + 0x570), &BoneBase, sizeof(DWORD), 0); 
            } 
        }PlayerList[64]; 

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 

    void TriggerBot() 
        { 
            if(MyPlayer.CrosshairEntityID == 0) 
                return; 
            if(PlayerList[MyPlayer.CrosshairEntityID-1].Team == MyPlayer.Team) 
                return; 
            if(MyPlayer.CrosshairEntityID > maxplayers) 
                return; 

            //bangbang 
            if(MyPlayer.CrosshairEntityID != 0) 
                { 
                INPUT mouse; 
                ZeroMemory(&mouse,sizeof(mouse)); 
                mouse.type = INPUT_MOUSE; 
                mouse.mi.dwFlags = MOUSEEVENTF_LEFTDOWN; 
                SendInput (1 , &mouse, sizeof(mouse));  
                mouse.mi.dwFlags = MOUSEEVENTF_LEFTUP; 
                SendInput (1 , &mouse, sizeof(mouse));  
                Sleep(1); 
                } 
        } 

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 

    int main() 
        { 
        std::cout << "HL2.exe found." << std::endl; 
        std::cout << "Monitoring Crosshair..." << std::endl; 
        fProcess.RunProcess(); 
     
        while(!GetAsyncKeyState(F6_KEY)) 
            { 
            while(GetAsyncKeyState(0x06)) 
                { 
                MyPlayer.ReadInformation(); 
                for(int i = 0; i < maxplayers; i++) 
                    { 
                    PlayerList[i].ReadInformation(i); 
                    } 
                TriggerBot(); 
                } 
            } 
        }
i see you did put it in the player struct. thanks again bud, a million thanks to you
 

BeesKnees

Coder
Full Member
Nobleman
Jul 24, 2013
124
1,973
3
still shoots at teammates, weird lol, maybe i chose a dynamic address for enemy team or something idk, but it def shoots everytime now so thanks anyways :)
i just hope i dont get vacced with all this debugging :/
 
Last edited:

rN'

Jr.Hacker
Meme Tier VIP
Jan 19, 2014
340
5,268
41
still shoots at teammates, weird lol, maybe i chose a dynamic address for enemy team or something idk, but it def shoots everytime now so thanks anyways :)
i just hope i dont get vacced with all this debugging :/
C++:
C_BaseEntity* pLocal = new C_BaseEntity( Engine::g_pEngine->getLocalPlayer() );

for( int i = 1; i < Engine::pGlobals->maxClient; i++ ){
	C_BaseEntity* pEntity = new C_BaseEntity( i );

	if( !pEntity->isValid() )	// check if Entity && m_iHealth > 0 && m_lifeState == 0
		continue;
	
	if( pEntity->m_iTeamNum() == pLocal->m_iTeamNum() )
		continue;
		
	int iIndex;
	pLocal->getCrosshairIndex( iIndex );
	
	if( iIndex >= 0 && iIndex <= 32 ){
		mouse_event( MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0 );
		Sleep( 10 );
		mouse_event( MOUSEEVENTF_LEFTUP, 0, 0, 0, 0 );
	}
}
 

Nether

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

GAFO666

Hacker
Meme Tier VIP
Aug 19, 2012
520
3,188
23
BeesKnees : well, Im not working with CE, Olly etc on CS:S and CS:GO anymore, Im just using the sdk .. xD so I dont have such probs like you,but I hope it worked now for you :)
 

BeesKnees

Coder
Full Member
Nobleman
Jul 24, 2013
124
1,973
3
BeesKnees : well, Im not working with CE, Olly etc on CS:S and CS:GO anymore, Im just using the sdk .. xD so I dont have such probs like you,but I hope it worked now for you :)
I really appreciate yr time guys, I've been working on a triggerbot for borderlands 2, which I FINISHED MR. rN' ;)
but ill work on the css one soon so i say happily for the millionth time, thanks for helping out a noob like me :)
 

hackgen

Newbie
Full Member
Feb 26, 2014
37
218
1
I really appreciate yr time guys, I've been working on a triggerbot for borderlands 2, which I FINISHED MR. rN' ;)
but ill work on the css one soon so i say happily for the millionth time, thanks for helping out a noob like me :)
You'r Welcome :)
 
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.

Community Mods