From 7f9e92b50438373b932089f5d5c14da6291f8fd3 Mon Sep 17 00:00:00 2001 From: Alexandr Orden <34403611+Rebirator@users.noreply.github.com> Date: Sun, 29 Oct 2023 12:56:50 +0800 Subject: [PATCH] 26.10.2023 --- sdk/!GlobalTypes.hpp | 35 ++- sdk/client.hpp | 685 +++++++++++++++++++++++-------------------- sdk/server.hpp | 657 +++++++++++++++++++++-------------------- sdk/vphysics2.hpp | 31 +- 4 files changed, 742 insertions(+), 666 deletions(-) diff --git a/sdk/!GlobalTypes.hpp b/sdk/!GlobalTypes.hpp index 23a88f72..cb8263e9 100644 --- a/sdk/!GlobalTypes.hpp +++ b/sdk/!GlobalTypes.hpp @@ -4,7 +4,7 @@ // ///////////////////////////////////////////////////////////// // Binary: !GlobalTypes -// Classes count: 1293 +// Classes count: 1294 // Enums count: 303 // Created using source2gen - github.com/neverlosecc/source2gen // ///////////////////////////////////////////////////////////// @@ -10328,6 +10328,14 @@ public: float m_flSupport[26]; // 0x0 }; +// Alignment: 1 +// Size: 0x1 +struct RnVertex_t +{ +public: + uint8_t m_nEdge; // 0x0 +}; + // Alignment: 4 // Size: 0x18 class CovMatrix3 @@ -10339,8 +10347,8 @@ public: float m_flYZ; // 0x14 }; -// Alignment: 12 -// Size: 0xd8 +// Alignment: 13 +// Size: 0xf0 struct RnHull_t { public: @@ -10350,15 +10358,16 @@ public: Vector m_vOrthographicAreas; // 0x28 matrix3x4_t m_MassProperties; // 0x34 float m_flVolume; // 0x64 - CUtlVector< Vector > m_Vertices; // 0x68 - CUtlVector< RnHalfEdge_t > m_Edges; // 0x80 - CUtlVector< RnFace_t > m_Faces; // 0x98 - CUtlVector< RnPlane_t > m_Planes; // 0xb0 - uint32_t m_nFlags; // 0xc8 + CUtlVector< RnVertex_t > m_Vertices; // 0x68 + CUtlVector< Vector > m_VertexPositions; // 0x80 + CUtlVector< RnHalfEdge_t > m_Edges; // 0x98 + CUtlVector< RnFace_t > m_Faces; // 0xb0 + CUtlVector< RnPlane_t > m_FacePlanes; // 0xc8 + uint32_t m_nFlags; // 0xe0 private: - [[maybe_unused]] uint8_t __pad00cc[0x4]; // 0xcc + [[maybe_unused]] uint8_t __pad00e4[0x4]; // 0xe4 public: - CRegionSVM* m_pRegionSVM; // 0xd0 + CRegionSVM* m_pRegionSVM; // 0xe8 }; // Alignment: 5 @@ -11212,7 +11221,7 @@ public: }; // Alignment: 1 -// Size: 0xe8 +// Size: 0x100 struct RnHullDesc_t : public RnShapeDesc_t { public: @@ -24493,11 +24502,11 @@ public: }; // Alignment: 0 -// Size: 0x520 +// Size: 0x538 class CCSGOPlayerAnimGraphState { private: - [[maybe_unused]] uint8_t __pad0000[0x520]; // 0x0 + [[maybe_unused]] uint8_t __pad0000[0x538]; // 0x0 public: // No members available }; diff --git a/sdk/client.hpp b/sdk/client.hpp index 9006efd5..fe49799a 100644 --- a/sdk/client.hpp +++ b/sdk/client.hpp @@ -4,7 +4,7 @@ // ///////////////////////////////////////////////////////////// // Binary: client.dll -// Classes count: 406 +// Classes count: 409 // Enums count: 8 // Created using source2gen - github.com/neverlosecc/source2gen // ///////////////////////////////////////////////////////////// @@ -2958,8 +2958,8 @@ public: int16_t m_nDMBonusWeaponLoadoutSlot; // 0x3c }; -// Alignment: 100 -// Size: 0x1e78 +// Alignment: 101 +// Size: 0x4ec8 class C_CSGameRules : public C_TeamplayRules { public: @@ -3085,8 +3085,10 @@ public: bool m_bIsDroppingItems; // 0x8b8 // MNetworkEnable bool m_bIsQuestEligible; // 0x8b9 + // MNetworkEnable + bool m_bIsHltvActive; // 0x8ba private: - [[maybe_unused]] uint8_t __pad08ba[0x2]; // 0x8ba + [[maybe_unused]] uint8_t __pad08bb[0x1]; // 0x8bb public: // MNetworkEnable int32_t m_nGuardianModeWaveNumber; // 0x8bc @@ -3201,9 +3203,9 @@ public: // MNetworkChangeCallback "OnTeamIntroPeriodChanged" bool m_bTeamIntroPeriod; // 0xeb4 private: - [[maybe_unused]] uint8_t __pad0eb5[0xfbb]; // 0xeb5 + [[maybe_unused]] uint8_t __pad0eb5[0x400b]; // 0xeb5 public: - double m_flLastPerfSampleTime; // 0x1e70 + double m_flLastPerfSampleTime; // 0x4ec0 }; // Alignment: 13 @@ -3262,8 +3264,8 @@ public: int32_t m_iEnemy3Ks; // 0x70 }; -// Alignment: 6 -// Size: 0x9e0 +// Alignment: 8 +// Size: 0x1270 class C_CSGO_TeamPreviewCharacterPosition : public C_BaseEntity { public: @@ -3281,11 +3283,15 @@ public: // MNetworkEnable uint64_t m_xuid; // 0x558 // MNetworkEnable - C_EconItemView m_weaponItem; // 0x560 + C_EconItemView m_agentItem; // 0x560 + // MNetworkEnable + C_EconItemView m_glovesItem; // 0x9a8 + // MNetworkEnable + C_EconItemView m_weaponItem; // 0xdf0 }; // Alignment: 0 -// Size: 0x9e0 +// Size: 0x1270 class C_CSGO_TeamSelectCharacterPosition : public C_CSGO_TeamPreviewCharacterPosition { public: @@ -3293,7 +3299,7 @@ public: }; // Alignment: 0 -// Size: 0x9e0 +// Size: 0x1270 class C_CSGO_TeamSelectTerroristPosition : public C_CSGO_TeamSelectCharacterPosition { public: @@ -3301,7 +3307,7 @@ public: }; // Alignment: 0 -// Size: 0x9e0 +// Size: 0x1270 class C_CSGO_TeamSelectCounterTerroristPosition : public C_CSGO_TeamSelectCharacterPosition { public: @@ -3309,7 +3315,7 @@ public: }; // Alignment: 0 -// Size: 0x9e0 +// Size: 0x1270 class C_CSGO_TeamIntroCharacterPosition : public C_CSGO_TeamPreviewCharacterPosition { public: @@ -3317,7 +3323,7 @@ public: }; // Alignment: 0 -// Size: 0x9e0 +// Size: 0x1270 class C_CSGO_TeamIntroTerroristPosition : public C_CSGO_TeamIntroCharacterPosition { public: @@ -3325,7 +3331,7 @@ public: }; // Alignment: 0 -// Size: 0x9e0 +// Size: 0x1270 class C_CSGO_TeamIntroCounterTerroristPosition : public C_CSGO_TeamIntroCharacterPosition { public: @@ -3333,7 +3339,7 @@ public: }; // Alignment: 0 -// Size: 0x9e0 +// Size: 0x1270 class CCSGO_WingmanIntroCharacterPosition : public C_CSGO_TeamIntroCharacterPosition { public: @@ -3341,7 +3347,7 @@ public: }; // Alignment: 0 -// Size: 0x9e0 +// Size: 0x1270 class CCSGO_WingmanIntroTerroristPosition : public CCSGO_WingmanIntroCharacterPosition { public: @@ -3349,7 +3355,7 @@ public: }; // Alignment: 0 -// Size: 0x9e0 +// Size: 0x1270 class CCSGO_WingmanIntroCounterTerroristPosition : public CCSGO_WingmanIntroCharacterPosition { public: @@ -3672,7 +3678,7 @@ public: }; // Alignment: 3 -// Size: 0xb0 +// Size: 0x440 class CCSPlayer_WeaponServices : public CPlayer_WeaponServices { public: @@ -3735,8 +3741,8 @@ public: // No members available }; -// Alignment: 4 -// Size: 0x110 +// Alignment: 5 +// Size: 0x118 class CCSPlayerController_ActionTrackingServices : public CPlayerControllerComponent { public: @@ -3748,6 +3754,8 @@ public: int32_t m_iNumRoundKills; // 0x108 // MNetworkEnable int32_t m_iNumRoundKillsHeadshots; // 0x10c + // MNetworkEnable + uint32_t m_unTotalRoundDamageDealt; // 0x110 }; // Alignment: 14 @@ -3820,8 +3828,20 @@ public: int32_t m_nPreviousAccount; // 0x50 }; -// Alignment: 8 -// Size: 0x110 +// Alignment: 3 +// Size: 0x30 +struct ServerAuthoritativeWeaponSlot_t +{ +private: + [[maybe_unused]] uint8_t __pad0000[0x28]; // 0x0 +public: + uint16_t unClass; // 0x28 + uint16_t unSlot; // 0x2a + uint16_t unItemDefIdx; // 0x2c +}; + +// Alignment: 7 +// Size: 0xc0 class CCSPlayerController_InventoryServices : public CPlayerControllerComponent { public: @@ -3844,11 +3864,8 @@ private: [[maybe_unused]] uint8_t __pad006c[0x4]; // 0x6c public: // MNetworkEnable - // MNetworkChangeCallback "OnTerroristLoadoutCacheChanged" - C_UtlVectorEmbeddedNetworkVar< C_EconItemView > m_vecTerroristLoadoutCache; // 0x70 - // MNetworkEnable - // MNetworkChangeCallback "OnCounterTerroristLoadoutCacheChanged" - C_UtlVectorEmbeddedNetworkVar< C_EconItemView > m_vecCounterTerroristLoadoutCache; // 0xc0 + // MNetworkUserGroup "LocalPlayerExclusive" + C_UtlVectorEmbeddedNetworkVar< ServerAuthoritativeWeaponSlot_t > m_vecServerAuthoritativeWeaponSlots; // 0x70 }; // Alignment: 13 @@ -4556,7 +4573,7 @@ public: }; // Alignment: 0 -// Size: 0x9e0 +// Size: 0x1270 class C_CSGO_EndOfMatchCharacterPosition : public C_CSGO_TeamPreviewCharacterPosition { public: @@ -6866,7 +6883,7 @@ public: }; // Alignment: 57 -// Size: 0x848 +// Size: 0x808 class CCSPlayerController : public CBasePlayerController { private: @@ -6938,81 +6955,90 @@ public: // MNetworkEnable int32_t m_nEndMatchNextMapVote; // 0x758 // MNetworkEnable + // MNetworkUserGroup "LocalPlayerExclusive" uint16_t m_unActiveQuestId; // 0x75c private: [[maybe_unused]] uint8_t __pad075e[0x2]; // 0x75e public: // MNetworkEnable + // MNetworkUserGroup "LocalPlayerExclusive" QuestProgress::Reason m_nQuestProgressReason; // 0x760 // MNetworkEnable + // MNetworkUserGroup "LocalPlayerExclusive" uint32_t m_unPlayerTvControlFlags; // 0x764 private: - [[maybe_unused]] uint8_t __pad0768[0x68]; // 0x768 + [[maybe_unused]] uint8_t __pad0768[0x28]; // 0x768 public: - int32_t m_iDraftIndex; // 0x7d0 - uint32_t m_msQueuedModeDisconnectionTimestamp; // 0x7d4 - uint32_t m_uiAbandonRecordedReason; // 0x7d8 - bool m_bEverFullyConnected; // 0x7dc - bool m_bAbandonAllowsSurrender; // 0x7dd - bool m_bAbandonOffersInstantSurrender; // 0x7de - bool m_bDisconnection1MinWarningPrinted; // 0x7df - bool m_bScoreReported; // 0x7e0 + int32_t m_iDraftIndex; // 0x790 + uint32_t m_msQueuedModeDisconnectionTimestamp; // 0x794 + uint32_t m_uiAbandonRecordedReason; // 0x798 + bool m_bEverFullyConnected; // 0x79c + bool m_bAbandonAllowsSurrender; // 0x79d + bool m_bAbandonOffersInstantSurrender; // 0x79e + bool m_bDisconnection1MinWarningPrinted; // 0x79f + bool m_bScoreReported; // 0x7a0 private: - [[maybe_unused]] uint8_t __pad07e1[0x3]; // 0x7e1 + [[maybe_unused]] uint8_t __pad07a1[0x3]; // 0x7a1 public: // MNetworkEnable - int32_t m_nDisconnectionTick; // 0x7e4 + // MNetworkUserGroup "LocalPlayerExclusive" + int32_t m_nDisconnectionTick; // 0x7a4 private: - [[maybe_unused]] uint8_t __pad07e8[0x8]; // 0x7e8 + [[maybe_unused]] uint8_t __pad07a8[0x8]; // 0x7a8 public: // MNetworkEnable - bool m_bControllingBot; // 0x7f0 + bool m_bControllingBot; // 0x7b0 // MNetworkEnable - bool m_bHasControlledBotThisRound; // 0x7f1 - bool m_bHasBeenControlledByPlayerThisRound; // 0x7f2 + bool m_bHasControlledBotThisRound; // 0x7b1 + bool m_bHasBeenControlledByPlayerThisRound; // 0x7b2 private: - [[maybe_unused]] uint8_t __pad07f3[0x1]; // 0x7f3 + [[maybe_unused]] uint8_t __pad07b3[0x1]; // 0x7b3 public: - int32_t m_nBotsControlledThisRound; // 0x7f4 + int32_t m_nBotsControlledThisRound; // 0x7b4 // MNetworkEnable - bool m_bCanControlObservedBot; // 0x7f8 + // MNetworkUserGroup "LocalPlayerExclusive" + bool m_bCanControlObservedBot; // 0x7b8 private: - [[maybe_unused]] uint8_t __pad07f9[0x3]; // 0x7f9 + [[maybe_unused]] uint8_t __pad07b9[0x3]; // 0x7b9 public: // MNetworkEnable - CHandle< C_CSPlayerPawn > m_hPlayerPawn; // 0x7fc + CHandle< C_CSPlayerPawn > m_hPlayerPawn; // 0x7bc // MNetworkEnable - CHandle< C_CSObserverPawn > m_hObserverPawn; // 0x800 + CHandle< C_CSObserverPawn > m_hObserverPawn; // 0x7c0 // MNetworkEnable - bool m_bPawnIsAlive; // 0x804 + bool m_bPawnIsAlive; // 0x7c4 private: - [[maybe_unused]] uint8_t __pad0805[0x3]; // 0x805 + [[maybe_unused]] uint8_t __pad07c5[0x3]; // 0x7c5 public: // MNetworkEnable - uint32_t m_iPawnHealth; // 0x808 + // MNetworkUserGroup "TeammateAndSpectatorExclusive" + uint32_t m_iPawnHealth; // 0x7c8 // MNetworkEnable - int32_t m_iPawnArmor; // 0x80c + // MNetworkUserGroup "TeammateAndSpectatorExclusive" + int32_t m_iPawnArmor; // 0x7cc // MNetworkEnable - bool m_bPawnHasDefuser; // 0x810 + // MNetworkUserGroup "TeammateAndSpectatorExclusive" + bool m_bPawnHasDefuser; // 0x7d0 // MNetworkEnable - bool m_bPawnHasHelmet; // 0x811 + // MNetworkUserGroup "TeammateAndSpectatorExclusive" + bool m_bPawnHasHelmet; // 0x7d1 // MNetworkEnable - uint16_t m_nPawnCharacterDefIndex; // 0x812 + uint16_t m_nPawnCharacterDefIndex; // 0x7d2 // MNetworkEnable - int32_t m_iPawnLifetimeStart; // 0x814 + int32_t m_iPawnLifetimeStart; // 0x7d4 // MNetworkEnable - int32_t m_iPawnLifetimeEnd; // 0x818 + int32_t m_iPawnLifetimeEnd; // 0x7d8 // MNetworkEnable - int32_t m_iPawnBotDifficulty; // 0x81c + int32_t m_iPawnBotDifficulty; // 0x7dc // MNetworkEnable - CHandle< CCSPlayerController > m_hOriginalControllerOfCurrentPawn; // 0x820 + CHandle< CCSPlayerController > m_hOriginalControllerOfCurrentPawn; // 0x7e0 // MNetworkEnable - int32_t m_iScore; // 0x824 + int32_t m_iScore; // 0x7e4 // MNetworkEnable - C_NetworkUtlVectorBase< EKillTypes_t > m_vecKills; // 0x828 + C_NetworkUtlVectorBase< EKillTypes_t > m_vecKills; // 0x7e8 // MNetworkEnable - int32_t m_iMVPs; // 0x840 - bool m_bIsPlayerNameDirty; // 0x844 + int32_t m_iMVPs; // 0x800 + bool m_bIsPlayerNameDirty; // 0x804 }; // Alignment: 2 @@ -7236,7 +7262,7 @@ public: static int32_t &Get_s_nColorIdx(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("client.dll")->FindDeclaredClass("CGrenadeTracer")->m_static_fields[0]->m_instance);}; }; -// Alignment: 23 +// Alignment: 19 // Size: -0x7d60 class C_Inferno : public C_BaseModelEntity { @@ -7245,17 +7271,9 @@ private: public: ParticleIndex_t m_nfxFireDamageEffect; // 0xd00 // MNetworkEnable - int32_t m_fireXDelta[64]; // 0xd04 + Vector m_firePositions[64]; // 0xd04 // MNetworkEnable - int32_t m_fireYDelta[64]; // 0xe04 - // MNetworkEnable - int32_t m_fireZDelta[64]; // 0xf04 - // MNetworkEnable - int32_t m_fireParentXDelta[64]; // 0x1004 - // MNetworkEnable - int32_t m_fireParentYDelta[64]; // 0x1104 - // MNetworkEnable - int32_t m_fireParentZDelta[64]; // 0x1204 + Vector m_fireParentPositions[64]; // 0x1004 // MNetworkEnable bool m_bFireIsBurning[64]; // 0x1304 // MNetworkEnable @@ -8753,35 +8771,38 @@ public: private: [[maybe_unused]] uint8_t __pad0ebd[0x3]; // 0xebd public: - float m_bTenSecWarning; // 0xec0 - float m_bTriggerWarning; // 0xec4 - float m_bExplodeWarning; // 0xec8 - bool m_bC4Activated; // 0xecc + float m_bTriggerWarning; // 0xec0 + float m_bExplodeWarning; // 0xec4 + bool m_bC4Activated; // 0xec8 + bool m_bTenSecWarning; // 0xec9 private: - [[maybe_unused]] uint8_t __pad0ecd[0x3]; // 0xecd + [[maybe_unused]] uint8_t __pad0eca[0x2]; // 0xeca public: // MNetworkEnable - float m_flDefuseLength; // 0xed0 + float m_flDefuseLength; // 0xecc // MNetworkEnable - GameTime_t m_flDefuseCountDown; // 0xed4 + GameTime_t m_flDefuseCountDown; // 0xed0 // MNetworkEnable - bool m_bBombDefused; // 0xed8 + bool m_bBombDefused; // 0xed4 private: - [[maybe_unused]] uint8_t __pad0ed9[0x3]; // 0xed9 + [[maybe_unused]] uint8_t __pad0ed5[0x3]; // 0xed5 public: // MNetworkEnable // MNetworkChangeCallback "OnDefuserChanged" - CHandle< C_CSPlayerPawn > m_hBombDefuser; // 0xedc + CHandle< C_CSPlayerPawn > m_hBombDefuser; // 0xed8 // MNetworkEnable - CHandle< C_BaseEntity > m_hControlPanel; // 0xee0 - CHandle< C_Multimeter > m_hDefuserMultimeter; // 0xee4 - GameTime_t m_flNextRadarFlashTime; // 0xee8 - bool m_bRadarFlash; // 0xeec + CHandle< C_BaseEntity > m_hControlPanel; // 0xedc + CHandle< C_Multimeter > m_hDefuserMultimeter; // 0xee0 + GameTime_t m_flNextRadarFlashTime; // 0xee4 + bool m_bRadarFlash; // 0xee8 private: - [[maybe_unused]] uint8_t __pad0eed[0x3]; // 0xeed + [[maybe_unused]] uint8_t __pad0ee9[0x3]; // 0xee9 +public: + CHandle< C_CSPlayerPawn > m_pBombDefuser; // 0xeec + GameTime_t m_fLastDefuseTime; // 0xef0 +private: + [[maybe_unused]] uint8_t __pad0ef4[0x4]; // 0xef4 public: - CHandle< C_CSPlayerPawn > m_pBombDefuser; // 0xef0 - GameTime_t m_fLastDefuseTime; // 0xef4 CBasePlayerController* m_pPredictionOwner; // 0xef8 }; @@ -8795,6 +8816,22 @@ public: char m_pReticleHintTextName[256]; // 0x1561 }; +// Alignment: 0 +// Size: 0x10f0 +class C_HEGrenadeProjectile : public C_BaseCSGrenadeProjectile +{ +public: + // No members available +}; + +// Alignment: 0 +// Size: 0x10f0 +class C_FlashbangProjectile : public C_BaseCSGrenadeProjectile +{ +public: + // No members available +}; + // Alignment: 8 // Size: 0x15b8 class C_Chicken : public C_DynamicProp @@ -9066,45 +9103,45 @@ public: int32_t m_iOriginalTeamNumber; // 0x16a0 float m_flNextAttackRenderTimeOffset; // 0x16a4 private: - [[maybe_unused]] uint8_t __pad16a8[0x78]; // 0x16a8 + [[maybe_unused]] uint8_t __pad16a8[0x80]; // 0x16a8 public: - bool m_bVisualsDataSet; // 0x1720 - bool m_bOldFirstPersonSpectatedState; // 0x1721 + bool m_bVisualsDataSet; // 0x1728 + bool m_bOldFirstPersonSpectatedState; // 0x1729 private: - [[maybe_unused]] uint8_t __pad1722[0x2]; // 0x1722 + [[maybe_unused]] uint8_t __pad172a[0x2]; // 0x172a public: - CHandle< C_BaseEntity > m_hOurPing; // 0x1724 - CEntityIndex m_nOurPingIndex; // 0x1728 - Vector m_vecOurPingPos; // 0x172c - bool m_bGlowForPing; // 0x1738 - bool m_bUIWeapon; // 0x1739 + CHandle< C_BaseEntity > m_hOurPing; // 0x172c + CEntityIndex m_nOurPingIndex; // 0x1730 + Vector m_vecOurPingPos; // 0x1734 + bool m_bGlowForPing; // 0x1740 + bool m_bUIWeapon; // 0x1741 private: - [[maybe_unused]] uint8_t __pad173a[0xe]; // 0x173a + [[maybe_unused]] uint8_t __pad1742[0xe]; // 0x1742 public: // MNetworkEnable - CHandle< C_CSPlayerPawn > m_hPrevOwner; // 0x1748 + CHandle< C_CSPlayerPawn > m_hPrevOwner; // 0x1750 // MNetworkEnable - GameTick_t m_nDropTick; // 0x174c + GameTick_t m_nDropTick; // 0x1754 private: - [[maybe_unused]] uint8_t __pad1750[0x1c]; // 0x1750 + [[maybe_unused]] uint8_t __pad1758[0x1c]; // 0x1758 public: - bool m_donated; // 0x176c + bool m_donated; // 0x1774 private: - [[maybe_unused]] uint8_t __pad176d[0x3]; // 0x176d + [[maybe_unused]] uint8_t __pad1775[0x3]; // 0x1775 public: // MNetworkEnable - GameTime_t m_fLastShotTime; // 0x1770 - bool m_bWasOwnedByCT; // 0x1774 - bool m_bWasOwnedByTerrorist; // 0x1775 + GameTime_t m_fLastShotTime; // 0x1778 + bool m_bWasOwnedByCT; // 0x177c + bool m_bWasOwnedByTerrorist; // 0x177d private: - [[maybe_unused]] uint8_t __pad1776[0x2]; // 0x1776 + [[maybe_unused]] uint8_t __pad177e[0x2]; // 0x177e public: - float m_gunHeat; // 0x1778 - uint32_t m_smokeAttachments; // 0x177c - GameTime_t m_lastSmokeTime; // 0x1780 - float m_flLastClientFireBulletTime; // 0x1784 + float m_gunHeat; // 0x1780 + uint32_t m_smokeAttachments; // 0x1784 + GameTime_t m_lastSmokeTime; // 0x1788 + float m_flLastClientFireBulletTime; // 0x178c private: - [[maybe_unused]] uint8_t __pad1788[0xb8]; // 0x1788 + [[maybe_unused]] uint8_t __pad1790[0xb0]; // 0x1790 public: C_IronSightController m_IronSightController; // 0x1840 // MNetworkEnable @@ -9411,8 +9448,8 @@ public: // No members available }; -// Alignment: 141 -// Size: 0x16a0 +// Alignment: 140 +// Size: 0x1698 class C_CSPlayerPawnBase : public C_BasePlayerPawn { private: @@ -9517,373 +9554,369 @@ private: [[maybe_unused]] uint8_t __pad13a6[0x2]; // 0x13a6 public: // MNetworkEnable - uint32_t m_unTotalRoundDamageDealt; // 0x13a8 + float m_fMolotovUseTime; // 0x13a8 // MNetworkEnable - float m_fMolotovUseTime; // 0x13ac + float m_fMolotovDamageTime; // 0x13ac // MNetworkEnable - float m_fMolotovDamageTime; // 0x13b0 + int32_t m_nWhichBombZone; // 0x13b0 // MNetworkEnable - int32_t m_nWhichBombZone; // 0x13b4 - // MNetworkEnable - bool m_bInNoDefuseArea; // 0x13b8 + bool m_bInNoDefuseArea; // 0x13b4 private: - [[maybe_unused]] uint8_t __pad13b9[0x3]; // 0x13b9 + [[maybe_unused]] uint8_t __pad13b5[0x3]; // 0x13b5 public: // MNetworkEnable - int32_t m_iThrowGrenadeCounter; // 0x13bc + int32_t m_iThrowGrenadeCounter; // 0x13b8 // MNetworkEnable - bool m_bWaitForNoAttack; // 0x13c0 + bool m_bWaitForNoAttack; // 0x13bc private: - [[maybe_unused]] uint8_t __pad13c1[0x3]; // 0x13c1 + [[maybe_unused]] uint8_t __pad13bd[0x3]; // 0x13bd public: // MNetworkEnable - float m_flGuardianTooFarDistFrac; // 0x13c4 + float m_flGuardianTooFarDistFrac; // 0x13c0 // MNetworkEnable - GameTime_t m_flDetectedByEnemySensorTime; // 0x13c8 - float m_flNextGuardianTooFarWarning; // 0x13cc - bool m_bSuppressGuardianTooFarWarningAudio; // 0x13d0 + GameTime_t m_flDetectedByEnemySensorTime; // 0x13c4 + float m_flNextGuardianTooFarWarning; // 0x13c8 + bool m_bSuppressGuardianTooFarWarningAudio; // 0x13cc // MNetworkEnable - bool m_bKilledByTaser; // 0x13d1 + bool m_bKilledByTaser; // 0x13cd private: - [[maybe_unused]] uint8_t __pad13d2[0x2]; // 0x13d2 + [[maybe_unused]] uint8_t __pad13ce[0x2]; // 0x13ce public: // MNetworkEnable - int32_t m_iMoveState; // 0x13d4 + int32_t m_iMoveState; // 0x13d0 // MNetworkEnable - bool m_bCanMoveDuringFreezePeriod; // 0x13d8 + bool m_bCanMoveDuringFreezePeriod; // 0x13d4 private: - [[maybe_unused]] uint8_t __pad13d9[0x3]; // 0x13d9 + [[maybe_unused]] uint8_t __pad13d5[0x3]; // 0x13d5 public: // MNetworkEnable - float m_flLowerBodyYawTarget; // 0x13dc + float m_flLowerBodyYawTarget; // 0x13d8 // MNetworkEnable - bool m_bStrafing; // 0x13e0 + bool m_bStrafing; // 0x13dc private: - [[maybe_unused]] uint8_t __pad13e1[0x3]; // 0x13e1 + [[maybe_unused]] uint8_t __pad13dd[0x3]; // 0x13dd public: - GameTime_t m_flLastSpawnTimeIndex; // 0x13e4 + GameTime_t m_flLastSpawnTimeIndex; // 0x13e0 // MNetworkEnable - GameTime_t m_flEmitSoundTime; // 0x13e8 + GameTime_t m_flEmitSoundTime; // 0x13e4 // MNetworkEnable - int32_t m_iAddonBits; // 0x13ec + int32_t m_iAddonBits; // 0x13e8 // MNetworkEnable - int32_t m_iPrimaryAddon; // 0x13f0 + int32_t m_iPrimaryAddon; // 0x13ec // MNetworkEnable - int32_t m_iSecondaryAddon; // 0x13f4 + int32_t m_iSecondaryAddon; // 0x13f0 // MNetworkEnable - int32_t m_iProgressBarDuration; // 0x13f8 + int32_t m_iProgressBarDuration; // 0x13f4 // MNetworkEnable - float m_flProgressBarStartTime; // 0x13fc + float m_flProgressBarStartTime; // 0x13f8 // MNetworkEnable - int32_t m_iDirection; // 0x1400 + int32_t m_iDirection; // 0x13fc // MNetworkEnable - int32_t m_iShotsFired; // 0x1404 + int32_t m_iShotsFired; // 0x1400 // MNetworkEnable // MNetworkChangeCallback "OnNightVisionChanged" - bool m_bNightVisionOn; // 0x1408 + bool m_bNightVisionOn; // 0x1404 // MNetworkEnable - bool m_bHasNightVision; // 0x1409 + bool m_bHasNightVision; // 0x1405 private: - [[maybe_unused]] uint8_t __pad140a[0x2]; // 0x140a + [[maybe_unused]] uint8_t __pad1406[0x2]; // 0x1406 public: // MNetworkEnable - float m_flVelocityModifier; // 0x140c + float m_flVelocityModifier; // 0x1408 // MNetworkEnable - float m_flHitHeading; // 0x1410 + float m_flHitHeading; // 0x140c // MNetworkEnable - int32_t m_nHitBodyPart; // 0x1414 + int32_t m_nHitBodyPart; // 0x1410 // MNetworkEnable - int32_t m_iStartAccount; // 0x1418 - Vector m_vecIntroStartEyePosition; // 0x141c - Vector m_vecIntroStartPlayerForward; // 0x1428 - GameTime_t m_flClientDeathTime; // 0x1434 - float m_flNightVisionAlpha; // 0x1438 - bool m_bScreenTearFrameCaptured; // 0x143c + int32_t m_iStartAccount; // 0x1414 + Vector m_vecIntroStartEyePosition; // 0x1418 + Vector m_vecIntroStartPlayerForward; // 0x1424 + GameTime_t m_flClientDeathTime; // 0x1430 + float m_flNightVisionAlpha; // 0x1434 + bool m_bScreenTearFrameCaptured; // 0x1438 private: - [[maybe_unused]] uint8_t __pad143d[0x3]; // 0x143d + [[maybe_unused]] uint8_t __pad1439[0x3]; // 0x1439 public: - float m_flFlashBangTime; // 0x1440 - float m_flFlashScreenshotAlpha; // 0x1444 - float m_flFlashOverlayAlpha; // 0x1448 - bool m_bFlashBuildUp; // 0x144c - bool m_bFlashDspHasBeenCleared; // 0x144d - bool m_bFlashScreenshotHasBeenGrabbed; // 0x144e + float m_flFlashBangTime; // 0x143c + float m_flFlashScreenshotAlpha; // 0x1440 + float m_flFlashOverlayAlpha; // 0x1444 + bool m_bFlashBuildUp; // 0x1448 + bool m_bFlashDspHasBeenCleared; // 0x1449 + bool m_bFlashScreenshotHasBeenGrabbed; // 0x144a private: - [[maybe_unused]] uint8_t __pad144f[0x1]; // 0x144f + [[maybe_unused]] uint8_t __pad144b[0x1]; // 0x144b public: // MNetworkEnable // MNetworkChangeCallback "OnFlashMaxAlphaChanged" - float m_flFlashMaxAlpha; // 0x1450 + float m_flFlashMaxAlpha; // 0x144c // MNetworkEnable // MNetworkChangeCallback "OnFlashDurationChanged" - float m_flFlashDuration; // 0x1454 - Vector m_lastStandingPos; // 0x1458 - Vector m_vecLastMuzzleFlashPos; // 0x1464 - QAngle m_angLastMuzzleFlashAngle; // 0x1470 - CHandle< C_BaseEntity > m_hMuzzleFlashShape; // 0x147c - int32_t m_iHealthBarRenderMaskIndex; // 0x1480 - float m_flHealthFadeValue; // 0x1484 - float m_flHealthFadeAlpha; // 0x1488 - int32_t m_nMyCollisionGroup; // 0x148c - float m_ignoreLadderJumpTime; // 0x1490 + float m_flFlashDuration; // 0x1450 + Vector m_lastStandingPos; // 0x1454 + Vector m_vecLastMuzzleFlashPos; // 0x1460 + QAngle m_angLastMuzzleFlashAngle; // 0x146c + CHandle< C_BaseEntity > m_hMuzzleFlashShape; // 0x1478 + int32_t m_iHealthBarRenderMaskIndex; // 0x147c + float m_flHealthFadeValue; // 0x1480 + float m_flHealthFadeAlpha; // 0x1484 + int32_t m_nMyCollisionGroup; // 0x1488 + float m_ignoreLadderJumpTime; // 0x148c + CountdownTimer m_ladderSurpressionTimer; // 0x1490 + Vector m_lastLadderNormal; // 0x14a8 + Vector m_lastLadderPos; // 0x14b4 private: - [[maybe_unused]] uint8_t __pad1494[0x4]; // 0x1494 + [[maybe_unused]] uint8_t __pad14c0[0x8]; // 0x14c0 public: - CountdownTimer m_ladderSurpressionTimer; // 0x1498 - Vector m_lastLadderNormal; // 0x14b0 - Vector m_lastLadderPos; // 0x14bc + float m_flDeathCCWeight; // 0x14c8 + bool m_bOldIsScoped; // 0x14cc private: - [[maybe_unused]] uint8_t __pad14c8[0x8]; // 0x14c8 + [[maybe_unused]] uint8_t __pad14cd[0x3]; // 0x14cd public: - float m_flDeathCCWeight; // 0x14d0 - bool m_bOldIsScoped; // 0x14d4 + float m_flPrevRoundEndTime; // 0x14d0 + float m_flPrevMatchEndTime; // 0x14d4 + // MNetworkEnable + uint16_t m_unCurrentEquipmentValue; // 0x14d8 + // MNetworkEnable + uint16_t m_unRoundStartEquipmentValue; // 0x14da + // MNetworkEnable + uint16_t m_unFreezetimeEndEquipmentValue; // 0x14dc private: - [[maybe_unused]] uint8_t __pad14d5[0x3]; // 0x14d5 + [[maybe_unused]] uint8_t __pad14de[0x2]; // 0x14de public: - float m_flPrevRoundEndTime; // 0x14d8 - float m_flPrevMatchEndTime; // 0x14dc + Vector m_vecThirdPersonViewPositionOverride; // 0x14e0 // MNetworkEnable - uint16_t m_unCurrentEquipmentValue; // 0x14e0 + int32_t m_nHeavyAssaultSuitCooldownRemaining; // 0x14ec // MNetworkEnable - uint16_t m_unRoundStartEquipmentValue; // 0x14e2 - // MNetworkEnable - uint16_t m_unFreezetimeEndEquipmentValue; // 0x14e4 + int32_t m_ArmorValue; // 0x14f0 private: - [[maybe_unused]] uint8_t __pad14e6[0x2]; // 0x14e6 -public: - Vector m_vecThirdPersonViewPositionOverride; // 0x14e8 - // MNetworkEnable - int32_t m_nHeavyAssaultSuitCooldownRemaining; // 0x14f4 - // MNetworkEnable - int32_t m_ArmorValue; // 0x14f8 -private: - [[maybe_unused]] uint8_t __pad14fc[0x4]; // 0x14fc + [[maybe_unused]] uint8_t __pad14f4[0x4]; // 0x14f4 public: // MNetworkEnable // MNetworkEncoder // MNetworkChangeCallback "playerEyeAnglesChanged" // MNetworkPriority "32" - QAngle m_angEyeAngles; // 0x1500 + QAngle m_angEyeAngles; // 0x14f8 private: - [[maybe_unused]] uint8_t __pad150c[0xc]; // 0x150c + [[maybe_unused]] uint8_t __pad1504[0xc]; // 0x1504 public: - float m_fNextThinkPushAway; // 0x1518 - bool m_bShouldAutobuyDMWeapons; // 0x151c - bool m_bShouldAutobuyNow; // 0x151d + float m_fNextThinkPushAway; // 0x1510 + bool m_bShouldAutobuyDMWeapons; // 0x1514 + bool m_bShouldAutobuyNow; // 0x1515 // MNetworkEnable - bool m_bHud_MiniScoreHidden; // 0x151e + bool m_bHud_MiniScoreHidden; // 0x1516 // MNetworkEnable - bool m_bHud_RadarHidden; // 0x151f + bool m_bHud_RadarHidden; // 0x1517 // MNetworkEnable - CEntityIndex m_nLastKillerIndex; // 0x1520 + CEntityIndex m_nLastKillerIndex; // 0x1518 // MNetworkEnable - int32_t m_nLastConcurrentKilled; // 0x1524 + int32_t m_nLastConcurrentKilled; // 0x151c // MNetworkEnable - int32_t m_nDeathCamMusic; // 0x1528 - CEntityIndex m_iIDEntIndex; // 0x152c - CountdownTimer m_delayTargetIDTimer; // 0x1530 - CEntityIndex m_iTargetedWeaponEntIndex; // 0x1548 - CEntityIndex m_iOldIDEntIndex; // 0x154c - CountdownTimer m_holdTargetIDTimer; // 0x1550 + int32_t m_nDeathCamMusic; // 0x1520 + CEntityIndex m_iIDEntIndex; // 0x1524 + CountdownTimer m_delayTargetIDTimer; // 0x1528 + CEntityIndex m_iTargetedWeaponEntIndex; // 0x1540 + CEntityIndex m_iOldIDEntIndex; // 0x1544 + CountdownTimer m_holdTargetIDTimer; // 0x1548 private: - [[maybe_unused]] uint8_t __pad1568[0x4]; // 0x1568 + [[maybe_unused]] uint8_t __pad1560[0x4]; // 0x1560 public: - float m_flCurrentMusicStartTime; // 0x156c - float m_flMusicRoundStartTime; // 0x1570 - bool m_bDeferStartMusicOnWarmup; // 0x1574 + float m_flCurrentMusicStartTime; // 0x1564 + float m_flMusicRoundStartTime; // 0x1568 + bool m_bDeferStartMusicOnWarmup; // 0x156c private: - [[maybe_unused]] uint8_t __pad1575[0x3]; // 0x1575 + [[maybe_unused]] uint8_t __pad156d[0x3]; // 0x156d public: // MNetworkEnable - int32_t m_cycleLatch; // 0x1578 - float m_serverIntendedCycle; // 0x157c + int32_t m_cycleLatch; // 0x1570 + float m_serverIntendedCycle; // 0x1574 // MNetworkEnable // MNetworkChangeCallback "RecvProxy_PatchEconIndices" - uint32_t m_vecPlayerPatchEconIndices[5]; // 0x1580 + uint32_t m_vecPlayerPatchEconIndices[5]; // 0x1578 private: - [[maybe_unused]] uint8_t __pad1594[0x8]; // 0x1594 + [[maybe_unused]] uint8_t __pad158c[0x8]; // 0x158c public: // MNetworkEnable - bool m_bHideTargetID; // 0x159c + bool m_bHideTargetID; // 0x1594 private: - [[maybe_unused]] uint8_t __pad159d[0x3]; // 0x159d + [[maybe_unused]] uint8_t __pad1595[0x3]; // 0x1595 public: - float m_nextTaserShakeTime; // 0x15a0 - float m_firstTaserShakeTime; // 0x15a4 - float m_flLastSmokeOverlayAlpha; // 0x15a8 - Vector m_vLastSmokeOverlayColor; // 0x15ac - ParticleIndex_t m_nPlayerSmokedFx; // 0x15b8 - float m_flNextMagDropTime; // 0x15bc - int32_t m_nLastMagDropAttachmentIndex; // 0x15c0 + float m_nextTaserShakeTime; // 0x1598 + float m_firstTaserShakeTime; // 0x159c + float m_flLastSmokeOverlayAlpha; // 0x15a0 + Vector m_vLastSmokeOverlayColor; // 0x15a4 + ParticleIndex_t m_nPlayerSmokedFx; // 0x15b0 + float m_flNextMagDropTime; // 0x15b4 + int32_t m_nLastMagDropAttachmentIndex; // 0x15b8 private: - [[maybe_unused]] uint8_t __pad15c4[0x4]; // 0x15c4 + [[maybe_unused]] uint8_t __pad15bc[0x4]; // 0x15bc public: - CUtlVector< C_BulletHitModel* > m_vecBulletHitModels; // 0x15c8 - CUtlVector< C_PickUpModelSlerper* > m_vecPickupModelSlerpers; // 0x15e0 - Vector m_vecLastAliveLocalVelocity; // 0x15f8 + CUtlVector< C_BulletHitModel* > m_vecBulletHitModels; // 0x15c0 + CUtlVector< C_PickUpModelSlerper* > m_vecPickupModelSlerpers; // 0x15d8 + Vector m_vecLastAliveLocalVelocity; // 0x15f0 private: - [[maybe_unused]] uint8_t __pad1604[0x1c]; // 0x1604 + [[maybe_unused]] uint8_t __pad15fc[0x1c]; // 0x15fc public: // MNetworkEnable - EntitySpottedState_t m_entitySpottedState; // 0x1620 + EntitySpottedState_t m_entitySpottedState; // 0x1618 // MNetworkEnable - int32_t m_nSurvivalTeamNumber; // 0x1638 - bool m_bGuardianShouldSprayCustomXMark; // 0x163c - bool m_bHasDeathInfo; // 0x163d + int32_t m_nSurvivalTeamNumber; // 0x1630 + bool m_bGuardianShouldSprayCustomXMark; // 0x1634 + bool m_bHasDeathInfo; // 0x1635 private: - [[maybe_unused]] uint8_t __pad163e[0x2]; // 0x163e + [[maybe_unused]] uint8_t __pad1636[0x2]; // 0x1636 public: - float m_flDeathInfoTime; // 0x1640 - Vector m_vecDeathInfoOrigin; // 0x1644 + float m_flDeathInfoTime; // 0x1638 + Vector m_vecDeathInfoOrigin; // 0x163c // MNetworkEnable - bool m_bKilledByHeadshot; // 0x1650 + bool m_bKilledByHeadshot; // 0x1648 private: - [[maybe_unused]] uint8_t __pad1651[0x3]; // 0x1651 + [[maybe_unused]] uint8_t __pad1649[0x3]; // 0x1649 public: // MNetworkEnable - CHandle< CCSPlayerController > m_hOriginalController; // 0x1654 + CHandle< CCSPlayerController > m_hOriginalController; // 0x164c }; // Alignment: 1 -// Size: 0x16a8 +// Size: 0x16a0 class C_CSObserverPawn : public C_CSPlayerPawnBase { public: - CEntityHandle m_hDetectParentChange; // 0x16a0 + CEntityHandle m_hDetectParentChange; // 0x1698 }; -// Alignment: 49 -// Size: 0x22a8 +// Alignment: 50 +// Size: 0x22c0 class C_CSPlayerPawn : public C_CSPlayerPawnBase { public: // MNetworkEnable - CCSPlayer_BulletServices* m_pBulletServices; // 0x16a0 + CCSPlayer_BulletServices* m_pBulletServices; // 0x1698 // MNetworkEnable - CCSPlayer_HostageServices* m_pHostageServices; // 0x16a8 + CCSPlayer_HostageServices* m_pHostageServices; // 0x16a0 // MNetworkEnable - CCSPlayer_BuyServices* m_pBuyServices; // 0x16b0 + CCSPlayer_BuyServices* m_pBuyServices; // 0x16a8 // MNetworkEnable - CCSPlayer_GlowServices* m_pGlowServices; // 0x16b8 + CCSPlayer_GlowServices* m_pGlowServices; // 0x16b0 // MNetworkEnable - CCSPlayer_ActionTrackingServices* m_pActionTrackingServices; // 0x16c0 + CCSPlayer_ActionTrackingServices* m_pActionTrackingServices; // 0x16b8 // MNetworkEnable - GameTime_t m_flHealthShotBoostExpirationTime; // 0x16c8 - GameTime_t m_flLastFiredWeaponTime; // 0x16cc + GameTime_t m_flHealthShotBoostExpirationTime; // 0x16c0 + GameTime_t m_flLastFiredWeaponTime; // 0x16c4 // MNetworkEnable - bool m_bHasFemaleVoice; // 0x16d0 + bool m_bHasFemaleVoice; // 0x16c8 private: - [[maybe_unused]] uint8_t __pad16d1[0x3]; // 0x16d1 + [[maybe_unused]] uint8_t __pad16c9[0x3]; // 0x16c9 public: - float m_flLandseconds; // 0x16d4 - float m_flOldFallVelocity; // 0x16d8 + float m_flLandseconds; // 0x16cc + float m_flOldFallVelocity; // 0x16d0 // MNetworkEnable - char m_szLastPlaceName[18]; // 0x16dc - bool m_bPrevDefuser; // 0x16ee - bool m_bPrevHelmet; // 0x16ef - int32_t m_nPrevArmorVal; // 0x16f0 - int32_t m_nPrevGrenadeAmmoCount; // 0x16f4 - uint32_t m_unPreviousWeaponHash; // 0x16f8 - uint32_t m_unWeaponHash; // 0x16fc + char m_szLastPlaceName[18]; // 0x16d4 + bool m_bPrevDefuser; // 0x16e6 + bool m_bPrevHelmet; // 0x16e7 + int32_t m_nPrevArmorVal; // 0x16e8 + int32_t m_nPrevGrenadeAmmoCount; // 0x16ec + uint32_t m_unPreviousWeaponHash; // 0x16f0 + uint32_t m_unWeaponHash; // 0x16f4 // MNetworkEnable - bool m_bInBuyZone; // 0x1700 - bool m_bPreviouslyInBuyZone; // 0x1701 + bool m_bInBuyZone; // 0x16f8 + bool m_bPreviouslyInBuyZone; // 0x16f9 private: - [[maybe_unused]] uint8_t __pad1702[0x2]; // 0x1702 + [[maybe_unused]] uint8_t __pad16fa[0x2]; // 0x16fa public: // MNetworkEnable // MNetworkBitCount "32" - QAngle m_aimPunchAngle; // 0x1704 + QAngle m_aimPunchAngle; // 0x16fc // MNetworkEnable // MNetworkBitCount "32" - QAngle m_aimPunchAngleVel; // 0x1710 + QAngle m_aimPunchAngleVel; // 0x1708 // MNetworkEnable - int32_t m_aimPunchTickBase; // 0x171c + int32_t m_aimPunchTickBase; // 0x1714 // MNetworkEnable - float m_aimPunchTickFraction; // 0x1720 + float m_aimPunchTickFraction; // 0x1718 private: - [[maybe_unused]] uint8_t __pad1724[0x4]; // 0x1724 + [[maybe_unused]] uint8_t __pad171c[0x4]; // 0x171c public: - CUtlVector< QAngle > m_aimPunchCache; // 0x1728 + CUtlVector< QAngle > m_aimPunchCache; // 0x1720 private: - [[maybe_unused]] uint8_t __pad1740[0x8]; // 0x1740 + [[maybe_unused]] uint8_t __pad1738[0x8]; // 0x1738 public: - bool m_bInLanding; // 0x1748 + bool m_bInLanding; // 0x1740 private: - [[maybe_unused]] uint8_t __pad1749[0x3]; // 0x1749 + [[maybe_unused]] uint8_t __pad1741[0x3]; // 0x1741 public: - float m_flLandingTime; // 0x174c + float m_flLandingTime; // 0x1744 // MNetworkEnable - bool m_bInHostageRescueZone; // 0x1750 + bool m_bInHostageRescueZone; // 0x1748 // MNetworkEnable - bool m_bInBombZone; // 0x1751 + bool m_bInBombZone; // 0x1749 // MNetworkEnable - bool m_bIsBuyMenuOpen; // 0x1752 + bool m_bIsBuyMenuOpen; // 0x174a private: - [[maybe_unused]] uint8_t __pad1753[0x1]; // 0x1753 + [[maybe_unused]] uint8_t __pad174b[0x1]; // 0x174b public: // MNetworkEnable - GameTime_t m_flTimeOfLastInjury; // 0x1754 + GameTime_t m_flTimeOfLastInjury; // 0x174c // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - GameTime_t m_flNextSprayDecalTime; // 0x1758 + GameTime_t m_flNextSprayDecalTime; // 0x1750 private: - [[maybe_unused]] uint8_t __pad175c[0x114]; // 0x175c + [[maybe_unused]] uint8_t __pad1754[0x114]; // 0x1754 public: // MNetworkEnable // MNetworkChangeCallback "OnRetakesOfferingChanged" - int32_t m_iRetakesOffering; // 0x1870 + int32_t m_iRetakesOffering; // 0x1868 // MNetworkEnable // MNetworkChangeCallback "OnRetakesOfferingCardChanged" - int32_t m_iRetakesOfferingCard; // 0x1874 + int32_t m_iRetakesOfferingCard; // 0x186c // MNetworkEnable - bool m_bRetakesHasDefuseKit; // 0x1878 + bool m_bRetakesHasDefuseKit; // 0x1870 // MNetworkEnable - bool m_bRetakesMVPLastRound; // 0x1879 + bool m_bRetakesMVPLastRound; // 0x1871 private: - [[maybe_unused]] uint8_t __pad187a[0x2]; // 0x187a + [[maybe_unused]] uint8_t __pad1872[0x2]; // 0x1872 public: // MNetworkEnable - int32_t m_iRetakesMVPBoostItem; // 0x187c + int32_t m_iRetakesMVPBoostItem; // 0x1874 // MNetworkEnable - loadout_slot_t m_RetakesMVPBoostExtraUtility; // 0x1880 + loadout_slot_t m_RetakesMVPBoostExtraUtility; // 0x1878 private: - [[maybe_unused]] uint8_t __pad1884[0x1c]; // 0x1884 + [[maybe_unused]] uint8_t __pad187c[0x1c]; // 0x187c public: - bool m_bNeedToReApplyGloves; // 0x18a0 + bool m_bNeedToReApplyGloves; // 0x1898 private: - [[maybe_unused]] uint8_t __pad18a1[0x7]; // 0x18a1 + [[maybe_unused]] uint8_t __pad1899[0x7]; // 0x1899 public: // MNetworkEnable - C_EconItemView m_EconGloves; // 0x18a8 - bool m_bMustSyncRagdollState; // 0x1cf0 + C_EconItemView m_EconGloves; // 0x18a0 + bool m_bMustSyncRagdollState; // 0x1ce8 private: - [[maybe_unused]] uint8_t __pad1cf1[0x3]; // 0x1cf1 + [[maybe_unused]] uint8_t __pad1ce9[0x3]; // 0x1ce9 public: // MNetworkEnable - int32_t m_nRagdollDamageBone; // 0x1cf4 + int32_t m_nRagdollDamageBone; // 0x1cec // MNetworkEnable - Vector m_vRagdollDamageForce; // 0x1cf8 + Vector m_vRagdollDamageForce; // 0x1cf0 // MNetworkEnable - Vector m_vRagdollDamagePosition; // 0x1d04 + Vector m_vRagdollDamagePosition; // 0x1cfc // MNetworkEnable - char m_szRagdollDamageWeaponName[64]; // 0x1d10 + char m_szRagdollDamageWeaponName[64]; // 0x1d08 // MNetworkEnable - bool m_bRagdollDamageHeadshot; // 0x1d50 + bool m_bRagdollDamageHeadshot; // 0x1d48 private: - [[maybe_unused]] uint8_t __pad1d51[0x527]; // 0x1d51 + [[maybe_unused]] uint8_t __pad1d49[0x53f]; // 0x1d49 public: - bool m_bLastHeadBoneTransformIsValid; // 0x2278 + bool m_bLastHeadBoneTransformIsValid; // 0x2288 private: - [[maybe_unused]] uint8_t __pad2279[0x3]; // 0x2279 + [[maybe_unused]] uint8_t __pad2289[0x3]; // 0x2289 public: - GameTime_t m_lastLandTime; // 0x227c + GameTime_t m_lastLandTime; // 0x228c + bool m_bOnGroundLastTick; // 0x2290 private: - [[maybe_unused]] uint8_t __pad2280[0x18]; // 0x2280 + [[maybe_unused]] uint8_t __pad2291[0x1b]; // 0x2291 public: // MNetworkEnable - QAngle m_qDeathEyeAngles; // 0x2298 - bool m_bSkipOneHeadConstraintUpdate; // 0x22a4 + QAngle m_qDeathEyeAngles; // 0x22ac + bool m_bSkipOneHeadConstraintUpdate; // 0x22b8 }; // Alignment: 23 @@ -10199,17 +10232,17 @@ public: }; // Alignment: 3 -// Size: 0x2340 +// Size: 0x2358 class C_CSGO_PreviewPlayer : public C_CSPlayerPawn { public: - CUtlString m_animgraph; // 0x22a8 - CUtlString m_animgraphCharacterModeString; // 0x22b0 - float m_flInitialModelScale; // 0x22b8 + CUtlString m_animgraph; // 0x22c0 + CUtlString m_animgraphCharacterModeString; // 0x22c8 + float m_flInitialModelScale; // 0x22d0 }; // Alignment: 0 -// Size: 0x2340 +// Size: 0x2358 class C_CSGO_PreviewPlayerAlias_csgo_player_previewmodel : public C_CSGO_PreviewPlayer { public: @@ -10217,7 +10250,7 @@ public: }; // Alignment: 0 -// Size: 0x2340 +// Size: 0x2358 class C_CSGO_TeamPreviewModel : public C_CSGO_PreviewPlayer { public: diff --git a/sdk/server.hpp b/sdk/server.hpp index 7c28f999..f6140f2c 100644 --- a/sdk/server.hpp +++ b/sdk/server.hpp @@ -4,7 +4,7 @@ // ///////////////////////////////////////////////////////////// // Binary: server.dll -// Classes count: 748 +// Classes count: 749 // Enums count: 121 // Created using source2gen - github.com/neverlosecc/source2gen // ///////////////////////////////////////////////////////////// @@ -5953,8 +5953,8 @@ public: int16_t m_nDMBonusWeaponLoadoutSlot; // 0x3c }; -// Alignment: 194 -// Size: 0x56d8 +// Alignment: 195 +// Size: 0x1828 class CCSGameRules : public CTeamplayRules { private: @@ -6083,8 +6083,10 @@ public: bool m_bIsDroppingItems; // 0x94c // MNetworkEnable bool m_bIsQuestEligible; // 0x94d + // MNetworkEnable + bool m_bIsHltvActive; // 0x94e private: - [[maybe_unused]] uint8_t __pad094e[0x2]; // 0x94e + [[maybe_unused]] uint8_t __pad094f[0x1]; // 0x94f public: // MNetworkEnable int32_t m_nGuardianModeWaveNumber; // 0x950 @@ -6381,10 +6383,10 @@ public: GameTime_t m_fTeamIntroPeriodEnd; // 0x17f0 bool m_bPlayedTeamIntroVO; // 0x17f4 private: - [[maybe_unused]] uint8_t __pad17f5[0xfbb]; // 0x17f5 + [[maybe_unused]] uint8_t __pad17f5[0x400b]; // 0x17f5 public: - double m_flLastPerfSampleTime; // 0x27b0 - bool m_bSkipNextServerPerfSample; // 0x27b8 + double m_flLastPerfSampleTime; // 0x5800 + bool m_bSkipNextServerPerfSample; // 0x5808 // Static fields: static int64_t &Get_m_nMapCycleTimeStamp(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CCSGameRules")->m_static_fields[0]->m_instance);}; @@ -6473,8 +6475,8 @@ public: int32_t m_iEntryWins; // 0xb0 }; -// Alignment: 6 -// Size: 0x748 +// Alignment: 8 +// Size: 0xc38 class CCSGO_TeamPreviewCharacterPosition : public CBaseEntity { public: @@ -6492,11 +6494,15 @@ public: // MNetworkEnable uint64_t m_xuid; // 0x4c8 // MNetworkEnable - CEconItemView m_weaponItem; // 0x4d0 + CEconItemView m_agentItem; // 0x4d0 + // MNetworkEnable + CEconItemView m_glovesItem; // 0x748 + // MNetworkEnable + CEconItemView m_weaponItem; // 0x9c0 }; // Alignment: 0 -// Size: 0x748 +// Size: 0xc38 class CCSGO_TeamSelectCharacterPosition : public CCSGO_TeamPreviewCharacterPosition { public: @@ -6504,7 +6510,7 @@ public: }; // Alignment: 0 -// Size: 0x748 +// Size: 0xc38 class CCSGO_TeamSelectTerroristPosition : public CCSGO_TeamSelectCharacterPosition { public: @@ -6512,7 +6518,7 @@ public: }; // Alignment: 0 -// Size: 0x748 +// Size: 0xc38 class CCSGO_TeamSelectCounterTerroristPosition : public CCSGO_TeamSelectCharacterPosition { public: @@ -6520,7 +6526,7 @@ public: }; // Alignment: 0 -// Size: 0x748 +// Size: 0xc38 class CCSGO_TeamIntroCharacterPosition : public CCSGO_TeamPreviewCharacterPosition { public: @@ -6528,7 +6534,7 @@ public: }; // Alignment: 0 -// Size: 0x748 +// Size: 0xc38 class CCSGO_TeamIntroTerroristPosition : public CCSGO_TeamIntroCharacterPosition { public: @@ -6536,7 +6542,7 @@ public: }; // Alignment: 0 -// Size: 0x748 +// Size: 0xc38 class CCSGO_TeamIntroCounterTerroristPosition : public CCSGO_TeamIntroCharacterPosition { public: @@ -6544,7 +6550,7 @@ public: }; // Alignment: 0 -// Size: 0x748 +// Size: 0xc38 class CCSGO_WingmanIntroCharacterPosition : public CCSGO_TeamIntroCharacterPosition { public: @@ -6552,7 +6558,7 @@ public: }; // Alignment: 0 -// Size: 0x748 +// Size: 0xc38 class CCSGO_WingmanIntroTerroristPosition : public CCSGO_WingmanIntroCharacterPosition { public: @@ -6560,7 +6566,7 @@ public: }; // Alignment: 0 -// Size: 0x748 +// Size: 0xc38 class CCSGO_WingmanIntroCounterTerroristPosition : public CCSGO_WingmanIntroCharacterPosition { public: @@ -6576,11 +6582,11 @@ public: }; // Alignment: 0 -// Size: 0x520 +// Size: 0x538 class CCSGOPlayerAnimGraphState { private: - [[maybe_unused]] uint8_t __pad0000[0x520]; // 0x0 + [[maybe_unused]] uint8_t __pad0000[0x538]; // 0x0 public: // No members available }; @@ -7010,8 +7016,8 @@ public: int32_t m_iTeamDamage; // 0x40 }; -// Alignment: 4 -// Size: 0x208 +// Alignment: 5 +// Size: 0x210 class CCSPlayerController_ActionTrackingServices : public CPlayerControllerComponent { public: @@ -7023,6 +7029,8 @@ public: int32_t m_iNumRoundKills; // 0x148 // MNetworkEnable int32_t m_iNumRoundKillsHeadshots; // 0x14c + // MNetworkEnable + uint32_t m_unTotalRoundDamageDealt; // 0x150 }; // Alignment: 14 @@ -7099,8 +7107,20 @@ public: int32_t m_iCashSpentThisRound; // 0x54 }; -// Alignment: 9 -// Size: 0xff0 +// Alignment: 3 +// Size: 0x30 +struct ServerAuthoritativeWeaponSlot_t +{ +private: + [[maybe_unused]] uint8_t __pad0000[0x28]; // 0x0 +public: + uint16_t unClass; // 0x28 + uint16_t unSlot; // 0x2a + uint16_t unItemDefIdx; // 0x2c +}; + +// Alignment: 8 +// Size: 0xfa0 class CCSPlayerController_InventoryServices : public CPlayerControllerComponent { public: @@ -7127,9 +7147,8 @@ private: [[maybe_unused]] uint8_t __pad0f4c[0x4]; // 0xf4c public: // MNetworkEnable - CUtlVectorEmbeddedNetworkVar< CEconItemView > m_vecTerroristLoadoutCache; // 0xf50 - // MNetworkEnable - CUtlVectorEmbeddedNetworkVar< CEconItemView > m_vecCounterTerroristLoadoutCache; // 0xfa0 + // MNetworkUserGroup "LocalPlayerExclusive" + CUtlVectorEmbeddedNetworkVar< ServerAuthoritativeWeaponSlot_t > m_vecServerAuthoritativeWeaponSlots; // 0xf50 }; // Alignment: 1 @@ -12608,7 +12627,7 @@ public: }; // Alignment: 76 -// Size: -0x6f0 +// Size: -0x730 class CCSPlayerController : public CBasePlayerController { private: @@ -12687,102 +12706,111 @@ public: // MNetworkEnable int32_t m_nEndMatchNextMapVote; // 0x748 // MNetworkEnable + // MNetworkUserGroup "LocalPlayerExclusive" uint16_t m_unActiveQuestId; // 0x74c private: [[maybe_unused]] uint8_t __pad074e[0x2]; // 0x74e public: // MNetworkEnable + // MNetworkUserGroup "LocalPlayerExclusive" QuestProgress::Reason m_nQuestProgressReason; // 0x750 // MNetworkEnable + // MNetworkUserGroup "LocalPlayerExclusive" uint32_t m_unPlayerTvControlFlags; // 0x754 private: - [[maybe_unused]] uint8_t __pad0758[0x68]; // 0x758 + [[maybe_unused]] uint8_t __pad0758[0x28]; // 0x758 public: - int32_t m_iDraftIndex; // 0x7c0 - uint32_t m_msQueuedModeDisconnectionTimestamp; // 0x7c4 - uint32_t m_uiAbandonRecordedReason; // 0x7c8 - bool m_bEverFullyConnected; // 0x7cc - bool m_bAbandonAllowsSurrender; // 0x7cd - bool m_bAbandonOffersInstantSurrender; // 0x7ce - bool m_bDisconnection1MinWarningPrinted; // 0x7cf - bool m_bScoreReported; // 0x7d0 + int32_t m_iDraftIndex; // 0x780 + uint32_t m_msQueuedModeDisconnectionTimestamp; // 0x784 + uint32_t m_uiAbandonRecordedReason; // 0x788 + bool m_bEverFullyConnected; // 0x78c + bool m_bAbandonAllowsSurrender; // 0x78d + bool m_bAbandonOffersInstantSurrender; // 0x78e + bool m_bDisconnection1MinWarningPrinted; // 0x78f + bool m_bScoreReported; // 0x790 private: - [[maybe_unused]] uint8_t __pad07d1[0x3]; // 0x7d1 + [[maybe_unused]] uint8_t __pad0791[0x3]; // 0x791 public: // MNetworkEnable - int32_t m_nDisconnectionTick; // 0x7d4 + // MNetworkUserGroup "LocalPlayerExclusive" + int32_t m_nDisconnectionTick; // 0x794 private: - [[maybe_unused]] uint8_t __pad07d8[0x8]; // 0x7d8 + [[maybe_unused]] uint8_t __pad0798[0x8]; // 0x798 public: // MNetworkEnable - bool m_bControllingBot; // 0x7e0 + bool m_bControllingBot; // 0x7a0 // MNetworkEnable - bool m_bHasControlledBotThisRound; // 0x7e1 - bool m_bHasBeenControlledByPlayerThisRound; // 0x7e2 + bool m_bHasControlledBotThisRound; // 0x7a1 + bool m_bHasBeenControlledByPlayerThisRound; // 0x7a2 private: - [[maybe_unused]] uint8_t __pad07e3[0x1]; // 0x7e3 + [[maybe_unused]] uint8_t __pad07a3[0x1]; // 0x7a3 public: - int32_t m_nBotsControlledThisRound; // 0x7e4 + int32_t m_nBotsControlledThisRound; // 0x7a4 // MNetworkEnable - bool m_bCanControlObservedBot; // 0x7e8 + // MNetworkUserGroup "LocalPlayerExclusive" + bool m_bCanControlObservedBot; // 0x7a8 private: - [[maybe_unused]] uint8_t __pad07e9[0x3]; // 0x7e9 + [[maybe_unused]] uint8_t __pad07a9[0x3]; // 0x7a9 public: // MNetworkEnable - CHandle< CCSPlayerPawn > m_hPlayerPawn; // 0x7ec + CHandle< CCSPlayerPawn > m_hPlayerPawn; // 0x7ac // MNetworkEnable - CHandle< CCSObserverPawn > m_hObserverPawn; // 0x7f0 - int32_t m_DesiredObserverMode; // 0x7f4 - CEntityHandle m_hDesiredObserverTarget; // 0x7f8 + CHandle< CCSObserverPawn > m_hObserverPawn; // 0x7b0 + int32_t m_DesiredObserverMode; // 0x7b4 + CEntityHandle m_hDesiredObserverTarget; // 0x7b8 // MNetworkEnable - bool m_bPawnIsAlive; // 0x7fc + bool m_bPawnIsAlive; // 0x7bc private: - [[maybe_unused]] uint8_t __pad07fd[0x3]; // 0x7fd + [[maybe_unused]] uint8_t __pad07bd[0x3]; // 0x7bd public: // MNetworkEnable - uint32_t m_iPawnHealth; // 0x800 + // MNetworkUserGroup "TeammateAndSpectatorExclusive" + uint32_t m_iPawnHealth; // 0x7c0 // MNetworkEnable - int32_t m_iPawnArmor; // 0x804 + // MNetworkUserGroup "TeammateAndSpectatorExclusive" + int32_t m_iPawnArmor; // 0x7c4 // MNetworkEnable - bool m_bPawnHasDefuser; // 0x808 + // MNetworkUserGroup "TeammateAndSpectatorExclusive" + bool m_bPawnHasDefuser; // 0x7c8 // MNetworkEnable - bool m_bPawnHasHelmet; // 0x809 + // MNetworkUserGroup "TeammateAndSpectatorExclusive" + bool m_bPawnHasHelmet; // 0x7c9 // MNetworkEnable - uint16_t m_nPawnCharacterDefIndex; // 0x80a + uint16_t m_nPawnCharacterDefIndex; // 0x7ca // MNetworkEnable - int32_t m_iPawnLifetimeStart; // 0x80c + int32_t m_iPawnLifetimeStart; // 0x7cc // MNetworkEnable - int32_t m_iPawnLifetimeEnd; // 0x810 + int32_t m_iPawnLifetimeEnd; // 0x7d0 // MNetworkEnable - int32_t m_iPawnBotDifficulty; // 0x814 + int32_t m_iPawnBotDifficulty; // 0x7d4 // MNetworkEnable - CHandle< CCSPlayerController > m_hOriginalControllerOfCurrentPawn; // 0x818 + CHandle< CCSPlayerController > m_hOriginalControllerOfCurrentPawn; // 0x7d8 // MNetworkEnable - int32_t m_iScore; // 0x81c - int32_t m_iRoundScore; // 0x820 - int32_t m_iRoundsWon; // 0x824 + int32_t m_iScore; // 0x7dc + int32_t m_iRoundScore; // 0x7e0 + int32_t m_iRoundsWon; // 0x7e4 // MNetworkEnable - CNetworkUtlVectorBase< EKillTypes_t > m_vecKills; // 0x828 + CNetworkUtlVectorBase< EKillTypes_t > m_vecKills; // 0x7e8 // MNetworkEnable - int32_t m_iMVPs; // 0x840 - int32_t m_nUpdateCounter; // 0x844 + int32_t m_iMVPs; // 0x800 + int32_t m_nUpdateCounter; // 0x804 private: - [[maybe_unused]] uint8_t __pad0848[0xf0a0]; // 0x848 + [[maybe_unused]] uint8_t __pad0808[0xf0a0]; // 0x808 public: - IntervalTimer m_lastHeldVoteTimer; // 0xf8e8 + IntervalTimer m_lastHeldVoteTimer; // 0xf8a8 private: - [[maybe_unused]] uint8_t __padf8f8[0x8]; // 0xf8f8 + [[maybe_unused]] uint8_t __padf8b8[0x8]; // 0xf8b8 public: - bool m_bShowHints; // 0xf900 + bool m_bShowHints; // 0xf8c0 private: - [[maybe_unused]] uint8_t __padf901[0x3]; // 0xf901 + [[maybe_unused]] uint8_t __padf8c1[0x3]; // 0xf8c1 public: - int32_t m_iNextTimeCheck; // 0xf904 - bool m_bJustDidTeamKill; // 0xf908 - bool m_bPunishForTeamKill; // 0xf909 - bool m_bGaveTeamDamageWarning; // 0xf90a - bool m_bGaveTeamDamageWarningThisRound; // 0xf90b - GameTime_t m_LastTeamDamageWarningTime; // 0xf90c + int32_t m_iNextTimeCheck; // 0xf8c4 + bool m_bJustDidTeamKill; // 0xf8c8 + bool m_bPunishForTeamKill; // 0xf8c9 + bool m_bGaveTeamDamageWarning; // 0xf8ca + bool m_bGaveTeamDamageWarningThisRound; // 0xf8cb + GameTime_t m_LastTeamDamageWarningTime; // 0xf8cc }; // Alignment: 2 @@ -13038,7 +13066,7 @@ public: static CUtlVector< CPlayerSprayDecal* > &Get_s_arrFEPlayerDecals(){return *reinterpret_cast*>(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CPlayerSprayDecal")->m_static_fields[0]->m_instance);}; }; -// Alignment: 28 +// Alignment: 24 // Size: 0x1380 class CInferno : public CBaseModelEntity { @@ -13046,17 +13074,9 @@ private: [[maybe_unused]] uint8_t __pad0700[0x10]; // 0x700 public: // MNetworkEnable - int32_t m_fireXDelta[64]; // 0x710 + Vector m_firePositions[64]; // 0x710 // MNetworkEnable - int32_t m_fireYDelta[64]; // 0x810 - // MNetworkEnable - int32_t m_fireZDelta[64]; // 0x910 - // MNetworkEnable - int32_t m_fireParentXDelta[64]; // 0xa10 - // MNetworkEnable - int32_t m_fireParentYDelta[64]; // 0xb10 - // MNetworkEnable - int32_t m_fireParentZDelta[64]; // 0xc10 + Vector m_fireParentPositions[64]; // 0xa10 // MNetworkEnable bool m_bFireIsBurning[64]; // 0xd10 // MNetworkEnable @@ -15824,7 +15844,7 @@ public: }; // Alignment: 54 -// Size: 0xdd8 +// Size: 0xde0 class CCSWeaponBase : public CBasePlayerWeapon { private: @@ -15919,100 +15939,100 @@ public: int32_t m_iOriginalTeamNumber; // 0xd58 float m_flNextAttackRenderTimeOffset; // 0xd5c private: - [[maybe_unused]] uint8_t __pad0d60[0x8]; // 0xd60 + [[maybe_unused]] uint8_t __pad0d60[0x10]; // 0xd60 public: - bool m_bCanBePickedUp; // 0xd68 - bool m_bUseCanOverrideNextOwnerTouchTime; // 0xd69 + bool m_bCanBePickedUp; // 0xd70 + bool m_bUseCanOverrideNextOwnerTouchTime; // 0xd71 private: - [[maybe_unused]] uint8_t __pad0d6a[0x2]; // 0xd6a + [[maybe_unused]] uint8_t __pad0d72[0x2]; // 0xd72 public: - GameTime_t m_nextOwnerTouchTime; // 0xd6c - GameTime_t m_nextPrevOwnerTouchTime; // 0xd70 + GameTime_t m_nextOwnerTouchTime; // 0xd74 + GameTime_t m_nextPrevOwnerTouchTime; // 0xd78 // MNetworkEnable - CHandle< CCSPlayerPawn > m_hPrevOwner; // 0xd74 + CHandle< CCSPlayerPawn > m_hPrevOwner; // 0xd7c // MNetworkEnable - GameTick_t m_nDropTick; // 0xd78 + GameTick_t m_nDropTick; // 0xd80 private: - [[maybe_unused]] uint8_t __pad0d7c[0x20]; // 0xd7c + [[maybe_unused]] uint8_t __pad0d84[0x20]; // 0xd84 public: - bool m_donated; // 0xd9c + bool m_donated; // 0xda4 private: - [[maybe_unused]] uint8_t __pad0d9d[0x3]; // 0xd9d + [[maybe_unused]] uint8_t __pad0da5[0x3]; // 0xda5 public: // MNetworkEnable - GameTime_t m_fLastShotTime; // 0xda0 - bool m_bWasOwnedByCT; // 0xda4 - bool m_bWasOwnedByTerrorist; // 0xda5 - bool m_bFiredOutOfAmmoEvent; // 0xda6 + GameTime_t m_fLastShotTime; // 0xda8 + bool m_bWasOwnedByCT; // 0xdac + bool m_bWasOwnedByTerrorist; // 0xdad + bool m_bFiredOutOfAmmoEvent; // 0xdae private: - [[maybe_unused]] uint8_t __pad0da7[0x1]; // 0xda7 + [[maybe_unused]] uint8_t __pad0daf[0x1]; // 0xdaf public: - int32_t m_numRemoveUnownedWeaponThink; // 0xda8 + int32_t m_numRemoveUnownedWeaponThink; // 0xdb0 private: - [[maybe_unused]] uint8_t __pad0dac[0x4]; // 0xdac + [[maybe_unused]] uint8_t __pad0db4[0x4]; // 0xdb4 public: - CIronSightController m_IronSightController; // 0xdb0 + CIronSightController m_IronSightController; // 0xdb8 // MNetworkEnable - int32_t m_iIronSightMode; // 0xdc8 - GameTime_t m_flLastLOSTraceFailureTime; // 0xdcc + int32_t m_iIronSightMode; // 0xdd0 + GameTime_t m_flLastLOSTraceFailureTime; // 0xdd4 // MNetworkEnable - int32_t m_iNumEmptyAttacks; // 0xdd0 + int32_t m_iNumEmptyAttacks; // 0xdd8 }; // Alignment: 9 -// Size: 0xdf8 +// Size: 0xe00 class CCSWeaponBaseGun : public CCSWeaponBase { public: // MNetworkEnable - int32_t m_zoomLevel; // 0xdd8 + int32_t m_zoomLevel; // 0xde0 // MNetworkEnable - int32_t m_iBurstShotsRemaining; // 0xddc + int32_t m_iBurstShotsRemaining; // 0xde4 private: - [[maybe_unused]] uint8_t __pad0de0[0x8]; // 0xde0 + [[maybe_unused]] uint8_t __pad0de8[0x8]; // 0xde8 public: - int32_t m_silencedModelIndex; // 0xde8 - bool m_inPrecache; // 0xdec + int32_t m_silencedModelIndex; // 0xdf0 + bool m_inPrecache; // 0xdf4 // MNetworkEnable - bool m_bNeedsBoltAction; // 0xded - bool m_bSkillReloadAvailable; // 0xdee - bool m_bSkillReloadLiftedReloadKey; // 0xdef - bool m_bSkillBoltInterruptAvailable; // 0xdf0 - bool m_bSkillBoltLiftedFireKey; // 0xdf1 + bool m_bNeedsBoltAction; // 0xdf5 + bool m_bSkillReloadAvailable; // 0xdf6 + bool m_bSkillReloadLiftedReloadKey; // 0xdf7 + bool m_bSkillBoltInterruptAvailable; // 0xdf8 + bool m_bSkillBoltLiftedFireKey; // 0xdf9 }; // Alignment: 12 -// Size: 0xe28 +// Size: 0xe30 class CC4 : public CCSWeaponBase { public: - Vector m_vecLastValidPlayerHeldPosition; // 0xdd8 - Vector m_vecLastValidDroppedPosition; // 0xde4 - bool m_bDoValidDroppedPositionCheck; // 0xdf0 + Vector m_vecLastValidPlayerHeldPosition; // 0xde0 + Vector m_vecLastValidDroppedPosition; // 0xdec + bool m_bDoValidDroppedPositionCheck; // 0xdf8 // MNetworkEnable - bool m_bStartedArming; // 0xdf1 + bool m_bStartedArming; // 0xdf9 private: - [[maybe_unused]] uint8_t __pad0df2[0x2]; // 0xdf2 + [[maybe_unused]] uint8_t __pad0dfa[0x2]; // 0xdfa public: // MNetworkEnable - GameTime_t m_fArmedTime; // 0xdf4 + GameTime_t m_fArmedTime; // 0xdfc // MNetworkEnable - bool m_bBombPlacedAnimation; // 0xdf8 + bool m_bBombPlacedAnimation; // 0xe00 // MNetworkEnable - bool m_bIsPlantingViaUse; // 0xdf9 + bool m_bIsPlantingViaUse; // 0xe01 private: - [[maybe_unused]] uint8_t __pad0dfa[0x6]; // 0xdfa + [[maybe_unused]] uint8_t __pad0e02[0x6]; // 0xe02 public: // MNetworkEnable - EntitySpottedState_t m_entitySpottedState; // 0xe00 - int32_t m_nSpotRules; // 0xe18 - bool m_bPlayedArmingBeeps[7]; // 0xe1c - bool m_bBombPlanted; // 0xe23 - bool m_bDroppedFromDeath; // 0xe24 + EntitySpottedState_t m_entitySpottedState; // 0xe08 + int32_t m_nSpotRules; // 0xe20 + bool m_bPlayedArmingBeeps[7]; // 0xe24 + bool m_bBombPlanted; // 0xe2b + bool m_bDroppedFromDeath; // 0xe2c }; // Alignment: 0 -// Size: 0xdf8 +// Size: 0xe00 class CDEagle : public CCSWeaponBaseGun { public: @@ -16020,7 +16040,7 @@ public: }; // Alignment: 0 -// Size: 0xdf8 +// Size: 0xe00 class CWeaponElite : public CCSWeaponBaseGun { public: @@ -16028,7 +16048,7 @@ public: }; // Alignment: 0 -// Size: 0xdd8 +// Size: 0xde0 class CWeaponNOVA : public CCSWeaponBase { public: @@ -16036,7 +16056,7 @@ public: }; // Alignment: 0 -// Size: 0xdd8 +// Size: 0xde0 class CWeaponSawedoff : public CCSWeaponBase { public: @@ -16044,16 +16064,16 @@ public: }; // Alignment: 1 -// Size: 0xe00 +// Size: 0xe08 class CWeaponTaser : public CCSWeaponBaseGun { public: // MNetworkEnable - GameTime_t m_fFireTime; // 0xdf8 + GameTime_t m_fFireTime; // 0xe00 }; // Alignment: 0 -// Size: 0xdd8 +// Size: 0xde0 class CWeaponXM1014 : public CCSWeaponBase { public: @@ -16061,7 +16081,7 @@ public: }; // Alignment: 0 -// Size: 0xdd8 +// Size: 0xde0 class CKnife : public CCSWeaponBase { public: @@ -16069,25 +16089,25 @@ public: }; // Alignment: 3 -// Size: 0xde8 +// Size: 0xdf0 class CMelee : public CCSWeaponBase { public: // MNetworkEnable - GameTime_t m_flThrowAt; // 0xdd8 - CHandle< CBaseEntity > m_hThrower; // 0xddc - bool m_bDidThrowDamage; // 0xde0 + GameTime_t m_flThrowAt; // 0xde0 + CHandle< CBaseEntity > m_hThrower; // 0xde4 + bool m_bDidThrowDamage; // 0xde8 }; // Alignment: 3 -// Size: 0xe08 +// Size: 0xe10 class CWeaponShield : public CCSWeaponBaseGun { public: - float m_flBulletDamageAbsorbed; // 0xdf8 - GameTime_t m_flLastBulletHitSoundTime; // 0xdfc + float m_flBulletDamageAbsorbed; // 0xe00 + GameTime_t m_flLastBulletHitSoundTime; // 0xe04 // MNetworkEnable - float m_flDisplayHealth; // 0xe00 + float m_flDisplayHealth; // 0xe08 }; // Alignment: 4 @@ -16156,45 +16176,45 @@ public: }; // Alignment: 9 -// Size: 0xe18 +// Size: 0xe20 class CBaseCSGrenade : public CCSWeaponBase { private: - [[maybe_unused]] uint8_t __pad0dd8[0x20]; // 0xdd8 + [[maybe_unused]] uint8_t __pad0de0[0x20]; // 0xde0 public: // MNetworkEnable - bool m_bRedraw; // 0xdf8 + bool m_bRedraw; // 0xe00 // MNetworkEnable - bool m_bIsHeldByPlayer; // 0xdf9 + bool m_bIsHeldByPlayer; // 0xe01 // MNetworkEnable - bool m_bPinPulled; // 0xdfa + bool m_bPinPulled; // 0xe02 // MNetworkEnable - bool m_bJumpThrow; // 0xdfb + bool m_bJumpThrow; // 0xe03 // MNetworkEnable - EGrenadeThrowState m_eThrowStatus; // 0xdfc + EGrenadeThrowState m_eThrowStatus; // 0xe04 // MNetworkEnable - GameTime_t m_fThrowTime; // 0xe00 + GameTime_t m_fThrowTime; // 0xe08 // MNetworkEnable - float m_flThrowStrength; // 0xe04 + float m_flThrowStrength; // 0xe0c // MNetworkEnable - float m_flThrowStrengthApproach; // 0xe08 + float m_flThrowStrengthApproach; // 0xe10 // MNetworkEnable - GameTime_t m_fDropTime; // 0xe0c + GameTime_t m_fDropTime; // 0xe14 }; // Alignment: 2 -// Size: 0xdf8 +// Size: 0xe00 class CWeaponBaseItem : public CCSWeaponBase { public: // MNetworkEnable - CountdownTimer m_SequenceCompleteTimer; // 0xdd8 + CountdownTimer m_SequenceCompleteTimer; // 0xde0 // MNetworkEnable - bool m_bRedraw; // 0xdf0 + bool m_bRedraw; // 0xdf8 }; // Alignment: 0 -// Size: 0xdf8 +// Size: 0xe00 class CItem_Healthshot : public CWeaponBaseItem { public: @@ -16202,30 +16222,30 @@ public: }; // Alignment: 7 -// Size: 0xdf0 +// Size: 0xdf8 class CFists : public CCSWeaponBase { public: // MNetworkEnable - bool m_bPlayingUninterruptableAct; // 0xdd8 -private: - [[maybe_unused]] uint8_t __pad0dd9[0x3]; // 0xdd9 -public: - // MNetworkEnable - // MNetworkChangeCallback "OnUninterruptChanged" - PlayerAnimEvent_t m_nUninterruptableActivity; // 0xddc - bool m_bRestorePrevWep; // 0xde0 + bool m_bPlayingUninterruptableAct; // 0xde0 private: [[maybe_unused]] uint8_t __pad0de1[0x3]; // 0xde1 public: - CHandle< CBasePlayerWeapon > m_hWeaponBeforePrevious; // 0xde4 - CHandle< CBasePlayerWeapon > m_hWeaponPrevious; // 0xde8 - bool m_bDelayedHardPunchIncoming; // 0xdec - bool m_bDestroyAfterTaunt; // 0xded + // MNetworkEnable + // MNetworkChangeCallback "OnUninterruptChanged" + PlayerAnimEvent_t m_nUninterruptableActivity; // 0xde4 + bool m_bRestorePrevWep; // 0xde8 +private: + [[maybe_unused]] uint8_t __pad0de9[0x3]; // 0xde9 +public: + CHandle< CBasePlayerWeapon > m_hWeaponBeforePrevious; // 0xdec + CHandle< CBasePlayerWeapon > m_hWeaponPrevious; // 0xdf0 + bool m_bDelayedHardPunchIncoming; // 0xdf4 + bool m_bDestroyAfterTaunt; // 0xdf5 }; // Alignment: 0 -// Size: 0xe18 +// Size: 0xe20 class CSensorGrenade : public CBaseCSGrenade { public: @@ -16233,7 +16253,7 @@ public: }; // Alignment: 0 -// Size: 0xdd8 +// Size: 0xde0 class CBreachCharge : public CCSWeaponBase { public: @@ -16241,7 +16261,7 @@ public: }; // Alignment: 0 -// Size: 0xdd8 +// Size: 0xde0 class CBumpMine : public CCSWeaponBase { public: @@ -16249,7 +16269,7 @@ public: }; // Alignment: 0 -// Size: 0xdd8 +// Size: 0xde0 class CTablet : public CCSWeaponBase { public: @@ -16257,7 +16277,7 @@ public: }; // Alignment: 0 -// Size: 0xe18 +// Size: 0xe20 class CTripWireFire : public CBaseCSGrenade { public: @@ -16265,14 +16285,14 @@ public: }; // Alignment: 0 -// Size: 0xdf8 +// Size: 0xe00 class CWeaponZoneRepulsor : public CCSWeaponBaseGun { public: // No members available }; -// Alignment: 137 +// Alignment: 136 // Size: 0x1548 class CCSPlayerPawnBase : public CBasePlayerPawn { @@ -16341,124 +16361,125 @@ private: [[maybe_unused]] uint8_t __pad0d05[0x3]; // 0xd05 public: // MNetworkEnable - uint32_t m_unTotalRoundDamageDealt; // 0xd08 + float m_fMolotovDamageTime; // 0xd08 // MNetworkEnable - float m_fMolotovDamageTime; // 0xd0c + bool m_bHasMovedSinceSpawn; // 0xd0c // MNetworkEnable - bool m_bHasMovedSinceSpawn; // 0xd10 - // MNetworkEnable - bool m_bCanMoveDuringFreezePeriod; // 0xd11 + bool m_bCanMoveDuringFreezePeriod; // 0xd0d private: - [[maybe_unused]] uint8_t __pad0d12[0x2]; // 0xd12 + [[maybe_unused]] uint8_t __pad0d0e[0x2]; // 0xd0e public: // MNetworkEnable - float m_flGuardianTooFarDistFrac; // 0xd14 - float m_flNextGuardianTooFarHurtTime; // 0xd18 + float m_flGuardianTooFarDistFrac; // 0xd10 + float m_flNextGuardianTooFarHurtTime; // 0xd14 // MNetworkEnable - GameTime_t m_flDetectedByEnemySensorTime; // 0xd1c - float m_flDealtDamageToEnemyMostRecentTimestamp; // 0xd20 - GameTime_t m_flLastEquippedHelmetTime; // 0xd24 - GameTime_t m_flLastEquippedArmorTime; // 0xd28 + GameTime_t m_flDetectedByEnemySensorTime; // 0xd18 + float m_flDealtDamageToEnemyMostRecentTimestamp; // 0xd1c + GameTime_t m_flLastEquippedHelmetTime; // 0xd20 + GameTime_t m_flLastEquippedArmorTime; // 0xd24 // MNetworkEnable - int32_t m_nHeavyAssaultSuitCooldownRemaining; // 0xd2c - bool m_bResetArmorNextSpawn; // 0xd30 + int32_t m_nHeavyAssaultSuitCooldownRemaining; // 0xd28 + bool m_bResetArmorNextSpawn; // 0xd2c private: - [[maybe_unused]] uint8_t __pad0d31[0x3]; // 0xd31 + [[maybe_unused]] uint8_t __pad0d2d[0x3]; // 0xd2d public: - GameTime_t m_flLastBumpMineBumpTime; // 0xd34 + GameTime_t m_flLastBumpMineBumpTime; // 0xd30 // MNetworkEnable - GameTime_t m_flEmitSoundTime; // 0xd38 - int32_t m_iNumSpawns; // 0xd3c - int32_t m_iShouldHaveCash; // 0xd40 - bool m_bInvalidSteamLogonDelayed; // 0xd44 + GameTime_t m_flEmitSoundTime; // 0xd34 + int32_t m_iNumSpawns; // 0xd38 + int32_t m_iShouldHaveCash; // 0xd3c + bool m_bInvalidSteamLogonDelayed; // 0xd40 private: - [[maybe_unused]] uint8_t __pad0d45[0x3]; // 0xd45 + [[maybe_unused]] uint8_t __pad0d41[0x3]; // 0xd41 public: - GameTime_t m_flLastAction; // 0xd48 - float m_flNameChangeHistory[5]; // 0xd4c - float m_fLastGivenDefuserTime; // 0xd60 - float m_fLastGivenBombTime; // 0xd64 + GameTime_t m_flLastAction; // 0xd44 + float m_flNameChangeHistory[5]; // 0xd48 + float m_fLastGivenDefuserTime; // 0xd5c + float m_fLastGivenBombTime; // 0xd60 // MNetworkEnable - bool m_bHasNightVision; // 0xd68 + bool m_bHasNightVision; // 0xd64 // MNetworkEnable - bool m_bNightVisionOn; // 0xd69 + bool m_bNightVisionOn; // 0xd65 private: - [[maybe_unused]] uint8_t __pad0d6a[0x2]; // 0xd6a + [[maybe_unused]] uint8_t __pad0d66[0x2]; // 0xd66 public: - float m_fNextRadarUpdateTime; // 0xd6c - float m_flLastMoneyUpdateTime; // 0xd70 - char m_MenuStringBuffer[1024]; // 0xd74 - float m_fIntroCamTime; // 0x1174 - int32_t m_nMyCollisionGroup; // 0x1178 + float m_fNextRadarUpdateTime; // 0xd68 + float m_flLastMoneyUpdateTime; // 0xd6c + char m_MenuStringBuffer[1024]; // 0xd70 + float m_fIntroCamTime; // 0x1170 + int32_t m_nMyCollisionGroup; // 0x1174 // MNetworkEnable - bool m_bInNoDefuseArea; // 0x117c + bool m_bInNoDefuseArea; // 0x1178 // MNetworkEnable - bool m_bKilledByTaser; // 0x117d + bool m_bKilledByTaser; // 0x1179 private: - [[maybe_unused]] uint8_t __pad117e[0x2]; // 0x117e + [[maybe_unused]] uint8_t __pad117a[0x2]; // 0x117a public: // MNetworkEnable - int32_t m_iMoveState; // 0x1180 - GameTime_t m_grenadeParameterStashTime; // 0x1184 - bool m_bGrenadeParametersStashed; // 0x1188 + int32_t m_iMoveState; // 0x117c + GameTime_t m_grenadeParameterStashTime; // 0x1180 + bool m_bGrenadeParametersStashed; // 0x1184 private: - [[maybe_unused]] uint8_t __pad1189[0x3]; // 0x1189 + [[maybe_unused]] uint8_t __pad1185[0x3]; // 0x1185 public: - QAngle m_angStashedShootAngles; // 0x118c - Vector m_vecStashedGrenadeThrowPosition; // 0x1198 - Vector m_vecStashedVelocity; // 0x11a4 - QAngle m_angShootAngleHistory[2]; // 0x11b0 - Vector m_vecThrowPositionHistory[2]; // 0x11c8 - Vector m_vecVelocityHistory[2]; // 0x11e0 - bool m_bDiedAirborne; // 0x11f8 + QAngle m_angStashedShootAngles; // 0x1188 + Vector m_vecStashedGrenadeThrowPosition; // 0x1194 + Vector m_vecStashedVelocity; // 0x11a0 + QAngle m_angShootAngleHistory[2]; // 0x11ac + Vector m_vecThrowPositionHistory[2]; // 0x11c4 + Vector m_vecVelocityHistory[2]; // 0x11dc + bool m_bDiedAirborne; // 0x11f4 private: - [[maybe_unused]] uint8_t __pad11f9[0x3]; // 0x11f9 + [[maybe_unused]] uint8_t __pad11f5[0x3]; // 0x11f5 public: - CEntityIndex m_iBombSiteIndex; // 0x11fc + CEntityIndex m_iBombSiteIndex; // 0x11f8 // MNetworkEnable - int32_t m_nWhichBombZone; // 0x1200 - bool m_bInBombZoneTrigger; // 0x1204 - bool m_bWasInBombZoneTrigger; // 0x1205 + int32_t m_nWhichBombZone; // 0x11fc + bool m_bInBombZoneTrigger; // 0x1200 + bool m_bWasInBombZoneTrigger; // 0x1201 private: - [[maybe_unused]] uint8_t __pad1206[0x2]; // 0x1206 + [[maybe_unused]] uint8_t __pad1202[0x2]; // 0x1202 public: // MNetworkEnable - int32_t m_iDirection; // 0x1208 + int32_t m_iDirection; // 0x1204 // MNetworkEnable - int32_t m_iShotsFired; // 0x120c + int32_t m_iShotsFired; // 0x1208 // MNetworkEnable - int32_t m_ArmorValue; // 0x1210 - float m_flFlinchStack; // 0x1214 + int32_t m_ArmorValue; // 0x120c + float m_flFlinchStack; // 0x1210 // MNetworkEnable - float m_flVelocityModifier; // 0x1218 + float m_flVelocityModifier; // 0x1214 // MNetworkEnable - float m_flHitHeading; // 0x121c + float m_flHitHeading; // 0x1218 // MNetworkEnable - int32_t m_nHitBodyPart; // 0x1220 - int32_t m_iHostagesKilled; // 0x1224 - Vector m_vecTotalBulletForce; // 0x1228 + int32_t m_nHitBodyPart; // 0x121c + int32_t m_iHostagesKilled; // 0x1220 + Vector m_vecTotalBulletForce; // 0x1224 // MNetworkEnable - float m_flFlashDuration; // 0x1234 + float m_flFlashDuration; // 0x1230 // MNetworkEnable - float m_flFlashMaxAlpha; // 0x1238 + float m_flFlashMaxAlpha; // 0x1234 // MNetworkEnable - float m_flProgressBarStartTime; // 0x123c + float m_flProgressBarStartTime; // 0x1238 // MNetworkEnable - int32_t m_iProgressBarDuration; // 0x1240 + int32_t m_iProgressBarDuration; // 0x123c // MNetworkEnable - bool m_bWaitForNoAttack; // 0x1244 + bool m_bWaitForNoAttack; // 0x1240 private: - [[maybe_unused]] uint8_t __pad1245[0x3]; // 0x1245 + [[maybe_unused]] uint8_t __pad1241[0x3]; // 0x1241 public: // MNetworkEnable - float m_flLowerBodyYawTarget; // 0x1248 + float m_flLowerBodyYawTarget; // 0x1244 // MNetworkEnable - bool m_bStrafing; // 0x124c + bool m_bStrafing; // 0x1248 private: - [[maybe_unused]] uint8_t __pad124d[0x3]; // 0x124d + [[maybe_unused]] uint8_t __pad1249[0x3]; // 0x1249 +public: + Vector m_lastStandingPos; // 0x124c + float m_ignoreLadderJumpTime; // 0x1258 +private: + [[maybe_unused]] uint8_t __pad125c[0x4]; // 0x125c public: - Vector m_lastStandingPos; // 0x1250 - float m_ignoreLadderJumpTime; // 0x125c CountdownTimer m_ladderSurpressionTimer; // 0x1260 Vector m_lastLadderNormal; // 0x1278 Vector m_lastLadderPos; // 0x1284 @@ -16572,8 +16593,8 @@ public: // No members available }; -// Alignment: 45 -// Size: 0x1f40 +// Alignment: 46 +// Size: 0x1f60 class CCSPlayerPawn : public CCSPlayerPawnBase { public: @@ -16649,45 +16670,49 @@ public: // MNetworkEnable bool m_bIsBuyMenuOpen; // 0x16b8 private: - [[maybe_unused]] uint8_t __pad16b9[0x557]; // 0x16b9 + [[maybe_unused]] uint8_t __pad16b9[0x577]; // 0x16b9 public: - CTransform m_xLastHeadBoneTransform; // 0x1c10 - bool m_bLastHeadBoneTransformIsValid; // 0x1c30 + CTransform m_xLastHeadBoneTransform; // 0x1c30 + bool m_bLastHeadBoneTransformIsValid; // 0x1c50 private: - [[maybe_unused]] uint8_t __pad1c31[0x3]; // 0x1c31 + [[maybe_unused]] uint8_t __pad1c51[0x3]; // 0x1c51 public: - GameTime_t m_lastLandTime; // 0x1c34 - int32_t m_iPlayerLocked; // 0x1c38 + GameTime_t m_lastLandTime; // 0x1c54 + bool m_bOnGroundLastTick; // 0x1c58 private: - [[maybe_unused]] uint8_t __pad1c3c[0x4]; // 0x1c3c + [[maybe_unused]] uint8_t __pad1c59[0x3]; // 0x1c59 +public: + int32_t m_iPlayerLocked; // 0x1c5c +private: + [[maybe_unused]] uint8_t __pad1c60[0x4]; // 0x1c60 public: // MNetworkEnable - GameTime_t m_flTimeOfLastInjury; // 0x1c40 + GameTime_t m_flTimeOfLastInjury; // 0x1c64 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - GameTime_t m_flNextSprayDecalTime; // 0x1c44 - bool m_bNextSprayDecalTimeExpedited; // 0x1c48 + GameTime_t m_flNextSprayDecalTime; // 0x1c68 + bool m_bNextSprayDecalTimeExpedited; // 0x1c6c private: - [[maybe_unused]] uint8_t __pad1c49[0x3]; // 0x1c49 + [[maybe_unused]] uint8_t __pad1c6d[0x3]; // 0x1c6d public: // MNetworkEnable - int32_t m_nRagdollDamageBone; // 0x1c4c + int32_t m_nRagdollDamageBone; // 0x1c70 // MNetworkEnable - Vector m_vRagdollDamageForce; // 0x1c50 + Vector m_vRagdollDamageForce; // 0x1c74 // MNetworkEnable - Vector m_vRagdollDamagePosition; // 0x1c5c + Vector m_vRagdollDamagePosition; // 0x1c80 // MNetworkEnable - char m_szRagdollDamageWeaponName[64]; // 0x1c68 + char m_szRagdollDamageWeaponName[64]; // 0x1c8c // MNetworkEnable - bool m_bRagdollDamageHeadshot; // 0x1ca8 + bool m_bRagdollDamageHeadshot; // 0x1ccc private: - [[maybe_unused]] uint8_t __pad1ca9[0x7]; // 0x1ca9 + [[maybe_unused]] uint8_t __pad1ccd[0x3]; // 0x1ccd public: // MNetworkEnable - CEconItemView m_EconGloves; // 0x1cb0 + CEconItemView m_EconGloves; // 0x1cd0 // MNetworkEnable - QAngle m_qDeathEyeAngles; // 0x1f28 - bool m_bSkipOneHeadConstraintUpdate; // 0x1f34 + QAngle m_qDeathEyeAngles; // 0x1f48 + bool m_bSkipOneHeadConstraintUpdate; // 0x1f54 }; // Alignment: 1 @@ -16804,7 +16829,7 @@ public: }; // Alignment: 0 -// Size: 0xdf8 +// Size: 0xe00 class CAK47 : public CCSWeaponBaseGun { public: @@ -16812,7 +16837,7 @@ public: }; // Alignment: 0 -// Size: 0xdf8 +// Size: 0xe00 class CWeaponAug : public CCSWeaponBaseGun { public: @@ -16820,7 +16845,7 @@ public: }; // Alignment: 0 -// Size: 0xdf8 +// Size: 0xe00 class CWeaponAWP : public CCSWeaponBaseGun { public: @@ -16828,7 +16853,7 @@ public: }; // Alignment: 0 -// Size: 0xdf8 +// Size: 0xe00 class CWeaponBizon : public CCSWeaponBaseGun { public: @@ -16836,7 +16861,7 @@ public: }; // Alignment: 0 -// Size: 0xdf8 +// Size: 0xe00 class CWeaponFamas : public CCSWeaponBaseGun { public: @@ -16844,7 +16869,7 @@ public: }; // Alignment: 0 -// Size: 0xdf8 +// Size: 0xe00 class CWeaponFiveSeven : public CCSWeaponBaseGun { public: @@ -16852,7 +16877,7 @@ public: }; // Alignment: 0 -// Size: 0xdf8 +// Size: 0xe00 class CWeaponG3SG1 : public CCSWeaponBaseGun { public: @@ -16860,7 +16885,7 @@ public: }; // Alignment: 0 -// Size: 0xdf8 +// Size: 0xe00 class CWeaponGalilAR : public CCSWeaponBaseGun { public: @@ -16868,7 +16893,7 @@ public: }; // Alignment: 0 -// Size: 0xdf8 +// Size: 0xe00 class CWeaponGlock : public CCSWeaponBaseGun { public: @@ -16876,7 +16901,7 @@ public: }; // Alignment: 0 -// Size: 0xdf8 +// Size: 0xe00 class CWeaponHKP2000 : public CCSWeaponBaseGun { public: @@ -16884,7 +16909,7 @@ public: }; // Alignment: 0 -// Size: 0xdf8 +// Size: 0xe00 class CWeaponM4A1 : public CCSWeaponBaseGun { public: @@ -16892,7 +16917,7 @@ public: }; // Alignment: 0 -// Size: 0xdf8 +// Size: 0xe00 class CWeaponMAC10 : public CCSWeaponBaseGun { public: @@ -16900,7 +16925,7 @@ public: }; // Alignment: 0 -// Size: 0xdf8 +// Size: 0xe00 class CWeaponMag7 : public CCSWeaponBaseGun { public: @@ -16908,7 +16933,7 @@ public: }; // Alignment: 0 -// Size: 0xdf8 +// Size: 0xe00 class CWeaponMP7 : public CCSWeaponBaseGun { public: @@ -16916,7 +16941,7 @@ public: }; // Alignment: 0 -// Size: 0xdf8 +// Size: 0xe00 class CWeaponMP9 : public CCSWeaponBaseGun { public: @@ -16924,7 +16949,7 @@ public: }; // Alignment: 0 -// Size: 0xdf8 +// Size: 0xe00 class CWeaponNegev : public CCSWeaponBaseGun { public: @@ -16932,7 +16957,7 @@ public: }; // Alignment: 0 -// Size: 0xdf8 +// Size: 0xe00 class CWeaponP250 : public CCSWeaponBaseGun { public: @@ -16940,7 +16965,7 @@ public: }; // Alignment: 0 -// Size: 0xdf8 +// Size: 0xe00 class CWeaponP90 : public CCSWeaponBaseGun { public: @@ -16948,7 +16973,7 @@ public: }; // Alignment: 0 -// Size: 0xdf8 +// Size: 0xe00 class CWeaponSCAR20 : public CCSWeaponBaseGun { public: @@ -16956,7 +16981,7 @@ public: }; // Alignment: 0 -// Size: 0xdf8 +// Size: 0xe00 class CWeaponSG556 : public CCSWeaponBaseGun { public: @@ -16964,7 +16989,7 @@ public: }; // Alignment: 0 -// Size: 0xdf8 +// Size: 0xe00 class CWeaponSSG08 : public CCSWeaponBaseGun { public: @@ -16972,7 +16997,7 @@ public: }; // Alignment: 0 -// Size: 0xdf8 +// Size: 0xe00 class CWeaponTec9 : public CCSWeaponBaseGun { public: @@ -16980,7 +17005,7 @@ public: }; // Alignment: 0 -// Size: 0xdf8 +// Size: 0xe00 class CWeaponUMP45 : public CCSWeaponBaseGun { public: @@ -16988,7 +17013,7 @@ public: }; // Alignment: 0 -// Size: 0xdf8 +// Size: 0xe00 class CWeaponM249 : public CCSWeaponBaseGun { public: @@ -16996,7 +17021,7 @@ public: }; // Alignment: 0 -// Size: 0xe18 +// Size: 0xe20 class CMolotovGrenade : public CBaseCSGrenade { public: @@ -17004,7 +17029,7 @@ public: }; // Alignment: 0 -// Size: 0xe18 +// Size: 0xe20 class CIncendiaryGrenade : public CMolotovGrenade { public: @@ -17012,7 +17037,7 @@ public: }; // Alignment: 0 -// Size: 0xe18 +// Size: 0xe20 class CDecoyGrenade : public CBaseCSGrenade { public: @@ -17020,7 +17045,7 @@ public: }; // Alignment: 0 -// Size: 0xe18 +// Size: 0xe20 class CFlashbang : public CBaseCSGrenade { public: @@ -17028,7 +17053,7 @@ public: }; // Alignment: 0 -// Size: 0xe18 +// Size: 0xe20 class CHEGrenade : public CBaseCSGrenade { public: @@ -17036,7 +17061,7 @@ public: }; // Alignment: 0 -// Size: 0xe20 +// Size: 0xe28 class CSmokeGrenade : public CBaseCSGrenade { public: diff --git a/sdk/vphysics2.hpp b/sdk/vphysics2.hpp index e3857aad..b49ea484 100644 --- a/sdk/vphysics2.hpp +++ b/sdk/vphysics2.hpp @@ -4,7 +4,7 @@ // ///////////////////////////////////////////////////////////// // Binary: vphysics2.dll -// Classes count: 87 +// Classes count: 88 // Enums count: 2 // Created using source2gen - github.com/neverlosecc/source2gen // ///////////////////////////////////////////////////////////// @@ -889,6 +889,14 @@ public: float flStrength; // 0x14 }; +// Alignment: 1 +// Size: 0x1 +struct RnVertex_t +{ +public: + uint8_t m_nEdge; // 0x0 +}; + // Alignment: 4 // Size: 0x4 struct RnHalfEdge_t @@ -917,8 +925,8 @@ public: CUtlVector< uint32 > m_Nodes; // 0x18 }; -// Alignment: 12 -// Size: 0xd8 +// Alignment: 13 +// Size: 0xf0 struct RnHull_t { public: @@ -928,15 +936,16 @@ public: Vector m_vOrthographicAreas; // 0x28 matrix3x4_t m_MassProperties; // 0x34 float m_flVolume; // 0x64 - CUtlVector< Vector > m_Vertices; // 0x68 - CUtlVector< RnHalfEdge_t > m_Edges; // 0x80 - CUtlVector< RnFace_t > m_Faces; // 0x98 - CUtlVector< RnPlane_t > m_Planes; // 0xb0 - uint32_t m_nFlags; // 0xc8 + CUtlVector< RnVertex_t > m_Vertices; // 0x68 + CUtlVector< Vector > m_VertexPositions; // 0x80 + CUtlVector< RnHalfEdge_t > m_Edges; // 0x98 + CUtlVector< RnFace_t > m_Faces; // 0xb0 + CUtlVector< RnPlane_t > m_FacePlanes; // 0xc8 + uint32_t m_nFlags; // 0xe0 private: - [[maybe_unused]] uint8_t __pad00cc[0x4]; // 0xcc + [[maybe_unused]] uint8_t __pad00e4[0x4]; // 0xe4 public: - CRegionSVM* m_pRegionSVM; // 0xd0 + CRegionSVM* m_pRegionSVM; // 0xe8 }; // Alignment: 1 @@ -1010,7 +1019,7 @@ public: }; // Alignment: 1 -// Size: 0xe8 +// Size: 0x100 struct RnHullDesc_t : public RnShapeDesc_t { public: