Need help with plugins or servers? Join our Discord

Modding Database

Up to date with Steam · checked 13s ago· Viewing build 6726 (Sep 30 2026), not the latest

CAI_BaseNPC

classclient: C_AI_BaseNPC →

size 0x10E0 (4320 bytes) · 78 own fields · last changed in build 6736 · 17 fields have Deadworks members

Derived (1): CAI_CitadelNPC
Copy as
CAI_BaseNPC · 78 fields
0xB68m_currentNPCBasePhysicsHullCNPCPhysicsHull
0xBA8m_bCheckContactsbool
0xBA9m_bForceDynamicHullbool
0xBD0m_hSynchronizedPrimaryNPCCHandle< CAI_BaseNPC >
0xBD8m_vecSynchronizedSecondaryNPCsCUtlVector< CHandle< CAI_BaseNPC > >
0xBF0m_NPCStateNPC_STATE
0xBF4m_nPreModifierNPCStateNPC_STATE
0xBF8m_IdealNPCStateNPC_STATE
0xBFCm_flLastStateChangeTimeGameTime_t
0xC00m_pSensesCAI_Senses*
0xC08m_ConditionsCAI_ScheduleBits
0xC2Cm_PreviousConditionsAsyncCAI_ScheduleBits
0xC50m_NonGatherConditionsCAI_ScheduleBits
0xC74m_CustomInterruptConditionsCAI_ScheduleBits
0xC98m_ScheduleRelatedConditionsCAI_ScheduleBits
0xCBCm_ScheduleRelatedRemovalConditionsCAI_ScheduleBits
0xCE0m_bForceConditionsGatherbool
0xCE1m_bConditionsGatheredbool
0xCE2m_bConditionsGatheredAsyncbool
0xCE3m_bGatheringConditionsbool
0xCE4m_bGatheringScheduleRelatedConditionsbool
0xCF0m_pEnemyServicesCAI_EnemyServices*
0xCF8m_bSkippedChooseEnemybool
0xCFCm_afCapabilityint32
0xD08m_lastNavLocationCRelativeLocation
0xD50m_flLastPositionTolerancefloat32
0xD58m_sTaskWaitingForMovementIdCGlobalSymbol
0xD60m_nMovementFailureBehaviorMovementFailureBehavior_t
0xD68m_nCurrentPathMovementIdMovementId_t
0xD70m_nCurrentPathSerialNumberuint32
0xD78m_nLastPathMovementIdMovementId_t
0xD80m_nLastPathSerialNumberuint32
0xD84m_nForcedGoGaitSharedMovementGait_t
0xD88m_lastTimeBashedObstacleGameTime_t
0xD8Cm_nextMantleTimeGameTime_t
0xD90m_hPathObstructorCHandle< CBaseEntity >
0xD94m_flJumpMaxRisefloat32
0xD98m_flJumpMaxDropfloat32
0xD9Cm_flJumpMaxDistfloat32
0xDA0m_flJumpMinDistfloat32
0xDA8m_pFacingServicesCAI_FacingServices*
0xDB0m_pAnimGraphServicesCAI_AnimGraphServices*
0xDB8m_SchedulerCAI_Scheduler
0xE80m_pNavigatorCAI_Navigator*
0xE88m_pPathfinderCAI_Pathfinder*
0xE90m_pPathfinderNetCAI_Pathfinder*
0xEA8m_pMotorServicesCAI_MotorServices*
0xEB0m_flTimeLastMovementGameTime_t
0xEB8m_strNavRestrictionVolumeCUtlSymbolLarge
0xEC0m_afMemoryint32
0xEC8m_UnreachableTargetsCUnreachableTargetList
0xF10m_flLastTookDamageTimeGameTime_t
0xF14m_flLastTookDamageFromPlayerTimeGameTime_t
0xF18m_bDidDeathCleanupbool
0xF19m_bReceivedEnemyDeadNotificationbool
0xF1Cm_nPrevHealthDuringModifyDamageint32
0xF24m_flWaitFinishedGameTime_t
0xF28m_fNoDamageDecalbool
0xF30m_vecAttachmentsCUtlVector< CHandle< CBaseEntity > >
0xF48m_OnDamagedCEntityIOOutput
0xF60m_OnStartDeathCEntityIOOutput
0xF78m_OnDeathCEntityIOOutput
0xF90m_OnQuarterHealthCEntityIOOutput
0xFA8m_OnHalfHealthCEntityIOOutput
0xFC0m_OnThreeQuarterHealthCEntityIOOutput
0xFD8m_OnFoundEnemyCEntityOutputTemplate< CHandle< CBaseEntity > >
0xFF8m_OnLostEnemyCEntityIOOutput
0x1010m_OnLostPlayerCEntityIOOutput
0x1028m_OnDamagedByPlayerCEntityIOOutput
0x1040m_OnPlayerUseCEntityIOOutput
0x1058m_OnUseCEntityIOOutput
0x1070m_OnLostEnemyLOSCEntityIOOutput
0x1088m_OnLostPlayerLOSCEntityIOOutput
0x10A0m_nAITraceMaskuint64
0x10A8m_bDynamicAILODbool
0x10ACm_aiLODAILOD_t
0x10B0m_flThinkTimefloat32
0x10D0m_nDebugCurIndexint32
from CBaseCombatCharacter · 10 fields
0xA90m_bForceServerRagdollbool
0xA98m_hMyWearablesCNetworkUtlVectorBase< CHandle< CEconWearable > >
0xAB0m_impactEnergyScalefloat32
0xAB4m_bApplyStressDamagebool
0xAB5m_bDeathEventsDispatchedbool
0xAF8m_vecRelationshipsCUtlVector< RelationshipOverride_t >
0xB10m_strRelationshipsCUtlSymbolLarge
0xB18m_eHullHull_t
0xB1Cm_nNavHullIdxuint32
0xB20m_movementStatsCMovementStatsProperty
from CBaseAnimGraph · 17 fields
0x878m_graphControllerManagerCAnimGraphControllerManager
0x910m_pMainGraphControllerCAnimGraphControllerPtr
0x918m_bInitiallyPopulateInterpHistorybool
0x920m_OnLayerCycleUpdatedCEntityOutputTemplate< float32 >
0x940m_OnExternalChoreoGraphChangedCEntityIOOutput
0x958m_pChoreoServicesIChoreoServices*
0x960m_bAnimGraphUpdateEnabledbool
0x961m_bAnimationUpdateScheduledbool
0x964m_vecForceVector
0x970m_nForceBoneint32
0x980m_pRagdollControlIPhysicsRagdollControl*
0x988m_RagdollPosePhysicsRagdollPose_t
0x9B0m_bRagdollEnabledbool
0x9B1m_bRagdollClientSidebool
0x9B2m_bShouldUpdateTransformationsbool
0x9C0m_xParentedRagdollRootInEntitySpaceCTransform
0xA40m_bodyGroupModifiersCUtlHashtable< AnimTagID, CBaseAnimGraph::ModifierHandleVector_t >
from CBaseModelEntity · 46 fields
0x4B0m_CRenderComponentCRenderComponent*
0x4B8m_CHitboxComponentCHitboxComponent
0x4D0m_pChoreoComponentCChoreoComponent*
0x4D8m_nDestructiblePartInitialStateDestructed0HitGroup_t
0x4DCm_nDestructiblePartInitialStateDestructed1HitGroup_t
0x4E0m_nDestructiblePartInitialStateDestructed2HitGroup_t
0x4E4m_nDestructiblePartInitialStateDestructed3HitGroup_t
0x4E8m_nDestructiblePartInitialStateDestructed4HitGroup_t
0x4ECm_nDestructiblePartInitialStateDestructed0_PartIndexint32
0x4F0m_nDestructiblePartInitialStateDestructed1_PartIndexint32
0x4F4m_nDestructiblePartInitialStateDestructed2_PartIndexint32
0x4F8m_nDestructiblePartInitialStateDestructed3_PartIndexint32
0x4FCm_nDestructiblePartInitialStateDestructed4_PartIndexint32
0x500m_bDestructiblePartInitialStateDestructed0_GenerateBreakpiecesbool
0x501m_bDestructiblePartInitialStateDestructed1_GenerateBreakpiecesbool
0x502m_bDestructiblePartInitialStateDestructed2_GenerateBreakpiecesbool
0x503m_bDestructiblePartInitialStateDestructed3_GenerateBreakpiecesbool
0x504m_bDestructiblePartInitialStateDestructed4_GenerateBreakpiecesbool
0x508m_pDestructiblePartsSystemComponentCDestructiblePartsComponent*
0x510m_OnDestructibleHitGroupDamageLevelChangedCEntityOutputTemplate< CBaseModelEntity::OnDamageLevelChangedArgs_t >
0x538m_flDissolveStartTimeGameTime_t
0x540m_OnIgniteCEntityIOOutput
0x558m_nRenderModeRenderMode_t
0x559m_nRenderFXRenderFx_t
0x560m_szAddModifierCUtlString
0x568m_bAllowFadeInViewbool
0x588m_bHasCollisionbool
0x58Cm_vSupportVectorWS
0x598m_clrRender.RenderColorColor
0x5A0m_vecRenderAttributesCUtlVectorEmbeddedNetworkVar< EntityRenderAttribute_t >
0x608m_bRenderToCubemapsbool
0x609m_bExpandRenderBoundsToIncludeClothbool
0x60Am_bNoInterpolatebool
0x610m_CollisionCCollisionProperty
0x6C8m_GlowCGlowProperty
0x720m_flGlowBackfaceMultfloat32
0x724m_fadeMinDistfloat32
0x728m_fadeMaxDistfloat32
0x72Cm_flFadeScalefloat32
0x730m_flShadowStrengthfloat32
0x734m_nObjectCullinguint8
0x738m_bodyGroupTotalRequestCountuint32
0x740m_bodyGroupRequestsCUtlVectorFixedGrowable< CBaseModelEntity::BodyGroupRequest_t >
0x818m_bodyGroupChoicesCUtlOrderedMap< CGlobalSymbol, int32 >
0x840m_vecViewOffset.EyePositionCNetworkViewOffsetVector
0x870m_bvDisabledHitGroupsuint32[1]
from CBaseEntity · 85 fields
0x30m_CBodyComponent.BodyComponentCBodyComponent*
0x38m_NetworkTransmitComponentCNetworkTransmitComponent
0x248m_aThinkFunctionsCUtlVector< thinkfunc_t >
0x260m_iCurrentThinkContextint32
0x264m_nLastThinkTickGameTick_t
0x268m_bDisabledContextThinksbool
0x278m_isSteadyStateCTypedBitVec
0x280m_lastNetworkChangefloat32
0x288m_thinkBASEPTR
0x290m_ResponseContextsCUtlVector< ResponseContext_t >
0x2A8m_iszResponseContextCUtlSymbolLarge
0x2B0m_pfnTouchENTITYFUNCPTR
0x2B8m_pfnUseUSEPTR
0x2C0m_pfnBlockedENTITYFUNCPTR
0x2C8m_pfnMoveDoneBASEPTR
0x2D0m_iHealth.Healthint32
0x2D4m_iMaxHealth.MaxHealthint32
0x2D8m_lifeState.LifeStateuint8
0x2DCm_flDamageAccumulatorfloat32
0x2E0m_bTakesDamagebool
0x2E8m_nTakeDamageFlagsTakeDamageFlags_t
0x2F0m_nPlatformTypeEntityPlatformTypes_t
0x2F2m_MoveCollideMoveCollide_t
0x2F3m_MoveTypeMoveType_t
0x2F4m_nPreviouslySetMoveTypeMoveType_t
0x2F5m_nActualMoveType.MoveTypeMoveType_t
0x2F6m_nWaterTouchuint8
0x2F7m_nSlimeTouchuint8
0x2F8m_bRestoreInHierarchybool
0x300m_targetCUtlSymbolLarge
0x308m_hDamageFilterCHandle< CBaseFilter >
0x310m_iszDamageFilterNameCUtlSymbolLarge
0x318m_flMoveDoneTimefloat32
0x31Cm_nSubclassID.CreateByDesignerName()CUtlStringToken
0x328m_hNPCSensingHandleSensableByNPCHandle_t
0x32Cm_flAnimTimefloat32
0x330m_flSimulationTimefloat32
0x334m_flCreateTimeGameTime_t
0x338m_bClientSideRagdollbool
0x339m_ubInterpolationFrameuint8
0x33Cm_vPrevVPhysicsUpdatePosVectorWS
0x348m_iTeamNum.TeamNumuint8
0x350m_iGlobalnameCUtlSymbolLarge
0x358m_iSentToClientsint32
0x360m_sUniqueHammerIDCUtlString
0x368m_spawnflagsuint32
0x36Cm_nNextThinkTickGameTick_t
0x370m_nSimulationTickint32
0x378m_OnKilledCEntityIOOutput
0x390m_fFlags.Flagsuint32
0x394m_vecAbsVelocity.AbsVelocityVector
0x3A0m_vecVelocityCNetworkVelocityVector
0x3D0m_nPushEnumCountint32
0x3D8m_pCollision.CollisionCCollisionProperty*
0x3E0m_pModifierProp.ModifierPropCModifierProperty*
0x3E8m_hEffectEntityCHandle< CBaseEntity >
0x3ECm_hOwnerEntityCHandle< CBaseEntity >
0x3F0m_fEffectsuint32
0x3F4m_hGroundEntity.GroundEntityCHandle< CBaseEntity >
0x3F8m_nGroundBodyIndexint32
0x3FCm_flFriction.Frictionfloat32
0x400m_flElasticityfloat32
0x404m_flGravityScale.GravityScalefloat32
0x408m_flTimeScalefloat32
0x40Cm_flWaterLevelfloat32
0x410m_bGravityDisabledbool
0x411m_bAnimatedEveryTickbool
0x414m_flActualGravityScalefloat32
0x418m_bGravityActuallyDisabledbool
0x419m_bDisableLowViolencebool
0x41Am_nWaterTypeuint8
0x41Cm_iEFlagsint32
0x420m_OnUser1CEntityIOOutput
0x438m_OnUser2CEntityIOOutput
0x450m_OnUser3CEntityIOOutput
0x468m_OnUser4CEntityIOOutput
0x480m_iInitialTeamNumint32
0x484m_flNavIgnoreUntilTimeGameTime_t
0x488m_vecAngVelocityQAngle
0x494m_bNetworkQuantizeOriginAndAnglesbool
0x495m_bLagCompensatebool
0x498m_pBlockerCHandle< CBaseEntity >
0x49Cm_flLocalTimefloat32
0x4A0m_flVPhysicsUpdateLocalTimefloat32
0x4A8m_pPulseGraphInstanceCPulseGraphInstance_ServerEntity*
from CEntityInstance · 3 fields
0x8m_iszPrivateVScriptsCUtlSymbolLarge
0x10m_pEntity.NameCEntityIdentity*
0x28m_CScriptComponentCScriptComponent*

