ExclamationOffsets problem

Posts 1–3 of 3 · Page 1 of 1
Offsets problem
Hi the new update have be come and i can't update my offsets for Auto-Shoot and Auto-Wall
Here's a code:

OFFSETS.cpp

Code:
#include "Offsets.h"

void Offsets::Initialise()
{
	// Modules
	Modules::Client = Utilities::Memory::WaitOnModuleHandle("client.dll");
	Modules::Engine = Utilities::Memory::WaitOnModuleHandle("engine.dll");
	Modules::VGUI2 = Utilities::Memory::WaitOnModuleHandle("vgui2.dll");
	Modules::VGUISurface = Utilities::Memory::WaitOnModuleHandle("vguimatsurface.dll");
	Modules::Material = Utilities::Memory::WaitOnModuleHandle("materialsystem.dll");
	Modules::VPhysics = Utilities::Memory::WaitOnModuleHandle("vphysics.dll");
	Modules::Stdlib = Utilities::Memory::WaitOnModuleHandle("vstdlib.dll");

	

	//------------------------------------------------------------------------
	// VTables
#pragma region VTables
	VMT::CHL_GetAllClasses = 8;

	VMT::Engine_GetScreenSize = 5;
	VMT::Engine_GetPlayerInfo = 8;
	VMT::Engine_GetLocalPlayer = 12;
	VMT::Engine_Time = 14;
	VMT::Engine_GetViewAngles = 18;
	VMT::Engine_SetViewAngles = 19;
	VMT::Engine_GetMaxClients = 20;
	VMT::Engine_IsConnected = 27;
	VMT::Engine_IsInGame = 26;
	VMT::Engine_WorldToScreenMatrix = 37;
	VMT::Engine_ClientCmd_Unrestricted = 114;

	VMT::Panel_GetName = 36;
	VMT::Panel_PaintTraverse = 41;

	VMT::Surface_DrawSetColorA = 14;
	VMT::Surface_DrawSetColorB = 15;
	VMT::Surface_DrawFilledRect = 16;
	VMT::Surface_DrawOutlinedRect = 18;
	VMT::Surface_DrawLine = 19;
	VMT::Surface_DrawSetTextFont = 23;
	VMT::Surface_DrawSetTextColorA = 24;
	VMT::Surface_DrawSetTextColorB = 25;
	VMT::Surface_DrawSetTextPos = 26;
	VMT::Surface_DrawPrintText = 28;
	VMT::Surface_DrawSetTextureRGBA = 37;
	VMT::Surface_DrawSetTexture = 38;
	VMT::Surface_CreateNewTextureID = 43;
	VMT::Surface_FontCreate = 71;
	VMT::Surface_SetFontGlyphSet = 72;
	VMT::Surface_GetTextSize = 79;
	VMT::Surface_DrawOutlinedCircle = 103;
	VMT::Surface_SurfaceGetCursorPos = 66;
	VMT::Surface_DrawTexturedPolygon = 106;

	VMT::Material_GetName = 0;
	VMT::Material_SetMaterialVarFlag = 30;
	VMT::Material_GetMaterialVarFlag = 31;
	VMT::Material_AlphaModulate = 28;
	VMT::Material_ColorModulate = 29;
	VMT::Material_IncrementReferenceCount = 14;

	VMT::MaterialSystem_FindMaterial = 84;
	VMT::MaterialSystem_CreateMaterial = 83;

	VMT::ModelRender_ForcedMaterialOverride = 1;
	VMT::ModelRender_DrawModelExecute = 21;

	VMT::ModelInfo_GetModelName = 3;
	VMT::ModelInfo_GetStudiomodel = 30;

	VMT::RenderView_SetBlend = 4;
	VMT::RenderView_SetColorModulation = 6;

#pragma endregion Contains the VTable Indexs

	// An update changed the VTable offset for GetSpread.
	// Just incase ;)
	DWORD VMT_SpreadAddress = (DWORD)Utilities::Memory::FindPattern("client.dll", (PBYTE)"\x8B\x80\x00\x00\x00\x00\xFF\xD0\x51\xD9\x1C\x24\x0F\xB6\xC3\x8B\x5C\x24\x30", "xx????xxxxxxxxxxxxx");
	if (VMT_SpreadAddress)
	{
		VMT::Weapon_GetSpread = *(DWORD*)(VMT_SpreadAddress + 2);
		VMT::Weapon_GetSpread = (VMT::Weapon_GetSpread / 4);
	}

	

	// I cbf trying to get the KeyValues part of the SDK working solo, so we'll just
	// Do some dirty shit
	Functions::KeyValues_KeyValues = Utilities::Memory::FindPattern("client.dll", (PBYTE)"\x68\x00\x00\x00\x00\x8B\xC8\xE8\x00\x00\x00\x00\x89\x45\xFC\xEB\x07\xC7\x45\x00\x00\x00\x00\x00\x8B\x03\x56", "x????xxx????xxxxxxx?????xxx");
	Functions::KeyValues_KeyValues += 7;
	Functions::KeyValues_KeyValues = Functions::KeyValues_KeyValues + *reinterpret_cast< PDWORD_PTR >(Functions::KeyValues_KeyValues + 1) + 5;

	Functions::KeyValues_LoadFromBuffer = Utilities::Memory::FindPattern("client.dll", (PBYTE)"\xE8\x00\x00\x00\x00\x8A\xD8\xFF\x15\x00\x00\x00\x00\x84\xDB", "x????xxxx????xx");
	Functions::KeyValues_LoadFromBuffer = Functions::KeyValues_LoadFromBuffer + *reinterpret_cast< PDWORD_PTR >(Functions::KeyValues_LoadFromBuffer + 1) + 5;

	Functions::dwCalcPlayerView = Utilities::Memory::FindPattern("client.dll", (PBYTE)"\x84\xC0\x75\x08\x57\x8B\xCE\xE8\x00\x00\x00\x00\x8B\x06", "xxxxxxxx????xx");
}

