💡 inVincibleLib - An external CS:GO library for beginners

Hello, i'm proud that you found your way to this post!
I'm going to distance myself a little bit from the cheating scene, so i thought i'll leave something for other people to play around with.
That's why i made inVincibleLib.
InVincibleLib is a C++ Static Library which can be used to create external CS:GO hacks within minutes.
It's meant for beginners and is currently in the early stages.
I will be updating it in the future, so there are many more features to come.
But what exactly is inVincibleLib?
inVincibleLib is a static library for beginners which can be used to create external cheats for Counter-Strike: Global Offensive.
Every function is commented, making it easy for you to understand how to use them.
Example:

Features:
Client - A class to perform various tasks around the client
Example:
Code:
using namespace inVincibleLib; if (Client::GetAttack2()) std::cout << "+attack2 is currently active!" << std::endl; if (Client::SetJump(1)) std::cout << "+jump" << std::endl; if (Client::SetJump(0)) std::cout << "-jump" << std::endl;
Example:
Code:
using namespace inVincibleLib;
if(Entity::GetTeam(RandomEntityID) != LocalPlayer::GetTeam())
std::cout << "The Entity is not in your Team!" << std::endl;
for (int i = 0; i < 64; i++)
{
if(!Entity::GetbSpotted(i))
Entity::SetbSpotted(i, 1);
}
Example:
Code:
using namespace inVincibleLib;
if(Entity::GetTeam(LocalPlayer::GetCrosshairID() - 1) != LocalPlayer::GetTeam())
{
Client::SetAttack(1);
Sleep(10);
Client::SetAttack(0);
}
if(LocalPlayer::SetViewAngles(MyNewViewAngles))
std::cout << "ViewAngles successfully set!" << std::endl;
Example:
Code:
using namespace inVincibleLib;
#define LOGPATH "C:\\MyCoolNewHack\\Log.txt"
Log::NewLog("This is a Log!", LOGPATH);
Log::NewWarning("This is a Warning!", LOGPATH);
Log::NewError("This is an Error!", LOGPATH);

Memory - A class to perform various tasks around memory management
Example:
Code:
using namespace inVincibleLib;
while (!Memory::AttachProcess("csgo.exe"))
{
Log::NewError("Couldn't find CS:GO!", LOGFILE);
}
Log::NewLog("Found CS:GO!", LOGFILE);
Resources::ClientDLL = Memory::GetModuleInformation("client.dll");
if (Resources::ClientDLL.modBaseAddr == 0x0)
{
Log::NewWarning("Couldn't find client.dll!", LOGFILE);
}
Log::NewLog("Found client.dll!", LOGFILE);
DWORD a = Memory::ReadMemory<DWORD>(Resources::ClientDLL.modBaseAddr + Offsets::m_dwLocalPlayer);
if (Memory::WriteMemory<bool>(Entity::GetEntityBaseAddress(3) + Offsets::m_bSpotted, 1)
std::cout << "Successfully set bSpotted of Entity 3 to 1!" << std::endl;
else
std::cout << "Error, use GetLastError to specify the exact error!" << std::endl;
DWORD m_flFlashMaxAlpha = Memory::GetOffset("client.dll", "\x0F\x2F\xF2\x0F\x87\x00\x00\x00\x00\xF3\x0F\x10\xA1\x00\x00\x00\x00\x0F\x2F\xCC\x0F\x83", "xxxxx????xxxx????xxxxx", 13, false);
Example:
Code:
using namespace inVincibleLib;
Offsets::GetOffsetsFromFile("C:\\MyCoolHack\\Offsets.ini");
DWORD a = Memory::ReadMemory<DWORD>(Resources::ClientDLL.modBaseAddr + Offsets::m_dwLocalPlayer);
Example:
Code:
using namespace inVincibleLib; DWORD a = Memory::ReadMemory<DWORD>(Resources::ClientDLL.modBaseAddr + Offsets::m_dwLocalPlayer);
Vector3 - A vector class
Example Project:
Code:
#include "inVincibleLib.h"
#define LOGFILE "C:\\MyCoolPublicHack\\Log.txt"
#define FL_ONGROUND (1<<0)
using namespace inVincibleLib;
int main()
{
iLibrary::Setup("MyCoolPublicHack");
Offsets::GetOffsetsFromFile("C:\\MyCoolPublicHack\\Offsets.ini");
while ("This is copy pasted" != "true")
{
if (LocalPlayer::GetFlags() & FL_ONGROUND && GetAsyncKeyState(VK_SPACE) & 0x8000)
{
Client::SetJump(1);
Sleep(50);
Client::SetJump(0);
}
Sleep(1);
}
return 0;
}
Planned features:
- Pattern Scanning to get Offsets dynamically
- BSP Parsing
- Description for every Offset
- More functions based on requests
Credits:
Mozquito
maxkunes
@Yemiez
More to come...
Downloads for Visual Studio 2015 and 2013 are attached.
Offsets.ini:
Code:
[Offsets] m_fAccuracyPenalty = m_nForceBone = m_iState = m_iClip1 = m_flNextPrimaryAttack = m_bCanReload = m_iPrimaryAmmoType = m_iWeaponID = m_bSpotted = m_bSpottedByMask = m_hOwnerEntity = m_vecOrigin = m_iTeamNum = m_flFlashMaxAlpha = m_flFlashDuration = m_iGlowIndex = m_angEyeAngles = m_iAccount = m_ArmorValue = m_bGunGameImmunity = m_iShotsFired = m_lifeState = m_fFlags = m_iHealth = m_hLastWeapon = m_hMyWeapons = m_hActiveWeapon = m_Local = m_vecViewOffset = m_nTickBase = m_vecVelocity = m_szLastPlaceName = m_vecPunch = m_iCrossHairID = m_dwModel = m_dwIndex = m_dwBoneMatrix = m_bMoveType = m_bDormant = m_dwClientState = m_dwLocalPlayerIndex = m_dwInGame = m_dwMaxPlayer = m_dwMapDirectory = m_dwMapname = m_dwPlayerInfo = m_dwViewAngles = m_dwViewMatrix = m_dwEnginePosition = m_dwRadarBase = m_dwRadarBasePointer = m_dwLocalPlayer = m_dwEntityList = m_dwWeaponTable = m_dwWeaponTableIndex = m_dwInput = m_dwGlobalVars = m_dwGlowObject = m_dwForceAttack = m_dwForceAttack2 = m_dwForceMoveForward = m_dwForceMoveBackward = m_dwForceMoveLeft = m_dwForceMoveRight = m_dwForceJump =
Hopefully you update it with new stuff!
the code is simple rest of pure logic .
