Revert renaming class, enum and field names

This commit is contained in:
a2x 2024-03-29 01:51:20 +10:00
parent bf890592c2
commit 87fccce283
23 changed files with 285261 additions and 58 deletions

24
output/buttons.cs Normal file
View File

@ -0,0 +1,24 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-03-28 15:47:06.987281800 UTC
namespace CS2Dumper {
// Module: client.dll
public static class Buttons {
public const nint attack = 0x1730020;
public const nint attack2 = 0x17300B0;
public const nint back = 0x17302F0;
public const nint duck = 0x17305C0;
public const nint forward = 0x1730260;
public const nint jump = 0x1730530;
public const nint left = 0x1730380;
public const nint lookatweapon = 0x192B540;
public const nint reload = 0x172FF90;
public const nint right = 0x1730410;
public const nint showscores = 0x192B420;
public const nint sprint = 0x172FF00;
public const nint turnleft = 0x1730140;
public const nint turnright = 0x17301D0;
public const nint use = 0x17304A0;
public const nint zoom = 0x192B4B0;
}
}

28
output/buttons.hpp Normal file
View File

@ -0,0 +1,28 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-03-28 15:47:06.987281800 UTC
#pragma once
#include <cstddef>
namespace cs2_dumper {
// Module: client.dll
namespace buttons {
constexpr std::ptrdiff_t attack = 0x1730020;
constexpr std::ptrdiff_t attack2 = 0x17300B0;
constexpr std::ptrdiff_t back = 0x17302F0;
constexpr std::ptrdiff_t duck = 0x17305C0;
constexpr std::ptrdiff_t forward = 0x1730260;
constexpr std::ptrdiff_t jump = 0x1730530;
constexpr std::ptrdiff_t left = 0x1730380;
constexpr std::ptrdiff_t lookatweapon = 0x192B540;
constexpr std::ptrdiff_t reload = 0x172FF90;
constexpr std::ptrdiff_t right = 0x1730410;
constexpr std::ptrdiff_t showscores = 0x192B420;
constexpr std::ptrdiff_t sprint = 0x172FF00;
constexpr std::ptrdiff_t turnleft = 0x1730140;
constexpr std::ptrdiff_t turnright = 0x17301D0;
constexpr std::ptrdiff_t use = 0x17304A0;
constexpr std::ptrdiff_t zoom = 0x192B4B0;
}
}

68
output/buttons.json Normal file
View File

@ -0,0 +1,68 @@
{
"buttons": [
{
"name": "attack",
"value": 24313888
},
{
"name": "attack2",
"value": 24314032
},
{
"name": "back",
"value": 24314608
},
{
"name": "duck",
"value": 24315328
},
{
"name": "forward",
"value": 24314464
},
{
"name": "jump",
"value": 24315184
},
{
"name": "left",
"value": 24314752
},
{
"name": "lookatweapon",
"value": 26391872
},
{
"name": "reload",
"value": 24313744
},
{
"name": "right",
"value": 24314896
},
{
"name": "showscores",
"value": 26391584
},
{
"name": "sprint",
"value": 24313600
},
{
"name": "turnleft",
"value": 24314176
},
{
"name": "turnright",
"value": 24314320
},
{
"name": "use",
"value": 24315040
},
{
"name": "zoom",
"value": 26391728
}
]
}

26
output/buttons.rs Normal file
View File

@ -0,0 +1,26 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-03-28 15:47:06.987281800 UTC
#![allow(non_upper_case_globals, unused)]
pub mod cs2_dumper {
// Module: client.dll
pub mod buttons {
pub const attack: usize = 0x1730020;
pub const attack2: usize = 0x17300B0;
pub const back: usize = 0x17302F0;
pub const duck: usize = 0x17305C0;
pub const forward: usize = 0x1730260;
pub const jump: usize = 0x1730530;
pub const left: usize = 0x1730380;
pub const lookatweapon: usize = 0x192B540;
pub const reload: usize = 0x172FF90;
pub const right: usize = 0x1730410;
pub const showscores: usize = 0x192B420;
pub const sprint: usize = 0x172FF00;
pub const turnleft: usize = 0x1730140;
pub const turnright: usize = 0x17301D0;
pub const use: usize = 0x17304A0;
pub const zoom: usize = 0x192B4B0;
}
}

4
output/info.json Normal file
View File

@ -0,0 +1,4 @@
{
"build_number": 14000,
"timestamp": "2024-03-28T15:47:06.987281800+00:00"
}

242
output/interfaces.cs Normal file
View File

@ -0,0 +1,242 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-03-28 15:47:06.987281800 UTC
namespace CS2Dumper.Interfaces {
// Module: animationsystem.dll
public static class Animationsystem {
public const nint AnimationSystemUtils_001 = 0x72E80;
public const nint AnimationSystem_001 = 0x6DA00;
}
// Module: client.dll
public static class Client {
public const nint ClientToolsInfo_001 = 0x732F00;
public const nint EmptyWorldService001_Client = 0x480850;
public const nint GameClientExports001 = 0x732F10;
public const nint LegacyGameUI001 = 0x8AEE40;
public const nint Source2Client002 = 0x732F20;
public const nint Source2ClientConfig001 = 0x46BA90;
public const nint Source2ClientPrediction001 = 0x7AF990;
public const nint Source2ClientUI001 = 0x89E460;
}
// Module: engine2.dll
public static class Engine2 {
public const nint BenchmarkService001 = 0x177230;
public const nint BugService001 = 0x178A90;
public const nint ClientServerEngineLoopService_001 = 0x1EAE60;
public const nint EngineGameUI001 = 0x121E70;
public const nint EngineServiceMgr001 = 0x1DBC10;
public const nint GameEventSystemClientV001 = 0x1E02B0;
public const nint GameEventSystemServerV001 = 0x1E02C0;
public const nint GameResourceServiceClientV001 = 0x17FC50;
public const nint GameResourceServiceServerV001 = 0x17FC60;
public const nint GameUIService_001 = 0x182600;
public const nint HostStateMgr001 = 0x1E4D10;
public const nint INETSUPPORT_001 = 0xF0DE0;
public const nint InputService_001 = 0x188120;
public const nint KeyValueCache001 = 0x1E7530;
public const nint MapListService_001 = 0x19B050;
public const nint NetworkClientService_001 = 0x1A2210;
public const nint NetworkP2PService_001 = 0x1A8F50;
public const nint NetworkServerService_001 = 0x1AD4C0;
public const nint NetworkService_001 = 0x1B26E0;
public const nint RenderService_001 = 0x1B2BD0;
public const nint ScreenshotService001 = 0x1B5590;
public const nint SimpleEngineLoopService_001 = 0x1F7050;
public const nint SoundService_001 = 0x1B9B90;
public const nint Source2EngineToClient001 = 0x61A90;
public const nint Source2EngineToClientStringTable001 = 0x8AB70;
public const nint Source2EngineToServer001 = 0x92140;
public const nint Source2EngineToServerStringTable001 = 0xA9830;
public const nint SplitScreenService_001 = 0x1C0430;
public const nint StatsService_001 = 0x1C3110;
public const nint ToolService_001 = 0x1C7D60;
public const nint VENGINE_GAMEUIFUNCS_VERSION005 = 0x122AE0;
public const nint VProfService_001 = 0x1C90E0;
}
// Module: filesystem_stdio.dll
public static class FilesystemStdio {
public const nint VAsyncFileSystem2_001 = 0x67960;
public const nint VFileSystem017 = 0x67950;
}
// Module: host.dll
public static class Host {
public const nint DebugDrawQueueManager001 = 0x11AE0;
public const nint GameModelInfo001 = 0x12090;
public const nint GameSystem2HostHook = 0x12170;
public const nint HostUtils001 = 0x12920;
public const nint PredictionDiffManager001 = 0x17340;
public const nint SaveRestoreDataVersion001 = 0x19060;
public const nint SinglePlayerSharedMemory001 = 0x19070;
public const nint Source2Host001 = 0x193F0;
}
// Module: imemanager.dll
public static class Imemanager {
public const nint IMEManager001 = 0xC470;
}
// Module: inputsystem.dll
public static class Inputsystem {
public const nint InputStackSystemVersion001 = 0x1850;
public const nint InputSystemVersion001 = 0x2A40;
}
// Module: localize.dll
public static class Localize {
public const nint Localize_001 = 0x3830;
}
// Module: matchmaking.dll
public static class Matchmaking {
public const nint GameTypes001 = 0x53800;
public const nint MATCHFRAMEWORK_001 = 0x105690;
}
// Module: materialsystem2.dll
public static class Materialsystem2 {
public const nint FontManager_001 = 0x37A80;
public const nint MaterialUtils_001 = 0x4DB40;
public const nint PostProcessingSystem_001 = 0x42A80;
public const nint TextLayout_001 = 0x4A200;
public const nint VMaterialSystem2_001 = 0x25F80;
}
// Module: meshsystem.dll
public static class Meshsystem {
public const nint MeshSystem001 = 0x7440;
}
// Module: navsystem.dll
public static class Navsystem {
public const nint NavSystem001 = 0x8E30;
}
// Module: networksystem.dll
public static class Networksystem {
public const nint FlattenedSerializersVersion001 = 0x7EF90;
public const nint NetworkMessagesVersion001 = 0x9FC90;
public const nint NetworkSystemVersion001 = 0xBFA00;
public const nint SerializedEntitiesVersion001 = 0xD6930;
}
// Module: panorama.dll
public static class Panorama {
public const nint PanoramaUIEngine001 = 0x5D960;
}
// Module: panorama_text_pango.dll
public static class PanoramaTextPango {
public const nint PanoramaTextServices001 = 0x4CBE0;
}
// Module: panoramauiclient.dll
public static class Panoramauiclient {
public const nint PanoramaUIClient001 = 0x12010;
}
// Module: particles.dll
public static class Particles {
public const nint ParticleSystemMgr003 = 0x591D0;
}
// Module: pulse_system.dll
public static class PulseSystem {
public const nint IPulseSystem_001 = 0x44C0;
}
// Module: rendersystemdx11.dll
public static class Rendersystemdx11 {
public const nint RenderDeviceMgr001 = 0x4C7D0;
public const nint RenderUtils_001 = 0x55150;
public const nint VRenderDeviceMgrBackdoor001 = 0x4C7E0;
}
// Module: resourcesystem.dll
public static class Resourcesystem {
public const nint ResourceSystem013 = 0x10920;
}
// Module: scenefilecache.dll
public static class Scenefilecache {
public const nint ResponseRulesCache001 = 0x31A0;
public const nint SceneFileCache002 = 0x6A60;
}
// Module: scenesystem.dll
public static class Scenesystem {
public const nint RenderingPipelines_001 = 0x86480;
public const nint SceneSystem_002 = 0xBD200;
public const nint SceneUtils_001 = 0x12FCF0;
}
// Module: schemasystem.dll
public static class Schemasystem {
public const nint SchemaSystem_001 = 0xAA50;
}
// Module: server.dll
public static class Server {
public const nint EmptyWorldService001_Server = 0x572840;
public const nint EntitySubclassUtilsV001 = 0x2AF7A0;
public const nint NavGameTest001 = 0xA46F10;
public const nint ServerToolsInfo_001 = 0x8322D0;
public const nint Source2GameClients001 = 0x8322E0;
public const nint Source2GameDirector001 = 0x11EAB0;
public const nint Source2GameEntities001 = 0x8322F0;
public const nint Source2Server001 = 0x832300;
public const nint Source2ServerConfig001 = 0x566BC0;
public const nint customnavsystem001 = 0x22C660;
}
// Module: soundsystem.dll
public static class Soundsystem {
public const nint SoundOpSystem001 = 0x16A640;
public const nint SoundOpSystemEdit001 = 0x96A50;
public const nint SoundSystem001 = 0x48320;
public const nint VMixEditTool001 = 0x75C30;
}
// Module: steamaudio.dll
public static class Steamaudio {
public const nint SteamAudio001 = 0x5AA70;
}
// Module: steamclient64.dll
public static class Steamclient64 {
public const nint CLIENTENGINE_INTERFACE_VERSION005 = 0x8621C0;
public const nint IVALIDATE001 = 0x866250;
public const nint SteamClient006 = 0x663700;
public const nint SteamClient007 = 0x663710;
public const nint SteamClient008 = 0x663720;
public const nint SteamClient009 = 0x663730;
public const nint SteamClient010 = 0x663740;
public const nint SteamClient011 = 0x663750;
public const nint SteamClient012 = 0x663760;
public const nint SteamClient013 = 0x663770;
public const nint SteamClient014 = 0x663780;
public const nint SteamClient015 = 0x663790;
public const nint SteamClient016 = 0x6637A0;
public const nint SteamClient017 = 0x6637B0;
public const nint SteamClient018 = 0x6637C0;
public const nint SteamClient019 = 0x6637D0;
public const nint SteamClient020 = 0x6637E0;
public const nint SteamClient021 = 0x6637F0;
public const nint p2pvoice002 = 0xD9FD0;
public const nint p2pvoicesingleton002 = 0xD6A30;
}
// Module: tier0.dll
public static class Tier0 {
public const nint TestScriptMgr001 = 0x140790;
public const nint VEngineCvar007 = 0x63290;
public const nint VProcessUtils002 = 0x131C70;
public const nint VStringTokenSystem001 = 0x190600;
}
// Module: v8system.dll
public static class V8system {
public const nint Source2V8System001 = 0x1950;
}
// Module: valve_avi.dll
public static class ValveAvi {
public const nint VAvi001 = 0x2F90;
}
// Module: valve_wmf.dll
public static class ValveWmf {
public const nint VMediaFoundation001 = 0x12D0;
}
// Module: vphysics2.dll
public static class Vphysics2 {
public const nint VPhysics2_Handle_Interface_001 = 0x5BCB0;
public const nint VPhysics2_Interface_001 = 0x57130;
}
// Module: vscript.dll
public static class Vscript {
public const nint VScriptManager010 = 0x32000;
}
// Module: vstdlib_s64.dll
public static class VstdlibS64 {
public const nint IVALIDATE001 = 0x25120;
public const nint VEngineCvar002 = 0x5760;
}
// Module: worldrenderer.dll
public static class Worldrenderer {
public const nint WorldRendererMgr001 = 0x205E0;
}
}

248
output/interfaces.hpp Normal file
View File

