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.
Features:
ClientManager - A class to perform various tasks around the client
Example:
CPP Code:
using namespace inVincibleLib;
if (ClientManager::GetAttack2())
std::cout << "+attack2 is currently active!" << std::endl;
if (ClientManager::SetJump(1))
std::cout << "+jump" << std::endl;
if (ClientManager::SetJump(0))
std::cout << "-jump" << std::endl;
EntityManager - A class to perform various tasks around Entities, specifically Players
Example:
CPP Code:
using namespace inVincibleLib;
if(EntityManager::GetTeam(RandomEntityID) != LocalPlayerManager::GetTeam())
std::cout << "The Entity is not in your Team!" << std::endl;
for (int i = 0; i < 64; i++)
{
if(!EntityManager::GetbSpotted(i))
EntityManager::SetbSpotted(i, 1);
}
LocalPlayerManager - A class to perform various tasks around the LocalPlayer
Example:
CPP Code:
using namespace inVincibleLib;
if(EntityManager::GetTeam(LocalPlayer::GetCrosshairID() - 1) != LocalPlayerManager::GetTeam())
{
ClientManager::SetAttack(1);
Sleep(10);
ClientManager::SetAttack(0);
}
if(LocalPlayerManager::SetViewAngles(MyNewViewAngles))
std::cout << "ViewAngles successfully set!" << std::endl;
LogManager - A class to perform various tasks around logging information to a file
Example:
CPP Code:
using namespace inVincibleLib;
#define LOGPATH "C:\\MyCoolNewHack\\Logs\\Log.txt"
LogManager::NewLog("This is a Log!", LOGPATH);
LogManager::NewWarning("This is a Warning!", LOGPATH);
LogManager::NewError("This is an Error!", LOGPATH);
Output:
Only registered and activated users can see links.
MemoryManager - A class to perform various tasks around memory management
Example:
CPP Code:
using namespace inVincibleLib;
while (!MemoryManager::AttachProcess("csgo.exe"))
{
LogManager::NewError("Couldn't find CS:GO!", LOGFILE);
}
LogManager::NewLog("Found CS:GO!", LOGFILE);
ResourceManager::ClientDLL = MemoryManager::GetModuleBaseAddress("client.dll");
if (ResourceManager::ClientDLL == 0x0)
{
LogManager::NewWarning("Couldn't find client.dll!", LOGFILE);
}
LogManager::NewLog("Found client.dll!", LOGFILE);
DWORD a = MemoryManager::ReadMemory<DWORD>(ResourceManager::ClientDLL + OffsetManager::m_dwLocalPlayer);
if (MemoryManager::WriteMemory<bool>(EntityManager::GetEntityBaseAddress(3) + OffsetManager::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;
OffsetManager - A class to store all the current offsets
Example:
CPP Code:
using namespace inVincibleLib;
OffsetManager::GetOffsets("C:\\MyCoolHack\\Config\\Offsets.ini");
DWORD a = MemoryManager::ReadMemory<DWORD>(ResourceManager::ClientDLL + OffsetManager::m_dwLocalPlayer);
ResourceManager - A class to store various variables
Example:
CPP Code:
using namespace inVincibleLib;
DWORD a = MemoryManager::ReadMemory<DWORD>(ResourceManager::ClientDLL + OffsetManager::m_dwLocalPlayer);
Vector2 - A vector class
Vector3 - A vector class
Example Project:
CPP Code:
#include "inVincibleLib.h"
#define LOGFILE "C:\\MyCoolPublicHack\\Configs\\Log.txt"
#define FL_ONGROUND (1<<0)
using namespace inVincibleLib;
int main()
{
LogManager::InitDirectories("C:\\", "\\MyCoolPublicHack", "\\Configs");
LogManager::InitializeNewLogSection("MyCoolPublicHack", LOGFILE);
OffsetManager::GetOffsets("C:\\MyCoolPublicHack\\Configs\\Offsets.ini");
while (!MemoryManager::AttachProcess("csgo.exe"))
LogManager::NewError("Couldn't find CS:GO!", LOGFILE);
LogManager::NewLog("Found CS:GO!", LOGFILE);
while (MemoryManager::GetModuleBaseAddress("client.dll") == 0x0)
LogManager::NewWarning("Couldn't find client.dll!", LOGFILE);
LogManager::NewLog("Found client.dll!", LOGFILE);
while ("This is copy pasted" != "true")
{
if (LocalPlayerManager::GetFlags() & FL_ONGROUND)
{
ClientManager::SetJump(1);
Sleep(50);
ClientManager::SetJump(0);
}
Sleep(1);
}
return 0;
}
Important Functions:
If you plan on making a new Project with inVincibleLib, this is the usual start routine for you in order to use every function:
CPP Code:
LogManager::InitDirectories("HardDrive", "SubFolder", "SubSubFolder"); // Checks if these directories already exist and creates them if neccessary
LogManager::InitializeNewLogSection("MyCoolPublicHack", LOGFILE); // Seperates the old Logs from the new ones
OffsetManager::GetOffsets("C:\\MyCoolPublicHack\\Configs\\Offsets.ini"); // Gets the Offsets from an .ini file and saves them into variables to use
MemoryManager::AttachProcess("csgo.exe"); // Gets a handle to csgo.exe
ResourceManager::ClientDLL = MemoryManager::GetModuleBaseAddress("client.dll"); // Gets the Base Address of Client.dll // Important!
ResourceManager::EngineDLL = MemoryManager::GetModuleBaseAddress("engine.dll"); // Gets the Base Address of Engine.dll // Important!
How to install / use:
Planned features:
- Pattern Scanning to get Offsets dynamically
- BSP Parsing
- Description for every Offset
- More functions based on requests