namespace Offsets
{
	// Addresses of loaded game modules
	namespace Modules
	{
		DWORD Client;
		DWORD Engine;
		DWORD VGUI2;
		DWORD VGUISurface;
		DWORD Material;
		DWORD VPhysics;
		DWORD Stdlib;
	};

	// Virtual Method Table Indexes
	namespace VMT
	{
		//CHL Client
		DWORD CHL_GetAllClasses;

		//Engine Client
		DWORD Engine_GetScreenSize;
		DWORD Engine_GetPlayerInfo;
		DWORD Engine_GetLocalPlayer;
		DWORD Engine_Time;
		DWORD Engine_GetViewAngles;
		DWORD Engine_SetViewAngles;
		DWORD Engine_GetMaxClients;
		DWORD Engine_IsConnected;
		DWORD Engine_IsInGame;
		DWORD Engine_WorldToScreenMatrix;
		DWORD Engine_ClientCmd_Unrestricted;

		// Panels
		DWORD Panel_GetName;
		DWORD Panel_PaintTraverse;

		// Surface
		DWORD Surface_DrawSetColorA;
		DWORD Surface_DrawSetColorB;
		DWORD Surface_DrawFilledRect;
		DWORD Surface_DrawOutlinedRect;
		DWORD Surface_DrawLine;
		DWORD Surface_DrawSetTextFont;
		DWORD Surface_DrawSetTextColorA;
		DWORD Surface_DrawSetTextColorB;
		DWORD Surface_DrawSetTextPos;
		DWORD Surface_DrawPrintText;
		DWORD Surface_DrawSetTextureRGBA;
		DWORD Surface_DrawSetTexture;
		DWORD Surface_CreateNewTextureID;
		DWORD Surface_FontCreate;
		DWORD Surface_SetFontGlyphSet;
		DWORD Surface_GetTextSize;
		DWORD Surface_DrawOutlinedCircle;
		DWORD Surface_SurfaceGetCursorPos;
		DWORD Surface_DrawTexturedPolygon;

		DWORD Material_GetName;
		DWORD Material_SetMaterialVarFlag;
		DWORD Material_GetMaterialVarFlag;
		DWORD Material_AlphaModulate;
		DWORD Material_ColorModulate;
		DWORD Material_IncrementReferenceCount;

		DWORD MaterialSystem_FindMaterial;
		DWORD MaterialSystem_CreateMaterial;

		DWORD ModelRender_ForcedMaterialOverride;
		DWORD ModelRender_DrawModelExecute;

		DWORD ModelInfo_GetModelName;
		DWORD ModelInfo_GetStudiomodel;

		DWORD RenderView_SetBlend;
		DWORD RenderView_SetColorModulation;

