Skip to content

CCSPlayer_WeaponServices (client)

Component attached to CCSPlayerPawn that manages the active weapon and weapon-switch timing for a CS2 player.

CS2 build 25218825 · Steam date 2026-09-09 · platform windows-x86_64 · cs2_schema.json

Kind: classSize: 5584 bytes (0x15d0)Alignment: unspecified (0xff sentinel)Module: clientBinary: client.dll

Relationships

Inherits from: CPlayer_WeaponServices

Same name in another module: CCSPlayer_WeaponServices (server)

Inheritance tree
Relationship diagram (3 edges)
classDiagram
    CPlayerPawnComponent <|-- CPlayer_WeaponServices
    CPlayer_WeaponServices <|-- CCSPlayer_WeaponServices
    CCSPlayer_WeaponServices *-- GameTime_t
Inheritance chain, direct subclasses (up to 20) and a few composition edges

Memory layout

11 fields, 5 declared here and 6 inherited. Offsets are absolute from the object base on windows-x86_64.

CPlayerPawnComponentCPlayer_WeaponServicesCCSPlayer_WeaponServices

OffsetFieldTypeFromAnnotations
0x8__m_pChainEntityCNetworkVarChainerCPlayerPawnComponentMNotSaved
0x30m_pComponentGraphControllerCAnimGraphControllerPtrCPlayerPawnComponent
0x48m_hMyWeaponsC_NetworkUtlVectorBase< CHandle< C_BasePlayerWeapon > >CPlayer_WeaponServices
0x60m_hActiveWeaponCHandle< C_BasePlayerWeapon >CPlayer_WeaponServices
0x64m_hLastWeaponCHandle< C_BasePlayerWeapon >CPlayer_WeaponServices
0x68m_iAmmouint16[32]CPlayer_WeaponServices
0xd0m_flNextAttackGameTime_tGameTime before which no weapon switch is permitted (e.g. after throwing a grenade).
0xd4m_nOldTotalShootPositionHistoryCountuint32
0x370m_nOldTotalInputHistoryCountuint32
0x1588m_networkAnimTimingC_NetworkUtlVectorBase< uint8 >Byte array encoding animation transition timing for the active weapon, used to synchronise viewmodel animations across client and server.
0x15a0m_bBlockInspectUntilNextGraphUpdateboolTrue when the inspect animation is suppressed until the animation graph ticks again (prevents stutter).