@ -0,0 +1,248 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-03-28 15:47:06.987281800 UTC
#pragma once
#include <cstddef>
namespace cs2_dumper {
namespace interfaces {
// Module: animationsystem.dll
namespace animationsystem {
constexpr std::ptrdiff_t AnimationSystemUtils_001 = 0x72E80;
constexpr std::ptrdiff_t AnimationSystem_001 = 0x6DA00;
}
// Module: client.dll
namespace client {
constexpr std::ptrdiff_t ClientToolsInfo_001 = 0x732F00;
constexpr std::ptrdiff_t EmptyWorldService001_Client = 0x480850;
constexpr std::ptrdiff_t GameClientExports001 = 0x732F10;
constexpr std::ptrdiff_t LegacyGameUI001 = 0x8AEE40;
constexpr std::ptrdiff_t Source2Client002 = 0x732F20;
constexpr std::ptrdiff_t Source2ClientConfig001 = 0x46BA90;
constexpr std::ptrdiff_t Source2ClientPrediction001 = 0x7AF990;
constexpr std::ptrdiff_t Source2ClientUI001 = 0x89E460;
}
// Module: engine2.dll
namespace engine2 {
constexpr std::ptrdiff_t BenchmarkService001 = 0x177230;
constexpr std::ptrdiff_t BugService001 = 0x178A90;
constexpr std::ptrdiff_t ClientServerEngineLoopService_001 = 0x1EAE60;
constexpr std::ptrdiff_t EngineGameUI001 = 0x121E70;
constexpr std::ptrdiff_t EngineServiceMgr001 = 0x1DBC10;
constexpr std::ptrdiff_t GameEventSystemClientV001 = 0x1E02B0;
constexpr std::ptrdiff_t GameEventSystemServerV001 = 0x1E02C0;
constexpr std::ptrdiff_t GameResourceServiceClientV001 = 0x17FC50;
constexpr std::ptrdiff_t GameResourceServiceServerV001 = 0x17FC60;
constexpr std::ptrdiff_t GameUIService_001 = 0x182600;
constexpr std::ptrdiff_t HostStateMgr001 = 0x1E4D10;
constexpr std::ptrdiff_t INETSUPPORT_001 = 0xF0DE0;
constexpr std::ptrdiff_t InputService_001 = 0x188120;
constexpr std::ptrdiff_t KeyValueCache001 = 0x1E7530;
constexpr std::ptrdiff_t MapListService_001 = 0x19B050;
constexpr std::ptrdiff_t NetworkClientService_001 = 0x1A2210;
constexpr std::ptrdiff_t NetworkP2PService_001 = 0x1A8F50;
constexpr std::ptrdiff_t NetworkServerService_001 = 0x1AD4C0;
constexpr std::ptrdiff_t NetworkService_001 = 0x1B26E0;
constexpr std::ptrdiff_t RenderService_001 = 0x1B2BD0;
constexpr std::ptrdiff_t ScreenshotService001 = 0x1B5590;
constexpr std::ptrdiff_t SimpleEngineLoopService_001 = 0x1F7050;
constexpr std::ptrdiff_t SoundService_001 = 0x1B9B90;
constexpr std::ptrdiff_t Source2EngineToClient001 = 0x61A90;
constexpr std::ptrdiff_t Source2EngineToClientStringTable001 = 0x8AB70;
constexpr std::ptrdiff_t Source2EngineToServer001 = 0x92140;
constexpr std::ptrdiff_t Source2EngineToServerStringTable001 = 0xA9830;
constexpr std::ptrdiff_t SplitScreenService_001 = 0x1C0430;
constexpr std::ptrdiff_t StatsService_001 = 0x1C3110;
constexpr std::ptrdiff_t ToolService_001 = 0x1C7D60;
constexpr std::ptrdiff_t VENGINE_GAMEUIFUNCS_VERSION005 = 0x122AE0;
constexpr std::ptrdiff_t VProfService_001 = 0x1C90E0;
}
// Module: filesystem_stdio.dll
namespace filesystem_stdio {
constexpr std::ptrdiff_t VAsyncFileSystem2_001 = 0x67960;
constexpr std::ptrdiff_t VFileSystem017 = 0x67950;
}
// Module: host.dll
namespace host {
constexpr std::ptrdiff_t DebugDrawQueueManager001 = 0x11AE0;
constexpr std::ptrdiff_t GameModelInfo001 = 0x12090;
constexpr std::ptrdiff_t GameSystem2HostHook = 0x12170;
constexpr std::ptrdiff_t HostUtils001 = 0x12920;
constexpr std::ptrdiff_t PredictionDiffManager001 = 0x17340;
constexpr std::ptrdiff_t SaveRestoreDataVersion001 = 0x19060;
constexpr std::ptrdiff_t SinglePlayerSharedMemory001 = 0x19070;
constexpr std::ptrdiff_t Source2Host001 = 0x193F0;
}
// Module: imemanager.dll
namespace imemanager {
constexpr std::ptrdiff_t IMEManager001 = 0xC470;
}
// Module: inputsystem.dll
namespace inputsystem {
constexpr std::ptrdiff_t InputStackSystemVersion001 = 0x1850;
constexpr std::ptrdiff_t InputSystemVersion001 = 0x2A40;
}
// Module: localize.dll
namespace localize {
constexpr std::ptrdiff_t Localize_001 = 0x3830;
}
// Module: matchmaking.dll
namespace matchmaking {
constexpr std::ptrdiff_t GameTypes001 = 0x53800;
constexpr std::ptrdiff_t MATCHFRAMEWORK_001 = 0x105690;
}
// Module: materialsystem2.dll
namespace materialsystem2 {
constexpr std::ptrdiff_t FontManager_001 = 0x37A80;
constexpr std::ptrdiff_t MaterialUtils_001 = 0x4DB40;
constexpr std::ptrdiff_t PostProcessingSystem_001 = 0x42A80;
constexpr std::ptrdiff_t TextLayout_001 = 0x4A200;
constexpr std::ptrdiff_t VMaterialSystem2_001 = 0x25F80;
}
// Module: meshsystem.dll
namespace meshsystem {
constexpr std::ptrdiff_t MeshSystem001 = 0x7440;
}
// Module: navsystem.dll
namespace navsystem {
constexpr std::ptrdiff_t NavSystem001 = 0x8E30;
}
// Module: networksystem.dll
namespace networksystem {
constexpr std::ptrdiff_t FlattenedSerializersVersion001 = 0x7EF90;
constexpr std::ptrdiff_t NetworkMessagesVersion001 = 0x9FC90;
constexpr std::ptrdiff_t NetworkSystemVersion001 = 0xBFA00;
constexpr std::ptrdiff_t SerializedEntitiesVersion001 = 0xD6930;
}
// Module: panorama.dll
namespace panorama {
constexpr std::ptrdiff_t PanoramaUIEngine001 = 0x5D960;
}
// Module: panorama_text_pango.dll
namespace panorama_text_pango {
constexpr std::ptrdiff_t PanoramaTextServices001 = 0x4CBE0;
}
// Module: panoramauiclient.dll
namespace panoramauiclient {
constexpr std::ptrdiff_t PanoramaUIClient001 = 0x12010;
}
// Module: particles.dll
namespace particles {
constexpr std::ptrdiff_t ParticleSystemMgr003 = 0x591D0;
}
// Module: pulse_system.dll
namespace pulse_system {
constexpr std::ptrdiff_t IPulseSystem_001 = 0x44C0;
}
// Module: rendersystemdx11.dll
namespace rendersystemdx11 {
constexpr std::ptrdiff_t RenderDeviceMgr001 = 0x4C7D0;
constexpr std::ptrdiff_t RenderUtils_001 = 0x55150;
constexpr std::ptrdiff_t VRenderDeviceMgrBackdoor001 = 0x4C7E0;
}
// Module: resourcesystem.dll
namespace resourcesystem {
constexpr std::ptrdiff_t ResourceSystem013 = 0x10920;
}
// Module: scenefilecache.dll
namespace scenefilecache {
constexpr std::ptrdiff_t ResponseRulesCache001 = 0x31A0;
constexpr std::ptrdiff_t SceneFileCache002 = 0x6A60;
}
// Module: scenesystem.dll
namespace scenesystem {
constexpr std::ptrdiff_t RenderingPipelines_001 = 0x86480;
constexpr std::ptrdiff_t SceneSystem_002 = 0xBD200;
constexpr std::ptrdiff_t SceneUtils_001 = 0x12FCF0;
}
// Module: schemasystem.dll
namespace schemasystem {
constexpr std::ptrdiff_t SchemaSystem_001 = 0xAA50;
}
// Module: server.dll
namespace server {
constexpr std::ptrdiff_t EmptyWorldService001_Server = 0x572840;
constexpr std::ptrdiff_t EntitySubclassUtilsV001 = 0x2AF7A0;
constexpr std::ptrdiff_t NavGameTest001 = 0xA46F10;
constexpr std::ptrdiff_t ServerToolsInfo_001 = 0x8322D0;
constexpr std::ptrdiff_t Source2GameClients001 = 0x8322E0;
constexpr std::ptrdiff_t Source2GameDirector001 = 0x11EAB0;
constexpr std::ptrdiff_t Source2GameEntities001 = 0x8322F0;
constexpr std::ptrdiff_t Source2Server001 = 0x832300;
constexpr std::ptrdiff_t Source2ServerConfig001 = 0x566BC0;
constexpr std::ptrdiff_t customnavsystem001 = 0x22C660;
}
// Module: soundsystem.dll
namespace soundsystem {
constexpr std::ptrdiff_t SoundOpSystem001 = 0x16A640;
constexpr std::ptrdiff_t SoundOpSystemEdit001 = 0x96A50;
constexpr std::ptrdiff_t SoundSystem001 = 0x48320;
constexpr std::ptrdiff_t VMixEditTool001 = 0x75C30;
}
// Module: steamaudio.dll
namespace steamaudio {
constexpr std::ptrdiff_t SteamAudio001 = 0x5AA70;
}
// Module: steamclient64.dll
namespace steamclient64 {
constexpr std::ptrdiff_t CLIENTENGINE_INTERFACE_VERSION005 = 0x8621C0;
constexpr std::ptrdiff_t IVALIDATE001 = 0x866250;
constexpr std::ptrdiff_t SteamClient006 = 0x663700;
constexpr std::ptrdiff_t SteamClient007 = 0x663710;
constexpr std::ptrdiff_t SteamClient008 = 0x663720;
constexpr std::ptrdiff_t SteamClient009 = 0x663730;
constexpr std::ptrdiff_t SteamClient010 = 0x663740;
constexpr std::ptrdiff_t SteamClient011 = 0x663750;
constexpr std::ptrdiff_t SteamClient012 = 0x663760;
constexpr std::ptrdiff_t SteamClient013 = 0x663770;
constexpr std::ptrdiff_t SteamClient014 = 0x663780;
constexpr std::ptrdiff_t SteamClient015 = 0x663790;
constexpr std::ptrdiff_t SteamClient016 = 0x6637A0;
constexpr std::ptrdiff_t SteamClient017 = 0x6637B0;
constexpr std::ptrdiff_t SteamClient018 = 0x6637C0;
constexpr std::ptrdiff_t SteamClient019 = 0x6637D0;
constexpr std::ptrdiff_t SteamClient020 = 0x6637E0;
constexpr std::ptrdiff_t SteamClient021 = 0x6637F0;
constexpr std::ptrdiff_t p2pvoice002 = 0xD9FD0;
constexpr std::ptrdiff_t p2pvoicesingleton002 = 0xD6A30;
}
// Module: tier0.dll
namespace tier0 {
constexpr std::ptrdiff_t TestScriptMgr001 = 0x140790;
constexpr std::ptrdiff_t VEngineCvar007 = 0x63290;
constexpr std::ptrdiff_t VProcessUtils002 = 0x131C70;
constexpr std::ptrdiff_t VStringTokenSystem001 = 0x190600;
}
// Module: v8system.dll
namespace v8system {
constexpr std::ptrdiff_t Source2V8System001 = 0x1950;
}
// Module: valve_avi.dll
namespace valve_avi {
constexpr std::ptrdiff_t VAvi001 = 0x2F90;
}
// Module: valve_wmf.dll
namespace valve_wmf {
constexpr std::ptrdiff_t VMediaFoundation001 = 0x12D0;
}
// Module: vphysics2.dll
namespace vphysics2 {
constexpr std::ptrdiff_t VPhysics2_Handle_Interface_001 = 0x5BCB0;
constexpr std::ptrdiff_t VPhysics2_Interface_001 = 0x57130;
}
// Module: vscript.dll
namespace vscript {
constexpr std::ptrdiff_t VScriptManager010 = 0x32000;
}
// Module: vstdlib_s64.dll
namespace vstdlib_s64 {
constexpr std::ptrdiff_t IVALIDATE001 = 0x25120;
constexpr std::ptrdiff_t VEngineCvar002 = 0x5760;
}
// Module: worldrenderer.dll
namespace worldrenderer {
constexpr std::ptrdiff_t WorldRendererMgr001 = 0x205E0;
}
}
}