History

  1. 6736–6745changed
    • size 0x10E0 → 0x1130
    • 78 fields from m_currentNPCBasePhysicsHull (0xB68) on moved +0x50
  2. 6722–6731changed
    • size 0x1150 → 0x10E0
    • m_currentNPCBasePhysicsHull offset 0xBB0 → 0xB68
    • m_bCheckContacts offset 0xBF0 → 0xBA8
    • m_bForceDynamicHull offset 0xBF1 → 0xBA9
    • m_hSynchronizedPrimaryNPC offset 0xC5C → 0xBD0
    • m_vecSynchronizedSecondaryNPCs offset 0xC60 → 0xBD8
    • m_NPCState offset 0xC78 → 0xBF0, no longer networked
    • m_nPreModifierNPCState offset 0xC7C → 0xBF4
    • m_IdealNPCState offset 0xC80 → 0xBF8
    • m_flLastStateChangeTime offset 0xC84 → 0xBFC
    • m_pSenses offset 0xC88 → 0xC00
    • m_Conditions offset 0xC90 → 0xC08
    • m_NonGatherConditions offset 0xCD8 → 0xC50
    • m_CustomInterruptConditions offset 0xCFC → 0xC74
    • m_bForceConditionsGather offset 0xD20 → 0xCE0
    • m_bConditionsGathered offset 0xD21 → 0xCE1
    • m_bConditionsGatheredAsync offset 0xD22 → 0xCE2
    • m_pEnemyServices offset 0xD48 → 0xCF0
    • m_bSkippedChooseEnemy offset 0xD70 → 0xCF8
    • m_afCapability offset 0xD94 → 0xCFC
    • m_lastNavLocation offset 0xC18 → 0xD08
    • m_flLastPositionTolerance offset 0xC58 → 0xD50
    • m_lastTimeBashedObstacle offset 0xD9C → 0xD88
    • m_nextMantleTime offset 0xDA0 → 0xD8C
    • m_hPathObstructor offset 0xDD0 → 0xD90
    • m_flJumpMaxRise offset 0xDD4 → 0xD94
    • m_flJumpMaxDrop offset 0xDD8 → 0xD98
    • m_flJumpMaxDist offset 0xDDC → 0xD9C
    • m_flJumpMinDist offset 0xDE0 → 0xDA0
    • m_pFacingServices offset 0xDE8 → 0xDA8
    • m_pAnimGraphServices offset 0xDF0 → 0xDB0
    • m_Scheduler offset 0xE00 → 0xDB8
    • m_pNavigator offset 0xEB0 → 0xE80
    • m_pPathfinder offset 0xEB8 → 0xE88
    • m_pPathfinderNet offset 0xEC0 → 0xE90
    • m_flTimeLastMovement offset 0xEE0 → 0xEB0
    • m_strNavRestrictionVolume offset 0xEF8 → 0xEB8
    • m_afMemory offset 0xF00 → 0xEC0
    • m_UnreachableTargets offset 0xDB0 → 0xEC8
    • m_flLastTookDamageTime offset 0xF08 → 0xF10
    • m_flLastTookDamageFromPlayerTime offset 0xF0C → 0xF14
    • m_bDidDeathCleanup offset 0xF52 → 0xF18
    • m_bReceivedEnemyDeadNotification offset 0xF53 → 0xF19
    • m_nPrevHealthDuringModifyDamage offset 0xF48 → 0xF1C
    • m_flWaitFinished offset 0xF5C → 0xF24
    • m_fNoDamageDecal offset 0xF60 → 0xF28
    • m_OnDamaged offset 0xF70 → 0xF48
    • m_OnStartDeath offset 0xF88 → 0xF60
    • m_OnDeath offset 0xFA0 → 0xF78
    • m_OnQuarterHealth offset 0xFB8 → 0xF90
    • m_OnHalfHealth offset 0xFD0 → 0xFA8
    • m_OnThreeQuarterHealth offset 0xFE8 → 0xFC0
    • m_OnFoundEnemy offset 0x1000 → 0xFD8
    • m_OnLostEnemy offset 0x1020 → 0xFF8
    • m_OnLostPlayer offset 0x1038 → 0x1010
    • m_OnDamagedByPlayer offset 0x1050 → 0x1028
    • m_OnPlayerUse offset 0x1080 → 0x1040
    • m_OnUse offset 0x1098 → 0x1058
    • m_OnLostEnemyLOS offset 0x10E0 → 0x1070
    • m_OnLostPlayerLOS offset 0x10F8 → 0x1088
    • m_nAITraceMask offset 0x1110 → 0x10A0
    • m_bDynamicAILOD offset 0x1118 → 0x10A8
    • m_aiLOD offset 0x111C → 0x10AC
    • m_flThinkTime offset 0x1120 → 0x10B0
    • m_nDebugCurIndex offset 0x1140 → 0x10D0
    • + m_PreviousConditionsAsync CAI_ScheduleBits at 0xC2C
    • + m_ScheduleRelatedConditions CAI_ScheduleBits at 0xC98
    • + m_ScheduleRelatedRemovalConditions CAI_ScheduleBits at 0xCBC
    • + m_bGatheringConditions bool at 0xCE3
    • + m_bGatheringScheduleRelatedConditions bool at 0xCE4
    • + m_sTaskWaitingForMovementId CGlobalSymbol at 0xD58
    • + m_nMovementFailureBehavior MovementFailureBehavior_t at 0xD60
    • + m_nCurrentPathMovementId MovementId_t at 0xD68
    • + m_nCurrentPathSerialNumber uint32 at 0xD70
    • + m_nLastPathMovementId MovementId_t at 0xD78
    • + m_nLastPathSerialNumber uint32 at 0xD80
    • + m_nForcedGoGait SharedMovementGait_t at 0xD84
    • + m_pMotorServices CAI_MotorServices* at 0xEA8
    • + m_vecAttachments CUtlVector< CHandle< CBaseEntity > > at 0xF30
    • − m_ExistingConditionsAsync
    • − m_nTickGatheredConditions
    • − m_flLastTimeIgnited
    • − m_flTimeIgnitionStarted
    • − m_bDoPostRestoreRefindPath
    • − m_pBehaviorHost
    • − m_sDeathAnim
    • − m_GiveUpOnDeadEnemyTimer
    • − m_FailChooseEnemyTimer
    • − m_flAcceptableTimeSeenEnemy
    • − m_bIgnoreUnseenEnemies
    • − m_hEnemyFilter
    • − m_iszEnemyFilterName
    • − m_hTargetEnt
    • − m_bClearTargetOnScheduleEnd
    • − m_flSoundWaitTime
    • − m_nSoundPriority
    • − m_bSuppressFootsteps
    • − m_flGroundSpeed
    • − m_flMoveWaitFinished
    • − m_hOpeningDoor
    • − m_bAnimGraphIsAnimatingDeath
    • − m_bDeferredNavigation
    • − m_pMotor
    • − m_flTimeLastFootstep
    • − m_hFootstepEvent
    • − m_CheckOnGroundTimer
    • − m_flLastAttackTime
    • − m_vecLastTookDamageAttackVector
    • − m_iszSquadName
    • − m_vecMySquadSlots
    • − m_bFadeCorpse
    • − m_bImportantRagdoll
    • − m_pVecAttachments
    • − m_OnDamagedByPlayerSquad
    • − m_OnStartTouchMaterial
    • − m_OnEndTouchMaterial
  3. 6696–6701first dumped