34 Commits

Author SHA1 Message Date
a2x
7933103b03 0.1.2
* Updated for memflow 0.2.2
* Replaced periods with underscores in generated file names for easier inclusion
* Program execution now continues if analysis fails at any point
* Removed custom error type in favor of anyhow
* Added logging to cs2-dumper.log
* Now compilable on Linux
2024-07-30 02:07:40 +10:00
a2x
8897183075 Game update (14023) (2) 2024-07-26 11:01:02 +10:00
a2x
7f5c25c12f Game update (14023) 2024-07-23 12:39:18 +10:00
a2x
0a63e2cc3a Game update (14021) 2024-07-12 12:08:42 +10:00
a2x
9742458443 Merge pull request #187 from M3351AN/main
Game Update
2024-07-03 09:01:45 +10:00
渟雲
a9dab4d9ea Game Update 2024-07-03 06:15:07 +08:00
a2x
e6fde4904c Output RVA instead of absolute offset for some fields 2024-06-29 09:59:06 +10:00
a2x
f3eef1fa5d Game update (14019) 2024-06-28 00:36:09 +10:00
a2x
dee1e041d9 Merge pull request #183 from M3351AN/main
Game update
2024-06-27 09:35:13 +10:00
渟雲
bf8fa7a44c Add files via upload 2024-06-27 06:17:31 +08:00
a2x
a41f2b15ab Merge pull request #182 from pidjan/main
📦 Game Update 14017
2024-06-26 13:01:47 +10:00
pidjan
1d45ec2f2f 📦 Game Update 14017 2024-06-26 01:59:04 +03:00
a2x
3ec7dd39e2 Merge pull request #180 from pidjan/main
📦 Game Update 14016
2024-06-21 10:41:02 +10:00
pidjan
bd71ae7dc2 📦 Game Update 14016 2024-06-21 03:16:04 +03:00
a2x
2fa116a6c4 Follow CreateInterface export instead of pattern scanning 2024-06-18 16:44:09 +10:00
a2x
13836dd019 Game update (14015) (2) 2024-06-18 12:47:46 +10:00
a2x
bfc2ceb13d Add tests for offsets 2024-06-18 12:47:28 +10:00
a2x
3590d4412c Rename some schema struct fields 2024-06-18 12:41:12 +10:00
a2x
ab0ab534a1 Game update (14015) 2024-06-14 14:09:09 +10:00
a2x
c11d7c39ab Rename dwGameEntitySystem_getHighestEntityIndex 2024-06-12 22:25:20 +10:00
a2x
701fd9a0e8 Game update (14014) 2024-06-12 16:09:59 +10:00
a2x
e88130b250 Game update (14013) (2) 2024-06-11 13:52:33 +10:00
a2x
43e5a27f1e Game update (14013) 2024-06-11 11:29:53 +10:00
a2x
acc5dddf93 Game update (14012) 2024-06-05 10:50:05 +10:00
a2x
657fec2935 Game update (14011) (2) 2024-05-31 21:19:52 +10:00
a2x
faddfe01e7 Game update (14011) 2024-05-30 11:37:14 +10:00
a2x
90e394ac13 Game update (14010) 2024-05-25 11:51:01 +10:00
a2x
09413db57a Handle empty names and duplicate values in Rust generator 2024-05-24 21:09:25 +10:00
a2x
3f6c894097 Fix for latest game update 2024-05-24 11:30:54 +10:00
a2x
dd7299729a Add patterns for other fields in CNetworkGameClient 2024-05-24 10:26:56 +10:00
a2x
23b77e0347 Game update (14009) 2024-05-24 09:12:27 +10:00
a2x
84f5a7320b Game update (14008) 2024-05-10 09:31:00 +10:00
a2x
22d64f0c27 Game update (14006) 2024-05-08 13:46:35 +10:00
a2x
bf2ebb716f Show error message if pattern wasn't found 2024-05-08 13:45:58 +10:00
109 changed files with 41098 additions and 34836 deletions

View File

@@ -1,6 +1,6 @@
[package]
name = "cs2-dumper"
version = "0.1.0"
version = "0.1.2"
authors = ["a2x"]
edition = "2021"
readme = "README.md"
@@ -8,18 +8,20 @@ repository = "https://github.com/a2x/cs2-dumper"
license = "MIT"
[dependencies]
anyhow = "1.0"
clap = { version = "4.5", features = ["derive"] }
chrono = { version = "0.4", features = ["serde"] }
heck = "0.5"
log = "0.4"
memflow = "0.2"
memflow-native = { git = "https://github.com/memflow/memflow-native" }
pelite = "0.10"
phf = { version = "0.11", features = ["macros"] }
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
simplelog = "0.12"
thiserror = "1.0"
[target.'cfg(windows)'.dependencies]
memflow-native = { git = "https://github.com/memflow/memflow-native" }
[profile.dev]
opt-level = 1

View File

@@ -1,6 +1,7 @@
# cs2-dumper
An external offset/interface dumper for Counter-Strike 2, with support for both Windows & Linux. Powered by [memflow](https://github.com/memflow/memflow).
An external offset/interface dumper for Counter-Strike 2, with support for both Windows & Linux. Powered
by [memflow](https://github.com/memflow/memflow).
The native Linux version is available in the [linux](https://github.com/a2x/cs2-dumper/tree/linux) branch.
@@ -15,7 +16,10 @@ toolchain must be installed.
1. Ensure the game process is running (Being in the main menu should suffice).
2. Run the `cs2-dumper` executable (Note that some memflow connectors may require elevated privileges).
When running the executable without providing an optional memflow connector name, it will default to using the [memflow-native](https://github.com/memflow/memflow-native) cross-platform OS layer to read the memory of the game process. If you wish to use an existing memflow connector instead, pass the `connector` and optional `connector-args` arguments to the program.
_Note:_ If you run the executable without specifying an optional memflow connector name, it will automatically use the
[memflow-native](https://github.com/memflow/memflow-native) OS layer to read the memory of the game process. If you
wish to use an existing memflow connector instead, you can pass the `connector` and optional `connector-args` arguments
to the program.
E.g. `./cs2-dumper -c pcileech -a device=fpga -vvv`
@@ -31,6 +35,10 @@ E.g. `./cs2-dumper -c pcileech -a device=fpga -vvv`
- `-h, --help`: Print help.
- `-V, --version`: Print version.
## Running Tests
To run tests, use the following command: `cargo test -- --nocapture`.
## License
Licensed under the MIT license ([LICENSE](./LICENSE)).

5
cs2-dumper.log Normal file
View File

@@ -0,0 +1,5 @@
16:04:46 [INFO] found 16 buttons
16:04:46 [INFO] found 132 interfaces across 35 modules
16:04:47 [INFO] found 33 offsets across 5 modules
16:04:47 [INFO] found 2329 classes and 342 enums across 17 modules
16:04:47 [INFO] analysis completed in 1.0316345 seconds

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,24 +1,24 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
namespace CS2Dumper {
// Module: client.dll
public static class Buttons {
public const nint attack = 0x1736410;
public const nint attack2 = 0x17364A0;
public const nint back = 0x17366E0;
public const nint duck = 0x17369B0;
public const nint forward = 0x1736650;
public const nint jump = 0x1736920;
public const nint left = 0x1736770;
public const nint lookatweapon = 0x1932A30;
public const nint reload = 0x1736380;
public const nint right = 0x1736800;
public const nint showscores = 0x1932910;
public const nint sprint = 0x17362F0;
public const nint turnleft = 0x1736530;
public const nint turnright = 0x17365C0;
public const nint use = 0x1736890;
public const nint zoom = 0x19329A0;
public const nint attack = 0x181D170;
public const nint attack2 = 0x181D200;
public const nint back = 0x181D440;
public const nint duck = 0x181D710;
public const nint forward = 0x181D3B0;
public const nint jump = 0x181D680;
public const nint left = 0x181D4D0;
public const nint lookatweapon = 0x1A28D70;
public const nint reload = 0x181D0E0;
public const nint right = 0x181D560;
public const nint showscores = 0x1A28C50;
public const nint sprint = 0x181D050;
public const nint turnleft = 0x181D290;
public const nint turnright = 0x181D320;
public const nint use = 0x181D5F0;
public const nint zoom = 0x1A28CE0;
}
}

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
#pragma once
@@ -8,21 +8,21 @@
namespace cs2_dumper {
// Module: client.dll
namespace buttons {
constexpr std::ptrdiff_t attack = 0x1736410;
constexpr std::ptrdiff_t attack2 = 0x17364A0;
constexpr std::ptrdiff_t back = 0x17366E0;
constexpr std::ptrdiff_t duck = 0x17369B0;
constexpr std::ptrdiff_t forward = 0x1736650;
constexpr std::ptrdiff_t jump = 0x1736920;
constexpr std::ptrdiff_t left = 0x1736770;
constexpr std::ptrdiff_t lookatweapon = 0x1932A30;
constexpr std::ptrdiff_t reload = 0x1736380;
constexpr std::ptrdiff_t right = 0x1736800;
constexpr std::ptrdiff_t showscores = 0x1932910;
constexpr std::ptrdiff_t sprint = 0x17362F0;
constexpr std::ptrdiff_t turnleft = 0x1736530;
constexpr std::ptrdiff_t turnright = 0x17365C0;
constexpr std::ptrdiff_t use = 0x1736890;
constexpr std::ptrdiff_t zoom = 0x19329A0;
constexpr std::ptrdiff_t attack = 0x181D170;
constexpr std::ptrdiff_t attack2 = 0x181D200;
constexpr std::ptrdiff_t back = 0x181D440;
constexpr std::ptrdiff_t duck = 0x181D710;
constexpr std::ptrdiff_t forward = 0x181D3B0;
constexpr std::ptrdiff_t jump = 0x181D680;
constexpr std::ptrdiff_t left = 0x181D4D0;
constexpr std::ptrdiff_t lookatweapon = 0x1A28D70;
constexpr std::ptrdiff_t reload = 0x181D0E0;
constexpr std::ptrdiff_t right = 0x181D560;
constexpr std::ptrdiff_t showscores = 0x1A28C50;
constexpr std::ptrdiff_t sprint = 0x181D050;
constexpr std::ptrdiff_t turnleft = 0x181D290;
constexpr std::ptrdiff_t turnright = 0x181D320;
constexpr std::ptrdiff_t use = 0x181D5F0;
constexpr std::ptrdiff_t zoom = 0x1A28CE0;
}
}

View File

@@ -1,20 +1,20 @@
{
"client.dll": {
"attack": 24339472,
"attack2": 24339616,
"back": 24340192,
"duck": 24340912,
"forward": 24340048,
"jump": 24340768,
"left": 24340336,
"lookatweapon": 26421808,
"reload": 24339328,
"right": 24340480,
"showscores": 26421520,
"sprint": 24339184,
"turnleft": 24339760,
"turnright": 24339904,
"use": 24340624,
"zoom": 26421664
"attack": 25284976,
"attack2": 25285120,
"back": 25285696,
"duck": 25286416,
"forward": 25285552,
"jump": 25286272,
"left": 25285840,
"lookatweapon": 27430256,
"reload": 25284832,
"right": 25285984,
"showscores": 27429968,
"sprint": 25284688,
"turnleft": 25285264,
"turnright": 25285408,
"use": 25286128,
"zoom": 27430112
}
}

View File

@@ -1,26 +1,26 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
#![allow(non_upper_case_globals, unused)]
pub mod cs2_dumper {
// Module: client.dll
pub mod buttons {
pub const attack: usize = 0x1736410;
pub const attack2: usize = 0x17364A0;
pub const back: usize = 0x17366E0;
pub const duck: usize = 0x17369B0;
pub const forward: usize = 0x1736650;
pub const jump: usize = 0x1736920;
pub const left: usize = 0x1736770;
pub const lookatweapon: usize = 0x1932A30;
pub const reload: usize = 0x1736380;
pub const right: usize = 0x1736800;
pub const showscores: usize = 0x1932910;
pub const sprint: usize = 0x17362F0;
pub const turnleft: usize = 0x1736530;
pub const turnright: usize = 0x17365C0;
pub const r#use: usize = 0x1736890;
pub const zoom: usize = 0x19329A0;
pub const attack: usize = 0x181D170;
pub const attack2: usize = 0x181D200;
pub const back: usize = 0x181D440;
pub const duck: usize = 0x181D710;
pub const forward: usize = 0x181D3B0;
pub const jump: usize = 0x181D680;
pub const left: usize = 0x181D4D0;
pub const lookatweapon: usize = 0x1A28D70;
pub const reload: usize = 0x181D0E0;
pub const right: usize = 0x181D560;
pub const showscores: usize = 0x1A28C50;
pub const sprint: usize = 0x181D050;
pub const turnleft: usize = 0x181D290;
pub const turnright: usize = 0x181D320;
pub const r#use: usize = 0x181D5F0;
pub const zoom: usize = 0x1A28CE0;
}
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
namespace CS2Dumper.Schemas {
// Module: engine2.dll
@@ -7,14 +7,14 @@ namespace CS2Dumper.Schemas {
// Enums count: 4
public static class Engine2Dll {
// Alignment: 4
// Members count: 3
// Member count: 3
public enum EntityDormancyType_t : uint {
ENTITY_NOT_DORMANT = 0x0,
ENTITY_DORMANT = 0x1,
ENTITY_SUSPENDED = 0x2
}
// Alignment: 4
// Members count: 4
// Member count: 4
public enum EntityIOTargetType_t : uint {
ENTITY_IO_TARGET_INVALID = 0xFFFFFFFFFFFFFFFF,
ENTITY_IO_TARGET_ENTITYNAME = 0x2,
@@ -22,14 +22,14 @@ namespace CS2Dumper.Schemas {
ENTITY_IO_TARGET_ENTITYNAME_OR_CLASSNAME = 0x7
}
// Alignment: 4
// Members count: 3
// Member count: 3
public enum SpawnDebugOverrideState_t : uint {
SPAWN_DEBUG_OVERRIDE_NONE = 0x0,
SPAWN_DEBUG_OVERRIDE_FORCE_ENABLED = 0x1,
SPAWN_DEBUG_OVERRIDE_FORCE_DISABLED = 0x2
}
// Alignment: 4
// Members count: 5
// Member count: 5
public enum SpawnDebugRestrictionOverrideState_t : uint {
SPAWN_DEBUG_RESTRICT_NONE = 0x0,
SPAWN_DEBUG_RESTRICT_IGNORE_MANAGER_DISTANCE_REQS = 0x1,
@@ -38,18 +38,18 @@ namespace CS2Dumper.Schemas {
SPAWN_DEBUG_RESTRICT_IGNORE_TARGET_COOLDOWN_LIMITS = 0x8
}
// Parent: EventSimulate_t
// Fields count: 0
// Field count: 0
public static class EventClientPostSimulate_t {
}
// Parent: None
// Fields count: 3
// Field count: 3
public static class EventSimpleLoopFrameUpdate_t {
public const nint m_LoopState = 0x0; // EngineLoopState_t
public const nint m_flRealTime = 0x28; // float32
public const nint m_flFrameTime = 0x2C; // float32
}
// Parent: EventSimulate_t
// Fields count: 4
// Field count: 4
public static class EventPostAdvanceTick_t {
public const nint m_nCurrentTick = 0x30; // int32
public const nint m_nCurrentTickThisFrame = 0x34; // int32
@@ -57,17 +57,17 @@ namespace CS2Dumper.Schemas {
public const nint m_nTotalTicks = 0x3C; // int32
}
// Parent: None
// Fields count: 1
// Field count: 1
public static class CEntityIOOutput {
public const nint m_Value = 0x18; // CVariantBase<CVariantDefaultAllocator>
}
// Parent: None
// Fields count: 1
// Field count: 1
public static class EventClientSceneSystemThreadStateChange_t {
public const nint m_bThreadsActive = 0x0; // bool
}
// Parent: None
// Fields count: 5
// Field count: 5
public static class EventClientOutput_t {
public const nint m_LoopState = 0x0; // EngineLoopState_t
public const nint m_flRenderTime = 0x28; // float32
@@ -76,11 +76,11 @@ namespace CS2Dumper.Schemas {
public const nint m_bRenderOnly = 0x34; // bool
}
// Parent: EventSimulate_t
// Fields count: 0
// Field count: 0
public static class EventServerPostSimulate_t {
}
// Parent: None
// Fields count: 4
// Field count: 4
public static class CEntityComponentHelper {
public const nint m_flags = 0x8; // uint32
public const nint m_pInfo = 0x10; // EntComponentInfo_t*
@@ -88,24 +88,24 @@ namespace CS2Dumper.Schemas {
public const nint m_pNext = 0x20; // CEntityComponentHelper*
}
// Parent: EventAdvanceTick_t
// Fields count: 0
// Field count: 0
public static class EventClientAdvanceTick_t {
}
// Parent: None
// Fields count: 0
// Field count: 0
public static class EntInput_t {
}
// Parent: None
// Fields count: 1
// Field count: 1
public static class CNetworkVarChainer {
public const nint m_PathIndex = 0x20; // ChangeAccessorFieldPathIndex_t
}
// Parent: EventSimulate_t
// Fields count: 0
// Field count: 0
public static class EventClientSimulate_t {
}
// Parent: None
// Fields count: 5
// Field count: 5
public static class EventClientPostOutput_t {
public const nint m_LoopState = 0x0; // EngineLoopState_t
public const nint m_flRenderTime = 0x28; // float64
@@ -114,69 +114,65 @@ namespace CS2Dumper.Schemas {
public const nint m_bRenderOnly = 0x38; // bool
}
// Parent: None
// Fields count: 2
// Field count: 2
public static class EventClientPollInput_t {
public const nint m_LoopState = 0x0; // EngineLoopState_t
public const nint m_flRealTime = 0x28; // float32
}
// Parent: None
// Fields count: 1
// Field count: 1
public static class EventPreDataUpdate_t {
public const nint m_nCount = 0x0; // int32
}
// Parent: None
// Fields count: 0
public static class EventClientPredictionPostNetupdate_t {
}
// Parent: None
// Fields count: 3
// Field count: 3
public static class EventClientProcessGameInput_t {
public const nint m_LoopState = 0x0; // EngineLoopState_t
public const nint m_flRealTime = 0x28; // float32
public const nint m_flFrameTime = 0x2C; // float32
}
// Parent: None
// Fields count: 1
// Field count: 1
public static class EventFrameBoundary_t {
public const nint m_flFrameTime = 0x0; // float32
}
// Parent: None
// Fields count: 1
// Field count: 1
public static class EventAppShutdown_t {
public const nint m_nDummy0 = 0x0; // int32
}
// Parent: EventSimulate_t
// Fields count: 0
// Field count: 0
public static class EventServerSimulate_t {
}
// Parent: EventPostAdvanceTick_t
// Fields count: 0
// Field count: 0
public static class EventServerPostAdvanceTick_t {
}
// Parent: None
// Fields count: 1
// Field count: 1
public static class EventProfileStorageAvailable_t {
public const nint m_nSplitScreenSlot = 0x0; // CSplitScreenSlot
}
// Parent: None
// Fields count: 1
// Field count: 1
public static class EventPostDataUpdate_t {
public const nint m_nCount = 0x0; // int32
}
// Parent: EventSimulate_t
// Fields count: 0
// Field count: 0
public static class EventClientPreSimulate_t {
}
// Parent: EventSimulate_t
// Fields count: 0
// Field count: 0
public static class EventClientPauseSimulate_t {
}
// Parent: None
// Fields count: 0
// Field count: 0
public static class EventClientProcessNetworking_t {
}
// Parent: EventSimulate_t
// Fields count: 4
// Field count: 4
public static class EventAdvanceTick_t {
public const nint m_nCurrentTick = 0x30; // int32
public const nint m_nCurrentTickThisFrame = 0x34; // int32
@@ -184,23 +180,23 @@ namespace CS2Dumper.Schemas {
public const nint m_nTotalTicks = 0x3C; // int32
}
// Parent: None
// Fields count: 0
// Field count: 0
public static class EventSplitScreenStateChanged_t {
}
// Parent: EventPostAdvanceTick_t
// Fields count: 0
// Field count: 0
public static class EventClientPostAdvanceTick_t {
}
// Parent: None
// Fields count: 0
// Field count: 0
public static class CVariantDefaultAllocator {
}
// Parent: None
// Fields count: 0
// Field count: 0
public static class EventModInitialized_t {
}
// Parent: None
// Fields count: 6
// Field count: 6
public static class EventClientPreOutput_t {
public const nint m_LoopState = 0x0; // EngineLoopState_t
public const nint m_flRenderTime = 0x28; // float64
@@ -210,19 +206,19 @@ namespace CS2Dumper.Schemas {
public const nint m_bRenderOnly = 0x44; // bool
}
// Parent: None
// Fields count: 4
// Field count: 4
public static class EventClientFrameSimulate_t {
public const nint m_LoopState = 0x0; // EngineLoopState_t
public const nint m_flRealTime = 0x28; // float32
public const nint m_flFrameTime = 0x2C; // float32
public const nint m_flWhenScheduleSendTickPacket = 0x30; // float64
public const nint m_bScheduleSendTickPacket = 0x30; // bool
}
// Parent: EventAdvanceTick_t
// Fields count: 0
// Field count: 0
public static class EventServerAdvanceTick_t {
}
// Parent: None
// Fields count: 8
// Field count: 8
public static class EventSetTime_t {
public const nint m_LoopState = 0x0; // EngineLoopState_t
public const nint m_nClientOutputFrames = 0x28; // int32
@@ -234,26 +230,30 @@ namespace CS2Dumper.Schemas {
public const nint m_flTickRemainder = 0x58; // float64
}
// Parent: None
// Fields count: 0
// Field count: 0
public static class EntOutput_t {
}
// Parent: None
// Fields count: 3
// Field count: 3
public static class EventSimulate_t {
public const nint m_LoopState = 0x0; // EngineLoopState_t
public const nint m_bFirstTick = 0x28; // bool
public const nint m_bLastTick = 0x29; // bool
}
// Parent: None
// Field count: 0
public static class EventClientAdvanceNonRenderedFrame_t {
}
// Parent: EventSimulate_t
// Fields count: 0
// Field count: 0
public static class EventServerProcessNetworking_t {
}
// Parent: None
// Fields count: 0
// Field count: 0
public static class CEmptyEntityInstance {
}
// Parent: None
// Fields count: 7
// Field count: 7
public static class EntComponentInfo_t {
public const nint m_pName = 0x0; // char*
public const nint m_pCPPClassname = 0x8; // char*
@@ -264,7 +264,7 @@ namespace CS2Dumper.Schemas {
public const nint m_pBaseClassComponentHelper = 0x60; // CEntityComponentHelper*
}
// Parent: None
// Fields count: 4
// Field count: 4
public static class EngineLoopState_t {
public const nint m_nPlatWindowWidth = 0x18; // int32
public const nint m_nPlatWindowHeight = 0x1C; // int32
@@ -272,12 +272,12 @@ namespace CS2Dumper.Schemas {
public const nint m_nRenderHeight = 0x24; // int32
}
// Parent: None
// Fields count: 1
// Field count: 1
public static class EventClientPollNetworking_t {
public const nint m_nTickCount = 0x0; // int32
}
// Parent: None
// Fields count: 4
// Field count: 4
public static class EventClientProcessInput_t {
public const nint m_LoopState = 0x0; // EngineLoopState_t
public const nint m_flRealTime = 0x28; // float32
@@ -285,7 +285,7 @@ namespace CS2Dumper.Schemas {
public const nint m_flTickStartTime = 0x30; // float64
}
// Parent: EventSimulate_t
// Fields count: 0
// Field count: 0
public static class EventServerPollNetworking_t {
}
}

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
#pragma once
@@ -12,14 +12,14 @@ namespace cs2_dumper {
// Enums count: 4
namespace engine2_dll {
// Alignment: 4
// Members count: 3
// Member count: 3
enum class EntityDormancyType_t : uint32_t {
ENTITY_NOT_DORMANT = 0x0,
ENTITY_DORMANT = 0x1,
ENTITY_SUSPENDED = 0x2
};
// Alignment: 4
// Members count: 4
// Member count: 4
enum class EntityIOTargetType_t : uint32_t {
ENTITY_IO_TARGET_INVALID = 0xFFFFFFFFFFFFFFFF,
ENTITY_IO_TARGET_ENTITYNAME = 0x2,
@@ -27,14 +27,14 @@ namespace cs2_dumper {
ENTITY_IO_TARGET_ENTITYNAME_OR_CLASSNAME = 0x7
};
// Alignment: 4
// Members count: 3
// Member count: 3
enum class SpawnDebugOverrideState_t : uint32_t {
SPAWN_DEBUG_OVERRIDE_NONE = 0x0,
SPAWN_DEBUG_OVERRIDE_FORCE_ENABLED = 0x1,
SPAWN_DEBUG_OVERRIDE_FORCE_DISABLED = 0x2
};
// Alignment: 4
// Members count: 5
// Member count: 5
enum class SpawnDebugRestrictionOverrideState_t : uint32_t {
SPAWN_DEBUG_RESTRICT_NONE = 0x0,
SPAWN_DEBUG_RESTRICT_IGNORE_MANAGER_DISTANCE_REQS = 0x1,
@@ -43,18 +43,18 @@ namespace cs2_dumper {
SPAWN_DEBUG_RESTRICT_IGNORE_TARGET_COOLDOWN_LIMITS = 0x8
};
// Parent: EventSimulate_t
// Fields count: 0
// Field count: 0
namespace EventClientPostSimulate_t {
}
// Parent: None
// Fields count: 3
// Field count: 3
namespace EventSimpleLoopFrameUpdate_t {
constexpr std::ptrdiff_t m_LoopState = 0x0; // EngineLoopState_t
constexpr std::ptrdiff_t m_flRealTime = 0x28; // float32
constexpr std::ptrdiff_t m_flFrameTime = 0x2C; // float32
}
// Parent: EventSimulate_t
// Fields count: 4
// Field count: 4
namespace EventPostAdvanceTick_t {
constexpr std::ptrdiff_t m_nCurrentTick = 0x30; // int32
constexpr std::ptrdiff_t m_nCurrentTickThisFrame = 0x34; // int32
@@ -62,17 +62,17 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nTotalTicks = 0x3C; // int32
}
// Parent: None
// Fields count: 1
// Field count: 1
namespace CEntityIOOutput {
constexpr std::ptrdiff_t m_Value = 0x18; // CVariantBase<CVariantDefaultAllocator>
}
// Parent: None
// Fields count: 1
// Field count: 1
namespace EventClientSceneSystemThreadStateChange_t {
constexpr std::ptrdiff_t m_bThreadsActive = 0x0; // bool
}
// Parent: None
// Fields count: 5
// Field count: 5
namespace EventClientOutput_t {
constexpr std::ptrdiff_t m_LoopState = 0x0; // EngineLoopState_t
constexpr std::ptrdiff_t m_flRenderTime = 0x28; // float32
@@ -81,11 +81,11 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_bRenderOnly = 0x34; // bool
}
// Parent: EventSimulate_t
// Fields count: 0
// Field count: 0
namespace EventServerPostSimulate_t {
}
// Parent: None
// Fields count: 4
// Field count: 4
namespace CEntityComponentHelper {
constexpr std::ptrdiff_t m_flags = 0x8; // uint32
constexpr std::ptrdiff_t m_pInfo = 0x10; // EntComponentInfo_t*
@@ -93,24 +93,24 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_pNext = 0x20; // CEntityComponentHelper*
}
// Parent: EventAdvanceTick_t
// Fields count: 0
// Field count: 0
namespace EventClientAdvanceTick_t {
}
// Parent: None
// Fields count: 0
// Field count: 0
namespace EntInput_t {
}
// Parent: None
// Fields count: 1
// Field count: 1
namespace CNetworkVarChainer {
constexpr std::ptrdiff_t m_PathIndex = 0x20; // ChangeAccessorFieldPathIndex_t
}
// Parent: EventSimulate_t
// Fields count: 0
// Field count: 0
namespace EventClientSimulate_t {
}
// Parent: None
// Fields count: 5
// Field count: 5
namespace EventClientPostOutput_t {
constexpr std::ptrdiff_t m_LoopState = 0x0; // EngineLoopState_t
constexpr std::ptrdiff_t m_flRenderTime = 0x28; // float64
@@ -119,69 +119,65 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_bRenderOnly = 0x38; // bool
}
// Parent: None
// Fields count: 2
// Field count: 2
namespace EventClientPollInput_t {
constexpr std::ptrdiff_t m_LoopState = 0x0; // EngineLoopState_t
constexpr std::ptrdiff_t m_flRealTime = 0x28; // float32
}
// Parent: None
// Fields count: 1
// Field count: 1
namespace EventPreDataUpdate_t {
constexpr std::ptrdiff_t m_nCount = 0x0; // int32
}
// Parent: None
// Fields count: 0
namespace EventClientPredictionPostNetupdate_t {
}
// Parent: None
// Fields count: 3
// Field count: 3
namespace EventClientProcessGameInput_t {
constexpr std::ptrdiff_t m_LoopState = 0x0; // EngineLoopState_t
constexpr std::ptrdiff_t m_flRealTime = 0x28; // float32
constexpr std::ptrdiff_t m_flFrameTime = 0x2C; // float32
}
// Parent: None
// Fields count: 1
// Field count: 1
namespace EventFrameBoundary_t {
constexpr std::ptrdiff_t m_flFrameTime = 0x0; // float32
}
// Parent: None
// Fields count: 1
// Field count: 1
namespace EventAppShutdown_t {
constexpr std::ptrdiff_t m_nDummy0 = 0x0; // int32
}
// Parent: EventSimulate_t
// Fields count: 0
// Field count: 0
namespace EventServerSimulate_t {
}
// Parent: EventPostAdvanceTick_t
// Fields count: 0
// Field count: 0
namespace EventServerPostAdvanceTick_t {
}
// Parent: None
// Fields count: 1
// Field count: 1
namespace EventProfileStorageAvailable_t {
constexpr std::ptrdiff_t m_nSplitScreenSlot = 0x0; // CSplitScreenSlot
}
// Parent: None
// Fields count: 1
// Field count: 1
namespace EventPostDataUpdate_t {
constexpr std::ptrdiff_t m_nCount = 0x0; // int32
}
// Parent: EventSimulate_t
// Fields count: 0
// Field count: 0
namespace EventClientPreSimulate_t {
}
// Parent: EventSimulate_t
// Fields count: 0
// Field count: 0
namespace EventClientPauseSimulate_t {
}
// Parent: None
// Fields count: 0
// Field count: 0
namespace EventClientProcessNetworking_t {
}
// Parent: EventSimulate_t
// Fields count: 4
// Field count: 4
namespace EventAdvanceTick_t {
constexpr std::ptrdiff_t m_nCurrentTick = 0x30; // int32
constexpr std::ptrdiff_t m_nCurrentTickThisFrame = 0x34; // int32
@@ -189,23 +185,23 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nTotalTicks = 0x3C; // int32
}
// Parent: None
// Fields count: 0
// Field count: 0
namespace EventSplitScreenStateChanged_t {
}
// Parent: EventPostAdvanceTick_t
// Fields count: 0
// Field count: 0
namespace EventClientPostAdvanceTick_t {
}
// Parent: None
// Fields count: 0
// Field count: 0
namespace CVariantDefaultAllocator {
}
// Parent: None
// Fields count: 0
// Field count: 0
namespace EventModInitialized_t {
}
// Parent: None
// Fields count: 6
// Field count: 6
namespace EventClientPreOutput_t {
constexpr std::ptrdiff_t m_LoopState = 0x0; // EngineLoopState_t
constexpr std::ptrdiff_t m_flRenderTime = 0x28; // float64
@@ -215,19 +211,19 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_bRenderOnly = 0x44; // bool
}
// Parent: None
// Fields count: 4
// Field count: 4
namespace EventClientFrameSimulate_t {
constexpr std::ptrdiff_t m_LoopState = 0x0; // EngineLoopState_t
constexpr std::ptrdiff_t m_flRealTime = 0x28; // float32
constexpr std::ptrdiff_t m_flFrameTime = 0x2C; // float32
constexpr std::ptrdiff_t m_flWhenScheduleSendTickPacket = 0x30; // float64
constexpr std::ptrdiff_t m_bScheduleSendTickPacket = 0x30; // bool
}
// Parent: EventAdvanceTick_t
// Fields count: 0
// Field count: 0
namespace EventServerAdvanceTick_t {
}
// Parent: None
// Fields count: 8
// Field count: 8
namespace EventSetTime_t {
constexpr std::ptrdiff_t m_LoopState = 0x0; // EngineLoopState_t
constexpr std::ptrdiff_t m_nClientOutputFrames = 0x28; // int32
@@ -239,26 +235,30 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_flTickRemainder = 0x58; // float64
}
// Parent: None
// Fields count: 0
// Field count: 0
namespace EntOutput_t {
}
// Parent: None
// Fields count: 3
// Field count: 3
namespace EventSimulate_t {
constexpr std::ptrdiff_t m_LoopState = 0x0; // EngineLoopState_t
constexpr std::ptrdiff_t m_bFirstTick = 0x28; // bool
constexpr std::ptrdiff_t m_bLastTick = 0x29; // bool
}
// Parent: None
// Field count: 0
namespace EventClientAdvanceNonRenderedFrame_t {
}
// Parent: EventSimulate_t
// Fields count: 0
// Field count: 0
namespace EventServerProcessNetworking_t {
}
// Parent: None
// Fields count: 0
// Field count: 0
namespace CEmptyEntityInstance {
}
// Parent: None
// Fields count: 7
// Field count: 7
namespace EntComponentInfo_t {
constexpr std::ptrdiff_t m_pName = 0x0; // char*
constexpr std::ptrdiff_t m_pCPPClassname = 0x8; // char*
@@ -269,7 +269,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_pBaseClassComponentHelper = 0x60; // CEntityComponentHelper*
}
// Parent: None
// Fields count: 4
// Field count: 4
namespace EngineLoopState_t {
constexpr std::ptrdiff_t m_nPlatWindowWidth = 0x18; // int32
constexpr std::ptrdiff_t m_nPlatWindowHeight = 0x1C; // int32
@@ -277,12 +277,12 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nRenderHeight = 0x24; // int32
}
// Parent: None
// Fields count: 1
// Field count: 1
namespace EventClientPollNetworking_t {
constexpr std::ptrdiff_t m_nTickCount = 0x0; // int32
}
// Parent: None
// Fields count: 4
// Field count: 4
namespace EventClientProcessInput_t {
constexpr std::ptrdiff_t m_LoopState = 0x0; // EngineLoopState_t
constexpr std::ptrdiff_t m_flRealTime = 0x28; // float32
@@ -290,7 +290,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_flTickStartTime = 0x30; // float64
}
// Parent: EventSimulate_t
// Fields count: 0
// Field count: 0
namespace EventServerPollNetworking_t {
}
}

View File

@@ -85,6 +85,11 @@
"metadata": [],
"parent": null
},
"EventClientAdvanceNonRenderedFrame_t": {
"fields": {},
"metadata": [],
"parent": null
},
"EventClientAdvanceTick_t": {
"fields": {},
"metadata": [],
@@ -93,9 +98,9 @@
"EventClientFrameSimulate_t": {
"fields": {
"m_LoopState": 0,
"m_bScheduleSendTickPacket": 48,
"m_flFrameTime": 44,
"m_flRealTime": 40,
"m_flWhenScheduleSendTickPacket": 48
"m_flRealTime": 40
},
"metadata": [],
"parent": null
@@ -169,11 +174,6 @@
"metadata": [],
"parent": "EventSimulate_t"
},
"EventClientPredictionPostNetupdate_t": {
"fields": {},
"metadata": [],
"parent": null
},
"EventClientProcessGameInput_t": {
"fields": {
"m_LoopState": 0,

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
#![allow(non_upper_case_globals, non_camel_case_types, non_snake_case, unused)]
@@ -10,7 +10,7 @@ pub mod cs2_dumper {
// Enums count: 4
pub mod engine2_dll {
// Alignment: 4
// Members count: 3
// Member count: 3
#[repr(u32)]
pub enum EntityDormancyType_t {
ENTITY_NOT_DORMANT = 0x0,
@@ -18,7 +18,7 @@ pub mod cs2_dumper {
ENTITY_SUSPENDED = 0x2
}
// Alignment: 4
// Members count: 4
// Member count: 4
#[repr(u32)]
pub enum EntityIOTargetType_t {
ENTITY_IO_TARGET_INVALID = u32::MAX,
@@ -27,7 +27,7 @@ pub mod cs2_dumper {
ENTITY_IO_TARGET_ENTITYNAME_OR_CLASSNAME = 0x7
}
// Alignment: 4
// Members count: 3
// Member count: 3
#[repr(u32)]
pub enum SpawnDebugOverrideState_t {
SPAWN_DEBUG_OVERRIDE_NONE = 0x0,
@@ -35,7 +35,7 @@ pub mod cs2_dumper {
SPAWN_DEBUG_OVERRIDE_FORCE_DISABLED = 0x2
}
// Alignment: 4
// Members count: 5
// Member count: 5
#[repr(u32)]
pub enum SpawnDebugRestrictionOverrideState_t {
SPAWN_DEBUG_RESTRICT_NONE = 0x0,
@@ -45,18 +45,18 @@ pub mod cs2_dumper {
SPAWN_DEBUG_RESTRICT_IGNORE_TARGET_COOLDOWN_LIMITS = 0x8
}
// Parent: EventSimulate_t
// Fields count: 0
// Field count: 0
pub mod EventClientPostSimulate_t {
}
// Parent: None
// Fields count: 3
// Field count: 3
pub mod EventSimpleLoopFrameUpdate_t {
pub const m_LoopState: usize = 0x0; // EngineLoopState_t
pub const m_flRealTime: usize = 0x28; // float32
pub const m_flFrameTime: usize = 0x2C; // float32
}
// Parent: EventSimulate_t
// Fields count: 4
// Field count: 4
pub mod EventPostAdvanceTick_t {
pub const m_nCurrentTick: usize = 0x30; // int32
pub const m_nCurrentTickThisFrame: usize = 0x34; // int32
@@ -64,17 +64,17 @@ pub mod cs2_dumper {
pub const m_nTotalTicks: usize = 0x3C; // int32
}
// Parent: None
// Fields count: 1
// Field count: 1
pub mod CEntityIOOutput {
pub const m_Value: usize = 0x18; // CVariantBase<CVariantDefaultAllocator>
}
// Parent: None
// Fields count: 1
// Field count: 1
pub mod EventClientSceneSystemThreadStateChange_t {
pub const m_bThreadsActive: usize = 0x0; // bool
}
// Parent: None
// Fields count: 5
// Field count: 5
pub mod EventClientOutput_t {
pub const m_LoopState: usize = 0x0; // EngineLoopState_t
pub const m_flRenderTime: usize = 0x28; // float32
@@ -83,11 +83,11 @@ pub mod cs2_dumper {
pub const m_bRenderOnly: usize = 0x34; // bool
}
// Parent: EventSimulate_t
// Fields count: 0
// Field count: 0
pub mod EventServerPostSimulate_t {
}
// Parent: None
// Fields count: 4
// Field count: 4
pub mod CEntityComponentHelper {
pub const m_flags: usize = 0x8; // uint32
pub const m_pInfo: usize = 0x10; // EntComponentInfo_t*
@@ -95,24 +95,24 @@ pub mod cs2_dumper {
pub const m_pNext: usize = 0x20; // CEntityComponentHelper*
}
// Parent: EventAdvanceTick_t
// Fields count: 0
// Field count: 0
pub mod EventClientAdvanceTick_t {
}
// Parent: None
// Fields count: 0
// Field count: 0
pub mod EntInput_t {
}
// Parent: None
// Fields count: 1
// Field count: 1
pub mod CNetworkVarChainer {
pub const m_PathIndex: usize = 0x20; // ChangeAccessorFieldPathIndex_t
}
// Parent: EventSimulate_t
// Fields count: 0
// Field count: 0
pub mod EventClientSimulate_t {
}
// Parent: None
// Fields count: 5
// Field count: 5
pub mod EventClientPostOutput_t {
pub const m_LoopState: usize = 0x0; // EngineLoopState_t
pub const m_flRenderTime: usize = 0x28; // float64
@@ -121,69 +121,65 @@ pub mod cs2_dumper {
pub const m_bRenderOnly: usize = 0x38; // bool
}
// Parent: None
// Fields count: 2
// Field count: 2
pub mod EventClientPollInput_t {
pub const m_LoopState: usize = 0x0; // EngineLoopState_t
pub const m_flRealTime: usize = 0x28; // float32
}
// Parent: None
// Fields count: 1
// Field count: 1
pub mod EventPreDataUpdate_t {
pub const m_nCount: usize = 0x0; // int32
}
// Parent: None
// Fields count: 0
pub mod EventClientPredictionPostNetupdate_t {
}
// Parent: None
// Fields count: 3
// Field count: 3
pub mod EventClientProcessGameInput_t {
pub const m_LoopState: usize = 0x0; // EngineLoopState_t
pub const m_flRealTime: usize = 0x28; // float32
pub const m_flFrameTime: usize = 0x2C; // float32
}
// Parent: None
// Fields count: 1
// Field count: 1
pub mod EventFrameBoundary_t {
pub const m_flFrameTime: usize = 0x0; // float32
}
// Parent: None
// Fields count: 1
// Field count: 1
pub mod EventAppShutdown_t {
pub const m_nDummy0: usize = 0x0; // int32
}
// Parent: EventSimulate_t
// Fields count: 0
// Field count: 0
pub mod EventServerSimulate_t {
}
// Parent: EventPostAdvanceTick_t
// Fields count: 0
// Field count: 0
pub mod EventServerPostAdvanceTick_t {
}
// Parent: None
// Fields count: 1
// Field count: 1
pub mod EventProfileStorageAvailable_t {
pub const m_nSplitScreenSlot: usize = 0x0; // CSplitScreenSlot
}
// Parent: None
// Fields count: 1
// Field count: 1
pub mod EventPostDataUpdate_t {
pub const m_nCount: usize = 0x0; // int32
}
// Parent: EventSimulate_t
// Fields count: 0
// Field count: 0
pub mod EventClientPreSimulate_t {
}
// Parent: EventSimulate_t
// Fields count: 0
// Field count: 0
pub mod EventClientPauseSimulate_t {
}
// Parent: None
// Fields count: 0
// Field count: 0
pub mod EventClientProcessNetworking_t {
}
// Parent: EventSimulate_t
// Fields count: 4
// Field count: 4
pub mod EventAdvanceTick_t {
pub const m_nCurrentTick: usize = 0x30; // int32
pub const m_nCurrentTickThisFrame: usize = 0x34; // int32
@@ -191,23 +187,23 @@ pub mod cs2_dumper {
pub const m_nTotalTicks: usize = 0x3C; // int32
}
// Parent: None
// Fields count: 0
// Field count: 0
pub mod EventSplitScreenStateChanged_t {
}
// Parent: EventPostAdvanceTick_t
// Fields count: 0
// Field count: 0
pub mod EventClientPostAdvanceTick_t {
}
// Parent: None
// Fields count: 0
// Field count: 0
pub mod CVariantDefaultAllocator {
}
// Parent: None
// Fields count: 0
// Field count: 0
pub mod EventModInitialized_t {
}
// Parent: None
// Fields count: 6
// Field count: 6
pub mod EventClientPreOutput_t {
pub const m_LoopState: usize = 0x0; // EngineLoopState_t
pub const m_flRenderTime: usize = 0x28; // float64
@@ -217,19 +213,19 @@ pub mod cs2_dumper {
pub const m_bRenderOnly: usize = 0x44; // bool
}
// Parent: None
// Fields count: 4
// Field count: 4
pub mod EventClientFrameSimulate_t {
pub const m_LoopState: usize = 0x0; // EngineLoopState_t
pub const m_flRealTime: usize = 0x28; // float32
pub const m_flFrameTime: usize = 0x2C; // float32
pub const m_flWhenScheduleSendTickPacket: usize = 0x30; // float64
pub const m_bScheduleSendTickPacket: usize = 0x30; // bool
}
// Parent: EventAdvanceTick_t
// Fields count: 0
// Field count: 0
pub mod EventServerAdvanceTick_t {
}
// Parent: None
// Fields count: 8
// Field count: 8
pub mod EventSetTime_t {
pub const m_LoopState: usize = 0x0; // EngineLoopState_t
pub const m_nClientOutputFrames: usize = 0x28; // int32
@@ -241,26 +237,30 @@ pub mod cs2_dumper {
pub const m_flTickRemainder: usize = 0x58; // float64
}
// Parent: None
// Fields count: 0
// Field count: 0
pub mod EntOutput_t {
}
// Parent: None
// Fields count: 3
// Field count: 3
pub mod EventSimulate_t {
pub const m_LoopState: usize = 0x0; // EngineLoopState_t
pub const m_bFirstTick: usize = 0x28; // bool
pub const m_bLastTick: usize = 0x29; // bool
}
// Parent: None
// Field count: 0
pub mod EventClientAdvanceNonRenderedFrame_t {
}
// Parent: EventSimulate_t
// Fields count: 0
// Field count: 0
pub mod EventServerProcessNetworking_t {
}
// Parent: None
// Fields count: 0
// Field count: 0
pub mod CEmptyEntityInstance {
}
// Parent: None
// Fields count: 7
// Field count: 7
pub mod EntComponentInfo_t {
pub const m_pName: usize = 0x0; // char*
pub const m_pCPPClassname: usize = 0x8; // char*
@@ -271,7 +271,7 @@ pub mod cs2_dumper {
pub const m_pBaseClassComponentHelper: usize = 0x60; // CEntityComponentHelper*
}
// Parent: None
// Fields count: 4
// Field count: 4
pub mod EngineLoopState_t {
pub const m_nPlatWindowWidth: usize = 0x18; // int32
pub const m_nPlatWindowHeight: usize = 0x1C; // int32
@@ -279,12 +279,12 @@ pub mod cs2_dumper {
pub const m_nRenderHeight: usize = 0x24; // int32
}
// Parent: None
// Fields count: 1
// Field count: 1
pub mod EventClientPollNetworking_t {
pub const m_nTickCount: usize = 0x0; // int32
}
// Parent: None
// Fields count: 4
// Field count: 4
pub mod EventClientProcessInput_t {
pub const m_LoopState: usize = 0x0; // EngineLoopState_t
pub const m_flRealTime: usize = 0x28; // float32
@@ -292,7 +292,7 @@ pub mod cs2_dumper {
pub const m_flTickStartTime: usize = 0x30; // float64
}
// Parent: EventSimulate_t
// Fields count: 0
// Field count: 0
pub mod EventServerPollNetworking_t {
}
}

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
namespace CS2Dumper.Schemas {
// Module: host.dll
@@ -7,12 +7,12 @@ namespace CS2Dumper.Schemas {
// Enums count: 0
public static class HostDll {
// Parent: CAnimScriptBase
// Fields count: 1
// Field count: 1
public static class EmptyTestScript {
public const nint m_hTest = 0x10; // CAnimScriptParam<float32>
}
// Parent: None
// Fields count: 1
// Field count: 1
public static class CAnimScriptBase {
public const nint m_bIsValid = 0x8; // bool
}

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
#pragma once
@@ -12,12 +12,12 @@ namespace cs2_dumper {
// Enums count: 0
namespace host_dll {
// Parent: CAnimScriptBase
// Fields count: 1
// Field count: 1
namespace EmptyTestScript {
constexpr std::ptrdiff_t m_hTest = 0x10; // CAnimScriptParam<float32>
}
// Parent: None
// Fields count: 1
// Field count: 1
namespace CAnimScriptBase {
constexpr std::ptrdiff_t m_bIsValid = 0x8; // bool
}

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
#![allow(non_upper_case_globals, non_camel_case_types, non_snake_case, unused)]
@@ -10,12 +10,12 @@ pub mod cs2_dumper {
// Enums count: 0
pub mod host_dll {
// Parent: CAnimScriptBase
// Fields count: 1
// Field count: 1
pub mod EmptyTestScript {
pub const m_hTest: usize = 0x10; // CAnimScriptParam<float32>
}
// Parent: None
// Fields count: 1
// Field count: 1
pub mod CAnimScriptBase {
pub const m_bIsValid: usize = 0x8; // bool
}

View File

@@ -1,4 +1,4 @@
{
"build_number": 14005,
"timestamp": "2024-05-03T00:11:19.220511700+00:00"
"build_number": 14023,
"timestamp": "2024-07-29T16:04:47.388825300+00:00"
}

View File

@@ -1,242 +1,242 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
namespace CS2Dumper.Interfaces {
// Module: animationsystem.dll
public static class AnimationsystemDll {
public const nint AnimationSystemUtils_001 = 0x73640;
public const nint AnimationSystem_001 = 0x6E1C0;
public const nint AnimationSystemUtils_001 = 0x58FFB8;
public const nint AnimationSystem_001 = 0x587EE0;
}
// Module: client.dll
public static class ClientDll {
public const nint ClientToolsInfo_001 = 0x735970;
public const nint EmptyWorldService001_Client = 0x482B50;
public const nint GameClientExports001 = 0x735980;
public const nint LegacyGameUI001 = 0x8B3950;
public const nint Source2Client002 = 0x735990;
public const nint Source2ClientConfig001 = 0x46DED0;
public const nint Source2ClientPrediction001 = 0x7B2410;
public const nint Source2ClientUI001 = 0x8A2E90;
public const nint ClientToolsInfo_001 = 0x181C780;
public const nint EmptyWorldService001_Client = 0x17D9670;
public const nint GameClientExports001 = 0x1819438;
public const nint LegacyGameUI001 = 0x1839220;
public const nint Source2Client002 = 0x1A1A610;
public const nint Source2ClientConfig001 = 0x19BB1F0;
public const nint Source2ClientPrediction001 = 0x18248D0;
public const nint Source2ClientUI001 = 0x1837D50;
}
// Module: engine2.dll
public static class Engine2Dll {
public const nint BenchmarkService001 = 0x179100;
public const nint BugService001 = 0x17A960;
public const nint ClientServerEngineLoopService_001 = 0x1EE4B0;
public const nint EngineGameUI001 = 0x123650;
public const nint EngineServiceMgr001 = 0x1DDA60;
public const nint GameEventSystemClientV001 = 0x1E2650;
public const nint GameEventSystemServerV001 = 0x1E2660;
public const nint GameResourceServiceClientV001 = 0x181B20;
public const nint GameResourceServiceServerV001 = 0x181B30;
public const nint GameUIService_001 = 0x1844D0;
public const nint HostStateMgr001 = 0x1E70B0;
public const nint INETSUPPORT_001 = 0xF22A0;
public const nint InputService_001 = 0x189FF0;
public const nint KeyValueCache001 = 0x1E98D0;
public const nint MapListService_001 = 0x19CEC0;
public const nint NetworkClientService_001 = 0x1A4080;
public const nint NetworkP2PService_001 = 0x1AAD70;
public const nint NetworkServerService_001 = 0x1AF2C0;
public const nint NetworkService_001 = 0x1B44E0;
public const nint RenderService_001 = 0x1B49D0;
public const nint ScreenshotService001 = 0x1B7350;
public const nint SimpleEngineLoopService_001 = 0x1FAFF0;
public const nint SoundService_001 = 0x1BB950;
public const nint Source2EngineToClient001 = 0x63210;
public const nint Source2EngineToClientStringTable001 = 0x8C280;
public const nint Source2EngineToServer001 = 0x93880;
public const nint Source2EngineToServerStringTable001 = 0xAAE20;
public const nint SplitScreenService_001 = 0x1C21E0;
public const nint StatsService_001 = 0x1C4EC0;
public const nint ToolService_001 = 0x1C9B10;
public const nint VENGINE_GAMEUIFUNCS_VERSION005 = 0x1242C0;
public const nint VProfService_001 = 0x1CAE90;
public const nint BenchmarkService001 = 0x5356C0;
public const nint BugService001 = 0x5AC9A0;
public const nint ClientServerEngineLoopService_001 = 0x536370;
public const nint EngineGameUI001 = 0x533620;
public const nint EngineServiceMgr001 = 0x5EDA50;
public const nint GameEventSystemClientV001 = 0x5EDD70;
public const nint GameEventSystemServerV001 = 0x5EDEC0;
public const nint GameResourceServiceClientV001 = 0x5357C0;
public const nint GameResourceServiceServerV001 = 0x535820;
public const nint GameUIService_001 = 0x5ACCA0;
public const nint HostStateMgr001 = 0x536260;
public const nint INETSUPPORT_001 = 0x52EF00;
public const nint InputService_001 = 0x5ACFB0;
public const nint KeyValueCache001 = 0x536310;
public const nint MapListService_001 = 0x5EBF50;
public const nint NetworkClientService_001 = 0x5EC0E0;
public const nint NetworkP2PService_001 = 0x535AB0;
public const nint NetworkServerService_001 = 0x5EC470;
public const nint NetworkService_001 = 0x535C00;
public const nint RenderService_001 = 0x5EC6D0;
public const nint ScreenshotService001 = 0x5EC990;
public const nint SimpleEngineLoopService_001 = 0x536480;
public const nint SoundService_001 = 0x5ECB70;
public const nint Source2EngineToClient001 = 0x532CC0;
public const nint Source2EngineToClientStringTable001 = 0x532D60;
public const nint Source2EngineToServer001 = 0x532DF8;
public const nint Source2EngineToServerStringTable001 = 0x532E20;
public const nint SplitScreenService_001 = 0x535E40;
public const nint StatsService_001 = 0x5ED040;
public const nint ToolService_001 = 0x536050;
public const nint VENGINE_GAMEUIFUNCS_VERSION005 = 0x5336B0;
public const nint VProfService_001 = 0x536090;
}
// Module: filesystem_stdio.dll
public static class FilesystemStdioDll {
public const nint VAsyncFileSystem2_001 = 0x67510;
public const nint VFileSystem017 = 0x67500;
public const nint VAsyncFileSystem2_001 = 0x20D5A0;
public const nint VFileSystem017 = 0x2128A0;
}
// Module: host.dll
public static class HostDll {
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;
public const nint DebugDrawQueueManager001 = 0x136FC0;
public const nint GameModelInfo001 = 0x137000;
public const nint GameSystem2HostHook = 0x137040;
public const nint HostUtils001 = 0x137070;
public const nint PredictionDiffManager001 = 0x1372C0;
public const nint SaveRestoreDataVersion001 = 0x1373F0;
public const nint SinglePlayerSharedMemory001 = 0x137420;
public const nint Source2Host001 = 0x137490;
}
// Module: imemanager.dll
public static class ImemanagerDll {
public const nint IMEManager001 = 0xC470;
public const nint IMEManager001 = 0x2E8E0;
}
// Module: inputsystem.dll
public static class InputsystemDll {
public const nint InputStackSystemVersion001 = 0x1850;
public const nint InputSystemVersion001 = 0x2A40;
public const nint InputStackSystemVersion001 = 0x36B80;
public const nint InputSystemVersion001 = 0x387F0;
}
// Module: localize.dll
public static class LocalizeDll {
public const nint Localize_001 = 0x3830;
public const nint Localize_001 = 0x3BAD0;
}
// Module: matchmaking.dll
public static class MatchmakingDll {
public const nint GameTypes001 = 0x53910;
public const nint MATCHFRAMEWORK_001 = 0x1057A0;
public const nint GameTypes001 = 0x1A41C0;
public const nint MATCHFRAMEWORK_001 = 0x1AC3C0;
}
// Module: materialsystem2.dll
public static class Materialsystem2Dll {
public const nint FontManager_001 = 0x37A40;
public const nint MaterialUtils_001 = 0x4DB00;
public const nint PostProcessingSystem_001 = 0x42A40;
public const nint TextLayout_001 = 0x4A1C0;
public const nint VMaterialSystem2_001 = 0x25F10;
public const nint FontManager_001 = 0x10D320;
public const nint MaterialUtils_001 = 0x1084F0;
public const nint PostProcessingSystem_001 = 0x108400;
public const nint TextLayout_001 = 0x108480;
public const nint VMaterialSystem2_001 = 0x10C930;
}
// Module: meshsystem.dll
public static class MeshsystemDll {
public const nint MeshSystem001 = 0x7440;
public const nint MeshSystem001 = 0x144A30;
}
// Module: navsystem.dll
public static class NavsystemDll {
public const nint NavSystem001 = 0x8E30;
public const nint NavSystem001 = 0xC04E0;
}
// Module: networksystem.dll
public static class NetworksystemDll {
public const nint FlattenedSerializersVersion001 = 0x7EF40;
public const nint NetworkMessagesVersion001 = 0x9FC40;
public const nint NetworkSystemVersion001 = 0xBF9C0;
public const nint SerializedEntitiesVersion001 = 0xD5DF0;
public const nint FlattenedSerializersVersion001 = 0x240510;
public const nint NetworkMessagesVersion001 = 0x272600;
public const nint NetworkSystemVersion001 = 0x26A2A0;
public const nint SerializedEntitiesVersion001 = 0x26A390;
}
// Module: panorama.dll
public static class PanoramaDll {
public const nint PanoramaUIEngine001 = 0x5D8C0;
public const nint PanoramaUIEngine001 = 0x4E2260;
}
// Module: panorama_text_pango.dll
public static class PanoramaTextPangoDll {
public const nint PanoramaTextServices001 = 0x4CBE0;
public const nint PanoramaTextServices001 = 0x2B38F0;
}
// Module: panoramauiclient.dll
public static class PanoramauiclientDll {
public const nint PanoramaUIClient001 = 0x12010;
public const nint PanoramaUIClient001 = 0x289860;
}
// Module: particles.dll
public static class ParticlesDll {
public const nint ParticleSystemMgr003 = 0x590F0;
public const nint ParticleSystemMgr003 = 0x5BC750;
}
// Module: pulse_system.dll
public static class PulseSystemDll {
public const nint IPulseSystem_001 = 0x44C0;
public const nint IPulseSystem_001 = 0x14D450;
}
// Module: rendersystemdx11.dll
public static class Rendersystemdx11Dll {
public const nint RenderDeviceMgr001 = 0x4D1A0;
public const nint RenderUtils_001 = 0x55B20;
public const nint VRenderDeviceMgrBackdoor001 = 0x4D1B0;
public const nint RenderDeviceMgr001 = 0x3ED210;
public const nint RenderUtils_001 = 0x3EDA78;
public const nint VRenderDeviceMgrBackdoor001 = 0x3ED2A8;
}
// Module: resourcesystem.dll
public static class ResourcesystemDll {
public const nint ResourceSystem013 = 0x10920;
public const nint ResourceSystem013 = 0x6AF10;
}
// Module: scenefilecache.dll
public static class ScenefilecacheDll {
public const nint ResponseRulesCache001 = 0x31A0;
public const nint SceneFileCache002 = 0x6A60;
public const nint ResponseRulesCache001 = 0x6B110;
public const nint SceneFileCache002 = 0x6B290;
}
// Module: scenesystem.dll
public static class ScenesystemDll {
public const nint RenderingPipelines_001 = 0x86350;
public const nint SceneSystem_002 = 0xBD0D0;
public const nint SceneUtils_001 = 0x12FB70;
public const nint RenderingPipelines_001 = 0x54DF90;
public const nint SceneSystem_002 = 0x599980;
public const nint SceneUtils_001 = 0x54E770;
}
// Module: schemasystem.dll
public static class SchemasystemDll {
public const nint SchemaSystem_001 = 0xAA50;
public const nint SchemaSystem_001 = 0x5C710;
}
// Module: server.dll
public static class ServerDll {
public const nint EmptyWorldService001_Server = 0x56E130;
public const nint EntitySubclassUtilsV001 = 0x2ABFC0;
public const nint NavGameTest001 = 0xA428A0;
public const nint ServerToolsInfo_001 = 0x82E3B0;
public const nint Source2GameClients001 = 0x82E3C0;
public const nint Source2GameDirector001 = 0x11DFD0;
public const nint Source2GameEntities001 = 0x82E3D0;
public const nint Source2Server001 = 0x82E3E0;
public const nint Source2ServerConfig001 = 0x5623E0;
public const nint customnavsystem001 = 0x227F90;
public const nint EmptyWorldService001_Server = 0x1360FC0;
public const nint EntitySubclassUtilsV001 = 0x13134D0;
public const nint NavGameTest001 = 0x13FF788;
public const nint ServerToolsInfo_001 = 0x13B4EA8;
public const nint Source2GameClients001 = 0x13B0310;
public const nint Source2GameDirector001 = 0x14E46C0;
public const nint Source2GameEntities001 = 0x13B4E70;
public const nint Source2Server001 = 0x13B4CE0;
public const nint Source2ServerConfig001 = 0x159F5A8;
public const nint customnavsystem001 = 0x12F8D58;
}
// Module: soundsystem.dll
public static class SoundsystemDll {
public const nint SoundOpSystem001 = 0x16A670;
public const nint SoundOpSystemEdit001 = 0x96A80;
public const nint SoundSystem001 = 0x48350;
public const nint VMixEditTool001 = 0x75C60;
public const nint SoundOpSystem001 = 0x3353A0;
public const nint SoundOpSystemEdit001 = 0x335270;
public const nint SoundSystem001 = 0x334E40;
public const nint VMixEditTool001 = 0x48288DEA;
}
// Module: steamaudio.dll
public static class SteamaudioDll {
public const nint SteamAudio001 = 0x5AA70;
public const nint SteamAudio001 = 0x255750;
}
// Module: steamclient64.dll
public static class Steamclient64Dll {
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;
public const nint CLIENTENGINE_INTERFACE_VERSION005 = 0x65ACBD2A;
public const nint IVALIDATE001 = 0x14EDA30;
public const nint SteamClient006 = 0x14EB270;
public const nint SteamClient007 = 0x14EB278;
public const nint SteamClient008 = 0x14EB280;
public const nint SteamClient009 = 0x14EB288;
public const nint SteamClient010 = 0x14EB290;
public const nint SteamClient011 = 0x14EB298;
public const nint SteamClient012 = 0x14EB2A0;
public const nint SteamClient013 = 0x14EB2A8;
public const nint SteamClient014 = 0x14EB2B0;
public const nint SteamClient015 = 0x14EB2B8;
public const nint SteamClient016 = 0x14EB2C0;
public const nint SteamClient017 = 0x14EB2C8;
public const nint SteamClient018 = 0x14EB2D0;
public const nint SteamClient019 = 0x14EB2D8;
public const nint SteamClient020 = 0x14EB2E0;
public const nint SteamClient021 = 0x14EB2E8;
public const nint p2pvoice002 = 0x14E5C5F;
public const nint p2pvoicesingleton002 = 0x14C90E0;
}
// Module: tier0.dll
public static class Tier0Dll {
public const nint TestScriptMgr001 = 0x1426C0;
public const nint VEngineCvar007 = 0x62DA0;
public const nint VProcessUtils002 = 0x133B60;
public const nint VStringTokenSystem001 = 0x195160;
public const nint TestScriptMgr001 = 0x36DA30;
public const nint VEngineCvar007 = 0x37C590;
public const nint VProcessUtils002 = 0x36D940;
public const nint VStringTokenSystem001 = 0x394ED0;
}
// Module: v8system.dll
public static class V8systemDll {
public const nint Source2V8System001 = 0x1950;
public const nint Source2V8System001 = 0x2C480;
}
// Module: valve_avi.dll
public static class ValveAviDll {
public const nint VAvi001 = 0x2F90;
public const nint VAvi001 = 0x22320;
}
// Module: valve_wmf.dll
public static class ValveWmfDll {
public const nint VMediaFoundation001 = 0x12D0;
public const nint VMediaFoundation001 = 0x1FA20;
}
// Module: vphysics2.dll
public static class Vphysics2Dll {
public const nint VPhysics2_Handle_Interface_001 = 0x5BC10;
public const nint VPhysics2_Interface_001 = 0x57090;
public const nint VPhysics2_Handle_Interface_001 = 0x37E500;
public const nint VPhysics2_Interface_001 = 0x37E540;
}
// Module: vscript.dll
public static class VscriptDll {
public const nint VScriptManager010 = 0x32000;
public const nint VScriptManager010 = 0x128600;
}
// Module: vstdlib_s64.dll
public static class VstdlibS64Dll {
public const nint IVALIDATE001 = 0x25120;
public const nint VEngineCvar002 = 0x5760;
public const nint IVALIDATE001 = 0xA5B40;
public const nint VEngineCvar002 = 0x63070;
}
// Module: worldrenderer.dll
public static class WorldrendererDll {
public const nint WorldRendererMgr001 = 0x205E0;
public const nint WorldRendererMgr001 = 0x15FF70;
}
}

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
#pragma once
@@ -9,240 +9,240 @@ namespace cs2_dumper {
namespace interfaces {
// Module: animationsystem.dll
namespace animationsystem_dll {
constexpr std::ptrdiff_t AnimationSystemUtils_001 = 0x73640;
constexpr std::ptrdiff_t AnimationSystem_001 = 0x6E1C0;
constexpr std::ptrdiff_t AnimationSystemUtils_001 = 0x58FFB8;
constexpr std::ptrdiff_t AnimationSystem_001 = 0x587EE0;
}
// Module: client.dll
namespace client_dll {
constexpr std::ptrdiff_t ClientToolsInfo_001 = 0x735970;
constexpr std::ptrdiff_t EmptyWorldService001_Client = 0x482B50;
constexpr std::ptrdiff_t GameClientExports001 = 0x735980;
constexpr std::ptrdiff_t LegacyGameUI001 = 0x8B3950;
constexpr std::ptrdiff_t Source2Client002 = 0x735990;
constexpr std::ptrdiff_t Source2ClientConfig001 = 0x46DED0;
constexpr std::ptrdiff_t Source2ClientPrediction001 = 0x7B2410;
constexpr std::ptrdiff_t Source2ClientUI001 = 0x8A2E90;
constexpr std::ptrdiff_t ClientToolsInfo_001 = 0x181C780;
constexpr std::ptrdiff_t EmptyWorldService001_Client = 0x17D9670;
constexpr std::ptrdiff_t GameClientExports001 = 0x1819438;
constexpr std::ptrdiff_t LegacyGameUI001 = 0x1839220;
constexpr std::ptrdiff_t Source2Client002 = 0x1A1A610;
constexpr std::ptrdiff_t Source2ClientConfig001 = 0x19BB1F0;
constexpr std::ptrdiff_t Source2ClientPrediction001 = 0x18248D0;
constexpr std::ptrdiff_t Source2ClientUI001 = 0x1837D50;
}
// Module: engine2.dll
namespace engine2_dll {
constexpr std::ptrdiff_t BenchmarkService001 = 0x179100;
constexpr std::ptrdiff_t BugService001 = 0x17A960;
constexpr std::ptrdiff_t ClientServerEngineLoopService_001 = 0x1EE4B0;
constexpr std::ptrdiff_t EngineGameUI001 = 0x123650;
constexpr std::ptrdiff_t EngineServiceMgr001 = 0x1DDA60;
constexpr std::ptrdiff_t GameEventSystemClientV001 = 0x1E2650;
constexpr std::ptrdiff_t GameEventSystemServerV001 = 0x1E2660;
constexpr std::ptrdiff_t GameResourceServiceClientV001 = 0x181B20;
constexpr std::ptrdiff_t GameResourceServiceServerV001 = 0x181B30;
constexpr std::ptrdiff_t GameUIService_001 = 0x1844D0;
constexpr std::ptrdiff_t HostStateMgr001 = 0x1E70B0;
constexpr std::ptrdiff_t INETSUPPORT_001 = 0xF22A0;
constexpr std::ptrdiff_t InputService_001 = 0x189FF0;
constexpr std::ptrdiff_t KeyValueCache001 = 0x1E98D0;
constexpr std::ptrdiff_t MapListService_001 = 0x19CEC0;
constexpr std::ptrdiff_t NetworkClientService_001 = 0x1A4080;
constexpr std::ptrdiff_t NetworkP2PService_001 = 0x1AAD70;
constexpr std::ptrdiff_t NetworkServerService_001 = 0x1AF2C0;
constexpr std::ptrdiff_t NetworkService_001 = 0x1B44E0;
constexpr std::ptrdiff_t RenderService_001 = 0x1B49D0;
constexpr std::ptrdiff_t ScreenshotService001 = 0x1B7350;
constexpr std::ptrdiff_t SimpleEngineLoopService_001 = 0x1FAFF0;
constexpr std::ptrdiff_t SoundService_001 = 0x1BB950;
constexpr std::ptrdiff_t Source2EngineToClient001 = 0x63210;
constexpr std::ptrdiff_t Source2EngineToClientStringTable001 = 0x8C280;
constexpr std::ptrdiff_t Source2EngineToServer001 = 0x93880;
constexpr std::ptrdiff_t Source2EngineToServerStringTable001 = 0xAAE20;
constexpr std::ptrdiff_t SplitScreenService_001 = 0x1C21E0;
constexpr std::ptrdiff_t StatsService_001 = 0x1C4EC0;
constexpr std::ptrdiff_t ToolService_001 = 0x1C9B10;
constexpr std::ptrdiff_t VENGINE_GAMEUIFUNCS_VERSION005 = 0x1242C0;
constexpr std::ptrdiff_t VProfService_001 = 0x1CAE90;
constexpr std::ptrdiff_t BenchmarkService001 = 0x5356C0;
constexpr std::ptrdiff_t BugService001 = 0x5AC9A0;
constexpr std::ptrdiff_t ClientServerEngineLoopService_001 = 0x536370;
constexpr std::ptrdiff_t EngineGameUI001 = 0x533620;
constexpr std::ptrdiff_t EngineServiceMgr001 = 0x5EDA50;
constexpr std::ptrdiff_t GameEventSystemClientV001 = 0x5EDD70;
constexpr std::ptrdiff_t GameEventSystemServerV001 = 0x5EDEC0;
constexpr std::ptrdiff_t GameResourceServiceClientV001 = 0x5357C0;
constexpr std::ptrdiff_t GameResourceServiceServerV001 = 0x535820;
constexpr std::ptrdiff_t GameUIService_001 = 0x5ACCA0;
constexpr std::ptrdiff_t HostStateMgr001 = 0x536260;
constexpr std::ptrdiff_t INETSUPPORT_001 = 0x52EF00;
constexpr std::ptrdiff_t InputService_001 = 0x5ACFB0;
constexpr std::ptrdiff_t KeyValueCache001 = 0x536310;
constexpr std::ptrdiff_t MapListService_001 = 0x5EBF50;
constexpr std::ptrdiff_t NetworkClientService_001 = 0x5EC0E0;
constexpr std::ptrdiff_t NetworkP2PService_001 = 0x535AB0;
constexpr std::ptrdiff_t NetworkServerService_001 = 0x5EC470;
constexpr std::ptrdiff_t NetworkService_001 = 0x535C00;
constexpr std::ptrdiff_t RenderService_001 = 0x5EC6D0;
constexpr std::ptrdiff_t ScreenshotService001 = 0x5EC990;
constexpr std::ptrdiff_t SimpleEngineLoopService_001 = 0x536480;
constexpr std::ptrdiff_t SoundService_001 = 0x5ECB70;
constexpr std::ptrdiff_t Source2EngineToClient001 = 0x532CC0;
constexpr std::ptrdiff_t Source2EngineToClientStringTable001 = 0x532D60;
constexpr std::ptrdiff_t Source2EngineToServer001 = 0x532DF8;
constexpr std::ptrdiff_t Source2EngineToServerStringTable001 = 0x532E20;
constexpr std::ptrdiff_t SplitScreenService_001 = 0x535E40;
constexpr std::ptrdiff_t StatsService_001 = 0x5ED040;
constexpr std::ptrdiff_t ToolService_001 = 0x536050;
constexpr std::ptrdiff_t VENGINE_GAMEUIFUNCS_VERSION005 = 0x5336B0;
constexpr std::ptrdiff_t VProfService_001 = 0x536090;
}
// Module: filesystem_stdio.dll
namespace filesystem_stdio_dll {
constexpr std::ptrdiff_t VAsyncFileSystem2_001 = 0x67510;
constexpr std::ptrdiff_t VFileSystem017 = 0x67500;
constexpr std::ptrdiff_t VAsyncFileSystem2_001 = 0x20D5A0;
constexpr std::ptrdiff_t VFileSystem017 = 0x2128A0;
}
// Module: host.dll
namespace host_dll {
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;
constexpr std::ptrdiff_t DebugDrawQueueManager001 = 0x136FC0;
constexpr std::ptrdiff_t GameModelInfo001 = 0x137000;
constexpr std::ptrdiff_t GameSystem2HostHook = 0x137040;
constexpr std::ptrdiff_t HostUtils001 = 0x137070;
constexpr std::ptrdiff_t PredictionDiffManager001 = 0x1372C0;
constexpr std::ptrdiff_t SaveRestoreDataVersion001 = 0x1373F0;
constexpr std::ptrdiff_t SinglePlayerSharedMemory001 = 0x137420;
constexpr std::ptrdiff_t Source2Host001 = 0x137490;
}
// Module: imemanager.dll
namespace imemanager_dll {
constexpr std::ptrdiff_t IMEManager001 = 0xC470;
constexpr std::ptrdiff_t IMEManager001 = 0x2E8E0;
}
// Module: inputsystem.dll
namespace inputsystem_dll {
constexpr std::ptrdiff_t InputStackSystemVersion001 = 0x1850;
constexpr std::ptrdiff_t InputSystemVersion001 = 0x2A40;
constexpr std::ptrdiff_t InputStackSystemVersion001 = 0x36B80;
constexpr std::ptrdiff_t InputSystemVersion001 = 0x387F0;
}
// Module: localize.dll
namespace localize_dll {
constexpr std::ptrdiff_t Localize_001 = 0x3830;
constexpr std::ptrdiff_t Localize_001 = 0x3BAD0;
}
// Module: matchmaking.dll
namespace matchmaking_dll {
constexpr std::ptrdiff_t GameTypes001 = 0x53910;
constexpr std::ptrdiff_t MATCHFRAMEWORK_001 = 0x1057A0;
constexpr std::ptrdiff_t GameTypes001 = 0x1A41C0;
constexpr std::ptrdiff_t MATCHFRAMEWORK_001 = 0x1AC3C0;
}
// Module: materialsystem2.dll
namespace materialsystem2_dll {
constexpr std::ptrdiff_t FontManager_001 = 0x37A40;
constexpr std::ptrdiff_t MaterialUtils_001 = 0x4DB00;
constexpr std::ptrdiff_t PostProcessingSystem_001 = 0x42A40;
constexpr std::ptrdiff_t TextLayout_001 = 0x4A1C0;
constexpr std::ptrdiff_t VMaterialSystem2_001 = 0x25F10;
constexpr std::ptrdiff_t FontManager_001 = 0x10D320;
constexpr std::ptrdiff_t MaterialUtils_001 = 0x1084F0;
constexpr std::ptrdiff_t PostProcessingSystem_001 = 0x108400;
constexpr std::ptrdiff_t TextLayout_001 = 0x108480;
constexpr std::ptrdiff_t VMaterialSystem2_001 = 0x10C930;
}
// Module: meshsystem.dll
namespace meshsystem_dll {
constexpr std::ptrdiff_t MeshSystem001 = 0x7440;
constexpr std::ptrdiff_t MeshSystem001 = 0x144A30;
}
// Module: navsystem.dll
namespace navsystem_dll {
constexpr std::ptrdiff_t NavSystem001 = 0x8E30;
constexpr std::ptrdiff_t NavSystem001 = 0xC04E0;
}
// Module: networksystem.dll
namespace networksystem_dll {
constexpr std::ptrdiff_t FlattenedSerializersVersion001 = 0x7EF40;
constexpr std::ptrdiff_t NetworkMessagesVersion001 = 0x9FC40;
constexpr std::ptrdiff_t NetworkSystemVersion001 = 0xBF9C0;
constexpr std::ptrdiff_t SerializedEntitiesVersion001 = 0xD5DF0;
constexpr std::ptrdiff_t FlattenedSerializersVersion001 = 0x240510;
constexpr std::ptrdiff_t NetworkMessagesVersion001 = 0x272600;
constexpr std::ptrdiff_t NetworkSystemVersion001 = 0x26A2A0;
constexpr std::ptrdiff_t SerializedEntitiesVersion001 = 0x26A390;
}
// Module: panorama.dll
namespace panorama_dll {
constexpr std::ptrdiff_t PanoramaUIEngine001 = 0x5D8C0;
constexpr std::ptrdiff_t PanoramaUIEngine001 = 0x4E2260;
}
// Module: panorama_text_pango.dll
namespace panorama_text_pango_dll {
constexpr std::ptrdiff_t PanoramaTextServices001 = 0x4CBE0;
constexpr std::ptrdiff_t PanoramaTextServices001 = 0x2B38F0;
}
// Module: panoramauiclient.dll
namespace panoramauiclient_dll {
constexpr std::ptrdiff_t PanoramaUIClient001 = 0x12010;
constexpr std::ptrdiff_t PanoramaUIClient001 = 0x289860;
}
// Module: particles.dll
namespace particles_dll {
constexpr std::ptrdiff_t ParticleSystemMgr003 = 0x590F0;
constexpr std::ptrdiff_t ParticleSystemMgr003 = 0x5BC750;
}
// Module: pulse_system.dll
namespace pulse_system_dll {
constexpr std::ptrdiff_t IPulseSystem_001 = 0x44C0;
constexpr std::ptrdiff_t IPulseSystem_001 = 0x14D450;
}
// Module: rendersystemdx11.dll
namespace rendersystemdx11_dll {
constexpr std::ptrdiff_t RenderDeviceMgr001 = 0x4D1A0;
constexpr std::ptrdiff_t RenderUtils_001 = 0x55B20;
constexpr std::ptrdiff_t VRenderDeviceMgrBackdoor001 = 0x4D1B0;
constexpr std::ptrdiff_t RenderDeviceMgr001 = 0x3ED210;
constexpr std::ptrdiff_t RenderUtils_001 = 0x3EDA78;
constexpr std::ptrdiff_t VRenderDeviceMgrBackdoor001 = 0x3ED2A8;
}
// Module: resourcesystem.dll
namespace resourcesystem_dll {
constexpr std::ptrdiff_t ResourceSystem013 = 0x10920;
constexpr std::ptrdiff_t ResourceSystem013 = 0x6AF10;
}
// Module: scenefilecache.dll
namespace scenefilecache_dll {
constexpr std::ptrdiff_t ResponseRulesCache001 = 0x31A0;
constexpr std::ptrdiff_t SceneFileCache002 = 0x6A60;
constexpr std::ptrdiff_t ResponseRulesCache001 = 0x6B110;
constexpr std::ptrdiff_t SceneFileCache002 = 0x6B290;
}
// Module: scenesystem.dll
namespace scenesystem_dll {
constexpr std::ptrdiff_t RenderingPipelines_001 = 0x86350;
constexpr std::ptrdiff_t SceneSystem_002 = 0xBD0D0;
constexpr std::ptrdiff_t SceneUtils_001 = 0x12FB70;
constexpr std::ptrdiff_t RenderingPipelines_001 = 0x54DF90;
constexpr std::ptrdiff_t SceneSystem_002 = 0x599980;
constexpr std::ptrdiff_t SceneUtils_001 = 0x54E770;
}
// Module: schemasystem.dll
namespace schemasystem_dll {
constexpr std::ptrdiff_t SchemaSystem_001 = 0xAA50;
constexpr std::ptrdiff_t SchemaSystem_001 = 0x5C710;
}
// Module: server.dll
namespace server_dll {
constexpr std::ptrdiff_t EmptyWorldService001_Server = 0x56E130;
constexpr std::ptrdiff_t EntitySubclassUtilsV001 = 0x2ABFC0;
constexpr std::ptrdiff_t NavGameTest001 = 0xA428A0;
constexpr std::ptrdiff_t ServerToolsInfo_001 = 0x82E3B0;
constexpr std::ptrdiff_t Source2GameClients001 = 0x82E3C0;
constexpr std::ptrdiff_t Source2GameDirector001 = 0x11DFD0;
constexpr std::ptrdiff_t Source2GameEntities001 = 0x82E3D0;
constexpr std::ptrdiff_t Source2Server001 = 0x82E3E0;
constexpr std::ptrdiff_t Source2ServerConfig001 = 0x5623E0;
constexpr std::ptrdiff_t customnavsystem001 = 0x227F90;
constexpr std::ptrdiff_t EmptyWorldService001_Server = 0x1360FC0;
constexpr std::ptrdiff_t EntitySubclassUtilsV001 = 0x13134D0;
constexpr std::ptrdiff_t NavGameTest001 = 0x13FF788;
constexpr std::ptrdiff_t ServerToolsInfo_001 = 0x13B4EA8;
constexpr std::ptrdiff_t Source2GameClients001 = 0x13B0310;
constexpr std::ptrdiff_t Source2GameDirector001 = 0x14E46C0;
constexpr std::ptrdiff_t Source2GameEntities001 = 0x13B4E70;
constexpr std::ptrdiff_t Source2Server001 = 0x13B4CE0;
constexpr std::ptrdiff_t Source2ServerConfig001 = 0x159F5A8;
constexpr std::ptrdiff_t customnavsystem001 = 0x12F8D58;
}
// Module: soundsystem.dll
namespace soundsystem_dll {
constexpr std::ptrdiff_t SoundOpSystem001 = 0x16A670;
constexpr std::ptrdiff_t SoundOpSystemEdit001 = 0x96A80;
constexpr std::ptrdiff_t SoundSystem001 = 0x48350;
constexpr std::ptrdiff_t VMixEditTool001 = 0x75C60;
constexpr std::ptrdiff_t SoundOpSystem001 = 0x3353A0;
constexpr std::ptrdiff_t SoundOpSystemEdit001 = 0x335270;
constexpr std::ptrdiff_t SoundSystem001 = 0x334E40;
constexpr std::ptrdiff_t VMixEditTool001 = 0x48288DEA;
}
// Module: steamaudio.dll
namespace steamaudio_dll {
constexpr std::ptrdiff_t SteamAudio001 = 0x5AA70;
constexpr std::ptrdiff_t SteamAudio001 = 0x255750;
}
// Module: steamclient64.dll
namespace steamclient64_dll {
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;
constexpr std::ptrdiff_t CLIENTENGINE_INTERFACE_VERSION005 = 0x65ACBD2A;
constexpr std::ptrdiff_t IVALIDATE001 = 0x14EDA30;
constexpr std::ptrdiff_t SteamClient006 = 0x14EB270;
constexpr std::ptrdiff_t SteamClient007 = 0x14EB278;
constexpr std::ptrdiff_t SteamClient008 = 0x14EB280;
constexpr std::ptrdiff_t SteamClient009 = 0x14EB288;
constexpr std::ptrdiff_t SteamClient010 = 0x14EB290;
constexpr std::ptrdiff_t SteamClient011 = 0x14EB298;
constexpr std::ptrdiff_t SteamClient012 = 0x14EB2A0;
constexpr std::ptrdiff_t SteamClient013 = 0x14EB2A8;
constexpr std::ptrdiff_t SteamClient014 = 0x14EB2B0;
constexpr std::ptrdiff_t SteamClient015 = 0x14EB2B8;
constexpr std::ptrdiff_t SteamClient016 = 0x14EB2C0;
constexpr std::ptrdiff_t SteamClient017 = 0x14EB2C8;
constexpr std::ptrdiff_t SteamClient018 = 0x14EB2D0;
constexpr std::ptrdiff_t SteamClient019 = 0x14EB2D8;
constexpr std::ptrdiff_t SteamClient020 = 0x14EB2E0;
constexpr std::ptrdiff_t SteamClient021 = 0x14EB2E8;
constexpr std::ptrdiff_t p2pvoice002 = 0x14E5C5F;
constexpr std::ptrdiff_t p2pvoicesingleton002 = 0x14C90E0;
}
// Module: tier0.dll
namespace tier0_dll {
constexpr std::ptrdiff_t TestScriptMgr001 = 0x1426C0;
constexpr std::ptrdiff_t VEngineCvar007 = 0x62DA0;
constexpr std::ptrdiff_t VProcessUtils002 = 0x133B60;
constexpr std::ptrdiff_t VStringTokenSystem001 = 0x195160;
constexpr std::ptrdiff_t TestScriptMgr001 = 0x36DA30;
constexpr std::ptrdiff_t VEngineCvar007 = 0x37C590;
constexpr std::ptrdiff_t VProcessUtils002 = 0x36D940;
constexpr std::ptrdiff_t VStringTokenSystem001 = 0x394ED0;
}
// Module: v8system.dll
namespace v8system_dll {
constexpr std::ptrdiff_t Source2V8System001 = 0x1950;
constexpr std::ptrdiff_t Source2V8System001 = 0x2C480;
}
// Module: valve_avi.dll
namespace valve_avi_dll {
constexpr std::ptrdiff_t VAvi001 = 0x2F90;
constexpr std::ptrdiff_t VAvi001 = 0x22320;
}
// Module: valve_wmf.dll
namespace valve_wmf_dll {
constexpr std::ptrdiff_t VMediaFoundation001 = 0x12D0;
constexpr std::ptrdiff_t VMediaFoundation001 = 0x1FA20;
}
// Module: vphysics2.dll
namespace vphysics2_dll {
constexpr std::ptrdiff_t VPhysics2_Handle_Interface_001 = 0x5BC10;
constexpr std::ptrdiff_t VPhysics2_Interface_001 = 0x57090;
constexpr std::ptrdiff_t VPhysics2_Handle_Interface_001 = 0x37E500;
constexpr std::ptrdiff_t VPhysics2_Interface_001 = 0x37E540;
}
// Module: vscript.dll
namespace vscript_dll {
constexpr std::ptrdiff_t VScriptManager010 = 0x32000;
constexpr std::ptrdiff_t VScriptManager010 = 0x128600;
}
// Module: vstdlib_s64.dll
namespace vstdlib_s64_dll {
constexpr std::ptrdiff_t IVALIDATE001 = 0x25120;
constexpr std::ptrdiff_t VEngineCvar002 = 0x5760;
constexpr std::ptrdiff_t IVALIDATE001 = 0xA5B40;
constexpr std::ptrdiff_t VEngineCvar002 = 0x63070;
}
// Module: worldrenderer.dll
namespace worldrenderer_dll {
constexpr std::ptrdiff_t WorldRendererMgr001 = 0x205E0;
constexpr std::ptrdiff_t WorldRendererMgr001 = 0x15FF70;
}
}
}

View File

@@ -1,204 +1,204 @@
{
"animationsystem.dll": {
"AnimationSystemUtils_001": 472640,
"AnimationSystem_001": 451008
"AnimationSystemUtils_001": 5832632,
"AnimationSystem_001": 5799648
},
"client.dll": {
"ClientToolsInfo_001": 7559536,
"EmptyWorldService001_Client": 4729680,
"GameClientExports001": 7559552,
"LegacyGameUI001": 9124176,
"Source2Client002": 7559568,
"Source2ClientConfig001": 4644560,
"Source2ClientPrediction001": 8070160,
"Source2ClientUI001": 9055888
"ClientToolsInfo_001": 25282432,
"EmptyWorldService001_Client": 25007728,
"GameClientExports001": 25269304,
"LegacyGameUI001": 25399840,
"Source2Client002": 27371024,
"Source2ClientConfig001": 26980848,
"Source2ClientPrediction001": 25315536,
"Source2ClientUI001": 25394512
},
"engine2.dll": {
"BenchmarkService001": 1544448,
"BugService001": 1550688,
"ClientServerEngineLoopService_001": 2024624,
"EngineGameUI001": 1193552,
"EngineServiceMgr001": 1956448,
"GameEventSystemClientV001": 1975888,
"GameEventSystemServerV001": 1975904,
"GameResourceServiceClientV001": 1579808,
"GameResourceServiceServerV001": 1579824,
"GameUIService_001": 1590480,
"HostStateMgr001": 1994928,
"INETSUPPORT_001": 991904,
"InputService_001": 1613808,
"KeyValueCache001": 2005200,
"MapListService_001": 1691328,
"NetworkClientService_001": 1720448,
"NetworkP2PService_001": 1748336,
"NetworkServerService_001": 1766080,
"NetworkService_001": 1787104,
"RenderService_001": 1788368,
"ScreenshotService001": 1798992,
"SimpleEngineLoopService_001": 2076656,
"SoundService_001": 1816912,
"Source2EngineToClient001": 406032,
"Source2EngineToClientStringTable001": 574080,
"Source2EngineToServer001": 604288,
"Source2EngineToServerStringTable001": 699936,
"SplitScreenService_001": 1843680,
"StatsService_001": 1855168,
"ToolService_001": 1874704,
"VENGINE_GAMEUIFUNCS_VERSION005": 1196736,
"VProfService_001": 1879696
"BenchmarkService001": 5461696,
"BugService001": 5949856,
"ClientServerEngineLoopService_001": 5464944,
"EngineGameUI001": 5453344,
"EngineServiceMgr001": 6216272,
"GameEventSystemClientV001": 6217072,
"GameEventSystemServerV001": 6217408,
"GameResourceServiceClientV001": 5461952,
"GameResourceServiceServerV001": 5462048,
"GameUIService_001": 5950624,
"HostStateMgr001": 5464672,
"INETSUPPORT_001": 5435136,
"InputService_001": 5951408,
"KeyValueCache001": 5464848,
"MapListService_001": 6209360,
"NetworkClientService_001": 6209760,
"NetworkP2PService_001": 5462704,
"NetworkServerService_001": 6210672,
"NetworkService_001": 5463040,
"RenderService_001": 6211280,
"ScreenshotService001": 6211984,
"SimpleEngineLoopService_001": 5465216,
"SoundService_001": 6212464,
"Source2EngineToClient001": 5450944,
"Source2EngineToClientStringTable001": 5451104,
"Source2EngineToServer001": 5451256,
"Source2EngineToServerStringTable001": 5451296,
"SplitScreenService_001": 5463616,
"StatsService_001": 6213696,
"ToolService_001": 5464144,
"VENGINE_GAMEUIFUNCS_VERSION005": 5453488,
"VProfService_001": 5464208
},
"filesystem_stdio.dll": {
"VAsyncFileSystem2_001": 423184,
"VFileSystem017": 423168
"VAsyncFileSystem2_001": 2151840,
"VFileSystem017": 2173088
},
"host.dll": {
"DebugDrawQueueManager001": 72416,
"GameModelInfo001": 73872,
"GameSystem2HostHook": 74096,
"HostUtils001": 76064,
"PredictionDiffManager001": 95040,
"SaveRestoreDataVersion001": 102496,
"SinglePlayerSharedMemory001": 102512,
"Source2Host001": 103408
"DebugDrawQueueManager001": 1273792,
"GameModelInfo001": 1273856,
"GameSystem2HostHook": 1273920,
"HostUtils001": 1273968,
"PredictionDiffManager001": 1274560,
"SaveRestoreDataVersion001": 1274864,
"SinglePlayerSharedMemory001": 1274912,
"Source2Host001": 1275024
},
"imemanager.dll": {
"IMEManager001": 50288
"IMEManager001": 190688
},
"inputsystem.dll": {
"InputStackSystemVersion001": 6224,
"InputSystemVersion001": 10816
"InputStackSystemVersion001": 224128,
"InputSystemVersion001": 231408
},
"localize.dll": {
"Localize_001": 14384
"Localize_001": 244432
},
"matchmaking.dll": {
"GameTypes001": 342288,
"MATCHFRAMEWORK_001": 1071008
"GameTypes001": 1720768,
"MATCHFRAMEWORK_001": 1754048
},
"materialsystem2.dll": {
"FontManager_001": 227904,
"MaterialUtils_001": 318208,
"PostProcessingSystem_001": 272960,
"TextLayout_001": 303552,
"VMaterialSystem2_001": 155408
"FontManager_001": 1102624,
"MaterialUtils_001": 1082608,
"PostProcessingSystem_001": 1082368,
"TextLayout_001": 1082496,
"VMaterialSystem2_001": 1100080
},
"meshsystem.dll": {
"MeshSystem001": 29760
"MeshSystem001": 1329712
},
"navsystem.dll": {
"NavSystem001": 36400
"NavSystem001": 787680
},
"networksystem.dll": {
"FlattenedSerializersVersion001": 520000,
"NetworkMessagesVersion001": 654400,
"NetworkSystemVersion001": 784832,
"SerializedEntitiesVersion001": 876016
"FlattenedSerializersVersion001": 2360592,
"NetworkMessagesVersion001": 2565632,
"NetworkSystemVersion001": 2532000,
"SerializedEntitiesVersion001": 2532240
},
"panorama.dll": {
"PanoramaUIEngine001": 383168
"PanoramaUIEngine001": 5120608
},
"panorama_text_pango.dll": {
"PanoramaTextServices001": 314336
"PanoramaTextServices001": 2832624
},
"panoramauiclient.dll": {
"PanoramaUIClient001": 73744
"PanoramaUIClient001": 2660448
},
"particles.dll": {
"ParticleSystemMgr003": 364784
"ParticleSystemMgr003": 6014800
},
"pulse_system.dll": {
"IPulseSystem_001": 17600
"IPulseSystem_001": 1365072
},
"rendersystemdx11.dll": {
"RenderDeviceMgr001": 315808,
"RenderUtils_001": 351008,
"VRenderDeviceMgrBackdoor001": 315824
"RenderDeviceMgr001": 4117008,
"RenderUtils_001": 4119160,
"VRenderDeviceMgrBackdoor001": 4117160
},
"resourcesystem.dll": {
"ResourceSystem013": 67872
"ResourceSystem013": 438032
},
"scenefilecache.dll": {
"ResponseRulesCache001": 12704,
"SceneFileCache002": 27232
"ResponseRulesCache001": 438544,
"SceneFileCache002": 438928
},
"scenesystem.dll": {
"RenderingPipelines_001": 549712,
"SceneSystem_002": 774352,
"SceneUtils_001": 1244016
"RenderingPipelines_001": 5562256,
"SceneSystem_002": 5872000,
"SceneUtils_001": 5564272
},
"schemasystem.dll": {
"SchemaSystem_001": 43600
"SchemaSystem_001": 378640
},
"server.dll": {
"EmptyWorldService001_Server": 5693744,
"EntitySubclassUtilsV001": 2801600,
"NavGameTest001": 10758304,
"ServerToolsInfo_001": 8577968,
"Source2GameClients001": 8577984,
"Source2GameDirector001": 1171408,
"Source2GameEntities001": 8578000,
"Source2Server001": 8578016,
"Source2ServerConfig001": 5645280,
"customnavsystem001": 2260880
"EmptyWorldService001_Server": 20320192,
"EntitySubclassUtilsV001": 20002000,
"NavGameTest001": 20969352,
"ServerToolsInfo_001": 20663976,
"Source2GameClients001": 20644624,
"Source2GameDirector001": 21907136,
"Source2GameEntities001": 20663920,
"Source2Server001": 20663520,
"Source2ServerConfig001": 22672808,
"customnavsystem001": 19893592
},
"soundsystem.dll": {
"SoundOpSystem001": 1484400,
"SoundOpSystemEdit001": 617088,
"SoundSystem001": 295760,
"VMixEditTool001": 482400
"SoundOpSystem001": 3363744,
"SoundOpSystemEdit001": 3363440,
"SoundSystem001": 3362368,
"VMixEditTool001": 1210617322
},
"steamaudio.dll": {
"SteamAudio001": 371312
"SteamAudio001": 2447184
},
"steamclient64.dll": {
"CLIENTENGINE_INTERFACE_VERSION005": 8790464,
"IVALIDATE001": 8806992,
"SteamClient006": 6698752,
"SteamClient007": 6698768,
"SteamClient008": 6698784,
"SteamClient009": 6698800,
"SteamClient010": 6698816,
"SteamClient011": 6698832,
"SteamClient012": 6698848,
"SteamClient013": 6698864,
"SteamClient014": 6698880,
"SteamClient015": 6698896,
"SteamClient016": 6698912,
"SteamClient017": 6698928,
"SteamClient018": 6698944,
"SteamClient019": 6698960,
"SteamClient020": 6698976,
"SteamClient021": 6698992,
"p2pvoice002": 892880,
"p2pvoicesingleton002": 879152
"CLIENTENGINE_INTERFACE_VERSION005": 1705819434,
"IVALIDATE001": 21944880,
"SteamClient006": 21934704,
"SteamClient007": 21934712,
"SteamClient008": 21934720,
"SteamClient009": 21934728,
"SteamClient010": 21934736,
"SteamClient011": 21934744,
"SteamClient012": 21934752,
"SteamClient013": 21934760,
"SteamClient014": 21934768,
"SteamClient015": 21934776,
"SteamClient016": 21934784,
"SteamClient017": 21934792,
"SteamClient018": 21934800,
"SteamClient019": 21934808,
"SteamClient020": 21934816,
"SteamClient021": 21934824,
"p2pvoice002": 21912671,
"p2pvoicesingleton002": 21795040
},
"tier0.dll": {
"TestScriptMgr001": 1320640,
"VEngineCvar007": 404896,
"VProcessUtils002": 1260384,
"VStringTokenSystem001": 1659232
"TestScriptMgr001": 3594800,
"VEngineCvar007": 3655056,
"VProcessUtils002": 3594560,
"VStringTokenSystem001": 3755728
},
"v8system.dll": {
"Source2V8System001": 6480
"Source2V8System001": 181376
},
"valve_avi.dll": {
"VAvi001": 12176
"VAvi001": 140064
},
"valve_wmf.dll": {
"VMediaFoundation001": 4816
"VMediaFoundation001": 129568
},
"vphysics2.dll": {
"VPhysics2_Handle_Interface_001": 375824,
"VPhysics2_Interface_001": 356496
"VPhysics2_Handle_Interface_001": 3663104,
"VPhysics2_Interface_001": 3663168
},
"vscript.dll": {
"VScriptManager010": 204800
"VScriptManager010": 1213952
},
"vstdlib_s64.dll": {
"IVALIDATE001": 151840,
"VEngineCvar002": 22368
"IVALIDATE001": 678720,
"VEngineCvar002": 405616
},
"worldrenderer.dll": {
"WorldRendererMgr001": 132576
"WorldRendererMgr001": 1441648
}
}

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
#![allow(non_upper_case_globals, unused)]
@@ -7,240 +7,240 @@ pub mod cs2_dumper {
pub mod interfaces {
// Module: animationsystem.dll
pub mod animationsystem_dll {
pub const AnimationSystemUtils_001: usize = 0x73640;
pub const AnimationSystem_001: usize = 0x6E1C0;
pub const AnimationSystemUtils_001: usize = 0x58FFB8;
pub const AnimationSystem_001: usize = 0x587EE0;
}
// Module: client.dll
pub mod client_dll {
pub const ClientToolsInfo_001: usize = 0x735970;
pub const EmptyWorldService001_Client: usize = 0x482B50;
pub const GameClientExports001: usize = 0x735980;
pub const LegacyGameUI001: usize = 0x8B3950;
pub const Source2Client002: usize = 0x735990;
pub const Source2ClientConfig001: usize = 0x46DED0;
pub const Source2ClientPrediction001: usize = 0x7B2410;
pub const Source2ClientUI001: usize = 0x8A2E90;
pub const ClientToolsInfo_001: usize = 0x181C780;
pub const EmptyWorldService001_Client: usize = 0x17D9670;
pub const GameClientExports001: usize = 0x1819438;
pub const LegacyGameUI001: usize = 0x1839220;
pub const Source2Client002: usize = 0x1A1A610;
pub const Source2ClientConfig001: usize = 0x19BB1F0;
pub const Source2ClientPrediction001: usize = 0x18248D0;
pub const Source2ClientUI001: usize = 0x1837D50;
}
// Module: engine2.dll
pub mod engine2_dll {
pub const BenchmarkService001: usize = 0x179100;
pub const BugService001: usize = 0x17A960;
pub const ClientServerEngineLoopService_001: usize = 0x1EE4B0;
pub const EngineGameUI001: usize = 0x123650;
pub const EngineServiceMgr001: usize = 0x1DDA60;
pub const GameEventSystemClientV001: usize = 0x1E2650;
pub const GameEventSystemServerV001: usize = 0x1E2660;
pub const GameResourceServiceClientV001: usize = 0x181B20;
pub const GameResourceServiceServerV001: usize = 0x181B30;
pub const GameUIService_001: usize = 0x1844D0;
pub const HostStateMgr001: usize = 0x1E70B0;
pub const INETSUPPORT_001: usize = 0xF22A0;
pub const InputService_001: usize = 0x189FF0;
pub const KeyValueCache001: usize = 0x1E98D0;
pub const MapListService_001: usize = 0x19CEC0;
pub const NetworkClientService_001: usize = 0x1A4080;
pub const NetworkP2PService_001: usize = 0x1AAD70;
pub const NetworkServerService_001: usize = 0x1AF2C0;
pub const NetworkService_001: usize = 0x1B44E0;
pub const RenderService_001: usize = 0x1B49D0;
pub const ScreenshotService001: usize = 0x1B7350;
pub const SimpleEngineLoopService_001: usize = 0x1FAFF0;
pub const SoundService_001: usize = 0x1BB950;
pub const Source2EngineToClient001: usize = 0x63210;
pub const Source2EngineToClientStringTable001: usize = 0x8C280;
pub const Source2EngineToServer001: usize = 0x93880;
pub const Source2EngineToServerStringTable001: usize = 0xAAE20;
pub const SplitScreenService_001: usize = 0x1C21E0;
pub const StatsService_001: usize = 0x1C4EC0;
pub const ToolService_001: usize = 0x1C9B10;
pub const VENGINE_GAMEUIFUNCS_VERSION005: usize = 0x1242C0;
pub const VProfService_001: usize = 0x1CAE90;
pub const BenchmarkService001: usize = 0x5356C0;
pub const BugService001: usize = 0x5AC9A0;
pub const ClientServerEngineLoopService_001: usize = 0x536370;
pub const EngineGameUI001: usize = 0x533620;
pub const EngineServiceMgr001: usize = 0x5EDA50;
pub const GameEventSystemClientV001: usize = 0x5EDD70;
pub const GameEventSystemServerV001: usize = 0x5EDEC0;
pub const GameResourceServiceClientV001: usize = 0x5357C0;
pub const GameResourceServiceServerV001: usize = 0x535820;
pub const GameUIService_001: usize = 0x5ACCA0;
pub const HostStateMgr001: usize = 0x536260;
pub const INETSUPPORT_001: usize = 0x52EF00;
pub const InputService_001: usize = 0x5ACFB0;
pub const KeyValueCache001: usize = 0x536310;
pub const MapListService_001: usize = 0x5EBF50;
pub const NetworkClientService_001: usize = 0x5EC0E0;
pub const NetworkP2PService_001: usize = 0x535AB0;
pub const NetworkServerService_001: usize = 0x5EC470;
pub const NetworkService_001: usize = 0x535C00;
pub const RenderService_001: usize = 0x5EC6D0;
pub const ScreenshotService001: usize = 0x5EC990;
pub const SimpleEngineLoopService_001: usize = 0x536480;
pub const SoundService_001: usize = 0x5ECB70;
pub const Source2EngineToClient001: usize = 0x532CC0;
pub const Source2EngineToClientStringTable001: usize = 0x532D60;
pub const Source2EngineToServer001: usize = 0x532DF8;
pub const Source2EngineToServerStringTable001: usize = 0x532E20;
pub const SplitScreenService_001: usize = 0x535E40;
pub const StatsService_001: usize = 0x5ED040;
pub const ToolService_001: usize = 0x536050;
pub const VENGINE_GAMEUIFUNCS_VERSION005: usize = 0x5336B0;
pub const VProfService_001: usize = 0x536090;
}
// Module: filesystem_stdio.dll
pub mod filesystem_stdio_dll {
pub const VAsyncFileSystem2_001: usize = 0x67510;
pub const VFileSystem017: usize = 0x67500;
pub const VAsyncFileSystem2_001: usize = 0x20D5A0;
pub const VFileSystem017: usize = 0x2128A0;
}
// Module: host.dll
pub mod host_dll {
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;
pub const DebugDrawQueueManager001: usize = 0x136FC0;
pub const GameModelInfo001: usize = 0x137000;
pub const GameSystem2HostHook: usize = 0x137040;
pub const HostUtils001: usize = 0x137070;
pub const PredictionDiffManager001: usize = 0x1372C0;
pub const SaveRestoreDataVersion001: usize = 0x1373F0;
pub const SinglePlayerSharedMemory001: usize = 0x137420;
pub const Source2Host001: usize = 0x137490;
}
// Module: imemanager.dll
pub mod imemanager_dll {
pub const IMEManager001: usize = 0xC470;
pub const IMEManager001: usize = 0x2E8E0;
}
// Module: inputsystem.dll
pub mod inputsystem_dll {
pub const InputStackSystemVersion001: usize = 0x1850;
pub const InputSystemVersion001: usize = 0x2A40;
pub const InputStackSystemVersion001: usize = 0x36B80;
pub const InputSystemVersion001: usize = 0x387F0;
}
// Module: localize.dll
pub mod localize_dll {
pub const Localize_001: usize = 0x3830;
pub const Localize_001: usize = 0x3BAD0;
}
// Module: matchmaking.dll
pub mod matchmaking_dll {
pub const GameTypes001: usize = 0x53910;
pub const MATCHFRAMEWORK_001: usize = 0x1057A0;
pub const GameTypes001: usize = 0x1A41C0;
pub const MATCHFRAMEWORK_001: usize = 0x1AC3C0;
}
// Module: materialsystem2.dll
pub mod materialsystem2_dll {
pub const FontManager_001: usize = 0x37A40;
pub const MaterialUtils_001: usize = 0x4DB00;
pub const PostProcessingSystem_001: usize = 0x42A40;
pub const TextLayout_001: usize = 0x4A1C0;
pub const VMaterialSystem2_001: usize = 0x25F10;
pub const FontManager_001: usize = 0x10D320;
pub const MaterialUtils_001: usize = 0x1084F0;
pub const PostProcessingSystem_001: usize = 0x108400;
pub const TextLayout_001: usize = 0x108480;
pub const VMaterialSystem2_001: usize = 0x10C930;
}
// Module: meshsystem.dll
pub mod meshsystem_dll {
pub const MeshSystem001: usize = 0x7440;
pub const MeshSystem001: usize = 0x144A30;
}
// Module: navsystem.dll
pub mod navsystem_dll {
pub const NavSystem001: usize = 0x8E30;
pub const NavSystem001: usize = 0xC04E0;
}
// Module: networksystem.dll
pub mod networksystem_dll {
pub const FlattenedSerializersVersion001: usize = 0x7EF40;
pub const NetworkMessagesVersion001: usize = 0x9FC40;
pub const NetworkSystemVersion001: usize = 0xBF9C0;
pub const SerializedEntitiesVersion001: usize = 0xD5DF0;
pub const FlattenedSerializersVersion001: usize = 0x240510;
pub const NetworkMessagesVersion001: usize = 0x272600;
pub const NetworkSystemVersion001: usize = 0x26A2A0;
pub const SerializedEntitiesVersion001: usize = 0x26A390;
}
// Module: panorama.dll
pub mod panorama_dll {
pub const PanoramaUIEngine001: usize = 0x5D8C0;
pub const PanoramaUIEngine001: usize = 0x4E2260;
}
// Module: panorama_text_pango.dll
pub mod panorama_text_pango_dll {
pub const PanoramaTextServices001: usize = 0x4CBE0;
pub const PanoramaTextServices001: usize = 0x2B38F0;
}
// Module: panoramauiclient.dll
pub mod panoramauiclient_dll {
pub const PanoramaUIClient001: usize = 0x12010;
pub const PanoramaUIClient001: usize = 0x289860;
}
// Module: particles.dll
pub mod particles_dll {
pub const ParticleSystemMgr003: usize = 0x590F0;
pub const ParticleSystemMgr003: usize = 0x5BC750;
}
// Module: pulse_system.dll
pub mod pulse_system_dll {
pub const IPulseSystem_001: usize = 0x44C0;
pub const IPulseSystem_001: usize = 0x14D450;
}
// Module: rendersystemdx11.dll
pub mod rendersystemdx11_dll {
pub const RenderDeviceMgr001: usize = 0x4D1A0;
pub const RenderUtils_001: usize = 0x55B20;
pub const VRenderDeviceMgrBackdoor001: usize = 0x4D1B0;
pub const RenderDeviceMgr001: usize = 0x3ED210;
pub const RenderUtils_001: usize = 0x3EDA78;
pub const VRenderDeviceMgrBackdoor001: usize = 0x3ED2A8;
}
// Module: resourcesystem.dll
pub mod resourcesystem_dll {
pub const ResourceSystem013: usize = 0x10920;
pub const ResourceSystem013: usize = 0x6AF10;
}
// Module: scenefilecache.dll
pub mod scenefilecache_dll {
pub const ResponseRulesCache001: usize = 0x31A0;
pub const SceneFileCache002: usize = 0x6A60;
pub const ResponseRulesCache001: usize = 0x6B110;
pub const SceneFileCache002: usize = 0x6B290;
}
// Module: scenesystem.dll
pub mod scenesystem_dll {
pub const RenderingPipelines_001: usize = 0x86350;
pub const SceneSystem_002: usize = 0xBD0D0;
pub const SceneUtils_001: usize = 0x12FB70;
pub const RenderingPipelines_001: usize = 0x54DF90;
pub const SceneSystem_002: usize = 0x599980;
pub const SceneUtils_001: usize = 0x54E770;
}
// Module: schemasystem.dll
pub mod schemasystem_dll {
pub const SchemaSystem_001: usize = 0xAA50;
pub const SchemaSystem_001: usize = 0x5C710;
}
// Module: server.dll
pub mod server_dll {
pub const EmptyWorldService001_Server: usize = 0x56E130;
pub const EntitySubclassUtilsV001: usize = 0x2ABFC0;
pub const NavGameTest001: usize = 0xA428A0;
pub const ServerToolsInfo_001: usize = 0x82E3B0;
pub const Source2GameClients001: usize = 0x82E3C0;
pub const Source2GameDirector001: usize = 0x11DFD0;
pub const Source2GameEntities001: usize = 0x82E3D0;
pub const Source2Server001: usize = 0x82E3E0;
pub const Source2ServerConfig001: usize = 0x5623E0;
pub const customnavsystem001: usize = 0x227F90;
pub const EmptyWorldService001_Server: usize = 0x1360FC0;
pub const EntitySubclassUtilsV001: usize = 0x13134D0;
pub const NavGameTest001: usize = 0x13FF788;
pub const ServerToolsInfo_001: usize = 0x13B4EA8;
pub const Source2GameClients001: usize = 0x13B0310;
pub const Source2GameDirector001: usize = 0x14E46C0;
pub const Source2GameEntities001: usize = 0x13B4E70;
pub const Source2Server001: usize = 0x13B4CE0;
pub const Source2ServerConfig001: usize = 0x159F5A8;
pub const customnavsystem001: usize = 0x12F8D58;
}
// Module: soundsystem.dll
pub mod soundsystem_dll {
pub const SoundOpSystem001: usize = 0x16A670;
pub const SoundOpSystemEdit001: usize = 0x96A80;
pub const SoundSystem001: usize = 0x48350;
pub const VMixEditTool001: usize = 0x75C60;
pub const SoundOpSystem001: usize = 0x3353A0;
pub const SoundOpSystemEdit001: usize = 0x335270;
pub const SoundSystem001: usize = 0x334E40;
pub const VMixEditTool001: usize = 0x48288DEA;
}
// Module: steamaudio.dll
pub mod steamaudio_dll {
pub const SteamAudio001: usize = 0x5AA70;
pub const SteamAudio001: usize = 0x255750;
}
// Module: steamclient64.dll
pub mod steamclient64_dll {
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;
pub const CLIENTENGINE_INTERFACE_VERSION005: usize = 0x65ACBD2A;
pub const IVALIDATE001: usize = 0x14EDA30;
pub const SteamClient006: usize = 0x14EB270;
pub const SteamClient007: usize = 0x14EB278;
pub const SteamClient008: usize = 0x14EB280;
pub const SteamClient009: usize = 0x14EB288;
pub const SteamClient010: usize = 0x14EB290;
pub const SteamClient011: usize = 0x14EB298;
pub const SteamClient012: usize = 0x14EB2A0;
pub const SteamClient013: usize = 0x14EB2A8;
pub const SteamClient014: usize = 0x14EB2B0;
pub const SteamClient015: usize = 0x14EB2B8;
pub const SteamClient016: usize = 0x14EB2C0;
pub const SteamClient017: usize = 0x14EB2C8;
pub const SteamClient018: usize = 0x14EB2D0;
pub const SteamClient019: usize = 0x14EB2D8;
pub const SteamClient020: usize = 0x14EB2E0;
pub const SteamClient021: usize = 0x14EB2E8;
pub const p2pvoice002: usize = 0x14E5C5F;
pub const p2pvoicesingleton002: usize = 0x14C90E0;
}
// Module: tier0.dll
pub mod tier0_dll {
pub const TestScriptMgr001: usize = 0x1426C0;
pub const VEngineCvar007: usize = 0x62DA0;
pub const VProcessUtils002: usize = 0x133B60;
pub const VStringTokenSystem001: usize = 0x195160;
pub const TestScriptMgr001: usize = 0x36DA30;
pub const VEngineCvar007: usize = 0x37C590;
pub const VProcessUtils002: usize = 0x36D940;
pub const VStringTokenSystem001: usize = 0x394ED0;
}
// Module: v8system.dll
pub mod v8system_dll {
pub const Source2V8System001: usize = 0x1950;
pub const Source2V8System001: usize = 0x2C480;
}
// Module: valve_avi.dll
pub mod valve_avi_dll {
pub const VAvi001: usize = 0x2F90;
pub const VAvi001: usize = 0x22320;
}
// Module: valve_wmf.dll
pub mod valve_wmf_dll {
pub const VMediaFoundation001: usize = 0x12D0;
pub const VMediaFoundation001: usize = 0x1FA20;
}
// Module: vphysics2.dll
pub mod vphysics2_dll {
pub const VPhysics2_Handle_Interface_001: usize = 0x5BC10;
pub const VPhysics2_Interface_001: usize = 0x57090;
pub const VPhysics2_Handle_Interface_001: usize = 0x37E500;
pub const VPhysics2_Interface_001: usize = 0x37E540;
}
// Module: vscript.dll
pub mod vscript_dll {
pub const VScriptManager010: usize = 0x32000;
pub const VScriptManager010: usize = 0x128600;
}
// Module: vstdlib_s64.dll
pub mod vstdlib_s64_dll {
pub const IVALIDATE001: usize = 0x25120;
pub const VEngineCvar002: usize = 0x5760;
pub const IVALIDATE001: usize = 0xA5B40;
pub const VEngineCvar002: usize = 0x63070;
}
// Module: worldrenderer.dll
pub mod worldrenderer_dll {
pub const WorldRendererMgr001: usize = 0x205E0;
pub const WorldRendererMgr001: usize = 0x15FF70;
}
}
}

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
namespace CS2Dumper.Schemas {
// Module: materialsystem2.dll
@@ -7,7 +7,7 @@ namespace CS2Dumper.Schemas {
// Enums count: 5
public static class Materialsystem2Dll {
// Alignment: 4
// Members count: 4
// Member count: 4
public enum VertJustification_e : uint {
VERT_JUSTIFICATION_TOP = 0x0,
VERT_JUSTIFICATION_CENTER = 0x1,
@@ -15,28 +15,28 @@ namespace CS2Dumper.Schemas {
VERT_JUSTIFICATION_NONE = 0x3
}
// Alignment: 4
// Members count: 3
// Member count: 3
public enum LayoutPositionType_e : uint {
LAYOUTPOSITIONTYPE_VIEWPORT_RELATIVE = 0x0,
LAYOUTPOSITIONTYPE_FRACTIONAL = 0x1,
LAYOUTPOSITIONTYPE_NONE = 0x2
}
// Alignment: 4
// Members count: 3
// Member count: 3
public enum ViewFadeMode_t : uint {
VIEW_FADE_CONSTANT_COLOR = 0x0,
VIEW_FADE_MODULATE = 0x1,
VIEW_FADE_MOD2X = 0x2
}
// Alignment: 4
// Members count: 3
// Member count: 3
public enum BloomBlendMode_t : uint {
BLOOM_BLEND_ADD = 0x0,
BLOOM_BLEND_SCREEN = 0x1,
BLOOM_BLEND_BLUR = 0x2
}
// Alignment: 4
// Members count: 4
// Member count: 4
public enum HorizJustification_e : uint {
HORIZ_JUSTIFICATION_LEFT = 0x0,
HORIZ_JUSTIFICATION_CENTER = 0x1,
@@ -44,7 +44,7 @@ namespace CS2Dumper.Schemas {
HORIZ_JUSTIFICATION_NONE = 0x3
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -52,7 +52,7 @@ namespace CS2Dumper.Schemas {
public const nint m_name = 0x0; // CUtlString
}
// Parent: MaterialParam_t
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -60,7 +60,7 @@ namespace CS2Dumper.Schemas {
public const nint m_value = 0x8; // Vector4D
}
// Parent: MaterialParam_t
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -68,7 +68,7 @@ namespace CS2Dumper.Schemas {
public const nint m_value = 0x8; // CUtlString
}
// Parent: None
// Fields count: 11
// Field count: 11
//
// Metadata:
// MGetKV3ClassDefaults
@@ -86,7 +86,7 @@ namespace CS2Dumper.Schemas {
public const nint m_bHasColorCorrection = 0x110; // bool
}
// Parent: MaterialParam_t
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -94,7 +94,7 @@ namespace CS2Dumper.Schemas {
public const nint m_nValue = 0x8; // int32
}
// Parent: None
// Fields count: 6
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
@@ -107,7 +107,7 @@ namespace CS2Dumper.Schemas {
public const nint m_vColorTint = 0x18; // Vector
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -119,7 +119,7 @@ namespace CS2Dumper.Schemas {
public const nint m_flLocalContrastVignetteBlur = 0x10; // float32
}
// Parent: None
// Fields count: 15
// Field count: 15
//
// Metadata:
// MGetKV3ClassDefaults
@@ -141,7 +141,7 @@ namespace CS2Dumper.Schemas {
public const nint m_flMaxHighlightLum = 0x38; // float32
}
// Parent: MaterialParam_t
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -149,7 +149,7 @@ namespace CS2Dumper.Schemas {
public const nint m_value = 0x8; // CUtlBinaryBlock
}
// Parent: None
// Fields count: 14
// Field count: 14
//
// Metadata:
// MGetKV3ClassDefaults
@@ -170,7 +170,7 @@ namespace CS2Dumper.Schemas {
public const nint m_renderAttributesUsed = 0x118; // CUtlVector<CUtlString>
}
// Parent: None
// Fields count: 10
// Field count: 10
//
// Metadata:
// MGetKV3ClassDefaults
@@ -187,7 +187,7 @@ namespace CS2Dumper.Schemas {
public const nint m_vBlurTint = 0x34; // Vector[5]
}
// Parent: MaterialParam_t
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -195,7 +195,7 @@ namespace CS2Dumper.Schemas {
public const nint m_flValue = 0x8; // float32
}
// Parent: MaterialParam_t
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
#pragma once
@@ -12,7 +12,7 @@ namespace cs2_dumper {
// Enums count: 5
namespace materialsystem2_dll {
// Alignment: 4
// Members count: 4
// Member count: 4
enum class VertJustification_e : uint32_t {
VERT_JUSTIFICATION_TOP = 0x0,
VERT_JUSTIFICATION_CENTER = 0x1,
@@ -20,28 +20,28 @@ namespace cs2_dumper {
VERT_JUSTIFICATION_NONE = 0x3
};
// Alignment: 4
// Members count: 3
// Member count: 3
enum class LayoutPositionType_e : uint32_t {
LAYOUTPOSITIONTYPE_VIEWPORT_RELATIVE = 0x0,
LAYOUTPOSITIONTYPE_FRACTIONAL = 0x1,
LAYOUTPOSITIONTYPE_NONE = 0x2
};
// Alignment: 4
// Members count: 3
// Member count: 3
enum class ViewFadeMode_t : uint32_t {
VIEW_FADE_CONSTANT_COLOR = 0x0,
VIEW_FADE_MODULATE = 0x1,
VIEW_FADE_MOD2X = 0x2
};
// Alignment: 4
// Members count: 3
// Member count: 3
enum class BloomBlendMode_t : uint32_t {
BLOOM_BLEND_ADD = 0x0,
BLOOM_BLEND_SCREEN = 0x1,
BLOOM_BLEND_BLUR = 0x2
};
// Alignment: 4
// Members count: 4
// Member count: 4
enum class HorizJustification_e : uint32_t {
HORIZ_JUSTIFICATION_LEFT = 0x0,
HORIZ_JUSTIFICATION_CENTER = 0x1,
@@ -49,7 +49,7 @@ namespace cs2_dumper {
HORIZ_JUSTIFICATION_NONE = 0x3
};
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -57,7 +57,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_name = 0x0; // CUtlString
}
// Parent: MaterialParam_t
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -65,7 +65,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_value = 0x8; // Vector4D
}
// Parent: MaterialParam_t
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -73,7 +73,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_value = 0x8; // CUtlString
}
// Parent: None
// Fields count: 11
// Field count: 11
//
// Metadata:
// MGetKV3ClassDefaults
@@ -91,7 +91,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_bHasColorCorrection = 0x110; // bool
}
// Parent: MaterialParam_t
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -99,7 +99,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nValue = 0x8; // int32
}
// Parent: None
// Fields count: 6
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
@@ -112,7 +112,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_vColorTint = 0x18; // Vector
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -124,7 +124,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_flLocalContrastVignetteBlur = 0x10; // float32
}
// Parent: None
// Fields count: 15
// Field count: 15
//
// Metadata:
// MGetKV3ClassDefaults
@@ -146,7 +146,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_flMaxHighlightLum = 0x38; // float32
}
// Parent: MaterialParam_t
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -154,7 +154,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_value = 0x8; // CUtlBinaryBlock
}
// Parent: None
// Fields count: 14
// Field count: 14
//
// Metadata:
// MGetKV3ClassDefaults
@@ -175,7 +175,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_renderAttributesUsed = 0x118; // CUtlVector<CUtlString>
}
// Parent: None
// Fields count: 10
// Field count: 10
//
// Metadata:
// MGetKV3ClassDefaults
@@ -192,7 +192,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_vBlurTint = 0x34; // Vector[5]
}
// Parent: MaterialParam_t
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -200,7 +200,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_flValue = 0x8; // float32
}
// Parent: MaterialParam_t
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
#![allow(non_upper_case_globals, non_camel_case_types, non_snake_case, unused)]
@@ -10,7 +10,7 @@ pub mod cs2_dumper {
// Enums count: 5
pub mod materialsystem2_dll {
// Alignment: 4
// Members count: 4
// Member count: 4
#[repr(u32)]
pub enum VertJustification_e {
VERT_JUSTIFICATION_TOP = 0x0,
@@ -19,7 +19,7 @@ pub mod cs2_dumper {
VERT_JUSTIFICATION_NONE = 0x3
}
// Alignment: 4
// Members count: 3
// Member count: 3
#[repr(u32)]
pub enum LayoutPositionType_e {
LAYOUTPOSITIONTYPE_VIEWPORT_RELATIVE = 0x0,
@@ -27,7 +27,7 @@ pub mod cs2_dumper {
LAYOUTPOSITIONTYPE_NONE = 0x2
}
// Alignment: 4
// Members count: 3
// Member count: 3
#[repr(u32)]
pub enum ViewFadeMode_t {
VIEW_FADE_CONSTANT_COLOR = 0x0,
@@ -35,7 +35,7 @@ pub mod cs2_dumper {
VIEW_FADE_MOD2X = 0x2
}
// Alignment: 4
// Members count: 3
// Member count: 3
#[repr(u32)]
pub enum BloomBlendMode_t {
BLOOM_BLEND_ADD = 0x0,
@@ -43,7 +43,7 @@ pub mod cs2_dumper {
BLOOM_BLEND_BLUR = 0x2
}
// Alignment: 4
// Members count: 4
// Member count: 4
#[repr(u32)]
pub enum HorizJustification_e {
HORIZ_JUSTIFICATION_LEFT = 0x0,
@@ -52,7 +52,7 @@ pub mod cs2_dumper {
HORIZ_JUSTIFICATION_NONE = 0x3
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -60,7 +60,7 @@ pub mod cs2_dumper {
pub const m_name: usize = 0x0; // CUtlString
}
// Parent: MaterialParam_t
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -68,7 +68,7 @@ pub mod cs2_dumper {
pub const m_value: usize = 0x8; // Vector4D
}
// Parent: MaterialParam_t
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -76,7 +76,7 @@ pub mod cs2_dumper {
pub const m_value: usize = 0x8; // CUtlString
}
// Parent: None
// Fields count: 11
// Field count: 11
//
// Metadata:
// MGetKV3ClassDefaults
@@ -94,7 +94,7 @@ pub mod cs2_dumper {
pub const m_bHasColorCorrection: usize = 0x110; // bool
}
// Parent: MaterialParam_t
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -102,7 +102,7 @@ pub mod cs2_dumper {
pub const m_nValue: usize = 0x8; // int32
}
// Parent: None
// Fields count: 6
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
@@ -115,7 +115,7 @@ pub mod cs2_dumper {
pub const m_vColorTint: usize = 0x18; // Vector
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -127,7 +127,7 @@ pub mod cs2_dumper {
pub const m_flLocalContrastVignetteBlur: usize = 0x10; // float32
}
// Parent: None
// Fields count: 15
// Field count: 15
//
// Metadata:
// MGetKV3ClassDefaults
@@ -149,7 +149,7 @@ pub mod cs2_dumper {
pub const m_flMaxHighlightLum: usize = 0x38; // float32
}
// Parent: MaterialParam_t
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -157,7 +157,7 @@ pub mod cs2_dumper {
pub const m_value: usize = 0x8; // CUtlBinaryBlock
}
// Parent: None
// Fields count: 14
// Field count: 14
//
// Metadata:
// MGetKV3ClassDefaults
@@ -178,7 +178,7 @@ pub mod cs2_dumper {
pub const m_renderAttributesUsed: usize = 0x118; // CUtlVector<CUtlString>
}
// Parent: None
// Fields count: 10
// Field count: 10
//
// Metadata:
// MGetKV3ClassDefaults
@@ -195,7 +195,7 @@ pub mod cs2_dumper {
pub const m_vBlurTint: usize = 0x34; // Vector[5]
}
// Parent: MaterialParam_t
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -203,7 +203,7 @@ pub mod cs2_dumper {
pub const m_flValue: usize = 0x8; // float32
}
// Parent: MaterialParam_t
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
namespace CS2Dumper.Schemas {
// Module: networksystem.dll
@@ -7,7 +7,7 @@ namespace CS2Dumper.Schemas {
// Enums count: 0
public static class NetworksystemDll {
// Parent: None
// Fields count: 1
// Field count: 1
public static class ChangeAccessorFieldPathIndex_t {
public const nint m_Value = 0x0; // int16
}

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
#pragma once
@@ -12,7 +12,7 @@ namespace cs2_dumper {
// Enums count: 0
namespace networksystem_dll {
// Parent: None
// Fields count: 1
// Field count: 1
namespace ChangeAccessorFieldPathIndex_t {
constexpr std::ptrdiff_t m_Value = 0x0; // int16
}

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
#![allow(non_upper_case_globals, non_camel_case_types, non_snake_case, unused)]
@@ -10,7 +10,7 @@ pub mod cs2_dumper {
// Enums count: 0
pub mod networksystem_dll {
// Parent: None
// Fields count: 1
// Field count: 1
pub mod ChangeAccessorFieldPathIndex_t {
pub const m_Value: usize = 0x0; // int16
}

View File

@@ -1,47 +1,53 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 14:01:03.443608 UTC
// 2024-07-29 16:04:47.388825300 UTC
namespace CS2Dumper.Offsets {
// Module: client.dll
public static class ClientDll {
public const nint dwCSGOInput = 0x1932B10;
public const nint dwEntityList = 0x18C9E78;
public const nint dwGameEntitySystem = 0x19E75C0;
public const nint dwGameEntitySystem_getHighestEntityIndex = 0x1510;
public const nint dwGameRules = 0x1926DD0;
public const nint dwGlobalVars = 0x1730F20;
public const nint dwGlowManager = 0x19271F0;
public const nint dwLocalPlayerController = 0x1919588;
public const nint dwLocalPlayerPawn = 0x173D5A8;
public const nint dwPlantedC4 = 0x192FFB8;
public const nint dwPrediction = 0x173D470;
public const nint dwSensitivity = 0x1927B18;
public const nint dwCSGOInput = 0x1A28E50;
public const nint dwEntityList = 0x19BEED0;
public const nint dwGameEntitySystem = 0x1ADDBE8;
public const nint dwGameEntitySystem_highestEntityIndex = 0x1510;
public const nint dwGameRules = 0x1A1C688;
public const nint dwGlobalVars = 0x1818648;
public const nint dwGlowManager = 0x1A1BD70;
public const nint dwLocalPlayerController = 0x1A0E9C8;
public const nint dwLocalPlayerPawn = 0x1824A18;
public const nint dwPlantedC4 = 0x1A261C8;
public const nint dwPrediction = 0x18248D0;
public const nint dwSensitivity = 0x1A1D358;
public const nint dwSensitivity_sensitivity = 0x40;
public const nint dwViewAngles = 0x1937EA0;
public const nint dwViewMatrix = 0x192B310;
public const nint dwViewRender = 0x192BB10;
public const nint dwWeaponC4 = 0x18CD2D0;
public const nint dwViewAngles = 0x1A2E268;
public const nint dwViewMatrix = 0x1A20CF0;
public const nint dwViewRender = 0x1A21488;
public const nint dwWeaponC4 = 0x19C2960;
}
// Module: engine2.dll
public static class Engine2Dll {
public const nint dwBuildNumber = 0x518764;
public const nint dwEngineViewData = 0x5CD76C;
public const nint dwNetworkGameClient = 0x517B08;
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 dwSoundService = 0x5CD6D0;
public const nint dwWindowHeight = 0x5D109C;
public const nint dwWindowWidth = 0x5D1098;
public const nint dwBuildNumber = 0x52F834;
public const nint dwNetworkGameClient = 0x52EBA0;
public const nint dwNetworkGameClient_clientTickCount = 0x178;
public const nint dwNetworkGameClient_deltaTick = 0x278;
public const nint dwNetworkGameClient_isBackgroundMap = 0x281477;
public const nint dwNetworkGameClient_localPlayer = 0xF0;
public const nint dwNetworkGameClient_maxClients = 0x270;
public const nint dwNetworkGameClient_serverTickCount = 0x174;
public const nint dwNetworkGameClient_signOnState = 0x260;
public const nint dwWindowHeight = 0x5F0424;
public const nint dwWindowWidth = 0x5F0420;
}
// Module: inputsystem.dll
public static class InputsystemDll {
public const nint dwInputSystem = 0x377C0;
public const nint dwInputSystem = 0x387F0;
}
// Module: matchmaking.dll
public static class MatchmakingDll {
public const nint dwGameTypes = 0x1D2290;
public const nint dwGameTypes_mapName = 0x1D23B0;
public const nint dwGameTypes = 0x1A41C0;
public const nint dwGameTypes_mapName = 0x120;
}
// Module: soundsystem.dll
public static class SoundsystemDll {
public const nint dwSoundSystem = 0x334E40;
public const nint dwSoundSystem_engineViewData = 0x7C;
}
}

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 14:01:03.443608 UTC
// 2024-07-29 16:04:47.388825300 UTC
#pragma once
@@ -9,45 +9,51 @@ namespace cs2_dumper {
namespace offsets {
// Module: client.dll
namespace client_dll {
constexpr std::ptrdiff_t dwCSGOInput = 0x1932B10;
constexpr std::ptrdiff_t dwEntityList = 0x18C9E78;
constexpr std::ptrdiff_t dwGameEntitySystem = 0x19E75C0;
constexpr std::ptrdiff_t dwGameEntitySystem_getHighestEntityIndex = 0x1510;
constexpr std::ptrdiff_t dwGameRules = 0x1926DD0;
constexpr std::ptrdiff_t dwGlobalVars = 0x1730F20;
constexpr std::ptrdiff_t dwGlowManager = 0x19271F0;
constexpr std::ptrdiff_t dwLocalPlayerController = 0x1919588;
constexpr std::ptrdiff_t dwLocalPlayerPawn = 0x173D5A8;
constexpr std::ptrdiff_t dwPlantedC4 = 0x192FFB8;
constexpr std::ptrdiff_t dwPrediction = 0x173D470;
constexpr std::ptrdiff_t dwSensitivity = 0x1927B18;
constexpr std::ptrdiff_t dwCSGOInput = 0x1A28E50;
constexpr std::ptrdiff_t dwEntityList = 0x19BEED0;
constexpr std::ptrdiff_t dwGameEntitySystem = 0x1ADDBE8;
constexpr std::ptrdiff_t dwGameEntitySystem_highestEntityIndex = 0x1510;
constexpr std::ptrdiff_t dwGameRules = 0x1A1C688;
constexpr std::ptrdiff_t dwGlobalVars = 0x1818648;
constexpr std::ptrdiff_t dwGlowManager = 0x1A1BD70;
constexpr std::ptrdiff_t dwLocalPlayerController = 0x1A0E9C8;
constexpr std::ptrdiff_t dwLocalPlayerPawn = 0x1824A18;
constexpr std::ptrdiff_t dwPlantedC4 = 0x1A261C8;
constexpr std::ptrdiff_t dwPrediction = 0x18248D0;
constexpr std::ptrdiff_t dwSensitivity = 0x1A1D358;
constexpr std::ptrdiff_t dwSensitivity_sensitivity = 0x40;
constexpr std::ptrdiff_t dwViewAngles = 0x1937EA0;
constexpr std::ptrdiff_t dwViewMatrix = 0x192B310;
constexpr std::ptrdiff_t dwViewRender = 0x192BB10;
constexpr std::ptrdiff_t dwWeaponC4 = 0x18CD2D0;
constexpr std::ptrdiff_t dwViewAngles = 0x1A2E268;
constexpr std::ptrdiff_t dwViewMatrix = 0x1A20CF0;
constexpr std::ptrdiff_t dwViewRender = 0x1A21488;
constexpr std::ptrdiff_t dwWeaponC4 = 0x19C2960;
}
// Module: engine2.dll
namespace engine2_dll {
constexpr std::ptrdiff_t dwBuildNumber = 0x518764;
constexpr std::ptrdiff_t dwEngineViewData = 0x5CD76C;
constexpr std::ptrdiff_t dwNetworkGameClient = 0x517B08;
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 dwSoundService = 0x5CD6D0;
constexpr std::ptrdiff_t dwWindowHeight = 0x5D109C;
constexpr std::ptrdiff_t dwWindowWidth = 0x5D1098;
constexpr std::ptrdiff_t dwBuildNumber = 0x52F834;
constexpr std::ptrdiff_t dwNetworkGameClient = 0x52EBA0;
constexpr std::ptrdiff_t dwNetworkGameClient_clientTickCount = 0x178;
constexpr std::ptrdiff_t dwNetworkGameClient_deltaTick = 0x278;
constexpr std::ptrdiff_t dwNetworkGameClient_isBackgroundMap = 0x281477;
constexpr std::ptrdiff_t dwNetworkGameClient_localPlayer = 0xF0;
constexpr std::ptrdiff_t dwNetworkGameClient_maxClients = 0x270;
constexpr std::ptrdiff_t dwNetworkGameClient_serverTickCount = 0x174;
constexpr std::ptrdiff_t dwNetworkGameClient_signOnState = 0x260;
constexpr std::ptrdiff_t dwWindowHeight = 0x5F0424;
constexpr std::ptrdiff_t dwWindowWidth = 0x5F0420;
}
// Module: inputsystem.dll
namespace inputsystem_dll {
constexpr std::ptrdiff_t dwInputSystem = 0x377C0;
constexpr std::ptrdiff_t dwInputSystem = 0x387F0;
}
// Module: matchmaking.dll
namespace matchmaking_dll {
constexpr std::ptrdiff_t dwGameTypes = 0x1D2290;
constexpr std::ptrdiff_t dwGameTypes_mapName = 0x1D23B0;
constexpr std::ptrdiff_t dwGameTypes = 0x1A41C0;
constexpr std::ptrdiff_t dwGameTypes_mapName = 0x120;
}
// Module: soundsystem.dll
namespace soundsystem_dll {
constexpr std::ptrdiff_t dwSoundSystem = 0x334E40;
constexpr std::ptrdiff_t dwSoundSystem_engineViewData = 0x7C;
}
}
}

View File

@@ -1,40 +1,45 @@
{
"client.dll": {
"dwCSGOInput": 26422032,
"dwEntityList": 25992824,
"dwGameEntitySystem": 27162048,
"dwGameEntitySystem_getHighestEntityIndex": 5392,
"dwGameRules": 26373584,
"dwGlobalVars": 24317728,
"dwGlowManager": 26374640,
"dwLocalPlayerController": 26318216,
"dwLocalPlayerPawn": 24368552,
"dwPlantedC4": 26410936,
"dwPrediction": 24368240,
"dwSensitivity": 26376984,
"dwCSGOInput": 27430480,
"dwEntityList": 26996432,
"dwGameEntitySystem": 28171240,
"dwGameEntitySystem_highestEntityIndex": 5392,
"dwGameRules": 27379336,
"dwGlobalVars": 25265736,
"dwGlowManager": 27377008,
"dwLocalPlayerController": 27322824,
"dwLocalPlayerPawn": 25315864,
"dwPlantedC4": 27419080,
"dwPrediction": 25315536,
"dwSensitivity": 27382616,
"dwSensitivity_sensitivity": 64,
"dwViewAngles": 26443424,
"dwViewMatrix": 26391312,
"dwViewRender": 26393360,
"dwWeaponC4": 26006224
"dwViewAngles": 27452008,
"dwViewMatrix": 27397360,
"dwViewRender": 27399304,
"dwWeaponC4": 27011424
},
"engine2.dll": {
"dwBuildNumber": 5343076,
"dwEngineViewData": 6084460,
"dwNetworkGameClient": 5339912,
"dwNetworkGameClient_deltaTick": 600,
"dwNetworkGameClient_getLocalPlayer": 240,
"dwNetworkGameClient_getMaxClients": 592,
"dwNetworkGameClient_signOnState": 576,
"dwSoundService": 6084304,
"dwWindowHeight": 6099100,
"dwWindowWidth": 6099096
"dwBuildNumber": 5437492,
"dwNetworkGameClient": 5434272,
"dwNetworkGameClient_clientTickCount": 376,
"dwNetworkGameClient_deltaTick": 632,
"dwNetworkGameClient_isBackgroundMap": 2626679,
"dwNetworkGameClient_localPlayer": 240,
"dwNetworkGameClient_maxClients": 624,
"dwNetworkGameClient_serverTickCount": 372,
"dwNetworkGameClient_signOnState": 608,
"dwWindowHeight": 6226980,
"dwWindowWidth": 6226976
},
"inputsystem.dll": {
"dwInputSystem": 227264
"dwInputSystem": 231408
},
"matchmaking.dll": {
"dwGameTypes": 1909392,
"dwGameTypes_mapName": 1909680
"dwGameTypes": 1720768,
"dwGameTypes_mapName": 288
},
"soundsystem.dll": {
"dwSoundSystem": 3362368,
"dwSoundSystem_engineViewData": 124
}
}

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 14:01:03.443608 UTC
// 2024-07-29 16:04:47.388825300 UTC
#![allow(non_upper_case_globals, unused)]
@@ -7,45 +7,51 @@ pub mod cs2_dumper {
pub mod offsets {
// Module: client.dll
pub mod client_dll {
pub const dwCSGOInput: usize = 0x1932B10;
pub const dwEntityList: usize = 0x18C9E78;
pub const dwGameEntitySystem: usize = 0x19E75C0;
pub const dwGameEntitySystem_getHighestEntityIndex: usize = 0x1510;
pub const dwGameRules: usize = 0x1926DD0;
pub const dwGlobalVars: usize = 0x1730F20;
pub const dwGlowManager: usize = 0x19271F0;
pub const dwLocalPlayerController: usize = 0x1919588;
pub const dwLocalPlayerPawn: usize = 0x173D5A8;
pub const dwPlantedC4: usize = 0x192FFB8;
pub const dwPrediction: usize = 0x173D470;
pub const dwSensitivity: usize = 0x1927B18;
pub const dwCSGOInput: usize = 0x1A28E50;
pub const dwEntityList: usize = 0x19BEED0;
pub const dwGameEntitySystem: usize = 0x1ADDBE8;
pub const dwGameEntitySystem_highestEntityIndex: usize = 0x1510;
pub const dwGameRules: usize = 0x1A1C688;
pub const dwGlobalVars: usize = 0x1818648;
pub const dwGlowManager: usize = 0x1A1BD70;
pub const dwLocalPlayerController: usize = 0x1A0E9C8;
pub const dwLocalPlayerPawn: usize = 0x1824A18;
pub const dwPlantedC4: usize = 0x1A261C8;
pub const dwPrediction: usize = 0x18248D0;
pub const dwSensitivity: usize = 0x1A1D358;
pub const dwSensitivity_sensitivity: usize = 0x40;
pub const dwViewAngles: usize = 0x1937EA0;
pub const dwViewMatrix: usize = 0x192B310;
pub const dwViewRender: usize = 0x192BB10;
pub const dwWeaponC4: usize = 0x18CD2D0;
pub const dwViewAngles: usize = 0x1A2E268;
pub const dwViewMatrix: usize = 0x1A20CF0;
pub const dwViewRender: usize = 0x1A21488;
pub const dwWeaponC4: usize = 0x19C2960;
}
// Module: engine2.dll
pub mod engine2_dll {
pub const dwBuildNumber: usize = 0x518764;
pub const dwEngineViewData: usize = 0x5CD76C;
pub const dwNetworkGameClient: usize = 0x517B08;
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 dwSoundService: usize = 0x5CD6D0;
pub const dwWindowHeight: usize = 0x5D109C;
pub const dwWindowWidth: usize = 0x5D1098;
pub const dwBuildNumber: usize = 0x52F834;
pub const dwNetworkGameClient: usize = 0x52EBA0;
pub const dwNetworkGameClient_clientTickCount: usize = 0x178;
pub const dwNetworkGameClient_deltaTick: usize = 0x278;
pub const dwNetworkGameClient_isBackgroundMap: usize = 0x281477;
pub const dwNetworkGameClient_localPlayer: usize = 0xF0;
pub const dwNetworkGameClient_maxClients: usize = 0x270;
pub const dwNetworkGameClient_serverTickCount: usize = 0x174;
pub const dwNetworkGameClient_signOnState: usize = 0x260;
pub const dwWindowHeight: usize = 0x5F0424;
pub const dwWindowWidth: usize = 0x5F0420;
}
// Module: inputsystem.dll
pub mod inputsystem_dll {
pub const dwInputSystem: usize = 0x377C0;
pub const dwInputSystem: usize = 0x387F0;
}
// Module: matchmaking.dll
pub mod matchmaking_dll {
pub const dwGameTypes: usize = 0x1D2290;
pub const dwGameTypes_mapName: usize = 0x1D23B0;
pub const dwGameTypes: usize = 0x1A41C0;
pub const dwGameTypes_mapName: usize = 0x120;
}
// Module: soundsystem.dll
pub mod soundsystem_dll {
pub const dwSoundSystem: usize = 0x334E40;
pub const dwSoundSystem_engineViewData: usize = 0x7C;
}
}
}

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
namespace CS2Dumper.Schemas {
// Module: panorama.dll
@@ -7,7 +7,7 @@ namespace CS2Dumper.Schemas {
// Enums count: 2
public static class PanoramaDll {
// Alignment: 4
// Members count: 13
// Member count: 13
public enum ELayoutNodeType : uint {
ROOT = 0x0,
STYLES = 0x1,
@@ -24,7 +24,7 @@ namespace CS2Dumper.Schemas {
REFERENCE_PASSTHROUGH = 0xC
}
// Alignment: 4
// Members count: 15
// Member count: 16
public enum EStyleNodeType : uint {
ROOT = 0x0,
EXPRESSION = 0x1,
@@ -40,7 +40,8 @@ namespace CS2Dumper.Schemas {
EXPRESSION_CONCAT = 0xB,
REFERENCE_CONTENT = 0xC,
REFERENCE_COMPILED = 0xD,
REFERENCE_PASSTHROUGH = 0xE
REFERENCE_PASSTHROUGH = 0xE,
COMPILER_CONDITIONAL = 0xF
}
}
}

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
#pragma once
@@ -12,7 +12,7 @@ namespace cs2_dumper {
// Enums count: 2
namespace panorama_dll {
// Alignment: 4
// Members count: 13
// Member count: 13
enum class ELayoutNodeType : uint32_t {
ROOT = 0x0,
STYLES = 0x1,
@@ -29,7 +29,7 @@ namespace cs2_dumper {
REFERENCE_PASSTHROUGH = 0xC
};
// Alignment: 4
// Members count: 15
// Member count: 16
enum class EStyleNodeType : uint32_t {
ROOT = 0x0,
EXPRESSION = 0x1,
@@ -45,7 +45,8 @@ namespace cs2_dumper {
EXPRESSION_CONCAT = 0xB,
REFERENCE_CONTENT = 0xC,
REFERENCE_COMPILED = 0xD,
REFERENCE_PASSTHROUGH = 0xE
REFERENCE_PASSTHROUGH = 0xE,
COMPILER_CONDITIONAL = 0xF
};
}
}

View File

@@ -24,6 +24,7 @@
"EStyleNodeType": {
"alignment": 4,
"members": {
"COMPILER_CONDITIONAL": 15,
"DEFINE": 3,
"EXPRESSION": 1,
"EXPRESSION_CONCAT": 11,

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
#![allow(non_upper_case_globals, non_camel_case_types, non_snake_case, unused)]
@@ -10,7 +10,7 @@ pub mod cs2_dumper {
// Enums count: 2
pub mod panorama_dll {
// Alignment: 4
// Members count: 13
// Member count: 13
#[repr(u32)]
pub enum ELayoutNodeType {
ROOT = 0x0,
@@ -28,7 +28,7 @@ pub mod cs2_dumper {
REFERENCE_PASSTHROUGH = 0xC
}
// Alignment: 4
// Members count: 15
// Member count: 16
#[repr(u32)]
pub enum EStyleNodeType {
ROOT = 0x0,
@@ -45,7 +45,8 @@ pub mod cs2_dumper {
EXPRESSION_CONCAT = 0xB,
REFERENCE_CONTENT = 0xC,
REFERENCE_COMPILED = 0xD,
REFERENCE_PASSTHROUGH = 0xE
REFERENCE_PASSTHROUGH = 0xE,
COMPILER_CONDITIONAL = 0xF
}
}
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
namespace CS2Dumper.Schemas {
// Module: rendersystemdx11.dll
@@ -7,7 +7,7 @@ namespace CS2Dumper.Schemas {
// Enums count: 5
public static class Rendersystemdx11Dll {
// Alignment: 4
// Members count: 13
// Member count: 13
public enum RenderPrimitiveType_t : uint {
RENDER_PRIM_POINTS = 0x0,
RENDER_PRIM_LINES = 0x1,
@@ -24,7 +24,7 @@ namespace CS2Dumper.Schemas {
RENDER_PRIM_TYPE_COUNT = 0xC
}
// Alignment: 4
// Members count: 12
// Member count: 13
public enum RenderBufferFlags_t : uint {
RENDER_BUFFER_USAGE_VERTEX_BUFFER = 0x1,
RENDER_BUFFER_USAGE_INDEX_BUFFER = 0x2,
@@ -37,10 +37,11 @@ namespace CS2Dumper.Schemas {
RENDER_BUFFER_UAV_DRAW_INDIRECT_ARGS = 0x100,
RENDER_BUFFER_ACCELERATION_STRUCTURE = 0x200,
RENDER_BUFFER_SHADER_BINDING_TABLE = 0x400,
RENDER_BUFFER_PER_FRAME_WRITE_ONCE = 0x800
RENDER_BUFFER_PER_FRAME_WRITE_ONCE = 0x800,
RENDER_BUFFER_POOL_ALLOCATED = 0x1000
}
// Alignment: 1
// Members count: 8
// Member count: 8
public enum RenderMultisampleType_t : byte {
RENDER_MULTISAMPLE_INVALID = 0xFFFFFFFFFFFFFFFF,
RENDER_MULTISAMPLE_NONE = 0x0,
@@ -52,7 +53,7 @@ namespace CS2Dumper.Schemas {
RENDER_MULTISAMPLE_TYPE_COUNT = 0x6
}
// Alignment: 4
// Members count: 4
// Member count: 4
public enum InputLayoutVariation_t : uint {
INPUT_LAYOUT_VARIATION_DEFAULT = 0x0,
INPUT_LAYOUT_VARIATION_STREAM1_INSTANCEID = 0x1,
@@ -60,14 +61,14 @@ namespace CS2Dumper.Schemas {
INPUT_LAYOUT_VARIATION_MAX = 0x3
}
// Alignment: 4
// Members count: 3
// Member count: 3
public enum RenderSlotType_t : uint {
RENDER_SLOT_INVALID = 0xFFFFFFFFFFFFFFFF,
RENDER_SLOT_PER_VERTEX = 0x0,
RENDER_SLOT_PER_INSTANCE = 0x1
}
// Parent: None
// Fields count: 4
// Field count: 4
public static class VsInputSignatureElement_t {
public const nint m_pName = 0x0; // char[64]
public const nint m_pSemantic = 0x40; // char[64]
@@ -75,12 +76,12 @@ namespace CS2Dumper.Schemas {
public const nint m_nD3DSemanticIndex = 0xC0; // int32
}
// Parent: None
// Fields count: 1
// Field count: 1
public static class VsInputSignature_t {
public const nint m_elems = 0x0; // CUtlVector<VsInputSignatureElement_t>
}
// Parent: None
// Fields count: 7
// Field count: 7
public static class RenderInputLayoutField_t {
public const nint m_pSemanticName = 0x0; // uint8[32]
public const nint m_nSemanticIndex = 0x20; // int32

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
#pragma once
@@ -12,7 +12,7 @@ namespace cs2_dumper {
// Enums count: 5
namespace rendersystemdx11_dll {
// Alignment: 4
// Members count: 13
// Member count: 13
enum class RenderPrimitiveType_t : uint32_t {
RENDER_PRIM_POINTS = 0x0,
RENDER_PRIM_LINES = 0x1,
@@ -29,7 +29,7 @@ namespace cs2_dumper {
RENDER_PRIM_TYPE_COUNT = 0xC
};
// Alignment: 4
// Members count: 12
// Member count: 13
enum class RenderBufferFlags_t : uint32_t {
RENDER_BUFFER_USAGE_VERTEX_BUFFER = 0x1,
RENDER_BUFFER_USAGE_INDEX_BUFFER = 0x2,
@@ -42,10 +42,11 @@ namespace cs2_dumper {
RENDER_BUFFER_UAV_DRAW_INDIRECT_ARGS = 0x100,
RENDER_BUFFER_ACCELERATION_STRUCTURE = 0x200,
RENDER_BUFFER_SHADER_BINDING_TABLE = 0x400,
RENDER_BUFFER_PER_FRAME_WRITE_ONCE = 0x800
RENDER_BUFFER_PER_FRAME_WRITE_ONCE = 0x800,
RENDER_BUFFER_POOL_ALLOCATED = 0x1000
};
// Alignment: 1
// Members count: 8
// Member count: 8
enum class RenderMultisampleType_t : uint8_t {
RENDER_MULTISAMPLE_INVALID = 0xFFFFFFFFFFFFFFFF,
RENDER_MULTISAMPLE_NONE = 0x0,
@@ -57,7 +58,7 @@ namespace cs2_dumper {
RENDER_MULTISAMPLE_TYPE_COUNT = 0x6
};
// Alignment: 4
// Members count: 4
// Member count: 4
enum class InputLayoutVariation_t : uint32_t {
INPUT_LAYOUT_VARIATION_DEFAULT = 0x0,
INPUT_LAYOUT_VARIATION_STREAM1_INSTANCEID = 0x1,
@@ -65,14 +66,14 @@ namespace cs2_dumper {
INPUT_LAYOUT_VARIATION_MAX = 0x3
};
// Alignment: 4
// Members count: 3
// Member count: 3
enum class RenderSlotType_t : uint32_t {
RENDER_SLOT_INVALID = 0xFFFFFFFFFFFFFFFF,
RENDER_SLOT_PER_VERTEX = 0x0,
RENDER_SLOT_PER_INSTANCE = 0x1
};
// Parent: None
// Fields count: 4
// Field count: 4
namespace VsInputSignatureElement_t {
constexpr std::ptrdiff_t m_pName = 0x0; // char[64]
constexpr std::ptrdiff_t m_pSemantic = 0x40; // char[64]
@@ -80,12 +81,12 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nD3DSemanticIndex = 0xC0; // int32
}
// Parent: None
// Fields count: 1
// Field count: 1
namespace VsInputSignature_t {
constexpr std::ptrdiff_t m_elems = 0x0; // CUtlVector<VsInputSignatureElement_t>
}
// Parent: None
// Fields count: 7
// Field count: 7
namespace RenderInputLayoutField_t {
constexpr std::ptrdiff_t m_pSemanticName = 0x0; // uint8[32]
constexpr std::ptrdiff_t m_nSemanticIndex = 0x20; // int32

View File

@@ -50,6 +50,7 @@
"RENDER_BUFFER_APPEND_CONSUME_BUFFER": 64,
"RENDER_BUFFER_BYTEADDRESS_BUFFER": 16,
"RENDER_BUFFER_PER_FRAME_WRITE_ONCE": 2048,
"RENDER_BUFFER_POOL_ALLOCATED": 4096,
"RENDER_BUFFER_SHADER_BINDING_TABLE": 1024,
"RENDER_BUFFER_STRUCTURED_BUFFER": 32,
"RENDER_BUFFER_UAV_COUNTER": 128,

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
#![allow(non_upper_case_globals, non_camel_case_types, non_snake_case, unused)]
@@ -10,7 +10,7 @@ pub mod cs2_dumper {
// Enums count: 5
pub mod rendersystemdx11_dll {
// Alignment: 4
// Members count: 13
// Member count: 13
#[repr(u32)]
pub enum RenderPrimitiveType_t {
RENDER_PRIM_POINTS = 0x0,
@@ -28,7 +28,7 @@ pub mod cs2_dumper {
RENDER_PRIM_TYPE_COUNT = 0xC
}
// Alignment: 4
// Members count: 12
// Member count: 13
#[repr(u32)]
pub enum RenderBufferFlags_t {
RENDER_BUFFER_USAGE_VERTEX_BUFFER = 0x1,
@@ -42,10 +42,11 @@ pub mod cs2_dumper {
RENDER_BUFFER_UAV_DRAW_INDIRECT_ARGS = 0x100,
RENDER_BUFFER_ACCELERATION_STRUCTURE = 0x200,
RENDER_BUFFER_SHADER_BINDING_TABLE = 0x400,
RENDER_BUFFER_PER_FRAME_WRITE_ONCE = 0x800
RENDER_BUFFER_PER_FRAME_WRITE_ONCE = 0x800,
RENDER_BUFFER_POOL_ALLOCATED = 0x1000
}
// Alignment: 1
// Members count: 8
// Member count: 8
#[repr(u8)]
pub enum RenderMultisampleType_t {
RENDER_MULTISAMPLE_INVALID = u8::MAX,
@@ -58,7 +59,7 @@ pub mod cs2_dumper {
RENDER_MULTISAMPLE_TYPE_COUNT = 0x6
}
// Alignment: 4
// Members count: 4
// Member count: 4
#[repr(u32)]
pub enum InputLayoutVariation_t {
INPUT_LAYOUT_VARIATION_DEFAULT = 0x0,
@@ -67,7 +68,7 @@ pub mod cs2_dumper {
INPUT_LAYOUT_VARIATION_MAX = 0x3
}
// Alignment: 4
// Members count: 3
// Member count: 3
#[repr(u32)]
pub enum RenderSlotType_t {
RENDER_SLOT_INVALID = u32::MAX,
@@ -75,7 +76,7 @@ pub mod cs2_dumper {
RENDER_SLOT_PER_INSTANCE = 0x1
}
// Parent: None
// Fields count: 4
// Field count: 4
pub mod VsInputSignatureElement_t {
pub const m_pName: usize = 0x0; // char[64]
pub const m_pSemantic: usize = 0x40; // char[64]
@@ -83,12 +84,12 @@ pub mod cs2_dumper {
pub const m_nD3DSemanticIndex: usize = 0xC0; // int32
}
// Parent: None
// Fields count: 1
// Field count: 1
pub mod VsInputSignature_t {
pub const m_elems: usize = 0x0; // CUtlVector<VsInputSignatureElement_t>
}
// Parent: None
// Fields count: 7
// Field count: 7
pub mod RenderInputLayoutField_t {
pub const m_pSemanticName: usize = 0x0; // uint8[32]
pub const m_nSemanticIndex: usize = 0x20; // int32

View File

@@ -1,13 +1,13 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
namespace CS2Dumper.Schemas {
// Module: resourcesystem.dll
// Classes count: 59
// Classes count: 58
// Enums count: 2
public static class ResourcesystemDll {
// Alignment: 1
// Members count: 9
// Member count: 9
public enum FuseVariableType_t : byte {
INVALID = 0x0,
BOOL = 0x1,
@@ -20,68 +20,68 @@ namespace CS2Dumper.Schemas {
FLOAT32 = 0x8
}
// Alignment: 1
// Members count: 2
// Member count: 2
public enum FuseVariableAccess_t : byte {
WRITABLE = 0x0,
READ_ONLY = 0x1
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCResponseRulesList {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCDotaItemDefinitionResource {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCMorphSetData {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCChoreoSceneFileData {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCVSoundStackScriptList {
}
// Parent: None
// Fields count: 2
// Field count: 2
public static class PackedAABB_t {
public const nint m_nPackedMin = 0x0; // uint32
public const nint m_nPackedMax = 0x4; // uint32
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCVPhysXSurfacePropertiesList {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeManifestTestResource_t {
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -91,33 +91,33 @@ namespace CS2Dumper.Schemas {
public const nint m_flValue = 0xC; // float32
}
// Parent: None
// Fields count: 1
// Field count: 1
public static class FuseFunctionIndex_t {
public const nint m_Value = 0x0; // uint16
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCGcExportableExternalData {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeIAnimGraphModelBinding {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCJavaScriptResource {
}
// Parent: None
// Fields count: 6
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
@@ -130,21 +130,21 @@ namespace CS2Dumper.Schemas {
public const nint m_functionMap = 0x88; // CUtlHashtable<CUtlStringToken,int32>
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCRenderMesh {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCVoxelVisibility {
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -152,48 +152,48 @@ namespace CS2Dumper.Schemas {
public const nint m_name = 0x0; // CUtlString
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCPhysAggregateData {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCNmClip {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeWorld_t {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeProceduralTestResource_t {
}
// Parent: None
// Fields count: 2
// Field count: 2
public static class AABB_t {
public const nint m_vMinBounds = 0x0; // Vector
public const nint m_vMaxBounds = 0xC; // Vector
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCPostProcessingResource {
}
// Parent: None
// Fields count: 6
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
@@ -206,14 +206,14 @@ namespace CS2Dumper.Schemas {
public const nint m_eAccess = 0x10; // FuseVariableAccess_t
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeIParticleSnapshot {
}
// Parent: None
// Fields count: 4
// Field count: 4
public static class FourQuaternions {
public const nint x = 0x0; // fltx4
public const nint y = 0x10; // fltx4
@@ -221,98 +221,98 @@ namespace CS2Dumper.Schemas {
public const nint w = 0x30; // fltx4
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCPanoramaLayout {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCTypeScriptResource {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCNmSkeleton {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeTestResource_t {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCAnimationGroup {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCVSoundEventScriptList {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCVoiceContainerBase {
}
// Parent: None
// Fields count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCNmGraph {
}
// Parent: None
// Fields count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCDACGameDefsData {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCPanoramaStyle {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCWorldNode {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCNmGraphVariation {
}
// Parent: None
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCCSGOEconItem {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCNmGraphDefinition {
}
// Parent: None
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCSmartProp {
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -323,56 +323,56 @@ namespace CS2Dumper.Schemas {
public const nint m_nMaxTempVarsUsed = 0x48; // int32
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCCompositeMaterialKit {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCVMixListResource {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCAnimData {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeIMaterial2 {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeIVectorGraphic {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCPanoramaDynamicImages {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeIPulseGraphDef {
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -384,61 +384,54 @@ namespace CS2Dumper.Schemas {
public const nint m_bIsPure = 0x1A; // bool
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCVDataResource {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCModel {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCDOTANovelsList {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCTextureBase {
}
// Parent: None
// Fields count: 1
// Field count: 1
public static class FuseVariableIndex_t {
public const nint m_Value = 0x0; // uint16
}
// Parent: None
// Fields count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCNmGraphDataSet {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeIParticleSystemDefinition {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCSequenceGroupData {
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -447,14 +440,14 @@ namespace CS2Dumper.Schemas {
public const nint m_child = 0x8; // CStrongHandle<InfoForResourceTypeManifestTestResource_t>
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCEntityLump {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
#pragma once
@@ -8,11 +8,11 @@
namespace cs2_dumper {
namespace schemas {
// Module: resourcesystem.dll
// Classes count: 59
// Classes count: 58
// Enums count: 2
namespace resourcesystem_dll {
// Alignment: 1
// Members count: 9
// Member count: 9
enum class FuseVariableType_t : uint8_t {
INVALID = 0x0,
BOOL = 0x1,
@@ -25,68 +25,68 @@ namespace cs2_dumper {
FLOAT32 = 0x8
};
// Alignment: 1
// Members count: 2
// Member count: 2
enum class FuseVariableAccess_t : uint8_t {
WRITABLE = 0x0,
READ_ONLY = 0x1
};
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCResponseRulesList {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCDotaItemDefinitionResource {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCMorphSetData {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCChoreoSceneFileData {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCVSoundStackScriptList {
}
// Parent: None
// Fields count: 2
// Field count: 2
namespace PackedAABB_t {
constexpr std::ptrdiff_t m_nPackedMin = 0x0; // uint32
constexpr std::ptrdiff_t m_nPackedMax = 0x4; // uint32
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCVPhysXSurfacePropertiesList {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeManifestTestResource_t {
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -96,33 +96,33 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_flValue = 0xC; // float32
}
// Parent: None
// Fields count: 1
// Field count: 1
namespace FuseFunctionIndex_t {
constexpr std::ptrdiff_t m_Value = 0x0; // uint16
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCGcExportableExternalData {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeIAnimGraphModelBinding {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCJavaScriptResource {
}
// Parent: None
// Fields count: 6
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
@@ -135,21 +135,21 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_functionMap = 0x88; // CUtlHashtable<CUtlStringToken,int32>
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCRenderMesh {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCVoxelVisibility {
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -157,48 +157,48 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_name = 0x0; // CUtlString
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCPhysAggregateData {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCNmClip {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeWorld_t {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeProceduralTestResource_t {
}
// Parent: None
// Fields count: 2
// Field count: 2
namespace AABB_t {
constexpr std::ptrdiff_t m_vMinBounds = 0x0; // Vector
constexpr std::ptrdiff_t m_vMaxBounds = 0xC; // Vector
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCPostProcessingResource {
}
// Parent: None
// Fields count: 6
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
@@ -211,14 +211,14 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_eAccess = 0x10; // FuseVariableAccess_t
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeIParticleSnapshot {
}
// Parent: None
// Fields count: 4
// Field count: 4
namespace FourQuaternions {
constexpr std::ptrdiff_t x = 0x0; // fltx4
constexpr std::ptrdiff_t y = 0x10; // fltx4
@@ -226,98 +226,98 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t w = 0x30; // fltx4
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCPanoramaLayout {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCTypeScriptResource {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCNmSkeleton {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeTestResource_t {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCAnimationGroup {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCVSoundEventScriptList {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCVoiceContainerBase {
}
// Parent: None
// Fields count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCNmGraph {
}
// Parent: None
// Fields count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCDACGameDefsData {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCPanoramaStyle {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCWorldNode {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCNmGraphVariation {
}
// Parent: None
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCCSGOEconItem {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCNmGraphDefinition {
}
// Parent: None
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCSmartProp {
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -328,56 +328,56 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nMaxTempVarsUsed = 0x48; // int32
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCCompositeMaterialKit {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCVMixListResource {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCAnimData {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeIMaterial2 {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeIVectorGraphic {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCPanoramaDynamicImages {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeIPulseGraphDef {
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -389,61 +389,54 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_bIsPure = 0x1A; // bool
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCVDataResource {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCModel {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCDOTANovelsList {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCTextureBase {
}
// Parent: None
// Fields count: 1
// Field count: 1
namespace FuseVariableIndex_t {
constexpr std::ptrdiff_t m_Value = 0x0; // uint16
}
// Parent: None
// Fields count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCNmGraphDataSet {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeIParticleSystemDefinition {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCSequenceGroupData {
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -452,14 +445,14 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_child = 0x8; // CStrongHandle<InfoForResourceTypeManifestTestResource_t>
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCEntityLump {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType

View File

@@ -145,16 +145,6 @@
],
"parent": null
},
"InfoForResourceTypeCDACGameDefsData": {
"fields": {},
"metadata": [
{
"name": "MResourceTypeForInfoType",
"type": "Unknown"
}
],
"parent": null
},
"InfoForResourceTypeCDOTANovelsList": {
"fields": {},
"metadata": [
@@ -245,7 +235,7 @@
],
"parent": null
},
"InfoForResourceTypeCNmGraph": {
"InfoForResourceTypeCNmGraphDefinition": {
"fields": {},
"metadata": [
{
@@ -255,7 +245,7 @@
],
"parent": null
},
"InfoForResourceTypeCNmGraphDataSet": {
"InfoForResourceTypeCNmGraphVariation": {
"fields": {},
"metadata": [
{

View File

@@ -1,16 +1,16 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
#![allow(non_upper_case_globals, non_camel_case_types, non_snake_case, unused)]
pub mod cs2_dumper {
pub mod schemas {
// Module: resourcesystem.dll
// Classes count: 59
// Classes count: 58
// Enums count: 2
pub mod resourcesystem_dll {
// Alignment: 1
// Members count: 9
// Member count: 9
#[repr(u8)]
pub enum FuseVariableType_t {
INVALID = 0x0,
@@ -24,69 +24,69 @@ pub mod cs2_dumper {
FLOAT32 = 0x8
}
// Alignment: 1
// Members count: 2
// Member count: 2
#[repr(u8)]
pub enum FuseVariableAccess_t {
WRITABLE = 0x0,
READ_ONLY = 0x1
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCResponseRulesList {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCDotaItemDefinitionResource {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCMorphSetData {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCChoreoSceneFileData {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCVSoundStackScriptList {
}
// Parent: None
// Fields count: 2
// Field count: 2
pub mod PackedAABB_t {
pub const m_nPackedMin: usize = 0x0; // uint32
pub const m_nPackedMax: usize = 0x4; // uint32
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCVPhysXSurfacePropertiesList {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeManifestTestResource_t {
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -96,33 +96,33 @@ pub mod cs2_dumper {
pub const m_flValue: usize = 0xC; // float32
}
// Parent: None
// Fields count: 1
// Field count: 1
pub mod FuseFunctionIndex_t {
pub const m_Value: usize = 0x0; // uint16
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCGcExportableExternalData {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeIAnimGraphModelBinding {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCJavaScriptResource {
}
// Parent: None
// Fields count: 6
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
@@ -135,21 +135,21 @@ pub mod cs2_dumper {
pub const m_functionMap: usize = 0x88; // CUtlHashtable<CUtlStringToken,int32>
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCRenderMesh {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCVoxelVisibility {
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -157,48 +157,48 @@ pub mod cs2_dumper {
pub const m_name: usize = 0x0; // CUtlString
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCPhysAggregateData {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCNmClip {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeWorld_t {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeProceduralTestResource_t {
}
// Parent: None
// Fields count: 2
// Field count: 2
pub mod AABB_t {
pub const m_vMinBounds: usize = 0x0; // Vector
pub const m_vMaxBounds: usize = 0xC; // Vector
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCPostProcessingResource {
}
// Parent: None
// Fields count: 6
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
@@ -211,14 +211,14 @@ pub mod cs2_dumper {
pub const m_eAccess: usize = 0x10; // FuseVariableAccess_t
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeIParticleSnapshot {
}
// Parent: None
// Fields count: 4
// Field count: 4
pub mod FourQuaternions {
pub const x: usize = 0x0; // fltx4
pub const y: usize = 0x10; // fltx4
@@ -226,98 +226,98 @@ pub mod cs2_dumper {
pub const w: usize = 0x30; // fltx4
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCPanoramaLayout {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCTypeScriptResource {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCNmSkeleton {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeTestResource_t {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCAnimationGroup {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCVSoundEventScriptList {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCVoiceContainerBase {
}
// Parent: None
// Fields count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCNmGraph {
}
// Parent: None
// Fields count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCDACGameDefsData {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCPanoramaStyle {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCWorldNode {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCNmGraphVariation {
}
// Parent: None
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCCSGOEconItem {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCNmGraphDefinition {
}
// Parent: None
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCSmartProp {
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -328,56 +328,56 @@ pub mod cs2_dumper {
pub const m_nMaxTempVarsUsed: usize = 0x48; // int32
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCCompositeMaterialKit {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCVMixListResource {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCAnimData {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeIMaterial2 {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeIVectorGraphic {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCPanoramaDynamicImages {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeIPulseGraphDef {
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -389,61 +389,54 @@ pub mod cs2_dumper {
pub const m_bIsPure: usize = 0x1A; // bool
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCVDataResource {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCModel {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCDOTANovelsList {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCTextureBase {
}
// Parent: None
// Fields count: 1
// Field count: 1
pub mod FuseVariableIndex_t {
pub const m_Value: usize = 0x0; // uint16
}
// Parent: None
// Fields count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCNmGraphDataSet {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeIParticleSystemDefinition {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCSequenceGroupData {
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -452,14 +445,14 @@ pub mod cs2_dumper {
pub const m_child: usize = 0x8; // CStrongHandle<InfoForResourceTypeManifestTestResource_t>
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCEntityLump {
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
namespace CS2Dumper.Schemas {
// Module: scenesystem.dll
@@ -7,7 +7,7 @@ namespace CS2Dumper.Schemas {
// Enums count: 1
public static class ScenesystemDll {
// Alignment: 1
// Members count: 4
// Member count: 4
public enum DisableShadows_t : byte {
kDisableShadows_None = 0x0,
kDisableShadows_All = 0x1,
@@ -15,7 +15,7 @@ namespace CS2Dumper.Schemas {
kDisableShadows_Realtime = 0x3
}
// Parent: None
// Fields count: 10
// Field count: 10
//
// Metadata:
// MGetKV3ClassDefaults
@@ -32,7 +32,7 @@ namespace CS2Dumper.Schemas {
public const nint m_nFormat = 0x2C; // int32
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -41,7 +41,7 @@ namespace CS2Dumper.Schemas {
public const nint m_nFrameCount = 0x8; // uint64
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -50,14 +50,14 @@ namespace CS2Dumper.Schemas {
public const nint m_ViewName = 0x8; // CUtlString
}
// Parent: CSSDSMsg_LayerBase
// Fields count: 0
// Field count: 0
//
// Metadata:
// MGetKV3ClassDefaults
public static class CSSDSMsg_PostLayer {
}
// Parent: None
// Fields count: 6
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
@@ -70,14 +70,14 @@ namespace CS2Dumper.Schemas {
public const nint m_displayText = 0x30; // CUtlString
}
// Parent: CSSDSMsg_LayerBase
// Fields count: 0
// Field count: 0
//
// Metadata:
// MGetKV3ClassDefaults
public static class CSSDSMsg_PreLayer {
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -87,7 +87,7 @@ namespace CS2Dumper.Schemas {
public const nint m_Targets = 0x18; // CUtlVector<CSSDSMsg_ViewTarget>
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -96,7 +96,7 @@ namespace CS2Dumper.Schemas {
public const nint m_ViewName = 0x10; // CUtlString
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
#pragma once
@@ -12,7 +12,7 @@ namespace cs2_dumper {
// Enums count: 1
namespace scenesystem_dll {
// Alignment: 1
// Members count: 4
// Member count: 4
enum class DisableShadows_t : uint8_t {
kDisableShadows_None = 0x0,
kDisableShadows_All = 0x1,
@@ -20,7 +20,7 @@ namespace cs2_dumper {
kDisableShadows_Realtime = 0x3
};
// Parent: None
// Fields count: 10
// Field count: 10
//
// Metadata:
// MGetKV3ClassDefaults
@@ -37,7 +37,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nFormat = 0x2C; // int32
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -46,7 +46,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nFrameCount = 0x8; // uint64
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -55,14 +55,14 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_ViewName = 0x8; // CUtlString
}
// Parent: CSSDSMsg_LayerBase
// Fields count: 0
// Field count: 0
//
// Metadata:
// MGetKV3ClassDefaults
namespace CSSDSMsg_PostLayer {
}
// Parent: None
// Fields count: 6
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
@@ -75,14 +75,14 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_displayText = 0x30; // CUtlString
}
// Parent: CSSDSMsg_LayerBase
// Fields count: 0
// Field count: 0
//
// Metadata:
// MGetKV3ClassDefaults
namespace CSSDSMsg_PreLayer {
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -92,7 +92,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_Targets = 0x18; // CUtlVector<CSSDSMsg_ViewTarget>
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -101,7 +101,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_ViewName = 0x10; // CUtlString
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
#![allow(non_upper_case_globals, non_camel_case_types, non_snake_case, unused)]
@@ -10,7 +10,7 @@ pub mod cs2_dumper {
// Enums count: 1
pub mod scenesystem_dll {
// Alignment: 1
// Members count: 4
// Member count: 4
#[repr(u8)]
pub enum DisableShadows_t {
kDisableShadows_None = 0x0,
@@ -19,7 +19,7 @@ pub mod cs2_dumper {
kDisableShadows_Realtime = 0x3
}
// Parent: None
// Fields count: 10
// Field count: 10
//
// Metadata:
// MGetKV3ClassDefaults
@@ -36,7 +36,7 @@ pub mod cs2_dumper {
pub const m_nFormat: usize = 0x2C; // int32
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -45,7 +45,7 @@ pub mod cs2_dumper {
pub const m_nFrameCount: usize = 0x8; // uint64
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -54,14 +54,14 @@ pub mod cs2_dumper {
pub const m_ViewName: usize = 0x8; // CUtlString
}
// Parent: CSSDSMsg_LayerBase
// Fields count: 0
// Field count: 0
//
// Metadata:
// MGetKV3ClassDefaults
pub mod CSSDSMsg_PostLayer {
}
// Parent: None
// Fields count: 6
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
@@ -74,14 +74,14 @@ pub mod cs2_dumper {
pub const m_displayText: usize = 0x30; // CUtlString
}
// Parent: CSSDSMsg_LayerBase
// Fields count: 0
// Field count: 0
//
// Metadata:
// MGetKV3ClassDefaults
pub mod CSSDSMsg_PreLayer {
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -91,7 +91,7 @@ pub mod cs2_dumper {
pub const m_Targets: usize = 0x18; // CUtlVector<CSSDSMsg_ViewTarget>
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -100,7 +100,7 @@ pub mod cs2_dumper {
pub const m_ViewName: usize = 0x10; // CUtlString
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
namespace CS2Dumper.Schemas {
// Module: schemasystem.dll
@@ -7,7 +7,7 @@ namespace CS2Dumper.Schemas {
// Enums count: 2
public static class SchemasystemDll {
// Alignment: 1
// Members count: 81
// Member count: 81
public enum fieldtype_t : byte {
FIELD_VOID = 0x0,
FIELD_FLOAT32 = 0x1,
@@ -92,21 +92,21 @@ namespace CS2Dumper.Schemas {
FIELD_TYPECOUNT = 0x50
}
// Alignment: 4
// Members count: 3
// Member count: 3
public enum ThreeState_t : uint {
TRS_FALSE = 0x0,
TRS_TRUE = 0x1,
TRS_NONE = 0x2
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeCResourceManifestInternal {
}
// Parent: None
// Fields count: 22
// Field count: 22
public static class CSchemaSystemInternalRegistration {
public const nint m_Vector2D = 0x0; // Vector2D
public const nint m_Vector = 0x8; // Vector
@@ -132,7 +132,7 @@ namespace CS2Dumper.Schemas {
public const nint m_KV3 = 0x170; // KeyValues3
}
// Parent: CExampleSchemaVData_PolymorphicBase
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -140,7 +140,7 @@ namespace CS2Dumper.Schemas {
public const nint m_nDerivedA = 0x10; // int32
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -148,7 +148,7 @@ namespace CS2Dumper.Schemas {
public const nint m_nBase = 0x8; // int32
}
// Parent: CExampleSchemaVData_PolymorphicBase
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -156,12 +156,12 @@ namespace CS2Dumper.Schemas {
public const nint m_nDerivedB = 0x10; // int32
}
// Parent: None
// Fields count: 1
// Field count: 1
public static class ResourceId_t {
public const nint m_Value = 0x0; // uint64
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
#pragma once
@@ -12,7 +12,7 @@ namespace cs2_dumper {
// Enums count: 2
namespace schemasystem_dll {
// Alignment: 1
// Members count: 81
// Member count: 81
enum class fieldtype_t : uint8_t {
FIELD_VOID = 0x0,
FIELD_FLOAT32 = 0x1,
@@ -97,21 +97,21 @@ namespace cs2_dumper {
FIELD_TYPECOUNT = 0x50
};
// Alignment: 4
// Members count: 3
// Member count: 3
enum class ThreeState_t : uint32_t {
TRS_FALSE = 0x0,
TRS_TRUE = 0x1,
TRS_NONE = 0x2
};
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeCResourceManifestInternal {
}
// Parent: None
// Fields count: 22
// Field count: 22
namespace CSchemaSystemInternalRegistration {
constexpr std::ptrdiff_t m_Vector2D = 0x0; // Vector2D
constexpr std::ptrdiff_t m_Vector = 0x8; // Vector
@@ -137,7 +137,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_KV3 = 0x170; // KeyValues3
}
// Parent: CExampleSchemaVData_PolymorphicBase
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -145,7 +145,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nDerivedA = 0x10; // int32
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -153,7 +153,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nBase = 0x8; // int32
}
// Parent: CExampleSchemaVData_PolymorphicBase
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -161,12 +161,12 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nDerivedB = 0x10; // int32
}
// Parent: None
// Fields count: 1
// Field count: 1
namespace ResourceId_t {
constexpr std::ptrdiff_t m_Value = 0x0; // uint64
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
#![allow(non_upper_case_globals, non_camel_case_types, non_snake_case, unused)]
@@ -10,7 +10,7 @@ pub mod cs2_dumper {
// Enums count: 2
pub mod schemasystem_dll {
// Alignment: 1
// Members count: 81
// Member count: 81
#[repr(u8)]
pub enum fieldtype_t {
FIELD_VOID = 0x0,
@@ -96,7 +96,7 @@ pub mod cs2_dumper {
FIELD_TYPECOUNT = 0x50
}
// Alignment: 4
// Members count: 3
// Member count: 3
#[repr(u32)]
pub enum ThreeState_t {
TRS_FALSE = 0x0,
@@ -104,14 +104,14 @@ pub mod cs2_dumper {
TRS_NONE = 0x2
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeCResourceManifestInternal {
}
// Parent: None
// Fields count: 22
// Field count: 22
pub mod CSchemaSystemInternalRegistration {
pub const m_Vector2D: usize = 0x0; // Vector2D
pub const m_Vector: usize = 0x8; // Vector
@@ -137,7 +137,7 @@ pub mod cs2_dumper {
pub const m_KV3: usize = 0x170; // KeyValues3
}
// Parent: CExampleSchemaVData_PolymorphicBase
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -145,7 +145,7 @@ pub mod cs2_dumper {
pub const m_nDerivedA: usize = 0x10; // int32
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -153,7 +153,7 @@ pub mod cs2_dumper {
pub const m_nBase: usize = 0x8; // int32
}
// Parent: CExampleSchemaVData_PolymorphicBase
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -161,12 +161,12 @@ pub mod cs2_dumper {
pub const m_nDerivedB: usize = 0x10; // int32
}
// Parent: None
// Fields count: 1
// Field count: 1
pub mod ResourceId_t {
pub const m_Value: usize = 0x0; // uint64
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,13 +1,28 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
namespace CS2Dumper.Schemas {
// Module: soundsystem.dll
// Classes count: 51
// Enums count: 13
// Classes count: 63
// Enums count: 18
public static class SoundsystemDll {
// Alignment: 4
// Members count: 5
// Member count: 2
public enum EMode_t : uint {
Peak = 0x0,
RMS = 0x1
}
// Alignment: 1
// Member count: 5
public enum EWaveform : byte {
Sine = 0x0,
Square = 0x1,
Saw = 0x2,
Triangle = 0x3,
Noise = 0x4
}
// Alignment: 4
// Member count: 5
public enum VMixLFOShape_t : uint {
LFO_SHAPE_SINE = 0x0,
LFO_SHAPE_SQUARE = 0x1,
@@ -16,7 +31,7 @@ namespace CS2Dumper.Schemas {
LFO_SHAPE_NOISE = 0x4
}
// Alignment: 2
// Members count: 10
// Member count: 10
public enum VMixFilterType_t : ushort {
FILTER_UNKNOWN = 0xFFFFFFFFFFFFFFFF,
FILTER_LOWPASS = 0x0,
@@ -30,14 +45,14 @@ namespace CS2Dumper.Schemas {
FILTER_PASSTHROUGH = 0x8
}
// Alignment: 4
// Members count: 3
// Member count: 3
public enum SosActionStopType_t : uint {
SOS_STOPTYPE_NONE = 0x0,
SOS_STOPTYPE_TIME = 0x1,
SOS_STOPTYPE_OPVAR = 0x2
}
// Alignment: 4
// Members count: 6
// Member count: 6
public enum SosEditItemType_t : uint {
SOS_EDIT_ITEM_TYPE_SOUNDEVENTS = 0x0,
SOS_EDIT_ITEM_TYPE_SOUNDEVENT = 0x1,
@@ -47,47 +62,55 @@ namespace CS2Dumper.Schemas {
SOS_EDIT_ITEM_TYPE_FIELD = 0x5
}
// Alignment: 4
// Members count: 2
// Member count: 2
public enum SosActionSortType_t : uint {
SOS_SORTTYPE_HIGHEST = 0x0,
SOS_SORTTYPE_LOWEST = 0x1
}
// Alignment: 4
// Member count: 4
public enum PlayBackMode_t : uint {
Random = 0x0,
RandomNoRepeats = 0x1,
RandomAvoidLast = 0x2,
Sequential = 0x3
}
// Alignment: 2
// Members count: 30
// Member count: 30
public enum VMixProcessorType_t : ushort {
VPROCESSOR_UNKNOWN = 0x0,
VPROCESSOR_STEAMAUDIO_REVERB = 0x1,
VPROCESSOR_RT_PITCH = 0x2,
VPROCESSOR_STEAMAUDIO_HRTF = 0x3,
VPROCESSOR_DYNAMICS = 0x4,
VPROCESSOR_PRESETDSP = 0x5,
VPROCESSOR_DELAY = 0x6,
VPROCESSOR_MOD_DELAY = 0x7,
VPROCESSOR_DIFFUSOR = 0x8,
VPROCESSOR_BOXVERB = 0x9,
VPROCESSOR_FREEVERB = 0xA,
VPROCESSOR_PLATEVERB = 0xB,
VPROCESSOR_FULLWAVE_INTEGRATOR = 0xC,
VPROCESSOR_FILTER = 0xD,
VPROCESSOR_STEAMAUDIO_PATHING = 0xE,
VPROCESSOR_EQ8 = 0xF,
VPROCESSOR_ENVELOPE = 0x10,
VPROCESSOR_VOCODER = 0x11,
VPROCESSOR_CONVOLUTION = 0x12,
VPROCESSOR_DYNAMICS_3BAND = 0x13,
VPROCESSOR_DYNAMICS_COMPRESSOR = 0x14,
VPROCESSOR_SHAPER = 0x15,
VPROCESSOR_PANNER = 0x16,
VPROCESSOR_UTILITY = 0x17,
VPROCESSOR_AUTOFILTER = 0x18,
VPROCESSOR_OSC = 0x19,
VPROCESSOR_STEREODELAY = 0x1A,
VPROCESSOR_EFFECT_CHAIN = 0x1B,
VPROCESSOR_SUBGRAPH_SWITCH = 0x1C,
VPROCESSOR_STEAMAUDIO_DIRECT = 0x1D
VPROCESSOR_RT_PITCH = 0x1,
VPROCESSOR_STEAMAUDIO_HRTF = 0x2,
VPROCESSOR_DYNAMICS = 0x3,
VPROCESSOR_PRESETDSP = 0x4,
VPROCESSOR_DELAY = 0x5,
VPROCESSOR_MOD_DELAY = 0x6,
VPROCESSOR_DIFFUSOR = 0x7,
VPROCESSOR_BOXVERB = 0x8,
VPROCESSOR_FREEVERB = 0x9,
VPROCESSOR_PLATEVERB = 0xA,
VPROCESSOR_FULLWAVE_INTEGRATOR = 0xB,
VPROCESSOR_FILTER = 0xC,
VPROCESSOR_STEAMAUDIO_PATHING = 0xD,
VPROCESSOR_EQ8 = 0xE,
VPROCESSOR_ENVELOPE = 0xF,
VPROCESSOR_VOCODER = 0x10,
VPROCESSOR_CONVOLUTION = 0x11,
VPROCESSOR_DYNAMICS_3BAND = 0x12,
VPROCESSOR_DYNAMICS_COMPRESSOR = 0x13,
VPROCESSOR_SHAPER = 0x14,
VPROCESSOR_PANNER = 0x15,
VPROCESSOR_UTILITY = 0x16,
VPROCESSOR_AUTOFILTER = 0x17,
VPROCESSOR_OSC = 0x18,
VPROCESSOR_STEREODELAY = 0x19,
VPROCESSOR_EFFECT_CHAIN = 0x1A,
VPROCESSOR_SUBGRAPH_SWITCH = 0x1B,
VPROCESSOR_STEAMAUDIO_DIRECT = 0x1C,
VPROCESSOR_STEAMAUDIO_HYBRIDREVERB = 0x1D
}
// Alignment: 4
// Members count: 30
// Member count: 30
public enum soundlevel_t : uint {
SNDLVL_NONE = 0x0,
SNDLVL_20dB = 0x14,
@@ -121,13 +144,13 @@ namespace CS2Dumper.Schemas {
SNDLVL_180dB = 0xB4
}
// Alignment: 4
// Members count: 2
// Member count: 2
public enum VMixPannerType_t : uint {
PANNER_TYPE_LINEAR = 0x0,
PANNER_TYPE_EQUAL_POWER = 0x1
}
// Alignment: 4
// Members count: 6
// Member count: 6
public enum VMixChannelOperation_t : uint {
VMIX_CHAN_STEREO = 0x0,
VMIX_CHAN_LEFT = 0x1,
@@ -137,7 +160,32 @@ namespace CS2Dumper.Schemas {
VMIX_CHAN_MID_SIDE = 0x5
}
// Alignment: 1
// Members count: 9
// Member count: 13
public enum EMidiNote : byte {
C = 0x0,
C_Sharp = 0x1,
D = 0x2,
D_Sharp = 0x3,
E = 0x4,
F = 0x5,
F_Sharp = 0x6,
G = 0x7,
G_Sharp = 0x8,
A = 0x9,
A_Sharp = 0xA,
B = 0xB,
Count = 0xC
}
// Alignment: 1
// Member count: 4
public enum CVSoundFormat_t : byte {
PCM16 = 0x0,
PCM8 = 0x1,
MP3 = 0x2,
ADPCM = 0x3
}
// Alignment: 1
// Member count: 9
public enum VMixFilterSlope_t : byte {
FILTER_SLOPE_1POLE_6dB = 0x0,
FILTER_SLOPE_1POLE_12dB = 0x1,
@@ -150,30 +198,44 @@ namespace CS2Dumper.Schemas {
FILTER_SLOPE_MAX = 0x7
}
// Alignment: 4
// Members count: 6
// Member count: 8
public enum ActionType_t : uint {
SOS_ACTION_NONE = 0x0,
SOS_ACTION_LIMITER = 0x1,
SOS_ACTION_TIME_LIMIT = 0x2,
SOS_ACTION_TIME_BLOCK_LIMITER = 0x3,
SOS_ACTION_SET_SOUNDEVENT_PARAM = 0x4,
SOS_ACTION_SOUNDEVENT_CLUSTER = 0x5
SOS_ACTION_SOUNDEVENT_CLUSTER = 0x5,
SOS_ACTION_SOUNDEVENT_PRIORITY = 0x6,
SOS_ACTION_COUNT_ENVELOPE = 0x7
}
// Alignment: 4
// Members count: 3
// Member count: 3
public enum VMixSubgraphSwitchInterpolationType_t : uint {
SUBGRAPH_INTERPOLATION_TEMPORAL_CROSSFADE = 0x0,
SUBGRAPH_INTERPOLATION_TEMPORAL_FADE_OUT = 0x1,
SUBGRAPH_INTERPOLATION_KEEP_LAST_SUBGRAPH_RUNNING = 0x2
}
// Alignment: 4
// Members count: 2
// Member count: 2
public enum SosGroupType_t : uint {
SOS_GROUPTYPE_DYNAMIC = 0x0,
SOS_GROUPTYPE_STATIC = 0x1
}
// Parent: CVoiceContainerBase
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
// MPropertyFriendlyName
// MPropertyDescription
public static class CVoiceContainerBlender {
public const nint m_firstSound = 0xF0; // CStrongHandle<InfoForResourceTypeCVoiceContainerBase>
public const nint m_secondSound = 0xF8; // CStrongHandle<InfoForResourceTypeCVoiceContainerBase>
public const nint m_flBlendFactor = 0x100; // float32
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -183,29 +245,75 @@ namespace CS2Dumper.Schemas {
public const nint m_flWidth = 0x8; // float32
public const nint m_flLateReflections = 0xC; // float32
}
// Parent: CVoiceContainerBase
// Fields count: 7
// Parent: None
// Field count: 7
//
// Metadata:
// MGetKV3ClassDefaults
public static class CVoiceContainerRandomSampler {
public const nint m_flLoudAmplitude = 0x60; // float32
public const nint m_flLoudAmplitudeJitter = 0x64; // float32
public const nint m_flSoftAmplitude = 0x68; // float32
public const nint m_flSoftAmplitudeJitter = 0x6C; // float32
public const nint m_flLoudTimeJitter = 0x70; // float32
public const nint m_flSoftTimeJitter = 0x74; // float32
public const nint m_grainResources = 0x78; // CUtlVector<CStrongHandle<InfoForResourceTypeCVoiceContainerBase>>
}
// Parent: CVoiceContainerBase
// Fields count: 0
//
// Metadata:
// MGetKV3ClassDefaults
public static class CVoiceContainerDefault {
public static class CVoiceContainerStaticAdditiveSynth__CHarmonic {
public const nint m_nWaveform = 0x0; // EWaveform
public const nint m_nFundamental = 0x1; // EMidiNote
public const nint m_nOctave = 0x4; // int32
public const nint m_flCents = 0x8; // float32
public const nint m_flPhase = 0xC; // float32
public const nint m_curve = 0x10; // CPiecewiseCurve
public const nint m_volumeScaling = 0x50; // CVoiceContainerStaticAdditiveSynth::CGainScalePerInstance
}
// Parent: None
// Fields count: 1
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
public static class CVoiceContainerStaticAdditiveSynth__CTone {
public const nint m_harmonics = 0x0; // CUtlVector<CVoiceContainerStaticAdditiveSynth::CHarmonic>
public const nint m_curve = 0x18; // CPiecewiseCurve
public const nint m_bSyncInstances = 0x58; // bool
}
// Parent: CVoiceContainerBase
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
// MPropertyFriendlyName
// MPropertyDescription
public static class CVoiceContainerRandomSampler {
public const nint m_flAmplitude = 0xF0; // float32
public const nint m_flAmplitudeJitter = 0xF4; // float32
public const nint m_flTimeJitter = 0xF8; // float32
public const nint m_flMaxLength = 0xFC; // float32
public const nint m_nNumDelayVariations = 0x100; // int32
public const nint m_grainResources = 0x108; // CUtlVector<CStrongHandle<InfoForResourceTypeCVoiceContainerBase>>
}
// Parent: CVoiceContainerBase
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
// MPropertyFriendlyName
// MPropertyDescription
public static class CVoiceContainerDefault {
public const nint m_vsndReference = 0xF0; // CStrongHandle<InfoForResourceTypeCVoiceContainerBase>
}
// Parent: None
// Field count: 11
//
// Metadata:
// MGetKV3ClassDefaults
public static class CVSound {
public const nint m_nRate = 0x0; // int32
public const nint m_nFormat = 0x4; // CVSoundFormat_t
public const nint m_nChannels = 0x8; // uint32
public const nint m_nLoopStart = 0xC; // int32
public const nint m_nSampleCount = 0x10; // uint32
public const nint m_flDuration = 0x14; // float32
public const nint m_Sentences = 0x18; // CUtlVector<CAudioSentence>
public const nint m_nStreamingSize = 0x30; // uint32
public const nint m_nSeekTable = 0x38; // CUtlVector<int32>
public const nint m_nLoopEnd = 0x50; // int32
public const nint m_encodedHeader = 0x58; // CUtlBinaryBlock
}
// Parent: None
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -214,7 +322,7 @@ namespace CS2Dumper.Schemas {
public const nint m_table = 0x0; // CUtlVector<CDspPresetModifierList>
}
// Parent: CSosGroupActionSchema
// Fields count: 7
// Field count: 7
//
// Metadata:
// MGetKV3ClassDefaults
@@ -228,7 +336,7 @@ namespace CS2Dumper.Schemas {
public const nint m_groupBoundingBoxMaxsOpvar = 0x40; // CUtlString
}
// Parent: CSosGroupActionSchema
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -239,8 +347,17 @@ namespace CS2Dumper.Schemas {
public const nint m_opvarName = 0x28; // CUtlString
public const nint m_nSortType = 0x30; // SosActionSortType_t
}
// Parent: CVoiceContainerBase
// Field count: 0
//
// Metadata:
// MGetKV3ClassDefaults
// MPropertyFriendlyName
// MPropertyDescription
public static class CVoiceContainerNull {
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -250,7 +367,19 @@ namespace CS2Dumper.Schemas {
public const nint m_flInterpolationTime = 0x8; // float32
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
// MVDataNodeType
// MPropertyFriendlyName
// MPropertyDescription
public static class CVoiceContainerAnalysisBase {
public const nint m_bRegenerateCurveOnCompile = 0x8; // bool
public const nint m_curve = 0x10; // CPiecewiseCurve
}
// Parent: None
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -258,18 +387,31 @@ namespace CS2Dumper.Schemas {
public const nint m_type = 0x0; // VMixPannerType_t
public const nint m_flStrength = 0x4; // float32
}
// Parent: CVoiceContainerBase
// Fields count: 3
// Parent: CSosGroupActionSchema
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
public static class CSosGroupActionSoundeventPrioritySchema {
public const nint m_priorityValue = 0x18; // CUtlString
public const nint m_priorityVolumeScalar = 0x20; // CUtlString
public const nint m_priorityContributeButDontRead = 0x28; // CUtlString
public const nint m_bPriorityReadButDontContribute = 0x30; // CUtlString
}
// Parent: CVoiceContainerBase
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
// MPropertyFriendlyName
// MPropertyDescription
public static class CVoiceContainerRealtimeFMSineWave {
public const nint m_flCarrierFrequency = 0x60; // float32
public const nint m_flModulatorFrequency = 0x64; // float32
public const nint m_flModulatorAmount = 0x68; // float32
public const nint m_flCarrierFrequency = 0xF0; // float32
public const nint m_flModulatorFrequency = 0xF4; // float32
public const nint m_flModulatorAmount = 0xF8; // float32
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -277,7 +419,7 @@ namespace CS2Dumper.Schemas {
public const nint m_EditItems = 0x0; // CUtlVector<SosEditItemInfo_t>
}
// Parent: None
// Fields count: 9
// Field count: 9
//
// Metadata:
// MGetKV3ClassDefaults
@@ -293,7 +435,7 @@ namespace CS2Dumper.Schemas {
public const nint m_bApplyAntialiasing = 0x2C; // bool
}
// Parent: None
// Fields count: 17
// Field count: 17
//
// Metadata:
// MGetKV3ClassDefaults
@@ -317,7 +459,7 @@ namespace CS2Dumper.Schemas {
public const nint m_flTaps = 0x4C; // float32
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -328,7 +470,7 @@ namespace CS2Dumper.Schemas {
public const nint m_actionInstanceType = 0x14; // ActionType_t
}
// Parent: None
// Fields count: 8
// Field count: 9
//
// Metadata:
// MGetKV3ClassDefaults
@@ -340,11 +482,12 @@ namespace CS2Dumper.Schemas {
public const nint m_nBlockMaxCount = 0x10; // int32
public const nint m_bInvertMatch = 0x14; // bool
public const nint m_matchPattern = 0x18; // CSosGroupMatchPattern
public const nint m_branchPattern = 0x40; // CSosGroupBranchPattern
public const nint m_vActions = 0xB0; // CSosGroupActionSchema*[4]
public const nint m_branchPattern = 0x48; // CSosGroupBranchPattern
public const nint m_flLifeSpanTime = 0x58; // float32
public const nint m_vActions = 0xC0; // CSosGroupActionSchema*[4]
}
// Parent: None
// Fields count: 4
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -353,9 +496,10 @@ namespace CS2Dumper.Schemas {
public const nint m_bMatchEventSubString = 0x9; // bool
public const nint m_bMatchEntIndex = 0xA; // bool
public const nint m_bMatchOpvar = 0xB; // bool
public const nint m_bMatchString = 0xC; // bool
}
// Parent: None
// Fields count: 10
// Field count: 10
//
// Metadata:
// MGetKV3ClassDefaults
@@ -372,7 +516,7 @@ namespace CS2Dumper.Schemas {
public const nint m_bandDesc = 0x24; // VMixDynamicsBand_t[3]
}
// Parent: None
// Fields count: 6
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
@@ -385,7 +529,30 @@ namespace CS2Dumper.Schemas {
public const nint m_flListenerReverbModifierWhenSourceReverbIsActive = 0x18; // float32
}
// Parent: None
// Fields count: 2
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
public static class CAudioMorphData {
public const nint m_times = 0x0; // CUtlVector<float32>
public const nint m_nameHashCodes = 0x18; // CUtlVector<uint32>
public const nint m_nameStrings = 0x30; // CUtlVector<CUtlString>
public const nint m_samples = 0x48; // CUtlVector<CUtlVector<float32>>
public const nint m_flEaseIn = 0x60; // float32
public const nint m_flEaseOut = 0x64; // float32
}
// Parent: CVoiceContainerBase
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
// MPropertyFriendlyName
// MPropertyDescription
public static class CVoiceContainerStaticAdditiveSynth {
public const nint m_tones = 0xF0; // CUtlVector<CVoiceContainerStaticAdditiveSynth::CTone>
}
// Parent: None
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -393,26 +560,22 @@ namespace CS2Dumper.Schemas {
public const nint m_dspName = 0x0; // CUtlString
public const nint m_modifiers = 0x8; // CUtlVector<CDSPMixgroupModifier>
}
// Parent: CVoiceContainerBase
// Fields count: 3
//
// Metadata:
// MGetKV3ClassDefaults
public static class CVoiceContainerBlend {
public const nint m_hSoundOne = 0x60; // CStrongHandle<InfoForResourceTypeCVoiceContainerBase>
public const nint m_hSoundTwo = 0x68; // CStrongHandle<InfoForResourceTypeCVoiceContainerBase>
public const nint m_flBlendAmount = 0x70; // float32
}
// Parent: None
// Fields count: 1
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
// MVDataNodeType
// MVDataFileExtension
// MPropertyFriendlyName
// MPropertyDescription
public static class CVoiceContainerBase {
public const nint m_curves = 0x20; // CUtlDict<CPiecewiseCurve,F(size=1)>
public const nint m_vSound = 0x20; // CVSound
public const nint m_bHideAnalyzers = 0xD0; // bool
public const nint m_analysisContainers = 0xD8; // CUtlVector<CVoiceContainerAnalysisBase*>
}
// Parent: None
// Fields count: 7
// Field count: 7
//
// Metadata:
// MGetKV3ClassDefaults
@@ -426,34 +589,37 @@ namespace CS2Dumper.Schemas {
public const nint m_flWidth = 0x24; // float32
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
public static class VMixEQ8Desc_t {
public const nint m_stages = 0x0; // VMixFilterDesc_t[8]
}
// Parent: CVoiceContainerWavFileReader
// Fields count: 1
// Parent: None
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
public static class CVoiceContainerEnvelopeAnalyzer {
public const nint m_envBuffer = 0x68; // CUtlVector<float32>
public static class CAudioPhonemeTag {
public const nint m_flStartTime = 0x0; // float32
public const nint m_flEndTime = 0x4; // float32
public const nint m_nPhonemeCode = 0x8; // int32
}
// Parent: CVoiceContainerBase
// Fields count: 4
// Parent: CVoiceContainerAnalysisBase
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
public static class CVoiceContainerEngineSound {
public const nint m_SoundToPlay = 0x60; // CStrongHandle<InfoForResourceTypeCVoiceContainerBase>
public const nint m_flTestConstantParam = 0x68; // float32
public const nint m_flTestSoundEventBoundParam = 0x6C; // float32
public const nint m_flEngineRPM = 0x70; // float32
// MPropertyFriendlyName
// MPropertyDescription
public static class CVoiceContainerEnvelopeAnalyzer {
public const nint m_mode = 0x50; // EMode_t
public const nint m_nSamples = 0x54; // int32
public const nint m_flThreshold = 0x58; // float32
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -461,7 +627,7 @@ namespace CS2Dumper.Schemas {
public const nint m_soundEventVMix = 0x0; // CStrongHandle<InfoForResourceTypeCVMixListResource>
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -472,7 +638,16 @@ namespace CS2Dumper.Schemas {
public const nint m_nProcType = 0xC; // int32
}
// Parent: None
// Fields count: 8
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
public static class CAudioEmphasisSample {
public const nint m_flTime = 0x0; // float32
public const nint m_flValue = 0x4; // float32
}
// Parent: None
// Field count: 8
//
// Metadata:
// MGetKV3ClassDefaults
@@ -487,7 +662,14 @@ namespace CS2Dumper.Schemas {
public const nint m_flHighCutoffFreq = 0x1C; // float32
}
// Parent: None
// Fields count: 1
// Field count: 0
//
// Metadata:
// MGetKV3ClassDefaults
public static class CSoundInfoHeader {
}
// Parent: None
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -495,7 +677,7 @@ namespace CS2Dumper.Schemas {
public const nint m_groupList = 0x0; // CUtlVector<CSosSoundEventGroupSchema>
}
// Parent: CSosGroupBranchPattern
// Fields count: 4
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -504,9 +686,10 @@ namespace CS2Dumper.Schemas {
public const nint m_matchSoundEventSubString = 0x18; // CUtlString
public const nint m_flEntIndex = 0x20; // float32
public const nint m_flOpvar = 0x24; // float32
public const nint m_opvarString = 0x28; // CUtlString
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -517,25 +700,8 @@ namespace CS2Dumper.Schemas {
public const nint itemKVString = 0x20; // CUtlString
public const nint itemPos = 0x28; // Vector2D
}
// Parent: CVoiceContainerWavFileReader
// Fields count: 1
//
// Metadata:
// MGetKV3ClassDefaults
public static class CVoiceContainerTestConstant {
public const nint m_flTestConstantParam = 0x68; // bool
}
// Parent: CVoiceContainerBase
// Fields count: 2
//
// Metadata:
// MGetKV3ClassDefaults
public static class CVoiceContainerTestNestedDynamic {
public const nint m_SoundToPlay = 0x60; // CStrongHandle<InfoForResourceTypeCVoiceContainerBase>
public const nint m_flTestConstantParam = 0x68; // float32
}
// Parent: None
// Fields count: 7
// Field count: 7
//
// Metadata:
// MGetKV3ClassDefaults
@@ -548,16 +714,8 @@ namespace CS2Dumper.Schemas {
public const nint m_flFeedbackDiffusion1 = 0x14; // float32
public const nint m_flFeedbackDiffusion2 = 0x18; // float32
}
// Parent: CVoiceContainerBase
// Fields count: 1
//
// Metadata:
// MGetKV3ClassDefaults
public static class CVoiceContainerWavFileReader {
public const nint m_wavFilePath = 0x60; // CUtlString
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -568,7 +726,7 @@ namespace CS2Dumper.Schemas {
public const nint m_flOutputGain = 0xC; // float32
}
// Parent: None
// Fields count: 9
// Field count: 9
//
// Metadata:
// MGetKV3ClassDefaults
@@ -584,7 +742,7 @@ namespace CS2Dumper.Schemas {
public const nint m_bPeakMode = 0x20; // bool
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -596,7 +754,7 @@ namespace CS2Dumper.Schemas {
public const nint m_nOversampleFactor = 0x10; // int32
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -605,8 +763,19 @@ namespace CS2Dumper.Schemas {
public const nint m_flHoldTimeMS = 0x4; // float32
public const nint m_flReleaseTimeMS = 0x8; // float32
}
// Parent: None
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
public static class CAudioSentence {
public const nint m_bShouldVoiceDuck = 0x0; // bool
public const nint m_RunTimePhonemes = 0x8; // CUtlVector<CAudioPhonemeTag>
public const nint m_EmphasisSamples = 0x20; // CUtlVector<CAudioEmphasisSample>
public const nint m_morphData = 0x38; // CAudioMorphData
}
// Parent: CSosGroupActionSchema
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -616,15 +785,17 @@ namespace CS2Dumper.Schemas {
public const nint m_nSortType = 0x20; // SosActionSortType_t
}
// Parent: CVoiceContainerDecayingSineWave
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
// MPropertyFriendlyName
// MPropertyDescription
public static class CVoiceContainerAmpedDecayingSineWave {
public const nint m_flGainAmount = 0x68; // float32
public const nint m_flGainAmount = 0xF8; // float32
}
// Parent: None
// Fields count: 8
// Field count: 8
//
// Metadata:
// MGetKV3ClassDefaults
@@ -639,7 +810,7 @@ namespace CS2Dumper.Schemas {
public const nint m_nLFOShape = 0x28; // VMixLFOShape_t
}
// Parent: None
// Fields count: 10
// Field count: 10
//
// Metadata:
// MGetKV3ClassDefaults
@@ -656,15 +827,38 @@ namespace CS2Dumper.Schemas {
public const nint m_bSolo = 0x21; // bool
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
public static class VMixEffectChainDesc_t {
public const nint m_flCrossfadeTime = 0x0; // float32
}
// Parent: None
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
public static class CVoiceContainerStaticAdditiveSynth__CGainScalePerInstance {
public const nint m_flMinVolume = 0x0; // float32
public const nint m_nInstancesAtMinVolume = 0x4; // int32
public const nint m_flMaxVolume = 0x8; // float32
public const nint m_nInstancesAtMaxVolume = 0xC; // int32
}
// Parent: CVoiceContainerBase
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
// MPropertyFriendlyName
// MPropertyDescription
public static class CVoiceContainerSelector {
public const nint m_mode = 0xF0; // PlayBackMode_t
public const nint m_bRetrigger = 0xF4; // bool
public const nint m_soundsToPlay = 0xF8; // CUtlVector<CStrongHandle<InfoForResourceTypeCVoiceContainerBase>>
}
// Parent: CSosGroupActionSchema
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -673,7 +867,32 @@ namespace CS2Dumper.Schemas {
public const nint m_flMaxDuration = 0x1C; // float32
}
// Parent: CSosGroupActionSchema
// Fields count: 1
// Field count: 8
//
// Metadata:
// MGetKV3ClassDefaults
public static class CSosGroupActionMemberCountEnvelopeSchema {
public const nint m_nBaseCount = 0x18; // int32
public const nint m_nTargetCount = 0x1C; // int32
public const nint m_flBaseValue = 0x20; // float32
public const nint m_flTargetValue = 0x24; // float32
public const nint m_flAttack = 0x28; // float32
public const nint m_flDecay = 0x2C; // float32
public const nint m_resultVarName = 0x30; // CUtlString
public const nint m_bSaveToGroup = 0x38; // bool
}
// Parent: CVoiceContainerBase
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
// MPropertyFriendlyName
// MPropertyDescription
public static class CVoiceContainerSwitch {
public const nint m_soundsToPlay = 0xF0; // CUtlVector<CVoiceContainerBase*>
}
// Parent: CSosGroupActionSchema
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -681,7 +900,7 @@ namespace CS2Dumper.Schemas {
public const nint m_flMaxDuration = 0x18; // float32
}
// Parent: None
// Fields count: 10
// Field count: 10
//
// Metadata:
// MGetKV3ClassDefaults
@@ -698,7 +917,7 @@ namespace CS2Dumper.Schemas {
public const nint m_bPeakMode = 0x24; // bool
}
// Parent: None
// Fields count: 6
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
@@ -711,16 +930,18 @@ namespace CS2Dumper.Schemas {
public const nint m_flBassFreq = 0x14; // float32
}
// Parent: CVoiceContainerBase
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
// MPropertyFriendlyName
// MPropertyDescription
public static class CVoiceContainerDecayingSineWave {
public const nint m_flFrequency = 0x60; // float32
public const nint m_flDecayTime = 0x64; // float32
public const nint m_flFrequency = 0xF0; // float32
public const nint m_flDecayTime = 0xF4; // float32
}
// Parent: None
// Fields count: 6
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
@@ -733,7 +954,7 @@ namespace CS2Dumper.Schemas {
public const nint m_flQ = 0xC; // float32
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -743,7 +964,7 @@ namespace CS2Dumper.Schemas {
public const nint m_flPhase = 0x8; // float32
}
// Parent: None
// Fields count: 12
// Field count: 12
//
// Metadata:
// MGetKV3ClassDefaults

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
#pragma once
@@ -8,11 +8,26 @@
namespace cs2_dumper {
namespace schemas {
// Module: soundsystem.dll
// Classes count: 51
// Enums count: 13
// Classes count: 63
// Enums count: 18
namespace soundsystem_dll {
// Alignment: 4
// Members count: 5
// Member count: 2
enum class EMode_t : uint32_t {
Peak = 0x0,
RMS = 0x1
};
// Alignment: 1
// Member count: 5
enum class EWaveform : uint8_t {
Sine = 0x0,
Square = 0x1,
Saw = 0x2,
Triangle = 0x3,
Noise = 0x4
};
// Alignment: 4
// Member count: 5
enum class VMixLFOShape_t : uint32_t {
LFO_SHAPE_SINE = 0x0,
LFO_SHAPE_SQUARE = 0x1,
@@ -21,7 +36,7 @@ namespace cs2_dumper {
LFO_SHAPE_NOISE = 0x4
};
// Alignment: 2
// Members count: 10
// Member count: 10
enum class VMixFilterType_t : uint16_t {
FILTER_UNKNOWN = 0xFFFFFFFFFFFFFFFF,
FILTER_LOWPASS = 0x0,
@@ -35,14 +50,14 @@ namespace cs2_dumper {
FILTER_PASSTHROUGH = 0x8
};
// Alignment: 4
// Members count: 3
// Member count: 3
enum class SosActionStopType_t : uint32_t {
SOS_STOPTYPE_NONE = 0x0,
SOS_STOPTYPE_TIME = 0x1,
SOS_STOPTYPE_OPVAR = 0x2
};
// Alignment: 4
// Members count: 6
// Member count: 6
enum class SosEditItemType_t : uint32_t {
SOS_EDIT_ITEM_TYPE_SOUNDEVENTS = 0x0,
SOS_EDIT_ITEM_TYPE_SOUNDEVENT = 0x1,
@@ -52,47 +67,55 @@ namespace cs2_dumper {
SOS_EDIT_ITEM_TYPE_FIELD = 0x5
};
// Alignment: 4
// Members count: 2
// Member count: 2
enum class SosActionSortType_t : uint32_t {
SOS_SORTTYPE_HIGHEST = 0x0,
SOS_SORTTYPE_LOWEST = 0x1
};
// Alignment: 4
// Member count: 4
enum class PlayBackMode_t : uint32_t {
Random = 0x0,
RandomNoRepeats = 0x1,
RandomAvoidLast = 0x2,
Sequential = 0x3
};
// Alignment: 2
// Members count: 30
// Member count: 30
enum class VMixProcessorType_t : uint16_t {
VPROCESSOR_UNKNOWN = 0x0,
VPROCESSOR_STEAMAUDIO_REVERB = 0x1,
VPROCESSOR_RT_PITCH = 0x2,
VPROCESSOR_STEAMAUDIO_HRTF = 0x3,
VPROCESSOR_DYNAMICS = 0x4,
VPROCESSOR_PRESETDSP = 0x5,
VPROCESSOR_DELAY = 0x6,
VPROCESSOR_MOD_DELAY = 0x7,
VPROCESSOR_DIFFUSOR = 0x8,
VPROCESSOR_BOXVERB = 0x9,
VPROCESSOR_FREEVERB = 0xA,
VPROCESSOR_PLATEVERB = 0xB,
VPROCESSOR_FULLWAVE_INTEGRATOR = 0xC,
VPROCESSOR_FILTER = 0xD,
VPROCESSOR_STEAMAUDIO_PATHING = 0xE,
VPROCESSOR_EQ8 = 0xF,
VPROCESSOR_ENVELOPE = 0x10,
VPROCESSOR_VOCODER = 0x11,
VPROCESSOR_CONVOLUTION = 0x12,
VPROCESSOR_DYNAMICS_3BAND = 0x13,
VPROCESSOR_DYNAMICS_COMPRESSOR = 0x14,
VPROCESSOR_SHAPER = 0x15,
VPROCESSOR_PANNER = 0x16,
VPROCESSOR_UTILITY = 0x17,
VPROCESSOR_AUTOFILTER = 0x18,
VPROCESSOR_OSC = 0x19,
VPROCESSOR_STEREODELAY = 0x1A,
VPROCESSOR_EFFECT_CHAIN = 0x1B,
VPROCESSOR_SUBGRAPH_SWITCH = 0x1C,
VPROCESSOR_STEAMAUDIO_DIRECT = 0x1D
VPROCESSOR_RT_PITCH = 0x1,
VPROCESSOR_STEAMAUDIO_HRTF = 0x2,
VPROCESSOR_DYNAMICS = 0x3,
VPROCESSOR_PRESETDSP = 0x4,
VPROCESSOR_DELAY = 0x5,
VPROCESSOR_MOD_DELAY = 0x6,
VPROCESSOR_DIFFUSOR = 0x7,
VPROCESSOR_BOXVERB = 0x8,
VPROCESSOR_FREEVERB = 0x9,
VPROCESSOR_PLATEVERB = 0xA,
VPROCESSOR_FULLWAVE_INTEGRATOR = 0xB,
VPROCESSOR_FILTER = 0xC,
VPROCESSOR_STEAMAUDIO_PATHING = 0xD,
VPROCESSOR_EQ8 = 0xE,
VPROCESSOR_ENVELOPE = 0xF,
VPROCESSOR_VOCODER = 0x10,
VPROCESSOR_CONVOLUTION = 0x11,
VPROCESSOR_DYNAMICS_3BAND = 0x12,
VPROCESSOR_DYNAMICS_COMPRESSOR = 0x13,
VPROCESSOR_SHAPER = 0x14,
VPROCESSOR_PANNER = 0x15,
VPROCESSOR_UTILITY = 0x16,
VPROCESSOR_AUTOFILTER = 0x17,
VPROCESSOR_OSC = 0x18,
VPROCESSOR_STEREODELAY = 0x19,
VPROCESSOR_EFFECT_CHAIN = 0x1A,
VPROCESSOR_SUBGRAPH_SWITCH = 0x1B,
VPROCESSOR_STEAMAUDIO_DIRECT = 0x1C,
VPROCESSOR_STEAMAUDIO_HYBRIDREVERB = 0x1D
};
// Alignment: 4
// Members count: 30
// Member count: 30
enum class soundlevel_t : uint32_t {
SNDLVL_NONE = 0x0,
SNDLVL_20dB = 0x14,
@@ -126,13 +149,13 @@ namespace cs2_dumper {
SNDLVL_180dB = 0xB4
};
// Alignment: 4
// Members count: 2
// Member count: 2
enum class VMixPannerType_t : uint32_t {
PANNER_TYPE_LINEAR = 0x0,
PANNER_TYPE_EQUAL_POWER = 0x1
};
// Alignment: 4
// Members count: 6
// Member count: 6
enum class VMixChannelOperation_t : uint32_t {
VMIX_CHAN_STEREO = 0x0,
VMIX_CHAN_LEFT = 0x1,
@@ -142,7 +165,32 @@ namespace cs2_dumper {
VMIX_CHAN_MID_SIDE = 0x5
};
// Alignment: 1
// Members count: 9
// Member count: 13
enum class EMidiNote : uint8_t {
C = 0x0,
C_Sharp = 0x1,
D = 0x2,
D_Sharp = 0x3,
E = 0x4,
F = 0x5,
F_Sharp = 0x6,
G = 0x7,
G_Sharp = 0x8,
A = 0x9,
A_Sharp = 0xA,
B = 0xB,
Count = 0xC
};
// Alignment: 1
// Member count: 4
enum class CVSoundFormat_t : uint8_t {
PCM16 = 0x0,
PCM8 = 0x1,
MP3 = 0x2,
ADPCM = 0x3
};
// Alignment: 1
// Member count: 9
enum class VMixFilterSlope_t : uint8_t {
FILTER_SLOPE_1POLE_6dB = 0x0,
FILTER_SLOPE_1POLE_12dB = 0x1,
@@ -155,30 +203,44 @@ namespace cs2_dumper {
FILTER_SLOPE_MAX = 0x7
};
// Alignment: 4
// Members count: 6
// Member count: 8
enum class ActionType_t : uint32_t {
SOS_ACTION_NONE = 0x0,
SOS_ACTION_LIMITER = 0x1,
SOS_ACTION_TIME_LIMIT = 0x2,
SOS_ACTION_TIME_BLOCK_LIMITER = 0x3,
SOS_ACTION_SET_SOUNDEVENT_PARAM = 0x4,
SOS_ACTION_SOUNDEVENT_CLUSTER = 0x5
SOS_ACTION_SOUNDEVENT_CLUSTER = 0x5,
SOS_ACTION_SOUNDEVENT_PRIORITY = 0x6,
SOS_ACTION_COUNT_ENVELOPE = 0x7
};
// Alignment: 4
// Members count: 3
// Member count: 3
enum class VMixSubgraphSwitchInterpolationType_t : uint32_t {
SUBGRAPH_INTERPOLATION_TEMPORAL_CROSSFADE = 0x0,
SUBGRAPH_INTERPOLATION_TEMPORAL_FADE_OUT = 0x1,
SUBGRAPH_INTERPOLATION_KEEP_LAST_SUBGRAPH_RUNNING = 0x2
};
// Alignment: 4
// Members count: 2
// Member count: 2
enum class SosGroupType_t : uint32_t {
SOS_GROUPTYPE_DYNAMIC = 0x0,
SOS_GROUPTYPE_STATIC = 0x1
};
// Parent: CVoiceContainerBase
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
// MPropertyFriendlyName
// MPropertyDescription
namespace CVoiceContainerBlender {
constexpr std::ptrdiff_t m_firstSound = 0xF0; // CStrongHandle<InfoForResourceTypeCVoiceContainerBase>
constexpr std::ptrdiff_t m_secondSound = 0xF8; // CStrongHandle<InfoForResourceTypeCVoiceContainerBase>
constexpr std::ptrdiff_t m_flBlendFactor = 0x100; // float32
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -188,29 +250,75 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_flWidth = 0x8; // float32
constexpr std::ptrdiff_t m_flLateReflections = 0xC; // float32
}
// Parent: CVoiceContainerBase
// Fields count: 7
// Parent: None
// Field count: 7
//
// Metadata:
// MGetKV3ClassDefaults
namespace CVoiceContainerRandomSampler {
constexpr std::ptrdiff_t m_flLoudAmplitude = 0x60; // float32
constexpr std::ptrdiff_t m_flLoudAmplitudeJitter = 0x64; // float32
constexpr std::ptrdiff_t m_flSoftAmplitude = 0x68; // float32
constexpr std::ptrdiff_t m_flSoftAmplitudeJitter = 0x6C; // float32
constexpr std::ptrdiff_t m_flLoudTimeJitter = 0x70; // float32
constexpr std::ptrdiff_t m_flSoftTimeJitter = 0x74; // float32
constexpr std::ptrdiff_t m_grainResources = 0x78; // CUtlVector<CStrongHandle<InfoForResourceTypeCVoiceContainerBase>>
}
// Parent: CVoiceContainerBase
// Fields count: 0
//
// Metadata:
// MGetKV3ClassDefaults
namespace CVoiceContainerDefault {
namespace CVoiceContainerStaticAdditiveSynth__CHarmonic {
constexpr std::ptrdiff_t m_nWaveform = 0x0; // EWaveform
constexpr std::ptrdiff_t m_nFundamental = 0x1; // EMidiNote
constexpr std::ptrdiff_t m_nOctave = 0x4; // int32
constexpr std::ptrdiff_t m_flCents = 0x8; // float32
constexpr std::ptrdiff_t m_flPhase = 0xC; // float32
constexpr std::ptrdiff_t m_curve = 0x10; // CPiecewiseCurve
constexpr std::ptrdiff_t m_volumeScaling = 0x50; // CVoiceContainerStaticAdditiveSynth::CGainScalePerInstance
}
// Parent: None
// Fields count: 1
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
namespace CVoiceContainerStaticAdditiveSynth__CTone {
constexpr std::ptrdiff_t m_harmonics = 0x0; // CUtlVector<CVoiceContainerStaticAdditiveSynth::CHarmonic>
constexpr std::ptrdiff_t m_curve = 0x18; // CPiecewiseCurve
constexpr std::ptrdiff_t m_bSyncInstances = 0x58; // bool
}
// Parent: CVoiceContainerBase
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
// MPropertyFriendlyName
// MPropertyDescription
namespace CVoiceContainerRandomSampler {
constexpr std::ptrdiff_t m_flAmplitude = 0xF0; // float32
constexpr std::ptrdiff_t m_flAmplitudeJitter = 0xF4; // float32
constexpr std::ptrdiff_t m_flTimeJitter = 0xF8; // float32
constexpr std::ptrdiff_t m_flMaxLength = 0xFC; // float32
constexpr std::ptrdiff_t m_nNumDelayVariations = 0x100; // int32
constexpr std::ptrdiff_t m_grainResources = 0x108; // CUtlVector<CStrongHandle<InfoForResourceTypeCVoiceContainerBase>>
}
// Parent: CVoiceContainerBase
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
// MPropertyFriendlyName
// MPropertyDescription
namespace CVoiceContainerDefault {
constexpr std::ptrdiff_t m_vsndReference = 0xF0; // CStrongHandle<InfoForResourceTypeCVoiceContainerBase>
}
// Parent: None
// Field count: 11
//
// Metadata:
// MGetKV3ClassDefaults
namespace CVSound {
constexpr std::ptrdiff_t m_nRate = 0x0; // int32
constexpr std::ptrdiff_t m_nFormat = 0x4; // CVSoundFormat_t
constexpr std::ptrdiff_t m_nChannels = 0x8; // uint32
constexpr std::ptrdiff_t m_nLoopStart = 0xC; // int32
constexpr std::ptrdiff_t m_nSampleCount = 0x10; // uint32
constexpr std::ptrdiff_t m_flDuration = 0x14; // float32
constexpr std::ptrdiff_t m_Sentences = 0x18; // CUtlVector<CAudioSentence>
constexpr std::ptrdiff_t m_nStreamingSize = 0x30; // uint32
constexpr std::ptrdiff_t m_nSeekTable = 0x38; // CUtlVector<int32>
constexpr std::ptrdiff_t m_nLoopEnd = 0x50; // int32
constexpr std::ptrdiff_t m_encodedHeader = 0x58; // CUtlBinaryBlock
}
// Parent: None
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -219,7 +327,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_table = 0x0; // CUtlVector<CDspPresetModifierList>
}
// Parent: CSosGroupActionSchema
// Fields count: 7
// Field count: 7
//
// Metadata:
// MGetKV3ClassDefaults
@@ -233,7 +341,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_groupBoundingBoxMaxsOpvar = 0x40; // CUtlString
}
// Parent: CSosGroupActionSchema
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -244,8 +352,17 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_opvarName = 0x28; // CUtlString
constexpr std::ptrdiff_t m_nSortType = 0x30; // SosActionSortType_t
}
// Parent: CVoiceContainerBase
// Field count: 0
//
// Metadata:
// MGetKV3ClassDefaults
// MPropertyFriendlyName
// MPropertyDescription
namespace CVoiceContainerNull {
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -255,7 +372,19 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_flInterpolationTime = 0x8; // float32
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
// MVDataNodeType
// MPropertyFriendlyName
// MPropertyDescription
namespace CVoiceContainerAnalysisBase {
constexpr std::ptrdiff_t m_bRegenerateCurveOnCompile = 0x8; // bool
constexpr std::ptrdiff_t m_curve = 0x10; // CPiecewiseCurve
}
// Parent: None
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -263,18 +392,31 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_type = 0x0; // VMixPannerType_t
constexpr std::ptrdiff_t m_flStrength = 0x4; // float32
}
// Parent: CVoiceContainerBase
// Fields count: 3
// Parent: CSosGroupActionSchema
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
namespace CSosGroupActionSoundeventPrioritySchema {
constexpr std::ptrdiff_t m_priorityValue = 0x18; // CUtlString
constexpr std::ptrdiff_t m_priorityVolumeScalar = 0x20; // CUtlString
constexpr std::ptrdiff_t m_priorityContributeButDontRead = 0x28; // CUtlString
constexpr std::ptrdiff_t m_bPriorityReadButDontContribute = 0x30; // CUtlString
}
// Parent: CVoiceContainerBase
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
// MPropertyFriendlyName
// MPropertyDescription
namespace CVoiceContainerRealtimeFMSineWave {
constexpr std::ptrdiff_t m_flCarrierFrequency = 0x60; // float32
constexpr std::ptrdiff_t m_flModulatorFrequency = 0x64; // float32
constexpr std::ptrdiff_t m_flModulatorAmount = 0x68; // float32
constexpr std::ptrdiff_t m_flCarrierFrequency = 0xF0; // float32
constexpr std::ptrdiff_t m_flModulatorFrequency = 0xF4; // float32
constexpr std::ptrdiff_t m_flModulatorAmount = 0xF8; // float32
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -282,7 +424,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_EditItems = 0x0; // CUtlVector<SosEditItemInfo_t>
}
// Parent: None
// Fields count: 9
// Field count: 9
//
// Metadata:
// MGetKV3ClassDefaults
@@ -298,7 +440,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_bApplyAntialiasing = 0x2C; // bool
}
// Parent: None
// Fields count: 17
// Field count: 17
//
// Metadata:
// MGetKV3ClassDefaults
@@ -322,7 +464,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_flTaps = 0x4C; // float32
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -333,7 +475,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_actionInstanceType = 0x14; // ActionType_t
}
// Parent: None
// Fields count: 8
// Field count: 9
//
// Metadata:
// MGetKV3ClassDefaults
@@ -345,11 +487,12 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nBlockMaxCount = 0x10; // int32
constexpr std::ptrdiff_t m_bInvertMatch = 0x14; // bool
constexpr std::ptrdiff_t m_matchPattern = 0x18; // CSosGroupMatchPattern
constexpr std::ptrdiff_t m_branchPattern = 0x40; // CSosGroupBranchPattern
constexpr std::ptrdiff_t m_vActions = 0xB0; // CSosGroupActionSchema*[4]
constexpr std::ptrdiff_t m_branchPattern = 0x48; // CSosGroupBranchPattern
constexpr std::ptrdiff_t m_flLifeSpanTime = 0x58; // float32
constexpr std::ptrdiff_t m_vActions = 0xC0; // CSosGroupActionSchema*[4]
}
// Parent: None
// Fields count: 4
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -358,9 +501,10 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_bMatchEventSubString = 0x9; // bool
constexpr std::ptrdiff_t m_bMatchEntIndex = 0xA; // bool
constexpr std::ptrdiff_t m_bMatchOpvar = 0xB; // bool
constexpr std::ptrdiff_t m_bMatchString = 0xC; // bool
}
// Parent: None
// Fields count: 10
// Field count: 10
//
// Metadata:
// MGetKV3ClassDefaults
@@ -377,7 +521,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_bandDesc = 0x24; // VMixDynamicsBand_t[3]
}
// Parent: None
// Fields count: 6
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
@@ -390,7 +534,30 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_flListenerReverbModifierWhenSourceReverbIsActive = 0x18; // float32
}
// Parent: None
// Fields count: 2
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
namespace CAudioMorphData {
constexpr std::ptrdiff_t m_times = 0x0; // CUtlVector<float32>
constexpr std::ptrdiff_t m_nameHashCodes = 0x18; // CUtlVector<uint32>
constexpr std::ptrdiff_t m_nameStrings = 0x30; // CUtlVector<CUtlString>
constexpr std::ptrdiff_t m_samples = 0x48; // CUtlVector<CUtlVector<float32>>
constexpr std::ptrdiff_t m_flEaseIn = 0x60; // float32
constexpr std::ptrdiff_t m_flEaseOut = 0x64; // float32
}
// Parent: CVoiceContainerBase
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
// MPropertyFriendlyName
// MPropertyDescription
namespace CVoiceContainerStaticAdditiveSynth {
constexpr std::ptrdiff_t m_tones = 0xF0; // CUtlVector<CVoiceContainerStaticAdditiveSynth::CTone>
}
// Parent: None
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -398,26 +565,22 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_dspName = 0x0; // CUtlString
constexpr std::ptrdiff_t m_modifiers = 0x8; // CUtlVector<CDSPMixgroupModifier>
}
// Parent: CVoiceContainerBase
// Fields count: 3
//
// Metadata:
// MGetKV3ClassDefaults
namespace CVoiceContainerBlend {
constexpr std::ptrdiff_t m_hSoundOne = 0x60; // CStrongHandle<InfoForResourceTypeCVoiceContainerBase>
constexpr std::ptrdiff_t m_hSoundTwo = 0x68; // CStrongHandle<InfoForResourceTypeCVoiceContainerBase>
constexpr std::ptrdiff_t m_flBlendAmount = 0x70; // float32
}
// Parent: None
// Fields count: 1
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
// MVDataNodeType
// MVDataFileExtension
// MPropertyFriendlyName
// MPropertyDescription
namespace CVoiceContainerBase {
constexpr std::ptrdiff_t m_curves = 0x20; // CUtlDict<CPiecewiseCurve,F(size=1)>
constexpr std::ptrdiff_t m_vSound = 0x20; // CVSound
constexpr std::ptrdiff_t m_bHideAnalyzers = 0xD0; // bool
constexpr std::ptrdiff_t m_analysisContainers = 0xD8; // CUtlVector<CVoiceContainerAnalysisBase*>
}
// Parent: None
// Fields count: 7
// Field count: 7
//
// Metadata:
// MGetKV3ClassDefaults
@@ -431,34 +594,37 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_flWidth = 0x24; // float32
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
namespace VMixEQ8Desc_t {
constexpr std::ptrdiff_t m_stages = 0x0; // VMixFilterDesc_t[8]
}
// Parent: CVoiceContainerWavFileReader
// Fields count: 1
// Parent: None
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
namespace CVoiceContainerEnvelopeAnalyzer {
constexpr std::ptrdiff_t m_envBuffer = 0x68; // CUtlVector<float32>
namespace CAudioPhonemeTag {
constexpr std::ptrdiff_t m_flStartTime = 0x0; // float32
constexpr std::ptrdiff_t m_flEndTime = 0x4; // float32
constexpr std::ptrdiff_t m_nPhonemeCode = 0x8; // int32
}
// Parent: CVoiceContainerBase
// Fields count: 4
// Parent: CVoiceContainerAnalysisBase
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
namespace CVoiceContainerEngineSound {
constexpr std::ptrdiff_t m_SoundToPlay = 0x60; // CStrongHandle<InfoForResourceTypeCVoiceContainerBase>
constexpr std::ptrdiff_t m_flTestConstantParam = 0x68; // float32
constexpr std::ptrdiff_t m_flTestSoundEventBoundParam = 0x6C; // float32
constexpr std::ptrdiff_t m_flEngineRPM = 0x70; // float32
// MPropertyFriendlyName
// MPropertyDescription
namespace CVoiceContainerEnvelopeAnalyzer {
constexpr std::ptrdiff_t m_mode = 0x50; // EMode_t
constexpr std::ptrdiff_t m_nSamples = 0x54; // int32
constexpr std::ptrdiff_t m_flThreshold = 0x58; // float32
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -466,7 +632,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_soundEventVMix = 0x0; // CStrongHandle<InfoForResourceTypeCVMixListResource>
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -477,7 +643,16 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nProcType = 0xC; // int32
}
// Parent: None
// Fields count: 8
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
namespace CAudioEmphasisSample {
constexpr std::ptrdiff_t m_flTime = 0x0; // float32
constexpr std::ptrdiff_t m_flValue = 0x4; // float32
}
// Parent: None
// Field count: 8
//
// Metadata:
// MGetKV3ClassDefaults
@@ -492,7 +667,14 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_flHighCutoffFreq = 0x1C; // float32
}
// Parent: None
// Fields count: 1
// Field count: 0
//
// Metadata:
// MGetKV3ClassDefaults
namespace CSoundInfoHeader {
}
// Parent: None
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -500,7 +682,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_groupList = 0x0; // CUtlVector<CSosSoundEventGroupSchema>
}
// Parent: CSosGroupBranchPattern
// Fields count: 4
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -509,9 +691,10 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_matchSoundEventSubString = 0x18; // CUtlString
constexpr std::ptrdiff_t m_flEntIndex = 0x20; // float32
constexpr std::ptrdiff_t m_flOpvar = 0x24; // float32
constexpr std::ptrdiff_t m_opvarString = 0x28; // CUtlString
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -522,25 +705,8 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t itemKVString = 0x20; // CUtlString
constexpr std::ptrdiff_t itemPos = 0x28; // Vector2D
}
// Parent: CVoiceContainerWavFileReader
// Fields count: 1
//
// Metadata:
// MGetKV3ClassDefaults
namespace CVoiceContainerTestConstant {
constexpr std::ptrdiff_t m_flTestConstantParam = 0x68; // bool
}
// Parent: CVoiceContainerBase
// Fields count: 2
//
// Metadata:
// MGetKV3ClassDefaults
namespace CVoiceContainerTestNestedDynamic {
constexpr std::ptrdiff_t m_SoundToPlay = 0x60; // CStrongHandle<InfoForResourceTypeCVoiceContainerBase>
constexpr std::ptrdiff_t m_flTestConstantParam = 0x68; // float32
}
// Parent: None
// Fields count: 7
// Field count: 7
//
// Metadata:
// MGetKV3ClassDefaults
@@ -553,16 +719,8 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_flFeedbackDiffusion1 = 0x14; // float32
constexpr std::ptrdiff_t m_flFeedbackDiffusion2 = 0x18; // float32
}
// Parent: CVoiceContainerBase
// Fields count: 1
//
// Metadata:
// MGetKV3ClassDefaults
namespace CVoiceContainerWavFileReader {
constexpr std::ptrdiff_t m_wavFilePath = 0x60; // CUtlString
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -573,7 +731,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_flOutputGain = 0xC; // float32
}
// Parent: None
// Fields count: 9
// Field count: 9
//
// Metadata:
// MGetKV3ClassDefaults
@@ -589,7 +747,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_bPeakMode = 0x20; // bool
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -601,7 +759,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nOversampleFactor = 0x10; // int32
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -610,8 +768,19 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_flHoldTimeMS = 0x4; // float32
constexpr std::ptrdiff_t m_flReleaseTimeMS = 0x8; // float32
}
// Parent: None
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
namespace CAudioSentence {
constexpr std::ptrdiff_t m_bShouldVoiceDuck = 0x0; // bool
constexpr std::ptrdiff_t m_RunTimePhonemes = 0x8; // CUtlVector<CAudioPhonemeTag>
constexpr std::ptrdiff_t m_EmphasisSamples = 0x20; // CUtlVector<CAudioEmphasisSample>
constexpr std::ptrdiff_t m_morphData = 0x38; // CAudioMorphData
}
// Parent: CSosGroupActionSchema
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -621,15 +790,17 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nSortType = 0x20; // SosActionSortType_t
}
// Parent: CVoiceContainerDecayingSineWave
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
// MPropertyFriendlyName
// MPropertyDescription
namespace CVoiceContainerAmpedDecayingSineWave {
constexpr std::ptrdiff_t m_flGainAmount = 0x68; // float32
constexpr std::ptrdiff_t m_flGainAmount = 0xF8; // float32
}
// Parent: None
// Fields count: 8
// Field count: 8
//
// Metadata:
// MGetKV3ClassDefaults
@@ -644,7 +815,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nLFOShape = 0x28; // VMixLFOShape_t
}
// Parent: None
// Fields count: 10
// Field count: 10
//
// Metadata:
// MGetKV3ClassDefaults
@@ -661,15 +832,38 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_bSolo = 0x21; // bool
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
namespace VMixEffectChainDesc_t {
constexpr std::ptrdiff_t m_flCrossfadeTime = 0x0; // float32
}
// Parent: None
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
namespace CVoiceContainerStaticAdditiveSynth__CGainScalePerInstance {
constexpr std::ptrdiff_t m_flMinVolume = 0x0; // float32
constexpr std::ptrdiff_t m_nInstancesAtMinVolume = 0x4; // int32
constexpr std::ptrdiff_t m_flMaxVolume = 0x8; // float32
constexpr std::ptrdiff_t m_nInstancesAtMaxVolume = 0xC; // int32
}
// Parent: CVoiceContainerBase
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
// MPropertyFriendlyName
// MPropertyDescription
namespace CVoiceContainerSelector {
constexpr std::ptrdiff_t m_mode = 0xF0; // PlayBackMode_t
constexpr std::ptrdiff_t m_bRetrigger = 0xF4; // bool
constexpr std::ptrdiff_t m_soundsToPlay = 0xF8; // CUtlVector<CStrongHandle<InfoForResourceTypeCVoiceContainerBase>>
}
// Parent: CSosGroupActionSchema
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -678,7 +872,32 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_flMaxDuration = 0x1C; // float32
}
// Parent: CSosGroupActionSchema
// Fields count: 1
// Field count: 8
//
// Metadata:
// MGetKV3ClassDefaults
namespace CSosGroupActionMemberCountEnvelopeSchema {
constexpr std::ptrdiff_t m_nBaseCount = 0x18; // int32
constexpr std::ptrdiff_t m_nTargetCount = 0x1C; // int32
constexpr std::ptrdiff_t m_flBaseValue = 0x20; // float32
constexpr std::ptrdiff_t m_flTargetValue = 0x24; // float32
constexpr std::ptrdiff_t m_flAttack = 0x28; // float32
constexpr std::ptrdiff_t m_flDecay = 0x2C; // float32
constexpr std::ptrdiff_t m_resultVarName = 0x30; // CUtlString
constexpr std::ptrdiff_t m_bSaveToGroup = 0x38; // bool
}
// Parent: CVoiceContainerBase
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
// MPropertyFriendlyName
// MPropertyDescription
namespace CVoiceContainerSwitch {
constexpr std::ptrdiff_t m_soundsToPlay = 0xF0; // CUtlVector<CVoiceContainerBase*>
}
// Parent: CSosGroupActionSchema
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -686,7 +905,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_flMaxDuration = 0x18; // float32
}
// Parent: None
// Fields count: 10
// Field count: 10
//
// Metadata:
// MGetKV3ClassDefaults
@@ -703,7 +922,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_bPeakMode = 0x24; // bool
}
// Parent: None
// Fields count: 6
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
@@ -716,16 +935,18 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_flBassFreq = 0x14; // float32
}
// Parent: CVoiceContainerBase
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
// MPropertyFriendlyName
// MPropertyDescription
namespace CVoiceContainerDecayingSineWave {
constexpr std::ptrdiff_t m_flFrequency = 0x60; // float32
constexpr std::ptrdiff_t m_flDecayTime = 0x64; // float32
constexpr std::ptrdiff_t m_flFrequency = 0xF0; // float32
constexpr std::ptrdiff_t m_flDecayTime = 0xF4; // float32
}
// Parent: None
// Fields count: 6
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
@@ -738,7 +959,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_flQ = 0xC; // float32
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -748,7 +969,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_flPhase = 0x8; // float32
}
// Parent: None
// Fields count: 12
// Field count: 12
//
// Metadata:
// MGetKV3ClassDefaults

View File

@@ -1,6 +1,65 @@
{
"soundsystem.dll": {
"classes": {
"CAudioEmphasisSample": {
"fields": {
"m_flTime": 0,
"m_flValue": 4
},
"metadata": [
{
"name": "MGetKV3ClassDefaults",
"type": "Unknown"
}
],
"parent": null
},
"CAudioMorphData": {
"fields": {
"m_flEaseIn": 96,
"m_flEaseOut": 100,
"m_nameHashCodes": 24,
"m_nameStrings": 48,
"m_samples": 72,
"m_times": 0
},
"metadata": [
{
"name": "MGetKV3ClassDefaults",
"type": "Unknown"
}
],
"parent": null
},
"CAudioPhonemeTag": {
"fields": {
"m_flEndTime": 4,
"m_flStartTime": 0,
"m_nPhonemeCode": 8
},
"metadata": [
{
"name": "MGetKV3ClassDefaults",
"type": "Unknown"
}
],
"parent": null
},
"CAudioSentence": {
"fields": {
"m_EmphasisSamples": 32,
"m_RunTimePhonemes": 8,
"m_bShouldVoiceDuck": 0,
"m_morphData": 56
},
"metadata": [
{
"name": "MGetKV3ClassDefaults",
"type": "Unknown"
}
],
"parent": null
},
"CDSPMixgroupModifier": {
"fields": {
"m_flListenerReverbModifierWhenSourceReverbIsActive": 24,
@@ -61,6 +120,25 @@
],
"parent": "CSosGroupActionSchema"
},
"CSosGroupActionMemberCountEnvelopeSchema": {
"fields": {
"m_bSaveToGroup": 56,
"m_flAttack": 40,
"m_flBaseValue": 32,
"m_flDecay": 44,
"m_flTargetValue": 36,
"m_nBaseCount": 24,
"m_nTargetCount": 28,
"m_resultVarName": 48
},
"metadata": [
{
"name": "MGetKV3ClassDefaults",
"type": "Unknown"
}
],
"parent": "CSosGroupActionSchema"
},
"CSosGroupActionSchema": {
"fields": {
"m_actionInstanceType": 20,
@@ -113,6 +191,21 @@
],
"parent": "CSosGroupActionSchema"
},
"CSosGroupActionSoundeventPrioritySchema": {
"fields": {
"m_bPriorityReadButDontContribute": 48,
"m_priorityContributeButDontRead": 40,
"m_priorityValue": 24,
"m_priorityVolumeScalar": 32
},
"metadata": [
{
"name": "MGetKV3ClassDefaults",
"type": "Unknown"
}
],
"parent": "CSosGroupActionSchema"
},
"CSosGroupActionTimeBlockLimitSchema": {
"fields": {
"m_flMaxDuration": 28,
@@ -143,7 +236,8 @@
"m_bMatchEntIndex": 10,
"m_bMatchEventName": 8,
"m_bMatchEventSubString": 9,
"m_bMatchOpvar": 11
"m_bMatchOpvar": 11,
"m_bMatchString": 12
},
"metadata": [
{
@@ -158,7 +252,8 @@
"m_flEntIndex": 32,
"m_flOpvar": 36,
"m_matchSoundEventName": 16,
"m_matchSoundEventSubString": 24
"m_matchSoundEventSubString": 24,
"m_opvarString": 40
},
"metadata": [
{
@@ -184,12 +279,13 @@
"fields": {
"m_bInvertMatch": 20,
"m_bIsBlocking": 12,
"m_branchPattern": 64,
"m_branchPattern": 72,
"m_flLifeSpanTime": 88,
"m_matchPattern": 24,
"m_nBlockMaxCount": 16,
"m_nType": 8,
"m_name": 0,
"m_vActions": 176
"m_vActions": 192
},
"metadata": [
{
@@ -215,21 +311,29 @@
],
"parent": null
},
"CVoiceContainerAmpedDecayingSineWave": {
"fields": {
"m_flGainAmount": 104
},
"CSoundInfoHeader": {
"fields": {},
"metadata": [
{
"name": "MGetKV3ClassDefaults",
"type": "Unknown"
}
],
"parent": "CVoiceContainerDecayingSineWave"
"parent": null
},
"CVoiceContainerBase": {
"CVSound": {
"fields": {
"m_curves": 32
"m_Sentences": 24,
"m_encodedHeader": 88,
"m_flDuration": 20,
"m_nChannels": 8,
"m_nFormat": 4,
"m_nLoopEnd": 80,
"m_nLoopStart": 12,
"m_nRate": 0,
"m_nSampleCount": 16,
"m_nSeekTable": 56,
"m_nStreamingSize": 48
},
"metadata": [
{
@@ -239,53 +343,139 @@
],
"parent": null
},
"CVoiceContainerBlend": {
"CVoiceContainerAmpedDecayingSineWave": {
"fields": {
"m_flBlendAmount": 112,
"m_hSoundOne": 96,
"m_hSoundTwo": 104
"m_flGainAmount": 248
},
"metadata": [
{
"name": "MGetKV3ClassDefaults",
"type": "Unknown"
},
{
"name": "MPropertyFriendlyName",
"type": "Unknown"
},
{
"name": "MPropertyDescription",
"type": "Unknown"
}
],
"parent": "CVoiceContainerDecayingSineWave"
},
"CVoiceContainerAnalysisBase": {
"fields": {
"m_bRegenerateCurveOnCompile": 8,
"m_curve": 16
},
"metadata": [
{
"name": "MGetKV3ClassDefaults",
"type": "Unknown"
},
{
"name": "MVDataNodeType",
"type": "Unknown"
},
{
"name": "MPropertyFriendlyName",
"type": "Unknown"
},
{
"name": "MPropertyDescription",
"type": "Unknown"
}
],
"parent": null
},
"CVoiceContainerBase": {
"fields": {
"m_analysisContainers": 216,
"m_bHideAnalyzers": 208,
"m_vSound": 32
},
"metadata": [
{
"name": "MGetKV3ClassDefaults",
"type": "Unknown"
},
{
"name": "MVDataNodeType",
"type": "Unknown"
},
{
"name": "MVDataFileExtension",
"type": "Unknown"
},
{
"name": "MPropertyFriendlyName",
"type": "Unknown"
},
{
"name": "MPropertyDescription",
"type": "Unknown"
}
],
"parent": null
},
"CVoiceContainerBlender": {
"fields": {
"m_firstSound": 240,
"m_flBlendFactor": 256,
"m_secondSound": 248
},
"metadata": [
{
"name": "MGetKV3ClassDefaults",
"type": "Unknown"
},
{
"name": "MPropertyFriendlyName",
"type": "Unknown"
},
{
"name": "MPropertyDescription",
"type": "Unknown"
}
],
"parent": "CVoiceContainerBase"
},
"CVoiceContainerDecayingSineWave": {
"fields": {
"m_flDecayTime": 100,
"m_flFrequency": 96
"m_flDecayTime": 244,
"m_flFrequency": 240
},
"metadata": [
{
"name": "MGetKV3ClassDefaults",
"type": "Unknown"
},
{
"name": "MPropertyFriendlyName",
"type": "Unknown"
},
{
"name": "MPropertyDescription",
"type": "Unknown"
}
],
"parent": "CVoiceContainerBase"
},
"CVoiceContainerDefault": {
"fields": {},
"fields": {
"m_vsndReference": 240
},
"metadata": [
{
"name": "MGetKV3ClassDefaults",
"type": "Unknown"
}
],
"parent": "CVoiceContainerBase"
},
"CVoiceContainerEngineSound": {
"fields": {
"m_SoundToPlay": 96,
"m_flEngineRPM": 112,
"m_flTestConstantParam": 104,
"m_flTestSoundEventBoundParam": 108
},
"metadata": [
{
"name": "MGetKV3ClassDefaults",
"name": "MPropertyFriendlyName",
"type": "Unknown"
},
{
"name": "MPropertyDescription",
"type": "Unknown"
}
],
@@ -293,81 +483,196 @@
},
"CVoiceContainerEnvelopeAnalyzer": {
"fields": {
"m_envBuffer": 104
"m_flThreshold": 88,
"m_mode": 80,
"m_nSamples": 84
},
"metadata": [
{
"name": "MGetKV3ClassDefaults",
"type": "Unknown"
},
{
"name": "MPropertyFriendlyName",
"type": "Unknown"
},
{
"name": "MPropertyDescription",
"type": "Unknown"
}
],
"parent": "CVoiceContainerWavFileReader"
"parent": "CVoiceContainerAnalysisBase"
},
"CVoiceContainerNull": {
"fields": {},
"metadata": [
{
"name": "MGetKV3ClassDefaults",
"type": "Unknown"
},
{
"name": "MPropertyFriendlyName",
"type": "Unknown"
},
{
"name": "MPropertyDescription",
"type": "Unknown"
}
],
"parent": "CVoiceContainerBase"
},
"CVoiceContainerRandomSampler": {
"fields": {
"m_flLoudAmplitude": 96,
"m_flLoudAmplitudeJitter": 100,
"m_flLoudTimeJitter": 112,
"m_flSoftAmplitude": 104,
"m_flSoftAmplitudeJitter": 108,
"m_flSoftTimeJitter": 116,
"m_grainResources": 120
"m_flAmplitude": 240,
"m_flAmplitudeJitter": 244,
"m_flMaxLength": 252,
"m_flTimeJitter": 248,
"m_grainResources": 264,
"m_nNumDelayVariations": 256
},
"metadata": [
{
"name": "MGetKV3ClassDefaults",
"type": "Unknown"
},
{
"name": "MPropertyFriendlyName",
"type": "Unknown"
},
{
"name": "MPropertyDescription",
"type": "Unknown"
}
],
"parent": "CVoiceContainerBase"
},
"CVoiceContainerRealtimeFMSineWave": {
"fields": {
"m_flCarrierFrequency": 96,
"m_flModulatorAmount": 104,
"m_flModulatorFrequency": 100
"m_flCarrierFrequency": 240,
"m_flModulatorAmount": 248,
"m_flModulatorFrequency": 244
},
"metadata": [
{
"name": "MGetKV3ClassDefaults",
"type": "Unknown"
},
{
"name": "MPropertyFriendlyName",
"type": "Unknown"
},
{
"name": "MPropertyDescription",
"type": "Unknown"
}
],
"parent": "CVoiceContainerBase"
},
"CVoiceContainerTestConstant": {
"CVoiceContainerSelector": {
"fields": {
"m_flTestConstantParam": 104
"m_bRetrigger": 244,
"m_mode": 240,
"m_soundsToPlay": 248
},
"metadata": [
{
"name": "MGetKV3ClassDefaults",
"type": "Unknown"
}
],
"parent": "CVoiceContainerWavFileReader"
},
"CVoiceContainerTestNestedDynamic": {
"fields": {
"m_SoundToPlay": 96,
"m_flTestConstantParam": 104
},
"metadata": [
{
"name": "MGetKV3ClassDefaults",
"name": "MPropertyFriendlyName",
"type": "Unknown"
},
{
"name": "MPropertyDescription",
"type": "Unknown"
}
],
"parent": "CVoiceContainerBase"
},
"CVoiceContainerWavFileReader": {
"CVoiceContainerStaticAdditiveSynth": {
"fields": {
"m_wavFilePath": 96
"m_tones": 240
},
"metadata": [
{
"name": "MGetKV3ClassDefaults",
"type": "Unknown"
},
{
"name": "MPropertyFriendlyName",
"type": "Unknown"
},
{
"name": "MPropertyDescription",
"type": "Unknown"
}
],
"parent": "CVoiceContainerBase"
},
"CVoiceContainerStaticAdditiveSynth__CGainScalePerInstance": {
"fields": {
"m_flMaxVolume": 8,
"m_flMinVolume": 0,
"m_nInstancesAtMaxVolume": 12,
"m_nInstancesAtMinVolume": 4
},
"metadata": [
{
"name": "MGetKV3ClassDefaults",
"type": "Unknown"
}
],
"parent": null
},
"CVoiceContainerStaticAdditiveSynth__CHarmonic": {
"fields": {
"m_curve": 16,
"m_flCents": 8,
"m_flPhase": 12,
"m_nFundamental": 1,
"m_nOctave": 4,
"m_nWaveform": 0,
"m_volumeScaling": 80
},
"metadata": [
{
"name": "MGetKV3ClassDefaults",
"type": "Unknown"
}
],
"parent": null
},
"CVoiceContainerStaticAdditiveSynth__CTone": {
"fields": {
"m_bSyncInstances": 88,
"m_curve": 24,
"m_harmonics": 0
},
"metadata": [
{
"name": "MGetKV3ClassDefaults",
"type": "Unknown"
}
],
"parent": null
},
"CVoiceContainerSwitch": {
"fields": {
"m_soundsToPlay": 240
},
"metadata": [
{
"name": "MGetKV3ClassDefaults",
"type": "Unknown"
},
{
"name": "MPropertyFriendlyName",
"type": "Unknown"
},
{
"name": "MPropertyDescription",
"type": "Unknown"
}
],
"parent": "CVoiceContainerBase"
@@ -807,15 +1112,75 @@
"ActionType_t": {
"alignment": 4,
"members": {
"SOS_ACTION_COUNT_ENVELOPE": 7,
"SOS_ACTION_LIMITER": 1,
"SOS_ACTION_NONE": 0,
"SOS_ACTION_SET_SOUNDEVENT_PARAM": 4,
"SOS_ACTION_SOUNDEVENT_CLUSTER": 5,
"SOS_ACTION_SOUNDEVENT_PRIORITY": 6,
"SOS_ACTION_TIME_BLOCK_LIMITER": 3,
"SOS_ACTION_TIME_LIMIT": 2
},
"type": "uint32"
},
"CVSoundFormat_t": {
"alignment": 1,
"members": {
"ADPCM": 3,
"MP3": 2,
"PCM16": 0,
"PCM8": 1
},
"type": "uint8"
},
"EMidiNote": {
"alignment": 1,
"members": {
"A": 9,
"A_Sharp": 10,
"B": 11,
"C": 0,
"C_Sharp": 1,
"Count": 12,
"D": 2,
"D_Sharp": 3,
"E": 4,
"F": 5,
"F_Sharp": 6,
"G": 7,
"G_Sharp": 8
},
"type": "uint8"
},
"EMode_t": {
"alignment": 4,
"members": {
"Peak": 0,
"RMS": 1
},
"type": "uint32"
},
"EWaveform": {
"alignment": 1,
"members": {
"Noise": 4,
"Saw": 2,
"Sine": 0,
"Square": 1,
"Triangle": 3
},
"type": "uint8"
},
"PlayBackMode_t": {
"alignment": 4,
"members": {
"Random": 0,
"RandomAvoidLast": 2,
"RandomNoRepeats": 1,
"Sequential": 3
},
"type": "uint32"
},
"SosActionSortType_t": {
"alignment": 4,
"members": {
@@ -918,36 +1283,36 @@
"VMixProcessorType_t": {
"alignment": 2,
"members": {
"VPROCESSOR_AUTOFILTER": 24,
"VPROCESSOR_BOXVERB": 9,
"VPROCESSOR_CONVOLUTION": 18,
"VPROCESSOR_DELAY": 6,
"VPROCESSOR_DIFFUSOR": 8,
"VPROCESSOR_DYNAMICS": 4,
"VPROCESSOR_DYNAMICS_3BAND": 19,
"VPROCESSOR_DYNAMICS_COMPRESSOR": 20,
"VPROCESSOR_EFFECT_CHAIN": 27,
"VPROCESSOR_ENVELOPE": 16,
"VPROCESSOR_EQ8": 15,
"VPROCESSOR_FILTER": 13,
"VPROCESSOR_FREEVERB": 10,
"VPROCESSOR_FULLWAVE_INTEGRATOR": 12,
"VPROCESSOR_MOD_DELAY": 7,
"VPROCESSOR_OSC": 25,
"VPROCESSOR_PANNER": 22,
"VPROCESSOR_PLATEVERB": 11,
"VPROCESSOR_PRESETDSP": 5,
"VPROCESSOR_RT_PITCH": 2,
"VPROCESSOR_SHAPER": 21,
"VPROCESSOR_STEAMAUDIO_DIRECT": 29,
"VPROCESSOR_STEAMAUDIO_HRTF": 3,
"VPROCESSOR_STEAMAUDIO_PATHING": 14,
"VPROCESSOR_STEAMAUDIO_REVERB": 1,
"VPROCESSOR_STEREODELAY": 26,
"VPROCESSOR_SUBGRAPH_SWITCH": 28,
"VPROCESSOR_AUTOFILTER": 23,
"VPROCESSOR_BOXVERB": 8,
"VPROCESSOR_CONVOLUTION": 17,
"VPROCESSOR_DELAY": 5,
"VPROCESSOR_DIFFUSOR": 7,
"VPROCESSOR_DYNAMICS": 3,
"VPROCESSOR_DYNAMICS_3BAND": 18,
"VPROCESSOR_DYNAMICS_COMPRESSOR": 19,
"VPROCESSOR_EFFECT_CHAIN": 26,
"VPROCESSOR_ENVELOPE": 15,
"VPROCESSOR_EQ8": 14,
"VPROCESSOR_FILTER": 12,
"VPROCESSOR_FREEVERB": 9,
"VPROCESSOR_FULLWAVE_INTEGRATOR": 11,
"VPROCESSOR_MOD_DELAY": 6,
"VPROCESSOR_OSC": 24,
"VPROCESSOR_PANNER": 21,
"VPROCESSOR_PLATEVERB": 10,
"VPROCESSOR_PRESETDSP": 4,
"VPROCESSOR_RT_PITCH": 1,
"VPROCESSOR_SHAPER": 20,
"VPROCESSOR_STEAMAUDIO_DIRECT": 28,
"VPROCESSOR_STEAMAUDIO_HRTF": 2,
"VPROCESSOR_STEAMAUDIO_HYBRIDREVERB": 29,
"VPROCESSOR_STEAMAUDIO_PATHING": 13,
"VPROCESSOR_STEREODELAY": 25,
"VPROCESSOR_SUBGRAPH_SWITCH": 27,
"VPROCESSOR_UNKNOWN": 0,
"VPROCESSOR_UTILITY": 23,
"VPROCESSOR_VOCODER": 17
"VPROCESSOR_UTILITY": 22,
"VPROCESSOR_VOCODER": 16
},
"type": "uint16"
},

View File

@@ -1,16 +1,33 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
#![allow(non_upper_case_globals, non_camel_case_types, non_snake_case, unused)]
pub mod cs2_dumper {
pub mod schemas {
// Module: soundsystem.dll
// Classes count: 51
// Enums count: 13
// Classes count: 63
// Enums count: 18
pub mod soundsystem_dll {
// Alignment: 4
// Members count: 5
// Member count: 2
#[repr(u32)]
pub enum EMode_t {
Peak = 0x0,
RMS = 0x1
}
// Alignment: 1
// Member count: 5
#[repr(u8)]
pub enum EWaveform {
Sine = 0x0,
Square = 0x1,
Saw = 0x2,
Triangle = 0x3,
Noise = 0x4
}
// Alignment: 4
// Member count: 5
#[repr(u32)]
pub enum VMixLFOShape_t {
LFO_SHAPE_SINE = 0x0,
@@ -20,7 +37,7 @@ pub mod cs2_dumper {
LFO_SHAPE_NOISE = 0x4
}
// Alignment: 2
// Members count: 10
// Member count: 10
#[repr(u16)]
pub enum VMixFilterType_t {
FILTER_UNKNOWN = u16::MAX,
@@ -35,7 +52,7 @@ pub mod cs2_dumper {
FILTER_PASSTHROUGH = 0x8
}
// Alignment: 4
// Members count: 3
// Member count: 3
#[repr(u32)]
pub enum SosActionStopType_t {
SOS_STOPTYPE_NONE = 0x0,
@@ -43,7 +60,7 @@ pub mod cs2_dumper {
SOS_STOPTYPE_OPVAR = 0x2
}
// Alignment: 4
// Members count: 6
// Member count: 6
#[repr(u32)]
pub enum SosEditItemType_t {
SOS_EDIT_ITEM_TYPE_SOUNDEVENTS = 0x0,
@@ -54,49 +71,58 @@ pub mod cs2_dumper {
SOS_EDIT_ITEM_TYPE_FIELD = 0x5
}
// Alignment: 4
// Members count: 2
// Member count: 2
#[repr(u32)]
pub enum SosActionSortType_t {
SOS_SORTTYPE_HIGHEST = 0x0,
SOS_SORTTYPE_LOWEST = 0x1
}
// Alignment: 4
// Member count: 4
#[repr(u32)]
pub enum PlayBackMode_t {
Random = 0x0,
RandomNoRepeats = 0x1,
RandomAvoidLast = 0x2,
Sequential = 0x3
}
// Alignment: 2
// Members count: 30
// Member count: 30
#[repr(u16)]
pub enum VMixProcessorType_t {
VPROCESSOR_UNKNOWN = 0x0,
VPROCESSOR_STEAMAUDIO_REVERB = 0x1,
VPROCESSOR_RT_PITCH = 0x2,
VPROCESSOR_STEAMAUDIO_HRTF = 0x3,
VPROCESSOR_DYNAMICS = 0x4,
VPROCESSOR_PRESETDSP = 0x5,
VPROCESSOR_DELAY = 0x6,
VPROCESSOR_MOD_DELAY = 0x7,
VPROCESSOR_DIFFUSOR = 0x8,
VPROCESSOR_BOXVERB = 0x9,
VPROCESSOR_FREEVERB = 0xA,
VPROCESSOR_PLATEVERB = 0xB,
VPROCESSOR_FULLWAVE_INTEGRATOR = 0xC,
VPROCESSOR_FILTER = 0xD,
VPROCESSOR_STEAMAUDIO_PATHING = 0xE,
VPROCESSOR_EQ8 = 0xF,
VPROCESSOR_ENVELOPE = 0x10,
VPROCESSOR_VOCODER = 0x11,
VPROCESSOR_CONVOLUTION = 0x12,
VPROCESSOR_DYNAMICS_3BAND = 0x13,
VPROCESSOR_DYNAMICS_COMPRESSOR = 0x14,
VPROCESSOR_SHAPER = 0x15,
VPROCESSOR_PANNER = 0x16,
VPROCESSOR_UTILITY = 0x17,
VPROCESSOR_AUTOFILTER = 0x18,
VPROCESSOR_OSC = 0x19,
VPROCESSOR_STEREODELAY = 0x1A,
VPROCESSOR_EFFECT_CHAIN = 0x1B,
VPROCESSOR_SUBGRAPH_SWITCH = 0x1C,
VPROCESSOR_STEAMAUDIO_DIRECT = 0x1D
VPROCESSOR_RT_PITCH = 0x1,
VPROCESSOR_STEAMAUDIO_HRTF = 0x2,
VPROCESSOR_DYNAMICS = 0x3,
VPROCESSOR_PRESETDSP = 0x4,
VPROCESSOR_DELAY = 0x5,
VPROCESSOR_MOD_DELAY = 0x6,
VPROCESSOR_DIFFUSOR = 0x7,
VPROCESSOR_BOXVERB = 0x8,
VPROCESSOR_FREEVERB = 0x9,
VPROCESSOR_PLATEVERB = 0xA,
VPROCESSOR_FULLWAVE_INTEGRATOR = 0xB,
VPROCESSOR_FILTER = 0xC,
VPROCESSOR_STEAMAUDIO_PATHING = 0xD,
VPROCESSOR_EQ8 = 0xE,
VPROCESSOR_ENVELOPE = 0xF,
VPROCESSOR_VOCODER = 0x10,
VPROCESSOR_CONVOLUTION = 0x11,
VPROCESSOR_DYNAMICS_3BAND = 0x12,
VPROCESSOR_DYNAMICS_COMPRESSOR = 0x13,
VPROCESSOR_SHAPER = 0x14,
VPROCESSOR_PANNER = 0x15,
VPROCESSOR_UTILITY = 0x16,
VPROCESSOR_AUTOFILTER = 0x17,
VPROCESSOR_OSC = 0x18,
VPROCESSOR_STEREODELAY = 0x19,
VPROCESSOR_EFFECT_CHAIN = 0x1A,
VPROCESSOR_SUBGRAPH_SWITCH = 0x1B,
VPROCESSOR_STEAMAUDIO_DIRECT = 0x1C,
VPROCESSOR_STEAMAUDIO_HYBRIDREVERB = 0x1D
}
// Alignment: 4
// Members count: 30
// Member count: 30
#[repr(u32)]
pub enum soundlevel_t {
SNDLVL_NONE = 0x0,
@@ -109,14 +135,11 @@ pub mod cs2_dumper {
SNDLVL_50dB = 0x32,
SNDLVL_55dB = 0x37,
SNDLVL_IDLE = 0x3C,
SNDLVL_60dB = 0x3C,
SNDLVL_65dB = 0x41,
SNDLVL_STATIC = 0x42,
SNDLVL_70dB = 0x46,
SNDLVL_NORM = 0x4B,
SNDLVL_75dB = 0x4B,
SNDLVL_80dB = 0x50,
SNDLVL_TALKING = 0x50,
SNDLVL_85dB = 0x55,
SNDLVL_90dB = 0x5A,
SNDLVL_95dB = 0x5F,
@@ -126,19 +149,18 @@ pub mod cs2_dumper {
SNDLVL_120dB = 0x78,
SNDLVL_130dB = 0x82,
SNDLVL_GUNFIRE = 0x8C,
SNDLVL_140dB = 0x8C,
SNDLVL_150dB = 0x96,
SNDLVL_180dB = 0xB4
}
// Alignment: 4
// Members count: 2
// Member count: 2
#[repr(u32)]
pub enum VMixPannerType_t {
PANNER_TYPE_LINEAR = 0x0,
PANNER_TYPE_EQUAL_POWER = 0x1
}
// Alignment: 4
// Members count: 6
// Member count: 6
#[repr(u32)]
pub enum VMixChannelOperation_t {
VMIX_CHAN_STEREO = 0x0,
@@ -149,7 +171,34 @@ pub mod cs2_dumper {
VMIX_CHAN_MID_SIDE = 0x5
}
// Alignment: 1
// Members count: 9
// Member count: 13
#[repr(u8)]
pub enum EMidiNote {
C = 0x0,
C_Sharp = 0x1,
D = 0x2,
D_Sharp = 0x3,
E = 0x4,
F = 0x5,
F_Sharp = 0x6,
G = 0x7,
G_Sharp = 0x8,
A = 0x9,
A_Sharp = 0xA,
B = 0xB,
Count = 0xC
}
// Alignment: 1
// Member count: 4
#[repr(u8)]
pub enum CVSoundFormat_t {
PCM16 = 0x0,
PCM8 = 0x1,
MP3 = 0x2,
ADPCM = 0x3
}
// Alignment: 1
// Member count: 9
#[repr(u8)]
pub enum VMixFilterSlope_t {
FILTER_SLOPE_1POLE_6dB = 0x0,
@@ -159,11 +208,10 @@ pub mod cs2_dumper {
FILTER_SLOPE_12dB = 0x4,
FILTER_SLOPE_24dB = 0x5,
FILTER_SLOPE_36dB = 0x6,
FILTER_SLOPE_48dB = 0x7,
FILTER_SLOPE_MAX = 0x7
FILTER_SLOPE_48dB = 0x7
}
// Alignment: 4
// Members count: 6
// Member count: 8
#[repr(u32)]
pub enum ActionType_t {
SOS_ACTION_NONE = 0x0,
@@ -171,10 +219,12 @@ pub mod cs2_dumper {
SOS_ACTION_TIME_LIMIT = 0x2,
SOS_ACTION_TIME_BLOCK_LIMITER = 0x3,
SOS_ACTION_SET_SOUNDEVENT_PARAM = 0x4,
SOS_ACTION_SOUNDEVENT_CLUSTER = 0x5
SOS_ACTION_SOUNDEVENT_CLUSTER = 0x5,
SOS_ACTION_SOUNDEVENT_PRIORITY = 0x6,
SOS_ACTION_COUNT_ENVELOPE = 0x7
}
// Alignment: 4
// Members count: 3
// Member count: 3
#[repr(u32)]
pub enum VMixSubgraphSwitchInterpolationType_t {
SUBGRAPH_INTERPOLATION_TEMPORAL_CROSSFADE = 0x0,
@@ -182,14 +232,26 @@ pub mod cs2_dumper {
SUBGRAPH_INTERPOLATION_KEEP_LAST_SUBGRAPH_RUNNING = 0x2
}
// Alignment: 4
// Members count: 2
// Member count: 2
#[repr(u32)]
pub enum SosGroupType_t {
SOS_GROUPTYPE_DYNAMIC = 0x0,
SOS_GROUPTYPE_STATIC = 0x1
}
// Parent: CVoiceContainerBase
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
// MPropertyFriendlyName
// MPropertyDescription
pub mod CVoiceContainerBlender {
pub const m_firstSound: usize = 0xF0; // CStrongHandle<InfoForResourceTypeCVoiceContainerBase>
pub const m_secondSound: usize = 0xF8; // CStrongHandle<InfoForResourceTypeCVoiceContainerBase>
pub const m_flBlendFactor: usize = 0x100; // float32
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -199,29 +261,75 @@ pub mod cs2_dumper {
pub const m_flWidth: usize = 0x8; // float32
pub const m_flLateReflections: usize = 0xC; // float32
}
// Parent: CVoiceContainerBase
// Fields count: 7
// Parent: None
// Field count: 7
//
// Metadata:
// MGetKV3ClassDefaults
pub mod CVoiceContainerRandomSampler {
pub const m_flLoudAmplitude: usize = 0x60; // float32
pub const m_flLoudAmplitudeJitter: usize = 0x64; // float32
pub const m_flSoftAmplitude: usize = 0x68; // float32
pub const m_flSoftAmplitudeJitter: usize = 0x6C; // float32
pub const m_flLoudTimeJitter: usize = 0x70; // float32
pub const m_flSoftTimeJitter: usize = 0x74; // float32
pub const m_grainResources: usize = 0x78; // CUtlVector<CStrongHandle<InfoForResourceTypeCVoiceContainerBase>>
}
// Parent: CVoiceContainerBase
// Fields count: 0
//
// Metadata:
// MGetKV3ClassDefaults
pub mod CVoiceContainerDefault {
pub mod CVoiceContainerStaticAdditiveSynth__CHarmonic {
pub const m_nWaveform: usize = 0x0; // EWaveform
pub const m_nFundamental: usize = 0x1; // EMidiNote
pub const m_nOctave: usize = 0x4; // int32
pub const m_flCents: usize = 0x8; // float32
pub const m_flPhase: usize = 0xC; // float32
pub const m_curve: usize = 0x10; // CPiecewiseCurve
pub const m_volumeScaling: usize = 0x50; // CVoiceContainerStaticAdditiveSynth::CGainScalePerInstance
}
// Parent: None
// Fields count: 1
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
pub mod CVoiceContainerStaticAdditiveSynth__CTone {
pub const m_harmonics: usize = 0x0; // CUtlVector<CVoiceContainerStaticAdditiveSynth::CHarmonic>
pub const m_curve: usize = 0x18; // CPiecewiseCurve
pub const m_bSyncInstances: usize = 0x58; // bool
}
// Parent: CVoiceContainerBase
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
// MPropertyFriendlyName
// MPropertyDescription
pub mod CVoiceContainerRandomSampler {
pub const m_flAmplitude: usize = 0xF0; // float32
pub const m_flAmplitudeJitter: usize = 0xF4; // float32
pub const m_flTimeJitter: usize = 0xF8; // float32
pub const m_flMaxLength: usize = 0xFC; // float32
pub const m_nNumDelayVariations: usize = 0x100; // int32
pub const m_grainResources: usize = 0x108; // CUtlVector<CStrongHandle<InfoForResourceTypeCVoiceContainerBase>>
}
// Parent: CVoiceContainerBase
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
// MPropertyFriendlyName
// MPropertyDescription
pub mod CVoiceContainerDefault {
pub const m_vsndReference: usize = 0xF0; // CStrongHandle<InfoForResourceTypeCVoiceContainerBase>
}
// Parent: None
// Field count: 11
//
// Metadata:
// MGetKV3ClassDefaults
pub mod CVSound {
pub const m_nRate: usize = 0x0; // int32
pub const m_nFormat: usize = 0x4; // CVSoundFormat_t
pub const m_nChannels: usize = 0x8; // uint32
pub const m_nLoopStart: usize = 0xC; // int32
pub const m_nSampleCount: usize = 0x10; // uint32
pub const m_flDuration: usize = 0x14; // float32
pub const m_Sentences: usize = 0x18; // CUtlVector<CAudioSentence>
pub const m_nStreamingSize: usize = 0x30; // uint32
pub const m_nSeekTable: usize = 0x38; // CUtlVector<int32>
pub const m_nLoopEnd: usize = 0x50; // int32
pub const m_encodedHeader: usize = 0x58; // CUtlBinaryBlock
}
// Parent: None
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -230,7 +338,7 @@ pub mod cs2_dumper {
pub const m_table: usize = 0x0; // CUtlVector<CDspPresetModifierList>
}
// Parent: CSosGroupActionSchema
// Fields count: 7
// Field count: 7
//
// Metadata:
// MGetKV3ClassDefaults
@@ -244,7 +352,7 @@ pub mod cs2_dumper {
pub const m_groupBoundingBoxMaxsOpvar: usize = 0x40; // CUtlString
}
// Parent: CSosGroupActionSchema
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -255,8 +363,17 @@ pub mod cs2_dumper {
pub const m_opvarName: usize = 0x28; // CUtlString
pub const m_nSortType: usize = 0x30; // SosActionSortType_t
}
// Parent: CVoiceContainerBase
// Field count: 0
//
// Metadata:
// MGetKV3ClassDefaults
// MPropertyFriendlyName
// MPropertyDescription
pub mod CVoiceContainerNull {
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -266,7 +383,19 @@ pub mod cs2_dumper {
pub const m_flInterpolationTime: usize = 0x8; // float32
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
// MVDataNodeType
// MPropertyFriendlyName
// MPropertyDescription
pub mod CVoiceContainerAnalysisBase {
pub const m_bRegenerateCurveOnCompile: usize = 0x8; // bool
pub const m_curve: usize = 0x10; // CPiecewiseCurve
}
// Parent: None
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -274,18 +403,31 @@ pub mod cs2_dumper {
pub const m_type: usize = 0x0; // VMixPannerType_t
pub const m_flStrength: usize = 0x4; // float32
}
// Parent: CVoiceContainerBase
// Fields count: 3
// Parent: CSosGroupActionSchema
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
pub mod CSosGroupActionSoundeventPrioritySchema {
pub const m_priorityValue: usize = 0x18; // CUtlString
pub const m_priorityVolumeScalar: usize = 0x20; // CUtlString
pub const m_priorityContributeButDontRead: usize = 0x28; // CUtlString
pub const m_bPriorityReadButDontContribute: usize = 0x30; // CUtlString
}
// Parent: CVoiceContainerBase
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
// MPropertyFriendlyName
// MPropertyDescription
pub mod CVoiceContainerRealtimeFMSineWave {
pub const m_flCarrierFrequency: usize = 0x60; // float32
pub const m_flModulatorFrequency: usize = 0x64; // float32
pub const m_flModulatorAmount: usize = 0x68; // float32
pub const m_flCarrierFrequency: usize = 0xF0; // float32
pub const m_flModulatorFrequency: usize = 0xF4; // float32
pub const m_flModulatorAmount: usize = 0xF8; // float32
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -293,7 +435,7 @@ pub mod cs2_dumper {
pub const m_EditItems: usize = 0x0; // CUtlVector<SosEditItemInfo_t>
}
// Parent: None
// Fields count: 9
// Field count: 9
//
// Metadata:
// MGetKV3ClassDefaults
@@ -309,7 +451,7 @@ pub mod cs2_dumper {
pub const m_bApplyAntialiasing: usize = 0x2C; // bool
}
// Parent: None
// Fields count: 17
// Field count: 17
//
// Metadata:
// MGetKV3ClassDefaults
@@ -333,7 +475,7 @@ pub mod cs2_dumper {
pub const m_flTaps: usize = 0x4C; // float32
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -344,7 +486,7 @@ pub mod cs2_dumper {
pub const m_actionInstanceType: usize = 0x14; // ActionType_t
}
// Parent: None
// Fields count: 8
// Field count: 9
//
// Metadata:
// MGetKV3ClassDefaults
@@ -356,11 +498,12 @@ pub mod cs2_dumper {
pub const m_nBlockMaxCount: usize = 0x10; // int32
pub const m_bInvertMatch: usize = 0x14; // bool
pub const m_matchPattern: usize = 0x18; // CSosGroupMatchPattern
pub const m_branchPattern: usize = 0x40; // CSosGroupBranchPattern
pub const m_vActions: usize = 0xB0; // CSosGroupActionSchema*[4]
pub const m_branchPattern: usize = 0x48; // CSosGroupBranchPattern
pub const m_flLifeSpanTime: usize = 0x58; // float32
pub const m_vActions: usize = 0xC0; // CSosGroupActionSchema*[4]
}
// Parent: None
// Fields count: 4
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -369,9 +512,10 @@ pub mod cs2_dumper {
pub const m_bMatchEventSubString: usize = 0x9; // bool
pub const m_bMatchEntIndex: usize = 0xA; // bool
pub const m_bMatchOpvar: usize = 0xB; // bool
pub const m_bMatchString: usize = 0xC; // bool
}
// Parent: None
// Fields count: 10
// Field count: 10
//
// Metadata:
// MGetKV3ClassDefaults
@@ -388,7 +532,7 @@ pub mod cs2_dumper {
pub const m_bandDesc: usize = 0x24; // VMixDynamicsBand_t[3]
}
// Parent: None
// Fields count: 6
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
@@ -401,7 +545,30 @@ pub mod cs2_dumper {
pub const m_flListenerReverbModifierWhenSourceReverbIsActive: usize = 0x18; // float32
}
// Parent: None
// Fields count: 2
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
pub mod CAudioMorphData {
pub const m_times: usize = 0x0; // CUtlVector<float32>
pub const m_nameHashCodes: usize = 0x18; // CUtlVector<uint32>
pub const m_nameStrings: usize = 0x30; // CUtlVector<CUtlString>
pub const m_samples: usize = 0x48; // CUtlVector<CUtlVector<float32>>
pub const m_flEaseIn: usize = 0x60; // float32
pub const m_flEaseOut: usize = 0x64; // float32
}
// Parent: CVoiceContainerBase
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
// MPropertyFriendlyName
// MPropertyDescription
pub mod CVoiceContainerStaticAdditiveSynth {
pub const m_tones: usize = 0xF0; // CUtlVector<CVoiceContainerStaticAdditiveSynth::CTone>
}
// Parent: None
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -409,26 +576,22 @@ pub mod cs2_dumper {
pub const m_dspName: usize = 0x0; // CUtlString
pub const m_modifiers: usize = 0x8; // CUtlVector<CDSPMixgroupModifier>
}
// Parent: CVoiceContainerBase
// Fields count: 3
//
// Metadata:
// MGetKV3ClassDefaults
pub mod CVoiceContainerBlend {
pub const m_hSoundOne: usize = 0x60; // CStrongHandle<InfoForResourceTypeCVoiceContainerBase>
pub const m_hSoundTwo: usize = 0x68; // CStrongHandle<InfoForResourceTypeCVoiceContainerBase>
pub const m_flBlendAmount: usize = 0x70; // float32
}
// Parent: None
// Fields count: 1
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
// MVDataNodeType
// MVDataFileExtension
// MPropertyFriendlyName
// MPropertyDescription
pub mod CVoiceContainerBase {
pub const m_curves: usize = 0x20; // CUtlDict<CPiecewiseCurve,F(size=1)>
pub const m_vSound: usize = 0x20; // CVSound
pub const m_bHideAnalyzers: usize = 0xD0; // bool
pub const m_analysisContainers: usize = 0xD8; // CUtlVector<CVoiceContainerAnalysisBase*>
}
// Parent: None
// Fields count: 7
// Field count: 7
//
// Metadata:
// MGetKV3ClassDefaults
@@ -442,34 +605,37 @@ pub mod cs2_dumper {
pub const m_flWidth: usize = 0x24; // float32
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
pub mod VMixEQ8Desc_t {
pub const m_stages: usize = 0x0; // VMixFilterDesc_t[8]
}
// Parent: CVoiceContainerWavFileReader
// Fields count: 1
// Parent: None
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
pub mod CVoiceContainerEnvelopeAnalyzer {
pub const m_envBuffer: usize = 0x68; // CUtlVector<float32>
pub mod CAudioPhonemeTag {
pub const m_flStartTime: usize = 0x0; // float32
pub const m_flEndTime: usize = 0x4; // float32
pub const m_nPhonemeCode: usize = 0x8; // int32
}
// Parent: CVoiceContainerBase
// Fields count: 4
// Parent: CVoiceContainerAnalysisBase
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
pub mod CVoiceContainerEngineSound {
pub const m_SoundToPlay: usize = 0x60; // CStrongHandle<InfoForResourceTypeCVoiceContainerBase>
pub const m_flTestConstantParam: usize = 0x68; // float32
pub const m_flTestSoundEventBoundParam: usize = 0x6C; // float32
pub const m_flEngineRPM: usize = 0x70; // float32
// MPropertyFriendlyName
// MPropertyDescription
pub mod CVoiceContainerEnvelopeAnalyzer {
pub const m_mode: usize = 0x50; // EMode_t
pub const m_nSamples: usize = 0x54; // int32
pub const m_flThreshold: usize = 0x58; // float32
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -477,7 +643,7 @@ pub mod cs2_dumper {
pub const m_soundEventVMix: usize = 0x0; // CStrongHandle<InfoForResourceTypeCVMixListResource>
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -488,7 +654,16 @@ pub mod cs2_dumper {
pub const m_nProcType: usize = 0xC; // int32
}
// Parent: None
// Fields count: 8
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
pub mod CAudioEmphasisSample {
pub const m_flTime: usize = 0x0; // float32
pub const m_flValue: usize = 0x4; // float32
}
// Parent: None
// Field count: 8
//
// Metadata:
// MGetKV3ClassDefaults
@@ -503,7 +678,14 @@ pub mod cs2_dumper {
pub const m_flHighCutoffFreq: usize = 0x1C; // float32
}
// Parent: None
// Fields count: 1
// Field count: 0
//
// Metadata:
// MGetKV3ClassDefaults
pub mod CSoundInfoHeader {
}
// Parent: None
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -511,7 +693,7 @@ pub mod cs2_dumper {
pub const m_groupList: usize = 0x0; // CUtlVector<CSosSoundEventGroupSchema>
}
// Parent: CSosGroupBranchPattern
// Fields count: 4
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -520,9 +702,10 @@ pub mod cs2_dumper {
pub const m_matchSoundEventSubString: usize = 0x18; // CUtlString
pub const m_flEntIndex: usize = 0x20; // float32
pub const m_flOpvar: usize = 0x24; // float32
pub const m_opvarString: usize = 0x28; // CUtlString
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -533,25 +716,8 @@ pub mod cs2_dumper {
pub const itemKVString: usize = 0x20; // CUtlString
pub const itemPos: usize = 0x28; // Vector2D
}
// Parent: CVoiceContainerWavFileReader
// Fields count: 1
//
// Metadata:
// MGetKV3ClassDefaults
pub mod CVoiceContainerTestConstant {
pub const m_flTestConstantParam: usize = 0x68; // bool
}
// Parent: CVoiceContainerBase
// Fields count: 2
//
// Metadata:
// MGetKV3ClassDefaults
pub mod CVoiceContainerTestNestedDynamic {
pub const m_SoundToPlay: usize = 0x60; // CStrongHandle<InfoForResourceTypeCVoiceContainerBase>
pub const m_flTestConstantParam: usize = 0x68; // float32
}
// Parent: None
// Fields count: 7
// Field count: 7
//
// Metadata:
// MGetKV3ClassDefaults
@@ -564,16 +730,8 @@ pub mod cs2_dumper {
pub const m_flFeedbackDiffusion1: usize = 0x14; // float32
pub const m_flFeedbackDiffusion2: usize = 0x18; // float32
}
// Parent: CVoiceContainerBase
// Fields count: 1
//
// Metadata:
// MGetKV3ClassDefaults
pub mod CVoiceContainerWavFileReader {
pub const m_wavFilePath: usize = 0x60; // CUtlString
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -584,7 +742,7 @@ pub mod cs2_dumper {
pub const m_flOutputGain: usize = 0xC; // float32
}
// Parent: None
// Fields count: 9
// Field count: 9
//
// Metadata:
// MGetKV3ClassDefaults
@@ -600,7 +758,7 @@ pub mod cs2_dumper {
pub const m_bPeakMode: usize = 0x20; // bool
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -612,7 +770,7 @@ pub mod cs2_dumper {
pub const m_nOversampleFactor: usize = 0x10; // int32
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -621,8 +779,19 @@ pub mod cs2_dumper {
pub const m_flHoldTimeMS: usize = 0x4; // float32
pub const m_flReleaseTimeMS: usize = 0x8; // float32
}
// Parent: None
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
pub mod CAudioSentence {
pub const m_bShouldVoiceDuck: usize = 0x0; // bool
pub const m_RunTimePhonemes: usize = 0x8; // CUtlVector<CAudioPhonemeTag>
pub const m_EmphasisSamples: usize = 0x20; // CUtlVector<CAudioEmphasisSample>
pub const m_morphData: usize = 0x38; // CAudioMorphData
}
// Parent: CSosGroupActionSchema
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -632,15 +801,17 @@ pub mod cs2_dumper {
pub const m_nSortType: usize = 0x20; // SosActionSortType_t
}
// Parent: CVoiceContainerDecayingSineWave
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
// MPropertyFriendlyName
// MPropertyDescription
pub mod CVoiceContainerAmpedDecayingSineWave {
pub const m_flGainAmount: usize = 0x68; // float32
pub const m_flGainAmount: usize = 0xF8; // float32
}
// Parent: None
// Fields count: 8
// Field count: 8
//
// Metadata:
// MGetKV3ClassDefaults
@@ -655,7 +826,7 @@ pub mod cs2_dumper {
pub const m_nLFOShape: usize = 0x28; // VMixLFOShape_t
}
// Parent: None
// Fields count: 10
// Field count: 10
//
// Metadata:
// MGetKV3ClassDefaults
@@ -672,15 +843,38 @@ pub mod cs2_dumper {
pub const m_bSolo: usize = 0x21; // bool
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
pub mod VMixEffectChainDesc_t {
pub const m_flCrossfadeTime: usize = 0x0; // float32
}
// Parent: None
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
pub mod CVoiceContainerStaticAdditiveSynth__CGainScalePerInstance {
pub const m_flMinVolume: usize = 0x0; // float32
pub const m_nInstancesAtMinVolume: usize = 0x4; // int32
pub const m_flMaxVolume: usize = 0x8; // float32
pub const m_nInstancesAtMaxVolume: usize = 0xC; // int32
}
// Parent: CVoiceContainerBase
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
// MPropertyFriendlyName
// MPropertyDescription
pub mod CVoiceContainerSelector {
pub const m_mode: usize = 0xF0; // PlayBackMode_t
pub const m_bRetrigger: usize = 0xF4; // bool
pub const m_soundsToPlay: usize = 0xF8; // CUtlVector<CStrongHandle<InfoForResourceTypeCVoiceContainerBase>>
}
// Parent: CSosGroupActionSchema
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -689,7 +883,32 @@ pub mod cs2_dumper {
pub const m_flMaxDuration: usize = 0x1C; // float32
}
// Parent: CSosGroupActionSchema
// Fields count: 1
// Field count: 8
//
// Metadata:
// MGetKV3ClassDefaults
pub mod CSosGroupActionMemberCountEnvelopeSchema {
pub const m_nBaseCount: usize = 0x18; // int32
pub const m_nTargetCount: usize = 0x1C; // int32
pub const m_flBaseValue: usize = 0x20; // float32
pub const m_flTargetValue: usize = 0x24; // float32
pub const m_flAttack: usize = 0x28; // float32
pub const m_flDecay: usize = 0x2C; // float32
pub const m_resultVarName: usize = 0x30; // CUtlString
pub const m_bSaveToGroup: usize = 0x38; // bool
}
// Parent: CVoiceContainerBase
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
// MPropertyFriendlyName
// MPropertyDescription
pub mod CVoiceContainerSwitch {
pub const m_soundsToPlay: usize = 0xF0; // CUtlVector<CVoiceContainerBase*>
}
// Parent: CSosGroupActionSchema
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -697,7 +916,7 @@ pub mod cs2_dumper {
pub const m_flMaxDuration: usize = 0x18; // float32
}
// Parent: None
// Fields count: 10
// Field count: 10
//
// Metadata:
// MGetKV3ClassDefaults
@@ -714,7 +933,7 @@ pub mod cs2_dumper {
pub const m_bPeakMode: usize = 0x24; // bool
}
// Parent: None
// Fields count: 6
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
@@ -727,16 +946,18 @@ pub mod cs2_dumper {
pub const m_flBassFreq: usize = 0x14; // float32
}
// Parent: CVoiceContainerBase
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
// MPropertyFriendlyName
// MPropertyDescription
pub mod CVoiceContainerDecayingSineWave {
pub const m_flFrequency: usize = 0x60; // float32
pub const m_flDecayTime: usize = 0x64; // float32
pub const m_flFrequency: usize = 0xF0; // float32
pub const m_flDecayTime: usize = 0xF4; // float32
}
// Parent: None
// Fields count: 6
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
@@ -749,7 +970,7 @@ pub mod cs2_dumper {
pub const m_flQ: usize = 0xC; // float32
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -759,7 +980,7 @@ pub mod cs2_dumper {
pub const m_flPhase: usize = 0x8; // float32
}
// Parent: None
// Fields count: 12
// Field count: 12
//
// Metadata:
// MGetKV3ClassDefaults

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
namespace CS2Dumper.Schemas {
// Module: vphysics2.dll
@@ -7,14 +7,14 @@ namespace CS2Dumper.Schemas {
// Enums count: 2
public static class Vphysics2Dll {
// Alignment: 4
// Members count: 3
// Member count: 3
public enum JointMotion_t : uint {
JOINT_MOTION_FREE = 0x0,
JOINT_MOTION_LOCKED = 0x1,
JOINT_MOTION_COUNT = 0x2
}
// Alignment: 4
// Members count: 4
// Member count: 4
public enum JointAxis_t : uint {
JOINT_AXIS_X = 0x0,
JOINT_AXIS_Y = 0x1,
@@ -22,7 +22,7 @@ namespace CS2Dumper.Schemas {
JOINT_AXIS_COUNT = 0x3
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -31,7 +31,7 @@ namespace CS2Dumper.Schemas {
public const nint m_flLength = 0x4; // float32
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -39,7 +39,7 @@ namespace CS2Dumper.Schemas {
public const nint m_flMassInv = 0x0; // float32
}
// Parent: RnShapeDesc_t
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -47,7 +47,7 @@ namespace CS2Dumper.Schemas {
public const nint m_Hull = 0x10; // RnHull_t
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -57,7 +57,7 @@ namespace CS2Dumper.Schemas {
public const nint m_nParticle = 0x1C; // uint16[2]
}
// Parent: RnShapeDesc_t
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -65,7 +65,7 @@ namespace CS2Dumper.Schemas {
public const nint m_Capsule = 0x10; // RnCapsule_t
}
// Parent: RnShapeDesc_t
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -73,7 +73,7 @@ namespace CS2Dumper.Schemas {
public const nint m_Sphere = 0x10; // SphereBase_t<float32>
}
// Parent: RnShapeDesc_t
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -81,7 +81,7 @@ namespace CS2Dumper.Schemas {
public const nint m_Mesh = 0x10; // RnMesh_t
}
// Parent: None
// Fields count: 100
// Field count: 101
//
// Metadata:
// MGetKV3ClassDefaults
@@ -184,11 +184,12 @@ namespace CS2Dumper.Schemas {
public const nint m_flQuadVelocitySmoothRate = 0x608; // float32
public const nint m_flAddWorldCollisionRadius = 0x60C; // float32
public const nint m_flDefaultVolumetricSolveAmount = 0x610; // float32
public const nint m_nRodVelocitySmoothIterations = 0x614; // uint16
public const nint m_nQuadVelocitySmoothIterations = 0x616; // uint16
public const nint m_flMotionSmoothCDT = 0x614; // float32
public const nint m_nRodVelocitySmoothIterations = 0x618; // uint16
public const nint m_nQuadVelocitySmoothIterations = 0x61A; // uint16
}
// Parent: RnBodyDesc_t
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -196,7 +197,7 @@ namespace CS2Dumper.Schemas {
public const nint m_nOldPointer = 0xD0; // uint64
}
// Parent: FeBoxRigid_t
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -205,7 +206,7 @@ namespace CS2Dumper.Schemas {
public const nint m_nVertexMapHash = 0x44; // uint32
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -215,7 +216,7 @@ namespace CS2Dumper.Schemas {
public const nint m_jiggleBone = 0x8; // CFeJiggleBone
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -225,7 +226,7 @@ namespace CS2Dumper.Schemas {
public const nint nNode = 0x8; // uint16[6]
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -236,7 +237,7 @@ namespace CS2Dumper.Schemas {
public const nint flRadius = 0x8; // float32[2]
}
// Parent: None
// Fields count: 4
// Field count: 4
public static class constraint_axislimit_t {
public const nint flMinRotation = 0x0; // float32
public const nint flMaxRotation = 0x4; // float32
@@ -244,7 +245,7 @@ namespace CS2Dumper.Schemas {
public const nint flMotorMaxTorque = 0xC; // float32
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -254,7 +255,7 @@ namespace CS2Dumper.Schemas {
public const nint f4RelaxationFactor = 0x20; // fltx4
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -266,7 +267,7 @@ namespace CS2Dumper.Schemas {
public const nint f4RelaxationFactor = 0x40; // fltx4
}
// Parent: None
// Fields count: 4
// Field count: 4
public static class constraint_hingeparams_t {
public const nint worldPosition = 0x0; // Vector
public const nint worldAxisDirection = 0xC; // Vector
@@ -274,7 +275,7 @@ namespace CS2Dumper.Schemas {
public const nint constraint = 0x28; // constraint_breakableparams_t
}
// Parent: FeSphereRigid_t
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -283,7 +284,7 @@ namespace CS2Dumper.Schemas {
public const nint m_nVertexMapHash = 0x24; // uint32
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -293,7 +294,7 @@ namespace CS2Dumper.Schemas {
public const nint flRelaxationFactor = 0x20; // fltx4
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -301,7 +302,7 @@ namespace CS2Dumper.Schemas {
public const nint m_nIndex = 0x0; // int32[3]
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -310,7 +311,7 @@ namespace CS2Dumper.Schemas {
public const nint m_flWeight = 0x8; // float32
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -321,7 +322,7 @@ namespace CS2Dumper.Schemas {
public const nint flGravity = 0xC; // float32
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -330,7 +331,7 @@ namespace CS2Dumper.Schemas {
public const nint m_flRadius = 0x18; // float32
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -341,7 +342,7 @@ namespace CS2Dumper.Schemas {
public const nint m_jiggleBone = 0x34; // CFeJiggleBone
}
// Parent: None
// Fields count: 35
// Field count: 35
//
// Metadata:
// MGetKV3ClassDefaults
@@ -383,7 +384,7 @@ namespace CS2Dumper.Schemas {
public const nint m_bHasShadowController = 0xCA; // bool
}
// Parent: None
// Fields count: 12
// Field count: 12
//
// Metadata:
// MGetKV3ClassDefaults
@@ -402,7 +403,7 @@ namespace CS2Dumper.Schemas {
public const nint m_nNode = 0x40; // uint16[4]
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -412,7 +413,7 @@ namespace CS2Dumper.Schemas {
public const nint flWeight = 0x4; // float32
}
// Parent: None
// Fields count: 10
// Field count: 10
//
// Metadata:
// MGetKV3ClassDefaults
@@ -429,13 +430,13 @@ namespace CS2Dumper.Schemas {
public const nint m_nDebugFlags = 0xA0; // uint32
}
// Parent: None
// Fields count: 2
// Field count: 2
public static class VertexPositionNormal_t {
public const nint m_vPosition = 0x0; // Vector
public const nint m_vNormal = 0xC; // Vector
}
// Parent: None
// Fields count: 8
// Field count: 8
//
// Metadata:
// MGetKV3ClassDefaults
@@ -450,7 +451,7 @@ namespace CS2Dumper.Schemas {
public const nint m_nTargetIndex = 0xE; // uint16
}
// Parent: None
// Fields count: 7
// Field count: 7
//
// Metadata:
// MGetKV3ClassDefaults
@@ -464,7 +465,7 @@ namespace CS2Dumper.Schemas {
public const nint m_GoalDamping = 0x70; // CUtlVector<float32>
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -475,7 +476,7 @@ namespace CS2Dumper.Schemas {
public const nint flAlpha = 0x10; // float32
}
// Parent: None
// Fields count: 12
// Field count: 12
//
// Metadata:
// MGetKV3ClassDefaults
@@ -494,7 +495,7 @@ namespace CS2Dumper.Schemas {
public const nint nNodeListCount = 0x32; // uint16
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -506,7 +507,7 @@ namespace CS2Dumper.Schemas {
public const nint nFlags = 0x26; // uint16
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -516,7 +517,7 @@ namespace CS2Dumper.Schemas {
public const nint flRelaxationFactor = 0x8; // float32
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -526,7 +527,7 @@ namespace CS2Dumper.Schemas {
public const nint nVirtElem = 0xC; // uint16[2]
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -536,7 +537,7 @@ namespace CS2Dumper.Schemas {
public const nint nTargetNode = 0xE; // uint16
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -545,7 +546,7 @@ namespace CS2Dumper.Schemas {
public const nint m_flOffset = 0xC; // float32
}
// Parent: None
// Fields count: 35
// Field count: 35
//
// Metadata:
// MGetKV3ClassDefaults
@@ -587,7 +588,7 @@ namespace CS2Dumper.Schemas {
public const nint m_nCollisionMask = 0x98; // uint16
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -596,7 +597,7 @@ namespace CS2Dumper.Schemas {
public const nint m_Nodes = 0x18; // CUtlVector<uint32>
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -607,7 +608,7 @@ namespace CS2Dumper.Schemas {
public const nint nListEnd = 0xA; // uint16
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -618,7 +619,7 @@ namespace CS2Dumper.Schemas {
public const nint m_nTriangleOffset = 0x1C; // uint32
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -630,7 +631,7 @@ namespace CS2Dumper.Schemas {
public const nint nBeginDynamic = 0x30; // uint16
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -641,7 +642,7 @@ namespace CS2Dumper.Schemas {
public const nint f4Weights = 0xF0; // fltx4[4]
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -653,7 +654,7 @@ namespace CS2Dumper.Schemas {
public const nint flNodeWeight0 = 0x40; // fltx4
}
// Parent: None
// Fields count: 7
// Field count: 7
//
// Metadata:
// MGetKV3ClassDefaults
@@ -667,7 +668,7 @@ namespace CS2Dumper.Schemas {
public const nint qAdjust = 0x30; // FourQuaternions
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -677,7 +678,7 @@ namespace CS2Dumper.Schemas {
public const nint vShape = 0xC; // Vector4D[4]
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -685,7 +686,7 @@ namespace CS2Dumper.Schemas {
public const nint m_nIndex = 0x0; // int32[3]
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -694,7 +695,7 @@ namespace CS2Dumper.Schemas {
public const nint nWeight = 0x2; // uint16
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -705,7 +706,7 @@ namespace CS2Dumper.Schemas {
public const nint m_Params = 0x10; // KeyValues3
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -717,7 +718,7 @@ namespace CS2Dumper.Schemas {
public const nint flNodeWeight0 = 0x10; // float32
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -726,7 +727,7 @@ namespace CS2Dumper.Schemas {
public const nint y = 0x10; // fltx4
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -737,7 +738,7 @@ namespace CS2Dumper.Schemas {
public const nint nReserved = 0x16; // uint16
}
// Parent: None
// Fields count: 6
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
@@ -750,7 +751,7 @@ namespace CS2Dumper.Schemas {
public const nint m_pHull = 0x28; // RnHull_t*
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -761,7 +762,7 @@ namespace CS2Dumper.Schemas {
public const nint m_nCollisionPlaneIndex = 0x6; // uint16
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -772,7 +773,7 @@ namespace CS2Dumper.Schemas {
public const nint flStrength = 0x14; // float32
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -783,7 +784,7 @@ namespace CS2Dumper.Schemas {
public const nint nNode = 0x14; // uint16[3]
}
// Parent: None
// Fields count: 6
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
@@ -796,7 +797,7 @@ namespace CS2Dumper.Schemas {
public const nint nFlags = 0x32; // uint16
}
// Parent: None
// Fields count: 8
// Field count: 8
//
// Metadata:
// MGetKV3ClassDefaults
@@ -811,7 +812,7 @@ namespace CS2Dumper.Schemas {
public const nint m_nFlags = 0x88; // uint32
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -821,11 +822,11 @@ namespace CS2Dumper.Schemas {
public const nint nCtrlChild = 0xE; // uint16
}
// Parent: None
// Fields count: 0
// Field count: 0
public static class IPhysicsPlayerController {
}
// Parent: None
// Fields count: 7
// Field count: 7
//
// Metadata:
// MGetKV3ClassDefaults
@@ -839,7 +840,7 @@ namespace CS2Dumper.Schemas {
public const nint qAdjust = 0x10; // QuaternionStorage
}
// Parent: None
// Fields count: 6
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
@@ -852,7 +853,7 @@ namespace CS2Dumper.Schemas {
public const nint m_Weights = 0x18; // CUtlVector<float32>
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -860,7 +861,7 @@ namespace CS2Dumper.Schemas {
public const nint m_Array = 0x0; // CUtlVector<FeVertexMapBuild_t*>
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -872,7 +873,7 @@ namespace CS2Dumper.Schemas {
public const nint v2 = 0x14; // Vector2D
}
// Parent: None
// Fields count: 14
// Field count: 14
//
// Metadata:
// MGetKV3ClassDefaults
@@ -893,7 +894,7 @@ namespace CS2Dumper.Schemas {
public const nint m_pRegionSVM = 0xF0; // CRegionSVM*
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -904,7 +905,7 @@ namespace CS2Dumper.Schemas {
public const nint m_flYZ = 0x14; // float32
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -912,7 +913,7 @@ namespace CS2Dumper.Schemas {
public const nint m_nEdge = 0x0; // uint8
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -920,7 +921,7 @@ namespace CS2Dumper.Schemas {
public const nint m_flSupport = 0x0; // float32[26]
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -928,7 +929,7 @@ namespace CS2Dumper.Schemas {
public const nint m_nEdge = 0x0; // uint8
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -937,7 +938,7 @@ namespace CS2Dumper.Schemas {
public const nint nCtrlChild = 0x2; // uint16
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -945,7 +946,7 @@ namespace CS2Dumper.Schemas {
public const nint nNode = 0x0; // uint16[2]
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -956,7 +957,7 @@ namespace CS2Dumper.Schemas {
public const nint flSwingRelax = 0x8; // float32
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -967,7 +968,7 @@ namespace CS2Dumper.Schemas {
public const nint nNodeY1 = 0x6; // uint16
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -979,7 +980,7 @@ namespace CS2Dumper.Schemas {
public const nint nNode = 0x1C; // uint16[6]
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -990,7 +991,7 @@ namespace CS2Dumper.Schemas {
public const nint m_flYZ = 0x50; // fltx4
}
// Parent: None
// Fields count: 5
// Field count: 5
public static class constraint_breakableparams_t {
public const nint strength = 0x0; // float32
public const nint forceLimit = 0x4; // float32
@@ -999,7 +1000,7 @@ namespace CS2Dumper.Schemas {
public const nint isActive = 0x14; // bool
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -1011,7 +1012,7 @@ namespace CS2Dumper.Schemas {
public const nint nFlags = 0x16; // uint16
}
// Parent: FeTaperedCapsuleRigid_t
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -1020,7 +1021,7 @@ namespace CS2Dumper.Schemas {
public const nint m_nVertexMapHash = 0x34; // uint32
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -1029,7 +1030,7 @@ namespace CS2Dumper.Schemas {
public const nint flAlpha = 0x4; // float32
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -1039,7 +1040,7 @@ namespace CS2Dumper.Schemas {
public const nint m_UserFriendlyName = 0x8; // CUtlString
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -1047,7 +1048,7 @@ namespace CS2Dumper.Schemas {
public const nint nChild = 0x0; // uint16[2]
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -1059,7 +1060,7 @@ namespace CS2Dumper.Schemas {
public const nint flRelaxationFactor = 0x10; // float32
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -1069,7 +1070,7 @@ namespace CS2Dumper.Schemas {
public const nint nDummy = 0x6; // uint16
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -1080,7 +1081,7 @@ namespace CS2Dumper.Schemas {
public const nint m_nFace = 0x3; // uint8
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -1092,12 +1093,12 @@ namespace CS2Dumper.Schemas {
public const nint v2 = 0x60; // FourVectors2D
}
// Parent: None
// Fields count: 1
// Field count: 1
public static class VertexPositionColor_t {
public const nint m_vPosition = 0x0; // Vector
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
#pragma once
@@ -12,14 +12,14 @@ namespace cs2_dumper {
// Enums count: 2
namespace vphysics2_dll {
// Alignment: 4
// Members count: 3
// Member count: 3
enum class JointMotion_t : uint32_t {
JOINT_MOTION_FREE = 0x0,
JOINT_MOTION_LOCKED = 0x1,
JOINT_MOTION_COUNT = 0x2
};
// Alignment: 4
// Members count: 4
// Member count: 4
enum class JointAxis_t : uint32_t {
JOINT_AXIS_X = 0x0,
JOINT_AXIS_Y = 0x1,
@@ -27,7 +27,7 @@ namespace cs2_dumper {
JOINT_AXIS_COUNT = 0x3
};
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -36,7 +36,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_flLength = 0x4; // float32
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -44,7 +44,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_flMassInv = 0x0; // float32
}
// Parent: RnShapeDesc_t
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -52,7 +52,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_Hull = 0x10; // RnHull_t
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -62,7 +62,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nParticle = 0x1C; // uint16[2]
}
// Parent: RnShapeDesc_t
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -70,7 +70,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_Capsule = 0x10; // RnCapsule_t
}
// Parent: RnShapeDesc_t
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -78,7 +78,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_Sphere = 0x10; // SphereBase_t<float32>
}
// Parent: RnShapeDesc_t
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -86,7 +86,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_Mesh = 0x10; // RnMesh_t
}
// Parent: None
// Fields count: 100
// Field count: 101
//
// Metadata:
// MGetKV3ClassDefaults
@@ -189,11 +189,12 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_flQuadVelocitySmoothRate = 0x608; // float32
constexpr std::ptrdiff_t m_flAddWorldCollisionRadius = 0x60C; // float32
constexpr std::ptrdiff_t m_flDefaultVolumetricSolveAmount = 0x610; // float32
constexpr std::ptrdiff_t m_nRodVelocitySmoothIterations = 0x614; // uint16
constexpr std::ptrdiff_t m_nQuadVelocitySmoothIterations = 0x616; // uint16
constexpr std::ptrdiff_t m_flMotionSmoothCDT = 0x614; // float32
constexpr std::ptrdiff_t m_nRodVelocitySmoothIterations = 0x618; // uint16
constexpr std::ptrdiff_t m_nQuadVelocitySmoothIterations = 0x61A; // uint16
}
// Parent: RnBodyDesc_t
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -201,7 +202,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nOldPointer = 0xD0; // uint64
}
// Parent: FeBoxRigid_t
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -210,7 +211,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nVertexMapHash = 0x44; // uint32
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -220,7 +221,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_jiggleBone = 0x8; // CFeJiggleBone
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -230,7 +231,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t nNode = 0x8; // uint16[6]
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -241,7 +242,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t flRadius = 0x8; // float32[2]
}
// Parent: None
// Fields count: 4
// Field count: 4
namespace constraint_axislimit_t {
constexpr std::ptrdiff_t flMinRotation = 0x0; // float32
constexpr std::ptrdiff_t flMaxRotation = 0x4; // float32
@@ -249,7 +250,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t flMotorMaxTorque = 0xC; // float32
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -259,7 +260,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t f4RelaxationFactor = 0x20; // fltx4
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -271,7 +272,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t f4RelaxationFactor = 0x40; // fltx4
}
// Parent: None
// Fields count: 4
// Field count: 4
namespace constraint_hingeparams_t {
constexpr std::ptrdiff_t worldPosition = 0x0; // Vector
constexpr std::ptrdiff_t worldAxisDirection = 0xC; // Vector
@@ -279,7 +280,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t constraint = 0x28; // constraint_breakableparams_t
}
// Parent: FeSphereRigid_t
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -288,7 +289,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nVertexMapHash = 0x24; // uint32
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -298,7 +299,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t flRelaxationFactor = 0x20; // fltx4
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -306,7 +307,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nIndex = 0x0; // int32[3]
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -315,7 +316,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_flWeight = 0x8; // float32
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -326,7 +327,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t flGravity = 0xC; // float32
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -335,7 +336,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_flRadius = 0x18; // float32
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -346,7 +347,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_jiggleBone = 0x34; // CFeJiggleBone
}
// Parent: None
// Fields count: 35
// Field count: 35
//
// Metadata:
// MGetKV3ClassDefaults
@@ -388,7 +389,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_bHasShadowController = 0xCA; // bool
}
// Parent: None
// Fields count: 12
// Field count: 12
//
// Metadata:
// MGetKV3ClassDefaults
@@ -407,7 +408,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nNode = 0x40; // uint16[4]
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -417,7 +418,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t flWeight = 0x4; // float32
}
// Parent: None
// Fields count: 10
// Field count: 10
//
// Metadata:
// MGetKV3ClassDefaults
@@ -434,13 +435,13 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nDebugFlags = 0xA0; // uint32
}
// Parent: None
// Fields count: 2
// Field count: 2
namespace VertexPositionNormal_t {
constexpr std::ptrdiff_t m_vPosition = 0x0; // Vector
constexpr std::ptrdiff_t m_vNormal = 0xC; // Vector
}
// Parent: None
// Fields count: 8
// Field count: 8
//
// Metadata:
// MGetKV3ClassDefaults
@@ -455,7 +456,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nTargetIndex = 0xE; // uint16
}
// Parent: None
// Fields count: 7
// Field count: 7
//
// Metadata:
// MGetKV3ClassDefaults
@@ -469,7 +470,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_GoalDamping = 0x70; // CUtlVector<float32>
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -480,7 +481,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t flAlpha = 0x10; // float32
}
// Parent: None
// Fields count: 12
// Field count: 12
//
// Metadata:
// MGetKV3ClassDefaults
@@ -499,7 +500,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t nNodeListCount = 0x32; // uint16
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -511,7 +512,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t nFlags = 0x26; // uint16
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -521,7 +522,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t flRelaxationFactor = 0x8; // float32
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -531,7 +532,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t nVirtElem = 0xC; // uint16[2]
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -541,7 +542,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t nTargetNode = 0xE; // uint16
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -550,7 +551,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_flOffset = 0xC; // float32
}
// Parent: None
// Fields count: 35
// Field count: 35
//
// Metadata:
// MGetKV3ClassDefaults
@@ -592,7 +593,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nCollisionMask = 0x98; // uint16
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -601,7 +602,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_Nodes = 0x18; // CUtlVector<uint32>
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -612,7 +613,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t nListEnd = 0xA; // uint16
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -623,7 +624,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nTriangleOffset = 0x1C; // uint32
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -635,7 +636,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t nBeginDynamic = 0x30; // uint16
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -646,7 +647,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t f4Weights = 0xF0; // fltx4[4]
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -658,7 +659,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t flNodeWeight0 = 0x40; // fltx4
}
// Parent: None
// Fields count: 7
// Field count: 7
//
// Metadata:
// MGetKV3ClassDefaults
@@ -672,7 +673,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t qAdjust = 0x30; // FourQuaternions
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -682,7 +683,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t vShape = 0xC; // Vector4D[4]
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -690,7 +691,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nIndex = 0x0; // int32[3]
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -699,7 +700,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t nWeight = 0x2; // uint16
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -710,7 +711,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_Params = 0x10; // KeyValues3
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -722,7 +723,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t flNodeWeight0 = 0x10; // float32
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -731,7 +732,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t y = 0x10; // fltx4
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -742,7 +743,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t nReserved = 0x16; // uint16
}
// Parent: None
// Fields count: 6
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
@@ -755,7 +756,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_pHull = 0x28; // RnHull_t*
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -766,7 +767,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nCollisionPlaneIndex = 0x6; // uint16
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -777,7 +778,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t flStrength = 0x14; // float32
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -788,7 +789,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t nNode = 0x14; // uint16[3]
}
// Parent: None
// Fields count: 6
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
@@ -801,7 +802,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t nFlags = 0x32; // uint16
}
// Parent: None
// Fields count: 8
// Field count: 8
//
// Metadata:
// MGetKV3ClassDefaults
@@ -816,7 +817,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nFlags = 0x88; // uint32
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -826,11 +827,11 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t nCtrlChild = 0xE; // uint16
}
// Parent: None
// Fields count: 0
// Field count: 0
namespace IPhysicsPlayerController {
}
// Parent: None
// Fields count: 7
// Field count: 7
//
// Metadata:
// MGetKV3ClassDefaults
@@ -844,7 +845,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t qAdjust = 0x10; // QuaternionStorage
}
// Parent: None
// Fields count: 6
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
@@ -857,7 +858,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_Weights = 0x18; // CUtlVector<float32>
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -865,7 +866,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_Array = 0x0; // CUtlVector<FeVertexMapBuild_t*>
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -877,7 +878,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t v2 = 0x14; // Vector2D
}
// Parent: None
// Fields count: 14
// Field count: 14
//
// Metadata:
// MGetKV3ClassDefaults
@@ -898,7 +899,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_pRegionSVM = 0xF0; // CRegionSVM*
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -909,7 +910,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_flYZ = 0x14; // float32
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -917,7 +918,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nEdge = 0x0; // uint8
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -925,7 +926,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_flSupport = 0x0; // float32[26]
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -933,7 +934,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nEdge = 0x0; // uint8
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -942,7 +943,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t nCtrlChild = 0x2; // uint16
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -950,7 +951,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t nNode = 0x0; // uint16[2]
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -961,7 +962,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t flSwingRelax = 0x8; // float32
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -972,7 +973,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t nNodeY1 = 0x6; // uint16
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -984,7 +985,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t nNode = 0x1C; // uint16[6]
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -995,7 +996,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_flYZ = 0x50; // fltx4
}
// Parent: None
// Fields count: 5
// Field count: 5
namespace constraint_breakableparams_t {
constexpr std::ptrdiff_t strength = 0x0; // float32
constexpr std::ptrdiff_t forceLimit = 0x4; // float32
@@ -1004,7 +1005,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t isActive = 0x14; // bool
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -1016,7 +1017,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t nFlags = 0x16; // uint16
}
// Parent: FeTaperedCapsuleRigid_t
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -1025,7 +1026,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nVertexMapHash = 0x34; // uint32
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -1034,7 +1035,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t flAlpha = 0x4; // float32
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -1044,7 +1045,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_UserFriendlyName = 0x8; // CUtlString
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -1052,7 +1053,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t nChild = 0x0; // uint16[2]
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -1064,7 +1065,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t flRelaxationFactor = 0x10; // float32
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -1074,7 +1075,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t nDummy = 0x6; // uint16
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -1085,7 +1086,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nFace = 0x3; // uint8
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -1097,12 +1098,12 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t v2 = 0x60; // FourVectors2D
}
// Parent: None
// Fields count: 1
// Field count: 1
namespace VertexPositionColor_t {
constexpr std::ptrdiff_t m_vPosition = 0x0; // Vector
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults

View File

@@ -1015,6 +1015,7 @@
"m_flInternalPressure": 1496,
"m_flLocalForce": 56,
"m_flLocalRotation": 60,
"m_flMotionSmoothCDT": 1556,
"m_flQuadVelocitySmoothRate": 1544,
"m_flRodVelocitySmoothRate": 1540,
"m_flWindDrag": 1508,
@@ -1028,9 +1029,9 @@
"m_nNodeCount": 64,
"m_nQuadCount1": 80,
"m_nQuadCount2": 82,
"m_nQuadVelocitySmoothIterations": 1558,
"m_nQuadVelocitySmoothIterations": 1562,
"m_nReservedUint8": 1180,
"m_nRodVelocitySmoothIterations": 1556,
"m_nRodVelocitySmoothIterations": 1560,
"m_nRopeCount": 88,
"m_nRotLockStaticNodes": 68,
"m_nSimdQuadCount1": 76,

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
#![allow(non_upper_case_globals, non_camel_case_types, non_snake_case, unused)]
@@ -10,7 +10,7 @@ pub mod cs2_dumper {
// Enums count: 2
pub mod vphysics2_dll {
// Alignment: 4
// Members count: 3
// Member count: 3
#[repr(u32)]
pub enum JointMotion_t {
JOINT_MOTION_FREE = 0x0,
@@ -18,7 +18,7 @@ pub mod cs2_dumper {
JOINT_MOTION_COUNT = 0x2
}
// Alignment: 4
// Members count: 4
// Member count: 4
#[repr(u32)]
pub enum JointAxis_t {
JOINT_AXIS_X = 0x0,
@@ -27,7 +27,7 @@ pub mod cs2_dumper {
JOINT_AXIS_COUNT = 0x3
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -36,7 +36,7 @@ pub mod cs2_dumper {
pub const m_flLength: usize = 0x4; // float32
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -44,7 +44,7 @@ pub mod cs2_dumper {
pub const m_flMassInv: usize = 0x0; // float32
}
// Parent: RnShapeDesc_t
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -52,7 +52,7 @@ pub mod cs2_dumper {
pub const m_Hull: usize = 0x10; // RnHull_t
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -62,7 +62,7 @@ pub mod cs2_dumper {
pub const m_nParticle: usize = 0x1C; // uint16[2]
}
// Parent: RnShapeDesc_t
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -70,7 +70,7 @@ pub mod cs2_dumper {
pub const m_Capsule: usize = 0x10; // RnCapsule_t
}
// Parent: RnShapeDesc_t
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -78,7 +78,7 @@ pub mod cs2_dumper {
pub const m_Sphere: usize = 0x10; // SphereBase_t<float32>
}
// Parent: RnShapeDesc_t
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -86,7 +86,7 @@ pub mod cs2_dumper {
pub const m_Mesh: usize = 0x10; // RnMesh_t
}
// Parent: None
// Fields count: 100
// Field count: 101
//
// Metadata:
// MGetKV3ClassDefaults
@@ -189,11 +189,12 @@ pub mod cs2_dumper {
pub const m_flQuadVelocitySmoothRate: usize = 0x608; // float32
pub const m_flAddWorldCollisionRadius: usize = 0x60C; // float32
pub const m_flDefaultVolumetricSolveAmount: usize = 0x610; // float32
pub const m_nRodVelocitySmoothIterations: usize = 0x614; // uint16
pub const m_nQuadVelocitySmoothIterations: usize = 0x616; // uint16
pub const m_flMotionSmoothCDT: usize = 0x614; // float32
pub const m_nRodVelocitySmoothIterations: usize = 0x618; // uint16
pub const m_nQuadVelocitySmoothIterations: usize = 0x61A; // uint16
}
// Parent: RnBodyDesc_t
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -201,7 +202,7 @@ pub mod cs2_dumper {
pub const m_nOldPointer: usize = 0xD0; // uint64
}
// Parent: FeBoxRigid_t
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -210,7 +211,7 @@ pub mod cs2_dumper {
pub const m_nVertexMapHash: usize = 0x44; // uint32
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -220,7 +221,7 @@ pub mod cs2_dumper {
pub const m_jiggleBone: usize = 0x8; // CFeJiggleBone
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -230,7 +231,7 @@ pub mod cs2_dumper {
pub const nNode: usize = 0x8; // uint16[6]
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -241,7 +242,7 @@ pub mod cs2_dumper {
pub const flRadius: usize = 0x8; // float32[2]
}
// Parent: None
// Fields count: 4
// Field count: 4
pub mod constraint_axislimit_t {
pub const flMinRotation: usize = 0x0; // float32
pub const flMaxRotation: usize = 0x4; // float32
@@ -249,7 +250,7 @@ pub mod cs2_dumper {
pub const flMotorMaxTorque: usize = 0xC; // float32
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -259,7 +260,7 @@ pub mod cs2_dumper {
pub const f4RelaxationFactor: usize = 0x20; // fltx4
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -271,7 +272,7 @@ pub mod cs2_dumper {
pub const f4RelaxationFactor: usize = 0x40; // fltx4
}
// Parent: None
// Fields count: 4
// Field count: 4
pub mod constraint_hingeparams_t {
pub const worldPosition: usize = 0x0; // Vector
pub const worldAxisDirection: usize = 0xC; // Vector
@@ -279,7 +280,7 @@ pub mod cs2_dumper {
pub const constraint: usize = 0x28; // constraint_breakableparams_t
}
// Parent: FeSphereRigid_t
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -288,7 +289,7 @@ pub mod cs2_dumper {
pub const m_nVertexMapHash: usize = 0x24; // uint32
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -298,7 +299,7 @@ pub mod cs2_dumper {
pub const flRelaxationFactor: usize = 0x20; // fltx4
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -306,7 +307,7 @@ pub mod cs2_dumper {
pub const m_nIndex: usize = 0x0; // int32[3]
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -315,7 +316,7 @@ pub mod cs2_dumper {
pub const m_flWeight: usize = 0x8; // float32
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -326,7 +327,7 @@ pub mod cs2_dumper {
pub const flGravity: usize = 0xC; // float32
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -335,7 +336,7 @@ pub mod cs2_dumper {
pub const m_flRadius: usize = 0x18; // float32
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -346,7 +347,7 @@ pub mod cs2_dumper {
pub const m_jiggleBone: usize = 0x34; // CFeJiggleBone
}
// Parent: None
// Fields count: 35
// Field count: 35
//
// Metadata:
// MGetKV3ClassDefaults
@@ -388,7 +389,7 @@ pub mod cs2_dumper {
pub const m_bHasShadowController: usize = 0xCA; // bool
}
// Parent: None
// Fields count: 12
// Field count: 12
//
// Metadata:
// MGetKV3ClassDefaults
@@ -407,7 +408,7 @@ pub mod cs2_dumper {
pub const m_nNode: usize = 0x40; // uint16[4]
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -417,7 +418,7 @@ pub mod cs2_dumper {
pub const flWeight: usize = 0x4; // float32
}
// Parent: None
// Fields count: 10
// Field count: 10
//
// Metadata:
// MGetKV3ClassDefaults
@@ -434,13 +435,13 @@ pub mod cs2_dumper {
pub const m_nDebugFlags: usize = 0xA0; // uint32
}
// Parent: None
// Fields count: 2
// Field count: 2
pub mod VertexPositionNormal_t {
pub const m_vPosition: usize = 0x0; // Vector
pub const m_vNormal: usize = 0xC; // Vector
}
// Parent: None
// Fields count: 8
// Field count: 8
//
// Metadata:
// MGetKV3ClassDefaults
@@ -455,7 +456,7 @@ pub mod cs2_dumper {
pub const m_nTargetIndex: usize = 0xE; // uint16
}
// Parent: None
// Fields count: 7
// Field count: 7
//
// Metadata:
// MGetKV3ClassDefaults
@@ -469,7 +470,7 @@ pub mod cs2_dumper {
pub const m_GoalDamping: usize = 0x70; // CUtlVector<float32>
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -480,7 +481,7 @@ pub mod cs2_dumper {
pub const flAlpha: usize = 0x10; // float32
}
// Parent: None
// Fields count: 12
// Field count: 12
//
// Metadata:
// MGetKV3ClassDefaults
@@ -499,7 +500,7 @@ pub mod cs2_dumper {
pub const nNodeListCount: usize = 0x32; // uint16
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -511,7 +512,7 @@ pub mod cs2_dumper {
pub const nFlags: usize = 0x26; // uint16
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -521,7 +522,7 @@ pub mod cs2_dumper {
pub const flRelaxationFactor: usize = 0x8; // float32
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -531,7 +532,7 @@ pub mod cs2_dumper {
pub const nVirtElem: usize = 0xC; // uint16[2]
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -541,7 +542,7 @@ pub mod cs2_dumper {
pub const nTargetNode: usize = 0xE; // uint16
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -550,7 +551,7 @@ pub mod cs2_dumper {
pub const m_flOffset: usize = 0xC; // float32
}
// Parent: None
// Fields count: 35
// Field count: 35
//
// Metadata:
// MGetKV3ClassDefaults
@@ -592,7 +593,7 @@ pub mod cs2_dumper {
pub const m_nCollisionMask: usize = 0x98; // uint16
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -601,7 +602,7 @@ pub mod cs2_dumper {
pub const m_Nodes: usize = 0x18; // CUtlVector<uint32>
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -612,7 +613,7 @@ pub mod cs2_dumper {
pub const nListEnd: usize = 0xA; // uint16
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -623,7 +624,7 @@ pub mod cs2_dumper {
pub const m_nTriangleOffset: usize = 0x1C; // uint32
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -635,7 +636,7 @@ pub mod cs2_dumper {
pub const nBeginDynamic: usize = 0x30; // uint16
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -646,7 +647,7 @@ pub mod cs2_dumper {
pub const f4Weights: usize = 0xF0; // fltx4[4]
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -658,7 +659,7 @@ pub mod cs2_dumper {
pub const flNodeWeight0: usize = 0x40; // fltx4
}
// Parent: None
// Fields count: 7
// Field count: 7
//
// Metadata:
// MGetKV3ClassDefaults
@@ -672,7 +673,7 @@ pub mod cs2_dumper {
pub const qAdjust: usize = 0x30; // FourQuaternions
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -682,7 +683,7 @@ pub mod cs2_dumper {
pub const vShape: usize = 0xC; // Vector4D[4]
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -690,7 +691,7 @@ pub mod cs2_dumper {
pub const m_nIndex: usize = 0x0; // int32[3]
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -699,7 +700,7 @@ pub mod cs2_dumper {
pub const nWeight: usize = 0x2; // uint16
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -710,7 +711,7 @@ pub mod cs2_dumper {
pub const m_Params: usize = 0x10; // KeyValues3
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -722,7 +723,7 @@ pub mod cs2_dumper {
pub const flNodeWeight0: usize = 0x10; // float32
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -731,7 +732,7 @@ pub mod cs2_dumper {
pub const y: usize = 0x10; // fltx4
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -742,7 +743,7 @@ pub mod cs2_dumper {
pub const nReserved: usize = 0x16; // uint16
}
// Parent: None
// Fields count: 6
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
@@ -755,7 +756,7 @@ pub mod cs2_dumper {
pub const m_pHull: usize = 0x28; // RnHull_t*
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -766,7 +767,7 @@ pub mod cs2_dumper {
pub const m_nCollisionPlaneIndex: usize = 0x6; // uint16
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -777,7 +778,7 @@ pub mod cs2_dumper {
pub const flStrength: usize = 0x14; // float32
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -788,7 +789,7 @@ pub mod cs2_dumper {
pub const nNode: usize = 0x14; // uint16[3]
}
// Parent: None
// Fields count: 6
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
@@ -801,7 +802,7 @@ pub mod cs2_dumper {
pub const nFlags: usize = 0x32; // uint16
}
// Parent: None
// Fields count: 8
// Field count: 8
//
// Metadata:
// MGetKV3ClassDefaults
@@ -816,7 +817,7 @@ pub mod cs2_dumper {
pub const m_nFlags: usize = 0x88; // uint32
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -826,11 +827,11 @@ pub mod cs2_dumper {
pub const nCtrlChild: usize = 0xE; // uint16
}
// Parent: None
// Fields count: 0
// Field count: 0
pub mod IPhysicsPlayerController {
}
// Parent: None
// Fields count: 7
// Field count: 7
//
// Metadata:
// MGetKV3ClassDefaults
@@ -844,7 +845,7 @@ pub mod cs2_dumper {
pub const qAdjust: usize = 0x10; // QuaternionStorage
}
// Parent: None
// Fields count: 6
// Field count: 6
//
// Metadata:
// MGetKV3ClassDefaults
@@ -857,7 +858,7 @@ pub mod cs2_dumper {
pub const m_Weights: usize = 0x18; // CUtlVector<float32>
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -865,7 +866,7 @@ pub mod cs2_dumper {
pub const m_Array: usize = 0x0; // CUtlVector<FeVertexMapBuild_t*>
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -877,7 +878,7 @@ pub mod cs2_dumper {
pub const v2: usize = 0x14; // Vector2D
}
// Parent: None
// Fields count: 14
// Field count: 14
//
// Metadata:
// MGetKV3ClassDefaults
@@ -898,7 +899,7 @@ pub mod cs2_dumper {
pub const m_pRegionSVM: usize = 0xF0; // CRegionSVM*
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -909,7 +910,7 @@ pub mod cs2_dumper {
pub const m_flYZ: usize = 0x14; // float32
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -917,7 +918,7 @@ pub mod cs2_dumper {
pub const m_nEdge: usize = 0x0; // uint8
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -925,7 +926,7 @@ pub mod cs2_dumper {
pub const m_flSupport: usize = 0x0; // float32[26]
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -933,7 +934,7 @@ pub mod cs2_dumper {
pub const m_nEdge: usize = 0x0; // uint8
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -942,7 +943,7 @@ pub mod cs2_dumper {
pub const nCtrlChild: usize = 0x2; // uint16
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -950,7 +951,7 @@ pub mod cs2_dumper {
pub const nNode: usize = 0x0; // uint16[2]
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -961,7 +962,7 @@ pub mod cs2_dumper {
pub const flSwingRelax: usize = 0x8; // float32
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -972,7 +973,7 @@ pub mod cs2_dumper {
pub const nNodeY1: usize = 0x6; // uint16
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -984,7 +985,7 @@ pub mod cs2_dumper {
pub const nNode: usize = 0x1C; // uint16[6]
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -995,7 +996,7 @@ pub mod cs2_dumper {
pub const m_flYZ: usize = 0x50; // fltx4
}
// Parent: None
// Fields count: 5
// Field count: 5
pub mod constraint_breakableparams_t {
pub const strength: usize = 0x0; // float32
pub const forceLimit: usize = 0x4; // float32
@@ -1004,7 +1005,7 @@ pub mod cs2_dumper {
pub const isActive: usize = 0x14; // bool
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -1016,7 +1017,7 @@ pub mod cs2_dumper {
pub const nFlags: usize = 0x16; // uint16
}
// Parent: FeTaperedCapsuleRigid_t
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -1025,7 +1026,7 @@ pub mod cs2_dumper {
pub const m_nVertexMapHash: usize = 0x34; // uint32
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -1034,7 +1035,7 @@ pub mod cs2_dumper {
pub const flAlpha: usize = 0x4; // float32
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -1044,7 +1045,7 @@ pub mod cs2_dumper {
pub const m_UserFriendlyName: usize = 0x8; // CUtlString
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -1052,7 +1053,7 @@ pub mod cs2_dumper {
pub const nChild: usize = 0x0; // uint16[2]
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -1064,7 +1065,7 @@ pub mod cs2_dumper {
pub const flRelaxationFactor: usize = 0x10; // float32
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -1074,7 +1075,7 @@ pub mod cs2_dumper {
pub const nDummy: usize = 0x6; // uint16
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -1085,7 +1086,7 @@ pub mod cs2_dumper {
pub const m_nFace: usize = 0x3; // uint8
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
@@ -1097,12 +1098,12 @@ pub mod cs2_dumper {
pub const v2: usize = 0x60; // FourVectors2D
}
// Parent: None
// Fields count: 1
// Field count: 1
pub mod VertexPositionColor_t {
pub const m_vPosition: usize = 0x0; // Vector
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
namespace CS2Dumper.Schemas {
// Module: worldrenderer.dll
@@ -7,7 +7,7 @@ namespace CS2Dumper.Schemas {
// Enums count: 1
public static class WorldrendererDll {
// Alignment: 4
// Members count: 13
// Member count: 13
public enum ObjectTypeFlags_t : uint {
OBJECT_TYPE_NONE = 0x0,
OBJECT_TYPE_MODEL = 0x8,
@@ -24,7 +24,7 @@ namespace CS2Dumper.Schemas {
OBJECT_TYPE_STATIC_CUBE_MAP = 0x8000
}
// Parent: None
// Fields count: 14
// Field count: 14
//
// Metadata:
// MGetKV3ClassDefaults
@@ -45,17 +45,17 @@ namespace CS2Dumper.Schemas {
public const nint m_renderable = 0x80; // CStrongHandle<InfoForResourceTypeCRenderMesh>
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
public static class AggregateLODSetup_t {
public const nint m_vLODOrigin = 0x0; // Vector
public const nint m_fMaxObjectScale = 0xC; // float32
public const nint m_fSwitchDistances = 0x10; // CUtlVectorFixedGrowable<float32>
public const nint m_fSwitchDistances = 0x10; // CUtlVector<float32>
}
// Parent: BaseSceneObjectOverride_t
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -66,7 +66,7 @@ namespace CS2Dumper.Schemas {
public const nint m_extraBufferBinding = 0x10; // CRenderBufferBinding
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -76,7 +76,7 @@ namespace CS2Dumper.Schemas {
public const nint m_BoundsWs = 0x8; // AABB_t
}
// Parent: None
// Fields count: 8
// Field count: 8
//
// Metadata:
// MGetKV3ClassDefaults
@@ -91,7 +91,7 @@ namespace CS2Dumper.Schemas {
public const nint m_renderableModel = 0x70; // CStrongHandle<InfoForResourceTypeCModel>
}
// Parent: None
// Fields count: 7
// Field count: 7
//
// Metadata:
// MGetKV3ClassDefaults
@@ -105,11 +105,11 @@ namespace CS2Dumper.Schemas {
public const nint m_worldNodePrefix = 0x48; // CUtlString
}
// Parent: None
// Fields count: 0
// Field count: 0
public static class VMapResourceData_t {
}
// Parent: None
// Fields count: 8
// Field count: 8
//
// Metadata:
// MGetKV3ClassDefaults
@@ -124,30 +124,29 @@ namespace CS2Dumper.Schemas {
public const nint m_renderableModel = 0x98; // CStrongHandle<InfoForResourceTypeCModel>
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
public static class WorldBuilderParams_t {
public const nint m_flMinDrawVolumeSize = 0x0; // float32
public const nint m_bBuildBakedLighting = 0x4; // bool
public const nint m_vLightmapUvScale = 0x8; // Vector2D
public const nint m_nCompileTimestamp = 0x10; // uint64
public const nint m_nCompileFingerprint = 0x18; // uint64
public const nint m_bakedLightingInfo = 0x8; // BakedLightingInfo_t
public const nint m_nCompileTimestamp = 0x38; // uint64
public const nint m_nCompileFingerprint = 0x40; // uint64
}
// Parent: None
// Fields count: 4
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
public static class PermEntityLumpData_t {
public const nint m_name = 0x8; // CUtlString
public const nint m_hammerUniqueId = 0x10; // CUtlString
public const nint m_childLumps = 0x18; // CUtlVector<CStrongHandleCopyable<InfoForResourceTypeCEntityLump>>
public const nint m_entityKeyValues = 0x30; // CUtlLeanVector<EntityKeyValueData_t>
public const nint m_childLumps = 0x10; // CUtlVector<CStrongHandleCopyable<InfoForResourceTypeCEntityLump>>
public const nint m_entityKeyValues = 0x28; // CUtlLeanVector<EntityKeyValueData_t>
}
// Parent: None
// Fields count: 13
// Field count: 13
//
// Metadata:
// MGetKV3ClassDefaults
@@ -167,7 +166,7 @@ namespace CS2Dumper.Schemas {
public const nint m_nodeLightingInfo = 0x110; // BakedLightingInfo_t
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -175,7 +174,7 @@ namespace CS2Dumper.Schemas {
public const nint m_nSceneObjectIndex = 0x0; // uint32
}
// Parent: None
// Fields count: 7
// Field count: 7
//
// Metadata:
// MGetKV3ClassDefaults
@@ -189,7 +188,7 @@ namespace CS2Dumper.Schemas {
public const nint m_nTimesToFire = 0x2C; // int32
}
// Parent: None
// Fields count: 5
// Field count: 9
//
// Metadata:
// MGetKV3ClassDefaults
@@ -198,10 +197,14 @@ namespace CS2Dumper.Schemas {
public const nint m_nLightmapGameVersionNumber = 0x4; // uint32
public const nint m_vLightmapUvScale = 0x8; // Vector2D
public const nint m_bHasLightmaps = 0x10; // bool
public const nint m_bBakedShadowsGamma20 = 0x11; // bool
public const nint m_bCompressionEnabled = 0x12; // bool
public const nint m_nChartPackIterations = 0x13; // uint8
public const nint m_nVradQuality = 0x14; // uint8
public const nint m_lightMaps = 0x18; // CUtlVector<CStrongHandle<InfoForResourceTypeCTextureBase>>
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -210,14 +213,14 @@ namespace CS2Dumper.Schemas {
public const nint m_nElementCount = 0x4; // uint32
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
public static class InfoForResourceTypeVMapResourceData_t {
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -228,7 +231,7 @@ namespace CS2Dumper.Schemas {
public const nint m_pData = 0x20; // CUtlVector<uint8>
}
// Parent: None
// Fields count: 9
// Field count: 9
//
// Metadata:
// MGetKV3ClassDefaults
@@ -244,18 +247,18 @@ namespace CS2Dumper.Schemas {
public const nint m_nLightProbeVolumePrecomputedHandshake = 0x14; // int32
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
public static class World_t {
public const nint m_builderParams = 0x0; // WorldBuilderParams_t
public const nint m_worldNodes = 0x20; // CUtlVector<NodeData_t>
public const nint m_worldLightingInfo = 0x38; // BakedLightingInfo_t
public const nint m_entityLumps = 0x68; // CUtlVector<CStrongHandleCopyable<InfoForResourceTypeCEntityLump>>
public const nint m_worldNodes = 0x48; // CUtlVector<NodeData_t>
public const nint m_worldLightingInfo = 0x60; // BakedLightingInfo_t
public const nint m_entityLumps = 0x90; // CUtlVector<CStrongHandleCopyable<InfoForResourceTypeCEntityLump>>
}
// Parent: None
// Fields count: 10
// Field count: 10
//
// Metadata:
// MGetKV3ClassDefaults
@@ -272,7 +275,7 @@ namespace CS2Dumper.Schemas {
public const nint m_nSequenceOverride = 0x6C; // int32
}
// Parent: BaseSceneObjectOverride_t
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -282,7 +285,7 @@ namespace CS2Dumper.Schemas {
public const nint m_pMaterial = 0x10; // CStrongHandle<InfoForResourceTypeIMaterial2>
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -291,7 +294,7 @@ namespace CS2Dumper.Schemas {
public const nint m_keyValuesData = 0x20; // CUtlBinaryBlock
}
// Parent: None
// Fields count: 13
// Field count: 13
//
// Metadata:
// MGetKV3ClassDefaults

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
#pragma once
@@ -12,7 +12,7 @@ namespace cs2_dumper {
// Enums count: 1
namespace worldrenderer_dll {
// Alignment: 4
// Members count: 13
// Member count: 13
enum class ObjectTypeFlags_t : uint32_t {
OBJECT_TYPE_NONE = 0x0,
OBJECT_TYPE_MODEL = 0x8,
@@ -29,7 +29,7 @@ namespace cs2_dumper {
OBJECT_TYPE_STATIC_CUBE_MAP = 0x8000
};
// Parent: None
// Fields count: 14
// Field count: 14
//
// Metadata:
// MGetKV3ClassDefaults
@@ -50,17 +50,17 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_renderable = 0x80; // CStrongHandle<InfoForResourceTypeCRenderMesh>
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
namespace AggregateLODSetup_t {
constexpr std::ptrdiff_t m_vLODOrigin = 0x0; // Vector
constexpr std::ptrdiff_t m_fMaxObjectScale = 0xC; // float32
constexpr std::ptrdiff_t m_fSwitchDistances = 0x10; // CUtlVectorFixedGrowable<float32>
constexpr std::ptrdiff_t m_fSwitchDistances = 0x10; // CUtlVector<float32>
}
// Parent: BaseSceneObjectOverride_t
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -71,7 +71,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_extraBufferBinding = 0x10; // CRenderBufferBinding
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -81,7 +81,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_BoundsWs = 0x8; // AABB_t
}
// Parent: None
// Fields count: 8
// Field count: 8
//
// Metadata:
// MGetKV3ClassDefaults
@@ -96,7 +96,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_renderableModel = 0x70; // CStrongHandle<InfoForResourceTypeCModel>
}
// Parent: None
// Fields count: 7
// Field count: 7
//
// Metadata:
// MGetKV3ClassDefaults
@@ -110,11 +110,11 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_worldNodePrefix = 0x48; // CUtlString
}
// Parent: None
// Fields count: 0
// Field count: 0
namespace VMapResourceData_t {
}
// Parent: None
// Fields count: 8
// Field count: 8
//
// Metadata:
// MGetKV3ClassDefaults
@@ -129,30 +129,29 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_renderableModel = 0x98; // CStrongHandle<InfoForResourceTypeCModel>
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
namespace WorldBuilderParams_t {
constexpr std::ptrdiff_t m_flMinDrawVolumeSize = 0x0; // float32
constexpr std::ptrdiff_t m_bBuildBakedLighting = 0x4; // bool
constexpr std::ptrdiff_t m_vLightmapUvScale = 0x8; // Vector2D
constexpr std::ptrdiff_t m_nCompileTimestamp = 0x10; // uint64
constexpr std::ptrdiff_t m_nCompileFingerprint = 0x18; // uint64
constexpr std::ptrdiff_t m_bakedLightingInfo = 0x8; // BakedLightingInfo_t
constexpr std::ptrdiff_t m_nCompileTimestamp = 0x38; // uint64
constexpr std::ptrdiff_t m_nCompileFingerprint = 0x40; // uint64
}
// Parent: None
// Fields count: 4
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
namespace PermEntityLumpData_t {
constexpr std::ptrdiff_t m_name = 0x8; // CUtlString
constexpr std::ptrdiff_t m_hammerUniqueId = 0x10; // CUtlString
constexpr std::ptrdiff_t m_childLumps = 0x18; // CUtlVector<CStrongHandleCopyable<InfoForResourceTypeCEntityLump>>
constexpr std::ptrdiff_t m_entityKeyValues = 0x30; // CUtlLeanVector<EntityKeyValueData_t>
constexpr std::ptrdiff_t m_childLumps = 0x10; // CUtlVector<CStrongHandleCopyable<InfoForResourceTypeCEntityLump>>
constexpr std::ptrdiff_t m_entityKeyValues = 0x28; // CUtlLeanVector<EntityKeyValueData_t>
}
// Parent: None
// Fields count: 13
// Field count: 13
//
// Metadata:
// MGetKV3ClassDefaults
@@ -172,7 +171,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nodeLightingInfo = 0x110; // BakedLightingInfo_t
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -180,7 +179,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nSceneObjectIndex = 0x0; // uint32
}
// Parent: None
// Fields count: 7
// Field count: 7
//
// Metadata:
// MGetKV3ClassDefaults
@@ -194,7 +193,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nTimesToFire = 0x2C; // int32
}
// Parent: None
// Fields count: 5
// Field count: 9
//
// Metadata:
// MGetKV3ClassDefaults
@@ -203,10 +202,14 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nLightmapGameVersionNumber = 0x4; // uint32
constexpr std::ptrdiff_t m_vLightmapUvScale = 0x8; // Vector2D
constexpr std::ptrdiff_t m_bHasLightmaps = 0x10; // bool
constexpr std::ptrdiff_t m_bBakedShadowsGamma20 = 0x11; // bool
constexpr std::ptrdiff_t m_bCompressionEnabled = 0x12; // bool
constexpr std::ptrdiff_t m_nChartPackIterations = 0x13; // uint8
constexpr std::ptrdiff_t m_nVradQuality = 0x14; // uint8
constexpr std::ptrdiff_t m_lightMaps = 0x18; // CUtlVector<CStrongHandle<InfoForResourceTypeCTextureBase>>
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -215,14 +218,14 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nElementCount = 0x4; // uint32
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
namespace InfoForResourceTypeVMapResourceData_t {
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -233,7 +236,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_pData = 0x20; // CUtlVector<uint8>
}
// Parent: None
// Fields count: 9
// Field count: 9
//
// Metadata:
// MGetKV3ClassDefaults
@@ -249,18 +252,18 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nLightProbeVolumePrecomputedHandshake = 0x14; // int32
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
namespace World_t {
constexpr std::ptrdiff_t m_builderParams = 0x0; // WorldBuilderParams_t
constexpr std::ptrdiff_t m_worldNodes = 0x20; // CUtlVector<NodeData_t>
constexpr std::ptrdiff_t m_worldLightingInfo = 0x38; // BakedLightingInfo_t
constexpr std::ptrdiff_t m_entityLumps = 0x68; // CUtlVector<CStrongHandleCopyable<InfoForResourceTypeCEntityLump>>
constexpr std::ptrdiff_t m_worldNodes = 0x48; // CUtlVector<NodeData_t>
constexpr std::ptrdiff_t m_worldLightingInfo = 0x60; // BakedLightingInfo_t
constexpr std::ptrdiff_t m_entityLumps = 0x90; // CUtlVector<CStrongHandleCopyable<InfoForResourceTypeCEntityLump>>
}
// Parent: None
// Fields count: 10
// Field count: 10
//
// Metadata:
// MGetKV3ClassDefaults
@@ -277,7 +280,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nSequenceOverride = 0x6C; // int32
}
// Parent: BaseSceneObjectOverride_t
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -287,7 +290,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_pMaterial = 0x10; // CStrongHandle<InfoForResourceTypeIMaterial2>
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -296,7 +299,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_keyValuesData = 0x20; // CUtlBinaryBlock
}
// Parent: None
// Fields count: 13
// Field count: 13
//
// Metadata:
// MGetKV3ClassDefaults

View File

@@ -56,10 +56,14 @@
},
"BakedLightingInfo_t": {
"fields": {
"m_bBakedShadowsGamma20": 17,
"m_bCompressionEnabled": 18,
"m_bHasLightmaps": 16,
"m_lightMaps": 24,
"m_nChartPackIterations": 19,
"m_nLightmapGameVersionNumber": 4,
"m_nLightmapVersionNumber": 0,
"m_nVradQuality": 20,
"m_vLightmapUvScale": 8
},
"metadata": [
@@ -250,9 +254,8 @@
},
"PermEntityLumpData_t": {
"fields": {
"m_childLumps": 24,
"m_entityKeyValues": 48,
"m_hammerUniqueId": 16,
"m_childLumps": 16,
"m_entityKeyValues": 40,
"m_name": 8
},
"metadata": [
@@ -309,10 +312,10 @@
"WorldBuilderParams_t": {
"fields": {
"m_bBuildBakedLighting": 4,
"m_bakedLightingInfo": 8,
"m_flMinDrawVolumeSize": 0,
"m_nCompileFingerprint": 24,
"m_nCompileTimestamp": 16,
"m_vLightmapUvScale": 8
"m_nCompileFingerprint": 64,
"m_nCompileTimestamp": 56
},
"metadata": [
{
@@ -364,9 +367,9 @@
"World_t": {
"fields": {
"m_builderParams": 0,
"m_entityLumps": 104,
"m_worldLightingInfo": 56,
"m_worldNodes": 32
"m_entityLumps": 144,
"m_worldLightingInfo": 96,
"m_worldNodes": 72
},
"metadata": [
{

View File

@@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-05-03 00:11:19.220511700 UTC
// 2024-07-29 16:04:47.388825300 UTC
#![allow(non_upper_case_globals, non_camel_case_types, non_snake_case, unused)]
@@ -10,7 +10,7 @@ pub mod cs2_dumper {
// Enums count: 1
pub mod worldrenderer_dll {
// Alignment: 4
// Members count: 13
// Member count: 13
#[repr(u32)]
pub enum ObjectTypeFlags_t {
OBJECT_TYPE_NONE = 0x0,
@@ -28,7 +28,7 @@ pub mod cs2_dumper {
OBJECT_TYPE_STATIC_CUBE_MAP = 0x8000
}
// Parent: None
// Fields count: 14
// Field count: 14
//
// Metadata:
// MGetKV3ClassDefaults
@@ -49,17 +49,17 @@ pub mod cs2_dumper {
pub const m_renderable: usize = 0x80; // CStrongHandle<InfoForResourceTypeCRenderMesh>
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
pub mod AggregateLODSetup_t {
pub const m_vLODOrigin: usize = 0x0; // Vector
pub const m_fMaxObjectScale: usize = 0xC; // float32
pub const m_fSwitchDistances: usize = 0x10; // CUtlVectorFixedGrowable<float32>
pub const m_fSwitchDistances: usize = 0x10; // CUtlVector<float32>
}
// Parent: BaseSceneObjectOverride_t
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -70,7 +70,7 @@ pub mod cs2_dumper {
pub const m_extraBufferBinding: usize = 0x10; // CRenderBufferBinding
}
// Parent: None
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -80,7 +80,7 @@ pub mod cs2_dumper {
pub const m_BoundsWs: usize = 0x8; // AABB_t
}
// Parent: None
// Fields count: 8
// Field count: 8
//
// Metadata:
// MGetKV3ClassDefaults
@@ -95,7 +95,7 @@ pub mod cs2_dumper {
pub const m_renderableModel: usize = 0x70; // CStrongHandle<InfoForResourceTypeCModel>
}
// Parent: None
// Fields count: 7
// Field count: 7
//
// Metadata:
// MGetKV3ClassDefaults
@@ -109,11 +109,11 @@ pub mod cs2_dumper {
pub const m_worldNodePrefix: usize = 0x48; // CUtlString
}
// Parent: None
// Fields count: 0
// Field count: 0
pub mod VMapResourceData_t {
}
// Parent: None
// Fields count: 8
// Field count: 8
//
// Metadata:
// MGetKV3ClassDefaults
@@ -128,30 +128,29 @@ pub mod cs2_dumper {
pub const m_renderableModel: usize = 0x98; // CStrongHandle<InfoForResourceTypeCModel>
}
// Parent: None
// Fields count: 5
// Field count: 5
//
// Metadata:
// MGetKV3ClassDefaults
pub mod WorldBuilderParams_t {
pub const m_flMinDrawVolumeSize: usize = 0x0; // float32
pub const m_bBuildBakedLighting: usize = 0x4; // bool
pub const m_vLightmapUvScale: usize = 0x8; // Vector2D
pub const m_nCompileTimestamp: usize = 0x10; // uint64
pub const m_nCompileFingerprint: usize = 0x18; // uint64
pub const m_bakedLightingInfo: usize = 0x8; // BakedLightingInfo_t
pub const m_nCompileTimestamp: usize = 0x38; // uint64
pub const m_nCompileFingerprint: usize = 0x40; // uint64
}
// Parent: None
// Fields count: 4
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
pub mod PermEntityLumpData_t {
pub const m_name: usize = 0x8; // CUtlString
pub const m_hammerUniqueId: usize = 0x10; // CUtlString
pub const m_childLumps: usize = 0x18; // CUtlVector<CStrongHandleCopyable<InfoForResourceTypeCEntityLump>>
pub const m_entityKeyValues: usize = 0x30; // CUtlLeanVector<EntityKeyValueData_t>
pub const m_childLumps: usize = 0x10; // CUtlVector<CStrongHandleCopyable<InfoForResourceTypeCEntityLump>>
pub const m_entityKeyValues: usize = 0x28; // CUtlLeanVector<EntityKeyValueData_t>
}
// Parent: None
// Fields count: 13
// Field count: 13
//
// Metadata:
// MGetKV3ClassDefaults
@@ -171,7 +170,7 @@ pub mod cs2_dumper {
pub const m_nodeLightingInfo: usize = 0x110; // BakedLightingInfo_t
}
// Parent: None
// Fields count: 1
// Field count: 1
//
// Metadata:
// MGetKV3ClassDefaults
@@ -179,7 +178,7 @@ pub mod cs2_dumper {
pub const m_nSceneObjectIndex: usize = 0x0; // uint32
}
// Parent: None
// Fields count: 7
// Field count: 7
//
// Metadata:
// MGetKV3ClassDefaults
@@ -193,7 +192,7 @@ pub mod cs2_dumper {
pub const m_nTimesToFire: usize = 0x2C; // int32
}
// Parent: None
// Fields count: 5
// Field count: 9
//
// Metadata:
// MGetKV3ClassDefaults
@@ -202,10 +201,14 @@ pub mod cs2_dumper {
pub const m_nLightmapGameVersionNumber: usize = 0x4; // uint32
pub const m_vLightmapUvScale: usize = 0x8; // Vector2D
pub const m_bHasLightmaps: usize = 0x10; // bool
pub const m_bBakedShadowsGamma20: usize = 0x11; // bool
pub const m_bCompressionEnabled: usize = 0x12; // bool
pub const m_nChartPackIterations: usize = 0x13; // uint8
pub const m_nVradQuality: usize = 0x14; // uint8
pub const m_lightMaps: usize = 0x18; // CUtlVector<CStrongHandle<InfoForResourceTypeCTextureBase>>
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -214,14 +217,14 @@ pub mod cs2_dumper {
pub const m_nElementCount: usize = 0x4; // uint32
}
// Parent: None
// Fields count: 0
// Field count: 0
//
// Metadata:
// MResourceTypeForInfoType
pub mod InfoForResourceTypeVMapResourceData_t {
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
@@ -232,7 +235,7 @@ pub mod cs2_dumper {
pub const m_pData: usize = 0x20; // CUtlVector<uint8>
}
// Parent: None
// Fields count: 9
// Field count: 9
//
// Metadata:
// MGetKV3ClassDefaults
@@ -248,18 +251,18 @@ pub mod cs2_dumper {
pub const m_nLightProbeVolumePrecomputedHandshake: usize = 0x14; // int32
}
// Parent: None
// Fields count: 4
// Field count: 4
//
// Metadata:
// MGetKV3ClassDefaults
pub mod World_t {
pub const m_builderParams: usize = 0x0; // WorldBuilderParams_t
pub const m_worldNodes: usize = 0x20; // CUtlVector<NodeData_t>
pub const m_worldLightingInfo: usize = 0x38; // BakedLightingInfo_t
pub const m_entityLumps: usize = 0x68; // CUtlVector<CStrongHandleCopyable<InfoForResourceTypeCEntityLump>>
pub const m_worldNodes: usize = 0x48; // CUtlVector<NodeData_t>
pub const m_worldLightingInfo: usize = 0x60; // BakedLightingInfo_t
pub const m_entityLumps: usize = 0x90; // CUtlVector<CStrongHandleCopyable<InfoForResourceTypeCEntityLump>>
}
// Parent: None
// Fields count: 10
// Field count: 10
//
// Metadata:
// MGetKV3ClassDefaults
@@ -276,7 +279,7 @@ pub mod cs2_dumper {
pub const m_nSequenceOverride: usize = 0x6C; // int32
}
// Parent: BaseSceneObjectOverride_t
// Fields count: 3
// Field count: 3
//
// Metadata:
// MGetKV3ClassDefaults
@@ -286,7 +289,7 @@ pub mod cs2_dumper {
pub const m_pMaterial: usize = 0x10; // CStrongHandle<InfoForResourceTypeIMaterial2>
}
// Parent: None
// Fields count: 2
// Field count: 2
//
// Metadata:
// MGetKV3ClassDefaults
@@ -295,7 +298,7 @@ pub mod cs2_dumper {
pub const m_keyValuesData: usize = 0x20; // CUtlBinaryBlock
}
// Parent: None
// Fields count: 13
// Field count: 13
//
// Metadata:
// MGetKV3ClassDefaults

View File

@@ -1,3 +1,7 @@
use std::collections::BTreeMap;
use anyhow::{bail, Result};
use log::debug;
use memflow::prelude::v1::*;
@@ -5,20 +9,16 @@ use memflow::prelude::v1::*;
use pelite::pattern;
use pelite::pe64::{Pe, PeView};
use serde::{Deserialize, Serialize};
use crate::error::{Error, Result};
use crate::source2::KeyButton;
#[derive(Debug, Deserialize, Serialize)]
pub struct Button {
pub name: String,
pub value: u32,
}
pub type ButtonMap = BTreeMap<String, imem>;
pub fn buttons(process: &mut IntoProcessInstanceArcBox<'_>) -> Result<Vec<Button>> {
pub fn buttons(process: &mut IntoProcessInstanceArcBox<'_>) -> Result<ButtonMap> {
let module = process.module_by_name("client.dll")?;
let buf = process.read_raw(module.base, module.size as _)?;
let buf = process
.read_raw(module.base, module.size as _)
.data_part()?;
let view = PeView::from_bytes(&buf)?;
@@ -28,7 +28,7 @@ pub fn buttons(process: &mut IntoProcessInstanceArcBox<'_>) -> Result<Vec<Button
.scanner()
.finds_code(pattern!("488b15${'} 4885d2 74? 0f1f40"), &mut save)
{
return Err(Error::Other("unable to find button list pattern"));
bail!("outdated button list pattern");
}
read_buttons(process, &module, module.base + save[1])
@@ -38,32 +38,28 @@ fn read_buttons(
process: &mut IntoProcessInstanceArcBox<'_>,
module: &ModuleInfo,
list_addr: Address,
) -> Result<Vec<Button>> {
let mut buttons = Vec::new();
) -> Result<ButtonMap> {
let mut map = ButtonMap::new();
let mut cur_button = Pointer64::<KeyButton>::from(process.read_addr64(list_addr)?);
let mut cur_button = Pointer64::<KeyButton>::from(process.read_addr64(list_addr).data_part()?);
while !cur_button.is_null() {
let button = cur_button.read(process)?;
let name = button.name.read_string(process)?.to_string();
let value =
((cur_button.address() - module.base) + offset_of!(KeyButton.state) as i64) as u32;
let button = process.read_ptr(cur_button).data_part()?;
let name = process.read_utf8(button.name.address(), 32).data_part()?;
let rva = (cur_button.address() - module.base) + offset_of!(KeyButton.state) as imem;
debug!(
"found button: {} @ {:#X} ({} + {:#X})",
"found button: {} at {:#X} ({} + {:#X})",
name,
value as u64 + module.base.to_umem(),
cur_button.to_umem() + offset_of!(KeyButton.state) as umem,
module.name,
value
rva
);
buttons.push(Button { name, value });
map.insert(name, rva);
cur_button = button.next;
}
buttons.sort_unstable_by(|a, b| a.name.cmp(&b.name));
Ok(buttons)
Ok(map)
}

View File

@@ -1,47 +1,51 @@
use std::collections::BTreeMap;
use anyhow::Result;
use log::debug;
use memflow::prelude::v1::*;
use pelite::pattern;
use pelite::pe64::exports::Export;
use pelite::pe64::{Pe, PeView};
use serde::{Deserialize, Serialize};
use crate::error::Result;
use crate::mem::read_addr64_rip;
use crate::source2::InterfaceReg;
pub type InterfaceMap = BTreeMap<String, Vec<Interface>>;
#[derive(Debug, Deserialize, Serialize)]
pub struct Interface {
pub name: String,
pub value: u32,
}
pub type InterfaceMap = BTreeMap<String, BTreeMap<String, imem>>;
pub fn interfaces(process: &mut IntoProcessInstanceArcBox<'_>) -> Result<InterfaceMap> {
process
.module_list()?
.iter()
.filter_map(|module| {
let buf = process.read_raw(module.base, module.size as _).ok()?;
let buf = process
.read_raw(module.base, module.size as _)
.data_part()
.ok()?;
let view = PeView::from_bytes(&buf).ok()?;
let mut save = [0; 2];
let ci_export = view
.exports()
.ok()?
.by()
.ok()?
.name("CreateInterface")
.ok()?;
if !view
.scanner()
.finds_code(pattern!("4c8b0d${'} 4c8bd2 4c8bd9"), &mut save)
{
return None;
}
if let Export::Symbol(symbol) = ci_export {
let list_addr = read_addr64_rip(process, module.base + symbol)
.data_part()
.ok()?;
read_interfaces(process, module, module.base + save[1])
return read_interfaces(process, module, list_addr)
.ok()
.filter(|ifaces| !ifaces.is_empty())
.map(|ifaces| Ok((module.name.to_string(), ifaces)))
.map(|ifaces| Ok((module.name.to_string(), ifaces)));
}
None
})
.collect()
}
@@ -50,31 +54,29 @@ fn read_interfaces(
process: &mut IntoProcessInstanceArcBox<'_>,
module: &ModuleInfo,
list_addr: Address,
) -> Result<Vec<Interface>> {
let mut ifaces = Vec::new();
) -> Result<BTreeMap<String, imem>> {
let mut ifaces = BTreeMap::new();
let mut cur_reg = Pointer64::<InterfaceReg>::from(process.read_addr64(list_addr)?);
let mut cur_reg = Pointer64::<InterfaceReg>::from(process.read_addr64(list_addr).data_part()?);
while !cur_reg.is_null() {
let reg = cur_reg.read(process)?;
let name = reg.name.read_string(process)?.to_string();
let value = (reg.create_fn.address() - module.base) as u32;
let reg = process.read_ptr(cur_reg).data_part()?;
let name = process.read_utf8(reg.name.address(), 4096).data_part()?;
let instance = read_addr64_rip(process, reg.create_fn.address())?;
let value = instance - module.base;
debug!(
"found interface: {} @ {:#X} ({} + {:#X})",
"found interface: {} at {:#X} ({} + {:#X})",
name,
value as u64 + module.base.to_umem(),
module.name,
value
);
ifaces.push(Interface { name, value });
ifaces.insert(name, value);
cur_reg = reg.next;
}
ifaces.sort_unstable_by(|a, b| a.name.cmp(&b.name));
Ok(ifaces)
}

View File

@@ -3,27 +3,69 @@ pub use interfaces::*;
pub use offsets::*;
pub use schemas::*;
use memflow::prelude::v1::*;
use std::any::type_name;
use crate::error::Result;
use anyhow::Result;
use log::{error, info};
use memflow::prelude::v1::*;
mod buttons;
mod interfaces;
mod offsets;
mod schemas;
#[derive(Debug)]
pub struct AnalysisResult {
pub buttons: Vec<Button>,
pub buttons: ButtonMap,
pub interfaces: InterfaceMap,
pub offsets: OffsetMap,
pub schemas: SchemaMap,
}
pub fn analyze_all(process: &mut IntoProcessInstanceArcBox<'_>) -> Result<AnalysisResult> {
let buttons = buttons(process)?;
let interfaces = interfaces(process)?;
let offsets = offsets(process)?;
let schemas = schemas(process)?;
let buttons = analyze(process, buttons);
info!("found {} buttons", buttons.len());
let interfaces = analyze(process, interfaces);
info!(
"found {} interfaces across {} modules",
interfaces
.iter()
.map(|(_, ifaces)| ifaces.len())
.sum::<usize>(),
interfaces.len()
);
let offsets = analyze(process, offsets);
info!(
"found {} offsets across {} modules",
offsets
.iter()
.map(|(_, offsets)| offsets.len())
.sum::<usize>(),
offsets.len()
);
let schemas = analyze(process, schemas);
let (class_count, enum_count) =
schemas
.values()
.fold((0, 0), |(classes, enums), (class_vec, enum_vec)| {
(classes + class_vec.len(), enums + enum_vec.len())
});
info!(
"found {} classes and {} enums across {} modules",
class_count,
enum_count,
schemas.len()
);
Ok(AnalysisResult {
buttons,
@@ -32,3 +74,21 @@ pub fn analyze_all(process: &mut IntoProcessInstanceArcBox<'_>) -> Result<Analys
schemas,
})
}
#[inline]
fn analyze<F, T>(process: &mut IntoProcessInstanceArcBox<'_>, f: F) -> T
where
F: FnOnce(&mut IntoProcessInstanceArcBox<'_>) -> Result<T>,
T: Default,
{
let name = type_name::<F>();
match f(process) {
Ok(result) => result,
Err(err) => {
error!("failed to read {}: {}", name, err);
T::default()
}
}
}

View File

@@ -1,18 +1,18 @@
use std::collections::BTreeMap;
use log::debug;
use anyhow::Result;
use log::{debug, error};
use memflow::prelude::v1::*;
use pelite::pattern;
use pelite::pattern::{save_len, Atom};
use pelite::pe64::{Pe, PeView};
use pelite::pe64::{Pe, PeView, Rva};
use phf::{phf_map, Map};
use crate::error::Result;
pub type OffsetMap = BTreeMap<String, BTreeMap<String, u32>>;
pub type OffsetMap = BTreeMap<String, BTreeMap<String, Rva>>;
macro_rules! pattern_map {
($($module:ident => {
@@ -26,19 +26,21 @@ macro_rules! pattern_map {
&'static str,
(
&'static [Atom],
Option<fn(&PeView, &mut BTreeMap<String, u32>, u32)>,
Option<fn(&PeView, &mut BTreeMap<String, Rva>, Rva)>,
),
> = phf_map! {
$($name => ($pattern, $($callback)?)),+
};
pub fn offsets(view: PeView<'_>) -> BTreeMap<String, u32> {
pub fn offsets(view: PeView<'_>) -> BTreeMap<String, Rva> {
let mut map = BTreeMap::new();
for (&name, (pat, callback)) in &PATTERNS {
let mut save = vec![0; save_len(pat)];
if !view.scanner().finds_code(pat, &mut save) {
error!("outdated pattern: {}", name);
continue;
}
@@ -53,7 +55,7 @@ macro_rules! pattern_map {
for (name, value) in &map {
debug!(
"found offset: {} @ {:#X} ({}.dll + {:#X})",
"found offset: {} at {:#X} ({}.dll + {:#X})",
name,
*value as u64 + view.optional_header().ImageBase,
stringify!($module),
@@ -70,71 +72,81 @@ macro_rules! pattern_map {
pattern_map! {
client => {
"dwCSGOInput" => pattern!("488905${'} 488d05${} 48890d${} 488905${} 488d05") => Some(|view, map, rva| {
"dwCSGOInput" => pattern!("488d0d${'} e8${} 488d05${} 48c705[8] 488905${} 488d0d${} 488d05") => Some(|view, map, rva| {
let mut save = [0; 2];
if view.scanner().finds_code(pattern!("498d81u4 4803c7"), &mut save) {
if view.scanner().finds_code(pattern!("f2410f108430u4"), &mut save) {
map.insert("dwViewAngles".to_string(), rva + save[1]);
}
}),
"dwEntityList" => pattern!("488935${'} 4885f6") => None,
"dwGameEntitySystem" => pattern!("488b1d${'} 48891d") => None,
"dwGameEntitySystem_getHighestEntityIndex" => pattern!("8b81u2?? 8902 488bc2 c3 cccccccc 48895c24? 48896c24") => None,
"dwGameRules" => pattern!("48890d${'} 8b0d${} ff15") => None,
"dwGameEntitySystem_highestEntityIndex" => pattern!("8b81u2?? 8902 488bc2 c3 cccccccc 48895c24? 48896c24") => None,
"dwGameRules" => pattern!("48891d${'} ff15${} 84c0") => None,
"dwGlobalVars" => pattern!("48890d${'} 488941") => None,
"dwGlowManager" => pattern!("488b05${'} c3 cccccccccccccccc 8b41") => None,
"dwLocalPlayerController" => pattern!("488b05${'} 4885c0 74? 8b88") => None,
"dwPlantedC4" => pattern!("488b15${'} ffc0 488d4c24") => None,
"dwLocalPlayerController" => pattern!("488905${'} 8b9e") => None,
"dwPlantedC4" => pattern!("488b15${'} 41ffc0") => None,
"dwPrediction" => pattern!("488d05${'} c3 cccccccccccccccc 4883ec? 8b0d") => Some(|_view, map, rva| {
map.insert("dwLocalPlayerPawn".to_string(), rva + 0x138);
map.insert("dwLocalPlayerPawn".to_string(), rva + 0x148);
}),
"dwSensitivity" => pattern!("488b05${'} 488b40? f3410f59f4") => None,
"dwSensitivity_sensitivity" => pattern!("ff50u1 4c8bc6 488d55? 488bcf e8${} 84c0 0f85${} 4c8d45? 8bd3 488bcf e8${} e9${} f30f1006") => None,
"dwViewMatrix" => pattern!("488d0d${'} 48c1e006") => None,
"dwViewRender" => pattern!("488905${'} 488bc8 4885c0") => None,
"dwWeaponC4" => pattern!("488b15${'} ffc0 8905${} 488bc7") => None,
"dwWeaponC4" => pattern!("488b15${'} ffc0 8905${} 488bc6 488934ea 488b6c24? c686[5] 80be") => None,
},
engine2 => {
"dwBuildNumber" => pattern!("8905${'} 488d0d${} ff15${}") => None,
"dwBuildNumber" => pattern!("8905${'} 488d0d${} ff15${} 488b0d") => None,
"dwNetworkGameClient" => pattern!("48893d${'} 488d15") => None,
"dwNetworkGameClient_clientTickCount" => pattern!("8b81u4 c3 cccccccccccccccccc 8b81${} c3 cccccccccccccccccc 83b9") => None,
"dwNetworkGameClient_deltaTick" => pattern!("8983u4 40b7") => None,
"dwNetworkGameClient_getLocalPlayer" => pattern!("4883c0u1 488d0440 458b04c7") => Some(|_view, map, rva| {
"dwNetworkGameClient_isBackgroundMap" => pattern!("0fb681u4 c3 cccccccccccccccc 0fb681${} c3 cccccccccccccccc 48895c24") => None,
"dwNetworkGameClient_localPlayer" => pattern!("4883c0u1 488d0440 8b0cc1") => Some(|_view, map, rva| {
// .text 48 83 C0 0A | add rax, 0Ah
// .text 48 8D 04 40 | lea rax, [rax + rax * 2]
// .text 45 8B 04 C7 | mov r8d, [r15 + rax * 8]
map.insert("dwNetworkGameClient_getLocalPlayer".to_string(), (rva + (rva * 2)) * 8);
// .text 8B 0C C1 | mov ecx, [rcx + rax * 8]
map.insert("dwNetworkGameClient_localPlayer".to_string(), (rva + (rva * 2)) * 8);
}),
"dwNetworkGameClient_getMaxClients" => pattern!("8b81u2?? c3cccccccccccccccccc 8b81${} ffc0") => None,
"dwNetworkGameClient_signOnState" => pattern!("448b81u2?? 488d0d") => None,
"dwNetworkGameClient_maxClients" => pattern!("8b81u4 c3cccccccccccccccccc 8b81${} ffc0") => None,
"dwNetworkGameClient_serverTickCount" => pattern!("8b81u4 c3 cccccccccccccccccc 83b9") => None,
"dwNetworkGameClient_signOnState" => pattern!("448b81u4 488d0d") => None,
"dwWindowHeight" => pattern!("8b05${'} 8903") => None,
"dwWindowWidth" => pattern!("8b05${'} 8907") => None,
"dwSoundService" => pattern!("488905${'} 4c8d4424? 488d05") => Some(|_view, map, rva| {
map.insert("dwEngineViewData".to_string(), rva + 0x9C);
}),
},
input_system => {
"dwInputSystem" => pattern!("488905${'} 488d05") => None,
},
matchmaking => {
"dwGameTypes" => pattern!("488d0d${'} 33d2") => Some(|_view, map, rva| {
map.insert("dwGameTypes_mapName".to_string(), rva + 0x120);
}),
"dwGameTypes" => pattern!("488d0d${'} 33d2") => None,
"dwGameTypes_mapName" => pattern!("488b81u4 4885c074? 4883c0") => None,
},
soundsystem => {
"dwSoundSystem" => pattern!("488d05${'} c3 cccccccccccccccc 488915") => None,
"dwSoundSystem_engineViewData" => pattern!("0f1147u1 0f104b") => None,
},
}
pub fn offsets(process: &mut IntoProcessInstanceArcBox<'_>) -> Result<OffsetMap> {
let mut map = BTreeMap::new();
let modules: [(&str, fn(PeView) -> BTreeMap<String, u32>); 4] = [
("client.dll", client::offsets),
let modules = [
(
"client.dll",
client::offsets as fn(PeView) -> BTreeMap<String, u32>,
),
("engine2.dll", engine2::offsets),
("inputsystem.dll", input_system::offsets),
("matchmaking.dll", matchmaking::offsets),
("soundsystem.dll", soundsystem::offsets),
];
for (module_name, offsets) in &modules {
let module = process.module_by_name(module_name)?;
let buf = process.read_raw(module.base, module.size as _)?;
let buf = process
.read_raw(module.base, module.size as _)
.data_part()?;
let view = PeView::from_bytes(&buf)?;
@@ -143,3 +155,167 @@ pub fn offsets(process: &mut IntoProcessInstanceArcBox<'_>) -> Result<OffsetMap>
Ok(map)
}
#[cfg(test)]
mod tests {
use std::fs;
use serde_json::Value;
use super::*;
fn setup() -> Result<IntoProcessInstanceArcBox<'static>> {
let os = memflow_native::create_os(&OsArgs::default(), LibArc::default())?;
let process = os.into_process_by_name("cs2.exe")?;
Ok(process)
}
fn get_class_field_value(module_name: &str, class_name: &str, field_name: &str) -> Option<u64> {
let content = fs::read_to_string(format!("output/{}.json", module_name)).ok()?;
let value: Value = serde_json::from_str(&content).ok()?;
value
.get(module_name)?
.get("classes")?
.get(class_name)?
.get("fields")?
.get(field_name)?
.as_u64()
}
fn get_offset_value(module_name: &str, offset_name: &str) -> Option<u64> {
let content = fs::read_to_string("output/offsets.json").ok()?;
let value: Value = serde_json::from_str(&content).ok()?;
let offset = value.get(module_name)?.get(offset_name)?;
offset.as_u64()
}
#[test]
fn build_number() -> Result<()> {
let mut process = setup()?;
let engine_base = process.module_by_name("engine2.dll")?.base;
let offset = get_offset_value("engine2.dll", "dwBuildNumber").unwrap();
let build_number: u32 = process.read(engine_base + offset).data_part()?;
println!("build number: {}", build_number);
Ok(())
}
#[test]
fn global_vars() -> Result<()> {
let mut process = setup()?;
let client_base = process.module_by_name("client.dll")?.base;
let offset = get_offset_value("client.dll", "dwGlobalVars").unwrap();
let global_vars: u64 = process.read(client_base + offset).data_part()?;
let cur_map_name = {
let addr = process
.read_addr64((global_vars + 0x1B8).into())
.data_part()?;
process.read_utf8(addr, 4096).data_part()?
};
println!("current map name: {}", cur_map_name);
Ok(())
}
#[test]
fn local_player_controller() -> Result<()> {
let mut process = setup()?;
let client_base = process.module_by_name("client.dll")?.base;
let local_player_controller_offset =
get_offset_value("client.dll", "dwLocalPlayerController").unwrap();
let player_name_offset =
get_class_field_value("client.dll", "CBasePlayerController", "m_iszPlayerName")
.unwrap();
let local_player_controller: u64 = process
.read(client_base + local_player_controller_offset)
.data_part()?;
let player_name = process
.read_utf8((local_player_controller + player_name_offset).into(), 4096)
.data_part()?;
println!("local player name: {}", player_name);
Ok(())
}
#[test]
fn local_player_pawn() -> Result<()> {
#[derive(Debug, Pod)]
#[repr(C)]
struct Vector3D {
x: f32,
y: f32,
z: f32,
}
let mut process = setup()?;
let client_base = process.module_by_name("client.dll")?.base;
let local_player_pawn_offset = get_offset_value("client.dll", "dwLocalPlayerPawn").unwrap();
let game_scene_node_offset =
get_class_field_value("client.dll", "C_BaseEntity", "m_pGameSceneNode").unwrap();
let vec_abs_origin_offset =
get_class_field_value("client.dll", "CGameSceneNode", "m_vecAbsOrigin").unwrap();
let local_player_pawn: u64 = process
.read(client_base + local_player_pawn_offset)
.data_part()?;
let game_scene_node: u64 = process
.read((local_player_pawn + game_scene_node_offset).into())
.data_part()?;
let vec_abs_origin: Vector3D = process
.read((game_scene_node + vec_abs_origin_offset).into())
.data_part()?;
println!("local player origin: {:?}", vec_abs_origin);
Ok(())
}
#[test]
fn window_size() -> Result<()> {
let mut process = setup()?;
let engine_base = process.module_by_name("engine2.dll")?.base;
let window_width_offset = get_offset_value("engine2.dll", "dwWindowWidth").unwrap();
let window_height_offset = get_offset_value("engine2.dll", "dwWindowHeight").unwrap();
let window_width: u32 = process
.read(engine_base + window_width_offset)
.data_part()?;
let window_height: u32 = process
.read(engine_base + window_height_offset)
.data_part()?;
println!("window size: {}x{}", window_width, window_height);
Ok(())
}
}

View File

@@ -1,6 +1,8 @@
use std::collections::BTreeMap;
use std::ffi::CStr;
use anyhow::{bail, Result};
use log::debug;
use memflow::prelude::v1::*;
@@ -10,7 +12,6 @@ use pelite::pe64::{Pe, PeView};
use serde::{Deserialize, Serialize};
use crate::error::{Error, Result};
use crate::source2::*;
pub type SchemaMap = BTreeMap<String, (Vec<Class>, Vec<Enum>)>;
@@ -80,26 +81,34 @@ fn read_class_binding(
process: &mut IntoProcessInstanceArcBox<'_>,
binding_ptr: Pointer64<SchemaClassBinding>,
) -> Result<Class> {
let binding = binding_ptr.read(process)?;
let binding = process.read_ptr(binding_ptr).data_part()?;
let module_name = binding
.module_name
.read_string(process)
let module_name = process
.read_utf8(binding.module_name.address(), 4096)
.data_part()
.map(|s| format!("{}.dll", s))?;
let name = binding.name.read_string(process)?.to_string();
let name = process
.read_utf8(binding.name.address(), 4096)
.data_part()?;
if name.is_empty() {
bail!("empty class name");
}
let parent = binding.base_classes.non_null().and_then(|ptr| {
let base_class = ptr.read(process).ok()?;
let parent_class = base_class.prev.read(process).ok()?;
let base_class = process.read_ptr(ptr).data_part().ok()?;
let parent_class = process.read_ptr(base_class.prev).data_part().ok()?;
let module_name = parent_class
.module_name
.read_string(process)
.ok()?
.to_string();
let module_name = process
.read_utf8(parent_class.module_name.address(), 4096)
.data_part()
.ok()?;
let name = parent_class.name.read_string(process).ok()?.to_string();
let name = process
.read_utf8(parent_class.name.address(), 4096)
.data_part()
.ok()?;
Some(Box::new(Class {
name,
@@ -114,11 +123,11 @@ fn read_class_binding(
let metadata = read_class_binding_metadata(process, &binding)?;
debug!(
"found class: {} @ {:#X} (module name: {}) (parent name: {:?}) (metadata count: {}) (fields count: {})",
"found class: {} at {:#X} (module name: {}) (parent name: {:?}) (metadata count: {}) (field count: {})",
name,
binding_ptr.to_umem(),
module_name,
parent.as_ref().map(|parent| parent.name.clone()),
parent.as_ref().map(|p| p.name.clone()),
metadata.len(),
fields.len(),
);
@@ -141,17 +150,20 @@ fn read_class_binding_fields(
}
(0..binding.field_count).try_fold(Vec::new(), |mut acc, i| {
let field = binding.fields.at(i as _).read(process)?;
let field = process.read_ptr(binding.fields.at(i as _)).data_part()?;
if field.schema_type.is_null() {
return Ok(acc);
}
let name = field.name.read_string(process)?.to_string();
let schema_type = field.schema_type.read(process)?;
let name = process.read_utf8(field.name.address(), 4096).data_part()?;
let schema_type = process.read_ptr(field.schema_type).data_part()?;
// TODO: Parse this properly.
let type_name = schema_type.name.read_string(process)?.replace(" ", "");
let type_name = process
.read_utf8(schema_type.name.address(), 4096)
.data_part()?
.replace(" ", "");
acc.push(ClassField {
name,
@@ -172,30 +184,39 @@ fn read_class_binding_metadata(
}
(0..binding.static_metadata_count).try_fold(Vec::new(), |mut acc, i| {
let metadata = binding.static_metadata.at(i as _).read(process)?;
let metadata = process
.read_ptr(binding.static_metadata.at(i as _))
.data_part()?;
if metadata.data.is_null() {
if metadata.network_value.is_null() {
return Ok(acc);
}
let name = metadata.name.read_string(process)?.to_string();
let network_value = metadata.data.read(process)?;
let name = process
.read_utf8(metadata.name.address(), 4096)
.data_part()?;
let network_value = process.read_ptr(metadata.network_value).data_part()?;
let metadata = match name.as_str() {
"MNetworkChangeCallback" => unsafe {
let name = network_value
.value
.name_ptr
.read_string(process)?
.to_string();
let name = process
.read_utf8(network_value.value.name_ptr.address(), 4096)
.data_part()?;
ClassMetadata::NetworkChangeCallback { name }
},
"MNetworkVarNames" => unsafe {
let var_value = network_value.value.var_value;
let name = var_value.name.read_string(process)?.to_string();
let type_name = var_value.type_name.read_string(process)?.replace(" ", "");
let name = process
.read_utf8(var_value.name.address(), 4096)
.data_part()?;
let type_name = process
.read_utf8(var_value.type_name.address(), 4096)
.data_part()?
.replace(" ", "");
ClassMetadata::NetworkVarNames { name, type_name }
},
@@ -212,22 +233,29 @@ fn read_enum_binding(
process: &mut IntoProcessInstanceArcBox<'_>,
binding_ptr: Pointer64<SchemaEnumBinding>,
) -> Result<Enum> {
let binding = binding_ptr.read(process)?;
let name = binding.name.read_string(process)?.to_string();
let binding = process.read_ptr(binding_ptr).data_part()?;
let name = process
.read_utf8(binding.name.address(), 4096)
.data_part()?;
if name.is_empty() {
bail!("empty enum name");
}
let members = read_enum_binding_members(process, &binding)?;
debug!(
"found enum: {} @ {:#X} (alignment: {}) (members count: {})",
"found enum: {} at {:#X} (alignment: {}) (member count: {})",
name,
binding_ptr.to_umem(),
binding.alignment,
binding.align_of,
binding.size,
);
Ok(Enum {
name,
alignment: binding.alignment,
alignment: binding.align_of,
size: binding.enumerator_count,
members,
})
@@ -242,8 +270,13 @@ fn read_enum_binding_members(
}
(0..binding.enumerator_count).try_fold(Vec::new(), |mut acc, i| {
let enumerator = binding.enumerators.at(i as _).read(process)?;
let name = enumerator.name.read_string(process)?.to_string();
let enumerator = process
.read_ptr(binding.enumerators.at(i as _))
.data_part()?;
let name = process
.read_utf8(enumerator.name.address(), 4096)
.data_part()?;
acc.push(EnumMember {
name,
@@ -256,7 +289,10 @@ fn read_enum_binding_members(
fn read_schema_system(process: &mut IntoProcessInstanceArcBox<'_>) -> Result<SchemaSystem> {
let module = process.module_by_name("schemasystem.dll")?;
let buf = process.read_raw(module.base, module.size as _)?;
let buf = process
.read_raw(module.base, module.size as _)
.data_part()?;
let view = PeView::from_bytes(&buf)?;
@@ -264,15 +300,15 @@ fn read_schema_system(process: &mut IntoProcessInstanceArcBox<'_>) -> Result<Sch
if !view
.scanner()
.finds_code(pattern!("488905${'} 4c8d45"), &mut save)
.finds_code(pattern!("4c8d35${'} 0f2845"), &mut save)
{
return Err(Error::Other("unable to find schema system pattern"));
bail!("outdated schema system pattern");
}
let schema_system: SchemaSystem = process.read(module.base + save[1])?;
let schema_system: SchemaSystem = process.read(module.base + save[1]).data_part()?;
if schema_system.num_registrations == 0 {
return Err(Error::Other("no schema system registrations found"));
bail!("no schema system registrations found");
}
Ok(schema_system)
@@ -286,7 +322,7 @@ fn read_type_scopes(
(0..type_scopes.size).try_fold(Vec::new(), |mut acc, i| {
let type_scope_ptr = type_scopes.element(process, i as _)?;
let type_scope = type_scope_ptr.read(process)?;
let type_scope = process.read_ptr(type_scope_ptr).data_part()?;
let module_name = unsafe { CStr::from_ptr(type_scope.name.as_ptr()) }
.to_string_lossy()
@@ -311,7 +347,7 @@ fn read_type_scopes(
}
debug!(
"found type scope: {} @ {:#X} (classes count: {}) (enums count: {})",
"found type scope: {} at {:#X} (class count: {}) (enum count: {})",
module_name,
type_scope_ptr.to_umem(),
classes.len(),

View File

@@ -1,31 +0,0 @@
use thiserror::Error;
pub type Result<T> = std::result::Result<T, Error>;
#[derive(Debug, Error)]
pub enum Error {
#[error(transparent)]
Fmt(#[from] std::fmt::Error),
#[error(transparent)]
Io(#[from] std::io::Error),
#[error(transparent)]
Memflow(#[from] memflow::error::Error),
#[error(transparent)]
Pelite(#[from] pelite::Error),
#[error(transparent)]
Serde(#[from] serde_json::Error),
#[error("{0}")]
Other(&'static str),
}
impl<T> From<memflow::error::PartialError<T>> for Error {
#[inline]
fn from(err: memflow::error::PartialError<T>) -> Self {
Error::Memflow(err.into())
}
}

View File

@@ -1,20 +1,21 @@
use std::fs::File;
use std::path::PathBuf;
use std::str::FromStr;
use std::time::Instant;
use anyhow::Result;
use clap::*;
use log::{info, Level};
use log::{info, LevelFilter};
use memflow::prelude::v1::*;
use simplelog::{ColorChoice, TermLogger};
use simplelog::{ColorChoice, CombinedLogger, Config, TermLogger, TerminalMode, WriteLogger};
use error::Result;
use output::Output;
mod analysis;
mod error;
mod mem;
mod output;
mod source2;
@@ -53,22 +54,28 @@ struct Args {
fn main() -> Result<()> {
let args = Args::parse();
let now = Instant::now();
let log_level = match args.verbose {
0 => Level::Error,
1 => Level::Warn,
2 => Level::Info,
3 => Level::Debug,
_ => Level::Trace,
let level_filter = match args.verbose {
0 => LevelFilter::Error,
1 => LevelFilter::Warn,
2 => LevelFilter::Info,
3 => LevelFilter::Debug,
_ => LevelFilter::Trace,
};
TermLogger::init(
log_level.to_level_filter(),
Default::default(),
Default::default(),
CombinedLogger::init(vec![
TermLogger::new(
level_filter,
Config::default(),
TerminalMode::Mixed,
ColorChoice::Auto,
)
),
WriteLogger::new(
LevelFilter::Info,
Config::default(),
File::create("cs2-dumper.log").unwrap(),
),
])
.unwrap();
let conn_args = args
@@ -76,7 +83,8 @@ fn main() -> Result<()> {
.map(|s| ConnectorArgs::from_str(&s).expect("unable to parse connector arguments"))
.unwrap_or_default();
let os = if let Some(conn) = args.connector {
let os = match args.connector {
Some(conn) => {
let inventory = Inventory::scan();
inventory
@@ -85,19 +93,33 @@ fn main() -> Result<()> {
.args(conn_args)
.os("win32")
.build()?
} else {
// Fallback to the native OS layer if no connector name was specified.
memflow_native::create_os(&Default::default(), Default::default())?
}
None => {
#[cfg(windows)]
{
memflow_native::create_os(&OsArgs::default(), LibArc::default())?
}
#[cfg(not(windows))]
{
panic!("no connector specified")
}
}
};
let mut process = os.into_process_by_name(&args.process_name)?;
let now = Instant::now();
let result = analysis::analyze_all(&mut process)?;
let output = Output::new(&args.file_types, args.indent_size, &args.output, &result)?;
output.dump_all(&mut process)?;
info!("finished in {:?}", now.elapsed());
info!(
"analysis completed in {} seconds",
now.elapsed().as_secs_f64()
);
Ok(())
}

View File

@@ -1,4 +1,4 @@
use memflow::types::{Pointer, PrimitiveAddress};
use memflow::prelude::v1::*;
pub trait PointerExt {
fn is_null(&self) -> bool;
@@ -10,3 +10,15 @@ impl<U: PrimitiveAddress, T> PointerExt for Pointer<U, T> {
self.inner.is_null()
}
}
pub fn read_addr64_rip(
process: &mut IntoProcessInstanceArcBox<'_>,
addr: Address,
) -> PartialResult<Address> {
let displacement = match process.read::<i32>(addr + 0x3) {
Ok(d) => d,
Err(e) => return Err(PartialError::Error(e.into())),
};
Ok(addr + 0x7 + displacement)
}

View File

@@ -1,20 +1,16 @@
use std::collections::BTreeMap;
use std::fmt::{self, Write};
use super::{Button, CodeWriter, Formatter};
use super::{ButtonMap, CodeWriter, Formatter};
impl CodeWriter for Vec<Button> {
impl CodeWriter for ButtonMap {
fn write_cs(&self, fmt: &mut Formatter<'_>) -> fmt::Result {
fmt.block("namespace CS2Dumper", false, |fmt| {
writeln!(fmt, "// Module: client.dll")?;
fmt.block("public static class Buttons", false, |fmt| {
for button in self {
writeln!(
fmt,
"public const nint {} = {:#X};",
button.name, button.value
)?;
for (name, value) in self {
writeln!(fmt, "public const nint {} = {:#X};", name, value)?;
}
Ok(())
@@ -30,12 +26,8 @@ impl CodeWriter for Vec<Button> {
writeln!(fmt, "// Module: client.dll")?;
fmt.block("namespace buttons", false, |fmt| {
for button in self {
writeln!(
fmt,
"constexpr std::ptrdiff_t {} = {:#X};",
button.name, button.value
)?;
for (name, value) in self {
writeln!(fmt, "constexpr std::ptrdiff_t {} = {:#X};", name, value)?;
}
Ok(())
@@ -45,15 +37,12 @@ impl CodeWriter for Vec<Button> {
fn write_json(&self, fmt: &mut Formatter<'_>) -> fmt::Result {
let content = {
let buttons: BTreeMap<_, _> = self
.iter()
.map(|button| (button.name.as_str(), button.value))
.collect();
let buttons: BTreeMap<_, _> = self.iter().map(|(name, value)| (name, value)).collect();
BTreeMap::from_iter([("client.dll", buttons)])
};
fmt.write_str(&serde_json::to_string_pretty(&content).expect("failed to serialize"))
fmt.write_str(&serde_json::to_string_pretty(&content).unwrap())
}
fn write_rs(&self, fmt: &mut Formatter<'_>) -> fmt::Result {
@@ -63,14 +52,14 @@ impl CodeWriter for Vec<Button> {
writeln!(fmt, "// Module: client.dll")?;
fmt.block("pub mod buttons", false, |fmt| {
for button in self {
let mut name = button.name.clone();
for (name, value) in self {
let mut name = name.clone();
if name == "use" {
name = format!("r#{}", name);
}
writeln!(fmt, "pub const {}: usize = {:#X};", name, button.value)?;
writeln!(fmt, "pub const {}: usize = {:#X};", name, value)?;
}
Ok(())

View File

@@ -15,6 +15,7 @@ impl<'a> Formatter<'a> {
}
}
// TODO: Refactor this.
pub fn block<F>(&mut self, heading: &str, semicolon: bool, f: F) -> fmt::Result
where
F: FnOnce(&mut Self) -> fmt::Result,

View File

@@ -15,12 +15,8 @@ impl CodeWriter for InterfaceMap {
&format!("public static class {}", AsPascalCase(slugify(module_name))),
false,
|fmt| {
for iface in ifaces {
writeln!(
fmt,
"public const nint {} = {:#X};",
iface.name, iface.value
)?;
for (name, value) in ifaces {
writeln!(fmt, "public const nint {} = {:#X};", name, value)?;
}
Ok(())
@@ -45,12 +41,8 @@ impl CodeWriter for InterfaceMap {
&format!("namespace {}", AsSnakeCase(slugify(module_name))),
false,
|fmt| {
for iface in ifaces {
writeln!(
fmt,
"constexpr std::ptrdiff_t {} = {:#X};",
iface.name, iface.value
)?;
for (name, value) in ifaces {
writeln!(fmt, "constexpr std::ptrdiff_t {} = {:#X};", name, value)?;
}
Ok(())
@@ -67,16 +59,14 @@ impl CodeWriter for InterfaceMap {
let content: BTreeMap<_, _> = self
.iter()
.map(|(module_name, ifaces)| {
let ifaces: BTreeMap<_, _> = ifaces
.iter()
.map(|iface| (&iface.name, iface.value))
.collect();
let ifaces: BTreeMap<_, _> =
ifaces.iter().map(|(name, value)| (name, value)).collect();
(module_name, ifaces)
})
.collect();
fmt.write_str(&serde_json::to_string_pretty(&content).expect("failed to serialize"))
fmt.write_str(&serde_json::to_string_pretty(&content).unwrap())
}
fn write_rs(&self, fmt: &mut Formatter<'_>) -> fmt::Result {
@@ -91,12 +81,8 @@ impl CodeWriter for InterfaceMap {
&format!("pub mod {}", AsSnakeCase(slugify(module_name))),
false,
|fmt| {
for iface in ifaces {
writeln!(
fmt,
"pub const {}: usize = {:#X};",
iface.name, iface.value
)?;
for (name, value) in ifaces {
writeln!(fmt, "pub const {}: usize = {:#X};", name, value)?;
}
Ok(())

View File

@@ -2,6 +2,8 @@ use std::fmt::{self, Write};
use std::fs;
use std::path::Path;
use anyhow::{anyhow, Result};
use chrono::{DateTime, Utc};
use memflow::prelude::v1::*;
@@ -11,7 +13,6 @@ use serde_json::json;
use formatter::Formatter;
use crate::analysis::*;
use crate::error::{Error, Result};
mod buttons;
mod formatter;
@@ -20,13 +21,14 @@ mod offsets;
mod schemas;
enum Item<'a> {
Buttons(&'a Vec<Button>),
Buttons(&'a ButtonMap),
Interfaces(&'a InterfaceMap),
Offsets(&'a OffsetMap),
Schemas(&'a SchemaMap),
}
impl<'a> Item<'a> {
#[inline]
fn write(&self, fmt: &mut Formatter<'a>, file_type: &str) -> fmt::Result {
match file_type {
"cs" => self.write_cs(fmt),
@@ -40,15 +42,13 @@ impl<'a> Item<'a> {
trait CodeWriter {
fn write_cs(&self, fmt: &mut Formatter<'_>) -> fmt::Result;
fn write_hpp(&self, fmt: &mut Formatter<'_>) -> fmt::Result;
fn write_json(&self, fmt: &mut Formatter<'_>) -> fmt::Result;
fn write_rs(&self, fmt: &mut Formatter<'_>) -> fmt::Result;
}
impl<'a> CodeWriter for Item<'a> {
#[inline]
fn write_cs(&self, fmt: &mut Formatter<'_>) -> fmt::Result {
match self {
Item::Buttons(buttons) => buttons.write_cs(fmt),
@@ -58,6 +58,7 @@ impl<'a> CodeWriter for Item<'a> {
}
}
#[inline]
fn write_hpp(&self, fmt: &mut Formatter<'_>) -> fmt::Result {
match self {
Item::Buttons(buttons) => buttons.write_hpp(fmt),
@@ -67,6 +68,7 @@ impl<'a> CodeWriter for Item<'a> {
}
}
#[inline]
fn write_json(&self, fmt: &mut Formatter<'_>) -> fmt::Result {
match self {
Item::Buttons(buttons) => buttons.write_json(fmt),
@@ -76,6 +78,7 @@ impl<'a> CodeWriter for Item<'a> {
}
}
#[inline]
fn write_rs(&self, fmt: &mut Formatter<'_>) -> fmt::Result {
match self {
Item::Buttons(buttons) => buttons.write_rs(fmt),
@@ -140,9 +143,9 @@ impl<'a> Output<'a> {
let module = process.module_by_name(module_name).ok()?;
let offset = offsets.iter().find(|(name, _)| *name == "dwBuildNumber")?.1;
process.read::<u32>(module.base + offset).ok()
process.read::<u32>(module.base + offset).data_part().ok()
})
.ok_or(Error::Other("unable to read build number"))?;
.ok_or(anyhow!("failed to read build number"))?;
let content = serde_json::to_string_pretty(&json!({
"timestamp": self.timestamp.to_rfc3339(),
@@ -177,7 +180,7 @@ impl<'a> Output<'a> {
for (module_name, (classes, enums)) in &self.result.schemas {
let map = SchemaMap::from([(module_name.clone(), (classes.clone(), enums.clone()))]);
self.dump_item(module_name, &Item::Schemas(&map))?;
self.dump_item(&slugify(&module_name), &Item::Schemas(&map))?;
}
Ok(())
@@ -191,6 +194,7 @@ impl<'a> Output<'a> {
}
}
#[inline]
fn slugify(input: &str) -> String {
input.replace(|c: char| !c.is_alphanumeric(), "_")
}

View File

@@ -55,7 +55,7 @@ impl CodeWriter for OffsetMap {
}
fn write_json(&self, fmt: &mut Formatter<'_>) -> fmt::Result {
fmt.write_str(&serde_json::to_string_pretty(self).expect("failed to serialize"))
fmt.write_str(&serde_json::to_string_pretty(self).unwrap())
}
fn write_rs(&self, fmt: &mut Formatter<'_>) -> fmt::Result {

View File

@@ -1,4 +1,4 @@
use std::collections::BTreeMap;
use std::collections::{BTreeMap, HashSet};
use std::fmt::{self, Write};
use heck::{AsPascalCase, AsSnakeCase};
@@ -31,14 +31,12 @@ impl CodeWriter for SchemaMap {
};
writeln!(fmt, "// Alignment: {}", enum_.alignment)?;
writeln!(fmt, "// Members count: {}", enum_.size)?;
writeln!(fmt, "// Member count: {}", enum_.size)?;
fmt.block(
&format!("public enum {} : {}", slugify(&enum_.name), type_name),
false,
|fmt| {
// TODO: Handle the case where multiple members share
// the same value.
let members = enum_
.members
.iter()
@@ -58,10 +56,10 @@ impl CodeWriter for SchemaMap {
.parent
.as_ref()
.map(|parent| slugify(&parent.name))
.unwrap_or_else(|| "None".to_string());
.unwrap_or_else(|| String::from("None"));
writeln!(fmt, "// Parent: {}", parent_name)?;
writeln!(fmt, "// Fields count: {}", class.fields.len())?;
writeln!(fmt, "// Field count: {}", class.fields.len())?;
write_metadata(fmt, &class.metadata)?;
@@ -116,14 +114,12 @@ impl CodeWriter for SchemaMap {
};
writeln!(fmt, "// Alignment: {}", enum_.alignment)?;
writeln!(fmt, "// Members count: {}", enum_.size)?;
writeln!(fmt, "// Member count: {}", enum_.size)?;
fmt.block(
&format!("enum class {} : {}", slugify(&enum_.name), type_name),
true,
|fmt| {
// TODO: Handle the case where multiple members share
// the same value.
let members = enum_
.members
.iter()
@@ -143,10 +139,10 @@ impl CodeWriter for SchemaMap {
.parent
.as_ref()
.map(|parent| slugify(&parent.name))
.unwrap_or_else(|| "None".to_string());
.unwrap_or_else(|| String::from("None"));
writeln!(fmt, "// Parent: {}", parent_name)?;
writeln!(fmt, "// Fields count: {}", class.fields.len())?;
writeln!(fmt, "// Field count: {}", class.fields.len())?;
write_metadata(fmt, &class.metadata)?;
@@ -259,7 +255,7 @@ impl CodeWriter for SchemaMap {
})
.collect();
fmt.write_str(&serde_json::to_string_pretty(&content).expect("failed to serialize"))
fmt.write_str(&serde_json::to_string_pretty(&content).unwrap())
}
fn write_rs(&self, fmt: &mut Formatter<'_>) -> fmt::Result {
@@ -289,7 +285,7 @@ impl CodeWriter for SchemaMap {
};
writeln!(fmt, "// Alignment: {}", enum_.alignment)?;
writeln!(fmt, "// Members count: {}", enum_.size)?;
writeln!(fmt, "// Member count: {}", enum_.size)?;
fmt.block(
&format!(
@@ -299,21 +295,24 @@ impl CodeWriter for SchemaMap {
),
false,
|fmt| {
// TODO: Handle the case where multiple members share
// the same value.
let mut used_values = HashSet::new();
let members = enum_
.members
.iter()
.map(|member| {
format!(
"{} = {}",
member.name,
if member.value == -1 {
.filter_map(|member| {
// Filter out duplicate values.
if used_values.insert(member.value) {
let value = if member.value == -1 {
format!("{}::MAX", type_name)
} else {
format!("{:#X}", member.value)
};
Some(format!("{} = {}", member.name, value))
} else {
None
}
)
})
.collect::<Vec<_>>()
.join(",\n");
@@ -328,10 +327,10 @@ impl CodeWriter for SchemaMap {
.parent
.as_ref()
.map(|parent| slugify(&parent.name))
.unwrap_or_else(|| "None".to_string());
.unwrap_or_else(|| String::from("None"));
writeln!(fmt, "// Parent: {}", parent_name)?;
writeln!(fmt, "// Fields count: {}", class.fields.len())?;
writeln!(fmt, "// Field count: {}", class.fields.len())?;
write_metadata(fmt, &class.metadata)?;

View File

@@ -8,6 +8,6 @@ pub struct SchemaClassFieldData {
pub name: Pointer64<ReprCString>, // 0x0000
pub schema_type: Pointer64<SchemaType>, // 0x0008
pub single_inheritance_offset: i32, // 0x0010
pub static_metadata_count: i32, // 0x0014
pub static_metadata: Pointer64<SchemaMetadataEntryData>, // 0x0018
pub metadata_count: i32, // 0x0014
pub metadata: Pointer64<SchemaMetadataEntryData>, // 0x0018
}

View File

@@ -1,6 +1,9 @@
use memflow::prelude::v1::*;
use super::*;
use super::{
SchemaBaseClassInfoData, SchemaClassFieldData, SchemaMetadataEntryData, SchemaStaticFieldData,
SchemaSystemTypeScope, SchemaType,
};
pub type SchemaClassBinding = SchemaClassInfoData;
@@ -12,13 +15,13 @@ pub struct SchemaClassInfoData {
pub name: Pointer64<ReprCString>, // 0x0008
pub module_name: Pointer64<ReprCString>, // 0x0010
pub size: i32, // 0x0018
pub field_count: u16, // 0x001C
pub static_field_count: u16, // 0x001E
pub static_metadata_count: u16, // 0x0020
pub alignment: u8, // 0x0022
pub base_class_count: u8, // 0x0023
pub multiple_inheritance_depth: u16, // 0x0024
pub single_inheritance_depth: u16, // 0x0026
pub field_count: i16, // 0x001C
pub static_field_count: i16, // 0x001E
pub static_metadata_count: i16, // 0x0020
pub align_of: u8, // 0x0022
pub has_base_class: u8, // 0x0023
pub total_class_size: i16, // 0x0024
pub derived_class_size: i16, // 0x0026
pub fields: Pointer64<[SchemaClassFieldData]>, // 0x0028
pub static_fields: Pointer64<[SchemaStaticFieldData]>, // 0x0030
pub base_classes: Pointer64<SchemaBaseClassInfoData>, // 0x0038

Some files were not shown because too many files have changed in this diff Show More