602
output/interfaces.json Normal file
View File

@ -0,0 +1,602 @@
{
"interfaces": {
"animationsystem.dll": [
{
"name": "AnimationSystemUtils_001",
"value": 470656
},
{
"name": "AnimationSystem_001",
"value": 449024
}
],
"client.dll": [
{
"name": "ClientToolsInfo_001",
"value": 7548672
},
{
"name": "EmptyWorldService001_Client",
"value": 4720720
},
{
"name": "GameClientExports001",
"value": 7548688
},
{
"name": "LegacyGameUI001",
"value": 9104960
},
{
"name": "Source2Client002",
"value": 7548704
},
{
"name": "Source2ClientConfig001",
"value": 4635280
},
{
"name": "Source2ClientPrediction001",
"value": 8059280
},
{
"name": "Source2ClientUI001",
"value": 9036896
}
],
"engine2.dll": [
{
"name": "BenchmarkService001",
"value": 1536560
},
{
"name": "BugService001",
"value": 1542800
},
{
"name": "ClientServerEngineLoopService_001",
"value": 2010720
},
{
"name": "EngineGameUI001",
"value": 1187440
},
{
"name": "EngineServiceMgr001",
"value": 1948688
},
{
"name": "GameEventSystemClientV001",
"value": 1966768
},
{
"name": "GameEventSystemServerV001",
"value": 1966784
},
{
"name": "GameResourceServiceClientV001",
"value": 1571920
},
{
"name": "GameResourceServiceServerV001",
"value": 1571936
},
{
"name": "GameUIService_001",
"value": 1582592
},
{
"name": "HostStateMgr001",
"value": 1985808
},
{
"name": "INETSUPPORT_001",
"value": 986592
},
{
"name": "InputService_001",
"value": 1605920
},
{
"name": "KeyValueCache001",
"value": 1996080
},
{
"name": "MapListService_001",
"value": 1683536
},
{
"name": "NetworkClientService_001",
"value": 1712656
},
{
"name": "NetworkP2PService_001",
"value": 1740624
},
{
"name": "NetworkServerService_001",
"value": 1758400
},
{
"name": "NetworkService_001",
"value": 1779424
},
{
"name": "RenderService_001",
"value": 1780688
},
{
"name": "ScreenshotService001",
"value": 1791376
},
{
"name": "SimpleEngineLoopService_001",
"value": 2060368
},
{
"name": "SoundService_001",
"value": 1809296
},
{
"name": "Source2EngineToClient001",
"value": 400016
},
{
"name": "Source2EngineToClientStringTable001",
"value": 568176
},
{
"name": "Source2EngineToServer001",
"value": 598336
},
{
"name": "Source2EngineToServerStringTable001",
"value": 694320
},
{
"name": "SplitScreenService_001",
"value": 1836080
},
{
"name": "StatsService_001",
"value": 1847568
},
{
"name": "ToolService_001",
"value": 1867104
},
{
"name": "VENGINE_GAMEUIFUNCS_VERSION005",
"value": 1190624
},
{
"name": "VProfService_001",
"value": 1872096
}
],
"filesystem_stdio.dll": [
{
"name": "VAsyncFileSystem2_001",
"value": 424288
},
{
"name": "VFileSystem017",
"value": 424272
}
],
"host.dll": [
{
"name": "DebugDrawQueueManager001",
"value": 72416
},
{
"name": "GameModelInfo001",
"value": 73872
},
{
"name": "GameSystem2HostHook",
"value": 74096
},
{
"name": "HostUtils001",
"value": 76064
},
{
"name": "PredictionDiffManager001",
"value": 95040
},
{
"name": "SaveRestoreDataVersion001",
"value": 102496
},
{
"name": "SinglePlayerSharedMemory001",
"value": 102512
},
{
"name": "Source2Host001",
"value": 103408
}
],
"imemanager.dll": [
{
"name": "IMEManager001",
"value": 50288
}
],
"inputsystem.dll": [
{
"name": "InputStackSystemVersion001",
"value": 6224
},
{
"name": "InputSystemVersion001",
"value": 10816
}
],
"localize.dll": [
{
"name": "Localize_001",
"value": 14384
}
],
"matchmaking.dll": [
{
"name": "GameTypes001",
"value": 342016
},
{
"name": "MATCHFRAMEWORK_001",
"value": 1070736
}
],
"materialsystem2.dll": [
{
"name": "FontManager_001",
"value": 227968
},
{
"name": "MaterialUtils_001",
"value": 318272
},
{
"name": "PostProcessingSystem_001",
"value": 273024
},
{
"name": "TextLayout_001",
"value": 303616
},
{
"name": "VMaterialSystem2_001",
"value": 155520
}
],
"meshsystem.dll": [
{
"name": "MeshSystem001",
"value": 29760
}
],
"navsystem.dll": [
{
"name": "NavSystem001",
"value": 36400
}
],
"networksystem.dll": [
{
"name": "FlattenedSerializersVersion001",
"value": 520080
},
{
"name": "NetworkMessagesVersion001",
"value": 654480
},
{
"name": "NetworkSystemVersion001",
"value": 784896
},
{
"name": "SerializedEntitiesVersion001",
"value": 878896
}
],
"panorama.dll": [
{
"name": "PanoramaUIEngine001",
"value": 383328
}
],
"panorama_text_pango.dll": [
{
"name": "PanoramaTextServices001",
"value": 314336
}
],
"panoramauiclient.dll": [
{
"name": "PanoramaUIClient001",
"value": 73744
}
],
"particles.dll": [
{
"name": "ParticleSystemMgr003",
"value": 365008
}
],
"pulse_system.dll": [
{
"name": "IPulseSystem_001",
"value": 17600
}
],
"rendersystemdx11.dll": [
{
"name": "RenderDeviceMgr001",
"value": 313296
},
{
"name": "RenderUtils_001",
"value": 348496
},
{
"name": "VRenderDeviceMgrBackdoor001",
"value": 313312
}
],
"resourcesystem.dll": [
{
"name": "ResourceSystem013",
"value": 67872
}
],
"scenefilecache.dll": [
{
"name": "ResponseRulesCache001",
"value": 12704
},
{
"name": "SceneFileCache002",
"value": 27232
}
],
"scenesystem.dll": [
{
"name": "RenderingPipelines_001",
"value": 550016
},
{
"name": "SceneSystem_002",
"value": 774656
},
{
"name": "SceneUtils_001",
"value": 1244400
}
],
"schemasystem.dll": [
{
"name": "SchemaSystem_001",
"value": 43600
}
],
"server.dll": [
{
"name": "EmptyWorldService001_Server",
"value": 5711936
},
{
"name": "EntitySubclassUtilsV001",
"value": 2815904
},
{
"name": "NavGameTest001",
"value": 10776336
},
{
"name": "ServerToolsInfo_001",
"value": 8594128
},
{
"name": "Source2GameClients001",
"value": 8594144
},
{
"name": "Source2GameDirector001",
"value": 1174192
},
{
"name": "Source2GameEntities001",
"value": 8594160
},
{
"name": "Source2Server001",
"value": 8594176
},
{
"name": "Source2ServerConfig001",
"value": 5663680
},
{
"name": "customnavsystem001",
"value": 2279008
}
],
"soundsystem.dll": [
{
"name": "SoundOpSystem001",
"value": 1484352
},
{
"name": "SoundOpSystemEdit001",
"value": 617040
},
{
"name": "SoundSystem001",
"value": 295712
},
{
"name": "VMixEditTool001",
"value": 482352
}
],
"steamaudio.dll": [
{
"name": "SteamAudio001",
"value": 371312
}
],
"steamclient64.dll": [
{
"name": "CLIENTENGINE_INTERFACE_VERSION005",
"value": 8790464
},
{
"name": "IVALIDATE001",
"value": 8806992
},
{
"name": "SteamClient006",
"value": 6698752
},
{
"name": "SteamClient007",
"value": 6698768
},
{
"name": "SteamClient008",
"value": 6698784
},
{
"name": "SteamClient009",
"value": 6698800
},
{
"name": "SteamClient010",
"value": 6698816
},
{
"name": "SteamClient011",
"value": 6698832
},
{
"name": "SteamClient012",
"value": 6698848
},
{
"name": "SteamClient013",
"value": 6698864
},
{
"name": "SteamClient014",
"value": 6698880
},
{
"name": "SteamClient015",
"value": 6698896
},
{
"name": "SteamClient016",
"value": 6698912
},
{
"name": "SteamClient017",
"value": 6698928
},
{
"name": "SteamClient018",
"value": 6698944
},
{
"name": "SteamClient019",
"value": 6698960
},
{
"name": "SteamClient020",
"value": 6698976
},
{
"name": "SteamClient021",
"value": 6698992
},
{
"name": "p2pvoice002",
"value": 892880
},
{
"name": "p2pvoicesingleton002",
"value": 879152
}
],
"tier0.dll": [
{
"name": "TestScriptMgr001",
"value": 1312656
},
{
"name": "VEngineCvar007",
"value": 406160
},
{
"name": "VProcessUtils002",
"value": 1252464
},
{
"name": "VStringTokenSystem001",
"value": 1639936
}
],
"v8system.dll": [
{
"name": "Source2V8System001",
"value": 6480
}
],
"valve_avi.dll": [
{
"name": "VAvi001",
"value": 12176
}
],
"valve_wmf.dll": [
{
"name": "VMediaFoundation001",
"value": 4816
}
],
"vphysics2.dll": [
{
"name": "VPhysics2_Handle_Interface_001",
"value": 375984
},
{
"name": "VPhysics2_Interface_001",
"value": 356656
}
],
"vscript.dll": [
{
"name": "VScriptManager010",
"value": 204800
}
],
"vstdlib_s64.dll": [
{
"name": "IVALIDATE001",
"value": 151840
},
{
"name": "VEngineCvar002",
"value": 22368
}
],
"worldrenderer.dll": [
{
"name": "WorldRendererMgr001",
"value": 132576
}
]
}
}

