├── SourceEngine
├── SourceEngine
│ ├── Features
│ │ ├── Aimbot
│ │ │ ├── Aimbot.cpp
│ │ │ └── Aimbot.h
│ │ ├── Visuals
│ │ │ ├── Radar
│ │ │ │ ├── Radar.cpp
│ │ │ │ └── Radar.h
│ │ │ └── ESP
│ │ │ │ └── ESP.h
│ │ ├── Movement
│ │ │ ├── Movement.h
│ │ │ └── Movement.cpp
│ │ ├── Prediction
│ │ │ ├── Prediction.h
│ │ │ └── Prediction.cpp
│ │ └── Menu
│ │ │ ├── Input
│ │ │ ├── Input.h
│ │ │ └── Input.cpp
│ │ │ └── Menu.h
│ ├── Utils
│ │ ├── UtlVector
│ │ │ └── UtlVector.cpp
│ │ ├── Hash
│ │ │ ├── Hash.h
│ │ │ └── Hash.cpp
│ │ ├── Pattern
│ │ │ ├── Pattern.h
│ │ │ └── Pattern.cpp
│ │ ├── Interface
│ │ │ ├── Interface.h
│ │ │ └── Interface.cpp
│ │ ├── VFunc
│ │ │ └── VFunc.h
│ │ ├── Utils.h
│ │ ├── Color
│ │ │ └── Color.h
│ │ └── VMT
│ │ │ └── VMT.h
│ ├── SDK
│ │ ├── Interfaces
│ │ │ ├── NetChannel
│ │ │ │ └── NetChannel.cpp
│ │ │ ├── MoveHelper
│ │ │ │ └── MoveHelper.h
│ │ │ ├── EngineVGui
│ │ │ │ └── EngineVGui.h
│ │ │ ├── GlobalVarsBase
│ │ │ │ └── GlobalVarsBase.h
│ │ │ ├── ClientDLLSharedAppSystems
│ │ │ │ └── ClientDLLSharedAppSystems.h
│ │ │ ├── ClientModeShared
│ │ │ │ └── ClientModeShared.h
│ │ │ ├── EngineTrace
│ │ │ │ └── EngineTrace.h
│ │ │ ├── BaseClientDLL
│ │ │ │ └── BaseClientDLL.h
│ │ │ ├── RenderView
│ │ │ │ └── RenderView.h
│ │ │ ├── ClientEntityList
│ │ │ │ └── ClientEntityList.h
│ │ │ ├── Panel
│ │ │ │ └── Panel.h
│ │ │ ├── GameMovement
│ │ │ │ └── GameMovement.h
│ │ │ ├── ModelInfo
│ │ │ │ └── ModelInfo.h
│ │ │ ├── Steam
│ │ │ │ ├── OAuthCommon.h
│ │ │ │ ├── SteamSalt.h
│ │ │ │ ├── AppTicketCommon.h
│ │ │ │ ├── TSteamOfflineStatus.h
│ │ │ │ ├── ESteamBufferMethod.h
│ │ │ │ ├── BridgeCommon.h
│ │ │ │ ├── SteamAPI.h
│ │ │ │ ├── TSteamUpdateStats.h
│ │ │ │ ├── ESteamSeekMethod.h
│ │ │ │ ├── SteamclientAPI.h
│ │ │ │ ├── TSteamAppVersion.h
│ │ │ │ ├── TSteamAppDependencyInfo.h
│ │ │ │ ├── Steamworks.h
│ │ │ │ ├── TSteamSubscriptionStats.h
│ │ │ │ ├── TSteamDiscountQualifier.h
│ │ │ │ ├── ESteamPaymentCardType.h
│ │ │ │ ├── TSteamPrepurchaseReceiptInfo.h
│ │ │ │ ├── TSteamSubscriptionDiscount.h
│ │ │ │ ├── MusicCommon.h
│ │ │ │ ├── TSteamExternalBillingInfo.h
│ │ │ │ ├── TSteamProgress.h
│ │ │ │ ├── FriendGameInfo.h
│ │ │ │ ├── ISteamStreamLauncher001.h
│ │ │ │ ├── IClientStreamLauncher.h
│ │ │ │ ├── ESteamServerType.h
│ │ │ │ ├── ESteamAppUpdateStatsQueryType.h
│ │ │ │ ├── MasterServerUpdaterCommon.h
│ │ │ │ ├── UnifiedMessagesCommon.h
│ │ │ │ ├── ESteamFindFilter.h
│ │ │ │ ├── TSteamAppLaunchOption.h
│ │ │ │ ├── ISteamOAuth001.h
│ │ │ │ ├── EVoiceResult.h
│ │ │ │ ├── ISteamContentServer001.h
│ │ │ │ ├── StreamLauncherCommon.h
│ │ │ │ ├── TSteamError.h
│ │ │ │ ├── TSteamSubscriptionBillingInfo.h
│ │ │ │ ├── ESteamSubscriptionBillingInfoType.h
│ │ │ │ ├── TSteamAppStats.h
│ │ │ │ ├── TSteamGlobalUserID.h
│ │ │ │ ├── IClientGameCoordinator.h
│ │ │ │ ├── TSteamSubscriptionReceipt.h
│ │ │ │ ├── TSteamPrepurchaseInfo.h
│ │ │ │ ├── Win32Library.h
│ │ │ │ ├── POSIXLibrary.h
│ │ │ │ ├── ISteamMusic001.h
│ │ │ │ ├── ISteamUnifiedMessages001.h
│ │ │ │ ├── IClientUnifiedMessages.h
│ │ │ │ ├── ISteamContentServer002.h
│ │ │ │ ├── ESteamNotify.h
│ │ │ │ ├── TSteamApp.h
│ │ │ │ ├── IClientProductBuilder.h
│ │ │ │ ├── ISteamApps001.h
│ │ │ │ ├── ISteamAppList001.h
│ │ │ │ ├── TSteamSplitLocalUserID.h
│ │ │ │ ├── ISteamRemoteStorage001.h
│ │ │ │ ├── IClientStreamClient.h
│ │ │ │ ├── ISteamUtils001.h
│ │ │ │ ├── ISteamApps002.h
│ │ │ │ ├── ISteamAppTicket001.h
│ │ │ │ ├── ESteamSubscriptionStatus.h
│ │ │ │ ├── MatchMakingKeyValuePair.h
│ │ │ │ ├── ContentServerCommon.h
│ │ │ │ ├── TSteamPaymentCardReceiptInfo.h
│ │ │ │ ├── ISteamApps003.h
│ │ │ │ ├── IClientContentServer.h
│ │ │ │ ├── TSteamSubscription.h
│ │ │ │ ├── ECurrencyCode.h
│ │ │ │ ├── IClientDeviceAuth.h
│ │ │ │ ├── ISteamController001.h
│ │ │ │ ├── IClientApps.h
│ │ │ │ ├── ISteamGameCoordinator001.h
│ │ │ │ ├── ISteamRemoteStorage002.h
│ │ │ │ ├── ClientCommon.h
│ │ │ │ ├── ISteam2Bridge001.h
│ │ │ │ ├── TSteamPaymentCardInfo.h
│ │ │ │ ├── TSteamElemInfo.h
│ │ │ │ ├── GameStatsCommon.h
│ │ │ │ ├── ISteamGameStats001.h
│ │ │ │ ├── ISteamUGC001.h
│ │ │ │ ├── GameServerStatsCommon.h
│ │ │ │ ├── ISteamUtils002.h
│ │ │ │ └── ISteamUGC002.h
│ │ │ ├── GameEvent
│ │ │ │ └── GameEvent.h
│ │ │ └── Interfaces.h
│ │ ├── Includes
│ │ │ ├── Const.h
│ │ │ ├── dt_recv.h
│ │ │ ├── dt_common.h
│ │ │ ├── Includes.h
│ │ │ ├── icons.h
│ │ │ └── MD5.h
│ │ ├── Main
│ │ │ ├── BaseObject
│ │ │ │ ├── BaseObject.h
│ │ │ │ └── BaseObject.cpp
│ │ │ ├── ConVars
│ │ │ │ ├── ConVars.h
│ │ │ │ └── ConVars.cpp
│ │ │ ├── GlobalInfo
│ │ │ │ └── GlobalInfo.h
│ │ │ ├── BaseCombatWeapon
│ │ │ │ ├── BaseCombatWeapon.h
│ │ │ │ └── BaseCombatWeapon.cpp
│ │ │ ├── EntityCache
│ │ │ │ ├── EntityCache.h
│ │ │ │ └── EntityCache.cpp
│ │ │ ├── VisCheck
│ │ │ │ └── VisCheck.h
│ │ │ └── BaseEntity
│ │ │ │ ├── AnimState
│ │ │ │ ├── TFPlayerAnimState.h
│ │ │ │ └── BaseAnimatingOverlay.h
│ │ │ │ └── BaseEntity.h
│ │ ├── SDK.h
│ │ └── NetVars
│ │ │ ├── NetVars.cpp
│ │ │ └── NetVars.h
│ ├── Hooks
│ │ ├── EngineClientHook
│ │ │ ├── EngineClientHook.cpp
│ │ │ └── EngineClientHook.h
│ │ ├── WndProcHook
│ │ │ ├── WndProcHook.h
│ │ │ └── WndProcHook.cpp
│ │ ├── PanelHook
│ │ │ ├── PanelHook.cpp
│ │ │ └── PanelHook.h
│ │ ├── EngineVGuiHook
│ │ │ └── EngineVGuiHook.h
│ │ ├── PredictionHook
│ │ │ ├── PredictionHook.h
│ │ │ └── PredictionHook.cpp
│ │ ├── SurfaceHook
│ │ │ ├── SurfaceHook.h
│ │ │ └── SurfaceHook.cpp
│ │ ├── Hooks.h
│ │ ├── ClientModeHook
│ │ │ ├── ClientModeHook.h
│ │ │ └── ClientModeHook.cpp
│ │ └── ClientHook
│ │ │ ├── ClientHook.h
│ │ │ └── ClientHook.cpp
│ └── DLLMain.cpp
└── SourceEngine.vcxproj.user
├── README.md
└── Base.sln
/SourceEngine/SourceEngine/Features/Aimbot/Aimbot.cpp:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/Features/Visuals/Radar/Radar.cpp:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/Features/Visuals/Radar/Radar.h:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/Utils/UtlVector/UtlVector.cpp:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/SDK/Interfaces/NetChannel/NetChannel.cpp:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/Features/Aimbot/Aimbot.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Source-Engine-2013-base
2 | Base for SE2013(and close relatives). For writing training software.
3 |
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/SDK/Includes/Const.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lak3/Source-Engine-2013-base/HEAD/SourceEngine/SourceEngine/SDK/Includes/Const.h
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/SDK/Includes/dt_recv.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lak3/Source-Engine-2013-base/HEAD/SourceEngine/SourceEngine/SDK/Includes/dt_recv.h
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/SDK/Includes/dt_common.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lak3/Source-Engine-2013-base/HEAD/SourceEngine/SourceEngine/SDK/Includes/dt_common.h
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/SDK/Includes/Includes.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | #include "Classes.h"
4 | #include "Const.h"
5 | #include "Enums.h"
6 | #include "Structs.h"
7 | #include "MD5.h"
8 | #include "icons.h"
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine.vcxproj.user:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/Features/Movement/Movement.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 | #include "../../SDK/SDK.h"
3 |
4 | class C_Movement
5 | {
6 | public:
7 | bool bBunnyhop = true;
8 |
9 | void DoBunnyhop(C_UserCmd* pCmd);
10 | };
11 |
12 | extern C_Movement gMovement;
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/Hooks/EngineClientHook/EngineClientHook.cpp:
--------------------------------------------------------------------------------
1 | #include "EngineClientHook.h"
2 |
3 | bool __stdcall EngineClientHook::IsPlayingTimeDemo::Hook()
4 | {
5 | // ...
6 |
7 | return Table.Original(index)(gInts.Engine);
8 | }
9 |
10 | VMT::Table EngineClientHook::Table;
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/Hooks/WndProcHook/WndProcHook.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | #include "../../SDK/SDK.h"
4 |
5 | typedef LONG(WINAPI* WNDPROC)(HWND, UINT, WPARAM, LPARAM);
6 |
7 | namespace WndProcHook
8 | {
9 | extern WNDPROC WndProc;
10 | LONG WINAPI Hook(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
11 | }
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/SDK/Interfaces/MoveHelper/MoveHelper.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 | #include "../../Includes/Includes.h"
3 |
4 | class C_MoveHelper
5 | {
6 | public:
7 | void SetHost(C_BaseEntity *host)
8 | {
9 | typedef void(__thiscall *FN)(PVOID, C_BaseEntity *);
10 | GetVFunc(this, 0)(this, host);
11 | }
12 | };
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/Utils/Hash/Hash.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | //Main hash function
4 | //And prehashed strings allowing for fast comparisong.
5 | namespace Hash
6 | {
7 | int String(const char* szOrg);
8 |
9 | //Panels
10 | constexpr int HudScope = 200208064;
11 | constexpr int FocusOverlayPanel = -861513321;
12 | }
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/Hooks/PanelHook/PanelHook.cpp:
--------------------------------------------------------------------------------
1 | #include "PanelHook.h"
2 |
3 | void __stdcall PanelHook::PaintTraverse::Hook(unsigned int vgui_panel, bool force_repaint, bool allow_force)
4 | {
5 | Table.Original(index)(gInts.Panel, vgui_panel, force_repaint, allow_force);
6 |
7 | //...
8 | }
9 |
10 | VMT::Table PanelHook::Table;
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/Hooks/EngineVGuiHook/EngineVGuiHook.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 | #include "../../SDK/SDK.h"
3 |
4 | namespace EngineVGuiHook
5 | {
6 | extern VMT::Table Table;
7 |
8 | namespace Paint
9 | {
10 | using fn = void(__thiscall *)(C_EngineVGui *, int);
11 | const int index = 13;
12 | void __stdcall Hook(int mode);
13 | }
14 | }
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/Hooks/EngineClientHook/EngineClientHook.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | #include "../../SDK/SDK.h"
4 |
5 | namespace EngineClientHook
6 | {
7 | extern VMT::Table Table;
8 |
9 | namespace IsPlayingTimeDemo
10 | {
11 | const int index = 78;
12 | using fn = bool(__thiscall *)(C_EngineClient *);
13 | bool __stdcall Hook();
14 | }
15 | }
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/Utils/Pattern/Pattern.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 | #include
3 |
4 | class CPattern
5 | {
6 | private:
7 | DWORD FindPattern(DWORD dwAddress, DWORD dwLength, PCCH szPattern);
8 | HMODULE GetModuleHandleSafe(PCCH szModuleName);
9 | public:
10 | DWORD Find(PCCH szModuleName, PCCH szPattern);
11 | };
12 |
13 | extern CPattern gPattern;
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/SDK/Interfaces/EngineVGui/EngineVGui.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 | #include "../../Includes/Includes.h"
3 |
4 | class C_EngineVGui
5 | {
6 | public:
7 | virtual ~C_EngineVGui(void) { }
8 | virtual unsigned int GetPanel(VGuiPanel_t type) = 0;
9 | virtual bool IsGameUIVisible() = 0;
10 | };
11 |
12 | #define VENGINE_VGUI_VERSION "VEngineVGui001"
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/Utils/Hash/Hash.cpp:
--------------------------------------------------------------------------------
1 | #include "Hash.h"
2 |
3 | //The magic of number 33, i.e. why it works better than many other constants,
4 | //prime or not, has never been adequately explained by anyone.
5 | int Hash::String(const char* szOrg) {
6 | int iHash = 5381;
7 |
8 | while (int iStr = *szOrg++) iHash = iHash * 33 + iStr;
9 |
10 | return iHash;
11 | }
12 |
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/SDK/Main/BaseObject/BaseObject.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 | #include "../BaseEntity/BaseEntity.h"
3 |
4 | class C_BaseObject : public C_BaseEntity
5 | {
6 | public:
7 | C_BaseEntity *GetOwner();
8 | int GetLevel();
9 | bool IsSapped();
10 | bool IsPlasmaDisabled();
11 | bool IsDisabled();
12 | int GetHealth();
13 | int GetMaxHealth();
14 | bool IsCarried();
15 | };
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/SDK/Interfaces/GlobalVarsBase/GlobalVarsBase.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 | #include "../../Includes/Includes.h"
3 |
4 | class C_GlobalVarsBase
5 | {
6 | public:
7 | float realtime;
8 | int framecount;
9 | float absoluteframetime;
10 | float curtime;
11 | float frametime;
12 | int maxclients;
13 | int tickcount;
14 | float interval_per_tick;
15 | float interpolation_amount;
16 | };
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/Hooks/PanelHook/PanelHook.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 | #include "../../SDK/SDK.h"
3 |
4 | namespace PanelHook
5 | {
6 | extern VMT::Table Table;
7 |
8 | namespace PaintTraverse
9 | {
10 | const int index = 41;
11 | using fn = void(__thiscall *)(C_Panel*, unsigned int, bool, bool);
12 | void __stdcall Hook(unsigned int vgui_panel, bool force_repaint, bool allow_force);
13 | }
14 | }
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/SDK/Main/ConVars/ConVars.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | #include "../BaseEntity/BaseEntity.h"
4 |
5 | struct ConVars_t
6 | {
7 | ConVar *cl_interp = nullptr;
8 | ConVar *cl_interp_ratio = nullptr;
9 | ConVar *cl_updaterate = nullptr;
10 |
11 | ConVar *sv_gravity = nullptr;
12 | ConVar *cl_flipviewmodels = nullptr;
13 |
14 | void Init();
15 | };
16 |
17 | extern ConVars_t gConVars;
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/SDK/Interfaces/ClientDLLSharedAppSystems/ClientDLLSharedAppSystems.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 | #include "../../Includes/Includes.h"
3 |
4 | class C_ClientDLLSharedAppSystems
5 | {
6 | public:
7 | virtual int Count() = 0;
8 | virtual char const *GetDllName(int idx) = 0;
9 | virtual char const *GetInterfaceName(int idx) = 0;
10 | };
11 |
12 | #define CLIENT_DLL_SHARED_APPSYSTEMS "VClientDllSharedAppSystems001"
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/Utils/Interface/Interface.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 | #include
3 |
4 | class CInterface
5 | {
6 | private:
7 | typedef PVOID(*InstantiateInterface)();
8 |
9 | struct Interface_t
10 | {
11 | InstantiateInterface Interface;
12 | PCHAR szInterfaceName;
13 | Interface_t *NextInterface;
14 | };
15 |
16 | public:
17 | PVOID Get(PCCH szModule, PCCH szObject);
18 | };
19 |
20 | extern CInterface gInterface;
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/Hooks/PredictionHook/PredictionHook.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 | #include "../../SDK/SDK.h"
3 |
4 | namespace PredictionHook
5 | {
6 | extern VMT::Table Table;
7 |
8 | namespace RunCommand
9 | {
10 | const int index = 17;
11 | using fn = void(__thiscall *)(C_Prediction *, C_BaseEntity *, C_UserCmd *, C_MoveHelper *);
12 | void __stdcall Hook(C_BaseEntity *pEntity, C_UserCmd *pCmd, C_MoveHelper *pMoveHelper);
13 | }
14 | }
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/Hooks/PredictionHook/PredictionHook.cpp:
--------------------------------------------------------------------------------
1 | #include "PredictionHook.h"
2 |
3 | void __stdcall PredictionHook::RunCommand::Hook(C_BaseEntity *pEntity, C_UserCmd *pCmd, C_MoveHelper *pMoveHelper)
4 | {
5 | Table.Original(index)(gInts.Prediction, pEntity, pCmd, pMoveHelper);
6 |
7 | if (pMoveHelper && !gInts.MoveHelper)
8 | gInts.MoveHelper = pMoveHelper;
9 |
10 | //...
11 | }
12 |
13 | VMT::Table PredictionHook::Table;
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/SDK/Main/ConVars/ConVars.cpp:
--------------------------------------------------------------------------------
1 | #include "ConVars.h"
2 |
3 | void ConVars_t::Init()
4 | {
5 | cl_interp = gInts.CVars->FindVar("cl_interp");
6 | cl_interp_ratio = gInts.CVars->FindVar("cl_interp_ratio");
7 | cl_updaterate = gInts.CVars->FindVar("cl_updaterate");
8 |
9 | sv_gravity = gInts.CVars->FindVar("sv_gravity");
10 | cl_flipviewmodels = gInts.CVars->FindVar("cl_flipviewmodels");
11 | }
12 |
13 | ConVars_t gConVars;
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/SDK/Interfaces/ClientModeShared/ClientModeShared.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 | #include "../../Includes/Includes.h"
3 |
4 | class C_BaseHudChat
5 | {
6 | public:
7 | void ChatPrintf(int pIndex, const char *fmt, ...)
8 | {
9 | typedef void *(__thiscall *FN)(PVOID, int, const char *);
10 | GetVFunc(this, 19)(this, pIndex, fmt);
11 | }
12 | };
13 |
14 | class C_ClientModeShared
15 | {
16 | public:
17 | char szPad[28];
18 | C_BaseHudChat *m_pChatElement;
19 | };
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/Hooks/SurfaceHook/SurfaceHook.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 | #include "../../SDK/SDK.h"
3 |
4 | namespace SurfaceHook
5 | {
6 | extern VMT::Table Table;
7 |
8 | namespace OnScreenSizeChanged
9 | {
10 | const int index = 111;
11 | using fn = void(__thiscall *)(C_Surface *, int, int);
12 | void __stdcall Hook(int OldWidht, int OldHeight);
13 | }
14 |
15 | namespace LockCursor
16 | {
17 | const int index = 62;
18 | using fn = void(__thiscall*)(C_Surface*);
19 | void __stdcall Hook();
20 | }
21 | }
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/Utils/VFunc/VFunc.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | inline void **&GetVTable(void *inst, size_t offset = 0)
4 | {
5 | return *reinterpret_cast((size_t)inst + offset);
6 | }
7 |
8 | inline const void **GetVTable(const void *inst, size_t offset = 0)
9 | {
10 | return *reinterpret_cast((size_t)inst + offset);
11 | }
12 |
13 | template
14 | inline T GetVFunc(const void *inst, size_t index, size_t offset = 0)
15 | {
16 | return reinterpret_cast(GetVTable(inst, offset)[index]);
17 | }
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/Features/Prediction/Prediction.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | #include "../../SDK/SDK.h"
4 |
5 | class C_LocalPrediction
6 | {
7 | private:
8 | C_MoveData moveData = { };
9 | float fOldCurrentTime = 0.0f;
10 | float fOldFrameTime = 0.0f;
11 | int nOldTickCount = 0;
12 |
13 | private:
14 | int GetTickbase(C_UserCmd *pCmd, C_BaseEntity *pLocal);
15 |
16 | public:
17 | void Start(C_UserCmd *pCmd);
18 | void End(C_UserCmd *pCmd);
19 |
20 | int nOldFlags = 0;
21 | };
22 |
23 | extern C_LocalPrediction gPrediction;
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/SDK/Interfaces/EngineTrace/EngineTrace.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 | #include "../../Includes/Includes.h"
3 |
4 | class C_EngineTrace
5 | {
6 | public:
7 | void TraceRay(const Ray_t &Ray, unsigned int Mask, C_TraceFilter *TraceFilter, C_GameTrace *GameTrace)
8 | {
9 | typedef void(__thiscall *FN)(PVOID, const Ray_t &, unsigned int, C_TraceFilter *, C_GameTrace *);
10 | return GetVFunc(this, 4)(this, Ray, Mask, TraceFilter, GameTrace);
11 | }
12 | };
13 |
14 | #define VENGINE_TRACE_CLIENT_INTERFACE_VERSION "EngineTraceClient003"
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/Hooks/SurfaceHook/SurfaceHook.cpp:
--------------------------------------------------------------------------------
1 | #include "SurfaceHook.h"
2 |
3 | #include "../../Features/Menu/Menu.h"
4 |
5 | void __stdcall SurfaceHook::OnScreenSizeChanged::Hook(int OldWidht, int OldHeight)
6 | {
7 | Table.Original(index)(gInts.Surface, OldWidht, OldHeight);
8 |
9 | gScreenSize.Update();
10 | gDraw.ReloadFonts();
11 | }
12 |
13 | void __stdcall SurfaceHook::LockCursor::Hook()
14 | {
15 | gMenu.m_Open ? gInts.Surface->UnlockCursor() : Table.Original(index)(gInts.Surface);
16 | }
17 |
18 | VMT::Table SurfaceHook::Table;
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/Hooks/Hooks.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | #include "ClientHook/ClientHook.h"
4 | #include "ClientModeHook/ClientModeHook.h"
5 | #include "PredictionHook/PredictionHook.h"
6 | #include "SurfaceHook/SurfaceHook.h"
7 | #include "PanelHook/PanelHook.h"
8 | #include "EngineVGuiHook/EngineVGuiHook.h"
9 | #include "EngineClientHook/EngineClientHook.h"
10 | #include "WndProcHook/WndProcHook.h"
11 |
12 | class C_Hooks
13 | {
14 | private:
15 | HWND Window = 0;
16 |
17 | public:
18 | void Init();
19 | void Release();
20 | };
21 |
22 | extern C_Hooks gHooks;
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/SDK/Interfaces/BaseClientDLL/BaseClientDLL.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 | #include "../../Includes/Includes.h"
3 |
4 | class C_BaseClientDLL
5 | {
6 | public:
7 | C_ClientClass *GetAllClasses()
8 | {
9 | typedef C_ClientClass *(__thiscall *FN)(PVOID);
10 | return GetVFunc(this, 8)(this);
11 | }
12 |
13 | bool GetPlayerView(C_ViewSetup& playerView)
14 | {
15 | typedef bool(__thiscall* FN)(PVOID, C_ViewSetup&);
16 | return GetVFunc(this, 59)(this, playerView);
17 | }
18 | };
19 |
20 | #define CLIENT_DLL_INTERFACE_VERSION "VClient017"
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/SDK/Interfaces/RenderView/RenderView.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | class C_RenderView
4 | {
5 | public:
6 | void GetMatricesForView(const C_ViewSetup& view, VMatrix* pWorldToView, VMatrix* pViewToProjection, VMatrix* pWorldToProjection, VMatrix* pWorldToPixels) {
7 | typedef void(__thiscall* FN)(PVOID, const C_ViewSetup&, VMatrix*, VMatrix*, VMatrix*, VMatrix*);
8 | GetVFunc(this, 50)(this, view, pWorldToView, pViewToProjection, pWorldToProjection, pWorldToPixels);
9 | }
10 | };
11 |
12 | #define VENGINE_RENDERVIEW_INTERFACE_VERSION "VEngineRenderView014"
--------------------------------------------------------------------------------
/SourceEngine/SourceEngine/Utils/Utils.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | #include "Color/Color.h" //this includes math
4 | #include "Interface/Interface.h"
5 | #include "VFunc/VFunc.h"
6 | #include "VMT/VMT.h"
7 | #include "Pattern/Pattern.h"
8 | #include "Hash/Hash.h"
9 | #include "UtlVector/UtlVector.h"
10 |
11 | #include
12 | #include
13 | #include
14 | #include
15 | #include