		// Weapon entities
		DWORD Weapon_GetSpread;
	};

	// Addresses of engine functions to call
	namespace Functions
	{
		DWORD KeyValues_KeyValues;
		DWORD KeyValues_LoadFromBuffer;
		DWORD dwCalcPlayerView;
	};

};
OFFSETS.H
Code:
#pragma once

#include "Utilities.h"

// Various offsets
namespace Offsets
{
	// Sets up all the shit we need
	void Initialise();

	// Addresses of loaded game modules
	namespace Modules
	{
		extern DWORD Client;
		extern DWORD Engine;
		extern DWORD VGUI2;
		extern DWORD VGUISurface;
		extern DWORD Material;
		extern DWORD VPhysics;
		extern DWORD Stdlib;
	};

	// Virtual Method Table Indexes
	namespace VMT
	{
		//CHL Client
		extern DWORD CHL_GetAllClasses;

		//Engine Client
		extern DWORD Engine_GetScreenSize;
		extern DWORD Engine_GetPlayerInfo;
		extern DWORD Engine_GetLocalPlayer;
		extern DWORD Engine_Time;
		extern DWORD Engine_GetViewAngles;
		extern DWORD Engine_SetViewAngles;
		extern DWORD Engine_GetMaxClients;
		extern DWORD Engine_IsConnected;
		extern DWORD Engine_IsInGame;
		extern DWORD Engine_WorldToScreenMatrix;
		extern DWORD Engine_ClientCmd_Unrestricted;

		// Panels
		extern DWORD Panel_GetName;
		extern DWORD Panel_PaintTraverse;

		// Surface
		extern DWORD Surface_DrawSetColorA;
		extern DWORD Surface_DrawSetColorB;
		extern DWORD Surface_DrawFilledRect;
		extern DWORD Surface_DrawOutlinedRect;
		extern DWORD Surface_DrawLine;
		extern DWORD Surface_DrawSetTextFont;
		extern DWORD Surface_DrawSetTextColorA;
		extern DWORD Surface_DrawSetTextColorB;
		extern DWORD Surface_DrawSetTextPos;
		extern DWORD Surface_DrawPrintText;
		extern DWORD Surface_DrawSetTextureRGBA;
		extern DWORD Surface_DrawSetTexture;
		extern DWORD Surface_CreateNewTextureID;
		extern DWORD Surface_FontCreate;
		extern DWORD Surface_SetFontGlyphSet;
		extern DWORD Surface_GetTextSize;
		extern DWORD Surface_DrawOutlinedCircle;
		extern DWORD Surface_SurfaceGetCursorPos;
		extern DWORD Surface_DrawTexturedPolygon;

		extern DWORD Material_GetName;
		extern DWORD Material_SetMaterialVarFlag;
		extern DWORD Material_GetMaterialVarFlag;
		extern DWORD Material_AlphaModulate;
		extern DWORD Material_ColorModulate;
		extern DWORD Material_IncrementReferenceCount;

		extern DWORD MaterialSystem_FindMaterial;
		extern DWORD MaterialSystem_CreateMaterial;

		extern DWORD ModelRender_ForcedMaterialOverride;
		extern DWORD ModelRender_DrawModelExecute;

		extern DWORD ModelInfo_GetModelName;
		extern DWORD ModelInfo_GetStudiomodel;

		extern DWORD RenderView_SetBlend;
		extern DWORD RenderView_SetColorModulation;

		// Weapon entities
		extern DWORD Weapon_GetSpread;
	};

	// Addresses of engine functions to call
	namespace Functions
	{
		extern DWORD KeyValues_KeyValues;
		extern DWORD KeyValues_LoadFromBuffer;
		extern DWORD dwCalcPlayerView;
	};

};