246
output/interfaces.rs Normal file
View File

@ -0,0 +1,246 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-03-28 15:47:06.987281800 UTC
#![allow(non_upper_case_globals, unused)]
pub mod cs2_dumper {
pub mod interfaces {
// Module: animationsystem.dll
pub mod animationsystem {
pub const AnimationSystemUtils_001: usize = 0x72E80;
pub const AnimationSystem_001: usize = 0x6DA00;
}
// Module: client.dll
pub mod client {
pub const ClientToolsInfo_001: usize = 0x732F00;
pub const EmptyWorldService001_Client: usize = 0x480850;
pub const GameClientExports001: usize = 0x732F10;
pub const LegacyGameUI001: usize = 0x8AEE40;
pub const Source2Client002: usize = 0x732F20;
pub const Source2ClientConfig001: usize = 0x46BA90;
pub const Source2ClientPrediction001: usize = 0x7AF990;
pub const Source2ClientUI001: usize = 0x89E460;
}
// Module: engine2.dll
pub mod engine2 {
pub const BenchmarkService001: usize = 0x177230;
pub const BugService001: usize = 0x178A90;
pub const ClientServerEngineLoopService_001: usize = 0x1EAE60;
pub const EngineGameUI001: usize = 0x121E70;
pub const EngineServiceMgr001: usize = 0x1DBC10;
pub const GameEventSystemClientV001: usize = 0x1E02B0;
pub const GameEventSystemServerV001: usize = 0x1E02C0;
pub const GameResourceServiceClientV001: usize = 0x17FC50;
pub const GameResourceServiceServerV001: usize = 0x17FC60;
pub const GameUIService_001: usize = 0x182600;
pub const HostStateMgr001: usize = 0x1E4D10;
pub const INETSUPPORT_001: usize = 0xF0DE0;
pub const InputService_001: usize = 0x188120;
pub const KeyValueCache001: usize = 0x1E7530;
pub const MapListService_001: usize = 0x19B050;
pub const NetworkClientService_001: usize = 0x1A2210;
pub const NetworkP2PService_001: usize = 0x1A8F50;
pub const NetworkServerService_001: usize = 0x1AD4C0;
pub const NetworkService_001: usize = 0x1B26E0;
pub const RenderService_001: usize = 0x1B2BD0;
pub const ScreenshotService001: usize = 0x1B5590;
pub const SimpleEngineLoopService_001: usize = 0x1F7050;
pub const SoundService_001: usize = 0x1B9B90;
pub const Source2EngineToClient001: usize = 0x61A90;
pub const Source2EngineToClientStringTable001: usize = 0x8AB70;
pub const Source2EngineToServer001: usize = 0x92140;
pub const Source2EngineToServerStringTable001: usize = 0xA9830;
pub const SplitScreenService_001: usize = 0x1C0430;
pub const StatsService_001: usize = 0x1C3110;
pub const ToolService_001: usize = 0x1C7D60;
pub const VENGINE_GAMEUIFUNCS_VERSION005: usize = 0x122AE0;
pub const VProfService_001: usize = 0x1C90E0;
}
// Module: filesystem_stdio.dll
pub mod filesystem_stdio {
pub const VAsyncFileSystem2_001: usize = 0x67960;
pub const VFileSystem017: usize = 0x67950;
}
// Module: host.dll
pub mod host {
pub const DebugDrawQueueManager001: usize = 0x11AE0;
pub const GameModelInfo001: usize = 0x12090;
pub const GameSystem2HostHook: usize = 0x12170;
pub const HostUtils001: usize = 0x12920;
pub const PredictionDiffManager001: usize = 0x17340;
pub const SaveRestoreDataVersion001: usize = 0x19060;
pub const SinglePlayerSharedMemory001: usize = 0x19070;
pub const Source2Host001: usize = 0x193F0;
}
// Module: imemanager.dll
pub mod imemanager {
pub const IMEManager001: usize = 0xC470;
}
// Module: inputsystem.dll
pub mod inputsystem {
pub const InputStackSystemVersion001: usize = 0x1850;
pub const InputSystemVersion001: usize = 0x2A40;
}
// Module: localize.dll
pub mod localize {
pub const Localize_001: usize = 0x3830;
}
// Module: matchmaking.dll
pub mod matchmaking {
pub const GameTypes001: usize = 0x53800;
pub const MATCHFRAMEWORK_001: usize = 0x105690;
}
// Module: materialsystem2.dll
pub mod materialsystem2 {
pub const FontManager_001: usize = 0x37A80;
pub const MaterialUtils_001: usize = 0x4DB40;
pub const PostProcessingSystem_001: usize = 0x42A80;
pub const TextLayout_001: usize = 0x4A200;
pub const VMaterialSystem2_001: usize = 0x25F80;
}
// Module: meshsystem.dll
pub mod meshsystem {
pub const MeshSystem001: usize = 0x7440;
}
// Module: navsystem.dll
pub mod navsystem {
pub const NavSystem001: usize = 0x8E30;
}
// Module: networksystem.dll
pub mod networksystem {
pub const FlattenedSerializersVersion001: usize = 0x7EF90;
pub const NetworkMessagesVersion001: usize = 0x9FC90;
pub const NetworkSystemVersion001: usize = 0xBFA00;
pub const SerializedEntitiesVersion001: usize = 0xD6930;
}
// Module: panorama.dll
pub mod panorama {
pub const PanoramaUIEngine001: usize = 0x5D960;
}
// Module: panorama_text_pango.dll
pub mod panorama_text_pango {
pub const PanoramaTextServices001: usize = 0x4CBE0;
}
// Module: panoramauiclient.dll
pub mod panoramauiclient {
pub const PanoramaUIClient001: usize = 0x12010;
}
// Module: particles.dll
pub mod particles {
pub const ParticleSystemMgr003: usize = 0x591D0;
}
// Module: pulse_system.dll
pub mod pulse_system {
pub const IPulseSystem_001: usize = 0x44C0;
}
// Module: rendersystemdx11.dll
pub mod rendersystemdx11 {
pub const RenderDeviceMgr001: usize = 0x4C7D0;
pub const RenderUtils_001: usize = 0x55150;
pub const VRenderDeviceMgrBackdoor001: usize = 0x4C7E0;
}
// Module: resourcesystem.dll
pub mod resourcesystem {
pub const ResourceSystem013: usize = 0x10920;
}
// Module: scenefilecache.dll
pub mod scenefilecache {
pub const ResponseRulesCache001: usize = 0x31A0;
pub const SceneFileCache002: usize = 0x6A60;
}
// Module: scenesystem.dll
pub mod scenesystem {
pub const RenderingPipelines_001: usize = 0x86480;
pub const SceneSystem_002: usize = 0xBD200;
pub const SceneUtils_001: usize = 0x12FCF0;
}
// Module: schemasystem.dll
pub mod schemasystem {
pub const SchemaSystem_001: usize = 0xAA50;
}
// Module: server.dll
pub mod server {
pub const EmptyWorldService001_Server: usize = 0x572840;
pub const EntitySubclassUtilsV001: usize = 0x2AF7A0;
pub const NavGameTest001: usize = 0xA46F10;
pub const ServerToolsInfo_001: usize = 0x8322D0;
pub const Source2GameClients001: usize = 0x8322E0;
pub const Source2GameDirector001: usize = 0x11EAB0;
pub const Source2GameEntities001: usize = 0x8322F0;
pub const Source2Server001: usize = 0x832300;
pub const Source2ServerConfig001: usize = 0x566BC0;
pub const customnavsystem001: usize = 0x22C660;
}
// Module: soundsystem.dll
pub mod soundsystem {
pub const SoundOpSystem001: usize = 0x16A640;
pub const SoundOpSystemEdit001: usize = 0x96A50;
pub const SoundSystem001: usize = 0x48320;
pub const VMixEditTool001: usize = 0x75C30;
}
// Module: steamaudio.dll
pub mod steamaudio {
pub const SteamAudio001: usize = 0x5AA70;
}
// Module: steamclient64.dll
pub mod steamclient64 {
pub const CLIENTENGINE_INTERFACE_VERSION005: usize = 0x8621C0;
pub const IVALIDATE001: usize = 0x866250;
pub const SteamClient006: usize = 0x663700;
pub const SteamClient007: usize = 0x663710;
pub const SteamClient008: usize = 0x663720;
pub const SteamClient009: usize = 0x663730;
pub const SteamClient010: usize = 0x663740;
pub const SteamClient011: usize = 0x663750;
pub const SteamClient012: usize = 0x663760;
pub const SteamClient013: usize = 0x663770;
pub const SteamClient014: usize = 0x663780;
pub const SteamClient015: usize = 0x663790;
pub const SteamClient016: usize = 0x6637A0;
pub const SteamClient017: usize = 0x6637B0;
pub const SteamClient018: usize = 0x6637C0;
pub const SteamClient019: usize = 0x6637D0;
pub const SteamClient020: usize = 0x6637E0;
pub const SteamClient021: usize = 0x6637F0;
pub const p2pvoice002: usize = 0xD9FD0;
pub const p2pvoicesingleton002: usize = 0xD6A30;
}
// Module: tier0.dll
pub mod tier0 {
pub const TestScriptMgr001: usize = 0x140790;
pub const VEngineCvar007: usize = 0x63290;
pub const VProcessUtils002: usize = 0x131C70;
pub const VStringTokenSystem001: usize = 0x190600;
}
// Module: v8system.dll
pub mod v8system {
pub const Source2V8System001: usize = 0x1950;
}
// Module: valve_avi.dll
pub mod valve_avi {
pub const VAvi001: usize = 0x2F90;
}
// Module: valve_wmf.dll
pub mod valve_wmf {
pub const VMediaFoundation001: usize = 0x12D0;
}
// Module: vphysics2.dll
pub mod vphysics2 {
pub const VPhysics2_Handle_Interface_001: usize = 0x5BCB0;
pub const VPhysics2_Interface_001: usize = 0x57130;
}
// Module: vscript.dll
pub mod vscript {
pub const VScriptManager010: usize = 0x32000;
}
// Module: vstdlib_s64.dll
pub mod vstdlib_s64 {
pub const IVALIDATE001: usize = 0x25120;
pub const VEngineCvar002: usize = 0x5760;
}
// Module: worldrenderer.dll
pub mod worldrenderer {
pub const WorldRendererMgr001: usize = 0x205E0;
}
}
}

44
output/offsets.cs Normal file
View File

@ -0,0 +1,44 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-03-28 15:47:06.987281800 UTC
namespace CS2Dumper.Offsets {
// Module: client.dll
public static class Client {
public const nint dwCSGOInput = 0x192B620;
public const nint dwEntityList = 0x18C2D58;
public const nint dwGameEntitySystem = 0x19E0790;
public const nint dwGameEntitySystem_getHighestEntityIndex = 0x1510;
public const nint dwGameRules = 0x191FCA0;
public const nint dwGlobalVars = 0x172ABA0;
public const nint dwGlowManager = 0x19200C0;
public const nint dwLocalPlayerController = 0x1912578;
public const nint dwLocalPlayerPawn = 0x17371A8;
public const nint dwPlantedC4 = 0x1928AD8;
public const nint dwPrediction = 0x1737070;
public const nint dwSensitivity = 0x19209E8;
public const nint dwSensitivity_sensitivity = 0x40;
public const nint dwViewAngles = 0x19309B0;
public const nint dwViewMatrix = 0x19241A0;
public const nint dwViewRender = 0x1924A20;
}
// Module: engine2.dll
public static class Engine2 {
public const nint dwBuildNumber = 0x514574;
public const nint dwNetworkGameClient = 0x513AC8;
public const nint dwNetworkGameClient_deltaTick = 0x258;
public const nint dwNetworkGameClient_getLocalPlayer = 0xF0;
public const nint dwNetworkGameClient_getMaxClients = 0x250;
public const nint dwNetworkGameClient_signOnState = 0x240;
public const nint dwWindowHeight = 0x5CCCDD;
public const nint dwWindowWidth = 0x5CCCD9;
}
// Module: inputsystem.dll
public static class Inputsystem {
public const nint dwInputSystem = 0x367A0;
}
// Module: matchmaking.dll
public static class Matchmaking {
public const nint dwGameTypes = 0x1D21E0;
public const nint dwGameTypes_mapName = 0x1D2300;
}
}

50
output/offsets.hpp Normal file
View File

