Guide – How to Make CSGO Hacks

opengraph - Free Game Cheats

Guide – How to Make CSGO Hacks

Download Guide – How to Make CSGO Hacks for FREE
Learn How to Hack CSGO

CS:GO is the most popular game to hack, here is some information to help you get started learning how to make a CS:GO cheat.

Topics Covered in this Guide

Important New Tutorial Series: CSGO Direct3D9 ESP Tutorial Series

Wikipedia said:

Counter-Strike: Global Offensive (CS:GO) is a multiplayer first-person shooter video game developed by Hidden Path Entertainment and Valve Corporation. It is the fourth game in the Counter-Strike series and was released for Microsoft Windows, OS X, Xbox 360, and PlayStation 3 in August 2012, with the Linux version released in September 2014. The game pits two teams against each other: the Terrorists and the Counter-Terrorists. Both sides are tasked with eliminating the other while also completing separate objectives, the Terrorists, depending on the game mode, must either plant the bomb or defend the hostages, while the Counter-Terrorists must either prevent the bomb from being planted, defuse the bomb, or rescue the hostages.

Valve AntiCheatVAC
CS:GO is protected by Valve AntiCheat aka VAC and Overwatch
Overwatch takes recordings of suspicious players. These recordings are peer reviewed by Investigators. The recording get submitted automatically based on suspicious behavior or as a result of being reported.
VAC mainly uses signature based detection to detect public hacks.
Tutorial – How To Bypass VAC Valve Anti Cheat Info

Insecure Mode
The first thing you must do when creating hacks is to set the game in insecure mode. This is done by adding the “-insecure” command line option to your desktop shortcut. Once this is done you can develop your hack or use Cheat Engine on the game without worrying about being banned. In insecure mode you cannot join secure servers.

d144c070c73e4c1e1e9330b270fc0ff2 - Free Game Cheatsd144c070c73e4c1e1e9330b270fc0ff2 - Free Game Cheats explorer 2018 03 31 21 47 32 - Free Game Cheatsexplorer 2018 03 31 21 47 32 - Free Game Cheats

The game engine itself doesn’t change often enough where entire hacks need to be re-written. Often times just updating addresses and offsets will make a hack work again after patching.
It is highly recommended that you learn how to find offsets, addresses & pointers manually. But most people who hack CS:GO just use an offset dumper. Here is a popular one:
Download hazedumper CSGO offset dumper

Learn to find offsets: Video Tutorial – How to Find CSGO NetVar Offsets Hacking Tutorial Ida Pro

Most tutorials teach you how to find offsets using netvar/cvar strings like m_iHealth, this is for source engine games only and you will need to learn to find addresses and offsets manually for other games. Finding them manually takes longer but gives you good experience.

You can use hazedumper or our GH Offset Dumper

Always dump fresh offsets yourself, do not use the github offsets and expect them to work. 99% of all CSGO problems are because of bad offsets.

Source Engine SDK


If you’re implementing / making an SDK there are 2 things you need:
netvar manager and CreateInterface

You can learn both from these videos:

CS:GO is a Source Engine game, the 2013 version of the SDK was released @ ValveSoftware/source-sdk-2013

You can download it an incorporate parts of it into your hack, but for inexperienced people this will be problematic to include in your project because you will have to resolve dependencies etc…This happens anytime you include a large codebase into your project.

MarkHC made a great hack base that includes the SDK, you can download this and just hit the compile button and it will compile. This is a great starting point. But be aware if you use this as a base for your project you could get VAC detected.

Build your own SDK – the better way
If you really want to learn and get experience, start by making ESP/aimbot using normal universal memory based methods. Then start adding reversed structures such as the entity or weapon structs. Then start adding new features, each feature you need will best be performed by using part of the SDK such as CreateInterface or something like that, add each piece as needed and slowly build your own SDK. This is the normal, natural progression which will result in the least number of problems but the highest level of understanding. Jumping straight into a full blown SDK is suicide unless you’re an expert.

m_iDormant a.k.a. bDormant
When making a csgo hack, bDormant is a bool that determines whether the information received on that entity is updated or not. If the server decides that the entity is close enough or in view of the player bDormant will be false. (the server is sending you info on that player) If the player is far away behind walls it will not send updated information on that player (bDormant == true at this point). So if your teammate kills an enemy that is dormant (dormant for you, that is) and you try to read that players health it will still in fact say that they are alive. EVEN though your teammate has just killed that player. But once you get closer and the bDormant flag for that player is false, it will dig up the correct information for you.

So basically if you want to make an esp or an aimbot you always check if the player is dormant first so it doesn’t draw a player in an incorrect position, or aim at some angles which aren’t relevant anymore.

bDormant is currently offset 0xE9, member var of the normal ent class

Bones / Bone ESP / Bone Matrix
In order to properly aim for headshots when making a csgo hack and adjust position for crouching/jumping/etc… you must use the bone matrix. Each of the players bones is in a bone matrix and contains the 3D coordinates off each bone. A bone basically is a line in 3D space with beginning, end and length.

Each player object contains a pointer to their bone matrix, this offset can be found via the offset dumper.

Here is a function to get a bone and an example of it’s usage:

class BoneMatrix { public: static Vec3 GetBonePos(int boneBase, int boneID) { Vec3 bonePos; bonePos.x = *(float*)((boneBase + 0x30 * boneID + 0x0C)); bonePos.y = *(float*)((boneBase + 0x30 * boneID + 0x1C)); bonePos.z = *(float*)((boneBase + 0x30 * boneID + 0x2C)); return bonePos; } }; BaseAddress = *(uintptr_t*)((client.dll+ dwEntityList) + i * 0x10); //obtaining the entities base address BoneBase = *(uintptr_t*)((BaseAddress + 0x2698)); Vec3 headPos = BoneMatrix::GetBonePos(BoneBase, 8); Here is our complete guide on BoneMatrix:
Guide – How to find the Bone Matrix & Use m_dwBoneMatrix

Main CSGO ESP Guide: Video Tutorial – CSGO Direct3D9 EndScene Hook & D3D9 ESP Tutorial Series
Read our ESP Guide Discuss – ESP Overview
CS:GO Compatible World to Screen function: Discuss – World2Screen function

CreateInterface – Get CSGO Interfaces

Good CSGO Hack Sources and Tutorials
Source Code – CSGO External Triggerbot Nice Simple PoC Codenz
Source Code – Updated 2018 External CSGO Bunny Hop Hack
Source Code – CSGO Aimbot Internal Using Reclass Like a Boss
Source Code – CSGO and Source Engine CalcAngle Function for aimbot
Release – HexMurder’s Free ESP V2.5 (External) + Source
Source Code – Triggerbot+ Glow ESP
Source Code – BunnyHop Internal
Tutorial – SourceEngine for noobs (CSGO)
Source Code – Radar Spotted Hack

Video Tutorials

Auto Strafe
Source Code – [CSGO | Internal] Autostrafe

Special thanks to @HexMurder whom I stole much of this information from

Get free CS:GO hacks on

Leave a Reply