Skip to content

CCSPlayer_MovementServices (server)

CS2-specific movement state layered on CPlayer_MovementServices: crouch / duck, ladder, and water state used by movement prediction.

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

Kind: classSize: 4064 bytes (0xfe0)Alignment: unspecified (0xff sentinel)Module: serverBinary: server.dll

Relationships

Inherits from: CPlayer_MovementServices_Humanoid

Same name in another module: CCSPlayer_MovementServices (client)

Inheritance tree
Relationship diagram (8 edges)
classDiagram
    CPlayerPawnComponent <|-- CPlayer_MovementServices
    CPlayer_MovementServices <|-- CPlayer_MovementServices_Humanoid
    CPlayer_MovementServices_Humanoid <|-- CCSPlayer_MovementServices
    CCSPlayer_MovementServices *-- CCSPlayerAnimationState
    CCSPlayer_MovementServices *-- GameTime_t
    CCSPlayer_MovementServices *-- CCSPlayerLegacyJump
    CCSPlayer_MovementServices *-- CCSPlayerModernJump
    CCSPlayer_MovementServices *-- GameTick_t
Inheritance chain, direct subclasses (up to 20) and a few composition edges

Memory layout

77 fields, 50 declared here and 27 inherited. Offsets are absolute from the object base on windows-x86_64.

CPlayerPawnComponentCPlayer_MovementServicesCPlayer_MovementServices_HumanoidCCSPlayer_MovementServices

OffsetFieldTypeFromAnnotations
0x8__m_pChainEntityCNetworkVarChainerCPlayerPawnComponentMNotSaved
0x30m_pComponentGraphControllerCAnimGraphControllerPtrCPlayerPawnComponent
0x48m_nImpulseint32CPlayer_MovementServicesPending impulse command number (e.g. impulse 100 flashlight).
0x50m_nButtonsCInButtonStateCPlayer_MovementServicesBitmask of currently-pressed input buttons (IN_ATTACK, IN_JUMP, IN_DUCK, …). MNotSaved
0x70m_nQueuedButtonDownMaskuint64CPlayer_MovementServices
0x78m_nQueuedButtonChangeMaskuint64CPlayer_MovementServices
0x80m_nButtonDoublePresseduint64CPlayer_MovementServices
0x88m_pButtonPressedCmdNumberuint32[64]CPlayer_MovementServicesMNotSaved
0x188m_nLastCommandNumberProcesseduint32CPlayer_MovementServicesMNotSaved
0x190m_nToggleButtonDownMaskuint64CPlayer_MovementServices
0x1a0m_flCmdForwardMovefloat32CPlayer_MovementServices
0x1a4m_flCmdLeftMovefloat32CPlayer_MovementServices
0x1a8m_flCmdUpMovefloat32CPlayer_MovementServices
0x1acm_flMaxspeedfloat32CPlayer_MovementServicesCurrent maximum ground movement speed (units/second).
0x1b0m_arrForceSubtickMoveWhenfloat32[4]CPlayer_MovementServices
0x1c0m_flForwardMovefloat32CPlayer_MovementServicesDecoded forward/back movement axis for the current user command.
0x1c4m_flLeftMovefloat32CPlayer_MovementServicesDecoded strafe (left/right) movement axis for the current user command.
0x1c8m_flUpMovefloat32CPlayer_MovementServicesDecoded vertical movement axis (swim / ladder) for the current user command.
0x1ccm_vecLastMovementImpulsesVectorCPlayer_MovementServices
0x240m_vecOldViewAnglesQAngleCPlayer_MovementServices
0x258m_flStepSoundTimefloat32CPlayer_MovementServices_Humanoid
0x25cm_flFallVelocityfloat32CPlayer_MovementServices_Humanoid
0x260m_groundNormalVectorCPlayer_MovementServices_HumanoidMNotSaved
0x26cm_flSurfaceFrictionfloat32CPlayer_MovementServices_Humanoid
0x270m_surfacePropsCUtlStringTokenCPlayer_MovementServices_HumanoidMNotSaved
0x280m_nStepsideint32CPlayer_MovementServices_Humanoid
0x284m_vecSmoothedVelocityVectorCPlayer_MovementServices_Humanoid
0x310m_AnimationStateCCSPlayerAnimationState
0x3f0m_bUsingGroundTopologyOffsetbool
0x3f4m_flUsingGroundTopologyOffsetTransitionSmoothingfloat32
0x3f8m_vecLadderNormalVectorSurface normal of the ladder the player is currently on.
0x404m_nLadderSurfacePropIndexint32
0x408m_bDuckedboolTrue while the player is fully crouched.
0x40cm_flDuckAmountfloat32Crouch interpolation amount, 0 (standing) to 1 (fully ducked).
0x410m_flDuckSpeedfloat32
0x414m_bDuckOverridebool
0x415m_bDesiresDuckbool
0x416m_bDuckingboolTrue while the player is mid-transition into or out of a crouch.
0x418m_flDuckRootOffsetfloat32
0x41cm_flDuckViewOffsetfloat32
0x420m_flLastDuckTimefloat32
0x424m_flBombPlantViewOffsetfloat32
0x430m_vecLastPositionAtFullCrouchSpeedVector2D
0x438m_duckUntilOnGroundbool
0x439m_bHasWalkMovedSinceLastJumpbool
0x43am_bInStuckTestbool
0x648m_nTraceCountint32
0x64cm_StuckLastint32
0x650m_bSpeedCroppedbool
0x654m_nOldWaterLevelint32
0x658m_flWaterEntryTimefloat32
0x65cm_vecForwardVector
0x668m_vecLeftVector
0x674m_vecUpVector
0x680m_nGameCodeHasMovedPlayerAfterCommandint32
0x684m_bMadeFootstepNoisebool
0x688m_iFootstepsint32
0x68cm_fStashGrenadeParameterWhenGameTime_t
0x690m_bUseFrictionStashedSpeedbool
0x694m_flUseFrictionStashedSpeedUntilFracfloat32
0x698m_flFrictionStashedSpeedfloat32
0x69cm_flStaminafloat32
0x6a0m_flHeightAtJumpStartfloat32
0x6a4m_flMaxJumpHeightThisJumpfloat32
0x6a8m_flMaxJumpHeightLastJumpfloat32
0x6acm_flStaminaAtJumpStartfloat32
0x6b0m_flVelMulAtJumpStartfloat32
0x6b4m_flAccumulatedJumpErrorfloat32
0x6b8m_LegacyJumpCCSPlayerLegacyJump
0x6d0m_ModernJumpCCSPlayerModernJump
0x708m_nLastJumpTickGameTick_t
0x70cm_flLastJumpFracfloat32
0x710m_flLastJumpVelocityZfloat32
0x714m_bJumpApexPendingbool
0x718m_flTicksSinceLastSurfingDetectedfloat32
0x7a8m_vecWalkWishVelVector2D
0xfd0m_bHasEverProcessedCommandbool