@ -0,0 +1,50 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-03-28 15:47:06.987281800 UTC
#pragma once
#include <cstddef>
namespace cs2_dumper {
namespace offsets {
// Module: client.dll
namespace client {
constexpr std::ptrdiff_t dwCSGOInput = 0x192B620;
constexpr std::ptrdiff_t dwEntityList = 0x18C2D58;
constexpr std::ptrdiff_t dwGameEntitySystem = 0x19E0790;
constexpr std::ptrdiff_t dwGameEntitySystem_getHighestEntityIndex = 0x1510;
constexpr std::ptrdiff_t dwGameRules = 0x191FCA0;
constexpr std::ptrdiff_t dwGlobalVars = 0x172ABA0;
constexpr std::ptrdiff_t dwGlowManager = 0x19200C0;
constexpr std::ptrdiff_t dwLocalPlayerController = 0x1912578;
constexpr std::ptrdiff_t dwLocalPlayerPawn = 0x17371A8;
constexpr std::ptrdiff_t dwPlantedC4 = 0x1928AD8;
constexpr std::ptrdiff_t dwPrediction = 0x1737070;
constexpr std::ptrdiff_t dwSensitivity = 0x19209E8;
constexpr std::ptrdiff_t dwSensitivity_sensitivity = 0x40;
constexpr std::ptrdiff_t dwViewAngles = 0x19309B0;
constexpr std::ptrdiff_t dwViewMatrix = 0x19241A0;
constexpr std::ptrdiff_t dwViewRender = 0x1924A20;
}
// Module: engine2.dll
namespace engine2 {
constexpr std::ptrdiff_t dwBuildNumber = 0x514574;
constexpr std::ptrdiff_t dwNetworkGameClient = 0x513AC8;
constexpr std::ptrdiff_t dwNetworkGameClient_deltaTick = 0x258;
constexpr std::ptrdiff_t dwNetworkGameClient_getLocalPlayer = 0xF0;
constexpr std::ptrdiff_t dwNetworkGameClient_getMaxClients = 0x250;
constexpr std::ptrdiff_t dwNetworkGameClient_signOnState = 0x240;
constexpr std::ptrdiff_t dwWindowHeight = 0x5CCCDD;
constexpr std::ptrdiff_t dwWindowWidth = 0x5CCCD9;
}
// Module: inputsystem.dll
namespace inputsystem {
constexpr std::ptrdiff_t dwInputSystem = 0x367A0;
}
// Module: matchmaking.dll
namespace matchmaking {
constexpr std::ptrdiff_t dwGameTypes = 0x1D21E0;
constexpr std::ptrdiff_t dwGameTypes_mapName = 0x1D2300;
}
}
}

120
output/offsets.json Normal file
View File

@ -0,0 +1,120 @@
{
"offsets": {
"client.dll": [
{
"name": "dwCSGOInput",
"value": 26392096
},
{
"name": "dwEntityList",
"value": 25963864
},
{
"name": "dwGameEntitySystem",
"value": 27133840
},
{
"name": "dwGameEntitySystem_getHighestEntityIndex",
"value": 5392
},
{
"name": "dwGameRules",
"value": 26344608
},
{
"name": "dwGlobalVars",
"value": 24292256
},
{
"name": "dwGlowManager",
"value": 26345664
},
{
"name": "dwLocalPlayerController",
"value": 26289528
},
{
"name": "dwLocalPlayerPawn",
"value": 24342952
},
{
"name": "dwPlantedC4",
"value": 26381016
},
{
"name": "dwPrediction",
"value": 24342640
},
{
"name": "dwSensitivity",
"value": 26348008
},
{
"name": "dwSensitivity_sensitivity",
"value": 64
},
{
"name": "dwViewAngles",
"value": 26413488
},
{
"name": "dwViewMatrix",
"value": 26362272
},
{
"name": "dwViewRender",
"value": 26364448
}
],
"engine2.dll": [
{
"name": "dwBuildNumber",
"value": 5326196
},
{
"name": "dwNetworkGameClient",
"value": 5323464
},
{
"name": "dwNetworkGameClient_deltaTick",
"value": 600
},
{
"name": "dwNetworkGameClient_getLocalPlayer",
"value": 240
},
{
"name": "dwNetworkGameClient_getMaxClients",
"value": 592
},
{
"name": "dwNetworkGameClient_signOnState",
"value": 576
},
{
"name": "dwWindowHeight",
"value": 6081757
},
{
"name": "dwWindowWidth",
"value": 6081753
}
],
"inputsystem.dll": [
{
"name": "dwInputSystem",
"value": 223136
}
],
"matchmaking.dll": [
{
"name": "dwGameTypes",
"value": 1909216
},
{
"name": "dwGameTypes_mapName",
"value": 1909504
}
]
}
}

48
output/offsets.rs Normal file
View File

@ -0,0 +1,48 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-03-28 15:47:06.987281800 UTC
#![allow(non_upper_case_globals, unused)]
pub mod cs2_dumper {
pub mod offsets {
// Module: client.dll
pub mod client {
pub const dwCSGOInput: usize = 0x192B620;
pub const dwEntityList: usize = 0x18C2D58;
pub const dwGameEntitySystem: usize = 0x19E0790;
pub const dwGameEntitySystem_getHighestEntityIndex: usize = 0x1510;
pub const dwGameRules: usize = 0x191FCA0;
pub const dwGlobalVars: usize = 0x172ABA0;
pub const dwGlowManager: usize = 0x19200C0;
pub const dwLocalPlayerController: usize = 0x1912578;
pub const dwLocalPlayerPawn: usize = 0x17371A8;
pub const dwPlantedC4: usize = 0x1928AD8;
pub const dwPrediction: usize = 0x1737070;
pub const dwSensitivity: usize = 0x19209E8;
pub const dwSensitivity_sensitivity: usize = 0x40;
pub const dwViewAngles: usize = 0x19309B0;
pub const dwViewMatrix: usize = 0x19241A0;
pub const dwViewRender: usize = 0x1924A20;
}
// Module: engine2.dll
pub mod engine2 {
pub const dwBuildNumber: usize = 0x514574;
pub const dwNetworkGameClient: usize = 0x513AC8;
pub const dwNetworkGameClient_deltaTick: usize = 0x258;
pub const dwNetworkGameClient_getLocalPlayer: usize = 0xF0;
pub const dwNetworkGameClient_getMaxClients: usize = 0x250;
pub const dwNetworkGameClient_signOnState: usize = 0x240;
pub const dwWindowHeight: usize = 0x5CCCDD;
pub const dwWindowWidth: usize = 0x5CCCD9;
}
// Module: inputsystem.dll
pub mod inputsystem {
pub const dwInputSystem: usize = 0x367A0;
}
// Module: matchmaking.dll
pub mod matchmaking {
pub const dwGameTypes: usize = 0x1D21E0;
pub const dwGameTypes_mapName: usize = 0x1D2300;
}
}
}

20445
output/schemas.cs Normal file

File diff suppressed because it is too large Load Diff

20451
output/schemas.hpp Normal file

File diff suppressed because it is too large Load Diff

221803
output/schemas.json Normal file

File diff suppressed because it is too large Load Diff

20770
output/schemas.rs Normal file

File diff suppressed because it is too large Load Diff

View File

@ -87,7 +87,7 @@ fn read_class_binding(
s,
match env::consts::OS {
"linux" => "so",
"windows" => ".dll",
"windows" => "dll",
_ => panic!("unsupported os"),
}
)

View File

