// MNetworkExcludeByName = m_bClientSideRagdoll
// MNetworkExcludeByName = m_iMaxHealth
// MNetworkExcludeByUserGroup = Player
// MNetworkExcludeByUserGroup = Water
// MNetworkExcludeByUserGroup = LocalPlayerExclusive
// MNetworkExcludeByName = m_spawnflags
// MNetworkExcludeByName = m_bTakesDamage
// MNetworkExcludeByName = m_nTakeDamageFlags
// MNetworkExcludeByName = m_vecAbsVelocity
// MNetworkExcludeByName = m_flSpeed
// MNetworkExcludeByName = m_flWaterLevel
// MNetworkExcludeByName = m_vecBaseVelocity
// MNetworkVarNames = CBodyComponent::Storage_t m_CBodyComponent
// MNetworkVarNames = CModifierProperty * m_pModifierProp
// MNetworkVarNames = int32 m_iMaxHealth
// MNetworkVarNames = int32 m_iHealth
// MNetworkVarNames = uint8 m_lifeState
// MNetworkVarNames = bool m_bTakesDamage
// MNetworkVarNames = TakeDamageFlags_t m_nTakeDamageFlags
// MNetworkVarNames = EntityPlatformTypes_t m_nPlatformType
// MNetworkVarNames = uint8 m_ubInterpolationFrame
// MNetworkVarNames = EntitySubclassID_t m_nSubclassID
// MNetworkVarNames = float32 m_flAnimTime
// MNetworkVarNames = float32 m_flSimulationTime
// MNetworkVarNames = GameTime_t m_flCreateTime
// MNetworkVarNames = float m_flSpeed
// MNetworkVarNames = bool m_bClientSideRagdoll
// MNetworkVarNames = uint8 m_iTeamNum
// MNetworkVarNames = uint32 m_spawnflags
// MNetworkVarNames = GameTick_t m_nNextThinkTick
// MNetworkVarNames = uint32 m_fFlags
// MNetworkVarNames = CHandle< CBaseEntity> m_hEffectEntity
// MNetworkVarNames = CHandle< CBaseEntity> m_hOwnerEntity
// MNetworkVarNames = MoveCollide_t m_MoveCollide
// MNetworkVarNames = MoveType_t m_MoveType
// MNetworkVarNames = float32 m_flWaterLevel
// MNetworkVarNames = uint32 m_fEffects
// MNetworkVarNames = CHandle< CBaseEntity> m_hGroundEntity
// MNetworkVarNames = int m_nGroundBodyIndex
// MNetworkVarNames = float32 m_flFriction
// MNetworkVarNames = float32 m_flElasticity
// MNetworkVarNames = float32 m_flGravityScale
// MNetworkVarNames = float32 m_flTimeScale
// MNetworkVarNames = bool m_bAnimatedEveryTick
// MNetworkVarNames = bool m_bGravityDisabled
// MNetworkVarNames = GameTime_t m_flNavIgnoreUntilTime
class C_BaseEntity : public CEntityInstance
{
public:
    // MNetworkEnable
    // MNetworkUserGroup = CBodyComponent
    // MNetworkAlias = CBodyComponent
    // MNetworkTypeAlias = CBodyComponent
    // MNetworkPriority = 48
    CBodyComponent* m_CBodyComponent;
    // MNotSaved = !!UNKNOWN!!
    CNetworkTransmitComponent m_NetworkTransmitComponent;
private:
    uint8 pad_0208[288];
public:
    // MNotSaved = !!UNKNOWN!!
    GameTick_t m_nLastThinkTick;
    // MNotSaved = !!UNKNOWN!!
    CGameSceneNode* m_pGameSceneNode;
    // MNotSaved = !!UNKNOWN!!
    CRenderComponent* m_pRenderComponent;
    // MNotSaved = !!UNKNOWN!!
    CCollisionProperty* m_pCollision;
    // MNetworkEnable
    // MNetworkChangePointerCallback = !!UNKNOWN!!
    CModifierProperty* m_pModifierProp;
    // MNetworkEnable
    // MNetworkUserGroup = LocalPlayerExclusive
    // MNotSaved = !!UNKNOWN!!
    int32 m_iMaxHealth;
    // MNetworkEnable
    // MNetworkSerializer = ClampHealth
    // MNetworkUserGroup = Player
    // MNetworkPriority = 32
    int32 m_iHealth;
    // MNotSaved = !!UNKNOWN!!
    float32 m_flDamageAccumulator;
    // MNetworkEnable
    // MNetworkUserGroup = Player
    // MNetworkPriority = 32
    // MNotSaved = !!UNKNOWN!!
    uint8 m_lifeState;
    // MNetworkEnable
    // MNotSaved = !!UNKNOWN!!
    bool m_bTakesDamage;
    // MNetworkEnable
    // MNotSaved = !!UNKNOWN!!
    TakeDamageFlags_t m_nTakeDamageFlags;
    // MNetworkEnable
    EntityPlatformTypes_t m_nPlatformType;
    // MNetworkEnable
    // MNetworkChangeCallback = OnInterpolationFrameChanged
    // MNotSaved = !!UNKNOWN!!
    uint8 m_ubInterpolationFrame;
    CHandle<C_BaseEntity> m_hSceneObjectController;
    // MNotSaved = !!UNKNOWN!!
    int32 m_nNoInterpolationTick;
    // MNotSaved = !!UNKNOWN!!
    int32 m_nVisibilityNoInterpolationTick;
    // MNotSaved = !!UNKNOWN!!
    float32 m_flProxyRandomValue;
    // MNotSaved = !!UNKNOWN!!
    int32 m_iEFlags;
    // MNotSaved = !!UNKNOWN!!
    uint8 m_nWaterType;
    // MNotSaved = !!UNKNOWN!!
    bool m_bInterpolateEvenWithNoModel;
    // MNotSaved = !!UNKNOWN!!
    bool m_bPredictionEligible;
    // MNotSaved = !!UNKNOWN!!
    bool m_bApplyLayerMatchIDToModel;
    // MNotSaved = !!UNKNOWN!!
    CUtlStringToken m_tokLayerMatchID;
    // MNetworkEnable
    // MNetworkChangeCallback = OnSubclassIDChanged
    CUtlStringToken m_nSubclassID;
private:
    uint8 pad_038C[12];
public:
    // MNotSaved = !!UNKNOWN!!
    int32 m_nSimulationTick;
    // MNotSaved = !!UNKNOWN!!
    int32 m_iCurrentThinkContext;
    // MNotSaved = !!UNKNOWN!!
    CUtlVector<thinkfunc_t> m_aThinkFunctions;
    bool m_bDisabledContextThinks;
    // MNetworkEnable
    // MNetworkPriority = 0
    // MNetworkSerializer = animTimeSerializer
    // MNotSaved = !!UNKNOWN!!
    float32 m_flAnimTime;
    // MNetworkEnable
    // MNetworkPriority = 1
    // MNetworkSerializer = simulationTimeSerializer
    // MNetworkChangeCallback = OnSimulationTimeChanged
    // MNotSaved = !!UNKNOWN!!
    float32 m_flSimulationTime;
    uint8 m_nSceneObjectOverrideFlags;
    // MNotSaved = !!UNKNOWN!!
    bool m_bHasSuccessfullyInterpolated;
    // MNotSaved = !!UNKNOWN!!
    bool m_bHasAddedVarsToInterpolation;
    // MNotSaved = !!UNKNOWN!!
    bool m_bRenderEvenWhenNotSuccessfullyInterpolated;
    // MNotSaved = !!UNKNOWN!!
    int32 m_nInterpolationLatchDirtyFlags[2];
    // MNotSaved = !!UNKNOWN!!
    uint16 m_ListEntry[11];
    // MNetworkEnable
    // MNotSaved = !!UNKNOWN!!
    GameTime_t m_flCreateTime;
    // MNetworkEnable
    // MNotSaved = !!UNKNOWN!!
    float32 m_flSpeed;
    // MNotSaved = !!UNKNOWN!!
    uint16 m_EntClientFlags;
    // MNetworkEnable
    // MNotSaved = !!UNKNOWN!!
    bool m_bClientSideRagdoll;
    // MNetworkEnable
    // MNetworkChangeCallback = OnNetVarTeamNumChanged
    // MNotSaved = !!UNKNOWN!!
    uint8 m_iTeamNum;
    // MNetworkEnable
    uint32 m_spawnflags;
    // MNetworkEnable
    // MNetworkUserGroup = LocalPlayerExclusive
    // MNotSaved = !!UNKNOWN!!
    GameTick_t m_nNextThinkTick;
private:
    uint8 pad_03FC[4];
public:
    // MNetworkEnable
    // MNetworkPriority = 32
    // MNetworkUserGroup = Player
    // MNetworkChangeCallback = OnFlagsChanged
    uint32 m_fFlags;
    // MNotSaved = !!UNKNOWN!!
    Vector m_vecAbsVelocity;
    // MNetworkEnable
    // MNetworkAlias = m_vecVelocity
    // MNetworkUserGroup = LocalPlayerExclusive
    // MNetworkChangeCallback = OnServerVelocityChanged
    // MNetworkPriority = 32
    // MNotSaved = !!UNKNOWN!!
    CNetworkVelocityVector m_vecServerVelocity;
    CNetworkVelocityVector m_vecVelocity;
private:
    uint8 pad_0460[184];
public:
    // MNetworkEnable
    // MNotSaved = !!UNKNOWN!!
    CHandle<C_BaseEntity> m_hEffectEntity;
    // MNetworkEnable
    // MNetworkPriority = 32
    CHandle<C_BaseEntity> m_hOwnerEntity;
    // MNetworkEnable
    // MNotSaved = !!UNKNOWN!!
    MoveCollide_t m_MoveCollide;
    // MNetworkEnable
    // MNetworkChangeCallback = OnMoveTypeChanged
    MoveType_t m_MoveType;
    MoveType_t m_nActualMoveType;
    // MNetworkEnable
    // MNetworkUserGroup = Water
    // MNetworkChangeCallback = OnWaterLevelChangeNetworked
    // MNetworkBitCount = 8
    // MNetworkMinValue = 0.000000
    // MNetworkMaxValue = 1.000000
    // MNetworkEncodeFlags = 8
    // MNotSaved = !!UNKNOWN!!
    float32 m_flWaterLevel;
    // MNetworkEnable
    // MNetworkChangeCallback = OnEffectsChanged
    // MNotSaved = !!UNKNOWN!!
    uint32 m_fEffects;
    // MNetworkEnable
    // MNetworkPriority = 32
    // MNetworkUserGroup = Player
    // MNotSaved = !!UNKNOWN!!
    CHandle<C_BaseEntity> m_hGroundEntity;
    // MNetworkEnable
    // MNetworkPriority = 32
    // MNetworkUserGroup = Player
    // MNotSaved = !!UNKNOWN!!
    int32 m_nGroundBodyIndex;
    // MNetworkEnable
    // MNetworkBitCount = 8
    // MNetworkMinValue = 0.000000
    // MNetworkMaxValue = 4.000000
    // MNetworkEncodeFlags = 1
    // MNetworkUserGroup = LocalPlayerExclusive
    // MNotSaved = !!UNKNOWN!!
    float32 m_flFriction;
    // MNetworkEnable
    // MNetworkEncoder = coord
    // MNotSaved = !!UNKNOWN!!
    float32 m_flElasticity;
    // MNetworkEnable
    // MNetworkChangeCallback = OnGravityUpdated
    // MNotSaved = !!UNKNOWN!!
    float32 m_flGravityScale;
    // MNetworkEnable
    // MNetworkUserGroup = LocalPlayerExclusive
    // MNotSaved = !!UNKNOWN!!
    float32 m_flTimeScale;
    // MNetworkEnable
    // MNetworkChangeCallback = OnInterpolationAmountChanged
    // MNotSaved = !!UNKNOWN!!
    bool m_bAnimatedEveryTick;
    // MNetworkEnable
    // MNetworkChangeCallback = OnGravityUpdated
    bool m_bGravityDisabled;
    // MNetworkEnable
    // MNetworkChangeCallback = OnNavIgnoreChanged
    // MNotSaved = !!UNKNOWN!!
    GameTime_t m_flNavIgnoreUntilTime;
    // MNotSaved = !!UNKNOWN!!
    uint16 m_hThink;
private:
    uint8 pad_054E[10];
public:
    // MNotSaved = !!UNKNOWN!!
    uint8 m_fBBoxVisFlags;
    float32 m_flActualGravityScale;
    bool m_bGravityActuallyDisabled;
    // MNotSaved = !!UNKNOWN!!
    bool m_bPredictable;
    bool m_bRenderWithViewModels;
    // MNotSaved = !!UNKNOWN!!
    int32 m_nFirstPredictableCommand;
    // MNotSaved = !!UNKNOWN!!
    int32 m_nLastPredictableCommand;
    // MNotSaved = !!UNKNOWN!!
    CHandle<C_BaseEntity> m_hOldMoveParent;
    // MNotSaved = !!UNKNOWN!!
    CParticleProperty m_Particles;
private:
    uint8 pad_0598[8];
public:
    QAngle m_vecAngVelocity;
    // MNotSaved = !!UNKNOWN!!
    int32 m_DataChangeEventRef;
    // MNotSaved = !!UNKNOWN!!
    CUtlVector<CEntityHandle> m_dependencies;
    // MNotSaved = !!UNKNOWN!!
    int32 m_nCreationTick;
private:
    uint8 pad_05CC[13];
public:
    // MNotSaved = !!UNKNOWN!!
    bool m_bAnimTimeChanged;
    // MNotSaved = !!UNKNOWN!!
    bool m_bSimulationTimeChanged;
private:
    uint8 pad_05E0[8];
public:
    // MNotSaved = !!UNKNOWN!!
    CUtlString m_sUniqueHammerID;
};