struct COffsets
{
	DWORD m_iHealth;
	DWORD m_fCameraInThirdPerson;
	DWORD m_vecCameraOffset;
	DWORD m_iTeamNum;
	DWORD m_bDormant;
	DWORD m_bGunGameImmunity;
	DWORD m_lifeState;
	DWORD m_fFlags;
	DWORD m_Local;
	DWORD m_nTickBase;
	DWORD m_nForceBone;
	DWORD m_mBoneMatrix;
	DWORD m_nModelIndex;
	DWORD m_viewPunchAngle;
	DWORD m_aimPunchAngle;
	DWORD m_vecOrigin;
	DWORD m_vecViewOffset;
	DWORD m_vecVelocity;
	DWORD m_szLastPlaceName;
	DWORD m_flNextPrimaryAttack;
	DWORD m_hActiveWeapon;
	DWORD m_fAccuracyPenalty;
	DWORD m_Collision;
	DWORD m_iShotsFired;
	DWORD m_iWeaponID;
	DWORD m_nMoveType;
	DWORD m_nHitboxSet;
	DWORD m_bHasHelmet;
	DWORD m_ArmorValue;
	DWORD m_CollisionGroup;
	DWORD m_iClass;
	DWORD m_bIsBroken;
	DWORD m_angEyeAngles;
	DWORD m_hOwnerEntity;
	DWORD m_flC4Blow;
	DWORD m_flFlashDuration;
	DWORD m_iGlowIndex;

	DWORD m_nFallbackPaintKit;
	DWORD m_nFallbackSeed;
	DWORD m_flFallbackWear;
	DWORD m_nFallbackStatTrak;
	DWORD m_AttributeManager;
	DWORD m_Item;
	DWORD m_iEntityLevel;
	DWORD m_iItemIDHigh;
	DWORD m_iItemIDLow;
	DWORD m_iAccountID;
	DWORD m_iEntityQuality;
	DWORD m_OriginalOwnerXuidLow;
	DWORD m_OriginalOwnerXuidHigh;
	DWORD m_iItemDefinitionIndex;
	DWORD m_iClip1;
	DWORD m_bReloadVisuallyComplete;

	//sigs
	DWORD CalcPlayerView;
	DWORD d3d9Device;
	DWORD SendPacket;
	DWORD GlowManager;
	DWORD LoadFromBufferEx;
	DWORD InitKeyValuesEx;
	DWORD ServerRankRevealAllEx;
	DWORD IsReadyEx;
};
extern COffsets offsets;

namespace Offsets
{
	extern void GrabOffsets();
}
the WeaponInfo struct has changed 90% thats the reason why it broke

Updated one:
class wpnInf
{
public:
char _0x0000[2048];
__int32 ammo_type;
char _0x0804[52];
__int32 weapon_type
__int32 weapon_team;
__int32 weapon_id;
bool m_IsFullAuto;
char _0x0845[3];
float heat_per_shot;
__int32 price;
float m_flArmorRatio;
float speed1;
float speed2;
__int32 crosshair_min;
__int32 crosshair_delta;
float m_flPenetration;
__int32 m_iDamage;
float m_flRange;
float m_flRangeModifier;
__int32 bullets;
float cycle1;
float cycle2;
char _0x0880[416];
float spread;
float spread2;
/*


0x0800
0x0838
0x0840
0x0844

0x0848
0x084C
0x0850
0x0854
0x0858
0x085C
0x0860
0x0864
0x0868
0x086C
0x0870
0x0874
0x0878
0x087C
0x0A20
0x0A24
*/
};

This is not mine i just saw someone posted the fixed one so i dont need to do it manually lol
Quote Originally Posted by AtiPLS View Post
the WeaponInfo struct has changed 90% thats the reason why it broke

Updated one:
class wpnInf
{
public:
char _0x0000[2048];
__int32 ammo_type;
char _0x0804[52];
__int32 weapon_type
__int32 weapon_team;
__int32 weapon_id;
bool m_IsFullAuto;
char _0x0845[3];
float heat_per_shot;
__int32 price;
float m_flArmorRatio;
float speed1;
float speed2;
__int32 crosshair_min;
__int32 crosshair_delta;
float m_flPenetration;
__int32 m_iDamage;
float m_flRange;
float m_flRangeModifier;
__int32 bullets;
float cycle1;
float cycle2;
char _0x0880[416];
float spread;
float spread2;
/*


0x0800
0x0838
0x0840
0x0844

0x0848
0x084C
0x0850
0x0854
0x0858
0x085C
0x0860
0x0864
0x0868
0x086C
0x0870
0x0874
0x0878
0x087C
0x0A20
0x0A24
*/
};

This is not mine i just saw someone posted the fixed one so i dont need to do it manually lol
It can't work
Posts 1–3 of 3 · Page 1 of 1

Post a Reply

Similar Threads

Tags for this Thread

None

Talk with us