@ -1,8 +1,6 @@
use std::env;
use std::fmt::Write;
use heck::{AsPascalCase, AsShoutySnakeCase, AsSnakeCase};
use super::{Button, CodeGen, Results};
use crate::error::Result;
@ -18,8 +16,7 @@ impl CodeGen for Vec<Button> {
writeln!(
fmt,
"public const nint {} = {:#X};",
AsPascalCase(&button.name),
button.value
button.name, button.value
)?;
}
@ -44,8 +41,7 @@ impl CodeGen for Vec<Button> {
writeln!(
fmt,
"constexpr std::ptrdiff_t {} = {:#X};",
AsSnakeCase(&button.name),
button.value
button.name, button.value
)?;
}
@ -59,6 +55,8 @@ impl CodeGen for Vec<Button> {
fn to_rs(&self, results: &Results, indent_size: usize) -> Result<String> {
self.write_content(results, indent_size, |fmt| {
writeln!(fmt, "#![allow(non_upper_case_globals, unused)]\n")?;
fmt.block("pub mod cs2_dumper", |fmt| {
writeln!(fmt, "// Module: {}", get_module_name())?;
@ -67,8 +65,7 @@ impl CodeGen for Vec<Button> {
writeln!(
fmt,
"pub const {}: usize = {:#X};",
AsShoutySnakeCase(&button.name),
button.value
button.name, button.value
)?;
}

View File

@ -1,6 +1,6 @@
use std::fmt::Write;
use heck::{AsPascalCase, AsShoutySnakeCase, AsSnakeCase};
use heck::{AsPascalCase, AsSnakeCase};
use super::{format_module_name, CodeGen, InterfaceMap, Results};
@ -23,8 +23,7 @@ impl CodeGen for InterfaceMap {
writeln!(
fmt,
"public const nint {} = {:#X};",
AsPascalCase(&iface.name),
iface.value
iface.name, iface.value
)?;
}
@ -57,8 +56,7 @@ impl CodeGen for InterfaceMap {
writeln!(
fmt,
"constexpr std::ptrdiff_t {} = {:#X};",
AsSnakeCase(&iface.name),
iface.value
iface.name, iface.value
)?;
}
@ -77,6 +75,8 @@ impl CodeGen for InterfaceMap {
fn to_rs(&self, results: &Results, indent_size: usize) -> Result<String> {
self.write_content(results, indent_size, |fmt| {
writeln!(fmt, "#![allow(non_upper_case_globals, unused)]\n")?;
fmt.block("pub mod cs2_dumper", |fmt| {
fmt.block("pub mod interfaces", |fmt| {
for (module_name, ifaces) in self {
@ -89,8 +89,7 @@ impl CodeGen for InterfaceMap {
writeln!(
fmt,
"pub const {}: usize = {:#X};",
AsShoutySnakeCase(&iface.name),
iface.value
iface.name, iface.value
)?;
}

View File

@ -220,3 +220,8 @@ pub fn format_module_name(module_name: &String) -> String {
module_name.strip_suffix(extension).unwrap().to_string()
}
#[inline]
pub fn sanitize_name(name: &str) -> String {
name.replace(|c: char| !c.is_alphanumeric(), "_")
}

View File

@ -1,6 +1,6 @@
use std::fmt::Write;
use heck::{AsPascalCase, AsShoutySnakeCase, AsSnakeCase};
use heck::{AsPascalCase, AsSnakeCase};
use super::{format_module_name, CodeGen, OffsetMap, Results};
@ -23,8 +23,7 @@ impl CodeGen for OffsetMap {
writeln!(
fmt,
"public const nint {} = {:#X};",
AsPascalCase(&offset.name),
offset.value
offset.name, offset.value
)?;
}
@ -57,8 +56,7 @@ impl CodeGen for OffsetMap {
writeln!(
fmt,
"constexpr std::ptrdiff_t {} = {:#X};",
AsSnakeCase(&offset.name),
offset.value
offset.name, offset.value
)?;
}
@ -77,6 +75,8 @@ impl CodeGen for OffsetMap {
fn to_rs(&self, results: &Results, indent_size: usize) -> Result<String> {
self.write_content(results, indent_size, |fmt| {
writeln!(fmt, "#![allow(non_upper_case_globals, unused)]\n")?;
fmt.block("pub mod cs2_dumper", |fmt| {
fmt.block("pub mod offsets", |fmt| {
for (module_name, offsets) in self {
@ -89,8 +89,7 @@ impl CodeGen for OffsetMap {
writeln!(
fmt,
"pub const {}: usize = {:#X};",
AsShoutySnakeCase(&offset.name),
offset.value
offset.name, offset.value
)?;
}

View File

@ -1,8 +1,8 @@
use std::fmt::{self, Write};
use heck::{AsPascalCase, AsShoutySnakeCase, AsSnakeCase};
use heck::{AsPascalCase, AsSnakeCase};
use super::{format_module_name, CodeGen, Formatter, Results, SchemaMap};
use super::{format_module_name, sanitize_name, CodeGen, Formatter, Results, SchemaMap};
use crate::analysis::ClassMetadata;
use crate::error::Result;
@ -35,17 +35,13 @@ impl CodeGen for SchemaMap {
writeln!(fmt, "// Members count: {}", enum_.size)?;
fmt.block(
&format!("public enum {} : {}", AsPascalCase(&enum_.name), ty),
&format!("public enum {} : {}", sanitize_name(&enum_.name), ty),
|fmt| {
let members = enum_
.members
.iter()
.map(|member| {
format!(
"{} = {}",
AsPascalCase(&member.name),
member.value
)
format!("{} = {}", member.name, member.value)
})
.collect::<Vec<_>>()
.join(",\n");
@ -59,7 +55,7 @@ impl CodeGen for SchemaMap {
let parent_name = class
.parent
.as_ref()
.map(|parent| format!("{}", AsPascalCase(&parent.name)))
.map(|parent| format!("{}", sanitize_name(&parent.name)))
.unwrap_or_else(|| "None".to_string());
writeln!(fmt, "// Parent: {}", parent_name)?;
@ -68,15 +64,13 @@ impl CodeGen for SchemaMap {
write_metadata(fmt, &class.metadata)?;
fmt.block(
&format!("public static class {}", AsPascalCase(&class.name)),
&format!("public static class {}", sanitize_name(&class.name)),
|fmt| {
for field in &class.fields {
writeln!(
fmt,
"public const nint {} = {:#X}; // {}",
AsPascalCase(&field.name),
field.offset,
field.ty
field.name, field.offset, field.ty
)?;
}
@ -127,7 +121,7 @@ impl CodeGen for SchemaMap {
fmt.block(
&format!(
"enum class {} : {}",
AsSnakeCase(&enum_.name),
sanitize_name(&enum_.name),
ty
),
|fmt| {
@ -135,11 +129,7 @@ impl CodeGen for SchemaMap {
.members
.iter()
.map(|member| {
format!(
"{} = {}",
AsSnakeCase(&member.name),
member.value
)
format!("{} = {}", member.name, member.value)
})
.collect::<Vec<_>>()
.join(",\n");
@ -153,7 +143,7 @@ impl CodeGen for SchemaMap {
let parent_name = class
.parent
.as_ref()
.map(|parent| format!("{}", AsSnakeCase(&parent.name)))
.map(|parent| format!("{}", sanitize_name(&parent.name)))
.unwrap_or_else(|| "None".to_string());
writeln!(fmt, "// Parent: {}", parent_name)?;
@ -162,15 +152,13 @@ impl CodeGen for SchemaMap {
write_metadata(fmt, &class.metadata)?;
fmt.block(
&format!("namespace {}", AsSnakeCase(&class.name)),
&format!("namespace {}", sanitize_name(&class.name)),
|fmt| {
for field in &class.fields {
writeln!(
fmt,
"constexpr std::ptrdiff_t {} = {:#X}; // {}",
AsSnakeCase(&field.name),
field.offset,
field.ty
field.name, field.offset, field.ty
)?;
}
@ -194,6 +182,8 @@ impl CodeGen for SchemaMap {
fn to_rs(&self, results: &Results, indent_size: usize) -> Result<String> {
self.write_content(results, indent_size, |fmt| {
writeln!(fmt, "#![allow(non_upper_case_globals, unused)]\n")?;
fmt.block("pub mod cs2_dumper", |fmt| {
fmt.block("pub mod schemas", |fmt| {
for (module_name, (classes, enums)) in self {
@ -220,7 +210,7 @@ impl CodeGen for SchemaMap {
&format!(
"#[repr({})]\npub enum {}",
ty,
AsPascalCase(&enum_.name),
sanitize_name(&enum_.name),
),
|fmt| {
// TODO: Handle the case where multiple members share
@ -229,11 +219,7 @@ impl CodeGen for SchemaMap {
.members
.iter()
.map(|member| {
format!(
"{} = {}",
AsPascalCase(&member.name),
member.value
)
format!("{} = {}", member.name, member.value)
})
.collect::<Vec<_>>()
.join(",\n");
@ -247,7 +233,7 @@ impl CodeGen for SchemaMap {
let parent_name = class
.parent
.as_ref()
.map(|parent| format!("{}", AsSnakeCase(&parent.name)))
.map(|parent| format!("{}", sanitize_name(&parent.name)))
.unwrap_or_else(|| "None".to_string());
writeln!(fmt, "// Parent: {}", parent_name)?;
@ -256,15 +242,13 @@ impl CodeGen for SchemaMap {
write_metadata(fmt, &class.metadata)?;
fmt.block(
&format!("pub mod {}", AsSnakeCase(&class.name)),
&format!("pub mod {}", sanitize_name(&class.name)),
|fmt| {
for field in &class.fields {
writeln!(
fmt,
"pub const {}: usize = {:#X}; // {}",
AsShoutySnakeCase(&field.name),
field.offset,
field.ty
field.name, field.offset, field.ty
)?;
}