From 00eb8609b51dd079bb990b1f557920a3a2069d2c Mon Sep 17 00:00:00 2001 From: Konstantin 'cpz' L <1337@live.it> Date: Wed, 7 Jun 2023 04:07:02 +0300 Subject: [PATCH] 07.06.2023 --- sdk/!GlobalTypes.hpp | 14229 +++++++++++++------------------------ sdk/animationsystem.hpp | 8689 ++++++++-------------- sdk/client.hpp | 6282 ++++++++-------- sdk/engine2.hpp | 54 +- sdk/host.hpp | 27 + sdk/particles.hpp | 7141 +++++++++---------- sdk/pulse_system.hpp | 718 ++ sdk/rendersystemdx11.hpp | 38 +- sdk/resourcesystem.hpp | 191 +- sdk/schemasystem.hpp | 6 +- sdk/server.hpp | 13233 ++++++++++++++++------------------ sdk/soundsystem.hpp | 7 - sdk/vphysics2.hpp | 56 +- sdk/worldrenderer.hpp | 92 +- 14 files changed, 21175 insertions(+), 29588 deletions(-) create mode 100644 sdk/host.hpp create mode 100644 sdk/pulse_system.hpp diff --git a/sdk/!GlobalTypes.hpp b/sdk/!GlobalTypes.hpp index a047d6eb..e45061c0 100644 --- a/sdk/!GlobalTypes.hpp +++ b/sdk/!GlobalTypes.hpp @@ -4,8 +4,8 @@ // ///////////////////////////////////////////////////////////// // Binary: !GlobalTypes -// Classes count: 1383 -// Enums count: 313 +// Classes count: 1267 +// Enums count: 308 // Created using source2gen - github.com/neverlosecc/source2gen // ///////////////////////////////////////////////////////////// @@ -176,7 +176,7 @@ enum class RenderBufferFlags_t : uint32_t }; // Alignment: 4 -// Size: 0x2d +// Size: 0xd enum class RenderPrimitiveType_t : uint32_t { RENDER_PRIM_POINTS = 0x0, @@ -190,40 +190,8 @@ enum class RenderPrimitiveType_t : uint32_t RENDER_PRIM_TRIANGLE_STRIP_WITH_ADJACENCY = 0x8, RENDER_PRIM_INSTANCED_QUADS = 0x9, RENDER_PRIM_HETEROGENOUS = 0xa, - RENDER_PRIM_1_CONTROL_POINT_PATCHLIST = 0xb, - RENDER_PRIM_2_CONTROL_POINT_PATCHLIST = 0xc, - RENDER_PRIM_3_CONTROL_POINT_PATCHLIST = 0xd, - RENDER_PRIM_4_CONTROL_POINT_PATCHLIST = 0xe, - RENDER_PRIM_5_CONTROL_POINT_PATCHLIST = 0xf, - RENDER_PRIM_6_CONTROL_POINT_PATCHLIST = 0x10, - RENDER_PRIM_7_CONTROL_POINT_PATCHLIST = 0x11, - RENDER_PRIM_8_CONTROL_POINT_PATCHLIST = 0x12, - RENDER_PRIM_9_CONTROL_POINT_PATCHLIST = 0x13, - RENDER_PRIM_10_CONTROL_POINT_PATCHLIST = 0x14, - RENDER_PRIM_11_CONTROL_POINT_PATCHLIST = 0x15, - RENDER_PRIM_12_CONTROL_POINT_PATCHLIST = 0x16, - RENDER_PRIM_13_CONTROL_POINT_PATCHLIST = 0x17, - RENDER_PRIM_14_CONTROL_POINT_PATCHLIST = 0x18, - RENDER_PRIM_15_CONTROL_POINT_PATCHLIST = 0x19, - RENDER_PRIM_16_CONTROL_POINT_PATCHLIST = 0x1a, - RENDER_PRIM_17_CONTROL_POINT_PATCHLIST = 0x1b, - RENDER_PRIM_18_CONTROL_POINT_PATCHLIST = 0x1c, - RENDER_PRIM_19_CONTROL_POINT_PATCHLIST = 0x1d, - RENDER_PRIM_20_CONTROL_POINT_PATCHLIST = 0x1e, - RENDER_PRIM_21_CONTROL_POINT_PATCHLIST = 0x1f, - RENDER_PRIM_22_CONTROL_POINT_PATCHLIST = 0x20, - RENDER_PRIM_23_CONTROL_POINT_PATCHLIST = 0x21, - RENDER_PRIM_24_CONTROL_POINT_PATCHLIST = 0x22, - RENDER_PRIM_25_CONTROL_POINT_PATCHLIST = 0x23, - RENDER_PRIM_26_CONTROL_POINT_PATCHLIST = 0x24, - RENDER_PRIM_27_CONTROL_POINT_PATCHLIST = 0x25, - RENDER_PRIM_28_CONTROL_POINT_PATCHLIST = 0x26, - RENDER_PRIM_29_CONTROL_POINT_PATCHLIST = 0x27, - RENDER_PRIM_30_CONTROL_POINT_PATCHLIST = 0x28, - RENDER_PRIM_31_CONTROL_POINT_PATCHLIST = 0x29, - RENDER_PRIM_32_CONTROL_POINT_PATCHLIST = 0x2a, - RENDER_PRIM_COMPUTE_SHADER = 0x2b, - RENDER_PRIM_TYPE_COUNT = 0x2c, + RENDER_PRIM_COMPUTE_SHADER = 0xb, + RENDER_PRIM_TYPE_COUNT = 0xc, }; // Alignment: 4 @@ -357,14 +325,6 @@ enum class BoneMaskBlendSpace : uint32_t BlendSpace_Model_TranslationOnly = 0x3, }; -// Alignment: 4 -// Size: 0x2 -enum class SelectionSource_t : uint32_t -{ - SelectionSource_Bool = 0x0, - SelectionSource_Enum = 0x1, -}; - // Alignment: 4 // Size: 0x4 enum class IkTargetType : uint32_t @@ -475,23 +435,6 @@ enum class AnimVRHandMotionRange_t : uint32_t MotionRange_WithoutController = 0x1, }; -// Alignment: 4 -// Size: 0x3 -enum class SingleFrameSelection : uint32_t -{ - FirstFrame = 0x0, - LastFrame = 0x1, - SpecificFrame = 0x2, -}; - -// Alignment: 4 -// Size: 0x2 -enum class EAnimValueSource : uint32_t -{ - Constant = 0x0, - Parameter = 0x1, -}; - // Alignment: 4 // Size: 0x3 enum class FieldNetworkOption : uint32_t @@ -525,14 +468,6 @@ enum class ParticleAttachment_t : uint32_t MAX_PATTACH_TYPES = 0x10, }; -// Alignment: 4 -// Size: 0x2 -enum class SolveIKChainAnimNodeSettingSource : uint32_t -{ - SOLVEIKCHAINANIMNODESETTINGSOURCE_Default = 0x0, - SOLVEIKCHAINANIMNODESETTINGSOURCE_Override = 0x1, -}; - // Alignment: 4 // Size: 0x3 enum class SelectorTagBehavior_t : uint32_t @@ -572,13 +507,12 @@ enum class SeqPoseSetting_t : uint32_t }; // Alignment: 2 -// Size: 0x4 +// Size: 0x3 enum class AnimScriptType : uint16_t { ANIMSCRIPT_TYPE_INVALID = 0xffffffffffffffff, ANIMSCRIPT_FUSE_GENERAL = 0x0, ANIMSCRIPT_FUSE_STATEMACHINE = 0x1, - ANIMSCRIPT_EXPRTK = 0x2, }; // Alignment: 4 @@ -653,6 +587,16 @@ enum class FootstepLandedFootSoundType_t : uint32_t FOOTSOUND_UseOverrideSound = 0x2, }; +// Alignment: 4 +// Size: 0x4 +enum class IKChannelMode : uint32_t +{ + TwoBone = 0x0, + TwoBone_Translate = 0x1, + OneBone = 0x2, + OneBone_Translate = 0x3, +}; + // Alignment: 4 // Size: 0x4 enum class AnimVrFingerSplay_t : uint32_t @@ -767,15 +711,6 @@ enum class ChoiceChangeMethod : uint32_t OnResetOrCycleEnd = 0x2, }; -// Alignment: 4 -// Size: 0x3 -enum class StateComparisonValueType : uint32_t -{ - StateComparisonValue_FixedValue = 0x0, - StateComparisonValue_StateValue = 0x1, - StateComparisonValue_Parameter = 0x2, -}; - // Alignment: 4 // Size: 0x2 enum class Blend2DMode : uint32_t @@ -855,14 +790,6 @@ enum class AnimValueSource : uint32_t FingerSplay_Ring_Pinky = 0x24, }; -// Alignment: 4 -// Size: 0x2 -enum class FinishedConditionOption : uint32_t -{ - FinishedConditionOption_OnFinished = 0x0, - FinishedConditionOption_OnAlmostFinished = 0x1, -}; - // Alignment: 1 // Size: 0x3 enum class PoseType_t : uint8_t @@ -872,53 +799,6 @@ enum class PoseType_t : uint8_t POSETYPE_INVALID = 0xff, }; -// Alignment: 4 -// Size: 0x29 -enum class ControlValue : uint32_t -{ - ControlValue_MoveHeading = 0x0, - ControlValue_MoveSpeed = 0x1, - ControlValue_FacingHeading = 0x2, - ControlValue_LookHeading = 0x3, - ControlValue_LookPitch = 0x4, - ControlValue_LookDistance = 0x5, - ControlValue_WayPointHeading = 0x6, - ControlValue_WayPointDistance = 0x7, - ControlValue_BoundaryRadius = 0x8, - ControlValue_TotalTranslation_SourceState = 0x9, - ControlValue_TotalTranslation_TargetState = 0xa, - ControlValue_RemainingTranslation_SourceState = 0xb, - ControlValue_RemainingTranslation_TargetState = 0xc, - ControlValue_MoveVsFacingDelta = 0xd, - ControlValue_SourceStateBlendWeight = 0xe, - ControlValue_TargetStateBlendWeight = 0xf, - ControlValue_TargetMoveHeading = 0x10, - ControlValue_TargetMoveSpeed = 0x11, - ControlValue_AccelerationHeading = 0x12, - ControlValue_AccelerationSpeed = 0x13, - ControlValue_SlopeHeading = 0x14, - ControlValue_SlopeAngle = 0x15, - ControlValue_SlopeYaw = 0x16, - ControlValue_SlopePitch = 0x17, - ControlValue_GoalDistance = 0x18, - ControlValue_AccelerationLeftRight = 0x19, - ControlValue_AccelerationFrontBack = 0x1a, - ControlValue_RootMotionSpeed = 0x1b, - ControlValue_RootMotionTurnSpeed = 0x1c, - ControlValue_MoveHeadingRelativeToLookHeading = 0x1d, - ControlValue_FingerCurl_Thumb = 0x1e, - ControlValue_FingerCurl_Index = 0x1f, - ControlValue_FingerCurl_Middle = 0x20, - ControlValue_FingerCurl_Ring = 0x21, - ControlValue_FingerCurl_Pinky = 0x22, - ControlValue_FingerSplay_Thumb_Index = 0x23, - ControlValue_FingerSplay_Index_Middle = 0x24, - ControlValue_FingerSplay_Middle_Ring = 0x25, - ControlValue_FingerSplay_Ring_Pinky = 0x26, - ControlValue_Count = 0x27, - ControlValue_Invalid = 0xff, -}; - // Alignment: 4 // Size: 0x4 enum class ModelBoneFlexComponent_t : uint32_t @@ -930,12 +810,13 @@ enum class ModelBoneFlexComponent_t : uint32_t }; // Alignment: 4 -// Size: 0x8 +// Size: 0x9 enum class MeshDrawPrimitiveFlags_t : uint32_t { MESH_DRAW_FLAGS_NONE = 0x0, MESH_DRAW_FLAGS_USE_SHADOW_FAST_PATH = 0x1, MESH_DRAW_FLAGS_USE_COMPRESSED_NORMAL_TANGENT = 0x2, + MESH_DRAW_FLAGS_USE_COMPRESSED_NORMAL_TANGENT_V2 = 0x4, MESH_DRAW_INPUT_LAYOUT_IS_NOT_MATCHED_TO_MATERIAL = 0x8, MESH_DRAW_FLAGS_USE_COMPRESSED_PER_VERTEX_LIGHTING = 0x10, MESH_DRAW_FLAGS_USE_UNCOMPRESSED_PER_VERTEX_LIGHTING = 0x20, @@ -953,25 +834,6 @@ enum class MorphFlexControllerRemapType_t : uint32_t MORPH_FLEXCONTROLLER_REMAP_EYELID = 0x3, }; -// Alignment: 4 -// Size: 0x5 -enum class StateValue : uint32_t -{ - TotalTranslation_SourceState = 0x0, - TotalTranslation_TargetState = 0x1, - SourceStateBlendWeight = 0x2, - TargetStateBlendWeight = 0x3, - Count = 0x4, -}; - -// Alignment: 4 -// Size: 0x2 -enum class DampedValueType : uint32_t -{ - FloatParameter = 0x0, - VectorParameter = 0x1, -}; - // Alignment: 4 // Size: 0x3 enum class AnimParamNetworkSetting : uint32_t @@ -981,14 +843,6 @@ enum class AnimParamNetworkSetting : uint32_t NeverNetwork = 0x2, }; -// Alignment: 1 -// Size: 0x2 -enum class ComparisonValueType : uint8_t -{ - COMPARISONVALUETYPE_FIXEDVALUE = 0x0, - COMPARISONVALUETYPE_PARAMETER = 0x1, -}; - // Alignment: 4 // Size: 0xf enum class PermModelInfo_t__FlagEnum : uint32_t @@ -1093,6 +947,14 @@ enum class StepPhase : uint32_t StepPhase_InAir = 0x1, }; +// Alignment: 4 +// Size: 0x2 +enum class EDemoBoneSelectionMode : uint32_t +{ + CaptureAllBones = 0x0, + CaptureSelectedBones = 0x1, +}; + // Alignment: 4 // Size: 0x3 enum class AnimPoseControl : uint32_t @@ -1128,19 +990,6 @@ enum class IKTargetCoordinateSystem : uint32_t IKTARGETCOORDINATESYSTEM_COUNT = 0x2, }; -// Alignment: 4 -// Size: 0x7 -enum class Comparison_t : uint32_t -{ - COMPARISON_EQUALS = 0x0, - COMPARISON_NOT_EQUALS = 0x1, - COMPARISON_GREATER = 0x2, - COMPARISON_GREATER_OR_EQUAL = 0x3, - COMPARISON_LESS = 0x4, - COMPARISON_LESS_OR_EQUAL = 0x5, - COMPARISON_COUNT = 0x6, -}; - // Alignment: 4 // Size: 0x5 enum class AnimVRFinger_t : uint32_t @@ -1237,6 +1086,75 @@ enum class JointMotion_t : uint32_t JOINT_MOTION_COUNT = 0x2, }; +// Alignment: 2 +// Size: 0x24 +enum class PulseInstructionCode_t : uint16_t +{ + INVALID = 0x0, + IMMEDIATE_HALT = 0x1, + RETURN_VOID = 0x2, + RETURN_VALUE = 0x3, + NOP = 0x4, + JUMP = 0x5, + JUMP_COND = 0x6, + CHUNK_LEAP = 0x7, + CHUNK_LEAP_COND = 0x8, + PULSE_CALL_SYNC = 0x9, + PULSE_CALL_ASYNC_FIRE = 0xa, + CELL_INVOKE = 0xb, + LIBRARY_INVOKE = 0xc, + SET_VAR_REG_BOOL = 0xd, + SET_VAR_REG_INT = 0xe, + SET_VAR_REG_FLOAT = 0xf, + SET_VAR_REG_STR = 0x10, + SET_VAR_REG_EHANDLE = 0x11, + SET_VAR_REG_SNDEVT_GUID = 0x12, + SET_VAR_REG_VEC3 = 0x13, + GET_VAR_REG_BOOL = 0x14, + GET_VAR_REG_INT = 0x15, + GET_VAR_REG_FLOAT = 0x16, + GET_VAR_REG_STR = 0x17, + GET_VAR_REG_EHANDLE = 0x18, + GET_VAR_REG_SNDEVT_GUID = 0x19, + GET_VAR_REG_VEC3 = 0x1a, + SET_REGISTER_LIT_BOOL = 0x1b, + SET_REGISTER_LIT_INT = 0x1c, + SET_REGISTER_LIT_FLOAT = 0x1d, + SET_REGISTER_LIT_STR = 0x1e, + SET_REGISTER_LIT_INVAL_EHANDLE = 0x1f, + SET_REGISTER_LIT_INVAL_SNDEVT_GUID = 0x20, + SET_REGISTER_LIT_VEC3 = 0x21, + SET_REGISTER_DOMAIN_VALUE = 0x22, + COUNT = 0x23, +}; + +// Alignment: 4 +// Size: 0xd +enum class PulseValueType_t : uint32_t +{ + PVAL_INVALID = 0xffffffffffffffff, + PVAL_BOOL = 0x0, + PVAL_INT = 0x1, + PVAL_FLOAT = 0x2, + PVAL_STRING = 0x3, + PVAL_VEC3 = 0x4, + PVAL_TRANSFORM = 0x5, + PVAL_EHANDLE = 0x6, + PVAL_RESOURCE = 0x7, + PVAL_SNDEVT_GUID = 0x8, + PVAL_CURSOR_FLOW = 0x9, + PVAL_ANY = 0xa, + PVAL_COUNT = 0xb, +}; + +// Alignment: 4 +// Size: 0x2 +enum class PulseMethodCallMode_t : uint32_t +{ + SYNC_WAIT_FOR_COMPLETION = 0x0, + ASYNC_FIRE_AND_FORGET = 0x1, +}; + // Alignment: 4 // Size: 0x2 enum class SosGroupType_t : uint32_t @@ -1437,7 +1355,7 @@ enum class DisableShadows_t : uint8_t }; // Alignment: 4 -// Size: 0xf +// Size: 0x10 enum class ObjectTypeFlags_t : uint32_t { OBJECT_TYPE_NONE = 0x0, @@ -1453,6 +1371,7 @@ enum class ObjectTypeFlags_t : uint32_t OBJECT_TYPE_RENDER_WITH_DYNAMIC = 0x200, OBJECT_TYPE_RENDER_TO_CUBEMAPS = 0x400, OBJECT_TYPE_MODEL_HAS_LODS = 0x800, + OBJECT_TYPE_OVERLAY = 0x2000, OBJECT_TYPE_PRECOMPUTED_VISMEMBERS = 0x4000, OBJECT_TYPE_STATIC_CUBE_MAP = 0x8000, }; @@ -1601,48 +1520,6 @@ enum class SpriteCardTextureChannel_t : uint32_t SPRITECARD_TEXTURE_CHANNEL_MIX_BALPHA = 0xe, }; -// Alignment: 2 -// Size: 0x24 -enum class PulseInstructionCode_t : uint16_t -{ - INVALID = 0x0, - IMMEDIATE_HALT = 0x1, - RETURN_VOID = 0x2, - RETURN_VALUE = 0x3, - NOP = 0x4, - JUMP = 0x5, - LEAP = 0x6, - COND_JUMP = 0x7, - COND_LEAP = 0x8, - PULSE_CALL = 0x9, - LANDING_PAD = 0xa, - CELL_INVOKE = 0xb, - LIBRARY_INVOKE = 0xc, - SET_VAR_REG_BOOL = 0xd, - SET_VAR_REG_INT = 0xe, - SET_VAR_REG_FLOAT = 0xf, - SET_VAR_REG_STR = 0x10, - SET_VAR_REG_EHANDLE = 0x11, - SET_VAR_REG_SNDEVT_GUID = 0x12, - SET_VAR_REG_VEC3 = 0x13, - GET_VAR_REG_BOOL = 0x14, - GET_VAR_REG_INT = 0x15, - GET_VAR_REG_FLOAT = 0x16, - GET_VAR_REG_STR = 0x17, - GET_VAR_REG_EHANDLE = 0x18, - GET_VAR_REG_SNDEVT_GUID = 0x19, - GET_VAR_REG_VEC3 = 0x1a, - SET_REGISTER_LIT_BOOL = 0x1b, - SET_REGISTER_LIT_INT = 0x1c, - SET_REGISTER_LIT_FLOAT = 0x1d, - SET_REGISTER_LIT_STR = 0x1e, - SET_REGISTER_LIT_INVAL_EHANDLE = 0x1f, - SET_REGISTER_LIT_INVAL_SNDEVT_GUID = 0x20, - SET_REGISTER_LIT_VEC3 = 0x21, - SET_REGISTER_DOMAIN_VALUE = 0x22, - COUNT = 0x23, -}; - // Alignment: 4 // Size: 0x4 enum class ParticleAlphaReferenceType_t : uint32_t @@ -1669,6 +1546,15 @@ enum class SpriteCardTextureType_t : uint32_t SPRITECARD_TEXTURE_SPHERICAL_HARMONICS_C = 0x9, }; +// Alignment: 4 +// Size: 0x3 +enum class BBoxVolumeType_t : uint32_t +{ + BBOX_VOLUME = 0x0, + BBOX_DIMENSIONS = 0x1, + BBOX_MINS_MAXS = 0x2, +}; + // Alignment: 4 // Size: 0x4 enum class ParticleDetailLevel_t : uint32_t @@ -1706,7 +1592,7 @@ enum class ParticleLightUnitChoiceList_t : uint32_t }; // Alignment: 4 -// Size: 0x11 +// Size: 0x12 enum class ParticleVecType_t : uint32_t { PVEC_TYPE_INVALID = 0xffffffffffffffff, @@ -1725,7 +1611,8 @@ enum class ParticleVecType_t : uint32_t PVEC_TYPE_FLOAT_INTERP_GRADIENT = 0xc, PVEC_TYPE_RANDOM_UNIFORM = 0xd, PVEC_TYPE_RANDOM_UNIFORM_OFFSET = 0xe, - PVEC_TYPE_COUNT = 0xf, + PVEC_TYPE_CP_DELTA = 0xf, + PVEC_TYPE_COUNT = 0x10, }; // Alignment: 4 @@ -1738,25 +1625,6 @@ enum class PFNoiseModifier_t : uint32_t PF_NOISE_MODIFIER_RINGS = 0x3, }; -// Alignment: 4 -// Size: 0xd -enum class PulseValueType_t : uint32_t -{ - PVAL_INVALID = 0xffffffffffffffff, - PVAL_BOOL = 0x0, - PVAL_INT = 0x1, - PVAL_FLOAT = 0x2, - PVAL_STRING = 0x3, - PVAL_VEC3 = 0x4, - PVAL_TRANSFORM = 0x5, - PVAL_EHANDLE = 0x6, - PVAL_RESOURCE = 0x7, - PVAL_SNDEVT_GUID = 0x8, - PVAL_CURSOR_FLOW = 0x9, - PVAL_ANY = 0xa, - PVAL_COUNT = 0xb, -}; - // Alignment: 4 // Size: 0x4 enum class ParticleFloatRandomMode_t : uint32_t @@ -1889,15 +1757,6 @@ enum class AnimationType_t : uint32_t ANIMATION_TYPE_MANUAL_FRAMES = 0x2, }; -// Alignment: 4 -// Size: 0x3 -enum class PulseCursorFlow_t : uint32_t -{ - INVALID = 0xffffffffffffffff, - TERMINATE = 0x0, - JUMP_OR_LEAP = 0x1, -}; - // Alignment: 4 // Size: 0x2 enum class HitboxLerpType_t : uint32_t @@ -1953,7 +1812,7 @@ enum class VectorFloatExpressionType_t : uint32_t }; // Alignment: 4 -// Size: 0xb +// Size: 0xc enum class ParticlePinDistance_t : uint32_t { PARTICLE_PIN_DISTANCE_NONE = 0xffffffffffffffff, @@ -1967,6 +1826,7 @@ enum class ParticlePinDistance_t : uint32_t PARTICLE_PIN_DISTANCE_CP_PAIR_BOTH = 0x8, PARTICLE_PIN_SPEED = 0x9, PARTICLE_PIN_COLLECTION_AGE = 0xa, + PARTICLE_PIN_FLOAT_VALUE = 0xb, }; // Alignment: 4 @@ -2431,30 +2291,31 @@ enum class TakeDamageFlags_t : uint32_t }; // Alignment: 4 -// Size: 0x15 +// Size: 0x16 enum class WeaponSound_t : uint32_t { WEAPON_SOUND_EMPTY = 0x0, - WEAPON_SOUND_SINGLE = 0x1, - WEAPON_SOUND_DOUBLE = 0x2, - WEAPON_SOUND_RELOAD = 0x3, - WEAPON_SOUND_MELEE_MISS = 0x4, - WEAPON_SOUND_MELEE_HIT = 0x5, - WEAPON_SOUND_MELEE_HIT_WORLD = 0x6, - WEAPON_SOUND_MELEE_HIT_PLAYER = 0x7, - WEAPON_SOUND_SPECIAL1 = 0x8, - WEAPON_SOUND_SPECIAL2 = 0x9, - WEAPON_SOUND_SPECIAL3 = 0xa, - WEAPON_SOUND_NEARLYEMPTY = 0xb, - WEAPON_SOUND_IMPACT1 = 0xc, - WEAPON_SOUND_REFLECT = 0xd, - WEAPON_SOUND_SINGLE_ACCURATE = 0xe, - WEAPON_SOUND_ZOOM_IN = 0xf, - WEAPON_SOUND_ZOOM_OUT = 0x10, - WEAPON_SOUND_MOUSE_PRESSED = 0x11, - WEAPON_SOUND_DROP = 0x12, - WEAPON_SOUND_RADIO_USE = 0x13, - WEAPON_SOUND_NUM_TYPES = 0x14, + WEAPON_SOUND_SECONDARY_EMPTY = 0x1, + WEAPON_SOUND_SINGLE = 0x2, + WEAPON_SOUND_DOUBLE = 0x3, + WEAPON_SOUND_RELOAD = 0x4, + WEAPON_SOUND_MELEE_MISS = 0x5, + WEAPON_SOUND_MELEE_HIT = 0x6, + WEAPON_SOUND_MELEE_HIT_WORLD = 0x7, + WEAPON_SOUND_MELEE_HIT_PLAYER = 0x8, + WEAPON_SOUND_SPECIAL1 = 0x9, + WEAPON_SOUND_SPECIAL2 = 0xa, + WEAPON_SOUND_SPECIAL3 = 0xb, + WEAPON_SOUND_NEARLYEMPTY = 0xc, + WEAPON_SOUND_IMPACT1 = 0xd, + WEAPON_SOUND_REFLECT = 0xe, + WEAPON_SOUND_SINGLE_ACCURATE = 0xf, + WEAPON_SOUND_ZOOM_IN = 0x10, + WEAPON_SOUND_ZOOM_OUT = 0x11, + WEAPON_SOUND_MOUSE_PRESSED = 0x12, + WEAPON_SOUND_DROP = 0x13, + WEAPON_SOUND_RADIO_USE = 0x14, + WEAPON_SOUND_NUM_TYPES = 0x15, }; // Alignment: 1 @@ -3198,7 +3059,7 @@ enum class InputBitMask_t : uint64_t IN_USEORRELOAD = 0x100000000, IN_SCORE = 0x200000000, IN_ZOOM = 0x400000000, - IN_JUMP_THROW_RELEASE = 0x800000000, + IN_LOOK_AT_WEAPON = 0x800000000, }; // Alignment: 4 @@ -3212,6 +3073,16 @@ enum class EntityDisolveType_t : uint32_t ENTITY_DISSOLVE_CORE = 0x3, }; +// Alignment: 4 +// Size: 0x4 +enum class AmmoPosition_t : uint32_t +{ + AMMO_POSITION_INVALID = 0xffffffffffffffff, + AMMO_POSITION_PRIMARY = 0x0, + AMMO_POSITION_SECONDARY = 0x1, + AMMO_POSITION_COUNT = 0x2, +}; + // Alignment: 4 // Size: 0x3 enum class WorldTextPanelVerticalAlign_t : uint32_t @@ -3345,6 +3216,16 @@ enum class CSPlayerBlockingUseAction_t : uint32_t k_CSPlayerBlockingUseAction_MaxCount = 0x11, }; +// Alignment: 4 +// Size: 0x4 +enum class WeaponAttackType_t : uint32_t +{ + WEAPON_ATTACK_INVALID = 0xffffffffffffffff, + WEAPON_PRIMARY_ATTACK = 0x0, + WEAPON_SECONDARY_ATTACK = 0x1, + WEAPON_ATTACK_COUNT = 0x2, +}; + // Alignment: 4 // Size: 0x4 enum class BeamClipStyle_t : uint32_t @@ -3604,7 +3485,7 @@ enum class FixAngleSet_t : uint8_t }; // Alignment: 4 -// Size: 0x2a +// Size: 0x27 enum class GameAnimEventIndex_t : uint32_t { AE_EMPTY = 0x0, @@ -3643,12 +3524,9 @@ enum class GameAnimEventIndex_t : uint32_t AE_SV_HIDE_SILENCER = 0x21, AE_SV_DETACH_SILENCER_COMPLETE = 0x22, AE_CL_EJECT_MAG = 0x23, - AE_CL_EJECT_MAG_UNHIDE = 0x24, - AE_WPN_COMPLETE_RELOAD = 0x25, - AE_WPN_CZ_DUMP_CURRENT_MAG = 0x26, - AE_WPN_CZ_UPDATE_BODYGROUP = 0x27, - AE_WPN_HEALTHSHOT_INJECT = 0x28, - AE_CL_C4_SCREEN_TEXT = 0x29, + AE_WPN_COMPLETE_RELOAD = 0x24, + AE_WPN_HEALTHSHOT_INJECT = 0x25, + AE_CL_C4_SCREEN_TEXT = 0x26, }; // Alignment: 4 @@ -3804,1036 +3682,6 @@ enum class WorldTextAttachmentType_t : uint32_t ATTACHED_HAND_SPECIFIED_IN_EVENT = 0x3, }; -// Alignment: 4 -// Size: 0x400 -enum class BaseActivity_t : uint32_t -{ - ACT_RESET = 0x0, - ACT_IDLE = 0x1, - ACT_TRANSITION = 0x2, - ACT_COVER = 0x3, - ACT_COVER_MED = 0x4, - ACT_COVER_LOW = 0x5, - ACT_WALK = 0x6, - ACT_WALK_AIM = 0x7, - ACT_WALK_CROUCH = 0x8, - ACT_WALK_CROUCH_AIM = 0x9, - ACT_RUN = 0xa, - ACT_RUN_AIM = 0xb, - ACT_RUN_CROUCH = 0xc, - ACT_RUN_CROUCH_AIM = 0xd, - ACT_RUN_PROTECTED = 0xe, - ACT_SCRIPT_CUSTOM_MOVE = 0xf, - ACT_RANGE_ATTACK1 = 0x10, - ACT_RANGE_ATTACK2 = 0x11, - ACT_RANGE_ATTACK1_LOW = 0x12, - ACT_RANGE_ATTACK2_LOW = 0x13, - ACT_DIESIMPLE = 0x14, - ACT_DIEBACKWARD = 0x15, - ACT_DIEFORWARD = 0x16, - ACT_DIEVIOLENT = 0x17, - ACT_DIERAGDOLL = 0x18, - ACT_FLY = 0x19, - ACT_HOVER = 0x1a, - ACT_GLIDE = 0x1b, - ACT_SWIM = 0x1c, - ACT_JUMP = 0x1d, - ACT_HOP = 0x1e, - ACT_LEAP = 0x1f, - ACT_LAND = 0x20, - ACT_CLIMB_UP = 0x21, - ACT_CLIMB_DOWN = 0x22, - ACT_CLIMB_DISMOUNT = 0x23, - ACT_SHIPLADDER_UP = 0x24, - ACT_SHIPLADDER_DOWN = 0x25, - ACT_STRAFE_LEFT = 0x26, - ACT_STRAFE_RIGHT = 0x27, - ACT_ROLL_LEFT = 0x28, - ACT_ROLL_RIGHT = 0x29, - ACT_TURN_LEFT = 0x2a, - ACT_TURN_RIGHT = 0x2b, - ACT_CROUCH = 0x2c, - ACT_CROUCHIDLE = 0x2d, - ACT_STAND = 0x2e, - ACT_USE = 0x2f, - ACT_ALIEN_BURROW_IDLE = 0x30, - ACT_ALIEN_BURROW_OUT = 0x31, - ACT_SIGNAL1 = 0x32, - ACT_SIGNAL2 = 0x33, - ACT_SIGNAL3 = 0x34, - ACT_SIGNAL_ADVANCE = 0x35, - ACT_SIGNAL_FORWARD = 0x36, - ACT_SIGNAL_GROUP = 0x37, - ACT_SIGNAL_HALT = 0x38, - ACT_SIGNAL_LEFT = 0x39, - ACT_SIGNAL_RIGHT = 0x3a, - ACT_SIGNAL_TAKECOVER = 0x3b, - ACT_LOOKBACK_RIGHT = 0x3c, - ACT_LOOKBACK_LEFT = 0x3d, - ACT_COWER = 0x3e, - ACT_SMALL_FLINCH = 0x3f, - ACT_BIG_FLINCH = 0x40, - ACT_MELEE_ATTACK1 = 0x41, - ACT_MELEE_ATTACK2 = 0x42, - ACT_RELOAD = 0x43, - ACT_RELOAD_START = 0x44, - ACT_RELOAD_FINISH = 0x45, - ACT_RELOAD_LOW = 0x46, - ACT_ARM = 0x47, - ACT_DISARM = 0x48, - ACT_DROP_WEAPON = 0x49, - ACT_DROP_WEAPON_SHOTGUN = 0x4a, - ACT_PICKUP_GROUND = 0x4b, - ACT_PICKUP_RACK = 0x4c, - ACT_IDLE_ANGRY = 0x4d, - ACT_IDLE_RELAXED = 0x4e, - ACT_IDLE_STIMULATED = 0x4f, - ACT_IDLE_AGITATED = 0x50, - ACT_IDLE_STEALTH = 0x51, - ACT_IDLE_HURT = 0x52, - ACT_WALK_RELAXED = 0x53, - ACT_WALK_STIMULATED = 0x54, - ACT_WALK_AGITATED = 0x55, - ACT_WALK_STEALTH = 0x56, - ACT_RUN_RELAXED = 0x57, - ACT_RUN_STIMULATED = 0x58, - ACT_RUN_AGITATED = 0x59, - ACT_RUN_STEALTH = 0x5a, - ACT_IDLE_AIM_RELAXED = 0x5b, - ACT_IDLE_AIM_STIMULATED = 0x5c, - ACT_IDLE_AIM_AGITATED = 0x5d, - ACT_IDLE_AIM_STEALTH = 0x5e, - ACT_WALK_AIM_RELAXED = 0x5f, - ACT_WALK_AIM_STIMULATED = 0x60, - ACT_WALK_AIM_AGITATED = 0x61, - ACT_WALK_AIM_STEALTH = 0x62, - ACT_RUN_AIM_RELAXED = 0x63, - ACT_RUN_AIM_STIMULATED = 0x64, - ACT_RUN_AIM_AGITATED = 0x65, - ACT_RUN_AIM_STEALTH = 0x66, - ACT_CROUCHIDLE_STIMULATED = 0x67, - ACT_CROUCHIDLE_AIM_STIMULATED = 0x68, - ACT_CROUCHIDLE_AGITATED = 0x69, - ACT_WALK_HURT = 0x6a, - ACT_RUN_HURT = 0x6b, - ACT_SPECIAL_ATTACK1 = 0x6c, - ACT_SPECIAL_ATTACK2 = 0x6d, - ACT_COMBAT_IDLE = 0x6e, - ACT_WALK_SCARED = 0x6f, - ACT_RUN_SCARED = 0x70, - ACT_VICTORY_DANCE = 0x71, - ACT_DIE_HEADSHOT = 0x72, - ACT_DIE_CHESTSHOT = 0x73, - ACT_DIE_GUTSHOT = 0x74, - ACT_DIE_BACKSHOT = 0x75, - ACT_FLINCH_HEAD = 0x76, - ACT_FLINCH_CHEST = 0x77, - ACT_FLINCH_STOMACH = 0x78, - ACT_FLINCH_LEFTARM = 0x79, - ACT_FLINCH_RIGHTARM = 0x7a, - ACT_FLINCH_LEFTLEG = 0x7b, - ACT_FLINCH_RIGHTLEG = 0x7c, - ACT_FLINCH_PHYSICS = 0x7d, - ACT_FLINCH_HEAD_BACK = 0x7e, - ACT_FLINCH_CHEST_BACK = 0x7f, - ACT_FLINCH_STOMACH_BACK = 0x80, - ACT_FLINCH_CROUCH_FRONT = 0x81, - ACT_FLINCH_CROUCH_BACK = 0x82, - ACT_FLINCH_CROUCH_LEFT = 0x83, - ACT_FLINCH_CROUCH_RIGHT = 0x84, - ACT_IDLE_ON_FIRE = 0x85, - ACT_WALK_ON_FIRE = 0x86, - ACT_RUN_ON_FIRE = 0x87, - ACT_180_LEFT = 0x89, - ACT_180_RIGHT = 0x8a, - ACT_90_LEFT = 0x8b, - ACT_90_RIGHT = 0x8c, - ACT_STEP_LEFT = 0x8d, - ACT_STEP_RIGHT = 0x8e, - ACT_STEP_BACK = 0x8f, - ACT_STEP_FORE = 0x90, - ACT_GESTURE_RANGE_ATTACK1 = 0x91, - ACT_GESTURE_RANGE_ATTACK2 = 0x92, - ACT_GESTURE_MELEE_ATTACK1 = 0x93, - ACT_GESTURE_MELEE_ATTACK2 = 0x94, - ACT_GESTURE_RANGE_ATTACK1_LOW = 0x95, - ACT_GESTURE_RANGE_ATTACK2_LOW = 0x96, - ACT_MELEE_ATTACK_SWING_GESTURE = 0x97, - ACT_GESTURE_SMALL_FLINCH = 0x98, - ACT_GESTURE_BIG_FLINCH = 0x99, - ACT_GESTURE_FLINCH_BLAST = 0x9a, - ACT_GESTURE_FLINCH_BLAST_SHOTGUN = 0x9b, - ACT_GESTURE_FLINCH_BLAST_DAMAGED = 0x9c, - ACT_GESTURE_FLINCH_BLAST_DAMAGED_SHOTGUN = 0x9d, - ACT_GESTURE_FLINCH_HEAD = 0x9e, - ACT_GESTURE_FLINCH_CHEST = 0x9f, - ACT_GESTURE_FLINCH_STOMACH = 0xa0, - ACT_GESTURE_FLINCH_LEFTARM = 0xa1, - ACT_GESTURE_FLINCH_RIGHTARM = 0xa2, - ACT_GESTURE_FLINCH_LEFTLEG = 0xa3, - ACT_GESTURE_FLINCH_RIGHTLEG = 0xa4, - ACT_GESTURE_TURN_LEFT = 0xa5, - ACT_GESTURE_TURN_RIGHT = 0xa6, - ACT_GESTURE_TURN_LEFT45 = 0xa7, - ACT_GESTURE_TURN_RIGHT45 = 0xa8, - ACT_GESTURE_TURN_LEFT90 = 0xa9, - ACT_GESTURE_TURN_RIGHT90 = 0xaa, - ACT_GESTURE_TURN_LEFT45_FLAT = 0xab, - ACT_GESTURE_TURN_RIGHT45_FLAT = 0xac, - ACT_GESTURE_TURN_LEFT90_FLAT = 0xad, - ACT_GESTURE_TURN_RIGHT90_FLAT = 0xae, - ACT_BARNACLE_HIT = 0xaf, - ACT_BARNACLE_PULL = 0xb0, - ACT_BARNACLE_CHOMP = 0xb1, - ACT_BARNACLE_CHEW = 0xb2, - ACT_DO_NOT_DISTURB = 0xb3, - ACT_SPECIFIC_SEQUENCE = 0xb4, - ACT_VM_DEPLOY = 0xb5, - ACT_VM_RELOAD_EMPTY = 0xb6, - ACT_VM_DRAW = 0xb7, - ACT_VM_HOLSTER = 0xb8, - ACT_VM_IDLE = 0xb9, - ACT_VM_FIDGET = 0xba, - ACT_VM_PULLBACK = 0xbb, - ACT_VM_PULLBACK_HIGH = 0xbc, - ACT_VM_PULLBACK_LOW = 0xbd, - ACT_VM_THROW = 0xbe, - ACT_VM_DROP = 0xbf, - ACT_VM_PULLPIN = 0xc0, - ACT_VM_PRIMARYATTACK = 0xc1, - ACT_VM_SECONDARYATTACK = 0xc2, - ACT_VM_RELOAD = 0xc3, - ACT_VM_DRYFIRE = 0xc4, - ACT_VM_HITLEFT = 0xc5, - ACT_VM_HITLEFT2 = 0xc6, - ACT_VM_HITRIGHT = 0xc7, - ACT_VM_HITRIGHT2 = 0xc8, - ACT_VM_HITCENTER = 0xc9, - ACT_VM_HITCENTER2 = 0xca, - ACT_VM_MISSLEFT = 0xcb, - ACT_VM_MISSLEFT2 = 0xcc, - ACT_VM_MISSRIGHT = 0xcd, - ACT_VM_MISSRIGHT2 = 0xce, - ACT_VM_MISSCENTER = 0xcf, - ACT_VM_MISSCENTER2 = 0xd0, - ACT_VM_HAULBACK = 0xd1, - ACT_VM_SWINGHARD = 0xd2, - ACT_VM_SWINGMISS = 0xd3, - ACT_VM_SWINGHIT = 0xd4, - ACT_VM_IDLE_TO_LOWERED = 0xd5, - ACT_VM_IDLE_LOWERED = 0xd6, - ACT_VM_LOWERED_TO_IDLE = 0xd7, - ACT_VM_RECOIL1 = 0xd8, - ACT_VM_RECOIL2 = 0xd9, - ACT_VM_RECOIL3 = 0xda, - ACT_VM_PICKUP = 0xdb, - ACT_VM_RELEASE = 0xdc, - ACT_VM_MAUL_LOOP = 0xdd, - ACT_VM_ATTACH_SILENCER = 0xde, - ACT_VM_DETACH_SILENCER = 0xdf, - ACT_SLAM_STICKWALL_IDLE = 0xe0, - ACT_SLAM_STICKWALL_ND_IDLE = 0xe1, - ACT_SLAM_STICKWALL_ATTACH = 0xe2, - ACT_SLAM_STICKWALL_ATTACH2 = 0xe3, - ACT_SLAM_STICKWALL_ND_ATTACH = 0xe4, - ACT_SLAM_STICKWALL_ND_ATTACH2 = 0xe5, - ACT_SLAM_STICKWALL_DETONATE = 0xe6, - ACT_SLAM_STICKWALL_DETONATOR_HOLSTER = 0xe7, - ACT_SLAM_STICKWALL_DRAW = 0xe8, - ACT_SLAM_STICKWALL_ND_DRAW = 0xe9, - ACT_SLAM_STICKWALL_TO_THROW = 0xea, - ACT_SLAM_STICKWALL_TO_THROW_ND = 0xeb, - ACT_SLAM_STICKWALL_TO_TRIPMINE_ND = 0xec, - ACT_SLAM_THROW_IDLE = 0xed, - ACT_SLAM_THROW_ND_IDLE = 0xee, - ACT_SLAM_THROW_THROW = 0xef, - ACT_SLAM_THROW_THROW2 = 0xf0, - ACT_SLAM_THROW_THROW_ND = 0xf1, - ACT_SLAM_THROW_THROW_ND2 = 0xf2, - ACT_SLAM_THROW_DRAW = 0xf3, - ACT_SLAM_THROW_ND_DRAW = 0xf4, - ACT_SLAM_THROW_TO_STICKWALL = 0xf5, - ACT_SLAM_THROW_TO_STICKWALL_ND = 0xf6, - ACT_SLAM_THROW_DETONATE = 0xf7, - ACT_SLAM_THROW_DETONATOR_HOLSTER = 0xf8, - ACT_SLAM_THROW_TO_TRIPMINE_ND = 0xf9, - ACT_SLAM_TRIPMINE_IDLE = 0xfa, - ACT_SLAM_TRIPMINE_DRAW = 0xfb, - ACT_SLAM_TRIPMINE_ATTACH = 0xfc, - ACT_SLAM_TRIPMINE_ATTACH2 = 0xfd, - ACT_SLAM_TRIPMINE_TO_STICKWALL_ND = 0xfe, - ACT_SLAM_TRIPMINE_TO_THROW_ND = 0xff, - ACT_SLAM_DETONATOR_IDLE = 0x100, - ACT_SLAM_DETONATOR_DRAW = 0x101, - ACT_SLAM_DETONATOR_DETONATE = 0x102, - ACT_SLAM_DETONATOR_HOLSTER = 0x103, - ACT_SLAM_DETONATOR_STICKWALL_DRAW = 0x104, - ACT_SLAM_DETONATOR_THROW_DRAW = 0x105, - ACT_SHOTGUN_RELOAD_START = 0x106, - ACT_SHOTGUN_RELOAD_FINISH = 0x107, - ACT_SHOTGUN_PUMP = 0x108, - ACT_SMG2_IDLE2 = 0x109, - ACT_SMG2_FIRE2 = 0x10a, - ACT_SMG2_DRAW2 = 0x10b, - ACT_SMG2_RELOAD2 = 0x10c, - ACT_SMG2_DRYFIRE2 = 0x10d, - ACT_SMG2_TOAUTO = 0x10e, - ACT_SMG2_TOBURST = 0x10f, - ACT_PHYSCANNON_UPGRADE = 0x110, - ACT_RANGE_ATTACK_AR1 = 0x111, - ACT_RANGE_ATTACK_AR2 = 0x112, - ACT_RANGE_ATTACK_AR2_LOW = 0x113, - ACT_RANGE_ATTACK_AR2_GRENADE = 0x114, - ACT_RANGE_ATTACK_HMG1 = 0x115, - ACT_RANGE_ATTACK_ML = 0x116, - ACT_RANGE_ATTACK_SMG1 = 0x117, - ACT_RANGE_ATTACK_SMG1_LOW = 0x118, - ACT_RANGE_ATTACK_SMG2 = 0x119, - ACT_RANGE_ATTACK_SHOTGUN = 0x11a, - ACT_RANGE_ATTACK_SHOTGUN_LOW = 0x11b, - ACT_RANGE_ATTACK_PISTOL = 0x11c, - ACT_RANGE_ATTACK_PISTOL_LOW = 0x11d, - ACT_RANGE_ATTACK_SLAM = 0x11e, - ACT_RANGE_ATTACK_TRIPWIRE = 0x11f, - ACT_RANGE_ATTACK_THROW = 0x120, - ACT_RANGE_ATTACK_SNIPER_RIFLE = 0x121, - ACT_RANGE_ATTACK_RPG = 0x122, - ACT_MELEE_ATTACK_SWING = 0x123, - ACT_RANGE_AIM_LOW = 0x124, - ACT_RANGE_AIM_SMG1_LOW = 0x125, - ACT_RANGE_AIM_PISTOL_LOW = 0x126, - ACT_RANGE_AIM_AR2_LOW = 0x127, - ACT_COVER_PISTOL_LOW = 0x128, - ACT_COVER_SMG1_LOW = 0x129, - ACT_GESTURE_RANGE_ATTACK_AR1 = 0x12a, - ACT_GESTURE_RANGE_ATTACK_AR2 = 0x12b, - ACT_GESTURE_RANGE_ATTACK_AR2_GRENADE = 0x12c, - ACT_GESTURE_RANGE_ATTACK_HMG1 = 0x12d, - ACT_GESTURE_RANGE_ATTACK_ML = 0x12e, - ACT_GESTURE_RANGE_ATTACK_SMG1 = 0x12f, - ACT_GESTURE_RANGE_ATTACK_SMG1_LOW = 0x130, - ACT_GESTURE_RANGE_ATTACK_SMG2 = 0x131, - ACT_GESTURE_RANGE_ATTACK_SHOTGUN = 0x132, - ACT_GESTURE_RANGE_ATTACK_PISTOL = 0x133, - ACT_GESTURE_RANGE_ATTACK_PISTOL_LOW = 0x134, - ACT_GESTURE_RANGE_ATTACK_SLAM = 0x135, - ACT_GESTURE_RANGE_ATTACK_TRIPWIRE = 0x136, - ACT_GESTURE_RANGE_ATTACK_THROW = 0x137, - ACT_GESTURE_RANGE_ATTACK_SNIPER_RIFLE = 0x138, - ACT_GESTURE_MELEE_ATTACK_SWING = 0x139, - ACT_IDLE_RIFLE = 0x13a, - ACT_IDLE_SMG1 = 0x13b, - ACT_IDLE_ANGRY_SMG1 = 0x13c, - ACT_IDLE_PISTOL = 0x13d, - ACT_IDLE_ANGRY_PISTOL = 0x13e, - ACT_IDLE_ANGRY_SHOTGUN = 0x13f, - ACT_IDLE_STEALTH_PISTOL = 0x140, - ACT_IDLE_PACKAGE = 0x141, - ACT_WALK_PACKAGE = 0x142, - ACT_IDLE_SUITCASE = 0x143, - ACT_WALK_SUITCASE = 0x144, - ACT_IDLE_SMG1_RELAXED = 0x145, - ACT_IDLE_SMG1_STIMULATED = 0x146, - ACT_WALK_RIFLE_RELAXED = 0x147, - ACT_RUN_RIFLE_RELAXED = 0x148, - ACT_WALK_RIFLE_STIMULATED = 0x149, - ACT_RUN_RIFLE_STIMULATED = 0x14a, - ACT_IDLE_AIM_RIFLE_STIMULATED = 0x14b, - ACT_WALK_AIM_RIFLE_STIMULATED = 0x14c, - ACT_RUN_AIM_RIFLE_STIMULATED = 0x14d, - ACT_IDLE_SHOTGUN_RELAXED = 0x14e, - ACT_IDLE_SHOTGUN_STIMULATED = 0x14f, - ACT_IDLE_SHOTGUN_AGITATED = 0x150, - ACT_WALK_ANGRY = 0x151, - ACT_POLICE_HARASS1 = 0x152, - ACT_POLICE_HARASS2 = 0x153, - ACT_IDLE_MANNEDGUN = 0x154, - ACT_IDLE_MELEE = 0x155, - ACT_IDLE_ANGRY_MELEE = 0x156, - ACT_IDLE_RPG_RELAXED = 0x157, - ACT_IDLE_RPG = 0x158, - ACT_IDLE_ANGRY_RPG = 0x159, - ACT_COVER_LOW_RPG = 0x15a, - ACT_WALK_RPG = 0x15b, - ACT_RUN_RPG = 0x15c, - ACT_WALK_CROUCH_RPG = 0x15d, - ACT_RUN_CROUCH_RPG = 0x15e, - ACT_WALK_RPG_RELAXED = 0x15f, - ACT_RUN_RPG_RELAXED = 0x160, - ACT_WALK_RIFLE = 0x161, - ACT_WALK_AIM_RIFLE = 0x162, - ACT_WALK_CROUCH_RIFLE = 0x163, - ACT_WALK_CROUCH_AIM_RIFLE = 0x164, - ACT_RUN_RIFLE = 0x165, - ACT_RUN_AIM_RIFLE = 0x166, - ACT_RUN_CROUCH_RIFLE = 0x167, - ACT_RUN_CROUCH_AIM_RIFLE = 0x168, - ACT_RUN_STEALTH_PISTOL = 0x169, - ACT_WALK_AIM_SHOTGUN = 0x16a, - ACT_RUN_AIM_SHOTGUN = 0x16b, - ACT_WALK_PISTOL = 0x16c, - ACT_RUN_PISTOL = 0x16d, - ACT_WALK_AIM_PISTOL = 0x16e, - ACT_RUN_AIM_PISTOL = 0x16f, - ACT_WALK_STEALTH_PISTOL = 0x170, - ACT_WALK_AIM_STEALTH_PISTOL = 0x171, - ACT_RUN_AIM_STEALTH_PISTOL = 0x172, - ACT_RELOAD_PISTOL = 0x173, - ACT_RELOAD_PISTOL_LOW = 0x174, - ACT_RELOAD_SMG1 = 0x175, - ACT_RELOAD_SMG1_LOW = 0x176, - ACT_RELOAD_SHOTGUN = 0x177, - ACT_RELOAD_SHOTGUN_LOW = 0x178, - ACT_GESTURE_RELOAD = 0x179, - ACT_GESTURE_RELOAD_PISTOL = 0x17a, - ACT_GESTURE_RELOAD_SMG1 = 0x17b, - ACT_GESTURE_RELOAD_SHOTGUN = 0x17c, - ACT_BUSY_LEAN_LEFT = 0x17d, - ACT_BUSY_LEAN_LEFT_ENTRY = 0x17e, - ACT_BUSY_LEAN_LEFT_EXIT = 0x17f, - ACT_BUSY_LEAN_BACK = 0x180, - ACT_BUSY_LEAN_BACK_ENTRY = 0x181, - ACT_BUSY_LEAN_BACK_EXIT = 0x182, - ACT_BUSY_SIT_GROUND = 0x183, - ACT_BUSY_SIT_GROUND_ENTRY = 0x184, - ACT_BUSY_SIT_GROUND_EXIT = 0x185, - ACT_BUSY_SIT_CHAIR = 0x186, - ACT_BUSY_SIT_CHAIR_ENTRY = 0x187, - ACT_BUSY_SIT_CHAIR_EXIT = 0x188, - ACT_BUSY_STAND = 0x189, - ACT_BUSY_QUEUE = 0x18a, - ACT_DUCK_DODGE = 0x18b, - ACT_DIE_BARNACLE_SWALLOW = 0x18c, - ACT_GESTURE_BARNACLE_STRANGLE = 0x18d, - ACT_DIE_FRONTSIDE = 0x192, - ACT_DIE_RIGHTSIDE = 0x193, - ACT_DIE_BACKSIDE = 0x194, - ACT_DIE_LEFTSIDE = 0x195, - ACT_DIE_CROUCH_FRONTSIDE = 0x196, - ACT_DIE_CROUCH_RIGHTSIDE = 0x197, - ACT_DIE_CROUCH_BACKSIDE = 0x198, - ACT_DIE_CROUCH_LEFTSIDE = 0x199, - ACT_DIE_INCAP = 0x19a, - ACT_DIE_STANDING = 0x19b, - ACT_OPEN_DOOR = 0x19c, - ACT_DI_ALYX_ZOMBIE_MELEE = 0x19d, - ACT_DI_ALYX_ZOMBIE_TORSO_MELEE = 0x19e, - ACT_DI_ALYX_HEADCRAB_MELEE = 0x19f, - ACT_DI_ALYX_ANTLION = 0x1a0, - ACT_DI_ALYX_ZOMBIE_SHOTGUN64 = 0x1a1, - ACT_DI_ALYX_ZOMBIE_SHOTGUN26 = 0x1a2, - ACT_READINESS_RELAXED_TO_STIMULATED = 0x1a3, - ACT_READINESS_RELAXED_TO_STIMULATED_WALK = 0x1a4, - ACT_READINESS_AGITATED_TO_STIMULATED = 0x1a5, - ACT_READINESS_STIMULATED_TO_RELAXED = 0x1a6, - ACT_READINESS_PISTOL_RELAXED_TO_STIMULATED = 0x1a7, - ACT_READINESS_PISTOL_RELAXED_TO_STIMULATED_WALK = 0x1a8, - ACT_READINESS_PISTOL_AGITATED_TO_STIMULATED = 0x1a9, - ACT_READINESS_PISTOL_STIMULATED_TO_RELAXED = 0x1aa, - ACT_IDLE_CARRY = 0x1ab, - ACT_WALK_CARRY = 0x1ac, - ACT_STARTDYING = 0x1ad, - ACT_DYINGLOOP = 0x1ae, - ACT_DYINGTODEAD = 0x1af, - ACT_RIDE_MANNED_GUN = 0x1b0, - ACT_VM_SPRINT_ENTER = 0x1b1, - ACT_VM_SPRINT_IDLE = 0x1b2, - ACT_VM_SPRINT_LEAVE = 0x1b3, - ACT_FIRE_START = 0x1b4, - ACT_FIRE_LOOP = 0x1b5, - ACT_FIRE_END = 0x1b6, - ACT_CROUCHING_GRENADEIDLE = 0x1b7, - ACT_CROUCHING_GRENADEREADY = 0x1b8, - ACT_CROUCHING_PRIMARYATTACK = 0x1b9, - ACT_OVERLAY_GRENADEIDLE = 0x1ba, - ACT_OVERLAY_GRENADEREADY = 0x1bb, - ACT_OVERLAY_PRIMARYATTACK = 0x1bc, - ACT_OVERLAY_SHIELD_UP = 0x1bd, - ACT_OVERLAY_SHIELD_DOWN = 0x1be, - ACT_OVERLAY_SHIELD_UP_IDLE = 0x1bf, - ACT_OVERLAY_SHIELD_ATTACK = 0x1c0, - ACT_OVERLAY_SHIELD_KNOCKBACK = 0x1c1, - ACT_SHIELD_UP = 0x1c2, - ACT_SHIELD_DOWN = 0x1c3, - ACT_SHIELD_UP_IDLE = 0x1c4, - ACT_SHIELD_ATTACK = 0x1c5, - ACT_SHIELD_KNOCKBACK = 0x1c6, - ACT_CROUCHING_SHIELD_UP = 0x1c7, - ACT_CROUCHING_SHIELD_DOWN = 0x1c8, - ACT_CROUCHING_SHIELD_UP_IDLE = 0x1c9, - ACT_CROUCHING_SHIELD_ATTACK = 0x1ca, - ACT_CROUCHING_SHIELD_KNOCKBACK = 0x1cb, - ACT_TURNRIGHT45 = 0x1cc, - ACT_TURNLEFT45 = 0x1cd, - ACT_TURN = 0x1ce, - ACT_OBJ_ASSEMBLING = 0x1cf, - ACT_OBJ_DISMANTLING = 0x1d0, - ACT_OBJ_STARTUP = 0x1d1, - ACT_OBJ_RUNNING = 0x1d2, - ACT_OBJ_IDLE = 0x1d3, - ACT_OBJ_PLACING = 0x1d4, - ACT_OBJ_DETERIORATING = 0x1d5, - ACT_OBJ_UPGRADING = 0x1d6, - ACT_DEPLOY = 0x1d7, - ACT_DEPLOY_IDLE = 0x1d8, - ACT_UNDEPLOY = 0x1d9, - ACT_CROSSBOW_DRAW_UNLOADED = 0x1da, - ACT_GAUSS_SPINUP = 0x1db, - ACT_GAUSS_SPINCYCLE = 0x1dc, - ACT_VM_PRIMARYATTACK_SILENCED = 0x1dd, - ACT_VM_RELOAD_SILENCED = 0x1de, - ACT_VM_DRYFIRE_SILENCED = 0x1df, - ACT_VM_IDLE_SILENCED = 0x1e0, - ACT_VM_DRAW_SILENCED = 0x1e1, - ACT_VM_IDLE_EMPTY_LEFT = 0x1e2, - ACT_VM_DRYFIRE_LEFT = 0x1e3, - ACT_VM_IS_DRAW = 0x1e4, - ACT_VM_IS_HOLSTER = 0x1e5, - ACT_VM_IS_IDLE = 0x1e6, - ACT_VM_IS_PRIMARYATTACK = 0x1e7, - ACT_PLAYER_IDLE_FIRE = 0x1e8, - ACT_PLAYER_CROUCH_FIRE = 0x1e9, - ACT_PLAYER_CROUCH_WALK_FIRE = 0x1ea, - ACT_PLAYER_WALK_FIRE = 0x1eb, - ACT_PLAYER_RUN_FIRE = 0x1ec, - ACT_IDLETORUN = 0x1ed, - ACT_RUNTOIDLE = 0x1ee, - ACT_VM_DRAW_DEPLOYED = 0x1ef, - ACT_HL2MP_IDLE_MELEE = 0x1f0, - ACT_HL2MP_RUN_MELEE = 0x1f1, - ACT_HL2MP_IDLE_CROUCH_MELEE = 0x1f2, - ACT_HL2MP_WALK_CROUCH_MELEE = 0x1f3, - ACT_HL2MP_GESTURE_RANGE_ATTACK_MELEE = 0x1f4, - ACT_HL2MP_GESTURE_RELOAD_MELEE = 0x1f5, - ACT_HL2MP_JUMP_MELEE = 0x1f6, - ACT_MP_STAND_IDLE = 0x1f7, - ACT_MP_CROUCH_IDLE = 0x1f8, - ACT_MP_CROUCH_DEPLOYED_IDLE = 0x1f9, - ACT_MP_CROUCH_DEPLOYED = 0x1fa, - ACT_MP_DEPLOYED_IDLE = 0x1fb, - ACT_MP_RUN = 0x1fc, - ACT_MP_WALK = 0x1fd, - ACT_MP_AIRWALK = 0x1fe, - ACT_MP_CROUCHWALK = 0x1ff, - ACT_MP_SPRINT = 0x200, - ACT_MP_JUMP = 0x201, - ACT_MP_JUMP_START = 0x202, - ACT_MP_JUMP_FLOAT = 0x203, - ACT_MP_JUMP_LAND = 0x204, - ACT_MP_DOUBLEJUMP = 0x205, - ACT_MP_SWIM = 0x206, - ACT_MP_DEPLOYED = 0x207, - ACT_MP_SWIM_DEPLOYED = 0x208, - ACT_MP_VCD = 0x209, - ACT_MP_ATTACK_STAND_PRIMARYFIRE = 0x20a, - ACT_MP_ATTACK_STAND_PRIMARYFIRE_DEPLOYED = 0x20b, - ACT_MP_ATTACK_STAND_SECONDARYFIRE = 0x20c, - ACT_MP_ATTACK_STAND_GRENADE = 0x20d, - ACT_MP_ATTACK_CROUCH_PRIMARYFIRE = 0x20e, - ACT_MP_ATTACK_CROUCH_PRIMARYFIRE_DEPLOYED = 0x20f, - ACT_MP_ATTACK_CROUCH_SECONDARYFIRE = 0x210, - ACT_MP_ATTACK_CROUCH_GRENADE = 0x211, - ACT_MP_ATTACK_SWIM_PRIMARYFIRE = 0x212, - ACT_MP_ATTACK_SWIM_SECONDARYFIRE = 0x213, - ACT_MP_ATTACK_SWIM_GRENADE = 0x214, - ACT_MP_ATTACK_AIRWALK_PRIMARYFIRE = 0x215, - ACT_MP_ATTACK_AIRWALK_SECONDARYFIRE = 0x216, - ACT_MP_ATTACK_AIRWALK_GRENADE = 0x217, - ACT_MP_RELOAD_STAND = 0x218, - ACT_MP_RELOAD_STAND_LOOP = 0x219, - ACT_MP_RELOAD_STAND_END = 0x21a, - ACT_MP_RELOAD_CROUCH = 0x21b, - ACT_MP_RELOAD_CROUCH_LOOP = 0x21c, - ACT_MP_RELOAD_CROUCH_END = 0x21d, - ACT_MP_RELOAD_SWIM = 0x21e, - ACT_MP_RELOAD_SWIM_LOOP = 0x21f, - ACT_MP_RELOAD_SWIM_END = 0x220, - ACT_MP_RELOAD_AIRWALK = 0x221, - ACT_MP_RELOAD_AIRWALK_LOOP = 0x222, - ACT_MP_RELOAD_AIRWALK_END = 0x223, - ACT_MP_ATTACK_STAND_PREFIRE = 0x224, - ACT_MP_ATTACK_STAND_POSTFIRE = 0x225, - ACT_MP_ATTACK_STAND_STARTFIRE = 0x226, - ACT_MP_ATTACK_CROUCH_PREFIRE = 0x227, - ACT_MP_ATTACK_CROUCH_POSTFIRE = 0x228, - ACT_MP_ATTACK_SWIM_PREFIRE = 0x229, - ACT_MP_ATTACK_SWIM_POSTFIRE = 0x22a, - ACT_MP_STAND_PRIMARY = 0x22b, - ACT_MP_CROUCH_PRIMARY = 0x22c, - ACT_MP_RUN_PRIMARY = 0x22d, - ACT_MP_WALK_PRIMARY = 0x22e, - ACT_MP_AIRWALK_PRIMARY = 0x22f, - ACT_MP_CROUCHWALK_PRIMARY = 0x230, - ACT_MP_JUMP_PRIMARY = 0x231, - ACT_MP_JUMP_START_PRIMARY = 0x232, - ACT_MP_JUMP_FLOAT_PRIMARY = 0x233, - ACT_MP_JUMP_LAND_PRIMARY = 0x234, - ACT_MP_SWIM_PRIMARY = 0x235, - ACT_MP_DEPLOYED_PRIMARY = 0x236, - ACT_MP_SWIM_DEPLOYED_PRIMARY = 0x237, - ACT_MP_ATTACK_STAND_PRIMARY = 0x238, - ACT_MP_ATTACK_STAND_PRIMARY_DEPLOYED = 0x239, - ACT_MP_ATTACK_CROUCH_PRIMARY = 0x23a, - ACT_MP_ATTACK_CROUCH_PRIMARY_DEPLOYED = 0x23b, - ACT_MP_ATTACK_SWIM_PRIMARY = 0x23c, - ACT_MP_ATTACK_AIRWALK_PRIMARY = 0x23d, - ACT_MP_RELOAD_STAND_PRIMARY = 0x23e, - ACT_MP_RELOAD_STAND_PRIMARY_LOOP = 0x23f, - ACT_MP_RELOAD_STAND_PRIMARY_END = 0x240, - ACT_MP_RELOAD_CROUCH_PRIMARY = 0x241, - ACT_MP_RELOAD_CROUCH_PRIMARY_LOOP = 0x242, - ACT_MP_RELOAD_CROUCH_PRIMARY_END = 0x243, - ACT_MP_RELOAD_SWIM_PRIMARY = 0x244, - ACT_MP_RELOAD_SWIM_PRIMARY_LOOP = 0x245, - ACT_MP_RELOAD_SWIM_PRIMARY_END = 0x246, - ACT_MP_RELOAD_AIRWALK_PRIMARY = 0x247, - ACT_MP_RELOAD_AIRWALK_PRIMARY_LOOP = 0x248, - ACT_MP_RELOAD_AIRWALK_PRIMARY_END = 0x249, - ACT_MP_ATTACK_STAND_GRENADE_PRIMARY = 0x24a, - ACT_MP_ATTACK_CROUCH_GRENADE_PRIMARY = 0x24b, - ACT_MP_ATTACK_SWIM_GRENADE_PRIMARY = 0x24c, - ACT_MP_ATTACK_AIRWALK_GRENADE_PRIMARY = 0x24d, - ACT_MP_STAND_SECONDARY = 0x24e, - ACT_MP_CROUCH_SECONDARY = 0x24f, - ACT_MP_RUN_SECONDARY = 0x250, - ACT_MP_WALK_SECONDARY = 0x251, - ACT_MP_AIRWALK_SECONDARY = 0x252, - ACT_MP_CROUCHWALK_SECONDARY = 0x253, - ACT_MP_JUMP_SECONDARY = 0x254, - ACT_MP_JUMP_START_SECONDARY = 0x255, - ACT_MP_JUMP_FLOAT_SECONDARY = 0x256, - ACT_MP_JUMP_LAND_SECONDARY = 0x257, - ACT_MP_SWIM_SECONDARY = 0x258, - ACT_MP_ATTACK_STAND_SECONDARY = 0x259, - ACT_MP_ATTACK_CROUCH_SECONDARY = 0x25a, - ACT_MP_ATTACK_SWIM_SECONDARY = 0x25b, - ACT_MP_ATTACK_AIRWALK_SECONDARY = 0x25c, - ACT_MP_RELOAD_STAND_SECONDARY = 0x25d, - ACT_MP_RELOAD_STAND_SECONDARY_LOOP = 0x25e, - ACT_MP_RELOAD_STAND_SECONDARY_END = 0x25f, - ACT_MP_RELOAD_CROUCH_SECONDARY = 0x260, - ACT_MP_RELOAD_CROUCH_SECONDARY_LOOP = 0x261, - ACT_MP_RELOAD_CROUCH_SECONDARY_END = 0x262, - ACT_MP_RELOAD_SWIM_SECONDARY = 0x263, - ACT_MP_RELOAD_SWIM_SECONDARY_LOOP = 0x264, - ACT_MP_RELOAD_SWIM_SECONDARY_END = 0x265, - ACT_MP_RELOAD_AIRWALK_SECONDARY = 0x266, - ACT_MP_RELOAD_AIRWALK_SECONDARY_LOOP = 0x267, - ACT_MP_RELOAD_AIRWALK_SECONDARY_END = 0x268, - ACT_MP_ATTACK_STAND_GRENADE_SECONDARY = 0x269, - ACT_MP_ATTACK_CROUCH_GRENADE_SECONDARY = 0x26a, - ACT_MP_ATTACK_SWIM_GRENADE_SECONDARY = 0x26b, - ACT_MP_ATTACK_AIRWALK_GRENADE_SECONDARY = 0x26c, - ACT_MP_STAND_MELEE = 0x26d, - ACT_MP_CROUCH_MELEE = 0x26e, - ACT_MP_RUN_MELEE = 0x26f, - ACT_MP_WALK_MELEE = 0x270, - ACT_MP_AIRWALK_MELEE = 0x271, - ACT_MP_CROUCHWALK_MELEE = 0x272, - ACT_MP_JUMP_MELEE = 0x273, - ACT_MP_JUMP_START_MELEE = 0x274, - ACT_MP_JUMP_FLOAT_MELEE = 0x275, - ACT_MP_JUMP_LAND_MELEE = 0x276, - ACT_MP_SWIM_MELEE = 0x277, - ACT_MP_ATTACK_STAND_MELEE = 0x278, - ACT_MP_ATTACK_STAND_MELEE_SECONDARY = 0x279, - ACT_MP_ATTACK_CROUCH_MELEE = 0x27a, - ACT_MP_ATTACK_CROUCH_MELEE_SECONDARY = 0x27b, - ACT_MP_ATTACK_SWIM_MELEE = 0x27c, - ACT_MP_ATTACK_AIRWALK_MELEE = 0x27d, - ACT_MP_ATTACK_STAND_GRENADE_MELEE = 0x27e, - ACT_MP_ATTACK_CROUCH_GRENADE_MELEE = 0x27f, - ACT_MP_ATTACK_SWIM_GRENADE_MELEE = 0x280, - ACT_MP_ATTACK_AIRWALK_GRENADE_MELEE = 0x281, - ACT_MP_STAND_ITEM1 = 0x282, - ACT_MP_CROUCH_ITEM1 = 0x283, - ACT_MP_RUN_ITEM1 = 0x284, - ACT_MP_WALK_ITEM1 = 0x285, - ACT_MP_AIRWALK_ITEM1 = 0x286, - ACT_MP_CROUCHWALK_ITEM1 = 0x287, - ACT_MP_JUMP_ITEM1 = 0x288, - ACT_MP_JUMP_START_ITEM1 = 0x289, - ACT_MP_JUMP_FLOAT_ITEM1 = 0x28a, - ACT_MP_JUMP_LAND_ITEM1 = 0x28b, - ACT_MP_SWIM_ITEM1 = 0x28c, - ACT_MP_ATTACK_STAND_ITEM1 = 0x28d, - ACT_MP_ATTACK_STAND_ITEM1_SECONDARY = 0x28e, - ACT_MP_ATTACK_CROUCH_ITEM1 = 0x28f, - ACT_MP_ATTACK_CROUCH_ITEM1_SECONDARY = 0x290, - ACT_MP_ATTACK_SWIM_ITEM1 = 0x291, - ACT_MP_ATTACK_AIRWALK_ITEM1 = 0x292, - ACT_MP_STAND_ITEM2 = 0x293, - ACT_MP_CROUCH_ITEM2 = 0x294, - ACT_MP_RUN_ITEM2 = 0x295, - ACT_MP_WALK_ITEM2 = 0x296, - ACT_MP_AIRWALK_ITEM2 = 0x297, - ACT_MP_CROUCHWALK_ITEM2 = 0x298, - ACT_MP_JUMP_ITEM2 = 0x299, - ACT_MP_JUMP_START_ITEM2 = 0x29a, - ACT_MP_JUMP_FLOAT_ITEM2 = 0x29b, - ACT_MP_JUMP_LAND_ITEM2 = 0x29c, - ACT_MP_SWIM_ITEM2 = 0x29d, - ACT_MP_ATTACK_STAND_ITEM2 = 0x29e, - ACT_MP_ATTACK_STAND_ITEM2_SECONDARY = 0x29f, - ACT_MP_ATTACK_CROUCH_ITEM2 = 0x2a0, - ACT_MP_ATTACK_CROUCH_ITEM2_SECONDARY = 0x2a1, - ACT_MP_ATTACK_SWIM_ITEM2 = 0x2a2, - ACT_MP_ATTACK_AIRWALK_ITEM2 = 0x2a3, - ACT_MP_GESTURE_FLINCH = 0x2a4, - ACT_MP_GESTURE_FLINCH_PRIMARY = 0x2a5, - ACT_MP_GESTURE_FLINCH_SECONDARY = 0x2a6, - ACT_MP_GESTURE_FLINCH_MELEE = 0x2a7, - ACT_MP_GESTURE_FLINCH_ITEM1 = 0x2a8, - ACT_MP_GESTURE_FLINCH_ITEM2 = 0x2a9, - ACT_MP_GESTURE_FLINCH_HEAD = 0x2aa, - ACT_MP_GESTURE_FLINCH_CHEST = 0x2ab, - ACT_MP_GESTURE_FLINCH_STOMACH = 0x2ac, - ACT_MP_GESTURE_FLINCH_LEFTARM = 0x2ad, - ACT_MP_GESTURE_FLINCH_RIGHTARM = 0x2ae, - ACT_MP_GESTURE_FLINCH_LEFTLEG = 0x2af, - ACT_MP_GESTURE_FLINCH_RIGHTLEG = 0x2b0, - ACT_MP_GRENADE1_DRAW = 0x2b1, - ACT_MP_GRENADE1_IDLE = 0x2b2, - ACT_MP_GRENADE1_ATTACK = 0x2b3, - ACT_MP_GRENADE2_DRAW = 0x2b4, - ACT_MP_GRENADE2_IDLE = 0x2b5, - ACT_MP_GRENADE2_ATTACK = 0x2b6, - ACT_MP_PRIMARY_GRENADE1_DRAW = 0x2b7, - ACT_MP_PRIMARY_GRENADE1_IDLE = 0x2b8, - ACT_MP_PRIMARY_GRENADE1_ATTACK = 0x2b9, - ACT_MP_PRIMARY_GRENADE2_DRAW = 0x2ba, - ACT_MP_PRIMARY_GRENADE2_IDLE = 0x2bb, - ACT_MP_PRIMARY_GRENADE2_ATTACK = 0x2bc, - ACT_MP_SECONDARY_GRENADE1_DRAW = 0x2bd, - ACT_MP_SECONDARY_GRENADE1_IDLE = 0x2be, - ACT_MP_SECONDARY_GRENADE1_ATTACK = 0x2bf, - ACT_MP_SECONDARY_GRENADE2_DRAW = 0x2c0, - ACT_MP_SECONDARY_GRENADE2_IDLE = 0x2c1, - ACT_MP_SECONDARY_GRENADE2_ATTACK = 0x2c2, - ACT_MP_MELEE_GRENADE1_DRAW = 0x2c3, - ACT_MP_MELEE_GRENADE1_IDLE = 0x2c4, - ACT_MP_MELEE_GRENADE1_ATTACK = 0x2c5, - ACT_MP_MELEE_GRENADE2_DRAW = 0x2c6, - ACT_MP_MELEE_GRENADE2_IDLE = 0x2c7, - ACT_MP_MELEE_GRENADE2_ATTACK = 0x2c8, - ACT_MP_ITEM1_GRENADE1_DRAW = 0x2c9, - ACT_MP_ITEM1_GRENADE1_IDLE = 0x2ca, - ACT_MP_ITEM1_GRENADE1_ATTACK = 0x2cb, - ACT_MP_ITEM1_GRENADE2_DRAW = 0x2cc, - ACT_MP_ITEM1_GRENADE2_IDLE = 0x2cd, - ACT_MP_ITEM1_GRENADE2_ATTACK = 0x2ce, - ACT_MP_ITEM2_GRENADE1_DRAW = 0x2cf, - ACT_MP_ITEM2_GRENADE1_IDLE = 0x2d0, - ACT_MP_ITEM2_GRENADE1_ATTACK = 0x2d1, - ACT_MP_ITEM2_GRENADE2_DRAW = 0x2d2, - ACT_MP_ITEM2_GRENADE2_IDLE = 0x2d3, - ACT_MP_ITEM2_GRENADE2_ATTACK = 0x2d4, - ACT_MP_STAND_BUILDING = 0x2d5, - ACT_MP_CROUCH_BUILDING = 0x2d6, - ACT_MP_RUN_BUILDING = 0x2d7, - ACT_MP_WALK_BUILDING = 0x2d8, - ACT_MP_AIRWALK_BUILDING = 0x2d9, - ACT_MP_CROUCHWALK_BUILDING = 0x2da, - ACT_MP_JUMP_BUILDING = 0x2db, - ACT_MP_JUMP_START_BUILDING = 0x2dc, - ACT_MP_JUMP_FLOAT_BUILDING = 0x2dd, - ACT_MP_JUMP_LAND_BUILDING = 0x2de, - ACT_MP_SWIM_BUILDING = 0x2df, - ACT_MP_ATTACK_STAND_BUILDING = 0x2e0, - ACT_MP_ATTACK_CROUCH_BUILDING = 0x2e1, - ACT_MP_ATTACK_SWIM_BUILDING = 0x2e2, - ACT_MP_ATTACK_AIRWALK_BUILDING = 0x2e3, - ACT_MP_ATTACK_STAND_GRENADE_BUILDING = 0x2e4, - ACT_MP_ATTACK_CROUCH_GRENADE_BUILDING = 0x2e5, - ACT_MP_ATTACK_SWIM_GRENADE_BUILDING = 0x2e6, - ACT_MP_ATTACK_AIRWALK_GRENADE_BUILDING = 0x2e7, - ACT_MP_STAND_PDA = 0x2e8, - ACT_MP_CROUCH_PDA = 0x2e9, - ACT_MP_RUN_PDA = 0x2ea, - ACT_MP_WALK_PDA = 0x2eb, - ACT_MP_AIRWALK_PDA = 0x2ec, - ACT_MP_CROUCHWALK_PDA = 0x2ed, - ACT_MP_JUMP_PDA = 0x2ee, - ACT_MP_JUMP_START_PDA = 0x2ef, - ACT_MP_JUMP_FLOAT_PDA = 0x2f0, - ACT_MP_JUMP_LAND_PDA = 0x2f1, - ACT_MP_SWIM_PDA = 0x2f2, - ACT_MP_ATTACK_STAND_PDA = 0x2f3, - ACT_MP_ATTACK_SWIM_PDA = 0x2f4, - ACT_MP_GESTURE_VC_HANDMOUTH = 0x2f5, - ACT_MP_GESTURE_VC_FINGERPOINT = 0x2f6, - ACT_MP_GESTURE_VC_FISTPUMP = 0x2f7, - ACT_MP_GESTURE_VC_THUMBSUP = 0x2f8, - ACT_MP_GESTURE_VC_NODYES = 0x2f9, - ACT_MP_GESTURE_VC_NODNO = 0x2fa, - ACT_MP_GESTURE_VC_HANDMOUTH_PRIMARY = 0x2fb, - ACT_MP_GESTURE_VC_FINGERPOINT_PRIMARY = 0x2fc, - ACT_MP_GESTURE_VC_FISTPUMP_PRIMARY = 0x2fd, - ACT_MP_GESTURE_VC_THUMBSUP_PRIMARY = 0x2fe, - ACT_MP_GESTURE_VC_NODYES_PRIMARY = 0x2ff, - ACT_MP_GESTURE_VC_NODNO_PRIMARY = 0x300, - ACT_MP_GESTURE_VC_HANDMOUTH_SECONDARY = 0x301, - ACT_MP_GESTURE_VC_FINGERPOINT_SECONDARY = 0x302, - ACT_MP_GESTURE_VC_FISTPUMP_SECONDARY = 0x303, - ACT_MP_GESTURE_VC_THUMBSUP_SECONDARY = 0x304, - ACT_MP_GESTURE_VC_NODYES_SECONDARY = 0x305, - ACT_MP_GESTURE_VC_NODNO_SECONDARY = 0x306, - ACT_MP_GESTURE_VC_HANDMOUTH_MELEE = 0x307, - ACT_MP_GESTURE_VC_FINGERPOINT_MELEE = 0x308, - ACT_MP_GESTURE_VC_FISTPUMP_MELEE = 0x309, - ACT_MP_GESTURE_VC_THUMBSUP_MELEE = 0x30a, - ACT_MP_GESTURE_VC_NODYES_MELEE = 0x30b, - ACT_MP_GESTURE_VC_NODNO_MELEE = 0x30c, - ACT_MP_GESTURE_VC_HANDMOUTH_ITEM1 = 0x30d, - ACT_MP_GESTURE_VC_FINGERPOINT_ITEM1 = 0x30e, - ACT_MP_GESTURE_VC_FISTPUMP_ITEM1 = 0x30f, - ACT_MP_GESTURE_VC_THUMBSUP_ITEM1 = 0x310, - ACT_MP_GESTURE_VC_NODYES_ITEM1 = 0x311, - ACT_MP_GESTURE_VC_NODNO_ITEM1 = 0x312, - ACT_MP_GESTURE_VC_HANDMOUTH_ITEM2 = 0x313, - ACT_MP_GESTURE_VC_FINGERPOINT_ITEM2 = 0x314, - ACT_MP_GESTURE_VC_FISTPUMP_ITEM2 = 0x315, - ACT_MP_GESTURE_VC_THUMBSUP_ITEM2 = 0x316, - ACT_MP_GESTURE_VC_NODYES_ITEM2 = 0x317, - ACT_MP_GESTURE_VC_NODNO_ITEM2 = 0x318, - ACT_MP_GESTURE_VC_HANDMOUTH_BUILDING = 0x319, - ACT_MP_GESTURE_VC_FINGERPOINT_BUILDING = 0x31a, - ACT_MP_GESTURE_VC_FISTPUMP_BUILDING = 0x31b, - ACT_MP_GESTURE_VC_THUMBSUP_BUILDING = 0x31c, - ACT_MP_GESTURE_VC_NODYES_BUILDING = 0x31d, - ACT_MP_GESTURE_VC_NODNO_BUILDING = 0x31e, - ACT_MP_GESTURE_VC_HANDMOUTH_PDA = 0x31f, - ACT_MP_GESTURE_VC_FINGERPOINT_PDA = 0x320, - ACT_MP_GESTURE_VC_FISTPUMP_PDA = 0x321, - ACT_MP_GESTURE_VC_THUMBSUP_PDA = 0x322, - ACT_MP_GESTURE_VC_NODYES_PDA = 0x323, - ACT_MP_GESTURE_VC_NODNO_PDA = 0x324, - ACT_VM_UNUSABLE = 0x325, - ACT_VM_UNUSABLE_TO_USABLE = 0x326, - ACT_VM_USABLE_TO_UNUSABLE = 0x327, - ACT_PRIMARY_VM_DRAW = 0x328, - ACT_PRIMARY_VM_HOLSTER = 0x329, - ACT_PRIMARY_VM_IDLE = 0x32a, - ACT_PRIMARY_VM_PULLBACK = 0x32b, - ACT_PRIMARY_VM_PRIMARYATTACK = 0x32c, - ACT_PRIMARY_VM_SECONDARYATTACK = 0x32d, - ACT_PRIMARY_VM_RELOAD = 0x32e, - ACT_PRIMARY_VM_DRYFIRE = 0x32f, - ACT_PRIMARY_VM_IDLE_TO_LOWERED = 0x330, - ACT_PRIMARY_VM_IDLE_LOWERED = 0x331, - ACT_PRIMARY_VM_LOWERED_TO_IDLE = 0x332, - ACT_SECONDARY_VM_DRAW = 0x333, - ACT_SECONDARY_VM_HOLSTER = 0x334, - ACT_SECONDARY_VM_IDLE = 0x335, - ACT_SECONDARY_VM_PULLBACK = 0x336, - ACT_SECONDARY_VM_PRIMARYATTACK = 0x337, - ACT_SECONDARY_VM_SECONDARYATTACK = 0x338, - ACT_SECONDARY_VM_RELOAD = 0x339, - ACT_SECONDARY_VM_DRYFIRE = 0x33a, - ACT_SECONDARY_VM_IDLE_TO_LOWERED = 0x33b, - ACT_SECONDARY_VM_IDLE_LOWERED = 0x33c, - ACT_SECONDARY_VM_LOWERED_TO_IDLE = 0x33d, - ACT_MELEE_VM_DRAW = 0x33e, - ACT_MELEE_VM_HOLSTER = 0x33f, - ACT_MELEE_VM_IDLE = 0x340, - ACT_MELEE_VM_PULLBACK = 0x341, - ACT_MELEE_VM_PRIMARYATTACK = 0x342, - ACT_MELEE_VM_SECONDARYATTACK = 0x343, - ACT_MELEE_VM_RELOAD = 0x344, - ACT_MELEE_VM_DRYFIRE = 0x345, - ACT_MELEE_VM_IDLE_TO_LOWERED = 0x346, - ACT_MELEE_VM_IDLE_LOWERED = 0x347, - ACT_MELEE_VM_LOWERED_TO_IDLE = 0x348, - ACT_PDA_VM_DRAW = 0x349, - ACT_PDA_VM_HOLSTER = 0x34a, - ACT_PDA_VM_IDLE = 0x34b, - ACT_PDA_VM_PULLBACK = 0x34c, - ACT_PDA_VM_PRIMARYATTACK = 0x34d, - ACT_PDA_VM_SECONDARYATTACK = 0x34e, - ACT_PDA_VM_RELOAD = 0x34f, - ACT_PDA_VM_DRYFIRE = 0x350, - ACT_PDA_VM_IDLE_TO_LOWERED = 0x351, - ACT_PDA_VM_IDLE_LOWERED = 0x352, - ACT_PDA_VM_LOWERED_TO_IDLE = 0x353, - ACT_ITEM1_VM_DRAW = 0x354, - ACT_ITEM1_VM_HOLSTER = 0x355, - ACT_ITEM1_VM_IDLE = 0x356, - ACT_ITEM1_VM_PULLBACK = 0x357, - ACT_ITEM1_VM_PRIMARYATTACK = 0x358, - ACT_ITEM1_VM_SECONDARYATTACK = 0x359, - ACT_ITEM1_VM_RELOAD = 0x35a, - ACT_ITEM1_VM_DRYFIRE = 0x35b, - ACT_ITEM1_VM_IDLE_TO_LOWERED = 0x35c, - ACT_ITEM1_VM_IDLE_LOWERED = 0x35d, - ACT_ITEM1_VM_LOWERED_TO_IDLE = 0x35e, - ACT_ITEM2_VM_DRAW = 0x35f, - ACT_ITEM2_VM_HOLSTER = 0x360, - ACT_ITEM2_VM_IDLE = 0x361, - ACT_ITEM2_VM_PULLBACK = 0x362, - ACT_ITEM2_VM_PRIMARYATTACK = 0x363, - ACT_ITEM2_VM_SECONDARYATTACK = 0x364, - ACT_ITEM2_VM_RELOAD = 0x365, - ACT_ITEM2_VM_DRYFIRE = 0x366, - ACT_ITEM2_VM_IDLE_TO_LOWERED = 0x367, - ACT_ITEM2_VM_IDLE_LOWERED = 0x368, - ACT_ITEM2_VM_LOWERED_TO_IDLE = 0x369, - ACT_RELOAD_SUCCEED = 0x36a, - ACT_RELOAD_FAIL = 0x36b, - ACT_WALK_AIM_AUTOGUN = 0x36c, - ACT_RUN_AIM_AUTOGUN = 0x36d, - ACT_IDLE_AUTOGUN = 0x36e, - ACT_IDLE_AIM_AUTOGUN = 0x36f, - ACT_RELOAD_AUTOGUN = 0x370, - ACT_CROUCH_IDLE_AUTOGUN = 0x371, - ACT_RANGE_ATTACK_AUTOGUN = 0x372, - ACT_JUMP_AUTOGUN = 0x373, - ACT_IDLE_AIM_PISTOL = 0x374, - ACT_WALK_AIM_DUAL = 0x375, - ACT_RUN_AIM_DUAL = 0x376, - ACT_IDLE_DUAL = 0x377, - ACT_IDLE_AIM_DUAL = 0x378, - ACT_RELOAD_DUAL = 0x379, - ACT_CROUCH_IDLE_DUAL = 0x37a, - ACT_RANGE_ATTACK_DUAL = 0x37b, - ACT_JUMP_DUAL = 0x37c, - ACT_IDLE_AIM_SHOTGUN = 0x37d, - ACT_CROUCH_IDLE_SHOTGUN = 0x37e, - ACT_IDLE_AIM_RIFLE = 0x37f, - ACT_CROUCH_IDLE_RIFLE = 0x380, - ACT_RANGE_ATTACK_RIFLE = 0x381, - ACT_SLEEP = 0x382, - ACT_WAKE = 0x383, - ACT_FLICK_LEFT = 0x384, - ACT_FLICK_LEFT_MIDDLE = 0x385, - ACT_FLICK_RIGHT_MIDDLE = 0x386, - ACT_FLICK_RIGHT = 0x387, - ACT_SPINAROUND = 0x388, - ACT_PREP_TO_FIRE = 0x389, - ACT_FIRE = 0x38a, - ACT_FIRE_RECOVER = 0x38b, - ACT_SPRAY = 0x38c, - ACT_PREP_EXPLODE = 0x38d, - ACT_EXPLODE = 0x38e, - ACT_SCRIPT_CUSTOM_0 = 0x38f, - ACT_SCRIPT_CUSTOM_1 = 0x390, - ACT_SCRIPT_CUSTOM_2 = 0x391, - ACT_SCRIPT_CUSTOM_3 = 0x392, - ACT_SCRIPT_CUSTOM_4 = 0x393, - ACT_SCRIPT_CUSTOM_5 = 0x394, - ACT_SCRIPT_CUSTOM_6 = 0x395, - ACT_SCRIPT_CUSTOM_7 = 0x396, - ACT_SCRIPT_CUSTOM_8 = 0x397, - ACT_SCRIPT_CUSTOM_9 = 0x398, - ACT_SCRIPT_CUSTOM_10 = 0x399, - ACT_SCRIPT_CUSTOM_11 = 0x39a, - ACT_SCRIPT_CUSTOM_12 = 0x39b, - ACT_SCRIPT_CUSTOM_13 = 0x39c, - ACT_SCRIPT_CUSTOM_14 = 0x39d, - ACT_SCRIPT_CUSTOM_15 = 0x39e, - ACT_SCRIPT_CUSTOM_16 = 0x39f, - ACT_SCRIPT_CUSTOM_17 = 0x3a0, - ACT_SCRIPT_CUSTOM_18 = 0x3a1, - ACT_SCRIPT_CUSTOM_19 = 0x3a2, - ACT_SCRIPT_CUSTOM_20 = 0x3a3, - ACT_SCRIPT_CUSTOM_21 = 0x3a4, - ACT_SCRIPT_CUSTOM_22 = 0x3a5, - ACT_SCRIPT_CUSTOM_23 = 0x3a6, - ACT_SCRIPT_CUSTOM_24 = 0x3a7, - ACT_SCRIPT_CUSTOM_25 = 0x3a8, - ACT_SCRIPT_CUSTOM_26 = 0x3a9, - ACT_SCRIPT_CUSTOM_27 = 0x3aa, - ACT_SCRIPT_CUSTOM_28 = 0x3ab, - ACT_SCRIPT_CUSTOM_29 = 0x3ac, - ACT_SCRIPT_CUSTOM_30 = 0x3ad, - ACT_SCRIPT_CUSTOM_31 = 0x3ae, - ACT_VR_PISTOL_LAST_SHOT = 0x3af, - ACT_VR_PISTOL_SLIDE_RELEASE = 0x3b0, - ACT_VR_PISTOL_CLIP_OUT_CHAMBERED = 0x3b1, - ACT_VR_PISTOL_CLIP_OUT_SLIDE_BACK = 0x3b2, - ACT_VR_PISTOL_CLIP_IN_CHAMBERED = 0x3b3, - ACT_VR_PISTOL_CLIP_IN_SLIDE_BACK = 0x3b4, - ACT_VR_PISTOL_IDLE_SLIDE_BACK = 0x3b5, - ACT_VR_PISTOL_IDLE_SLIDE_BACK_CLIP_READY = 0x3b6, - ACT_RAGDOLL_RECOVERY_FRONT = 0x3b7, - ACT_RAGDOLL_RECOVERY_BACK = 0x3b8, - ACT_RAGDOLL_RECOVERY_LEFT = 0x3b9, - ACT_RAGDOLL_RECOVERY_RIGHT = 0x3ba, - ACT_GRABBITYGLOVES_GRAB = 0x3bb, - ACT_GRABBITYGLOVES_RELEASE = 0x3bc, - ACT_GRABBITYGLOVES_GRAB_IDLE = 0x3bd, - ACT_GRABBITYGLOVES_ACTIVE = 0x3be, - ACT_GRABBITYGLOVES_ACTIVE_IDLE = 0x3bf, - ACT_GRABBITYGLOVES_DEACTIVATE = 0x3c0, - ACT_GRABBITYGLOVES_PULL = 0x3c1, - ACT_HEADCRAB_SMOKE_BOMB = 0x3c2, - ACT_HEADCRAB_SPIT = 0x3c3, - ACT_ZOMBIE_TRIP = 0x3c4, - ACT_ZOMBIE_LUNGE = 0x3c5, - ACT_NEUTRAL_REF_POSE = 0x3c6, - ACT_ANTLION_SCUTTLE_FORWARD = 0x3c7, - ACT_ANTLION_SCUTTLE_BACK = 0x3c8, - ACT_ANTLION_SCUTTLE_LEFT = 0x3c9, - ACT_ANTLION_SCUTTLE_RIGHT = 0x3ca, - ACT_VR_PISTOL_EMPTY_CLIP_IN_SLIDE_BACK = 0x3cb, - ACT_VR_SHOTGUN_IDLE = 0x3cc, - ACT_VR_SHOTGUN_OPEN_CHAMBER = 0x3cd, - ACT_VR_SHOTGUN_RELOAD_1 = 0x3ce, - ACT_VR_SHOTGUN_RELOAD_2 = 0x3cf, - ACT_VR_SHOTGUN_RELOAD_3 = 0x3d0, - ACT_VR_SHOTGUN_CLOSE_CHAMBER = 0x3d1, - ACT_VR_SHOTGUN_TRIGGER_SQUEEZE = 0x3d2, - ACT_VR_SHOTGUN_SHOOT = 0x3d3, - ACT_VR_SHOTGUN_SLIDE_BACK = 0x3d4, - ACT_VR_SHOTGUN_SLIDE_FORWARD = 0x3d5, - ACT_VR_PISTOL_LONG_CLIP_IN_CHAMBERED = 0x3d6, - ACT_VR_PISTOL_LONG_CLIP_IN_SLIDE_BACK = 0x3d7, - ACT_VR_PISTOL_BURST_TOGGLE = 0x3d8, - ACT_VR_PISTOL_LOW_KICK = 0x3d9, - ACT_VR_PISTOL_BURST_ATTACK = 0x3da, - ACT_VR_SHOTGUN_GRENADE_TWIST = 0x3db, - ACT_DIE_STAND = 0x3dc, - ACT_DIE_STAND_HEADSHOT = 0x3dd, - ACT_DIE_CROUCH = 0x3de, - ACT_DIE_CROUCH_HEADSHOT = 0x3df, - ACT_CSGO_NULL = 0x3e0, - ACT_CSGO_DEFUSE = 0x3e1, - ACT_CSGO_DEFUSE_WITH_KIT = 0x3e2, - ACT_CSGO_FLASHBANG_REACTION = 0x3e3, - ACT_CSGO_FIRE_PRIMARY = 0x3e4, - ACT_CSGO_FIRE_PRIMARY_OPT_1 = 0x3e5, - ACT_CSGO_FIRE_PRIMARY_OPT_2 = 0x3e6, - ACT_CSGO_FIRE_SECONDARY = 0x3e7, - ACT_CSGO_FIRE_SECONDARY_OPT_1 = 0x3e8, - ACT_CSGO_FIRE_SECONDARY_OPT_2 = 0x3e9, - ACT_CSGO_RELOAD = 0x3ea, - ACT_CSGO_RELOAD_START = 0x3eb, - ACT_CSGO_RELOAD_LOOP = 0x3ec, - ACT_CSGO_RELOAD_END = 0x3ed, - ACT_CSGO_OPERATE = 0x3ee, - ACT_CSGO_DEPLOY = 0x3ef, - ACT_CSGO_CATCH = 0x3f0, - ACT_CSGO_SILENCER_DETACH = 0x3f1, - ACT_CSGO_SILENCER_ATTACH = 0x3f2, - ACT_CSGO_TWITCH = 0x3f3, - ACT_CSGO_TWITCH_BUYZONE = 0x3f4, - ACT_CSGO_PLANT_BOMB = 0x3f5, - ACT_CSGO_IDLE_TURN_BALANCEADJUST = 0x3f6, - ACT_CSGO_IDLE_ADJUST_STOPPEDMOVING = 0x3f7, - ACT_CSGO_ALIVE_LOOP = 0x3f8, - ACT_CSGO_FLINCH = 0x3f9, - ACT_CSGO_FLINCH_HEAD = 0x3fa, - ACT_CSGO_FLINCH_MOLOTOV = 0x3fb, - ACT_CSGO_JUMP = 0x3fc, - ACT_CSGO_FALL = 0x3fd, - ACT_CSGO_CLIMB_LADDER = 0x3fe, - ACT_CSGO_LAND_LIGHT = 0x3ff, - ACT_CSGO_LAND_HEAVY = 0x400, - ACT_CSGO_EXIT_LADDER_TOP = 0x401, - ACT_CSGO_EXIT_LADDER_BOTTOM = 0x402, - ACT_CSGO_PARACHUTE = 0x403, - ACT_CSGO_TAUNT = 0x404, -}; - // Alignment: 4 // Size: 0x5 enum class LifeState_t : uint32_t @@ -4913,6 +3761,15 @@ enum class PlayerAnimEvent_t : uint32_t PLAYERANIMEVENT_COUNT = 0x17, }; +// Alignment: 1 +// Size: 0x3 +enum class BeginDeathLifeStateTransition_t : uint8_t +{ + NO_CHANGE_IN_LIFESTATE = 0x0, + TRANSITION_TO_LIFESTATE_DYING = 0x1, + TRANSITION_TO_LIFESTATE_DEAD = 0x2, +}; + // Alignment: 4 // Size: 0x7 enum class CSWeaponCategory : uint32_t @@ -4936,6 +3793,15 @@ enum class TrainOrientationType_t : uint32_t TrainOrientation_EaseInEaseOut = 0x3, }; +// Alignment: 4 +// Size: 0x3 +enum class SoundEventStartType_t : uint32_t +{ + SOUNDEVENT_START_PLAYER = 0x0, + SOUNDEVENT_START_WORLD = 0x1, + SOUNDEVENT_START_ENTITY = 0x2, +}; + // Alignment: 4 // Size: 0x3 enum class WorldTextPanelHorizontalAlign_t : uint32_t @@ -5135,53 +4001,45 @@ struct PostProcessingLocalContrastParameters_t; struct CMotionSearchDB; struct AnimScriptHandle; struct CAnimUpdateNodeRef; -struct AnimTagID; -struct IKSolverSettings_t; -struct IKTargetSettings_t; -struct CAnimNodeConnection; -struct CAnimInputDamping; struct CSeqAutoLayerFlag; -struct AnimParamID; struct CAnimAttachment; +struct CAnimInputDamping; struct CAnimParamHandle; struct VPhysics2ShapeDef_t; struct TwoBoneIKSettings_t; struct CMotionSearchNode; struct CProductQuantizer; struct IKBoneNameAndIndex_t; +struct AnimParamID; struct AnimNodeID; -struct CConditionContainer; struct CAnimGraphSettingsManager; struct CAnimNodePath; struct CSeqSeqDescFlag; struct CSeqTransition; struct SolveIKChainPoseOpFixedSettings_t; -struct CMotionParameterManager; struct AnimStateID; struct CAnimDesc_Flag; struct CAnimEncodedFrames; struct CAnimSequenceParams; -struct CAnimNodeManager; struct HSequence; struct SkeletonBoneBounds_t; struct CRenderSkeleton; struct CSeqMultiFetch; struct CMotionDataSet; struct CBlendCurve; -struct AnimNodeOutputID; struct AnimComponentID; struct CAnimKeyData; struct CSeqMultiFetchFlag; -struct CMotionNodeManager; -struct CAnimComponentManager; struct PackedAABB_t; struct CDrawCullingData; struct CAnimCycle; struct CFootCycle; +struct IKSolverSettings_t; +struct IKTargetSettings_t; struct CFootCycleDefinition; struct CFootTrajectories; +struct CAnimDemoCaptureSettings; struct FollowAttachmentSettings_t; -struct CFloatAnimValue; struct CRangeFloat; struct LookAtOpFixedSettings_t; struct HitReactFixedSettings_t; @@ -5199,13 +4057,13 @@ struct CPhysSurfacePropertiesAudio; struct AnimationDecodeDebugDumpElement_t; struct CParamSpanUpdater; struct VPhysXConstraintParams_t; -struct CAnimClipDataManager; struct CRenderBufferBinding; struct CPoseHandle; struct PhysFeModelDesc_t; struct TraceSettings_t; struct VPhysXRange_t; struct FootPinningPoseOpFixedData_t; +struct AnimTagID; struct CVectorQuantizer; struct MotionIndex; struct CAnimEncodeDifference; @@ -5221,6 +4079,17 @@ struct constraint_breakableparams_t; struct RnMesh_t; struct RnSphere_t; struct RnCapsule_t; +struct CPulse_OutflowConnection; +struct PulseRuntimeChunkIndex_t; +struct PulseRegisterMap_t; +struct PulseRuntimeRegisterIndex_t; +struct PulseDocNodeID_t; +struct PulseRuntimeCellIndex_t; +struct PulseRuntimeVarIndex_t; +struct PulseRuntimeInvokeIndex_t; +struct PulseRuntimeCallInfoIndex_t; +struct CPulse_ResumePoint; +struct PulseRuntimeOutputIndex_t; struct VMixFilterDesc_t; struct CSosGroupMatchPattern; struct CSosGroupBranchPattern; @@ -5235,31 +4104,22 @@ struct CParticleCollectionFloatInput; struct CParticleTransformInput; struct CParticleCollectionRendererFloatInput; struct CPerParticleVecInput; -struct CPulse_OutflowConnection; struct CParticleModelInput; -struct PulseRuntimeChunkIndex_t; -struct PulseRegisterMap_t; struct ParticlePreviewState_t; struct TextureControls_t; -struct PulseRuntimeRegisterIndex_t; +struct CParticleVariableRef; struct CPathParameters; struct CParticleRemapFloatInput; struct CRandomNumberGeneratorParameters; -struct PulseRuntimeCellIndex_t; -struct PulseRuntimeVarIndex_t; -struct PulseRuntimeInvokeIndex_t; -struct PulseRuntimeLandingPadIndex_t; struct ControlPointReference_t; struct CParticleVisibilityInputs; +struct ParticleNamedValueConfiguration_t; struct CNewParticleEffect; struct IParticleCollection; struct PARTICLE_EHANDLE__; struct CParticleProperty; struct CParticleFloatInput; -struct CPulse_ResumePoint; -struct PulseDocNodeID_t; struct CParticleCollectionRendererVecInput; -struct PulseRuntimeOutputIndex_t; struct CResponseCriteriaSet; struct CRR_Response; struct ResponseFollowup; @@ -5307,8 +4167,6 @@ public: // Size: 0x10 class CExampleSchemaVData_PolymorphicBase { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: int32_t m_nBase; // 0x8 }; @@ -5371,30 +4229,24 @@ public: // Size: 0x1 class InfoForResourceTypeCResourceManifestInternal { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCDOTAPatchNotesList { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCEntityLump { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 2 @@ -5412,20 +4264,16 @@ public: // Size: 0x1 class InfoForResourceTypeCSequenceGroupData { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeIParticleSystemDefinition { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 1 @@ -5440,30 +4288,32 @@ public: // Size: 0x1 class InfoForResourceTypeCTextureBase { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned +}; + +// Alignment: 0 +// Size: 0x1 +class InfoForResourceTypeCDOTANovelsList +{ +public: + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCModel { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCVDataResource { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 1 @@ -5478,70 +4328,56 @@ public: // Size: 0x1 class InfoForResourceTypeIPulseGraphDef { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCPanoramaDynamicImages { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeIVectorGraphic { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeIMaterial2 { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCAnimData { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCVMixListResource { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCCompositeMaterialKit { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 4 @@ -5559,100 +4395,80 @@ public: // Size: 0x1 class InfoForResourceTypeCSmartProp { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCCSGOEconItem { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCWorldNode { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCPanoramaStyle { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCDACGameDefsData { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCVSoundEventScriptList { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCAnimationGroup { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 struct InfoForResourceTypeVSound_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 struct InfoForResourceTypeTestResource_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCPanoramaLayout { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 4 @@ -5670,10 +4486,8 @@ public: // Size: 0x1 class InfoForResourceTypeIParticleSnapshot { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 6 @@ -5693,10 +4507,8 @@ public: // Size: 0x1 class InfoForResourceTypeCPostProcessingResource { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 2 @@ -5712,30 +4524,24 @@ public: // Size: 0x1 struct InfoForResourceTypeProceduralTestResource_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 struct InfoForResourceTypeWorld_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCPhysAggregateData { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 1 @@ -5751,50 +4557,43 @@ public: // Size: 0x1 class InfoForResourceTypeCVoxelVisibility { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCRenderMesh { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; -// Alignment: 3 -// Size: 0x68 +// Alignment: 6 +// Size: 0xb0 class CFuseSymbolTable { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: - CUtlHashtable< CUtlStringToken, ConstantInfo_t > m_constants; // 0x8 - CUtlHashtable< CUtlStringToken, VariableInfo_t > m_variables; // 0x28 - CUtlHashtable< CUtlStringToken, FunctionInfo_t > m_functions; // 0x48 + CUtlVector< ConstantInfo_t > m_constants; // 0x0 + CUtlVector< VariableInfo_t > m_variables; // 0x18 + CUtlVector< FunctionInfo_t > m_functions; // 0x30 + CUtlHashtable< CUtlStringToken, int32 > m_constantMap; // 0x48 + CUtlHashtable< CUtlStringToken, int32 > m_variableMap; // 0x68 + CUtlHashtable< CUtlStringToken, int32 > m_functionMap; // 0x88 }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeIAnimGraphModelBinding { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 5 // Size: 0x20 struct FunctionInfo_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: CUtlString m_name; // 0x8 CUtlStringToken m_nameToken; // 0x10 @@ -5817,30 +4616,24 @@ public: // Size: 0x1 struct InfoForResourceTypeManifestTestResource_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCPanoramaTypeScript { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCVPhysXSurfacePropertiesList { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 2 @@ -5856,60 +4649,48 @@ public: // Size: 0x1 class InfoForResourceTypeCVSoundStackScriptList { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCPanoramaScript { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCChoreoSceneFileData { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCMorphSetData { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCDotaItemDefinitionResource { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCResponseRulesList { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 7 @@ -5949,8 +4730,6 @@ public: // Size: 0x28 struct EngineLoopState_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 public: int32_t m_nPlatWindowWidth; // 0x18 int32_t m_nPlatWindowHeight; // 0x1c @@ -6006,10 +4785,8 @@ public: // Size: 0x8 class CEmptyEntityInstance { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: - // No members available + uint8_t __pad0000[0x8]; // Autoaligned }; // Alignment: 0 @@ -6032,10 +4809,8 @@ public: // Size: 0x10 struct EntOutput_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: - // No members available + uint8_t __pad0000[0x10]; // Autoaligned }; // Alignment: 8 @@ -6103,20 +4878,16 @@ public: // Size: 0x1 struct EventModInitialized_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class CVariantDefaultAllocator { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 4 @@ -6134,10 +4905,8 @@ public: // Size: 0x1 struct EventSplitScreenStateChanged_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 @@ -6152,20 +4921,16 @@ public: // Size: 0x1 struct EventClientProcessNetworking_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x8 class IHandleEntity { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: - // No members available + uint8_t __pad0000[0x8]; // Autoaligned }; // Alignment: 0 @@ -6246,10 +5011,8 @@ public: // Size: 0x1 struct EventClientPredictionPostNetupdate_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 1 @@ -6301,10 +5064,8 @@ public: // Size: 0x30 struct EntInput_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x30]; // 0x0 public: - // No members available + uint8_t __pad0000[0x30]; // Autoaligned }; // Alignment: 0 @@ -6319,18 +5080,14 @@ public: // Size: 0x8 class CEntityComponent { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: - // No members available + uint8_t __pad0000[0x8]; // Autoaligned }; // Alignment: 4 // Size: 0x28 class CEntityComponentHelper { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: uint32_t m_flags; // 0x8 private: @@ -6376,8 +5133,6 @@ public: // Size: 0x28 class CEntityIOOutput { -private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 public: CVariantBase< CVariantDefaultAllocator > m_Value; // 0x18 }; @@ -6580,8 +5335,6 @@ public: // Size: 0x28 class CNetworkVarChainer { -private: - [[maybe_unused]] uint8_t __pad0000[0x20]; // 0x0 public: // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex @@ -6592,8 +5345,6 @@ public: // Size: 0x38 class CAnimTagManagerUpdater { -private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 public: CUtlVector< CSmartPtr< CAnimTagBase > > m_tags; // 0x18 }; @@ -6602,8 +5353,6 @@ public: // Size: 0x48 class CModelConfigElement { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: CUtlString m_ElementName; // 0x8 CUtlVector< CModelConfigElement* > m_NestedElements; // 0x10 @@ -6635,20 +5384,10 @@ public: int32_t m_nCount; // 0x2c }; -// Alignment: 1 -// Size: 0x4 -class AnimComponentID -{ -public: - uint32_t m_id; // 0x0 -}; - // Alignment: 1 // Size: 0x10 class CAnimUpdateNodeRef { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: int32_t m_nodeIndex; // 0x8 }; @@ -6716,8 +5455,6 @@ public: // Size: 0x58 class CAnimUpdateNodeBase { -private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 public: CAnimNodePath m_nodePath; // 0x18 CUtlString m_name; // 0x48 @@ -6744,7 +5481,6 @@ struct IKSolverSettings_t { public: // MPropertyFriendlyName "Solver Type" - // MPropertyAttributeChoiceEnumName // MPropertyAttrChangeCallback IKSolverType m_SolverType; // 0x0 // MPropertyFriendlyName "Num Iterations " @@ -6756,8 +5492,6 @@ public: // Size: 0x70 class CAnimData { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: CBufferString m_name; // 0x10 CUtlVector< CAnimDesc > m_animArray; // 0x20 @@ -6769,45 +5503,18 @@ public: CUtlVector< CAnimFrameSegment > m_segmentArray; // 0x58 }; -// Alignment: 1 -// Size: 0x4 -class AnimTagID +// Alignment: 4 +// Size: 0x30 +class CAnimComponentUpdater { public: - uint32_t m_id; // 0x0 -}; - -// Alignment: 5 -// Size: 0x38 -class CAnimComponentBase -{ + CUtlString m_name; // 0x18 + AnimComponentID m_id; // 0x20 private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 + [[maybe_unused]] uint8_t __pad0020[0x4]; // 0x20 public: - // MPropertyHideField - CUtlString m_group; // 0x18 -private: - [[maybe_unused]] uint8_t __pad0020[0x8]; // 0x20 -public: - // MPropertyHideField - AnimComponentID m_id; // 0x28 - // MPropertyFriendlyName "Start Enabled" - bool m_bStartEnabled; // 0x2c -private: - [[maybe_unused]] uint8_t __pad002d[0x3]; // 0x2d -public: - // MPropertyFriendlyName "Priority" - int32_t m_nPriority; // 0x30 - // MPropertyFriendlyName "Network Mode" - AnimNodeNetworkMode m_networkMode; // 0x34 -}; - -// Alignment: 1 -// Size: 0x4 -class AnimParamID -{ -public: - uint32_t m_id; // 0x0 + AnimNodeNetworkMode m_networkMode; // 0x24 + bool m_bStartEnabled; // 0x28 }; // Alignment: 2 @@ -6819,25 +5526,6 @@ public: float m_flFadeOutTime; // 0x4 }; -// Alignment: 1 -// Size: 0x4 -class AnimNodeID -{ -public: - uint32_t m_id; // 0x0 -}; - -// Alignment: 1 -// Size: 0x28 -class CMotionMetricBase -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x20]; // 0x0 -public: - // MPropertyHideField - float m_flWeight; // 0x20 -}; - // Alignment: 6 // Size: 0x90 struct PhysSoftbodyDesc_t @@ -6851,19 +5539,6 @@ public: CUtlVector< CUtlString > m_ParticleBoneName; // 0x78 }; -// Alignment: 2 -// Size: 0x10 -class CAnimInputDamping -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 -public: - // MPropertyFriendlyName "Speed Function" - DampingSpeedFunction m_speedFunction; // 0x8 - // MPropertyFriendlyName "Speed Scale" - float m_fSpeedScale; // 0xc -}; - // Alignment: 8 // Size: 0x8 class CSeqAutoLayerFlag @@ -6902,73 +5577,29 @@ public: float m_flOcclusionFactor; // 0x1c }; -// Alignment: 3 -// Size: 0x30 -class CBlend2DItemBase -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 -public: - // MPropertyFriendlyName "Blend Value" - Vector2D m_blendValue; // 0x18 -private: - [[maybe_unused]] uint8_t __pad0020[0x8]; // 0x20 -public: - // MPropertyGroupName "+Duration Override" - // MPropertyFriendlyName "Use Custom Duration" - // MPropertyAttrChangeCallback - bool m_bUseCustomDuration; // 0x28 -private: - [[maybe_unused]] uint8_t __pad0029[0x3]; // 0x29 -public: - // MPropertyGroupName "+Duration Override" - // MPropertyFriendlyName "Custom Duration" - // MPropertyAttrStateCallback - float m_flCustomDuration; // 0x2c -}; - // Alignment: 4 -// Size: 0x38 +// Size: 0x30 class CAnimTagBase { -private: - [[maybe_unused]] uint8_t __pad0000[0x20]; // 0x0 public: // MPropertyFriendlyName "Name" // MPropertySortPriority "100" - CUtlString m_name; // 0x20 + CUtlString m_name; // 0x18 // MPropertyHideField - CUtlString m_group; // 0x28 + CUtlString m_group; // 0x20 // MPropertyHideField - AnimTagID m_tagID; // 0x30 - // MPropertyHideField - bool m_bIsReferenced; // 0x34 -}; - -// Alignment: 4 -// Size: 0x38 -class CAnimNodeBase -{ + AnimTagID m_tagID; // 0x28 private: - [[maybe_unused]] uint8_t __pad0000[0x20]; // 0x0 + [[maybe_unused]] uint8_t __pad0028[0x4]; // 0x28 public: - // MPropertyFriendlyName "Name" - // MPropertySortPriority "100" - CUtlString m_sName; // 0x20 // MPropertyHideField - Vector2D m_vecPosition; // 0x28 - // MPropertyHideField - AnimNodeID m_nNodeID; // 0x30 - // MPropertyFriendlyName "Network Mode" - AnimNodeNetworkMode m_networkMode; // 0x34 + bool m_bIsReferenced; // 0x2c }; // Alignment: 2 // Size: 0x20 class CAnimMotorUpdaterBase { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: CUtlString m_name; // 0x10 bool m_bDefault; // 0x18 @@ -6978,18 +5609,8 @@ public: // Size: 0x28 class CBoneConstraintBase { -private: - [[maybe_unused]] uint8_t __pad0000[0x28]; // 0x0 public: - // No members available -}; - -// Alignment: 1 -// Size: 0x4 -class AnimNodeOutputID -{ -public: - uint32_t m_id; // 0x0 + uint8_t __pad0000[0x28]; // Autoaligned }; // Alignment: 1 @@ -7001,26 +5622,22 @@ public: }; // Alignment: 1 -// Size: 0x4 -class AnimScriptHandle +// Size: 0x38 +class CAnimScriptComponentUpdater : public CAnimComponentUpdater { public: - uint32_t m_id; // 0x0 + AnimScriptHandle m_hScript; // 0x30 }; -// Alignment: 8 -// Size: 0xd0 -struct AimMatrixOpFixedSettings_t +// Alignment: 2 +// Size: 0x10 +class CAnimInputDamping { public: - CAnimAttachment m_attachment; // 0x0 - CAnimInputDamping m_damping; // 0x80 - CPoseHandle m_poseCacheHandles[10]; // 0x90 - AimMatrixBlendMode m_eBlendMode; // 0xb8 - float m_fAngleIncrement; // 0xbc - int32_t m_nSequenceMaxFrame; // 0xc0 - int32_t m_nBoneMaskIndex; // 0xc4 - bool m_bTargetIsPosition; // 0xc8 + // MPropertyFriendlyName "Speed Function" + DampingSpeedFunction m_speedFunction; // 0x8 + // MPropertyFriendlyName "Speed Scale" + float m_fSpeedScale; // 0xc }; // Alignment: 2 @@ -7032,15 +5649,6 @@ public: uint8_t m_index; // 0x1 }; -// Alignment: 2 -// Size: 0x8 -class CAnimNodeConnection -{ -public: - AnimNodeID m_nodeID; // 0x0 - AnimNodeOutputID m_outputID; // 0x4 -}; - // Alignment: 5 // Size: 0x78 struct VPhysics2ShapeDef_t @@ -7096,26 +5704,10 @@ public: Vector m_vecSize; // 0xc }; -// Alignment: 2 -// Size: 0x20 -class CAnimParamSpanSample -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 -public: - CAnimVariant m_value; // 0x8 -private: - [[maybe_unused]] uint8_t __pad0019[0x3]; // 0x19 -public: - float m_flCycle; // 0x1c -}; - // Alignment: 2 // Size: 0x28 class CMotionNode { -private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 public: CUtlString m_name; // 0x18 AnimNodeID m_id; // 0x20 @@ -7153,37 +5745,6 @@ public: float m_flRadius; // 0x30 }; -// Alignment: 6 -// Size: 0x28 -class CDampedValueItem -{ -public: - // MPropertyFriendlyName "Value Type" - // MPropertyAttrChangeCallback - DampedValueType m_valueType; // 0x0 - // MPropertyFriendlyName "Parameter In" - // MPropertyAttributeChoiceName "FloatParameter" - // MPropertyAttrStateCallback - AnimParamID m_floatParamIn; // 0x4 - // MPropertyFriendlyName "Parameter Out" - // MPropertyAttributeChoiceName "PrivateFloatParameter" - // MPropertyAttrStateCallback - AnimParamID m_floatParamOut; // 0x8 - // MPropertyFriendlyName "Parameter In" - // MPropertyAttributeChoiceName "VectorParameter" - // MPropertyAttrStateCallback - AnimParamID m_vectorParamIn; // 0xc - // MPropertyFriendlyName "Parameter Out" - // MPropertyAttributeChoiceName "PrivateVectorParameter" - // MPropertyAttrStateCallback - AnimParamID m_vectorParamOut; // 0x10 -private: - [[maybe_unused]] uint8_t __pad0014[0x4]; // 0x14 -public: - // MPropertyFriendlyName "Damping" - CAnimInputDamping m_damping; // 0x18 -}; - // Alignment: 1 // Size: 0x10 struct IKBoneNameAndIndex_t @@ -7193,32 +5754,6 @@ public: CUtlString m_Name; // 0x0 }; -// Alignment: 4 -// Size: 0x38 -class CTimeRemainingMetric : public CMotionMetricBase -{ -public: - // MPropertyFriendlyName "Match Time Remaining" - // MPropertyGroupName - // MPropertyAttrChangeCallback - bool m_bMatchByTimeRemaining; // 0x28 -private: - [[maybe_unused]] uint8_t __pad0029[0x3]; // 0x29 -public: - // MPropertyFriendlyName "Max Time Remaining" - // MPropertyAttrStateCallback - float m_flMaxTimeRemaining; // 0x2c - // MPropertyFriendlyName "Filter By Time Remaining" - // MPropertyAttrChangeCallback - bool m_bFilterByTimeRemaining; // 0x30 -private: - [[maybe_unused]] uint8_t __pad0031[0x3]; // 0x31 -public: - // MPropertyFriendlyName "Min Time Remaining" - // MPropertyAttrStateCallback - float m_flMinTimeRemaining; // 0x34 -}; - // Alignment: 2 // Size: 0x88 class CFootStepTriggerUpdateNode : public CUnaryUpdateNode @@ -7246,114 +5781,6 @@ public: float m_flEndCycle; // 0x20 }; -// Alignment: 11 -// Size: 0x90 -class CAimMatrixAnimNode : public CAnimNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x40 - // MPropertyFriendlyName "Sequence" - // MPropertyAttributeChoiceName "Sequence" - CUtlString m_sequenceName; // 0x48 - // MPropertyFriendlyName "Angle Increment" - float m_fAngleIncrement; // 0x50 - // MPropertyFriendlyName "Target" - AnimVectorSource m_target; // 0x54 - // MPropertyFriendlyName "Parameter" - // MPropertyAttributeChoiceName "VectorParameter" - AnimParamID m_param; // 0x58 -private: - [[maybe_unused]] uint8_t __pad005c[0x4]; // 0x5c -public: - // MPropertyFriendlyName "Aim Attachment" - // MPropertyAttributeChoiceName "Attachment" - CUtlString m_attachmentName; // 0x60 - // MPropertyFriendlyName "Blend Mode" - // MPropertyAttrChangeCallback - AimMatrixBlendMode m_blendMode; // 0x68 -private: - [[maybe_unused]] uint8_t __pad006c[0x4]; // 0x6c -public: - // MPropertyFriendlyName "Bone Mask" - // MPropertyAttributeChoiceName "BoneMask" - // MPropertyAttrStateCallback - CUtlString m_boneMaskName; // 0x70 - // MPropertyFriendlyName "Reset Child" - bool m_bResetBase; // 0x78 - // MPropertyFriendlyName "Lock Blend When Waning" - bool m_bLockWhenWaning; // 0x79 -private: - [[maybe_unused]] uint8_t __pad007a[0x6]; // 0x7a -public: - // MPropertyFriendlyName "Damping" - CAnimInputDamping m_damping; // 0x80 -}; - -// Alignment: 24 -// Size: 0xa8 -class CHitReactAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Minimum Delay Between Hits" - float m_flMinDelayBetweenHits; // 0x40 - // MPropertyFriendlyName "Trigger Parameter" - // MPropertyAttributeChoiceName "BoolParameter" - AnimParamID m_triggerParam; // 0x44 - // MPropertyFriendlyName "Hit Bone Parameter" - // MPropertyAttributeChoiceName "IntParameter" - AnimParamID m_hitBoneParam; // 0x48 - // MPropertyFriendlyName "Hit Offset Parameter" - // MPropertyAttributeChoiceName "VectorParameter" - AnimParamID m_hitOffsetParam; // 0x4c - // MPropertyFriendlyName "Hit Direction Parameter" - // MPropertyAttributeChoiceName "VectorParameter" - AnimParamID m_hitDirectionParam; // 0x50 - // MPropertyFriendlyName "Hit Strength Parameter" - // MPropertyAttributeChoiceName "FloatParameter" - AnimParamID m_hitStrengthParam; // 0x54 - // MPropertyFriendlyName "Bone Weights" - // MPropertyAttributeChoiceName "BoneMask" - CUtlString m_weightListName; // 0x58 - // MPropertyFriendlyName "Hip Bone" - // MPropertyAttributeChoiceName "Bone" - CUtlString m_hipBoneName; // 0x60 - // MPropertyFriendlyName "Hip Translation Scale" - float m_flHipBoneTranslationScale; // 0x68 - // MPropertyFriendlyName "Number of bone effected" - int32_t m_nEffectedBoneCount; // 0x6c - // MPropertyFriendlyName "Max Impact Force" - float m_flMaxImpactForce; // 0x70 - // MPropertyFriendlyName "Min Impact Force" - float m_flMinImpactForce; // 0x74 - // MPropertyFriendlyName "Whip Impact Scale" - float m_flWhipImpactScale; // 0x78 - // MPropertyFriendlyName "Counter Rotation Scale" - float m_flCounterRotationScale; // 0x7c - // MPropertyFriendlyName "Distance Fade Scale" - float m_flDistanceFadeScale; // 0x80 - // MPropertyFriendlyName "Propagation Scale" - float m_flPropagationScale; // 0x84 - // MPropertyFriendlyName "Whip Delay Time" - float m_flWhipDelay; // 0x88 - // MPropertyFriendlyName "Spring Strength" - float m_flSpringStrength; // 0x8c - // MPropertyFriendlyName "Whip Spring Strength" - float m_flWhipSpringStrength; // 0x90 - // MPropertyFriendlyName "Hip Dip Spring Strength" - float m_flHipDipSpringStrength; // 0x94 - // MPropertyFriendlyName "Hip Dip Scale" - float m_flHipDipImpactScale; // 0x98 - // MPropertyFriendlyName "Hip Dip Delay Time" - float m_flHipDipDelay; // 0x9c - // MPropertyFriendlyName "Reset Child" - bool m_bResetBase; // 0xa0 -}; - // Alignment: 2 // Size: 0x70 class CSetFacingUpdateNode : public CUnaryUpdateNode @@ -7363,18 +5790,19 @@ public: bool m_bResetChild; // 0x6c }; -// Alignment: 4 -// Size: 0x48 +// Alignment: 5 +// Size: 0x50 class CSeqScaleSet { public: CBufferString m_sName; // 0x0 - float m_flRootOffsetScale; // 0x10 + bool m_bRootOffset; // 0x10 private: - [[maybe_unused]] uint8_t __pad0014[0x4]; // 0x14 + [[maybe_unused]] uint8_t __pad0011[0x3]; // 0x11 public: - CUtlVector< int16 > m_nLocalBoneArray; // 0x18 - CUtlVector< float32 > m_flBoneScaleArray; // 0x30 + Vector m_vRootOffset; // 0x14 + CUtlVector< int16 > m_nLocalBoneArray; // 0x20 + CUtlVector< float32 > m_flBoneScaleArray; // 0x38 }; // Alignment: 2 @@ -7386,176 +5814,18 @@ public: CUtlVector< AnimationDecodeDebugDumpElement_t > m_elems; // 0x8 }; -// Alignment: 7 -// Size: 0x48 -class CDistanceRemainingMetric : public CMotionMetricBase -{ -public: - // MPropertyFriendlyName "Maximum Tracked Distance" - float m_flMaxDistance; // 0x28 - // MPropertyFriendlyName "Filter By Fixed Distance" - // MPropertyAttrChangeCallback - bool m_bFilterFixedMinDistance; // 0x2c -private: - [[maybe_unused]] uint8_t __pad002d[0x3]; // 0x2d -public: - // MPropertyFriendlyName "Min Distance" - // MPropertyAttrStateCallback - float m_flMinDistance; // 0x30 - // MPropertyFriendlyName "Filter By Goal Distance" - // MPropertyAttrChangeCallback - bool m_bFilterGoalDistance; // 0x34 -private: - [[maybe_unused]] uint8_t __pad0035[0x3]; // 0x35 -public: - // MPropertyFriendlyName "Goal Filter Start Distance" - // MPropertyAttrStateCallback - float m_flStartGoalFilterDistance; // 0x38 - // MPropertyFriendlyName "Filter By Goal Overshoot" - // MPropertyAttrChangeCallback - // MPropertyAttrStateCallback - bool m_bFilterGoalOvershoot; // 0x3c -private: - [[maybe_unused]] uint8_t __pad003d[0x3]; // 0x3d -public: - // MPropertyFriendlyName "Max Goal Overshoot Scale" - // MPropertyAttrStateCallback - float m_flMaxGoalOvershootScale; // 0x40 -}; - -// Alignment: 4 -// Size: 0x20 -struct IKTargetSettings_t -{ -public: - // MPropertyFriendlyName "Target Source" - // MPropertyAttributeChoiceEnumName - // MPropertyAttrChangeCallback - IKTargetSource m_TargetSource; // 0x0 - // MPropertyFriendlyName "Bone" - // MPropertyAttrStateCallback - IKBoneNameAndIndex_t m_Bone; // 0x8 - // MPropertyFriendlyName "Animgraph Position Parameter" - // MPropertyAttributeChoiceName "VectorParameter" - // MPropertyAttrStateCallback - AnimParamID m_AnimgraphParameterNamePosition; // 0x18 - // MPropertyFriendlyName "Target Coords" - // MPropertyAttrStateCallback - IKTargetCoordinateSystem m_TargetCoordSystem; // 0x1c -}; - -// Alignment: 1 -// Size: 0x30 -class CBoneVelocityMetric : public CMotionMetricBase -{ -public: - // MPropertyFriendlyName "Bone" - // MPropertyAttributeChoiceName "Bone" - CUtlString m_boneName; // 0x28 -}; - -// Alignment: 14 -// Size: 0x78 -class CFollowPathAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Blend Out Time" - float m_flBlendOutTime; // 0x40 - // MPropertyFriendlyName "Block Non-Path Movement" - bool m_bBlockNonPathMovement; // 0x44 - // MPropertyFriendlyName "Stop Feet at Goal" - bool m_bStopFeetAtGoal; // 0x45 - // MPropertyFriendlyName "Enable Speed Scaling" - // MPropertyGroupName "Speed Scaling" - // MPropertyAttrChangeCallback - bool m_bScaleSpeed; // 0x46 -private: - [[maybe_unused]] uint8_t __pad0047[0x1]; // 0x47 -public: - // MPropertyFriendlyName "Scale" - // MPropertyGroupName "Speed Scaling" - // MPropertyAttributeRange "0 1" - // MPropertyAttrStateCallback - float m_flScale; // 0x48 - // MPropertyFriendlyName "Min Angle" - // MPropertyGroupName "Speed Scaling" - // MPropertyAttributeRange "0 180" - // MPropertyAttrStateCallback - float m_flMinAngle; // 0x4c - // MPropertyFriendlyName "Max Angle" - // MPropertyGroupName "Speed Scaling" - // MPropertyAttributeRange "0 180" - // MPropertyAttrStateCallback - float m_flMaxAngle; // 0x50 - // MPropertyFriendlyName "Blend Time" - // MPropertyGroupName "Speed Scaling" - // MPropertyAttrStateCallback - float m_flSpeedScaleBlending; // 0x54 - // MPropertyFriendlyName "Enable Turn to Face" - // MPropertyGroupName "Turn to Face" - // MPropertyAttrChangeCallback - bool m_bTurnToFace; // 0x58 -private: - [[maybe_unused]] uint8_t __pad0059[0x3]; // 0x59 -public: - // MPropertyFriendlyName "Target" - // MPropertyGroupName "Turn to Face" - // MPropertyAttrChangeCallback - // MPropertyAttrStateCallback - AnimValueSource m_facingTarget; // 0x5c - // MPropertyFriendlyName "Parameter" - // MPropertyGroupName "Turn to Face" - // MPropertyAttributeChoiceName "FloatParameter" - // MPropertyAttrStateCallback - AnimParamID m_param; // 0x60 - // MPropertyFriendlyName "Offset" - // MPropertyGroupName "Turn to Face" - // MPropertyAttributeRange "-180 180" - // MPropertyAttrStateCallback - float m_flTurnToFaceOffset; // 0x64 - // MPropertyFriendlyName "Damping" - // MPropertyGroupName "Turn to Face" - // MPropertyAttrStateCallback - CAnimInputDamping m_damping; // 0x68 -}; - -// Alignment: 1 -// Size: 0x28 -class CMotionParameterManager -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 -public: - CUtlVector< CSmartPtr< CMotionParameter > > m_params; // 0x10 -}; - // Alignment: 2 // Size: 0x58 -class CActionComponent : public CAnimComponentBase -{ -public: - CUtlVector< CSmartPtr< CAnimActionBase > > m_actions; // 0x38 - // MPropertyFriendlyName "Name" - // MPropertySortPriority "100" - CUtlString m_sName; // 0x50 -}; - -// Alignment: 2 -// Size: 0x60 class CBodyGroupAnimTag : public CAnimTagBase { -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 public: // MPropertyFriendlyName "Priority" - int32_t m_nPriority; // 0x40 + int32_t m_nPriority; // 0x38 private: - [[maybe_unused]] uint8_t __pad0044[0x4]; // 0x44 + [[maybe_unused]] uint8_t __pad003c[0x4]; // 0x3c public: // MPropertyFriendlyName "Body Group Settings" - CUtlVector< CBodyGroupSetting > m_bodyGroupSettings; // 0x48 + CUtlVector< CBodyGroupSetting > m_bodyGroupSettings; // 0x40 }; // Alignment: 2 @@ -7567,48 +5837,33 @@ public: int32_t m_nParamIndex; // 0x40 }; -// Alignment: 1 -// Size: 0x38 -class CConditionContainer -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 -public: - // MPropertySuppressField - CUtlVector< CSmartPtr< CConditionBase > > m_conditions; // 0x10 -}; - // Alignment: 6 -// Size: 0x58 +// Size: 0x50 class CRagdollAnimTag : public CAnimTagBase { -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 public: // MPropertyFriendlyName "Pose Control" - AnimPoseControl m_nPoseControl; // 0x40 + AnimPoseControl m_nPoseControl; // 0x38 // MPropertyFriendlyName "Frequency" // MPropertyAttributeRange "0 30" - float m_flFrequency; // 0x44 + float m_flFrequency; // 0x3c // MPropertyFriendlyName "Damping Ratio" // MPropertyAttributeRange "0 2" - float m_flDampingRatio; // 0x48 + float m_flDampingRatio; // 0x40 // MPropertyFriendlyName "Decay Duration" // MPropertyAttributeRange "-1 1000" - float m_flDecayDuration; // 0x4c + float m_flDecayDuration; // 0x44 // MPropertyFriendlyName "Decay Bias" // MPropertyAttributeRange "0 1" - float m_flDecayBias; // 0x50 + float m_flDecayBias; // 0x48 // MPropertyFriendlyName "Destroy" - bool m_bDestroy; // 0x54 + bool m_bDestroy; // 0x4c }; // Alignment: 12 // Size: 0x78 class CAnimParameterBase { -private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 public: // MPropertyFriendlyName "Name" // MPropertySortPriority "100" @@ -7618,7 +5873,7 @@ public: // MPropertyHideField AnimParamID m_id; // 0x40 private: - [[maybe_unused]] uint8_t __pad0044[0x14]; // 0x44 + [[maybe_unused]] uint8_t __pad0040[0x18]; // 0x40 public: // MPropertyHideField // MPropertyAttrChangeCallback @@ -7651,23 +5906,8 @@ public: bool m_bNetworkingRequested; // 0x73 }; -// Alignment: 3 -// Size: 0x20 -class CBlendNodeChild -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x8 - // MPropertyFriendlyName "Name" - CUtlString m_name; // 0x10 - // MPropertyFriendlyName "Blend Value" - float m_blendValue; // 0x18 -}; - // Alignment: 0 -// Size: 0x40 +// Size: 0x38 class CStringAnimTag : public CAnimTagBase { public: @@ -7690,84 +5930,29 @@ public: CUtlVector< CFootTrajectory > m_trajectories; // 0x0 }; -// Alignment: 1 -// Size: 0x58 -class CAnimParameterList -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x20]; // 0x0 -public: - CUtlVector< CSmartPtr< CAnimParameterBase > > m_Parameters; // 0x20 -}; - // Alignment: 1 // Size: 0x30 class CAnimGraphSettingsManager { -private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 public: CUtlVector< CSmartPtr< CAnimGraphSettingsGroup > > m_settingsGroups; // 0x18 }; -// Alignment: 9 -// Size: 0x80 -class CBlendAnimNode : public CAnimNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x10]; // 0x38 -public: - // MPropertyFriendlyName "Blend Items" - // MPropertyAutoExpandSelf - CUtlVector< CBlendNodeChild > m_children; // 0x48 - // MPropertyFriendlyName "Blend Source" - // MPropertyAttrChangeCallback - // MPropertyAttrStateCallback - AnimValueSource m_blendValueSource; // 0x60 - // MPropertyFriendlyName "Parameter" - // MPropertyAttributeChoiceName "FloatParameter" - AnimParamID m_param; // 0x64 - // MPropertyFriendlyName "Blend Key Values" - BlendKeyType m_blendKeyType; // 0x68 - // MPropertyFriendlyName "Lock Blend on Reset" - bool m_bLockBlendOnReset; // 0x6c - // MPropertyFriendlyName "Sync Cycles" - bool m_bSyncCycles; // 0x6d - // MPropertyFriendlyName "Loop" - bool m_bLoop; // 0x6e - // MPropertyFriendlyName "Lock Blend When Waning" - bool m_bLockWhenWaning; // 0x6f - // MPropertyFriendlyName "Damping" - CAnimInputDamping m_damping; // 0x70 -}; - // Alignment: 1 // Size: 0x1e0 class CTwoBoneIKUpdateNode : public CUnaryUpdateNode { -private: - [[maybe_unused]] uint8_t __pad0068[0x8]; // 0x68 public: TwoBoneIKSettings_t m_opFixedData; // 0x70 }; // Alignment: 2 -// Size: 0x30 -class CFutureFacingMetric : public CMotionMetricBase -{ -public: - // MPropertyFriendlyName "Distance" - float m_flDistance; // 0x28 - // MPropertyFriendlyName "Time" - float m_flTime; // 0x2c -}; - -// Alignment: 1 -// Size: 0x18 +// Size: 0x20 struct SolveIKChainPoseOpFixedSettings_t { public: CUtlVector< ChainToSolveData_t > m_ChainsToSolveData; // 0x0 + bool m_bMatchTargetOrientation; // 0x18 }; // Alignment: 0 @@ -7797,11 +5982,11 @@ public: }; // Alignment: 2 -// Size: 0xa0 +// Size: 0xa8 class CSolveIKChainUpdateNode : public CUnaryUpdateNode { public: - CUtlVector< CAnimParamHandle > m_targetHandles; // 0x68 + CUtlVector< CSolveIKTargetHandle_t > m_targetHandles; // 0x68 SolveIKChainPoseOpFixedSettings_t m_opFixedData; // 0x80 }; @@ -7847,8 +6032,6 @@ public: // Size: 0xa0 class CMoverUpdateNode : public CUnaryUpdateNode { -private: - [[maybe_unused]] uint8_t __pad0068[0x8]; // 0x68 public: CAnimInputDamping m_damping; // 0x70 AnimValueSource m_facingTarget; // 0x80 @@ -7867,28 +6050,6 @@ public: bool m_bLimitOnly; // 0x98 }; -// Alignment: 5 -// Size: 0xa8 -class CMotionItem -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x28]; // 0x0 -public: - // MPropertyHideField - CMotionParameterManager m_paramManager; // 0x28 - // MPropertyHideField - CUtlVector< CSmartPtr< CAnimTagSpan > > m_blockSpans; // 0x50 - // MPropertyHideField - CUtlVector< CSmartPtr< CAnimTagSpan > > m_tagSpans; // 0x68 - // MPropertyHideField - CUtlVector< CSmartPtr< CAnimParamSpan > > m_paramSpans; // 0x80 -private: - [[maybe_unused]] uint8_t __pad0098[0x8]; // 0x98 -public: - // MPropertyFriendlyName "Loop" - bool m_bLoop; // 0xa0 -}; - // Alignment: 4 // Size: 0x70 class CBaseConstraint : public CBoneConstraintBase @@ -7903,35 +6064,23 @@ public: CUtlVector< CConstraintTarget > m_targets; // 0x58 }; -// Alignment: 1 -// Size: 0x38 -class CAnimClipDataManager -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 -public: - CUtlHashtable< CUtlString, CSmartPtr< CAnimClipData > > m_itemTable; // 0x18 -}; - -// Alignment: 1 -// Size: 0x4 -class AnimStateID +// Alignment: 8 +// Size: 0x48 +class CStateUpdateData { public: - uint32_t m_id; // 0x0 -}; - -// Alignment: 1 -// Size: 0x58 -class CProxyAnimNodeBase : public CAnimNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 -public: - // MPropertyFriendlyName "External Connections" - // MPropertyAutoExpandSelf - // MPropertyAttrChangeCallback - CUtlVector< CConnectionProxyItem > m_proxyItems; // 0x40 + CUtlString m_name; // 0x0 + AnimScriptHandle m_hScript; // 0x8 + CUtlVector< int32 > m_transitionIndices; // 0x10 + CUtlVector< CStateActionUpdater > m_actions; // 0x28 + AnimStateID m_stateID; // 0x40 + struct + { + uint8_t m_bIsStartState: 1; + uint8_t m_bIsEndState: 1; + uint8_t m_bIsPassthrough: 1; + uint8_t __pad0: 3; // Autoaligned + }; // 6 bits }; // Alignment: 2 @@ -7943,16 +6092,6 @@ public: int32_t m_boneIndex; // 0x20 }; -// Alignment: 0 -// Size: 0x28 -class CConditionBase -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x28]; // 0x0 -public: - // No members available -}; - // Alignment: 46 // Size: 0xf8 struct VPhysXConstraintParams_t @@ -8028,8 +6167,6 @@ public: // Size: 0x50 class CMotionMetricEvaluator { -private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 public: CUtlVector< float32 > m_means; // 0x18 CUtlVector< float32 > m_standardDeviations; // 0x30 @@ -8049,8 +6186,6 @@ public: // Size: 0x40 class CAnimationGraphVisualizerPrimitiveBase { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: CAnimationGraphVisualizerPrimitiveType m_Type; // 0x8 AnimNodeID m_OwningAnimNodePaths[11]; // 0xc @@ -8078,14 +6213,6 @@ public: float m_wheelDrag; // 0x18 }; -// Alignment: 0 -// Size: 0x58 -class CGroupOutputAnimNode : public CProxyAnimNodeBase -{ -public: - // No members available -}; - // Alignment: 8 // Size: 0x8 class CAnimDesc_Flag @@ -8120,17 +6247,6 @@ public: bool m_bBonesOrientedAlongPositiveX; // 0xa }; -// Alignment: 1 -// Size: 0x48 -class CAnimNodeManager -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 -public: - // MPropertyHideField - CUtlHashtable< AnimNodeID, CSmartPtr< CAnimNodeBase > > m_nodes; // 0x8 -}; - // Alignment: 3 // Size: 0x50 class CRenderSkeleton @@ -8181,14 +6297,6 @@ public: bool m_bInterpolate; // 0x84 }; -// Alignment: 0 -// Size: 0x38 -class CZeroPoseAnimNode : public CAnimNodeBase -{ -public: - // No members available -}; - // Alignment: 5 // Size: 0xa8 class CBoneConstraintPoseSpaceMorph : public CBoneConstraintBase @@ -8222,8 +6330,6 @@ public: // Size: 0x28 class CAnimGraphModelBinding { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: CUtlString m_modelName; // 0x8 CSmartPtr< CAnimUpdateSharedData > m_pSharedData; // 0x10 @@ -8233,13 +6339,11 @@ public: // Size: 0x100 class CAnimUpdateSharedData { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: CUtlVector< CSmartPtr< CAnimUpdateNodeBase > > m_nodes; // 0x10 CUtlHashtable< CAnimNodePath, int32 > m_nodeIndexMap; // 0x28 CUtlVector< CSmartPtr< CAnimComponentUpdater > > m_components; // 0x48 - CSmartPtr< CAnimParameterListUpdater > m_pParamListUpdater; // 0x60 + CSmartPtr< CAnimParameterManagerUpdater > m_pParamListUpdater; // 0x60 CSmartPtr< CAnimTagManagerUpdater > m_pTagManagerUpdater; // 0x68 CSmartPtr< CAnimScriptManager > m_scriptManager; // 0x70 CAnimGraphSettingsManager m_settings; // 0x78 @@ -8270,51 +6374,12 @@ public: // Size: 0x30 class CStaticPoseCache { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: CUtlVector< CCachedPose > m_poses; // 0x10 int32_t m_nBoneCount; // 0x28 int32_t m_nMorphCount; // 0x2c }; -// Alignment: 3 -// Size: 0x18 -class CFloatAnimValue -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 -public: - // MPropertyHideField - float m_flConstValue; // 0x8 - // MPropertyHideField - AnimParamID m_paramID; // 0xc - // MPropertyHideField - EAnimValueSource m_eSource; // 0x10 -}; - -// Alignment: 0 -// Size: 0x38 -class CBindPoseAnimNode : public CAnimNodeBase -{ -public: - // No members available -}; - -// Alignment: 2 -// Size: 0x58 -class CSequenceBlend2DItem : public CBlend2DItemBase -{ -private: - [[maybe_unused]] uint8_t __pad0030[0x8]; // 0x30 -public: - // MPropertyHideField - CUtlVector< CSmartPtr< CAnimTagSpan > > m_tagSpans; // 0x38 - // MPropertyFriendlyName "Sequence" - // MPropertyAttributeChoiceName "Sequence" - CUtlString m_sequenceName; // 0x50 -}; - // Alignment: 1 // Size: 0x4 class HSequence @@ -8341,30 +6406,6 @@ public: int32_t m_nSlaveAxis; // 0x74 }; -// Alignment: 6 -// Size: 0x60 -class CStanceOverrideAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyHideField - CAnimNodeConnection m_stanceSourceConnection; // 0x40 - // MPropertyFriendlyName "Blend Parameter (optional)" - // MPropertyAttributeChoiceName "FloatParameter" - AnimParamID m_blendParamID; // 0x48 - // MPropertyFriendlyName "Stance Source" - // MPropertyAttrChangeCallback - StanceOverrideMode m_eMode; // 0x4c - // MPropertyFriendlyName "Sequence" - // MPropertyAttributeChoiceName "Sequence" - // MPropertyAttrStateCallback - CUtlString m_sequenceName; // 0x50 - // MPropertyFriendlyName "Frame" - // MPropertyAttrStateCallback - int32_t m_nFrameIndex; // 0x58 -}; - // Alignment: 5 // Size: 0x58 struct ScriptInfo_t @@ -8386,22 +6427,10 @@ public: CUtlVector< CFlexOp > m_FlexOps; // 0x8 }; -// Alignment: 0 -// Size: 0x28 -class CAnimActionBase -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x28]; // 0x0 -public: - // No members available -}; - // Alignment: 3 // Size: 0x88 class CDirectPlaybackUpdateNode : public CUnaryUpdateNode { -private: - [[maybe_unused]] uint8_t __pad0068[0x4]; // 0x68 public: bool m_bFinishEarly; // 0x6c bool m_bResetOnFinish; // 0x6d @@ -8504,36 +6533,6 @@ public: float m_flAxisSize; // 0x60 }; -// Alignment: 10 -// Size: 0x60 -class CSubtractAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_baseInputConnection; // 0x38 - // MPropertyHideField - CAnimNodeConnection m_subtractInputConnection; // 0x40 - // MPropertyFriendlyName "Timing Control" - // MPropertyAttrChangeCallback - BinaryNodeTiming m_timingBehavior; // 0x48 - // MPropertyFriendlyName "Timing Blend" - // MPropertyAttributeRange "0 1" - // MPropertyAttrStateCallback - float m_flTimingBlend; // 0x4c - // MPropertyFriendlyName "Foot Motion Timing" - BinaryNodeChildOption m_footMotionTiming; // 0x50 - // MPropertyFriendlyName "Subtract Foot Motion" - bool m_bApplyToFootMotion; // 0x54 - // MPropertyFriendlyName "Reset Base Child" - bool m_bResetBase; // 0x55 - // MPropertyFriendlyName "Reset Subtracted Child" - bool m_bResetSubtract; // 0x56 - // MPropertyFriendlyName "Treat Translation Separately" - bool m_bApplyChannelsSeparately; // 0x57 - // MPropertyFriendlyName "Use Model Space" - bool m_bUseModelSpace; // 0x58 -}; - // Alignment: 10 // Size: 0xa0 struct VPhysXBodyPart_t @@ -8554,59 +6553,10 @@ public: Vector m_vMassCenterOverride; // 0x94 }; -// Alignment: 9 -// Size: 0x60 -class CVRInputComponent : public CAnimComponentBase -{ -public: - // MPropertyHideField - AnimParamID m_FingerCurl_Thumb; // 0x38 - // MPropertyHideField - AnimParamID m_FingerCurl_Index; // 0x3c - // MPropertyHideField - AnimParamID m_FingerCurl_Middle; // 0x40 - // MPropertyHideField - AnimParamID m_FingerCurl_Ring; // 0x44 - // MPropertyHideField - AnimParamID m_FingerCurl_Pinky; // 0x48 - // MPropertyHideField - AnimParamID m_FingerSplay_Thumb_Index; // 0x4c - // MPropertyHideField - AnimParamID m_FingerSplay_Index_Middle; // 0x50 - // MPropertyHideField - AnimParamID m_FingerSplay_Middle_Ring; // 0x54 - // MPropertyHideField - AnimParamID m_FingerSplay_Ring_Pinky; // 0x58 -}; - -// Alignment: 0 -// Size: 0x50 -class CMotionNodeManager : public CAnimNodeManager -{ -public: - // No members available -}; - -// Alignment: 2 -// Size: 0x28 -class CAnimMotorBase -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 -public: - // MPropertyFriendlyName "Name" - // MPropertySortPriority "100" - CUtlString m_name; // 0x18 - // MPropertyFriendlyName "Is Default" - bool m_bDefault; // 0x20 -}; - // Alignment: 8 // Size: 0xd0 class CAnimSkeleton { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: CUtlVector< CTransform > m_localSpaceTransforms; // 0x10 CUtlVector< CTransform > m_modelSpaceTransforms; // 0x28 @@ -8622,8 +6572,6 @@ public: // Size: 0x1e0 class CRenderMesh { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: CUtlVectorFixedGrowable< CSceneObjectData > m_sceneObjects; // 0x10 CUtlVector< CBaseConstraint* > m_constraints; // 0xa0 @@ -8649,20 +6597,6 @@ public: Vector m_vOffset; // 0x20 }; -// Alignment: 2 -// Size: 0x48 -class CAnimClipData -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x20]; // 0x0 -public: - // MPropertyHideField - CUtlVector< CSmartPtr< CAnimTagSpan > > m_tagSpans; // 0x20 - // MPropertyFriendlyName "Sequence" - // MPropertyAttributeChoiceName "Sequence" - CUtlString m_clipName; // 0x38 -}; - // Alignment: 3 // Size: 0x48 class CMotionNodeSequence : public CMotionNode @@ -8673,27 +6607,6 @@ public: float m_flPlaybackSpeed; // 0x44 }; -// Alignment: 6 -// Size: 0x50 -class CWayPointHelperAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Start Cycle" - // MPropertyAttributeRange "0 1" - float m_flStartCycle; // 0x40 - // MPropertyFriendlyName "End Cycle" - // MPropertyAttributeRange "0 1" - float m_flEndCycle; // 0x44 - // MPropertyFriendlyName "Only align to Goals" - bool m_bOnlyGoals; // 0x48 - // MPropertyFriendlyName "Prevent Overshoot" - bool m_bPreventOvershoot; // 0x49 - // MPropertyFriendlyName "Prevent Undershoot" - bool m_bPreventUndershoot; // 0x4a -}; - // Alignment: 2 // Size: 0x8 class CFingerSource @@ -8727,14 +6640,6 @@ public: bool m_b2D_TRI; // 0x5 }; -// Alignment: 0 -// Size: 0x60 -class CGroupInputAnimNode : public CProxyAnimNodeBase -{ -public: - // No members available -}; - // Alignment: 2 // Size: 0x8 class CBlendCurve @@ -8752,8 +6657,6 @@ public: Vector m_vOffset; // 0x0 float m_flRotationOffset; // 0xc float m_flProgression; // 0x10 - - // Static fields: static CFootTrajectory &Get_Identity(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("!GlobalTypes")->FindDeclaredClass("CFootTrajectory")->m_static_fields[0]->m_instance);}; }; @@ -8770,19 +6673,6 @@ public: CUtlString m_Text; // 0x58 }; -// Alignment: 3 -// Size: 0x18 -class CConnectionProxyItem -{ -public: - // MPropertyFriendlyName "Name" - CUtlString m_name; // 0x0 - // MPropertyHideField - AnimNodeOutputID m_outputID; // 0x8 - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0xc -}; - // Alignment: 0 // Size: 0x60 class CBindPoseUpdateNode : public CLeafUpdateNode @@ -8802,121 +6692,18 @@ public: Color m_Color; // 0x70 }; -// Alignment: 13 -// Size: 0x78 -class CBoneMaskAnimNode : public CAnimNodeBase -{ -public: - // MPropertyFriendlyName "Bone Mask" - // MPropertyAttributeChoiceName "BoneMask" - CUtlString m_weightListName; // 0x38 - // MPropertyHideField - CAnimNodeConnection m_inputConnection1; // 0x40 - // MPropertyHideField - CAnimNodeConnection m_inputConnection2; // 0x48 - // MPropertyFriendlyName "Blend Space" - BoneMaskBlendSpace m_blendSpace; // 0x50 - // MPropertyFriendlyName "Use Blend Source" - // MPropertyAttrChangeCallback - bool m_bUseBlendScale; // 0x54 -private: - [[maybe_unused]] uint8_t __pad0055[0x3]; // 0x55 -public: - // MPropertyFriendlyName "Blend Source" - // MPropertyAttrChangeCallback - // MPropertyAttrStateCallback - AnimValueSource m_blendValueSource; // 0x58 - // MPropertyFriendlyName "Blend Parameter" - // MPropertyAttributeChoiceName "FloatParameter" - // MPropertyAttrStateCallback - AnimParamID m_blendParameter; // 0x5c - // MPropertyFriendlyName "Timing Control" - // MPropertyAttrChangeCallback - BinaryNodeTiming m_timingBehavior; // 0x60 - // MPropertyFriendlyName "Timing Blend" - // MPropertyAttributeRange "0 1" - // MPropertyAttrStateCallback - float m_flTimingBlend; // 0x64 - // MPropertyFriendlyName "Root Motion Blend" - // MPropertyAttributeRange "0 1" - float m_flRootMotionBlend; // 0x68 - // MPropertyFriendlyName "Foot Motion Timing" - BinaryNodeChildOption m_footMotionTiming; // 0x6c - // MPropertyFriendlyName "Reset Child1" - bool m_bResetChild1; // 0x70 - // MPropertyFriendlyName "Reset Child2" - bool m_bResetChild2; // 0x71 -}; - -// Alignment: 1 -// Size: 0x68 -class CStateMachineComponent : public CAnimComponentBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x28]; // 0x38 -public: - // MPropertyFriendlyName "Name" - // MPropertySortPriority "100" - CUtlString m_sName; // 0x60 -}; - // Alignment: 0 // Size: 0x18 class CAnimActionUpdater { -private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 public: - // No members available -}; - -// Alignment: 3 -// Size: 0x70 -class CContainerAnimNodeBase : public CAnimNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x10]; // 0x38 -public: - // MPropertyHideField - AnimNodeID m_inputNodeID; // 0x48 - // MPropertyHideField - AnimNodeID m_outputNodeID; // 0x4c - // MPropertyHideField - CUtlHashtable< AnimNodeOutputID, CAnimNodeConnection > m_inputConnectionMap; // 0x50 -}; - -// Alignment: 6 -// Size: 0x40 -class CStateStatusCondition : public CConditionBase -{ -public: - StateValue m_sourceValue; // 0x28 - StateComparisonValueType m_comparisonValueType; // 0x2c - float m_comparisonFixedValue; // 0x30 - StateValue m_comparisonStateValue; // 0x34 - AnimParamID m_comparisonParamID; // 0x38 - Comparison_t m_comparisonOp; // 0x3c -}; - -// Alignment: 2 -// Size: 0x68 -class CStateMachineAnimNode : public CAnimNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x28]; // 0x38 -public: - // MPropertyFriendlyName "Block Tags from Waning States" - bool m_bBlockWaningTags; // 0x60 - // MPropertyFriendlyName "Lock State when Waning" - bool m_bLockStateWhenWaning; // 0x61 + uint8_t __pad0000[0x18]; // Autoaligned }; // Alignment: 7 // Size: 0x130 class CAnimationGroup { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: uint32_t m_nFlags; // 0x10 private: @@ -8940,8 +6727,6 @@ public: // Size: 0x88 class CTurnHelperUpdateNode : public CUnaryUpdateNode { -private: - [[maybe_unused]] uint8_t __pad0068[0x4]; // 0x68 public: AnimValueSource m_facingTarget; // 0x6c float m_turnStartTimeOffset; // 0x70 @@ -8955,29 +6740,27 @@ public: }; // Alignment: 7 -// Size: 0x58 +// Size: 0x50 class CAudioAnimTag : public CAnimTagBase { -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 public: // MPropertyFriendlyName "Sound Event" // MPropertyAttributeEditor "SoundPicker()" - CUtlString m_clipName; // 0x40 + CUtlString m_clipName; // 0x38 // MPropertyFriendlyName "Attachment" // MPropertyAttributeChoiceName "Attachment" - CUtlString m_attachmentName; // 0x48 + CUtlString m_attachmentName; // 0x40 // MPropertyFriendlyName "Volume" // MPropertyAttributeRange "0 1" - float m_flVolume; // 0x50 + float m_flVolume; // 0x48 // MPropertyFriendlyName "Stop on Tag End" - bool m_bStopWhenTagEnds; // 0x54 + bool m_bStopWhenTagEnds; // 0x4c // MPropertyFriendlyName "Stop When Graph Destroyed" - bool m_bStopWhenGraphEnds; // 0x55 + bool m_bStopWhenGraphEnds; // 0x4d // MPropertyFriendlyName "Play on Server" - bool m_bPlayOnServer; // 0x56 + bool m_bPlayOnServer; // 0x4e // MPropertyFriendlyName "Play on Client" - bool m_bPlayOnClient; // 0x57 + bool m_bPlayOnClient; // 0x4f }; // Alignment: 8 @@ -9027,16 +6810,6 @@ public: CUtlVector< CTransform > m_outputTransformList; // 0x10 }; -// Alignment: 1 -// Size: 0x30 -class CPathAnimMotorBase : public CAnimMotorBase -{ -public: - // MPropertyFriendlyName "Lock To Path" - // MPropertySortPriority "90" - bool m_bLockToPath; // 0x28 -}; - // Alignment: 9 // Size: 0x48 struct SkeletalInputOpFixedSettings_t @@ -9073,19 +6846,6 @@ public: float m_flFingerScaleRatio; // 0x6c }; -// Alignment: 2 -// Size: 0x108 -class CGraphMotionItem : public CMotionItem -{ -private: - [[maybe_unused]] uint8_t __pad00a8[0x8]; // 0xa8 -public: - // MPropertyFriendlyName "Name" - CUtlString m_name; // 0xb0 - // MPropertyHideField - CMotionNodeManager m_nodeManager; // 0xb8 -}; - // Alignment: 3 // Size: 0x3 class CTransitionUpdateData @@ -9096,7 +6856,7 @@ public: struct { uint8_t m_bDisabled: 1; - uint8_t __pad0: 1; + uint8_t __pad1: 1; // Autoaligned }; // 2 bits }; @@ -9109,32 +6869,6 @@ public: int32_t m_nType; // 0x10 }; -// Alignment: 8 -// Size: 0x70 -class CAnimState -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x28]; // 0x0 -public: - // MPropertySuppressField - CUtlVector< CSmartPtr< CAnimStateTransition > > m_transitions; // 0x28 - // MPropertyHideField - CUtlVector< CStateAction > m_actions; // 0x40 - // MPropertyFriendlyName "Name" - // MPropertySortPriority "100" - CUtlString m_name; // 0x58 - // MPropertyHideField - AnimStateID m_stateID; // 0x60 - // MPropertyHideField - Vector2D m_position; // 0x64 - // MPropertyFriendlyName "Start State" - bool m_bIsStartState; // 0x6c - // MPropertyFriendlyName "End State" - bool m_bIsEndtState; // 0x6d - // MPropertyFriendlyName "Passthrough" - bool m_bIsPassthrough; // 0x6e -}; - // Alignment: 3 // Size: 0x60 class CAnimationGraphVisualizerSphere : public CAnimationGraphVisualizerPrimitiveBase @@ -9168,48 +6902,25 @@ public: CUtlVector< uint8 > m_bHasUserBitArray; // 0x90 }; -// Alignment: 1 -// Size: 0x28 -class CAnimComponentManager -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 -public: - CUtlVector< CSmartPtr< CAnimComponentBase > > m_components; // 0x8 -}; - // Alignment: 4 -// Size: 0x58 +// Size: 0x50 class CClothSettingsAnimTag : public CAnimTagBase { -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 public: // MPropertyFriendlyName "Stiffness" // MPropertyAttributeRange "0 1" - float m_flStiffness; // 0x40 + float m_flStiffness; // 0x38 // MPropertyFriendlyName "EaseIn" // MPropertyAttributeRange "0 1" - float m_flEaseIn; // 0x44 + float m_flEaseIn; // 0x3c // MPropertyFriendlyName "EaseOut" // MPropertyAttributeRange "0 1" - float m_flEaseOut; // 0x48 + float m_flEaseOut; // 0x40 private: - [[maybe_unused]] uint8_t __pad004c[0x4]; // 0x4c + [[maybe_unused]] uint8_t __pad0044[0x4]; // 0x44 public: // MPropertyFriendlyName "VertexSet" - CUtlString m_nVertexSet; // 0x50 -}; - -// Alignment: 2 -// Size: 0x28 -class CRigidBodyWeightList -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 -public: - CUtlString m_name; // 0x8 - CUtlVector< CRigidBodyWeight > m_weights; // 0x10 + CUtlString m_nVertexSet; // 0x48 }; // Alignment: 4 @@ -9223,27 +6934,10 @@ public: float m_flMax; // 0x80 }; -// Alignment: 4 -// Size: 0x18 -class CChoiceNodeChild -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x0 - // MPropertyFriendlyName "Name" - CUtlString m_name; // 0x8 - // MPropertyFriendlyName "Weight" - float m_weight; // 0x10 - // MPropertyFriendlyName "Blend Time" - float m_blendTime; // 0x14 -}; - // Alignment: 8 // Size: 0x98 class CMorphSetData { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: int32_t m_nWidth; // 0x10 int32_t m_nHeight; // 0x14 @@ -9255,15 +6949,6 @@ public: CUtlVector< CFlexRule > m_FlexRules; // 0x80 }; -// Alignment: 2 -// Size: 0x30 -class CFinishedCondition : public CConditionBase -{ -public: - FinishedConditionOption m_option; // 0x28 - bool m_bIsFinished; // 0x2c -}; - // Alignment: 3 // Size: 0x10 class CDrawCullingData @@ -9300,22 +6985,10 @@ public: CAnimVariant m_value; // 0x1a }; -// Alignment: 0 -// Size: 0x60 -class COrCondition : public CConditionBase -{ -private: - [[maybe_unused]] uint8_t __pad0028[0x10]; // 0x28 -public: - // No members available -}; - // Alignment: 7 // Size: 0xa8 class CBoneMaskUpdateNode : public CBinaryUpdateNode { -private: - [[maybe_unused]] uint8_t __pad0088[0x4]; // 0x88 public: int32_t m_nWeightListIndex; // 0x8c float m_flRootMotionBlend; // 0x90 @@ -9359,31 +7032,6 @@ public: // No members available }; -// Alignment: 3 -// Size: 0x48 -class CDirectPlaybackAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Finish Early" - bool m_bFinishEarly; // 0x40 - // MPropertyFriendlyName "Reset Child On Finish" - bool m_bResetOnFinish; // 0x41 -}; - -// Alignment: 2 -// Size: 0x30 -class CToggleComponentAction : public CAnimActionBase -{ -public: - // MPropertyFriendlyName "Component" - // MPropertyAttributeChoiceName "Component" - AnimComponentID m_componentID; // 0x28 - // MPropertyFriendlyName "Set Enabled" - bool m_bSetEnabled; // 0x2c -}; - // Alignment: 1 // Size: 0x4 class CCycleBase @@ -9392,23 +7040,6 @@ public: float m_flCycle; // 0x0 }; -// Alignment: 3 -// Size: 0x60 -class CFootStepTriggerAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Tolerance" - float m_flTolerance; // 0x40 -private: - [[maybe_unused]] uint8_t __pad0044[0x4]; // 0x44 -public: - // MPropertyFriendlyName "Feet" - // MPropertyAutoExpandSelf - CUtlVector< CFootStepTriggerItem > m_items; // 0x48 -}; - // Alignment: 5 // Size: 0x60 class CConstraintSlave @@ -9424,31 +7055,34 @@ public: CUtlString m_sName; // 0x28 }; -// Alignment: 1 -// Size: 0x40 -class CLODComponent : public CAnimComponentBase +// Alignment: 5 +// Size: 0x28 +struct IKTargetSettings_t { public: - int32_t m_nServerLOD; // 0x38 -}; - -// Alignment: 6 -// Size: 0x50 -struct ChainToSolveData_t -{ -public: - int32_t m_nChainIndex; // 0x0 - IKSolverSettings_t m_SolverSettings; // 0x4 + // MPropertyFriendlyName "Target Source" + // MPropertyAttrChangeCallback + IKTargetSource m_TargetSource; // 0x0 + // MPropertyFriendlyName "Bone" + // MPropertyAttrStateCallback + IKBoneNameAndIndex_t m_Bone; // 0x8 + // MPropertyFriendlyName "Animgraph Position Parameter" + // MPropertyAttributeChoiceName "VectorParameter" + // MPropertyAttrStateCallback + AnimParamID m_AnimgraphParameterNamePosition; // 0x18 private: - [[maybe_unused]] uint8_t __pad000c[0x4]; // 0xc + [[maybe_unused]] uint8_t __pad0018[0x4]; // 0x18 public: - IKTargetSettings_t m_TargetSettings; // 0x10 - SolveIKChainAnimNodeDebugSetting m_DebugSetting; // 0x30 - float m_flDebugNormalizedValue; // 0x34 + // MPropertyFriendlyName "Animgraph Orientation Parameter" + // MPropertyAttributeChoiceName "QuaternionParameter" + // MPropertyAttrStateCallback + AnimParamID m_AnimgraphParameterNameOrientation; // 0x1c private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 + [[maybe_unused]] uint8_t __pad0018[0x8]; // 0x18 public: - VectorAligned m_vDebugOffset; // 0x40 + // MPropertyFriendlyName "Target Coords" + // MPropertyAttrStateCallback + IKTargetCoordinateSystem m_TargetCoordSystem; // 0x20 }; // Alignment: 4 @@ -9465,70 +7099,33 @@ public: CUtlString m_SourceFilename; // 0x28 }; -// Alignment: 1 -// Size: 0xb8 -class CSequenceMotionItem : public CMotionItem +// Alignment: 8 +// Size: 0xd0 +struct AimMatrixOpFixedSettings_t { -private: - [[maybe_unused]] uint8_t __pad00a8[0x8]; // 0xa8 public: - // MPropertyFriendlyName "Sequence" - // MPropertyAttributeChoiceName "Sequence" - CUtlString m_sequenceName; // 0xb0 + CAnimAttachment m_attachment; // 0x0 + CAnimInputDamping m_damping; // 0x80 + CPoseHandle m_poseCacheHandles[10]; // 0x90 + AimMatrixBlendMode m_eBlendMode; // 0xb8 + float m_fAngleIncrement; // 0xbc + int32_t m_nSequenceMaxFrame; // 0xc0 + int32_t m_nBoneMaskIndex; // 0xc4 + bool m_bTargetIsPosition; // 0xc8 }; // Alignment: 7 -// Size: 0x108 -class CMovementComponent : public CAnimComponentBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 -public: - // MPropertyFriendlyName "Movement Modes" - CUtlVector< CMovementMode > m_moveModes; // 0x40 - // MPropertyHideField - CUtlVector< CSmartPtr< CAnimMotorBase > > m_motors; // 0x58 - // MPropertyFriendlyName "Network Path" - bool m_bNetworkPath; // 0x70 -private: - [[maybe_unused]] uint8_t __pad0071[0x3]; // 0x71 -public: - // MPropertyGroupName "+Facing" - // MPropertyFriendlyName "Default Mode" - FacingMode m_eDefaultFacingMode; // 0x74 - // MPropertyGroupName "+Facing" - // MPropertyFriendlyName "Damping" - CAnimInputDamping m_facingDamping; // 0x78 - // MPropertyGroupName "+Facing" - // MPropertyFriendlyName "Network Facing" - bool m_bNetworkFacing; // 0x88 -private: - [[maybe_unused]] uint8_t __pad0089[0x3]; // 0x89 -public: - // MPropertyHideField - AnimParamID m_paramIDs[30]; // 0x8c -}; - -// Alignment: 4 -// Size: 0x30 -class CAnimComponentUpdater -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 -public: - CUtlString m_name; // 0x18 - AnimComponentID m_id; // 0x20 - AnimNodeNetworkMode m_networkMode; // 0x24 - bool m_bStartEnabled; // 0x28 -}; - -// Alignment: 1 -// Size: 0xb8 -class CGroupAnimNode : public CContainerAnimNodeBase +// Size: 0x48 +class CSlopeComponentUpdater : public CAnimComponentUpdater { public: - // MPropertyHideField - CAnimNodeManager m_nodeMgr; // 0x70 + float m_flTraceDistance; // 0x34 + CAnimParamHandle m_hSlopeAngle; // 0x38 + CAnimParamHandle m_hSlopeAngleFront; // 0x3a + CAnimParamHandle m_hSlopeAngleSide; // 0x3c + CAnimParamHandle m_hSlopeHeading; // 0x3e + CAnimParamHandle m_hSlopeNormal; // 0x40 + CAnimParamHandle m_hSlopeNormal_WorldSpace; // 0x42 }; // Alignment: 4 @@ -9545,16 +7142,6 @@ public: CUtlBinaryBlock m_container; // 0x10 }; -// Alignment: 1 -// Size: 0x30 -class CEmitTagAction : public CAnimActionBase -{ -public: - // MPropertyFriendlyName "Tag" - // MPropertyAttributeChoiceName "Tag" - AnimTagID m_tag; // 0x28 -}; - // Alignment: 6 // Size: 0x50 class CVrSkeletalInputSettings @@ -9572,8 +7159,6 @@ public: // Size: 0xd0 class CEnumAnimParameter : public CAnimParameterBase { -private: - [[maybe_unused]] uint8_t __pad0078[0x8]; // 0x78 public: // MPropertyFriendlyName "Default Value" uint8_t m_defaultValue; // 0x80 @@ -9585,25 +7170,23 @@ public: }; // Alignment: 4 -// Size: 0x60 +// Size: 0x58 class CFootstepLandedAnimTag : public CAnimTagBase { -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 public: // MPropertyFriendlyName "Footstep Type" - FootstepLandedFootSoundType_t m_FootstepType; // 0x40 + FootstepLandedFootSoundType_t m_FootstepType; // 0x38 private: - [[maybe_unused]] uint8_t __pad0044[0x4]; // 0x44 + [[maybe_unused]] uint8_t __pad003c[0x4]; // 0x3c public: // MPropertyFriendlyName "Override Sound" // MPropertyAttributeChoiceName "Sound" - CUtlString m_OverrideSoundName; // 0x48 + CUtlString m_OverrideSoundName; // 0x40 // MPropertyFriendlyName "Debug Name" - CUtlString m_DebugAnimSourceString; // 0x50 + CUtlString m_DebugAnimSourceString; // 0x48 // MPropertyFriendlyName "Bone Name" // MPropertyAttributeChoiceName "Bone" - CUtlString m_BoneName; // 0x58 + CUtlString m_BoneName; // 0x50 }; // Alignment: 2 @@ -9615,21 +7198,10 @@ public: struct { uint8_t m_bExclusiveRootMotion: 1; - uint8_t __pad1: 1; + uint8_t __pad2: 1; // Autoaligned }; // 2 bits }; -// Alignment: 1 -// Size: 0x58 -class CRootAnimNode : public CAnimNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x18]; // 0x38 -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x50 -}; - // Alignment: 0 // Size: 0x4 class CFootCycle : public CCycleBase @@ -9638,34 +7210,6 @@ public: // No members available }; -// Alignment: 7 -// Size: 0x28 -class CFootPinningItem -{ -public: - // MPropertyFriendlyName "Foot" - // MPropertyAttributeChoiceName "Foot" - CUtlString m_footName; // 0x0 - // MPropertyFriendlyName "Target Bone" - // MPropertyAttributeChoiceName "Bone" - CUtlString m_targetBoneName; // 0x8 - // MPropertyFriendlyName "IK Chain" - // MPropertyAttributeChoiceName "IKChain" - CUtlString m_ikChainName; // 0x10 - // MPropertyFriendlyName "Tag" - // MPropertyAttributeChoiceName "Tag" - AnimTagID m_tag; // 0x18 - // MPropertyFriendlyName "Parameter" - // MPropertyAttributeChoiceName "BoolParameter" - AnimParamID m_param; // 0x1c - // MPropertyFriendlyName "Max Left Rotation" - // MPropertyAttributeRange "0 180" - float m_flMaxRotationLeft; // 0x20 - // MPropertyFriendlyName "Max Right Rotation" - // MPropertyAttributeRange "0 180" - float m_flMaxRotationRight; // 0x24 -}; - // Alignment: 3 // Size: 0x18 class CAnimDecoder @@ -9676,6 +7220,60 @@ public: int32_t m_nType; // 0x14 }; +// Alignment: 15 +// Size: 0x68 +class CAnimDemoCaptureSettings +{ +public: + // MPropertyFriendlyName "Max Rotation Error" + // MPropertyGroupName "+Spline Settings" + float m_flMaxSplineErrorRotation; // 0x0 + // MPropertyFriendlyName "Max Translation Error" + // MPropertyGroupName "+Spline Settings" + float m_flMaxSplineErrorTranslation; // 0x4 + // MPropertyFriendlyName "Max Scale Error" + // MPropertyGroupName "+Spline Settings" + float m_flMaxSplineErrorScale; // 0x8 + // MPropertyFriendlyName "Max IK Rotation Error" + // MPropertyGroupName "+Spline Settings" + float m_flIkRotation_MaxSplineError; // 0xc + // MPropertyFriendlyName "Max IK Translation Error" + // MPropertyGroupName "+Spline Settings" + float m_flIkTranslation_MaxSplineError; // 0x10 + // MPropertyFriendlyName "Max Rotation Error" + // MPropertyGroupName "+Quantization Settings" + float m_flMaxQuantizationErrorRotation; // 0x14 + // MPropertyFriendlyName "Max Translation Error" + // MPropertyGroupName "+Quantization Settings" + float m_flMaxQuantizationErrorTranslation; // 0x18 + // MPropertyFriendlyName "Max Scale Error" + // MPropertyGroupName "+Quantization Settings" + float m_flMaxQuantizationErrorScale; // 0x1c + // MPropertyFriendlyName "Max IK Rotation Error" + // MPropertyGroupName "+Quantization Settings" + float m_flIkRotation_MaxQuantizationError; // 0x20 + // MPropertyFriendlyName "Max IK Translation Error" + // MPropertyGroupName "+Quantization Settings" + float m_flIkTranslation_MaxQuantizationError; // 0x24 + // MPropertyFriendlyName "Base Sequence" + // MPropertyGroupName "+Base Pose" + // MPropertyAttributeChoiceName "Sequence" + CUtlString m_baseSequence; // 0x28 + // MPropertyFriendlyName "Base Sequence Frame" + // MPropertyGroupName "+Base Pose" + int32_t m_nBaseSequenceFrame; // 0x30 + // MPropertyFriendlyName "Bone Selection Mode" + // MPropertyGroupName "+Bones" + // MPropertyAttrChangeCallback + EDemoBoneSelectionMode m_boneSelectionMode; // 0x34 + // MPropertyFriendlyName "Bones" + // MPropertyGroupName "+Bones" + // MPropertyAttrStateCallback + CUtlVector< BoneDemoCaptureSettings_t > m_bones; // 0x38 + // MPropertyFriendlyName "IK Chains" + CUtlVector< IKDemoCaptureSettings_t > m_ikChains; // 0x50 +}; + // Alignment: 1 // Size: 0x1 class CAnimEnum @@ -9688,8 +7286,6 @@ public: // Size: 0x98 class CAddUpdateNode : public CBinaryUpdateNode { -private: - [[maybe_unused]] uint8_t __pad0088[0x4]; // 0x88 public: BinaryNodeChildOption m_footMotionTiming; // 0x8c bool m_bApplyToFootMotion; // 0x90 @@ -9697,16 +7293,6 @@ public: bool m_bUseModelSpace; // 0x92 }; -// Alignment: 1 -// Size: 0x30 -class CBonePositionMetric : public CMotionMetricBase -{ -public: - // MPropertyFriendlyName "Bone" - // MPropertyAttributeChoiceName "Bone" - CUtlString m_boneName; // 0x28 -}; - // Alignment: 2 // Size: 0x58 class CFutureFacingMetricEvaluator : public CMotionMetricEvaluator @@ -9724,36 +7310,6 @@ public: CUtlString m_MaterialGroupName; // 0x48 }; -// Alignment: 10 -// Size: 0x60 -class CAddAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_baseInput; // 0x38 - // MPropertyHideField - CAnimNodeConnection m_additiveInput; // 0x40 - // MPropertyFriendlyName "Timing Control" - // MPropertyAttrChangeCallback - BinaryNodeTiming m_timingBehavior; // 0x48 - // MPropertyFriendlyName "Timing Blend" - // MPropertyAttributeRange "0 1" - // MPropertyAttrStateCallback - float m_flTimingBlend; // 0x4c - // MPropertyFriendlyName "Foot Motion Timing" - BinaryNodeChildOption m_footMotionTiming; // 0x50 - // MPropertyFriendlyName "Add Foot Motion" - bool m_bApplyToFootMotion; // 0x54 - // MPropertyFriendlyName "Reset Base Child" - bool m_bResetBase; // 0x55 - // MPropertyFriendlyName "Reset Additive Child" - bool m_bResetAdditive; // 0x56 - // MPropertyFriendlyName "Treat Translation Separately" - bool m_bApplyChannelsSeparately; // 0x57 - // MPropertyFriendlyName "Use Model Space" - bool m_bUseModelSpace; // 0x58 -}; - // Alignment: 9 // Size: 0xc0 class CMovementComponentUpdater : public CAnimComponentUpdater @@ -9792,67 +7348,10 @@ public: // No members available }; -// Alignment: 4 -// Size: 0x48 -class CAnimParamSpan -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x20]; // 0x0 -public: - CUtlVector< CAnimParamSpanSample > m_samples; // 0x20 - AnimParamID m_id; // 0x38 - float m_flStartCycle; // 0x3c - float m_flEndCycle; // 0x40 -}; - -// Alignment: 10 -// Size: 0xa8 -class CSelectorAnimNode : public CAnimNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 -public: - // MPropertySuppressField - CUtlVector< CAnimNodeConnection > m_children; // 0x40 - // MPropertyHideField - CUtlVector< AnimTagID > m_tags; // 0x58 - // MPropertyFriendlyName "Selection Source" - // MPropertyAttrChangeCallback - SelectionSource_t m_selectionSource; // 0x70 - // MPropertyFriendlyName "Bool Parameter" - // MPropertyAttributeChoiceName "BoolParameter" - // MPropertyAttrChangeCallback - // MPropertyAttrStateCallback - AnimParamID m_boolParamID; // 0x74 - // MPropertyFriendlyName "Enum Parameter" - // MPropertyAttributeChoiceName "EnumParameter" - // MPropertyAttrChangeCallback - // MPropertyAttrStateCallback - AnimParamID m_enumParamID; // 0x78 -private: - [[maybe_unused]] uint8_t __pad007c[0x4]; // 0x7c -public: - // MPropertyFriendlyName "Blend Duration" - CFloatAnimValue m_blendDuration; // 0x80 - // MPropertyFriendlyName "Tag Behavior" - SelectorTagBehavior_t m_tagBehavior; // 0x98 - // MPropertyFriendlyName "Reset On Change" - bool m_bResetOnChange; // 0x9c - // MPropertyFriendlyName "Start new option at same cycle" - bool m_bSyncCyclesOnChange; // 0x9d -private: - [[maybe_unused]] uint8_t __pad009e[0x2]; // 0x9e -public: - // MPropertyHideField - CBlendCurve m_blendCurve; // 0xa0 -}; - // Alignment: 5 // Size: 0x90 class CAnimReplayFrame { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: CUtlVector< CUtlBinaryBlock > m_inputDataBlocks; // 0x10 CUtlBinaryBlock m_instanceData; // 0x28 @@ -9903,140 +7402,27 @@ public: CUtlVector< float32 > m_outputWeightList; // 0x10 }; -// Alignment: 2 -// Size: 0x40 -class CSetParameterAction : public CAnimActionBase +// Alignment: 1 +// Size: 0x8 +struct BoneDemoCaptureSettings_t { public: - // MPropertyFriendlyName "Parameter" - // MPropertyAttributeChoiceName "Parameter" - AnimParamID m_param; // 0x28 - // MPropertyFriendlyName "Value" - CAnimVariant m_value; // 0x2c + // MPropertyFriendlyName "Bone" + // MPropertyAttributeChoiceName "Bone" + CUtlString m_boneName; // 0x0 }; -// Alignment: 23 -// Size: 0xd0 -class CMotionMatchingAnimNode : public CAnimNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x10]; // 0x38 -public: - // MPropertyHideField - CUtlVector< CSmartPtr< CMotionItemGroup > > m_groups; // 0x48 - // MPropertyHideField - CUtlVector< CSmartPtr< CMotionMetricBase > > m_metrics; // 0x60 - // MPropertyHideField - CBlendCurve m_blendCurve; // 0x78 - // MPropertyHideField - int32_t m_nRandomSeed; // 0x80 - // MPropertyFriendlyName "Sample Rate" - // MPropertyAttributeRange "0.01 0.2" - float m_flSampleRate; // 0x84 - // MPropertyFriendlyName "Search Every Update" - // MPropertyGroupName "Search Frequency" - // MPropertyAttrChangeCallback - bool m_bSearchEveryTick; // 0x88 -private: - [[maybe_unused]] uint8_t __pad0089[0x3]; // 0x89 -public: - // MPropertyFriendlyName "Search Interval" - // MPropertyGroupName "Search Frequency" - // MPropertyAttrStateCallback - float m_flSearchInterval; // 0x8c - // MPropertyFriendlyName "Search when motion ends" - // MPropertyGroupName "Search Frequency" - // MPropertyAttrStateCallback - bool m_bSearchWhenMotionEnds; // 0x90 - // MPropertyFriendlyName "Search when goal changes" - // MPropertyGroupName "Search Frequency" - // MPropertyAttrStateCallback - bool m_bSearchWhenGoalChanges; // 0x91 -private: - [[maybe_unused]] uint8_t __pad0092[0x2]; // 0x92 -public: - // MPropertyFriendlyName "Blend Time" - float m_flBlendTime; // 0x94 - // MPropertyFriendlyName "Selection Threshold" - float m_flSelectionThreshold; // 0x98 - // MPropertyFriendlyName "Re-Selection Time Window" - float m_flReselectionTimeWindow; // 0x9c - // MPropertyFriendlyName "Lock Selection When Waning" - bool m_bLockSelectionWhenWaning; // 0xa0 - // MPropertyFriendlyName "Enable Rotation Correction" - bool m_bEnableRotationCorrection; // 0xa1 - // MPropertyFriendlyName "Enable Goal Assist" - // MPropertyGroupName "Goal Assist" - // MPropertyAttrChangeCallback - bool m_bGoalAssist; // 0xa2 -private: - [[maybe_unused]] uint8_t __pad00a3[0x1]; // 0xa3 -public: - // MPropertyFriendlyName "Goal Assist Distance" - // MPropertyGroupName "Goal Assist" - // MPropertyAttrStateCallback - float m_flGoalAssistDistance; // 0xa4 - // MPropertyFriendlyName "Goal Assist Tolerance" - // MPropertyGroupName "Goal Assist" - // MPropertyAttrStateCallback - float m_flGoalAssistTolerance; // 0xa8 - // MPropertyFriendlyName "Enable Distance Scaling" - // MPropertyGroupName "Distance Scaling" - // MPropertyAttrChangeCallback - bool m_bEnableDistanceScaling; // 0xac -private: - [[maybe_unused]] uint8_t __pad00ad[0x3]; // 0xad -public: - // MPropertyFriendlyName "Outer Stopping Radius" - // MPropertyGroupName "Distance Scaling" - // MPropertyAttrStateCallback - float m_flDistanceScale_OuterRadius; // 0xb0 - // MPropertyFriendlyName "Inner Stopping Radius" - // MPropertyGroupName "Distance Scaling" - // MPropertyAttrStateCallback - float m_flDistanceScale_InnerRadius; // 0xb4 - // MPropertyFriendlyName "Maximum Speed Scale" - // MPropertyGroupName "Distance Scaling" - // MPropertyAttrStateCallback - float m_flDistanceScale_MaxScale; // 0xb8 - // MPropertyFriendlyName "Minimum Speed Scale" - // MPropertyGroupName "Distance Scaling" - // MPropertyAttrStateCallback - float m_flDistanceScale_MinScale; // 0xbc - // MPropertyFriendlyName "Damping" - // MPropertyGroupName "Distance Scaling" - // MPropertyAttrStateCallback - CAnimInputDamping m_distanceScale_Damping; // 0xc0 -}; - -// Alignment: 4 -// Size: 0x78 -class CCycleControlClipAnimNode : public CAnimNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x18]; // 0x38 -public: - // MPropertyHideField - CUtlVector< CSmartPtr< CAnimTagSpan > > m_tagSpans; // 0x50 - // MPropertyFriendlyName "Sequence" - // MPropertyAttributeChoiceName "Sequence" - CUtlString m_sequenceName; // 0x68 - // MPropertyFriendlyName "Blend Source" - // MPropertyAttrChangeCallback - // MPropertyAttrStateCallback - AnimValueSource m_valueSource; // 0x70 - // MPropertyFriendlyName "Parameter" - // MPropertyAttributeChoiceName "FloatParameter" - AnimParamID m_param; // 0x74 -}; - -// Alignment: 2 -// Size: 0x10 -class CRigidBodyWeight +// Alignment: 6 +// Size: 0x100 +class CAnimParameterManagerUpdater { public: - CUtlString m_name; // 0x0 - float m_flWeight; // 0x8 + CUtlVector< CSmartPtr< CAnimParameterBase > > m_parameters; // 0x18 + CUtlHashtable< AnimParamID, int32 > m_idToIndexMap; // 0x30 + CUtlHashtable< CUtlString, int32 > m_nameToIndexMap; // 0x50 + CUtlVector< CAnimParamHandle > m_indexToHandle; // 0x70 + CUtlVector< CUtlPair< CAnimParamHandle, CAnimVariant > > m_autoResetParams; // 0x88 + CUtlHashtable< CAnimParamHandle, int16 > m_autoResetMap; // 0xa0 }; // Alignment: 7 @@ -10057,8 +7443,6 @@ public: // Size: 0x150 class CLookAtUpdateNode : public CUnaryUpdateNode { -private: - [[maybe_unused]] uint8_t __pad0068[0x8]; // 0x68 public: LookAtOpFixedSettings_t m_opFixedSettings; // 0x70 private: @@ -10112,12 +7496,17 @@ public: int32_t m_Data; // 0x4 }; -// Alignment: 1 +// Alignment: 5 // Size: 0x38 -class CAnimScriptComponentUpdater : public CAnimComponentUpdater +class CAnimEventDefinition { public: - AnimScriptHandle m_hScript; // 0x30 + int32_t m_nFrame; // 0x8 + float m_flCycle; // 0xc + KeyValues3 m_EventData; // 0x10 + // MKV3TransferName "m_sOptions" + CBufferString m_sLegacyOptions; // 0x20 + CGlobalSymbol m_sEventName; // 0x30 }; // Alignment: 2 @@ -10129,29 +7518,10 @@ public: KeyValues3 m_Args; // 0x50 }; -// Alignment: 4 -// Size: 0x70 -class CAnimStateTransition -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x28]; // 0x0 -public: - // MPropertySuppressField - CConditionContainer m_conditionList; // 0x28 - // MPropertyHideField - AnimStateID m_srcState; // 0x60 - // MPropertyHideField - AnimStateID m_destState; // 0x64 - // MPropertyFriendlyName "Disable" - bool m_bDisabled; // 0x68 -}; - // Alignment: 6 // Size: 0x160 class CAimMatrixUpdateNode : public CUnaryUpdateNode { -private: - [[maybe_unused]] uint8_t __pad0068[0x8]; // 0x68 public: AimMatrixOpFixedSettings_t m_opFixedSettings; // 0x70 private: @@ -10171,8 +7541,6 @@ public: // Size: 0x58 class CAnimStateMachineUpdater { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: CUtlVector< CStateUpdateData > m_states; // 0x8 CUtlVector< CTransitionUpdateData > m_transitions; // 0x20 @@ -10186,8 +7554,6 @@ public: // Size: 0x138 class CSequenceGroupData { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: CBufferString m_sName; // 0x10 uint32_t m_nFlags; // 0x20 @@ -10208,18 +7574,6 @@ public: CUtlVector< CSeqIKLock > m_localIKAutoplayLockArray; // 0x120 }; -// Alignment: 2 -// Size: 0x48 -class CStanceScaleAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Parameter" - // MPropertyAttributeChoiceName "FloatParameter" - AnimParamID m_param; // 0x40 -}; - // Alignment: 0 // Size: 0x38 class CStaticPoseCacheBuilder : public CStaticPoseCache @@ -10228,19 +7582,6 @@ public: // No members available }; -// Alignment: 3 -// Size: 0x48 -class CPathHelperAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Stopping Radius" - float m_flStoppingRadius; // 0x40 - // MPropertyFriendlyName "Stopping Min Speed Scale" - float m_flStoppingSpeedScale; // 0x44 -}; - // Alignment: 7 // Size: 0xa8 struct ModelSkeletonData_t @@ -10259,8 +7600,6 @@ public: // Size: 0xa0 class CQuaternionAnimParameter : public CAnimParameterBase { -private: - [[maybe_unused]] uint8_t __pad0078[0x8]; // 0x78 public: // MPropertyFriendlyName "Default Value" Quaternion m_defaultValue; // 0x80 @@ -10268,25 +7607,10 @@ public: bool m_bInterpolate; // 0x90 }; -// Alignment: 2 -// Size: 0x48 -class CFootPositionMetric : public CMotionMetricBase -{ -public: - // MPropertyFriendlyName "Foot" - // MPropertyAttributeChoiceName "Foot" - // MPropertyAutoExpandSelf - CUtlVector< CUtlString > m_feet; // 0x28 - // MPropertyFriendlyName "Ignore Slope" - bool m_bIgnoreSlope; // 0x40 -}; - // Alignment: 9 // Size: 0x48 class CVRInputComponentUpdater : public CAnimComponentUpdater { -private: - [[maybe_unused]] uint8_t __pad0030[0x4]; // 0x30 public: CAnimParamHandle m_FingerCurl_Thumb; // 0x34 CAnimParamHandle m_FingerCurl_Index; // 0x36 @@ -10303,8 +7627,6 @@ public: // Size: 0xd0 class CBlendUpdateNode : public CAnimUpdateNodeBase { -private: - [[maybe_unused]] uint8_t __pad0058[0x8]; // 0x58 public: CUtlVector< CAnimUpdateNodeRef > m_children; // 0x60 CUtlVector< uint8 > m_sortedOrder; // 0x78 @@ -10352,8 +7674,6 @@ public: // Size: 0x90 class CCycleControlClipUpdateNode : public CLeafUpdateNode { -private: - [[maybe_unused]] uint8_t __pad0058[0x8]; // 0x58 public: CUtlVector< TagSpan_t > m_tags; // 0x60 private: @@ -10382,18 +7702,6 @@ public: // No members available }; -// Alignment: 2 -// Size: 0x38 -class CExpressionAction : public CAnimActionBase -{ -public: - AnimParamID m_param; // 0x28 -private: - [[maybe_unused]] uint8_t __pad002c[0x4]; // 0x2c -public: - CUtlString m_expression; // 0x30 -}; - // Alignment: 5 // Size: 0x28 class CAnimFoot @@ -10457,18 +7765,6 @@ public: float m_flWeight; // 0x8 }; -// Alignment: 2 -// Size: 0x80 -class CAnimNodeState : public CAnimState -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x70 - // MPropertyFriendlyName "Exclusive Root Motion" - // MPropertySortPriority "0" - bool m_bIsRootMotionExclusive; // 0x78 -}; - // Alignment: 1 // Size: 0x88 class CJiggleBoneUpdateNode : public CUnaryUpdateNode @@ -10541,8 +7837,6 @@ public: // Size: 0xa8 class CSequenceUpdateNode : public CLeafUpdateNode { -private: - [[maybe_unused]] uint8_t __pad0058[0x8]; // 0x58 public: CParamSpanUpdater m_paramSpans; // 0x60 CUtlVector< TagSpan_t > m_tags; // 0x78 @@ -10578,32 +7872,6 @@ public: JiggleBoneSimSpace m_eSimSpace; // 0x28 }; -// Alignment: 7 -// Size: 0x50 -class CDampedPathAnimMotor : public CPathAnimMotorBase -{ -public: - // MPropertyFriendlyName "Anticipation Time" - float m_flAnticipationTime; // 0x30 - // MPropertyFriendlyName "Minimum Speed Percentage" - float m_flMinSpeedScale; // 0x34 - // MPropertyFriendlyName "Anticipation Position Parameter" - // MPropertyAttributeChoiceName "VectorParameter" - AnimParamID m_anticipationPosParam; // 0x38 - // MPropertyFriendlyName "Anticipation Heading Parameter" - // MPropertyAttributeChoiceName "FloatParameter" - AnimParamID m_anticipationHeadingParam; // 0x3c - // MPropertyFriendlyName "Spring Constant" - // MPropertyGroupName "+Stopping:Arrival Damping" - float m_flSpringConstant; // 0x40 - // MPropertyFriendlyName "Min Tension" - // MPropertyGroupName "+Stopping:Arrival Damping" - float m_flMinSpringTension; // 0x44 - // MPropertyFriendlyName "Max Tension" - // MPropertyGroupName "+Stopping:Arrival Damping" - float m_flMaxSpringTension; // 0x48 -}; - // Alignment: 20 // Size: 0x138 class CFootLockUpdateNode : public CUnaryUpdateNode @@ -10634,21 +7902,6 @@ public: bool m_bEnableRootHeightDamping; // 0x135 }; -// Alignment: 3 -// Size: 0x58 -class CCommentAnimNode : public CAnimNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 -public: - // MPropertySuppressField - CUtlString m_commentText; // 0x40 - // MPropertySuppressField - Vector2D m_size; // 0x48 - // MPropertyFriendlyName "Color" - Color m_color; // 0x50 -}; - // Alignment: 4 // Size: 0x78 class CPathMetricEvaluator : public CMotionMetricEvaluator @@ -10663,19 +7916,6 @@ public: float m_flMinExtrapolationSpeed; // 0x70 }; -// Alignment: 2 -// Size: 0x48 -class CNodeBlend2DItem : public CBlend2DItemBase -{ -private: - [[maybe_unused]] uint8_t __pad0030[0x8]; // 0x30 -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Name" - CUtlString m_name; // 0x40 -}; - // Alignment: 3 // Size: 0x20 class FootStepTrigger @@ -10686,109 +7926,6 @@ public: StepPhase m_triggerPhase; // 0x1c }; -// Alignment: 13 -// Size: 0x78 -class CMoverAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Generate Movement" - // MPropertyGroupName "Generate Movement" - // MPropertyAttrChangeCallback - bool m_bApplyMovement; // 0x40 -private: - [[maybe_unused]] uint8_t __pad0041[0x3]; // 0x41 -public: - // MPropertyFriendlyName "Movement Velocity Parameter" - // MPropertyGroupName "Generate Movement" - // MPropertyAttributeChoiceName "VectorParameter" - // MPropertyAttrStateCallback - AnimParamID m_moveVectorParam; // 0x44 - // MPropertyFriendlyName "Orient Movement" - // MPropertyGroupName "Orient Movement" - // MPropertyAttrChangeCallback - bool m_bOrientMovement; // 0x48 -private: - [[maybe_unused]] uint8_t __pad0049[0x3]; // 0x49 -public: - // MPropertyFriendlyName "Movement Heading Parameter" - // MPropertyGroupName "Orient Movement" - // MPropertyAttributeChoiceName "FloatParameter" - // MPropertyAttrStateCallback - AnimParamID m_moveHeadingParam; // 0x4c - // MPropertyFriendlyName "Additive" - bool m_bAdditive; // 0x50 - // MPropertyFriendlyName "Turn to Face" - // MPropertyGroupName "Turn to Face" - // MPropertyAttrChangeCallback - bool m_bTurnToFace; // 0x51 -private: - [[maybe_unused]] uint8_t __pad0052[0x2]; // 0x52 -public: - // MPropertyFriendlyName "Face Direction" - // MPropertyGroupName "Turn to Face" - // MPropertyAttrChangeCallback - // MPropertyAttrStateCallback - AnimValueSource m_facingTarget; // 0x54 - // MPropertyFriendlyName "Facing Parameter" - // MPropertyGroupName "Turn to Face" - // MPropertyAttributeChoiceName "FloatParameter" - // MPropertyAttrStateCallback - AnimParamID m_param; // 0x58 - // MPropertyFriendlyName "Turn Limit Only" - // MPropertyGroupName "Turn to Face" - // MPropertyAttrStateCallback - // MPropertyAttrChangeCallback - bool m_bLimitOnly; // 0x5c -private: - [[maybe_unused]] uint8_t __pad005d[0x3]; // 0x5d -public: - // MPropertyFriendlyName "Turn to Face Offset" - // MPropertyAttributeRange "-180 180" - // MPropertyGroupName "Turn to Face" - // MPropertyAttrStateCallback - float m_flTurnToFaceOffset; // 0x60 - // MPropertyFriendlyName "Turn to Face Limit" - // MPropertyAttributeRange "0 180" - // MPropertyGroupName "Turn to Face" - // MPropertyAttrStateCallback - float m_flTurnToFaceLimit; // 0x64 - // MPropertyFriendlyName "Damping" - // MPropertyGroupName "Turn to Face" - // MPropertyAttrStateCallback - CAnimInputDamping m_damping; // 0x68 -}; - -// Alignment: 7 -// Size: 0x68 -class CDirectionalBlendAnimNode : public CAnimNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 -public: - // MPropertyFriendlyName "Sequence Names Prefix" - CUtlString m_animNamePrefix; // 0x40 - // MPropertyFriendlyName "Blend Source" - // MPropertyAttrChangeCallback - // MPropertyAttrStateCallback - AnimValueSource m_blendValueSource; // 0x48 - // MPropertyFriendlyName "Parameter" - // MPropertyAttributeChoiceName "FloatParameter" - AnimParamID m_param; // 0x4c - // MPropertyFriendlyName "Loop" - bool m_bLoop; // 0x50 - // MPropertyFriendlyName "Lock Blend on Reset" - bool m_bLockBlendOnReset; // 0x51 -private: - [[maybe_unused]] uint8_t __pad0052[0x2]; // 0x52 -public: - // MPropertyFriendlyName "Playback Speed" - float m_playbackSpeed; // 0x54 - // MPropertyFriendlyName "Damping" - CAnimInputDamping m_damping; // 0x58 -}; - // Alignment: 7 // Size: 0x2c class CAnimMovement @@ -10874,8 +8011,6 @@ public: // Size: 0x98 class CSubtractUpdateNode : public CBinaryUpdateNode { -private: - [[maybe_unused]] uint8_t __pad0088[0x4]; // 0x88 public: BinaryNodeChildOption m_footMotionTiming; // 0x8c bool m_bApplyToFootMotion; // 0x90 @@ -10891,48 +8026,6 @@ public: CAnimStateMachineUpdater m_stateMachine; // 0x30 }; -// Alignment: 11 -// Size: 0x88 -class CFootPinningAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Feet" - // MPropertyAutoExpandSelf - CUtlVector< CFootPinningItem > m_items; // 0x40 - // MPropertyFriendlyName "Lock Timing Source" - FootPinningTimingSource m_eTimingSource; // 0x58 - // MPropertyFriendlyName "Blend Time" - float m_flBlendTime; // 0x5c - // MPropertyFriendlyName "Lock Break Distance" - float m_flLockBreakDistance; // 0x60 - // MPropertyFriendlyName "Max Leg Straight Amount" - // MPropertyAttributeRange "0 1" - float m_flMaxLegStraightAmount; // 0x64 - // MPropertyFriendlyName "Limit Foot Rotation" - // MPropertyGroupName "Foot Rotation Limits" - bool m_bApplyFootRotationLimits; // 0x68 -private: - [[maybe_unused]] uint8_t __pad0069[0x7]; // 0x69 -public: - // MPropertyFriendlyName "Hip Bone" - // MPropertyAttributeChoiceName "Bone" - // MPropertyGroupName "Foot Rotation Limits" - CUtlString m_hipBoneName; // 0x70 - // MPropertyFriendlyName "Limit Leg Twist" - // MPropertyGroupName "Knee Twist Limits" - bool m_bApplyLegTwistLimits; // 0x78 -private: - [[maybe_unused]] uint8_t __pad0079[0x3]; // 0x79 -public: - // MPropertyFriendlyName "Max Leg Twist Angle" - // MPropertyGroupName "Knee Twist Limits" - float m_flMaxLegTwist; // 0x7c - // MPropertyFriendlyName "Reset Child" - bool m_bResetChild; // 0x80 -}; - // Alignment: 8 // Size: 0xa8 class CSelectorUpdateNode : public CAnimUpdateNodeBase @@ -10985,8 +8078,6 @@ public: // Size: 0x78 class CWayPointHelperUpdateNode : public CUnaryUpdateNode { -private: - [[maybe_unused]] uint8_t __pad0068[0x4]; // 0x68 public: float m_flStartCycle; // 0x6c float m_flEndCycle; // 0x70 @@ -10999,8 +8090,6 @@ public: // Size: 0xf8 class CStateMachineUpdateNode : public CAnimUpdateNodeBase { -private: - [[maybe_unused]] uint8_t __pad0058[0x10]; // 0x58 public: CAnimStateMachineUpdater m_stateMachine; // 0x68 CUtlVector< CStateNodeStateData > m_stateData; // 0xc0 @@ -11034,27 +8123,6 @@ public: CUtlVector< CUtlString > m_decodedAnims; // 0x58 }; -// Alignment: 0 -// Size: 0x28 -class CCurrentRotationVelocityMetric : public CMotionMetricBase -{ -public: - // No members available -}; - -// Alignment: 5 -// Size: 0x38 -class CAnimAnimEvent -{ -public: - int32_t m_nFrame; // 0x0 - float m_flCycle; // 0x4 - KeyValues3 m_EventData; // 0x8 - // MKV3TransferName "m_sOptions" - CBufferString m_sLegacyOptions; // 0x18 - CBufferString m_sEventName; // 0x28 -}; - // Alignment: 0 // Size: 0x4 class CAnimCycle : public CCycleBase @@ -11064,65 +8132,45 @@ public: }; // Alignment: 10 -// Size: 0x80 +// Size: 0x78 class CParticleAnimTag : public CAnimTagBase { -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 public: // MPropertySuppressField - CStrongHandle< InfoForResourceTypeIParticleSystemDefinition > m_hParticleSystem; // 0x40 + CStrongHandle< InfoForResourceTypeIParticleSystemDefinition > m_hParticleSystem; // 0x38 // MPropertyAttributeEditor "AssetBrowse( vpcf )" // MPropertyFriendlyName "Particle System" - CUtlString m_particleSystemName; // 0x48 + CUtlString m_particleSystemName; // 0x40 // MPropertyFriendlyName "Configuration" - CUtlString m_configName; // 0x50 + CUtlString m_configName; // 0x48 // MPropertyFriendlyName "Detach From Owner" - bool m_bDetachFromOwner; // 0x58 + bool m_bDetachFromOwner; // 0x50 // MPropertyFriendlyName "Stop on Tag End" // MPropertyGroupName "Ending" - bool m_bStopWhenTagEnds; // 0x59 + bool m_bStopWhenTagEnds; // 0x51 // MPropertyFriendlyName "Tag End Stop is Instant" // MPropertyGroupName "Ending" - bool m_bTagEndStopIsInstant; // 0x5a + bool m_bTagEndStopIsInstant; // 0x52 private: - [[maybe_unused]] uint8_t __pad005b[0x5]; // 0x5b + [[maybe_unused]] uint8_t __pad0053[0x5]; // 0x53 public: // MPropertyFriendlyName "Attachment" // MPropertyGroupName "Attachments" // MPropertyAttributeChoiceName "Attachment" - CUtlString m_attachmentName; // 0x60 + CUtlString m_attachmentName; // 0x58 // MPropertyFriendlyName "Attachment Type" // MPropertyGroupName "Attachments" - ParticleAttachment_t m_attachmentType; // 0x68 + ParticleAttachment_t m_attachmentType; // 0x60 private: - [[maybe_unused]] uint8_t __pad006c[0x4]; // 0x6c + [[maybe_unused]] uint8_t __pad0064[0x4]; // 0x64 public: // MPropertyFriendlyName "Attachment (Control Point 1)" // MPropertyGroupName "Attachments" // MPropertyAttributeChoiceName "Attachment" - CUtlString m_attachmentCP1Name; // 0x70 + CUtlString m_attachmentCP1Name; // 0x68 // MPropertyFriendlyName "Attachment Type (Control Point 1)" // MPropertyGroupName "Attachments" - ParticleAttachment_t m_attachmentCP1Type; // 0x78 -}; - -// Alignment: 5 -// Size: 0x48 -class CCycleCondition : public CConditionBase -{ -public: - Comparison_t m_comparisonOp; // 0x28 -private: - [[maybe_unused]] uint8_t __pad002c[0x4]; // 0x2c -public: - CUtlString m_comparisonString; // 0x30 - float m_comparisonValue; // 0x38 - ComparisonValueType m_comparisonValueType; // 0x3c -private: - [[maybe_unused]] uint8_t __pad003d[0x3]; // 0x3d -public: - AnimParamID m_comparisonParamID; // 0x40 + ParticleAttachment_t m_attachmentCP1Type; // 0x70 }; // Alignment: 2 @@ -11134,24 +8182,10 @@ public: bool m_bSetEnabled; // 0x1c }; -// Alignment: 2 -// Size: 0x48 -class CSlowDownOnSlopesAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Slow Down Strength" - // MPropertyAttributeRange "0.1 2" - float m_flSlowDownStrength; // 0x40 -}; - // Alignment: 7 // Size: 0x58 class CMotionGraph { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: CParamSpanUpdater m_paramSpans; // 0x10 CUtlVector< TagSpan_t > m_tags; // 0x28 @@ -11187,35 +8221,10 @@ public: CUtlVector< CHitBoxSet > m_HitBoxSets; // 0x0 }; -// Alignment: 2 -// Size: 0x48 -class CStepsRemainingMetric : public CMotionMetricBase -{ -public: - // MPropertyFriendlyName "Feet" - // MPropertyAttributeChoiceName "Foot" - // MPropertyAutoExpandSelf - CUtlVector< CUtlString > m_feet; // 0x28 - // MPropertyFriendlyName "Min Steps Remaining" - float m_flMinStepsRemaining; // 0x40 -}; - -// Alignment: 3 -// Size: 0x58 -class CRagdollComponent : public CAnimComponentBase -{ -public: - CUtlVector< CRigidBodyWeightList > m_weightLists; // 0x38 - float m_flSpringFrequencyMin; // 0x50 - float m_flSpringFrequencyMax; // 0x54 -}; - // Alignment: 10 // Size: 0xe8 class CLeanMatrixUpdateNode : public CLeafUpdateNode { -private: - [[maybe_unused]] uint8_t __pad0058[0x4]; // 0x58 public: int32_t m_frameCorners[3][3]; // 0x5c CPoseHandle m_poses[9]; // 0x80 @@ -11253,8 +8262,6 @@ public: // Size: 0xf0 class CBlend2DUpdateNode : public CAnimUpdateNodeBase { -private: - [[maybe_unused]] uint8_t __pad0058[0x8]; // 0x58 public: CUtlVector< BlendItem_t > m_items; // 0x60 CUtlVector< TagSpan_t > m_tags; // 0x78 @@ -11280,12 +8287,12 @@ public: }; // Alignment: 1 -// Size: 0xb8 +// Size: 0x60 class CCPPScriptComponentUpdater : public CAnimComponentUpdater { public: // MPropertyFriendlyName "Scripts" - CUtlVector< CUtlString > m_scriptsToRun; // 0x30 + CUtlVector< CGlobalSymbol > m_scriptsToRun; // 0x30 }; // Alignment: 11 @@ -11348,8 +8355,6 @@ public: // Size: 0x60 class CConstraintTarget { -private: - [[maybe_unused]] uint8_t __pad0000[0x20]; // 0x0 public: Quaternion m_qOffset; // 0x20 Vector m_vOffset; // 0x30 @@ -11362,14 +8367,6 @@ public: bool m_bIsAttachment; // 0x59 }; -// Alignment: 0 -// Size: 0x38 -class CInputStreamAnimNode : public CAnimNodeBase -{ -public: - // No members available -}; - // Alignment: 4 // Size: 0x100 struct VPhysXConstraint2_t @@ -11389,78 +8386,6 @@ public: CUtlVector< CUtlString > m_Choices; // 0x48 }; -// Alignment: 2 -// Size: 0xb8 -class CSubGraphAnimNode : public CContainerAnimNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0070[0x8]; // 0x70 -public: - // MPropertyFriendlyName "SubGraph File" - // MPropertyAttributeEditor "AssetBrowse( vsubgrph )" - // MPropertyAttrChangeCallback - CUtlString m_subGraphFilename; // 0x78 - // MPropertyHideField - CUtlHashtable< CUtlString, CUtlString > m_animNameMap; // 0x80 -}; - -// Alignment: 7 -// Size: 0x60 -class CSlopeComponent : public CAnimComponentBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 -public: - // MPropertyFriendlyName "Trace Distance" - float m_flTraceDistance; // 0x40 - // MPropertyHideField - AnimParamID m_slopeAngleID; // 0x44 - // MPropertyHideField - AnimParamID m_slopeHeadingID; // 0x48 - // MPropertyHideField - AnimParamID m_slopeAngleSideID; // 0x4c - // MPropertyHideField - AnimParamID m_slopeAngleFrontID; // 0x50 - // MPropertyHideField - AnimParamID m_slopeNormalID; // 0x54 - // MPropertyHideField - AnimParamID m_slopeNormal_WorldSpaceID; // 0x58 -}; - -// Alignment: 6 -// Size: 0x100 -class CAnimParameterListUpdater -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 -public: - CUtlVector< CSmartPtr< CAnimParameterBase > > m_parameters; // 0x18 - CUtlHashtable< AnimParamID, int32 > m_idToIndexMap; // 0x30 - CUtlHashtable< CUtlString, int32 > m_nameToIndexMap; // 0x50 - CUtlVector< CAnimParamHandle > m_indexToHandle; // 0x70 - CUtlVector< CUtlPair< CAnimParamHandle, CAnimVariant > > m_autoResetParams; // 0x88 - CUtlHashtable< CAnimParamHandle, int16 > m_autoResetMap; // 0xa0 -}; - -// Alignment: 5 -// Size: 0x58 -class CFollowAttachmentAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Bone" - // MPropertyAttributeChoiceName "Bone" - CUtlString m_boneName; // 0x40 - // MPropertyFriendlyName "Target Attachment" - // MPropertyAttributeChoiceName "Attachment" - CUtlString m_attachmentName; // 0x48 - // MPropertyFriendlyName "Match Translation" - bool m_bMatchTranslation; // 0x50 - // MPropertyFriendlyName "Match Rotation" - bool m_bMatchRotation; // 0x51 -}; - // Alignment: 6 // Size: 0x40 struct BlendItem_t @@ -11522,46 +8447,6 @@ public: AnimScriptHandle m_hScript; // 0x1c }; -// Alignment: 6 -// Size: 0xe0 -class CAnimationSubGraph -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 -public: - CAnimNodeManager m_nodeManager; // 0x8 - CAnimComponentManager m_componentManager; // 0x50 - CUtlVector< CSmartPtr< CAnimParameterBase > > m_localParameters; // 0x78 - CUtlVector< CSmartPtr< CAnimTagBase > > m_localTags; // 0x90 - CUtlVector< CUtlString > m_referencedParamGroups; // 0xa8 - CUtlVector< CUtlString > m_referencedTagGroups; // 0xc0 -}; - -// Alignment: 7 -// Size: 0x30 -class CJiggleBoneItem -{ -public: - // MPropertyFriendlyName "Bone" - // MPropertyAttributeChoiceName "Bone" - CUtlString m_boneName; // 0x0 - // MPropertyFriendlyName "Spring Strength" - float m_flSpringStrength; // 0x8 - // MPropertyFriendlyName "Sim Rate (FPS)" - float m_flSimRateFPS; // 0xc - // MPropertyFriendlyName "Damping" - // MPropertyAttributeRange "0 1" - float m_flDamping; // 0x10 - // MPropertyFriendlyName "Sim Space" - JiggleBoneSimSpace m_eSimSpace; // 0x14 - // MPropertyFriendlyName "Max" - // MPropertyGroupName "Movement Limits" - Vector m_vBoundsMaxLS; // 0x18 - // MPropertyFriendlyName "Min" - // MPropertyGroupName "Movement Limits" - Vector m_vBoundsMinLS; // 0x24 -}; - // Alignment: 10 // Size: 0xb8 class CChoiceUpdateNode : public CAnimUpdateNodeBase @@ -11591,17 +8476,6 @@ public: CUtlVector< int32 > m_selectableSamples; // 0x68 }; -// Alignment: 1 -// Size: 0x40 -class CFootCycleMetric : public CMotionMetricBase -{ -public: - // MPropertyFriendlyName "Foot" - // MPropertyAttributeChoiceName "Foot" - // MPropertyAutoExpandSelf - CUtlVector< CUtlString > m_feet; // 0x28 -}; - // Alignment: 23 // Size: 0x140 class CMotionMatchingUpdateNode : public CLeafUpdateNode @@ -11659,25 +8533,6 @@ public: int32_t m_nNumChannels; // 0x8 }; -// Alignment: 4 -// Size: 0x48 -class CSkeletalInputAnimNode : public CAnimNodeBase -{ -public: - // MPropertyFriendlyName "Data Source" - // MPropertyAttrChangeCallback - AnimVrBoneTransformSource_t m_transformSource; // 0x38 - // MPropertyFriendlyName "Motion Range" - // MPropertyAttrStateCallback - AnimVRHandMotionRange_t m_motionRange; // 0x3c - // MPropertyFriendlyName "Enable IK" - // MPropertyGroupName "+Retargetting" - bool m_bEnableIK; // 0x40 - // MPropertyFriendlyName "Enable Collision" - // MPropertyGroupName "+Retargetting" - bool m_bEnableCollision; // 0x41 -}; - // Alignment: 3 // Size: 0xc struct TagSpan_t @@ -11688,96 +8543,6 @@ public: float m_endCycle; // 0x8 }; -// Alignment: 2 -// Size: 0x60 -class CSolveIKChainAnimNode : public CAnimNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x40 - // MPropertyFriendlyName "IK Chains" - // MPropertyAutoExpandSelf - CUtlVector< CSolveIKChainAnimNodeChainData > m_IkChains; // 0x48 -}; - -// Alignment: 17 -// Size: 0x88 -class CLookAtAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Target" - // MPropertyAttrChangeCallback - AnimVectorSource m_target; // 0x40 - // MPropertyFriendlyName "Target Parameter" - // MPropertyAttributeChoiceName "VectorParameter" - // MPropertyAttrStateCallback - AnimParamID m_param; // 0x44 - // MPropertyFriendlyName "Parameter is a Position" - // MPropertyAttrStateCallback - bool m_bIsPosition; // 0x48 -private: - [[maybe_unused]] uint8_t __pad0049[0x3]; // 0x49 -public: - // MPropertyFriendlyName "Weight Parameter" - // MPropertyAttributeChoiceName "FloatParameter" - AnimParamID m_weightParam; // 0x4c - // MPropertyFriendlyName "LookAt Chain" - // MPropertyAttributeChoiceName "LookAtChain" - CUtlString m_lookatChainName; // 0x50 - // MPropertyFriendlyName "Aim Attachment" - // MPropertyAttributeChoiceName "Attachment" - CUtlString m_attachmentName; // 0x58 - // MPropertyFriendlyName "Rotate Through Forward" - // MPropertyGroupName "Rotation Limits" - // MPropertyAttrChangeCallback - bool m_bRotateYawForward; // 0x60 -private: - [[maybe_unused]] uint8_t __pad0061[0x3]; // 0x61 -public: - // MPropertyFriendlyName "Yaw Limit" - // MPropertyAttributeRange "0 180" - // MPropertyGroupName "Rotation Limits" - // MPropertyAttrStateCallback - float m_flYawLimit; // 0x64 - // MPropertyFriendlyName "Pitch Limit" - // MPropertyAttributeRange "0 90" - // MPropertyGroupName "Rotation Limits" - float m_flPitchLimit; // 0x68 - // MPropertyFriendlyName "Maintain Up Direction" - bool m_bMaintainUpDirection; // 0x6c - // MPropertyFriendlyName "Reset Child" - bool m_bResetBase; // 0x6d - // MPropertyFriendlyName "Lock Blend When Waning" - bool m_bLockWhenWaning; // 0x6e - // MPropertyFriendlyName "Use Hysteresis" - // MPropertyGroupName "Hysteresis" - bool m_bUseHysteresis; // 0x6f - // MPropertyFriendlyName "Inner Angle" - // MPropertyGroupName "Hysteresis" - float m_flHysteresisInnerAngle; // 0x70 - // MPropertyFriendlyName "Outer Angle" - // MPropertyGroupName "Hysteresis" - float m_flHysteresisOuterAngle; // 0x74 - // MPropertyFriendlyName "Damping" - CAnimInputDamping m_damping; // 0x78 -}; - -// Alignment: 2 -// Size: 0x30 -class CTagCondition : public CConditionBase -{ -public: - // MPropertyFriendlyName "Tag" - // MPropertyAttributeChoiceName "Tag" - AnimTagID m_tagID; // 0x28 - // MPropertyFriendlyName "Value" - bool m_comparisonValue; // 0x2c -}; - // Alignment: 10 // Size: 0x58 struct PermModelInfo_t @@ -11799,8 +8564,6 @@ public: // Size: 0x70 class CHitBox { -private: - [[maybe_unused]] uint8_t __pad0000[0x20]; // 0x0 public: Vector m_vMinBounds; // 0x20 Vector m_vMaxBounds; // 0x2c @@ -11821,14 +8584,6 @@ public: bool m_bSelected; // 0x66 }; -// Alignment: 0 -// Size: 0x70 -class CAnimComponentStateTransition : public CAnimStateTransition -{ -public: - // No members available -}; - // Alignment: 1 // Size: 0x68 class CFootCycleMetricEvaluator : public CMotionMetricEvaluator @@ -11837,14 +8592,6 @@ public: CUtlVector< int32 > m_footIndices; // 0x50 }; -// Alignment: 0 -// Size: 0x70 -class CAnimComponentState : public CAnimState -{ -public: - // No members available -}; - // Alignment: 3 // Size: 0xb8 class CMotionSearchDB @@ -11870,51 +8617,6 @@ public: int32_t m_nBodyGroupOption; // 0x8 }; -// Alignment: 2 -// Size: 0x58 -class CJiggleBoneAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Jiggle Bones" - // MPropertyAutoExpandSelf - CUtlVector< CJiggleBoneItem > m_items; // 0x40 -}; - -// Alignment: 3 -// Size: 0x50 -class CRagdollAnimNode : public CAnimNodeBase -{ -public: - CUtlString m_weightListName; // 0x38 - RagdollPoseControl m_poseControlMethod; // 0x40 - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x44 -}; - -// Alignment: 5 -// Size: 0xb8 -class CAnimNodeStateTransition : public CAnimStateTransition -{ -private: - [[maybe_unused]] uint8_t __pad0070[0x8]; // 0x70 -public: - // MPropertyFriendlyName "Blend Duration" - CFloatAnimValue m_blendDuration; // 0x78 - // MPropertyFriendlyName "Reset Destination" - bool m_bReset; // 0x90 -private: - [[maybe_unused]] uint8_t __pad0091[0x3]; // 0x91 -public: - // MPropertyFriendlyName "Start Cycle At" - ResetCycleOption m_resetCycleOption; // 0x94 - // MPropertyFriendlyName "Fixed Start Cycle Value" - CFloatAnimValue m_flFixedCycleValue; // 0x98 - // MPropertyHideField - CBlendCurve m_blendCurve; // 0xb0 -}; - // Alignment: 2 // Size: 0x70 class CStepsRemainingMetricEvaluator : public CMotionMetricEvaluator @@ -11924,24 +8626,6 @@ public: float m_flMinStepsRemaining; // 0x68 }; -// Alignment: 3 -// Size: 0x28 -class CFootStepTriggerItem -{ -public: - // MPropertyFriendlyName "Foot" - // MPropertyAttributeChoiceName "Foot" - CUtlString m_footName; // 0x0 - // MPropertyFriendlyName "Trigger Phase" - StepPhase m_triggerPhase; // 0x8 -private: - [[maybe_unused]] uint8_t __pad000c[0x4]; // 0xc -public: - // MPropertyFriendlyName "Tags" - // MPropertyAttributeChoiceName "Tag" - CUtlVector< AnimTagID > m_tags; // 0x10 -}; - // Alignment: 12 // Size: 0xe8 class CMaterialDrawDescriptor @@ -11971,14 +8655,12 @@ public: }; // Alignment: 1 -// Size: 0x48 +// Size: 0x40 class CFootFallAnimTag : public CAnimTagBase { -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 public: // MPropertyFriendlyName "Foot" - FootFallTagFoot_t m_foot; // 0x40 + FootFallTagFoot_t m_foot; // 0x38 }; // Alignment: 2 @@ -11990,25 +8672,6 @@ public: uint32_t m_nUpType; // 0x80 }; -// Alignment: 4 -// Size: 0x150 -class CAnimationGraph : public CAnimationSubGraph -{ -private: - [[maybe_unused]] uint8_t __pad00e0[0x8]; // 0xe0 -public: - CSmartPtr< CAnimGraphSettingsManager > m_pSettingsManager; // 0xe8 -private: - [[maybe_unused]] uint8_t __pad00f0[0x8]; // 0xf0 -public: - CAnimClipDataManager m_clipDataManager; // 0xf8 -private: - [[maybe_unused]] uint8_t __pad0130[0x10]; // 0x130 -public: - CUtlString m_modelName; // 0x140 - CUtlString m_previewModelName; // 0x148 -}; - // Alignment: 0 // Size: 0x70 class CChoreoUpdateNode : public CUnaryUpdateNode @@ -12021,8 +8684,6 @@ public: // Size: 0xa8 class CFootAdjustmentUpdateNode : public CUnaryUpdateNode { -private: - [[maybe_unused]] uint8_t __pad0068[0x8]; // 0x68 public: CUtlVector< HSequence > m_clips; // 0x70 CPoseHandle m_hBasePoseCacheHandle; // 0x88 @@ -12038,32 +8699,13 @@ public: bool m_bAnimationDriven; // 0xa1 }; -// Alignment: 8 -// Size: 0x60 -class CLookComponent : public CAnimComponentBase +// Alignment: 2 +// Size: 0x4 +struct CSolveIKTargetHandle_t { -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 public: - // MPropertyFriendlyName "Network Look Target" - bool m_bNetworkLookTarget; // 0x40 -private: - [[maybe_unused]] uint8_t __pad0041[0x3]; // 0x41 -public: - // MPropertyHideField - AnimParamID m_lookHeadingID; // 0x44 - // MPropertyHideField - AnimParamID m_lookHeadingVelocityID; // 0x48 - // MPropertyHideField - AnimParamID m_lookPitchID; // 0x4c - // MPropertyHideField - AnimParamID m_lookDistanceID; // 0x50 - // MPropertyHideField - AnimParamID m_lookDirectionID; // 0x54 - // MPropertyHideField - AnimParamID m_lookTargetID; // 0x58 - // MPropertyHideField - AnimParamID m_lookTargetWorldSpaceID; // 0x5c + CAnimParamHandle m_positionHandle; // 0x0 + CAnimParamHandle m_orientationHandle; // 0x2 }; // Alignment: 1 @@ -12094,30 +8736,6 @@ public: CUtlVector< CStrongHandle< InfoForResourceTypeIMaterial2 > > m_materials; // 0x8 }; -// Alignment: 6 -// Size: 0x58 -class CPlayerInputAnimMotor : public CAnimMotorBase -{ -public: - // MPropertyFriendlyName "Sample Times" - CUtlVector< float32 > m_sampleTimes; // 0x28 - // MPropertyFriendlyName "Use Acceleration" - bool m_bUseAcceleration; // 0x40 -private: - [[maybe_unused]] uint8_t __pad0041[0x3]; // 0x41 -public: - // MPropertyFriendlyName "Spring Constant" - float m_flSpringConstant; // 0x44 - // MPropertyFriendlyName "Anticipation Distance" - float m_flAnticipationDistance; // 0x48 - // MPropertyFriendlyName "Anticipation Position Parameter" - // MPropertyAttributeChoiceName "VectorParameter" - AnimParamID m_anticipationPosParam; // 0x4c - // MPropertyFriendlyName "Anticipation Heading Parameter" - // MPropertyAttributeChoiceName "FloatParameter" - AnimParamID m_anticipationHeadingParam; // 0x50 -}; - // Alignment: 2 // Size: 0x70 class CPathHelperUpdateNode : public CUnaryUpdateNode @@ -12127,16 +8745,6 @@ public: float m_flStoppingSpeedScale; // 0x6c }; -// Alignment: 1 -// Size: 0x58 -class CAnimTagManager -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 -public: - CUtlVector< CSmartPtr< CAnimTagBase > > m_tags; // 0x18 -}; - // Alignment: 1 // Size: 0x50 class CModelConfigElement_SetMaterialGroupOnAttachedModels : public CModelConfigElement @@ -12149,8 +8757,6 @@ public: // Size: 0x48 class CDampedPathAnimMotorUpdater : public CPathAnimMotorUpdaterBase { -private: - [[maybe_unused]] uint8_t __pad0028[0x4]; // 0x28 public: float m_flAnticipationTime; // 0x2c float m_flMinSpeedScale; // 0x30 @@ -12197,42 +8803,10 @@ public: bool m_bHasMovement; // 0x2d }; -// Alignment: 1 -// Size: 0x28 -class CAnimStateMachine -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 -public: - // MPropertyHideField - CUtlVector< CSmartPtr< CAnimState > > m_states; // 0x8 -}; - -// Alignment: 6 -// Size: 0x60 -class CStopAtGoalAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Outer Stopping Radius" - float m_flOuterRadius; // 0x40 - // MPropertyFriendlyName "Inner Stopping Radius" - float m_flInnerRadius; // 0x44 - // MPropertyFriendlyName "Maximum Speed Scale" - float m_flMaxScale; // 0x48 - // MPropertyFriendlyName "Minimum Speed Scale" - float m_flMinScale; // 0x4c - // MPropertyFriendlyName "Damping" - CAnimInputDamping m_damping; // 0x50 -}; - // Alignment: 5 // Size: 0x90 class CStopAtGoalUpdateNode : public CUnaryUpdateNode { -private: - [[maybe_unused]] uint8_t __pad0068[0x4]; // 0x68 public: float m_flOuterRadius; // 0x6c float m_flInnerRadius; // 0x70 @@ -12278,6 +8852,42 @@ public: CUtlVector< CFootMotion > m_footMotion; // 0x100 }; +// Alignment: 5 +// Size: 0x28 +struct IKDemoCaptureSettings_t +{ +public: + // MPropertyFriendlyName "Target Parent" + // MPropertyAttributeChoiceName "Bone" + CUtlString m_parentBoneName; // 0x0 + // MPropertyFriendlyName "Solver Mode" + // MPropertyAttrChangeCallback + IKChannelMode m_eMode; // 0x8 +private: + [[maybe_unused]] uint8_t __pad000c[0x4]; // 0xc +public: + // MPropertyFriendlyName "IK Chain" + // MPropertyAttributeChoiceName "IKChain" + // MPropertyAttrStateCallback + CUtlString m_ikChainName; // 0x10 + // MPropertyFriendlyName "Start Bone" + // MPropertyAttributeChoiceName "Bone" + // MPropertyAttrStateCallback + CUtlString m_oneBoneStart; // 0x18 + // MPropertyFriendlyName "End Bone" + // MPropertyAttributeChoiceName "Bone" + // MPropertyAttrStateCallback + CUtlString m_oneBoneEnd; // 0x20 +}; + +// Alignment: 1 +// Size: 0x98 +class CDemoSettingsComponentUpdater : public CAnimComponentUpdater +{ +public: + CAnimDemoCaptureSettings m_settings; // 0x30 +}; + // Alignment: 16 // Size: 0x138 struct VPhysXAggregateData_t @@ -12304,22 +8914,6 @@ public: CUtlString m_embeddedKeyvalues; // 0x130 }; -// Alignment: 7 -// Size: 0x48 -class CSlopeComponentUpdater : public CAnimComponentUpdater -{ -private: - [[maybe_unused]] uint8_t __pad0030[0x4]; // 0x30 -public: - float m_flTraceDistance; // 0x34 - CAnimParamHandle m_hSlopeAngle; // 0x38 - CAnimParamHandle m_hSlopeAngleFront; // 0x3a - CAnimParamHandle m_hSlopeAngleSide; // 0x3c - CAnimParamHandle m_hSlopeHeading; // 0x3e - CAnimParamHandle m_hSlopeNormal; // 0x40 - CAnimParamHandle m_hSlopeNormal_WorldSpace; // 0x42 -}; - // Alignment: 3 // Size: 0x28 class CModelConfig @@ -12330,20 +8924,6 @@ public: bool m_bTopLevel; // 0x20 }; -// Alignment: 3 -// Size: 0x78 -class CMotionItemGroup -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x20]; // 0x0 -public: - // MPropertyHideField - CUtlVector< CSmartPtr< CMotionItem > > m_motions; // 0x20 - // MPropertyFriendlyName "Name" - CUtlString m_name; // 0x38 - CConditionContainer m_conditions; // 0x40 -}; - // Alignment: 10 // Size: 0x40 class FootFixedSettings @@ -12364,56 +8944,6 @@ public: int32_t m_nFootIndex; // 0x3c }; -// Alignment: 3 -// Size: 0x30 -class CAnimTagSpan -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x20]; // 0x0 -public: - AnimTagID m_id; // 0x20 - float m_fStartCycle; // 0x24 - float m_fDuration; // 0x28 -}; - -// Alignment: 0 -// Size: 0x30 -class CPathAnimMotor : public CPathAnimMotorBase -{ -public: - // No members available -}; - -// Alignment: 1 -// Size: 0x28 -class CAnimNodeList -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 -public: - CUtlVector< CAnimNodeBase* > m_nodes; // 0x10 -}; - -// Alignment: 5 -// Size: 0xa8 -class CSequenceAnimNode : public CAnimNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x30]; // 0x38 -public: - // MPropertyHideField - CUtlVector< CSmartPtr< CAnimTagSpan > > m_tagSpans; // 0x68 - // MPropertyHideField - CUtlVector< CSmartPtr< CAnimParamSpan > > m_paramSpans; // 0x80 - // MPropertyFriendlyName "Sequence" - // MPropertyAttributeChoiceName "Sequence" - CUtlString m_sequenceName; // 0x98 - // MPropertyFriendlyName "Playback Speed" - float m_playbackSpeed; // 0xa0 - // MPropertyFriendlyName "Loop" - bool m_bLoop; // 0xa4 -}; - // Alignment: 14 // Size: 0xe8 class CModelConfigElement_AttachedModel : public CModelConfigElement @@ -12435,188 +8965,6 @@ public: CUtlString m_MaterialGroupOnOtherModels; // 0x98 }; -// Alignment: 38 -// Size: 0x108 -class CFootLockAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Feet" - // MPropertyAutoExpandSelf - CUtlVector< CFootLockItem > m_items; // 0x40 - // MPropertyFriendlyName "Hip Bone" - // MPropertyAttributeChoiceName "Bone" - CUtlString m_hipBoneName; // 0x58 - // MPropertyFriendlyName "Blend Time" - float m_flBlendTime; // 0x60 - // MPropertyFriendlyName "Apply Foot Rotation Limits" - bool m_bApplyFootRotationLimits; // 0x64 - // MPropertyFriendlyName "Reset Child" - bool m_bResetChild; // 0x65 -private: - [[maybe_unused]] uint8_t __pad0066[0x2]; // 0x66 -public: - // MPropertyFriendlyName "IK Solver Type" - // MPropertyGroupName "IK" - // MPropertyAttrChangeCallback - IKSolverType m_ikSolverType; // 0x68 - // MPropertyFriendlyName "Always use fallback hinge" - // MPropertyGroupName "IK" - // MPropertyAttrStateCallback - bool m_bAlwaysUseFallbackHinge; // 0x6c - // MPropertyFriendlyName "Limit Leg Twist" - // MPropertyGroupName "IK" - // MPropertyAttrStateCallback - bool m_bApplyLegTwistLimits; // 0x6d -private: - [[maybe_unused]] uint8_t __pad006e[0x2]; // 0x6e -public: - // MPropertyFriendlyName "Max Leg Twist Angle" - // MPropertyGroupName "IK" - // MPropertyAttrStateCallback - float m_flMaxLegTwist; // 0x70 - // MPropertyFriendlyName "Curve Foot Paths" - // MPropertyGroupName "Curve Paths" - // MPropertyAttributeRange "0 1" - float m_flStrideCurveScale; // 0x74 - // MPropertyFriendlyName "Curve Paths Limit" - // MPropertyGroupName "Curve Paths" - // MPropertyAttributeRange "0 1" - float m_flStrideCurveLimitScale; // 0x78 - // MPropertyFriendlyName "Enable Vertical Curved Paths" - // MPropertyGroupName "Curve Paths" - bool m_bEnableVerticalCurvedPaths; // 0x7c - // MPropertyFriendlyName "Modulate Step Height" - // MPropertyGroupName "Step Height" - // MPropertyAttrChangeCallback - bool m_bModulateStepHeight; // 0x7d -private: - [[maybe_unused]] uint8_t __pad007e[0x2]; // 0x7e -public: - // MPropertyFriendlyName "Height Increase Scale" - // MPropertyGroupName "Step Height" - // MPropertyAttrStateCallback - float m_flStepHeightIncreaseScale; // 0x80 - // MPropertyFriendlyName "Height Decrease Scale" - // MPropertyGroupName "Step Height" - // MPropertyAttrStateCallback - float m_flStepHeightDecreaseScale; // 0x84 - // MPropertyFriendlyName "Enable Hip Shift" - // MPropertyGroupName "Hip Shift" - bool m_bEnableHipShift; // 0x88 -private: - [[maybe_unused]] uint8_t __pad0089[0x3]; // 0x89 -public: - // MPropertyFriendlyName "Hip Shift Scale" - // MPropertyGroupName "Hip Shift" - // MPropertyAttributeRange "0 1" - float m_flHipShiftScale; // 0x8c - // MPropertyFriendlyName "Damping" - // MPropertyGroupName "Hip Shift" - CAnimInputDamping m_hipShiftDamping; // 0x90 - // MPropertyFriendlyName "Apply Tilt" - // MPropertyGroupName "Tilt" - bool m_bApplyTilt; // 0xa0 -private: - [[maybe_unused]] uint8_t __pad00a1[0x3]; // 0xa1 -public: - // MPropertyFriendlyName "Tilt Plane Pitch Spring Strength" - // MPropertyGroupName "Tilt" - float m_flTiltPlanePitchSpringStrength; // 0xa4 - // MPropertyFriendlyName "Tilt Plane Roll Spring Strength" - // MPropertyGroupName "Tilt" - float m_flTiltPlaneRollSpringStrength; // 0xa8 - // MPropertyFriendlyName "Enable Lock Breaking" - // MPropertyGroupName "Lock Breaking" - bool m_bEnableLockBreaking; // 0xac -private: - [[maybe_unused]] uint8_t __pad00ad[0x3]; // 0xad -public: - // MPropertyFriendlyName "Tolerance" - // MPropertyGroupName "Lock Breaking" - float m_flLockBreakTolerance; // 0xb0 - // MPropertyFriendlyName "Blend Time" - // MPropertyGroupName "Lock Breaking" - float m_flLockBreakBlendTime; // 0xb4 - // MPropertyFriendlyName "Enable Stretching" - // MPropertyGroupName "Stretch" - bool m_bEnableStretching; // 0xb8 -private: - [[maybe_unused]] uint8_t __pad00b9[0x3]; // 0xb9 -public: - // MPropertyFriendlyName "Max Stretch Amount" - // MPropertyGroupName "Stretch" - float m_flMaxStretchAmount; // 0xbc - // MPropertyFriendlyName "Extension Scale" - // MPropertyGroupName "Stretch" - // MPropertyAttributeRange "0 1" - float m_flStretchExtensionScale; // 0xc0 - // MPropertyFriendlyName "Enable Ground Tracing" - // MPropertyGroupName "Ground IK" - // MPropertyAttrChangeCallback - bool m_bEnableGroundTracing; // 0xc4 -private: - [[maybe_unused]] uint8_t __pad00c5[0x3]; // 0xc5 -public: - // MPropertyFriendlyName "Angle Traces with Slope" - // MPropertyGroupName "Ground IK" - // MPropertyAttributeRange "0 1" - // MPropertyAttrStateCallback - float m_flTraceAngleBlend; // 0xc8 - // MPropertyFriendlyName "Apply Hip Drop" - // MPropertyGroupName "Ground IK" - // MPropertyAttrChangeCallback - // MPropertyAttrStateCallback - bool m_bApplyHipDrop; // 0xcc -private: - [[maybe_unused]] uint8_t __pad00cd[0x3]; // 0xcd -public: - // MPropertyFriendlyName "Max Foot Lift" - // MPropertyGroupName "Ground IK" - // MPropertyAttrStateCallback - float m_flMaxFootHeight; // 0xd0 - // MPropertyFriendlyName "Leg Extension Scale" - // MPropertyGroupName "Ground IK" - // MPropertyAttrStateCallback - float m_flExtensionScale; // 0xd4 - // MPropertyFriendlyName "Hip Damping" - // MPropertyGroupName "Ground IK" - // MPropertyAttrStateCallback - CAnimInputDamping m_hipDampingSettings; // 0xd8 - // MPropertyFriendlyName "Enable Root Height Damping" - // MPropertyGroupName "Root Height Damping" - // MPropertyAttrChangeCallback - bool m_bEnableRootHeightDamping; // 0xe8 -private: - [[maybe_unused]] uint8_t __pad00e9[0x7]; // 0xe9 -public: - // MPropertyFriendlyName "Damping Settings" - // MPropertyGroupName "Root Height Damping" - // MPropertyAttrStateCallback - CAnimInputDamping m_rootHeightDamping; // 0xf0 - // MPropertyFriendlyName "Max Offset" - // MPropertyGroupName "Root Height Damping" - // MPropertyAttrStateCallback - float m_flMaxRootHeightOffset; // 0x100 - // MPropertyFriendlyName "Min Offset" - // MPropertyGroupName "Root Height Damping" - // MPropertyAttrStateCallback - float m_flMinRootHeightOffset; // 0x104 -}; - -// Alignment: 2 -// Size: 0x38 -class CTimeCondition : public CConditionBase -{ -public: - Comparison_t m_comparisonOp; // 0x28 -private: - [[maybe_unused]] uint8_t __pad002c[0x4]; // 0x2c -public: - CUtlString m_comparisonString; // 0x30 -}; - // Alignment: 4 // Size: 0x60 class CTimeRemainingMetricEvaluator : public CMotionMetricEvaluator @@ -12634,25 +8982,6 @@ public: float m_flMinTimeRemaining; // 0x5c }; -// Alignment: 4 -// Size: 0x78 -class CSingleFrameAnimNode : public CAnimNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x18]; // 0x38 -public: - // MPropertyFriendlyName "Sequence" - // MPropertyAttributeChoiceName "Sequence" - CUtlString m_sequenceName; // 0x50 - // MPropertyFriendlyName "Frame Selection" - // MPropertyAttrChangeCallback - SingleFrameSelection m_eFrameSelection; // 0x58 - // MPropertyFriendlyName "Frame Index" - // MPropertyAttrStateCallback - int32_t m_nFrameIndex; // 0x5c - CUtlVector< CSmartPtr< CAnimActionBase > > m_actions; // 0x60 -}; - // Alignment: 5 // Size: 0x1c class CStateNodeTransitionData @@ -12665,114 +8994,10 @@ public: { uint8_t m_bReset: 1; uint8_t m_resetCycleOption: 3; - uint8_t __pad2: 4; + uint8_t __pad3: 4; // Autoaligned }; // 8 bits }; -// Alignment: 13 -// Size: 0x88 -class CTwoBoneIKAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "IK Chain" - // MPropertyAttributeChoiceName "IKChain" - CUtlString m_ikChainName; // 0x40 - // MPropertyFriendlyName "Auto-Detect Hinge Axis" - bool m_bAutoDetectHingeAxis; // 0x48 -private: - [[maybe_unused]] uint8_t __pad0049[0x3]; // 0x49 -public: - // MPropertyGroupName "End Effector" - // MPropertyFriendlyName "End Effector Type" - // MPropertyAttrChangeCallback - IkEndEffectorType m_endEffectorType; // 0x4c - // MPropertyGroupName "End Effector" - // MPropertyFriendlyName "Attachment" - // MPropertyAttributeChoiceName "Attachment" - // MPropertyAttrStateCallback - CUtlString m_endEffectorAttachmentName; // 0x50 - // MPropertyGroupName "Target" - // MPropertyFriendlyName "Target Type" - // MPropertyAttrChangeCallback - IkTargetType m_targetType; // 0x58 -private: - [[maybe_unused]] uint8_t __pad005c[0x4]; // 0x5c -public: - // MPropertyGroupName "Target" - // MPropertyFriendlyName "Attachment" - // MPropertyAttributeChoiceName "Attachment" - // MPropertyAttrStateCallback - CUtlString m_attachmentName; // 0x60 - // MPropertyGroupName "Target" - // MPropertyFriendlyName "Bone" - // MPropertyAttributeChoiceName "Bone" - // MPropertyAttrStateCallback - CUtlString m_targetBoneName; // 0x68 - // MPropertyGroupName "Target" - // MPropertyFriendlyName "Position Parameter" - // MPropertyAttributeChoiceName "VectorParameter" - // MPropertyAttrStateCallback - AnimParamID m_targetParam; // 0x70 - // MPropertyGroupName "Target" - // MPropertyFriendlyName "Match Target Orientation" - // MPropertyAttrChangeCallback - bool m_bMatchTargetOrientation; // 0x74 -private: - [[maybe_unused]] uint8_t __pad0075[0x3]; // 0x75 -public: - // MPropertyGroupName "Target" - // MPropertyFriendlyName "Rotation Parameter" - // MPropertyAttributeChoiceName "QuaternionParameter" - // MPropertyAttrStateCallback - AnimParamID m_rotationParam; // 0x78 - // MPropertyGroupName "Target" - // MPropertyFriendlyName "Constrain Twist" - // MPropertyAttrStateCallback - bool m_bConstrainTwist; // 0x7c -private: - [[maybe_unused]] uint8_t __pad007d[0x3]; // 0x7d -public: - // MPropertyGroupName "Target" - // MPropertyFriendlyName "Max Twist" - // MPropertyAttrStateCallback - float m_flMaxTwist; // 0x80 -}; - -// Alignment: 9 -// Size: 0x68 -class CChoiceAnimNode : public CAnimNodeBase -{ -public: - // MPropertyFriendlyName "Options" - // MPropertyAutoExpandSelf - CUtlVector< CChoiceNodeChild > m_children; // 0x38 - // MPropertyHideField - int32_t m_seed; // 0x50 - // MPropertyFriendlyName "Method" - ChoiceMethod m_choiceMethod; // 0x54 - // MPropertyFriendlyName "Change Selection" - ChoiceChangeMethod m_choiceChangeMethod; // 0x58 - // MPropertyGroupName "Blending" - // MPropertyFriendlyName "Blend Method" - // MPropertyAttrChangeCallback - ChoiceBlendMethod m_blendMethod; // 0x5c - // MPropertyGroupName "Blending" - // MPropertyFriendlyName "Blend Duration" - // MPropertyAttrStateCallback - float m_blendTime; // 0x60 - // MPropertyGroupName "Blending" - // MPropertyFriendlyName "Cross Fade" - bool m_bCrossFade; // 0x64 - // MPropertyFriendlyName "Reset On Selection" - // MPropertyAttrChangeCallback - bool m_bResetChosen; // 0x65 - // MPropertyFriendlyName "Don't Reset Same Selection" - // MPropertyAttrStateCallback - bool m_bDontResetSameSelection; // 0x66 -}; - // Alignment: 24 // Size: 0xb0 struct VPhysXJoint_t @@ -12831,76 +9056,6 @@ public: CDrawCullingData m_CullingData; // 0x8 }; -// Alignment: 5 -// Size: 0x38 -class CFutureVelocityMetric : public CMotionMetricBase -{ -public: - // MPropertyFriendlyName "Distance" - float m_flDistance; // 0x28 - // MPropertyFriendlyName "Stopping Distance" - float m_flStoppingDistance; // 0x2c - // MPropertyFriendlyName "Mode" - // MPropertyAttrChangeCallback - VelocityMetricMode m_eMode; // 0x30 - // MPropertyFriendlyName "Auto-Calculate target speed" - // MPropertyAttrChangeCallback - // MPropertyAttrStateCallback - bool m_bAutoTargetSpeed; // 0x31 -private: - [[maybe_unused]] uint8_t __pad0032[0x2]; // 0x32 -public: - // MPropertyFriendlyName "Target Speed" - // MPropertyAttrStateCallback - float m_flManualTargetSpeed; // 0x34 -}; - -// Alignment: 10 -// Size: 0x78 -class CFootAdjustmentAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Turn to Face" - // MPropertyAttributeChoiceName "FloatParameter" - AnimParamID m_facingTarget; // 0x40 - // MPropertyFriendlyName "Reset Child" - bool m_bResetChild; // 0x44 - // MPropertyFriendlyName "Animation Driven" - // MPropertyAttrChangeCallback - bool m_bAnimationDriven; // 0x45 -private: - [[maybe_unused]] uint8_t __pad0046[0x2]; // 0x46 -public: - // MPropertyFriendlyName "Base Anim Clips" - // MPropertyGroupName "Anim Driven Settings" - // MPropertyAttributeChoiceName "Sequence" - // MPropertyAttrStateCallback - CUtlString m_baseClipName; // 0x48 - // MPropertyFriendlyName "Clips" - // MPropertyGroupName "Anim Driven Settings" - // MPropertyAttributeChoiceName "Sequence" - // MPropertyAttrStateCallback - CUtlVector< CUtlString > m_clips; // 0x50 - // MPropertyFriendlyName "Turn Time Min" - // MPropertyGroupName "Procedural Settings" - // MPropertyAttrStateCallback - float m_flTurnTimeMin; // 0x68 - // MPropertyFriendlyName "Turn Time Max" - // MPropertyGroupName "Procedural Settings" - // MPropertyAttrStateCallback - float m_flTurnTimeMax; // 0x6c - // MPropertyFriendlyName "Step Height Max" - // MPropertyGroupName "Procedural Settings" - // MPropertyAttrStateCallback - float m_flStepHeightMax; // 0x70 - // MPropertyFriendlyName "Step Height Max Angle" - // MPropertyGroupName "Procedural Settings" - // MPropertyAttrStateCallback - float m_flStepHeightMaxAngle; // 0x74 -}; - // Alignment: 8 // Size: 0x90 class CAttachment @@ -12938,8 +9093,6 @@ public: // Size: 0xc8 class CFootPinningUpdateNode : public CUnaryUpdateNode { -private: - [[maybe_unused]] uint8_t __pad0068[0x8]; // 0x68 public: FootPinningPoseOpFixedData_t m_poseOpFixedData; // 0x70 FootPinningTimingSource m_eTimingSource; // 0xa0 @@ -12972,51 +9125,6 @@ public: CUtlVector< ModelBoneFlexDriverControl_t > m_controls; // 0x10 }; -// Alignment: 4 -// Size: 0x50 -class CPathMetric : public CMotionMetricBase -{ -public: - // MPropertyFriendlyName "Distance" - float m_flDistance; // 0x28 -private: - [[maybe_unused]] uint8_t __pad002c[0x4]; // 0x2c -public: - // MPropertyFriendlyName "Samples Times" - CUtlVector< float32 > m_pathSamples; // 0x30 - // MPropertyFriendlyName "Extrapolate Movement" - // MPropertyAttrChangeCallback - bool m_bExtrapolateMovement; // 0x48 -private: - [[maybe_unused]] uint8_t __pad0049[0x3]; // 0x49 -public: - // MPropertyFriendlyName "Min Extrapolation Speed" - // MPropertyAttrStateCallback - float m_flMinExtrapolationSpeed; // 0x4c -}; - -// Alignment: 8 -// Size: 0x48 -class CStateUpdateData -{ -public: - CUtlString m_name; // 0x0 - AnimScriptHandle m_hScript; // 0x8 -private: - [[maybe_unused]] uint8_t __pad000c[0x4]; // 0xc -public: - CUtlVector< int32 > m_transitionIndices; // 0x10 - CUtlVector< CStateActionUpdater > m_actions; // 0x28 - AnimStateID m_stateID; // 0x40 - struct - { - uint8_t m_bIsStartState: 1; - uint8_t m_bIsEndState: 1; - uint8_t m_bIsPassthrough: 1; - uint8_t __pad3: 3; - }; // 6 bits -}; - // Alignment: 7 // Size: 0x1c class CSeqAutoLayer @@ -13031,20 +9139,6 @@ public: float m_end; // 0x18 }; -// Alignment: 5 -// Size: 0x30 -class CMotionParameter -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 -public: - CUtlString m_name; // 0x18 - AnimParamID m_id; // 0x20 - float m_flMinValue; // 0x24 - float m_flMaxValue; // 0x28 - int32_t m_nSamples; // 0x2c -}; - // Alignment: 3 // Size: 0x20 class CModelConfigList @@ -13081,18 +9175,14 @@ public: // Size: 0x20 class CAnimGraphSettingsGroup { -private: - [[maybe_unused]] uint8_t __pad0000[0x20]; // 0x0 public: - // No members available + uint8_t __pad0000[0x20]; // Autoaligned }; // Alignment: 8 // Size: 0x48 class CLookComponentUpdater : public CAnimComponentUpdater { -private: - [[maybe_unused]] uint8_t __pad0030[0x4]; // 0x30 public: CAnimParamHandle m_hLookHeading; // 0x34 CAnimParamHandle m_hLookHeadingVelocity; // 0x36 @@ -13104,44 +9194,10 @@ public: bool m_bNetworkLookTarget; // 0x42 }; -// Alignment: 2 -// Size: 0x58 -class CDampedValueComponent : public CAnimComponentBase -{ -public: - // MPropertyFriendlyName "Name" - CUtlString m_name; // 0x38 - // MPropertyFriendlyName "Items" - // MPropertyAutoExpandSelf - CUtlVector< CDampedValueItem > m_items; // 0x40 -}; - -// Alignment: 0 -// Size: 0x28 -class CBlockSelectionMetric : public CMotionMetricBase -{ -public: - // No members available -}; - -// Alignment: 2 -// Size: 0x48 -class CSpeedScaleAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Parameter" - // MPropertyAttributeChoiceName "FloatParameter" - AnimParamID m_param; // 0x40 -}; - // Alignment: 1 // Size: 0x110 class CFollowAttachmentUpdateNode : public CUnaryUpdateNode { -private: - [[maybe_unused]] uint8_t __pad0068[0x8]; // 0x68 public: FollowAttachmentSettings_t m_opFixedData; // 0x70 }; @@ -13168,8 +9224,6 @@ public: // Size: 0xa8 class CFollowPathUpdateNode : public CUnaryUpdateNode { -private: - [[maybe_unused]] uint8_t __pad0068[0x4]; // 0x68 public: float m_flBlendOutTime; // 0x6c bool m_bBlockNonPathMovement; // 0x70 @@ -13195,6 +9249,14 @@ public: bool m_bTurnToFace; // 0xa4 }; +// Alignment: 1 +// Size: 0x68 +class CMotionGraphUpdateNode : public CLeafUpdateNode +{ +public: + CSmartPtr< CMotionGraph > m_pMotionGraph; // 0x58 +}; + // Alignment: 0 // Size: 0x68 class CRootUpdateNode : public CUnaryUpdateNode @@ -13215,16 +9277,6 @@ public: CAnimEncodeDifference m_usageDifferences; // 0x30 }; -// Alignment: 1 -// Size: 0x28 -class CAnimStateList -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 -public: - CUtlVector< CAnimState* > m_states; // 0x10 -}; - // Alignment: 2 // Size: 0x8 struct LookAtBone_t @@ -13263,8 +9315,6 @@ public: // Size: 0x70 class CAnimGraphDebugReplay { -private: - [[maybe_unused]] uint8_t __pad0000[0x40]; // 0x0 public: CUtlString m_animGraphFileName; // 0x40 CUtlVector< CSmartPtr< CAnimReplayFrame > > m_frameList; // 0x48 @@ -13299,25 +9349,11 @@ public: int16_t m_nSubCycles; // 0x2c int16_t m_numLocalResults; // 0x2e CUtlVector< CSeqCmdLayer > m_cmdLayerArray; // 0x30 - CUtlVector< CAnimAnimEvent > m_eventArray; // 0x48 + CUtlVector< CAnimEventDefinition > m_eventArray; // 0x48 CUtlVector< CAnimActivity > m_activityArray; // 0x60 CUtlVector< CSeqPoseSetting > m_poseSettingArray; // 0x78 }; -// Alignment: 4 -// Size: 0x50 -class CParameterCondition : public CConditionBase -{ -public: - AnimParamID m_paramID; // 0x28 - Comparison_t m_comparisonOp; // 0x2c - CAnimVariant m_comparisonValue; // 0x30 -private: - [[maybe_unused]] uint8_t __pad0041[0x7]; // 0x41 -public: - CUtlString m_comparisonString; // 0x48 -}; - // Alignment: 9 // Size: 0x110 struct AnimationSnapshotBase_t @@ -13349,34 +9385,21 @@ public: }; // Alignment: 4 -// Size: 0x58 +// Size: 0x50 class CMaterialAttributeAnimTag : public CAnimTagBase { -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 public: // MPropertyFriendlyName "Attribute Name" - CUtlString m_AttributeName; // 0x40 + CUtlString m_AttributeName; // 0x38 // MPropertyFriendlyName "Attribute Type" // MPropertyAttrChangeCallback - MatterialAttributeTagType_t m_AttributeType; // 0x48 + MatterialAttributeTagType_t m_AttributeType; // 0x40 // MPropertyFriendlyName "Value" // MPropertyAttrStateCallback - float m_flValue; // 0x4c + float m_flValue; // 0x44 // MPropertyFriendlyName "Color" // MPropertyAttrStateCallback - Color m_Color; // 0x50 -}; - -// Alignment: 1 -// Size: 0x58 -class CCPPScriptComponent : public CAnimComponentBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 -public: - // MPropertyFriendlyName "Scripts" - CUtlVector< CUtlString > m_scriptsToRun; // 0x40 + Color m_Color; // 0x48 }; // Alignment: 8 @@ -13408,41 +9431,20 @@ public: CAnimParamHandle m_hParam; // 0x68 }; -// Alignment: 8 -// Size: 0x58 -class CSolveIKChainAnimNodeChainData +// Alignment: 6 +// Size: 0x50 +struct ChainToSolveData_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: - // MPropertyFriendlyName "IK Chain" - // MPropertyAttributeChoiceName "IKChain" - CUtlString m_IkChain; // 0x8 - // MPropertyFriendlyName "Solver Setting Source" - // MPropertyAttributeChoiceEnumName - // MPropertyAttrChangeCallback - SolveIKChainAnimNodeSettingSource m_SolverSettingSource; // 0x10 - // MPropertyFriendlyName "Override Solver Settings" - // MPropertyAutoExpandSelf - // MPropertyAttrStateCallback - IKSolverSettings_t m_OverrideSolverSettings; // 0x14 - // MPropertyFriendlyName "Target Setting Source" - // MPropertyAttributeChoiceEnumName - // MPropertyAttrChangeCallback - SolveIKChainAnimNodeSettingSource m_TargetSettingSource; // 0x1c - // MPropertyFriendlyName "Override Target Settings" - // MPropertyAutoExpandSelf - // MPropertyAttrStateCallback - IKTargetSettings_t m_OverrideTargetSettings; // 0x20 - // MPropertyFriendlyName "Debug Setting" - // MPropertyGroupName "Debug" - SolveIKChainAnimNodeDebugSetting m_DebugSetting; // 0x40 - // MPropertyFriendlyName "Debug Normalized Length" - // MPropertyGroupName "Debug" - float m_flDebugNormalizedLength; // 0x44 - // MPropertyFriendlyName "Debug Offset" - // MPropertyGroupName "Debug" - Vector m_vDebugOffset; // 0x48 + int32_t m_nChainIndex; // 0x0 + IKSolverSettings_t m_SolverSettings; // 0x4 +private: + [[maybe_unused]] uint8_t __pad000c[0x4]; // 0xc +public: + IKTargetSettings_t m_TargetSettings; // 0x10 + SolveIKChainAnimNodeDebugSetting m_DebugSetting; // 0x38 + float m_flDebugNormalizedValue; // 0x3c + VectorAligned m_vDebugOffset; // 0x40 }; // Alignment: 2 @@ -13500,16 +9502,6 @@ public: CUtlVector< CAnimActivity > m_activityArray; // 0x28 }; -// Alignment: 0 -// Size: 0x60 -class CAndCondition : public CConditionBase -{ -private: - [[maybe_unused]] uint8_t __pad0028[0x10]; // 0x28 -public: - // No members available -}; - // Alignment: 8 // Size: 0xd0 class CJumpHelperUpdateNode : public CSequenceUpdateNode @@ -13552,32 +9544,6 @@ public: uint16_t m_nConfig; // 0x2 }; -// Alignment: 8 -// Size: 0xc8 -class CJumpHelperAnimNode : public CSequenceAnimNode -{ -private: - [[maybe_unused]] uint8_t __pad00a8[0x8]; // 0xa8 -public: - // MPropertyFriendlyName "Target Parameter" - // MPropertyAttributeChoiceName "VectorParameter" - AnimParamID m_targetParamID; // 0xb0 - // MPropertySuppressField - float m_flJumpStartCycle; // 0xb4 - // MPropertySuppressField - float m_flJumpDuration; // 0xb8 - // MPropertyFriendlyName "Translate X" - bool m_bTranslateX; // 0xbc - // MPropertyFriendlyName "Translate Y" - bool m_bTranslateY; // 0xbd - // MPropertyFriendlyName "Translate Z" - bool m_bTranslateZ; // 0xbe - // MPropertyFriendlyName "Apply Speed Scale" - bool m_bScaleSpeed; // 0xbf - // MPropertyFriendlyName "Correction Method" - JumpCorrectionMethod m_eCorrectionMethod; // 0xc0 -}; - // Alignment: 2 // Size: 0x120 struct AnimationSnapshot_t : public AnimationSnapshotBase_t @@ -13591,23 +9557,13 @@ public: }; // Alignment: 1 -// Size: 0x110 +// Size: 0x1a0 class CAnimScriptManager { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: CUtlVector< ScriptInfo_t > m_scriptInfo; // 0x10 }; -// Alignment: 0 -// Size: 0x28 -class CCurrentVelocityMetric : public CMotionMetricBase -{ -public: - // No members available -}; - // Alignment: 4 // Size: 0x20 class CAnimActivity @@ -13644,22 +9600,18 @@ public: }; // Alignment: 1 -// Size: 0x50 +// Size: 0x48 class CTaskStatusAnimTag : public CAnimTagBase { -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 public: // MPropertyHideField - CUtlString m_identifierString; // 0x40 + CUtlString m_identifierString; // 0x38 }; // Alignment: 4 // Size: 0x40 class CCachedPose { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: CUtlVector< CTransform > m_transforms; // 0x8 CUtlVector< float32 > m_morphWeights; // 0x20 @@ -13689,7 +9641,7 @@ public: // MKV3TransferName "m_pData" CAnimEncodedFrames m_Data; // 0x20 CUtlVector< CAnimMovement > m_movementArray; // 0xf8 - CUtlVector< CAnimAnimEvent > m_eventArray; // 0x110 + CUtlVector< CAnimEventDefinition > m_eventArray; // 0x110 CUtlVector< CAnimActivity > m_activityArray; // 0x128 CUtlVector< CAnimLocalHierarchy > m_hierarchyArray; // 0x140 float framestalltime; // 0x158 @@ -13718,21 +9670,10 @@ public: CUtlVector< CUtlPair< CBufferString, float32 > > m_morphCtrlWeightArray; // 0x48 }; -// Alignment: 1 -// Size: 0x40 -class CChoreoAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 -}; - // Alignment: 8 // Size: 0xa8 class CDirectionalBlendUpdateNode : public CLeafUpdateNode { -private: - [[maybe_unused]] uint8_t __pad0058[0x4]; // 0x58 public: HSequence m_hSequences[8]; // 0x5c private: @@ -13750,73 +9691,6 @@ public: bool m_bLockBlendOnReset; // 0xa1 }; -// Alignment: 2 -// Size: 0x18 -class CStateAction -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 -public: - CSmartPtr< CAnimActionBase > m_pAction; // 0x8 - StateActionBehavior m_eBehavior; // 0x10 -}; - -// Alignment: 7 -// Size: 0x80 -class CLeanMatrixAnimNode : public CAnimNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 -public: - // MPropertyFriendlyName "Sequence" - // MPropertyAttributeChoiceName "Sequence" - CUtlString m_sequenceName; // 0x40 - // MPropertyFriendlyName "Max Value" - float m_flMaxValue; // 0x48 - // MPropertyFriendlyName "Blend Source" - AnimVectorSource m_blendSource; // 0x4c - // MPropertyFriendlyName "Parameter" - // MPropertyAttributeChoiceName "VectorParameter" - AnimParamID m_param; // 0x50 - // MPropertyFriendlyName "Vertical Axis" - Vector m_verticalAxisDirection; // 0x54 - // MPropertyFriendlyName "Horizontal Axis" - Vector m_horizontalAxisDirection; // 0x60 -private: - [[maybe_unused]] uint8_t __pad006c[0x4]; // 0x6c -public: - // MPropertyFriendlyName "Damping" - CAnimInputDamping m_damping; // 0x70 -}; - -// Alignment: 7 -// Size: 0x28 -class CFootLockItem -{ -public: - // MPropertyFriendlyName "Foot" - // MPropertyAttributeChoiceName "Foot" - CUtlString m_footName; // 0x0 - // MPropertyFriendlyName "Target Bone" - // MPropertyAttributeChoiceName "Bone" - CUtlString m_targetBoneName; // 0x8 - // MPropertyFriendlyName "IK Chain" - // MPropertyAttributeChoiceName "IKChain" - CUtlString m_ikChainName; // 0x10 - // MPropertyFriendlyName "Disable Tag" - // MPropertyAttributeChoiceName "Tag" - AnimTagID m_disableTagID; // 0x18 - // MPropertyFriendlyName "Max Left Rotation" - // MPropertyAttributeRange "0 180" - float m_flMaxRotationLeft; // 0x1c - // MPropertyFriendlyName "Max Right Rotation" - // MPropertyAttributeRange "0 180" - float m_flMaxRotationRight; // 0x20 - // MPropertyFriendlyName "Footstep Landed Tag" - // MPropertyAttributeChoiceName "Tag" - AnimTagID m_footstepLandedTag; // 0x24 -}; - // Alignment: 3 // Size: 0x88 class CIntAnimParameter : public CAnimParameterBase @@ -13838,50 +9712,6 @@ public: // No members available }; -// Alignment: 13 -// Size: 0xc8 -class CBlend2DAnimNode : public CAnimNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x18]; // 0x38 -public: - // MPropertyHideField - CUtlVector< CSmartPtr< CBlend2DItemBase > > m_items; // 0x50 - // MPropertyHideField - CUtlVector< CSmartPtr< CAnimTagSpan > > m_tagSpans; // 0x68 - // MPropertyHideField - CUtlVector< CSmartPtr< CAnimParamSpan > > m_paramSpans; // 0x80 - // MPropertyFriendlyName "Horizontal Axis" - // MPropertyAttrChangeCallback - // MPropertyAttrStateCallback - AnimValueSource m_blendSourceX; // 0x98 - // MPropertyFriendlyName "Horizontal Parameter" - // MPropertyAttributeChoiceName "FloatParameter" - AnimParamID m_paramX; // 0x9c - // MPropertyFriendlyName "Vertical Axis" - // MPropertyAttrChangeCallback - // MPropertyAttrStateCallback - AnimValueSource m_blendSourceY; // 0xa0 - // MPropertyFriendlyName "Vertical Parameter" - // MPropertyAttributeChoiceName "FloatParameter" - AnimParamID m_paramY; // 0xa4 - // MPropertyFriendlyName "Loop" - bool m_bLoop; // 0xa8 - // MPropertyFriendlyName "Lock Blend on Reset" - bool m_bLockBlendOnReset; // 0xa9 - // MPropertyFriendlyName "Lock Blend When Waning" - bool m_bLockWhenWaning; // 0xaa -private: - [[maybe_unused]] uint8_t __pad00ab[0x1]; // 0xab -public: - // MPropertyFriendlyName "Playback Speed" - float m_playbackSpeed; // 0xac - // MPropertyFriendlyName "Damping" - CAnimInputDamping m_damping; // 0xb0 - // MPropertyFriendlyName "AnimEvents and Tags Exclusive To Most Weighted" - bool m_bAnimEventsAndTagsOnMostWeightedOnly; // 0xc0 -}; - // Alignment: 2 // Size: 0x58 class CFootStride @@ -13891,62 +9721,6 @@ public: CFootTrajectories m_trajectories; // 0x40 }; -// Alignment: 7 -// Size: 0x58 -class CTurnHelperAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Turn to Face" - AnimValueSource m_facingTarget; // 0x40 - // MPropertyFriendlyName "Turn Start Time" - float m_turnStartTime; // 0x44 - // MPropertyFriendlyName "Turn Duration" - float m_turnDuration; // 0x48 - // MPropertyFriendlyName "Match Child Duration" - bool m_bMatchChildDuration; // 0x4c - // MPropertyFriendlyName "Use Manual Turn Offset" - bool m_bUseManualTurnOffset; // 0x4d -private: - [[maybe_unused]] uint8_t __pad004e[0x2]; // 0x4e -public: - // MPropertyFriendlyName "Manual Turn Offset" - float m_manualTurnOffset; // 0x50 -}; - -// Alignment: 2 -// Size: 0x58 -class CAnimScriptComponent : public CAnimComponentBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 -public: - // MPropertyFriendlyName "Name" - // MPropertySortPriority "100" - CUtlString m_sName; // 0x40 - // MPropertyFriendlyName "Script File" - // MPropertyAttributeEditor "AssetBrowse( as )" - // MPropertyAttrChangeCallback - CUtlString m_scriptFilename; // 0x48 -}; - -// Alignment: 3 -// Size: 0x48 -class CCycleControlAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Blend Source" - // MPropertyAttrChangeCallback - // MPropertyAttrStateCallback - AnimValueSource m_valueSource; // 0x40 - // MPropertyFriendlyName "Parameter" - // MPropertyAttributeChoiceName "FloatParameter" - AnimParamID m_param; // 0x44 -}; - // Alignment: 6 // Size: 0x78 class CSceneObjectData @@ -13961,15 +9735,13 @@ public: }; // Alignment: 1 -// Size: 0x48 +// Size: 0x40 class CSequenceFinishedAnimTag : public CAnimTagBase { -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 public: // MPropertyFriendlyName "Sequence" // MPropertyAttributeChoiceName "Sequence" - CUtlString m_sequenceName; // 0x40 + CUtlString m_sequenceName; // 0x38 }; // Alignment: 1 @@ -13981,19 +9753,6 @@ public: bool m_bDefaultValue; // 0x78 }; -// Alignment: 3 -// Size: 0x48 -class CSetFacingAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Facing Mode" - FacingMode m_facingMode; // 0x40 - // MPropertyFriendlyName "Reset Child" - bool m_bResetChild; // 0x44 -}; - // Alignment: 1 // Size: 0x70 class CSlowDownOnSlopesUpdateNode : public CUnaryUpdateNode @@ -14319,10 +10078,8 @@ public: // Size: 0x8 class IPhysicsPlayerController { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: - // No members available + uint8_t __pad0000[0x8]; // Autoaligned }; // Alignment: 3 @@ -14777,6 +10534,48 @@ public: uint16_t m_nNode[4]; // 0x40 }; +// Alignment: 35 +// Size: 0xd0 +struct RnBodyDesc_t +{ +public: + CUtlString m_sDebugName; // 0x0 + Vector m_vPosition; // 0x8 + QuaternionStorage m_qOrientation; // 0x14 + Vector m_vLinearVelocity; // 0x24 + Vector m_vAngularVelocity; // 0x30 + Vector m_vLocalMassCenter; // 0x3c + Vector m_LocalInertiaInv[3]; // 0x48 + float m_flMassInv; // 0x6c + float m_flGameMass; // 0x70 + float m_flInertiaScaleInv; // 0x74 + float m_flLinearDamping; // 0x78 + float m_flAngularDamping; // 0x7c + float m_flLinearDrag; // 0x80 + float m_flAngularDrag; // 0x84 + float m_flLinearBuoyancyDrag; // 0x88 + float m_flAngularBuoyancyDrag; // 0x8c + Vector m_vLastAwakeForceAccum; // 0x90 + Vector m_vLastAwakeTorqueAccum; // 0x9c + float m_flBuoyancyFactor; // 0xa8 + float m_flGravityScale; // 0xac + float m_flTimeScale; // 0xb0 + int32_t m_nBodyType; // 0xb4 + uint32_t m_nGameIndex; // 0xb8 + uint32_t m_nGameFlags; // 0xbc + int8_t m_nMinVelocityIterations; // 0xc0 + int8_t m_nMinPositionIterations; // 0xc1 + int8_t m_nMassPriority; // 0xc2 + bool m_bEnabled; // 0xc3 + bool m_bSleeping; // 0xc4 + bool m_bIsContinuousEnabled; // 0xc5 + bool m_bDragEnabled; // 0xc6 + bool m_bBuoyancyDragEnabled; // 0xc7 + bool m_bGravityDisabled; // 0xc8 + bool m_bSpeculativeEnabled; // 0xc9 + bool m_bHasShadowController; // 0xca +}; + // Alignment: 4 // Size: 0xd0 class CFeNamedJiggleBone @@ -14929,6 +10728,14 @@ public: uint32_t m_nVertexMapHash; // 0x44 }; +// Alignment: 1 +// Size: 0xd8 +struct vphysics_save_cphysicsbody_t : public RnBodyDesc_t +{ +public: + uint64_t m_nOldPointer; // 0xd0 +}; + // Alignment: 100 // Size: 0x600 struct PhysFeModelDesc_t @@ -15098,6 +10905,632 @@ public: float m_flLength; // 0x4 }; +// Alignment: 1 +// Size: 0x4 +struct PulseDocNodeID_t +{ +public: + int32_t m_Value; // 0x0 +}; + +// Alignment: 1 +// Size: 0x48 +class CPulseCell_Base +{ +public: + // MFgdFromSchemaCompletelySkipField + PulseDocNodeID_t m_nEditorNodeID; // 0x8 +}; + +// Alignment: 1 +// Size: 0x2 +struct PulseRuntimeStateOffset_t +{ +public: + uint16_t m_Value; // 0x0 +}; + +// Alignment: 3 +// Size: 0x50 +class CPulseRuntimeMethodArg +{ +public: + CKV3MemberNameWithStorage m_Name; // 0x0 + CUtlString m_Description; // 0x38 + CPulseValueFullType m_Type; // 0x40 +}; + +// Alignment: 0 +// Size: 0x48 +class CPulseCell_BaseFlow : public CPulseCell_Base +{ +public: + // No members available +}; + +// Alignment: 1 +// Size: 0x4 +struct PulseRuntimeChunkIndex_t +{ +public: + int32_t m_Value; // 0x0 +}; + +// Alignment: 0 +// Size: 0x48 +class CPulseCell_Step_DebugLog : public CPulseCell_BaseFlow +{ +public: + // No members available +}; + +// Alignment: 3 +// Size: 0x10 +class CPulse_OutflowConnection +{ +public: + CUtlSymbolLarge m_SourceOutflowName; // 0x0 + PulseRuntimeChunkIndex_t m_nDestChunk; // 0x8 + int32_t m_nInstruction; // 0xc +}; + +// Alignment: 1 +// Size: 0x4 +struct PulseRuntimeCallInfoIndex_t +{ +public: + int32_t m_Value; // 0x0 +}; + +// Alignment: 2 +// Size: 0x20 +struct PulseRegisterMap_t +{ +public: + KeyValues3 m_Inparams; // 0x0 + KeyValues3 m_Outparams; // 0x10 +}; + +// Alignment: 0 +// Size: 0x48 +class CPulseCell_Test_MultiInflow_NoDefault : public CPulseCell_BaseFlow +{ +public: + // No members available +}; + +// Alignment: 9 +// Size: 0xf8 +class CPulseGraphDef +{ +public: + CUtlSymbolLarge m_DomainIdentifier; // 0x8 + CUtlSymbolLarge m_ParentMapName; // 0x10 + CUtlVector< CPulse_Chunk* > m_Chunks; // 0x18 + CUtlVector< CPulseCell_Base* > m_Cells; // 0x30 + CUtlVector< CPulse_Variable > m_Vars; // 0x48 + CUtlVector< CPulse_PublicOutput > m_PublicOutputs; // 0x60 + CUtlVector< CPulse_InvokeBinding* > m_InvokeBindings; // 0x78 + CUtlVector< CPulse_CallInfo* > m_CallInfos; // 0x90 + CUtlVector< CPulse_OutputConnection* > m_OutputConnections; // 0xa8 +}; + +// Alignment: 2 +// Size: 0x70 +class CPulseCell_Outflow_IntSwitch : public CPulseCell_BaseFlow +{ +public: + CPulse_OutflowConnection m_DefaultCaseOutflow; // 0x48 + CUtlVector< CPulse_OutflowConnection > m_CaseOutflows; // 0x58 +}; + +// Alignment: 1 +// Size: 0x4 +struct PulseRuntimeCellIndex_t +{ +public: + int32_t m_Value; // 0x0 +}; + +// Alignment: 1 +// Size: 0x2 +struct PulseRuntimeRegisterIndex_t +{ +public: + int16_t m_Value; // 0x0 +}; + +// Alignment: 0 +// Size: 0x48 +class CPulseCell_BaseValue : public CPulseCell_Base +{ +public: + // No members available +}; + +// Alignment: 0 +// Size: 0x48 +class CPulseCell_Val_TestDomainGetEntityName : public CPulseCell_BaseValue +{ +public: + // No members available +}; + +// Alignment: 6 +// Size: 0x40 +class CPulse_CallInfo +{ +public: + CUtlSymbolLarge m_PortName; // 0x0 + PulseDocNodeID_t m_nEditorNodeID; // 0x8 +private: + [[maybe_unused]] uint8_t __pad000c[0x4]; // 0xc +public: + PulseRegisterMap_t m_RegisterMap; // 0x10 + PulseDocNodeID_t m_CallMethodID; // 0x30 + PulseRuntimeChunkIndex_t m_nSrcChunk; // 0x34 + int32_t m_nSrcInstruction; // 0x38 +}; + +// Alignment: 0 +// Size: 0x48 +class CPulseCell_Step_TestDomainTracepoint : public CPulseCell_BaseFlow +{ +public: + // No members available +}; + +// Alignment: 2 +// Size: 0x70 +class CPulseCell_Inflow_BaseEntrypoint : public CPulseCell_BaseFlow +{ +public: + PulseRuntimeChunkIndex_t m_EntryChunk; // 0x48 +private: + [[maybe_unused]] uint8_t __pad004c[0x4]; // 0x4c +public: + PulseRegisterMap_t m_RegisterMap; // 0x50 +}; + +// Alignment: 0 +// Size: 0xd0 +class CBasePulseGraphInstance +{ +public: + uint8_t __pad0000[0xd0]; // Autoaligned +}; + +// Alignment: 1 +// Size: 0x50 +class CPulseCell_Step_TestDomainEntFire : public CPulseCell_BaseFlow +{ +public: + CUtlString m_Input; // 0x48 +}; + +// Alignment: 0 +// Size: 0x48 +class CPulseCell_Step_TestDomainCreateFakeEntity : public CPulseCell_BaseFlow +{ +public: + // No members available +}; + +// Alignment: 1 +// Size: 0x4 +struct PulseRuntimeOutputIndex_t +{ +public: + int32_t m_Value; // 0x0 +}; + +// Alignment: 1 +// Size: 0x60 +class CPulseCell_Outflow_CycleShuffled : public CPulseCell_BaseFlow +{ +public: + CUtlVector< CPulse_OutflowConnection > m_Outputs; // 0x48 +}; + +// Alignment: 5 +// Size: 0x108 +class CPulseGraphInstance_TestDomain : public CBasePulseGraphInstance +{ +public: + bool m_bIsRunningUnitTests; // 0xd0 + bool m_bExplicitTimeStepping; // 0xd1 + bool m_bExpectingToDestroyWithYieldedCursors; // 0xd2 +private: + [[maybe_unused]] uint8_t __pad00d3[0x1]; // 0xd3 +public: + int32_t m_nNextValidateIndex; // 0xd4 + CUtlVector< CUtlString > m_Tracepoints; // 0xd8 + static double &Get_s_flExplicitCurTime(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("!GlobalTypes")->FindDeclaredClass("CPulseGraphInstance_TestDomain")->m_static_fields[0]->m_instance);}; +}; + +// Alignment: 5 +// Size: 0xb0 +class CPulseCell_Inflow_Method : public CPulseCell_Inflow_BaseEntrypoint +{ +public: + CUtlSymbolLarge m_MethodName; // 0x70 + CUtlString m_Description; // 0x78 + bool m_bIsPublic; // 0x80 +private: + [[maybe_unused]] uint8_t __pad0081[0x7]; // 0x81 +public: + CPulseValueFullType m_ReturnType; // 0x88 + CUtlVector< CPulseRuntimeMethodArg > m_Args; // 0x98 +}; + +// Alignment: 5 +// Size: 0x38 +class CPulse_Variable +{ +public: + CUtlSymbolLarge m_Name; // 0x0 + CUtlString m_Description; // 0x8 + CPulseValueFullType m_Type; // 0x10 + KeyValues3 m_DefaultValue; // 0x20 +private: + [[maybe_unused]] uint8_t __pad0030[0x2]; // 0x30 +public: + bool m_bIsPublic; // 0x32 +}; + +// Alignment: 5 +// Size: 0x38 +class CPulse_InvokeBinding +{ +public: + PulseRegisterMap_t m_RegisterMap; // 0x0 + CUtlSymbolLarge m_FuncName; // 0x20 + PulseRuntimeCellIndex_t m_nCellIndex; // 0x28 + PulseRuntimeChunkIndex_t m_nSrcChunk; // 0x2c + int32_t m_nSrcInstruction; // 0x30 +}; + +// Alignment: 1 +// Size: 0x4 +struct PulseRuntimeInvokeIndex_t +{ +public: + int32_t m_Value; // 0x0 +}; + +// Alignment: 0 +// Size: 0x48 +class CPulseCell_BaseYieldingInflow : public CPulseCell_BaseFlow +{ +public: + // No members available +}; + +// Alignment: 0 +// Size: 0x1 +class CPulseTurtleGraphicsLib +{ +public: + uint8_t __pad0000[0x1]; // Autoaligned +}; + +// Alignment: 1 +// Size: 0x60 +class CPulseCell_Outflow_SimultaneousParallel : public CPulseCell_BaseFlow +{ +public: + CUtlVector< CPulse_OutflowConnection > m_Outputs; // 0x48 +}; + +// Alignment: 0 +// Size: 0xf0 +class CPulseGraphInstance_TurtleGraphics : public CBasePulseGraphInstance +{ +public: + // No members available +}; + +// Alignment: 2 +// Size: 0x68 +class CPulseCell_Step_CallExternalMethod : public CPulseCell_BaseFlow +{ +public: + CUtlSymbolLarge m_MethodName; // 0x48 + CUtlVector< CPulseRuntimeMethodArg > m_ExpectedArgs; // 0x50 +}; + +// Alignment: 4 +// Size: 0x20 +class CPulse_OutputConnection +{ +public: + CUtlSymbolLarge m_SourceOutput; // 0x0 + CUtlSymbolLarge m_TargetEntity; // 0x8 + CUtlSymbolLarge m_TargetInput; // 0x10 + CUtlSymbolLarge m_Param; // 0x18 +}; + +// Alignment: 2 +// Size: 0x10 +class CPulse_PublicOutput +{ +public: + CUtlSymbolLarge m_Name; // 0x0 + CUtlString m_Description; // 0x8 +}; + +// Alignment: 1 +// Size: 0x78 +class CPulseCell_Inflow_EventHandler : public CPulseCell_Inflow_BaseEntrypoint +{ +public: + CUtlSymbolLarge m_EventName; // 0x70 +}; + +// Alignment: 1 +// Size: 0x60 +class CPulseCell_Outflow_CycleRandom : public CPulseCell_BaseFlow +{ +public: + CUtlVector< CPulse_OutflowConnection > m_Outputs; // 0x48 +}; + +// Alignment: 0 +// Size: 0x10 +class CPulse_ResumePoint : public CPulse_OutflowConnection +{ +public: + // No members available +}; + +// Alignment: 0 +// Size: 0x48 +class CPulseCell_Value_RandomInt : public CPulseCell_BaseValue +{ +public: + // No members available +}; + +// Alignment: 2 +// Size: 0x28 +struct CPulseCell_Outflow_CycleShuffled__InstanceState_t +{ +public: + CUtlVectorFixedGrowable< uint8 > m_Shuffle; // 0x0 + int32_t m_nNextShuffle; // 0x20 +}; + +// Alignment: 1 +// Size: 0x4 +struct PulseTestEHandle_t +{ +public: + int32_t m_Value; // 0x0 +}; + +// Alignment: 0 +// Size: 0x48 +class CPulseCell_Test_NoInflow : public CPulseCell_BaseFlow +{ +public: + // No members available +}; + +// Alignment: 2 +// Size: 0x70 +class CPulseCell_Outflow_StringSwitch : public CPulseCell_BaseFlow +{ +public: + CPulse_OutflowConnection m_DefaultCaseOutflow; // 0x48 + CUtlVector< CPulse_OutflowConnection > m_CaseOutflows; // 0x58 +}; + +// Alignment: 0 +// Size: 0x48 +class CPulseCell_Test_MultiInflow_WithDefault : public CPulseCell_BaseFlow +{ +public: + // No members available +}; + +// Alignment: 0 +// Size: 0x48 +class CPulseCell_Value_TestValue50 : public CPulseCell_BaseValue +{ +public: + // No members available +}; + +// Alignment: 4 +// Size: 0x98 +class CPulseCell_Inflow_EntOutputHandler : public CPulseCell_Inflow_BaseEntrypoint +{ +public: + CUtlSymbolLarge m_SourceEntity; // 0x70 + CUtlSymbolLarge m_SourceOutput; // 0x78 + CUtlSymbolLarge m_TargetInput; // 0x80 + CPulseValueFullType m_ExpectedParamType; // 0x88 +}; + +// Alignment: 1 +// Size: 0x58 +class CPulseCell_Inflow_Wait : public CPulseCell_BaseYieldingInflow +{ +public: + CPulse_ResumePoint m_WakeResume; // 0x48 +}; + +// Alignment: 1 +// Size: 0x78 +class CPulseCell_Inflow_GraphHook : public CPulseCell_Inflow_BaseEntrypoint +{ +public: + CUtlSymbolLarge m_HookName; // 0x70 +}; + +// Alignment: 1 +// Size: 0x58 +class CPulseCell_Inflow_Yield : public CPulseCell_BaseYieldingInflow +{ +public: + CPulse_ResumePoint m_UnyieldResume; // 0x48 +}; + +// Alignment: 0 +// Size: 0x1 +class CPulseTestFuncs_DerivedDomain +{ +public: + uint8_t __pad0000[0x1]; // Autoaligned +}; + +// Alignment: 1 +// Size: 0x60 +class CPulseCell_Outflow_CycleOrdered : public CPulseCell_BaseFlow +{ +public: + CUtlVector< CPulse_OutflowConnection > m_Outputs; // 0x48 +}; + +// Alignment: 0 +// Size: 0x108 +class CPulseGraphInstance_TestDomain_Derived : public CPulseGraphInstance_TestDomain +{ +public: + // No members available +}; + +// Alignment: 2 +// Size: 0x68 +class CPulseCell_Outflow_TestRandomYesNo : public CPulseCell_BaseFlow +{ +public: + // MPropertyFriendlyName "Yes" + // MPropertyDescription "Randomly taken half of the time" + CPulse_OutflowConnection m_Yes; // 0x48 + // MPropertyFriendlyName "No" + // MPropertyDescription "Randomly taken half of the time" + CPulse_OutflowConnection m_No; // 0x58 +}; + +// Alignment: 5 +// Size: 0x58 +class CPulse_RegisterInfo +{ +public: + PulseRuntimeRegisterIndex_t m_nReg; // 0x0 + CPulseValueFullType m_Type; // 0x8 + CKV3MemberNameWithStorage m_OriginName; // 0x18 + int32_t m_nWrittenByInstruction; // 0x50 + int32_t m_nLastReadByInstruction; // 0x54 +}; + +// Alignment: 1 +// Size: 0x4 +struct CPulseCell_Outflow_CycleOrdered__InstanceState_t +{ +public: + int32_t m_nNextIndex; // 0x0 +}; + +// Alignment: 1 +// Size: 0x4 +struct PulseRuntimeVarIndex_t +{ +public: + int32_t m_Value; // 0x0 +}; + +// Alignment: 0 +// Size: 0x68 +class CPulseCell_Value_Expression : public CPulseCell_BaseValue +{ +public: + // No members available +}; + +// Alignment: 3 +// Size: 0x60 +class CPulse_Chunk +{ +public: + CUtlLeanVector< PGDInstruction_t > m_Instructions; // 0x0 + CUtlLeanVector< CPulse_RegisterInfo > m_Registers; // 0x10 + CUtlLeanVector< PulseDocNodeID_t > m_InstructionEditorIDs; // 0x20 +}; + +// Alignment: 1 +// Size: 0x4 +struct PulseRuntimeEntrypointIndex_t +{ +public: + int32_t m_Value; // 0x0 +}; + +// Alignment: 16 +// Size: 0x68 +struct PGDInstruction_t +{ +public: + PulseInstructionCode_t m_nCode; // 0x0 + PulseRuntimeVarIndex_t m_nVar; // 0x4 + PulseRuntimeRegisterIndex_t m_nReg0; // 0x8 + PulseRuntimeRegisterIndex_t m_nReg1; // 0xa + PulseRuntimeRegisterIndex_t m_nReg2; // 0xc +private: + [[maybe_unused]] uint8_t __pad000e[0x2]; // 0xe +public: + PulseRuntimeInvokeIndex_t m_nInvokeBindingIndex; // 0x10 + PulseRuntimeChunkIndex_t m_nChunk; // 0x14 + int32_t m_nDestInstruction; // 0x18 + PulseRuntimeCallInfoIndex_t m_nCallInfoIndex; // 0x1c + CUtlSymbolLarge m_Arg0Name; // 0x20 + CUtlSymbolLarge m_Arg1Name; // 0x28 + bool m_bLiteralBool; // 0x30 +private: + [[maybe_unused]] uint8_t __pad0031[0x3]; // 0x31 +public: + int32_t m_nLiteralInt; // 0x34 + float m_flLiteralFloat; // 0x38 +private: + [[maybe_unused]] uint8_t __pad003c[0x4]; // 0x3c +public: + CBufferString m_LiteralString; // 0x40 + Vector m_vLiteralVec3; // 0x50 +}; + +// Alignment: 0 +// Size: 0x48 +class CPulseCell_Step_TestDomainDestroyFakeEntity : public CPulseCell_BaseFlow +{ +public: + // No members available +}; + +// Alignment: 0 +// Size: 0x1 +class CPulseTestFuncs_LibraryA +{ +public: + uint8_t __pad0000[0x1]; // Autoaligned +}; + +// Alignment: 0 +// Size: 0x48 +class CPulseCell_Val_TestDomainFindEntityByName : public CPulseCell_BaseValue +{ +public: + // No members available +}; + +// Alignment: 1 +// Size: 0x50 +class CPulseCell_Step_PublicOutput : public CPulseCell_BaseFlow +{ +public: + PulseRuntimeOutputIndex_t m_OutputIndex; // 0x48 +}; + // Alignment: 12 // Size: 0x30 struct VMixDynamicsDesc_t @@ -15189,8 +11622,6 @@ public: // Size: 0x18 class CSosGroupActionSchema { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MPropertyFriendlyName "Name" CUtlString m_name; // 0x8 @@ -15259,10 +11690,8 @@ class CSosGroupActionLimitSchema : public CSosGroupActionSchema public: // MPropertyFriendlyName "Max Count" int32_t m_nMaxCount; // 0x18 - // MPropertyAttributeChoiceEnumName // MPropertyFriendlyName "Stop Type" SosActionStopType_t m_nStopType; // 0x1c - // MPropertyAttributeChoiceEnumName // MPropertyFriendlyName "Sort Type" SosActionSortType_t m_nSortType; // 0x20 }; @@ -15366,8 +11795,6 @@ public: // Size: 0x10 class CSosGroupBranchPattern { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MPropertyFriendlyName "Event Name" bool m_bMatchEventName; // 0x8 @@ -15540,7 +11967,6 @@ class CSosSoundEventGroupSchema public: // MPropertyFriendlyName "Group Name" CUtlString m_name; // 0x0 - // MPropertyAttributeChoiceEnumName // MPropertyFriendlyName "Group Type" SosGroupType_t m_nType; // 0x8 // MPropertyFriendlyName "Blocks Events" @@ -15776,12 +12202,12 @@ public: }; // Alignment: 2 -// Size: 0x30 +// Size: 0x40 struct EntityKeyValueData_t { public: - CUtlBinaryBlock m_keyValuesData; // 0x0 - CUtlVector< EntityIOConnectionData_t > m_connections; // 0x18 + CUtlVector< EntityIOConnectionData_t > m_connections; // 0x8 + CUtlBinaryBlock m_keyValuesData; // 0x20 }; // Alignment: 1 @@ -15827,8 +12253,8 @@ public: CUtlVector< CStrongHandle< InfoForResourceTypeCTextureBase > > m_lightMaps; // 0x18 }; -// Alignment: 13 -// Size: 0x30 +// Alignment: 9 +// Size: 0x18 struct AggregateMeshInfo_t { public: @@ -15844,10 +12270,6 @@ private: public: ObjectTypeFlags_t m_objectFlags; // 0x10 int32_t m_nLightProbeVolumePrecomputedHandshake; // 0x14 - Vector m_vLODOrigin; // 0x18 - float m_fLODStartDrawDistance; // 0x24 - float m_fLODEndDrawDistance; // 0x28 - float m_fMaxObjectScale; // 0x2c }; // Alignment: 4 @@ -15865,18 +12287,14 @@ public: // Size: 0x1 struct InfoForResourceTypeVMapResourceData_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 13 // Size: 0xa0 class CVoxelVisibility { -private: - [[maybe_unused]] uint8_t __pad0000[0x40]; // 0x0 public: uint32_t m_nBaseClusterCount; // 0x40 uint32_t m_nPVSBytesPerCluster; // 0x44 @@ -15938,8 +12356,8 @@ public: CStrongHandle< InfoForResourceTypeIMaterial2 > m_pMaterial; // 0x10 }; -// Alignment: 12 -// Size: 0x128 +// Alignment: 13 +// Size: 0x140 struct WorldNode_t { public: @@ -15947,14 +12365,15 @@ public: CUtlVector< InfoOverlayData_t > m_infoOverlays; // 0x18 CUtlVector< uint16 > m_visClusterMembership; // 0x30 CUtlVector< AggregateSceneObject_t > m_aggregateSceneObjects; // 0x48 - CUtlVector< ExtraVertexStreamOverride_t > m_extraVertexStreamOverrides; // 0x60 - CUtlVector< MaterialOverride_t > m_materialOverrides; // 0x78 - CUtlVector< WorldNodeOnDiskBufferData_t > m_extraVertexStreams; // 0x90 - CUtlVector< CUtlString > m_layerNames; // 0xa8 - CUtlVector< uint8 > m_sceneObjectLayerIndices; // 0xc0 - CUtlVector< uint8 > m_overlayLayerIndices; // 0xd8 - CUtlString m_grassFileName; // 0xf0 - BakedLightingInfo_t m_nodeLightingInfo; // 0xf8 + CUtlVector< ClutterSceneObject_t > m_clutterSceneObjects; // 0x60 + CUtlVector< ExtraVertexStreamOverride_t > m_extraVertexStreamOverrides; // 0x78 + CUtlVector< MaterialOverride_t > m_materialOverrides; // 0x90 + CUtlVector< WorldNodeOnDiskBufferData_t > m_extraVertexStreams; // 0xa8 + CUtlVector< CUtlString > m_layerNames; // 0xc0 + CUtlVector< uint8 > m_sceneObjectLayerIndices; // 0xd8 + CUtlVector< uint8 > m_overlayLayerIndices; // 0xf0 + CUtlString m_grassFileName; // 0x108 + BakedLightingInfo_t m_nodeLightingInfo; // 0x110 }; // Alignment: 4 @@ -15962,10 +12381,10 @@ public: struct PermEntityLumpData_t { public: - CUtlString m_name; // 0x0 - CUtlString m_hammerUniqueId; // 0x8 - CUtlVector< CStrongHandleCopyable< InfoForResourceTypeCEntityLump > > m_childLumps; // 0x10 - CUtlVector< EntityKeyValueData_t > m_entityKeyValues; // 0x28 + CUtlString m_name; // 0x8 + CUtlString m_hammerUniqueId; // 0x10 + CUtlVector< CStrongHandleCopyable< InfoForResourceTypeCEntityLump > > m_childLumps; // 0x18 + CUtlLeanVector< EntityKeyValueData_t > m_entityKeyValues; // 0x30 }; // Alignment: 4 @@ -15979,14 +12398,29 @@ public: CUtlVector< CStrongHandleCopyable< InfoForResourceTypeCEntityLump > > m_entityLumps; // 0x68 }; +// Alignment: 7 +// Size: 0x70 +struct ClutterSceneObject_t +{ +public: + AABB_t m_Bounds; // 0x0 + ObjectTypeFlags_t m_flags; // 0x18 + int16_t m_nLayer; // 0x1c +private: + [[maybe_unused]] uint8_t __pad001e[0x2]; // 0x1e +public: + CUtlVector< matrix3x4_t > m_transforms; // 0x20 + CUtlVector< Color > m_tintColorSrgb; // 0x38 + CUtlVector< ClutterTile_t > m_tiles; // 0x50 + CStrongHandle< InfoForResourceTypeCModel > m_renderableModel; // 0x68 +}; + // Alignment: 0 // Size: 0x1 struct VMapResourceData_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 7 @@ -16024,6 +12458,16 @@ public: CStrongHandle< InfoForResourceTypeCModel > m_renderableModel; // 0x70 }; +// Alignment: 3 +// Size: 0x20 +struct ClutterTile_t +{ +public: + uint32_t m_nFirstInstance; // 0x0 + uint32_t m_nLastInstance; // 0x4 + AABB_t m_Bounds; // 0x8 +}; + // Alignment: 4 // Size: 0x28 struct ExtraVertexStreamOverride_t : public BaseSceneObjectOverride_t @@ -16081,10 +12525,8 @@ public: // Size: 0x28 class CParticleProperty { -private: - [[maybe_unused]] uint8_t __pad0000[0x28]; // 0x0 public: - // No members available + uint8_t __pad0000[0x28]; // Autoaligned }; // Alignment: 1 @@ -16095,77 +12537,85 @@ public: int32_t m_Value; // 0x0 }; -// Alignment: 44 -// Size: 0x140 -class CParticleFloatInput +// Alignment: 0 +// Size: 0x10 +class CParticleInput { public: - ParticleFloatType_t m_nType; // 0x0 - ParticleFloatMapType_t m_nMapType; // 0x4 - float m_flLiteralValue; // 0x8 -private: - [[maybe_unused]] uint8_t __pad000c[0x4]; // 0xc + uint8_t __pad0000[0x10]; // Autoaligned +}; + +// Alignment: 44 +// Size: 0x150 +class CParticleFloatInput : public CParticleInput +{ public: - CKV3MemberNameWithStorage m_NamedValue; // 0x10 - int32_t m_nControlPoint; // 0x48 - ParticleAttributeIndex_t m_nScalarAttribute; // 0x4c - ParticleAttributeIndex_t m_nVectorAttribute; // 0x50 - int32_t m_nVectorComponent; // 0x54 - float m_flRandomMin; // 0x58 - float m_flRandomMax; // 0x5c - bool m_bHasRandomSignFlip; // 0x60 + ParticleFloatType_t m_nType; // 0x10 + ParticleFloatMapType_t m_nMapType; // 0x14 + float m_flLiteralValue; // 0x18 private: - [[maybe_unused]] uint8_t __pad0061[0x3]; // 0x61 + [[maybe_unused]] uint8_t __pad001c[0x4]; // 0x1c public: - ParticleFloatRandomMode_t m_nRandomMode; // 0x64 + CParticleNamedValueRef m_NamedValue; // 0x20 + int32_t m_nControlPoint; // 0x60 + ParticleAttributeIndex_t m_nScalarAttribute; // 0x64 + ParticleAttributeIndex_t m_nVectorAttribute; // 0x68 + int32_t m_nVectorComponent; // 0x6c + float m_flRandomMin; // 0x70 + float m_flRandomMax; // 0x74 + bool m_bHasRandomSignFlip; // 0x78 private: - [[maybe_unused]] uint8_t __pad0068[0x4]; // 0x68 + [[maybe_unused]] uint8_t __pad0079[0x3]; // 0x79 public: - float m_flLOD0; // 0x6c - float m_flLOD1; // 0x70 - float m_flLOD2; // 0x74 - float m_flLOD3; // 0x78 - ParticleAttributeIndex_t m_nNoiseInputVectorAttribute; // 0x7c - float m_flNoiseOutputMin; // 0x80 - float m_flNoiseOutputMax; // 0x84 - float m_flNoiseScale; // 0x88 - Vector m_vecNoiseOffsetRate; // 0x8c - float m_flNoiseOffset; // 0x98 - int32_t m_nNoiseOctaves; // 0x9c - PFNoiseTurbulence_t m_nNoiseTurbulence; // 0xa0 - PFNoiseType_t m_nNoiseType; // 0xa4 - PFNoiseModifier_t m_nNoiseModifier; // 0xa8 - float m_flNoiseTurbulenceScale; // 0xac - float m_flNoiseTurbulenceMix; // 0xb0 - float m_flNoiseImgPreviewScale; // 0xb4 - bool m_bNoiseImgPreviewLive; // 0xb8 + ParticleFloatRandomMode_t m_nRandomMode; // 0x7c private: - [[maybe_unused]] uint8_t __pad00b9[0x8]; // 0xb9 + [[maybe_unused]] uint8_t __pad0080[0x4]; // 0x80 public: - bool m_bUseBoundsCenter; // 0xc1 + float m_flLOD0; // 0x84 + float m_flLOD1; // 0x88 + float m_flLOD2; // 0x8c + float m_flLOD3; // 0x90 + ParticleAttributeIndex_t m_nNoiseInputVectorAttribute; // 0x94 + float m_flNoiseOutputMin; // 0x98 + float m_flNoiseOutputMax; // 0x9c + float m_flNoiseScale; // 0xa0 + Vector m_vecNoiseOffsetRate; // 0xa4 + float m_flNoiseOffset; // 0xb0 + int32_t m_nNoiseOctaves; // 0xb4 + PFNoiseTurbulence_t m_nNoiseTurbulence; // 0xb8 + PFNoiseType_t m_nNoiseType; // 0xbc + PFNoiseModifier_t m_nNoiseModifier; // 0xc0 + float m_flNoiseTurbulenceScale; // 0xc4 + float m_flNoiseTurbulenceMix; // 0xc8 + float m_flNoiseImgPreviewScale; // 0xcc + bool m_bNoiseImgPreviewLive; // 0xd0 private: - [[maybe_unused]] uint8_t __pad00c2[0x2]; // 0xc2 + [[maybe_unused]] uint8_t __pad00d1[0x8]; // 0xd1 public: - ParticleFloatInputMode_t m_nInputMode; // 0xc4 - float m_flMultFactor; // 0xc8 - float m_flInput0; // 0xcc - float m_flInput1; // 0xd0 - float m_flOutput0; // 0xd4 - float m_flOutput1; // 0xd8 - float m_flNotchedRangeMin; // 0xdc - float m_flNotchedRangeMax; // 0xe0 - float m_flNotchedOutputOutside; // 0xe4 - float m_flNotchedOutputInside; // 0xe8 - ParticleFloatBiasType_t m_nBiasType; // 0xec - float m_flBiasParameter; // 0xf0 + bool m_bUseBoundsCenter; // 0xd9 private: - [[maybe_unused]] uint8_t __pad00f4[0x4]; // 0xf4 + [[maybe_unused]] uint8_t __pad00da[0x2]; // 0xda public: - CPiecewiseCurve m_Curve; // 0xf8 + ParticleFloatInputMode_t m_nInputMode; // 0xdc + float m_flMultFactor; // 0xe0 + float m_flInput0; // 0xe4 + float m_flInput1; // 0xe8 + float m_flOutput0; // 0xec + float m_flOutput1; // 0xf0 + float m_flNotchedRangeMin; // 0xf4 + float m_flNotchedRangeMax; // 0xf8 + float m_flNotchedOutputOutside; // 0xfc + float m_flNotchedOutputInside; // 0x100 + ParticleFloatBiasType_t m_nBiasType; // 0x104 + float m_flBiasParameter; // 0x108 +private: + [[maybe_unused]] uint8_t __pad010c[0x4]; // 0x10c +public: + CPiecewiseCurve m_Curve; // 0x110 }; // Alignment: 0 -// Size: 0x140 +// Size: 0x150 class CParticleCollectionFloatInput : public CParticleFloatInput { public: @@ -16173,189 +12623,169 @@ public: }; // Alignment: 16 -// Size: 0x210 +// Size: 0x1b0 class CParticleFunction { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MPropertyFriendlyName "operator strength" // MPropertySortPriority "-100" CParticleCollectionFloatInput m_flOpStrength; // 0x8 // MPropertyFriendlyName "operator end cap state" // MPropertySortPriority "-100" - ParticleEndcapMode_t m_nOpEndCapState; // 0x148 + ParticleEndcapMode_t m_nOpEndCapState; // 0x158 // MPropertyStartGroup "Operator Fade" // MPropertyFriendlyName "operator start fadein" // MParticleAdvancedField // MPropertySortPriority "-100" - float m_flOpStartFadeInTime; // 0x14c + float m_flOpStartFadeInTime; // 0x15c // MPropertyFriendlyName "operator end fadein" // MParticleAdvancedField // MPropertySortPriority "-100" - float m_flOpEndFadeInTime; // 0x150 + float m_flOpEndFadeInTime; // 0x160 // MPropertyFriendlyName "operator start fadeout" // MParticleAdvancedField // MPropertySortPriority "-100" - float m_flOpStartFadeOutTime; // 0x154 + float m_flOpStartFadeOutTime; // 0x164 // MPropertyFriendlyName "operator end fadeout" // MParticleAdvancedField // MPropertySortPriority "-100" - float m_flOpEndFadeOutTime; // 0x158 + float m_flOpEndFadeOutTime; // 0x168 // MPropertyFriendlyName "operator fade oscillate" // MParticleAdvancedField // MPropertySortPriority "-100" - float m_flOpFadeOscillatePeriod; // 0x15c + float m_flOpFadeOscillatePeriod; // 0x16c // MPropertyFriendlyName "normalize fade times to endcap" // MParticleAdvancedField // MPropertySortPriority "-100" - bool m_bNormalizeToStopTime; // 0x160 + bool m_bNormalizeToStopTime; // 0x170 private: - [[maybe_unused]] uint8_t __pad0161[0x3]; // 0x161 + [[maybe_unused]] uint8_t __pad0171[0x3]; // 0x171 public: // MPropertyStartGroup "Operator Fade Time Offset" // MPropertyFriendlyName "operator fade time offset min" // MParticleAdvancedField // MPropertySortPriority "-100" - float m_flOpTimeOffsetMin; // 0x164 + float m_flOpTimeOffsetMin; // 0x174 // MPropertyFriendlyName "operator fade time offset max" // MParticleAdvancedField // MPropertySortPriority "-100" - float m_flOpTimeOffsetMax; // 0x168 + float m_flOpTimeOffsetMax; // 0x178 // MPropertyFriendlyName "operator fade time offset seed" // MParticleAdvancedField // MPropertySortPriority "-100" - int32_t m_nOpTimeOffsetSeed; // 0x16c + int32_t m_nOpTimeOffsetSeed; // 0x17c // MPropertyStartGroup "Operator Fade Timescale Modifiers" // MPropertyFriendlyName "operator fade time scale seed" // MParticleAdvancedField // MPropertySortPriority "-100" - int32_t m_nOpTimeScaleSeed; // 0x170 + int32_t m_nOpTimeScaleSeed; // 0x180 // MPropertyFriendlyName "operator fade time scale min" // MParticleAdvancedField // MPropertySortPriority "-100" - float m_flOpTimeScaleMin; // 0x174 + float m_flOpTimeScaleMin; // 0x184 // MPropertyFriendlyName "operator fade time scale max" // MParticleAdvancedField // MPropertySortPriority "-100" - float m_flOpTimeScaleMax; // 0x178 + float m_flOpTimeScaleMax; // 0x188 private: - [[maybe_unused]] uint8_t __pad017c[0x1]; // 0x17c + [[maybe_unused]] uint8_t __pad018c[0x1]; // 0x18c public: // MPropertyStartGroup // MPropertySuppressField - bool m_bDisableOperator; // 0x17d + bool m_bDisableOperator; // 0x18d private: - [[maybe_unused]] uint8_t __pad017e[0x2]; // 0x17e + [[maybe_unused]] uint8_t __pad018e[0x2]; // 0x18e public: // MPropertyFriendlyName "operator help and notes" // MParticleHelpField // MParticleAdvancedField // MPropertySortPriority "-100" - CUtlString m_Notes; // 0x180 + CUtlString m_Notes; // 0x190 }; // Alignment: 1 -// Size: 0x220 +// Size: 0x1c0 class CParticleFunctionInitializer : public CParticleFunction { public: // MPropertyFriendlyName "Associated emitter Index" - int32_t m_nAssociatedEmitterIndex; // 0x210 -}; - -// Alignment: 0 -// Size: 0x140 -class CPerParticleFloatInput : public CParticleFloatInput -{ -public: - // No members available + int32_t m_nAssociatedEmitterIndex; // 0x1b0 }; // Alignment: 12 -// Size: 0x250 +// Size: 0x1f0 class C_INIT_RemapParticleCountToScalar : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x220 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c0 // MPropertyFriendlyName "input minimum" - int32_t m_nInputMin; // 0x224 + int32_t m_nInputMin; // 0x1c4 // MPropertyFriendlyName "input maximum" - int32_t m_nInputMax; // 0x228 + int32_t m_nInputMax; // 0x1c8 // MPropertyFriendlyName "input scale control point" - int32_t m_nScaleControlPoint; // 0x22c + int32_t m_nScaleControlPoint; // 0x1cc // MPropertyFriendlyName "input scale control point field" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nScaleControlPointField; // 0x230 + int32_t m_nScaleControlPointField; // 0x1d0 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x234 + float m_flOutputMin; // 0x1d4 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x238 + float m_flOutputMax; // 0x1d8 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x23c + ParticleSetMethod_t m_nSetMethod; // 0x1dc // MPropertyFriendlyName "only active within specified input range" - bool m_bActiveRange; // 0x240 + bool m_bActiveRange; // 0x1e0 // MPropertyFriendlyName "invert input from total particle count" - bool m_bInvert; // 0x241 + bool m_bInvert; // 0x1e1 // MPropertyFriendlyName "wrap input" - bool m_bWrap; // 0x242 + bool m_bWrap; // 0x1e2 private: - [[maybe_unused]] uint8_t __pad0243[0x1]; // 0x243 + [[maybe_unused]] uint8_t __pad01e3[0x1]; // 0x1e3 public: // MPropertyFriendlyName "remap bias" - float m_flRemapBias; // 0x244 + float m_flRemapBias; // 0x1e4 }; -// Alignment: 22 -// Size: 0x5e8 -class CParticleVecInput +// Alignment: 23 +// Size: 0x638 +class CParticleVecInput : public CParticleInput { public: - ParticleVecType_t m_nType; // 0x0 - Vector m_vLiteralValue; // 0x4 - Color m_LiteralColor; // 0x10 + ParticleVecType_t m_nType; // 0x10 + Vector m_vLiteralValue; // 0x14 + Color m_LiteralColor; // 0x20 private: - [[maybe_unused]] uint8_t __pad0014[0x4]; // 0x14 + [[maybe_unused]] uint8_t __pad0024[0x4]; // 0x24 public: - CKV3MemberNameWithStorage m_NamedValue; // 0x18 - bool m_bFollowNamedValue; // 0x50 + CParticleNamedValueRef m_NamedValue; // 0x28 + bool m_bFollowNamedValue; // 0x68 private: - [[maybe_unused]] uint8_t __pad0051[0x3]; // 0x51 + [[maybe_unused]] uint8_t __pad0069[0x3]; // 0x69 public: - ParticleAttributeIndex_t m_nVectorAttribute; // 0x54 - Vector m_vVectorAttributeScale; // 0x58 - int32_t m_nControlPoint; // 0x64 - Vector m_vCPValueScale; // 0x68 - Vector m_vCPRelativePosition; // 0x74 - Vector m_vCPRelativeDir; // 0x80 -private: - [[maybe_unused]] uint8_t __pad008c[0x4]; // 0x8c -public: - CParticleFloatInput m_FloatComponentX; // 0x90 - CParticleFloatInput m_FloatComponentY; // 0x1d0 - CParticleFloatInput m_FloatComponentZ; // 0x310 - CParticleFloatInput m_FloatInterp; // 0x450 - float m_flInterpInput0; // 0x590 - float m_flInterpInput1; // 0x594 - Vector m_vInterpOutput0; // 0x598 - Vector m_vInterpOutput1; // 0x5a4 - CColorGradient m_Gradient; // 0x5b0 - Vector m_vRandomMin; // 0x5c8 - Vector m_vRandomMax; // 0x5d4 -}; - -// Alignment: 1 -// Size: 0x4 -struct PulseDocNodeID_t -{ -public: - int32_t m_Value; // 0x0 + ParticleAttributeIndex_t m_nVectorAttribute; // 0x6c + Vector m_vVectorAttributeScale; // 0x70 + int32_t m_nControlPoint; // 0x7c + int32_t m_nDeltaControlPoint; // 0x80 + Vector m_vCPValueScale; // 0x84 + Vector m_vCPRelativePosition; // 0x90 + Vector m_vCPRelativeDir; // 0x9c + CParticleFloatInput m_FloatComponentX; // 0xa8 + CParticleFloatInput m_FloatComponentY; // 0x1f8 + CParticleFloatInput m_FloatComponentZ; // 0x348 + CParticleFloatInput m_FloatInterp; // 0x498 + float m_flInterpInput0; // 0x5e8 + float m_flInterpInput1; // 0x5ec + Vector m_vInterpOutput0; // 0x5f0 + Vector m_vInterpOutput1; // 0x5fc + CColorGradient m_Gradient; // 0x608 + Vector m_vRandomMin; // 0x620 + Vector m_vRandomMax; // 0x62c }; // Alignment: 0 -// Size: 0x210 +// Size: 0x1b0 class CParticleFunctionOperator : public CParticleFunction { public: @@ -16424,73 +12854,49 @@ public: bool m_bRightEye; // 0x40 }; -// Alignment: 1 -// Size: 0x48 -class CPulseCell_Base -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 -public: - // MFgdFromSchemaCompletelySkipField - PulseDocNodeID_t m_nEditorNodeID; // 0x8 -}; - // Alignment: 10 -// Size: 0x240 +// Size: 0x1e0 class C_OP_CycleScalar : public CParticleFunctionOperator { public: // MPropertyFriendlyName "destination scalar field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nDestField; // 0x210 + ParticleAttributeIndex_t m_nDestField; // 0x1b0 // MPropertyFriendlyName "Value at start of cycle" - float m_flStartValue; // 0x214 + float m_flStartValue; // 0x1b4 // MPropertyFriendlyName "Value at end of cycle" - float m_flEndValue; // 0x218 + float m_flEndValue; // 0x1b8 // MPropertyFriendlyName "Cycle time" - float m_flCycleTime; // 0x21c + float m_flCycleTime; // 0x1bc // MPropertyFriendlyName "Do not repeat cycle" - bool m_bDoNotRepeatCycle; // 0x220 + bool m_bDoNotRepeatCycle; // 0x1c0 // MPropertyFriendlyName "Synchronize particles" - bool m_bSynchronizeParticles; // 0x221 + bool m_bSynchronizeParticles; // 0x1c1 private: - [[maybe_unused]] uint8_t __pad0222[0x2]; // 0x222 + [[maybe_unused]] uint8_t __pad01c2[0x2]; // 0x1c2 public: // MPropertyFriendlyName "Scale Start/End Control Point" - int32_t m_nCPScale; // 0x224 + int32_t m_nCPScale; // 0x1c4 // MPropertyFriendlyName "start scale control point field" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nCPFieldMin; // 0x228 + int32_t m_nCPFieldMin; // 0x1c8 // MPropertyFriendlyName "end scale control point field" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nCPFieldMax; // 0x22c + int32_t m_nCPFieldMax; // 0x1cc // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x230 -}; - -// Alignment: 5 -// Size: 0x4c0 -class C_OP_SetAttributeToScalarExpression : public CParticleFunctionOperator -{ -public: - // MPropertyFriendlyName "expression" - ScalarExpressionType_t m_nExpression; // 0x210 -private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 -public: - // MPropertyFriendlyName "input 1" - CPerParticleFloatInput m_flInput1; // 0x218 - // MPropertyFriendlyName "input 2" - CPerParticleFloatInput m_flInput2; // 0x358 - // MPropertyFriendlyName "output field" - // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nOutputField; // 0x498 - // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x49c + ParticleSetMethod_t m_nSetMethod; // 0x1d0 }; // Alignment: 0 -// Size: 0x210 +// Size: 0x150 +class CPerParticleFloatInput : public CParticleFloatInput +{ +public: + // No members available +}; + +// Alignment: 0 +// Size: 0x1b0 class CParticleFunctionConstraint : public CParticleFunction { public: @@ -16498,120 +12904,105 @@ public: }; // Alignment: 3 -// Size: 0x260 +// Size: 0x200 class CParticleFunctionRenderer : public CParticleFunction { public: // MPropertySortPriority "-1" - CParticleVisibilityInputs VisibilityInputs; // 0x210 + CParticleVisibilityInputs VisibilityInputs; // 0x1b0 // MPropertyStartGroup "Rendering filter" // MPropertyFriendlyName "I cannot be refracted through refracting objects like water" // MPropertySortPriority "-1" - bool m_bCannotBeRefracted; // 0x254 + bool m_bCannotBeRefracted; // 0x1f4 // MPropertyFriendlyName "Skip rendering on mobile" // MPropertySortPriority "-1" - bool m_bSkipRenderingOnMobile; // 0x255 + bool m_bSkipRenderingOnMobile; // 0x1f5 }; // Alignment: 8 -// Size: 0x4b0 +// Size: 0x470 class C_OP_SetPerChildControlPoint : public CParticleFunctionOperator { public: // MPropertyFriendlyName "group ID to affect" - int32_t m_nChildGroupID; // 0x210 + int32_t m_nChildGroupID; // 0x1b0 // MPropertyFriendlyName "control point to set" - int32_t m_nFirstControlPoint; // 0x214 + int32_t m_nFirstControlPoint; // 0x1b4 // MPropertyFriendlyName "# of children to set" - int32_t m_nNumControlPoints; // 0x218 + int32_t m_nNumControlPoints; // 0x1b8 private: - [[maybe_unused]] uint8_t __pad021c[0x4]; // 0x21c + [[maybe_unused]] uint8_t __pad01bc[0x4]; // 0x1bc public: // MPropertyFriendlyName "particle increment amount" - CParticleCollectionFloatInput m_nParticleIncrement; // 0x220 + CParticleCollectionFloatInput m_nParticleIncrement; // 0x1c0 // MPropertyFriendlyName "first particle to copy" - CParticleCollectionFloatInput m_nFirstSourcePoint; // 0x360 + CParticleCollectionFloatInput m_nFirstSourcePoint; // 0x310 // MPropertyFriendlyName "set orientation from velocity" - bool m_bSetOrientation; // 0x4a0 + bool m_bSetOrientation; // 0x460 private: - [[maybe_unused]] uint8_t __pad04a1[0x3]; // 0x4a1 + [[maybe_unused]] uint8_t __pad0461[0x3]; // 0x461 public: // MPropertyFriendlyName "orientation vector" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nOrientationField; // 0x4a4 + ParticleAttributeIndex_t m_nOrientationField; // 0x464 // MPropertyFriendlyName "set number of children based on particle count" - bool m_bNumBasedOnParticleCount; // 0x4a8 + bool m_bNumBasedOnParticleCount; // 0x468 }; // Alignment: 8 -// Size: 0x50 -class CParticleTransformInput +// Size: 0x68 +class CParticleTransformInput : public CParticleInput { -private: - [[maybe_unused]] uint8_t __pad0000[0x4]; // 0x0 public: - ParticleTransformType_t m_nType; // 0x4 - CKV3MemberNameWithStorage m_NamedValue; // 0x8 - bool m_bFollowNamedValue; // 0x40 - bool m_bSupportsDisabled; // 0x41 - bool m_bUseOrientation; // 0x42 + ParticleTransformType_t m_nType; // 0x10 private: - [[maybe_unused]] uint8_t __pad0043[0x1]; // 0x43 + [[maybe_unused]] uint8_t __pad0014[0x4]; // 0x14 public: - int32_t m_nControlPoint; // 0x44 - int32_t m_nControlPointRangeMax; // 0x48 - float m_flEndCPGrowthTime; // 0x4c + CParticleNamedValueRef m_NamedValue; // 0x18 + bool m_bFollowNamedValue; // 0x58 + bool m_bSupportsDisabled; // 0x59 + bool m_bUseOrientation; // 0x5a +private: + [[maybe_unused]] uint8_t __pad005b[0x1]; // 0x5b +public: + int32_t m_nControlPoint; // 0x5c + int32_t m_nControlPointRangeMax; // 0x60 + float m_flEndCPGrowthTime; // 0x64 }; // Alignment: 0 -// Size: 0x140 +// Size: 0x150 class CParticleCollectionRendererFloatInput : public CParticleCollectionFloatInput { public: // No members available }; -// Alignment: 1 -// Size: 0x2 -struct PulseRuntimeStateOffset_t -{ -public: - uint16_t m_Value; // 0x0 -}; - // Alignment: 5 -// Size: 0x2b0 +// Size: 0x250 class C_INIT_ModelCull : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x220 + int32_t m_nControlPointNumber; // 0x1c0 // MPropertyFriendlyName "use only bounding box" - bool m_bBoundBox; // 0x224 + bool m_bBoundBox; // 0x1c4 // MPropertyFriendlyName "cull outside instead of inside" - bool m_bCullOutside; // 0x225 + bool m_bCullOutside; // 0x1c5 // MPropertyFriendlyName "use bones instead of hitboxes" - bool m_bUseBones; // 0x226 + bool m_bUseBones; // 0x1c6 // MPropertyFriendlyName "hitbox set" - char m_HitboxSetName[128]; // 0x227 + char m_HitboxSetName[128]; // 0x1c7 }; // Alignment: 0 -// Size: 0x210 +// Size: 0x1b0 class CParticleFunctionForce : public CParticleFunction { public: // No members available }; -// Alignment: 0 -// Size: 0x48 -class CPulseCell_BaseFlow : public CPulseCell_Base -{ -public: - // No members available -}; - // Alignment: 3 // Size: 0x14 struct PointDefinition_t @@ -16629,42 +13020,41 @@ public: }; // Alignment: 3 -// Size: 0x230 +// Size: 0x1d0 class CGeneralSpin : public CParticleFunctionOperator { public: // MPropertyFriendlyName "spin rate degrees" - int32_t m_nSpinRateDegrees; // 0x210 + int32_t m_nSpinRateDegrees; // 0x1b0 // MPropertyFriendlyName "spin rate min" - int32_t m_nSpinRateMinDegrees; // 0x214 + int32_t m_nSpinRateMinDegrees; // 0x1b4 private: - [[maybe_unused]] uint8_t __pad0218[0x4]; // 0x218 + [[maybe_unused]] uint8_t __pad01b8[0x4]; // 0x1b8 public: // MPropertyFriendlyName "spin stop time" - float m_fSpinRateStopTime; // 0x21c + float m_fSpinRateStopTime; // 0x1bc }; -// Alignment: 1 -// Size: 0x220 -class CParticleFunctionPreEmission : public CParticleFunctionOperator +// Alignment: 0 +// Size: 0x638 +class CParticleCollectionVecInput : public CParticleVecInput { public: - // MPropertyFriendlyName "Run Only Once" - bool m_bRunOnce; // 0x210 + // No members available }; // Alignment: 3 -// Size: 0x230 +// Size: 0x1d0 class C_OP_ParentVortices : public CParticleFunctionForce { public: // MPropertyFriendlyName "amount of force" - float m_flForceScale; // 0x210 + float m_flForceScale; // 0x1b0 // MPropertyFriendlyName "twist axis" // MVectorIsCoordinate - Vector m_vecTwistAxis; // 0x214 + Vector m_vecTwistAxis; // 0x1b4 // MPropertyFriendlyName "flip twist axis with yaw" - bool m_bFlipBasedOnYaw; // 0x220 + bool m_bFlipBasedOnYaw; // 0x1c0 }; // Alignment: 6 @@ -16681,246 +13071,196 @@ public: }; // Alignment: 3 -// Size: 0x230 +// Size: 0x1d0 class C_OP_SetToCP : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x210 + int32_t m_nControlPointNumber; // 0x1b0 // MPropertyFriendlyName "offset" - Vector m_vecOffset; // 0x214 + Vector m_vecOffset; // 0x1b4 // MPropertyFriendlyName "offset in local space" - bool m_bOffsetLocal; // 0x220 + bool m_bOffsetLocal; // 0x1c0 }; -// Alignment: 7 -// Size: 0x240 -class C_OP_RemapModelVolumetoCP : public CParticleFunctionPreEmission +// Alignment: 1 +// Size: 0x1c0 +class CParticleFunctionPreEmission : public CParticleFunctionOperator { public: - // MPropertyFriendlyName "input control point" - int32_t m_nInControlPointNumber; // 0x220 - // MPropertyFriendlyName "output control point" - int32_t m_nOutControlPointNumber; // 0x224 - // MPropertyFriendlyName "output CP component" - // MPropertyAttributeChoiceName "vector_component" - int32_t m_nField; // 0x228 - // MPropertyFriendlyName "input volume minimum in cubic units" - float m_flInputMin; // 0x22c - // MPropertyFriendlyName "input volume maximum in cubic units" - float m_flInputMax; // 0x230 - // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x234 - // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x238 + // MPropertyFriendlyName "Run Only Once" + bool m_bRunOnce; // 0x1b0 }; // Alignment: 2 -// Size: 0x370 +// Size: 0x320 class C_INIT_QuantizeFloat : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "interval to snap to" - CPerParticleFloatInput m_InputValue; // 0x220 + CPerParticleFloatInput m_InputValue; // 0x1c0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nOutputField; // 0x360 + ParticleAttributeIndex_t m_nOutputField; // 0x310 }; // Alignment: 7 -// Size: 0x720 +// Size: 0x700 class C_OP_RemapParticleCountToScalar : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "input minimum" - CParticleCollectionFloatInput m_nInputMin; // 0x218 + CParticleCollectionFloatInput m_nInputMin; // 0x1b8 // MPropertyFriendlyName "input maximum" - CParticleCollectionFloatInput m_nInputMax; // 0x358 + CParticleCollectionFloatInput m_nInputMax; // 0x308 // MPropertyFriendlyName "output minimum" - CParticleCollectionFloatInput m_flOutputMin; // 0x498 + CParticleCollectionFloatInput m_flOutputMin; // 0x458 // MPropertyFriendlyName "output maximum" - CParticleCollectionFloatInput m_flOutputMax; // 0x5d8 + CParticleCollectionFloatInput m_flOutputMax; // 0x5a8 // MPropertyFriendlyName - bool m_bActiveRange; // 0x718 + bool m_bActiveRange; // 0x6f8 private: - [[maybe_unused]] uint8_t __pad0719[0x3]; // 0x719 + [[maybe_unused]] uint8_t __pad06f9[0x3]; // 0x6f9 public: // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x71c -}; - -// Alignment: 1 -// Size: 0x4 -struct PulseRuntimeChunkIndex_t -{ -public: - int32_t m_Value; // 0x0 -}; - -// Alignment: 0 -// Size: 0x48 -class CPulseCell_Step_DebugLog : public CPulseCell_BaseFlow -{ -public: - // No members available + ParticleSetMethod_t m_nSetMethod; // 0x6fc }; // Alignment: 0 // Size: 0x10 class IParticleCollection { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: - // No members available + uint8_t __pad0000[0x10]; // Autoaligned }; // Alignment: 7 -// Size: 0x240 +// Size: 0x1e0 class C_OP_VectorNoise : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 // MPropertyFriendlyName "output minimum" // MVectorIsSometimesCoordinate - Vector m_vecOutputMin; // 0x214 + Vector m_vecOutputMin; // 0x1b4 // MPropertyFriendlyName "output maximum" // MVectorIsSometimesCoordinate - Vector m_vecOutputMax; // 0x220 + Vector m_vecOutputMax; // 0x1c0 // MPropertyFriendlyName "noise coordinate scale" - float m_fl4NoiseScale; // 0x22c + float m_fl4NoiseScale; // 0x1cc // MPropertyFriendlyName "additive" - bool m_bAdditive; // 0x230 + bool m_bAdditive; // 0x1d0 // MPropertyFriendlyName "offset instead of accelerate position" - bool m_bOffset; // 0x231 + bool m_bOffset; // 0x1d1 private: - [[maybe_unused]] uint8_t __pad0232[0x2]; // 0x232 + [[maybe_unused]] uint8_t __pad01d2[0x2]; // 0x1d2 public: // MPropertyFriendlyName "Noise animation time scale" - float m_flNoiseAnimationTimeScale; // 0x234 -}; - -// Alignment: 4 -// Size: 0x18 -class CPulse_OutflowConnection -{ -public: - CUtlSymbolLarge m_SourceOutflowName; // 0x0 - PulseRuntimeChunkIndex_t m_nDestChunk; // 0x8 - PulseCursorFlow_t m_nJumpType; // 0xc - int32_t m_nInstruction; // 0x10 + float m_flNoiseAnimationTimeScale; // 0x1d4 }; // Alignment: 1 -// Size: 0x230 +// Size: 0x1d0 class C_OP_ForceControlPointStub : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "control point" - int32_t m_ControlPoint; // 0x220 + int32_t m_ControlPoint; // 0x1c0 }; // Alignment: 6 -// Size: 0x390 +// Size: 0x340 class C_INIT_PositionWarpScalar : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "warp min" // MVectorIsCoordinate - Vector m_vecWarpMin; // 0x220 + Vector m_vecWarpMin; // 0x1c0 // MPropertyFriendlyName "warp max" // MVectorIsCoordinate - Vector m_vecWarpMax; // 0x22c + Vector m_vecWarpMax; // 0x1cc // MPropertyFriendlyName "warp amount" - CPerParticleFloatInput m_InputValue; // 0x238 + CPerParticleFloatInput m_InputValue; // 0x1d8 // MPropertyFriendlyName "previous position scale" - float m_flPrevPosScale; // 0x378 + float m_flPrevPosScale; // 0x328 // MPropertyFriendlyName "warp scale control point number" - int32_t m_nScaleControlPointNumber; // 0x37c + int32_t m_nScaleControlPointNumber; // 0x32c // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x380 + int32_t m_nControlPointNumber; // 0x330 }; // Alignment: 5 -// Size: 0x720 +// Size: 0x700 class C_OP_RopeSpringConstraint : public CParticleFunctionConstraint { public: // MPropertyFriendlyName "slack" - CParticleCollectionFloatInput m_flRestLength; // 0x210 + CParticleCollectionFloatInput m_flRestLength; // 0x1b0 // MPropertyFriendlyName "minimum segment length %" - CParticleCollectionFloatInput m_flMinDistance; // 0x350 + CParticleCollectionFloatInput m_flMinDistance; // 0x300 // MPropertyFriendlyName "maximum segment length %" - CParticleCollectionFloatInput m_flMaxDistance; // 0x490 + CParticleCollectionFloatInput m_flMaxDistance; // 0x450 // MPropertyFriendlyName "scale factor for spring correction" - float m_flAdjustmentScale; // 0x5d0 + float m_flAdjustmentScale; // 0x5a0 private: - [[maybe_unused]] uint8_t __pad05d4[0x4]; // 0x5d4 + [[maybe_unused]] uint8_t __pad05a4[0x4]; // 0x5a4 public: // MPropertyFriendlyName "manual resting spacing" - CParticleCollectionFloatInput m_flInitialRestingLength; // 0x5d8 + CParticleCollectionFloatInput m_flInitialRestingLength; // 0x5a8 }; // Alignment: 2 -// Size: 0x230 +// Size: 0x1d0 class C_OP_SetControlPointOrientationToCPVelocity : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "control point input for velocity" - int32_t m_nCPInput; // 0x220 + int32_t m_nCPInput; // 0x1c0 // MPropertyFriendlyName "control point output for orientation" - int32_t m_nCPOutput; // 0x224 + int32_t m_nCPOutput; // 0x1c4 }; // Alignment: 7 -// Size: 0x270 +// Size: 0x210 class C_INIT_RemapNamedModelElementToScalar : public CParticleFunctionInitializer { public: - CStrongHandle< InfoForResourceTypeCModel > m_hModel; // 0x220 + CStrongHandle< InfoForResourceTypeCModel > m_hModel; // 0x1c0 // MPropertyFriendlyName "names" - CUtlVector< CUtlString > m_names; // 0x228 + CUtlVector< CUtlString > m_names; // 0x1c8 // MPropertyFriendlyName "remap values for names" - CUtlVector< float32 > m_values; // 0x240 + CUtlVector< float32 > m_values; // 0x1e0 // MPropertyFriendlyName "input field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldInput; // 0x258 + ParticleAttributeIndex_t m_nFieldInput; // 0x1f8 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x25c + ParticleAttributeIndex_t m_nFieldOutput; // 0x1fc // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x260 + ParticleSetMethod_t m_nSetMethod; // 0x200 // MPropertyFriendlyName "model from renderer" - bool m_bModelFromRenderer; // 0x264 + bool m_bModelFromRenderer; // 0x204 }; // Alignment: 1 -// Size: 0x220 +// Size: 0x1c0 class CParticleFunctionEmitter : public CParticleFunction { public: // MPropertyFriendlyName "Emitter Index" - int32_t m_nEmitterIndex; // 0x210 -}; - -// Alignment: 1 -// Size: 0x4 -struct PulseRuntimeLandingPadIndex_t -{ -public: - int32_t m_Value; // 0x0 + int32_t m_nEmitterIndex; // 0x1b0 }; // Alignment: 0 -// Size: 0x5e8 +// Size: 0x638 class CPerParticleVecInput : public CParticleVecInput { public: @@ -16928,29 +13268,29 @@ public: }; // Alignment: 7 -// Size: 0x230 +// Size: 0x1d0 class C_OP_RemapSpeed : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 // MPropertyFriendlyName "input minimum" - float m_flInputMin; // 0x214 + float m_flInputMin; // 0x1b4 // MPropertyFriendlyName "input maximum" - float m_flInputMax; // 0x218 + float m_flInputMax; // 0x1b8 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x21c + float m_flOutputMin; // 0x1bc // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x220 + float m_flOutputMax; // 0x1c0 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x224 + ParticleSetMethod_t m_nSetMethod; // 0x1c4 // MPropertyFriendlyName "ignore delta time" - bool m_bIgnoreDelta; // 0x228 + bool m_bIgnoreDelta; // 0x1c8 }; // Alignment: 0 -// Size: 0x210 +// Size: 0x1b0 class C_OP_WorldCollideConstraint : public CParticleFunctionConstraint { public: @@ -16971,30 +13311,21 @@ public: float m_flScale; // 0xc }; -// Alignment: 2 -// Size: 0x20 -struct PulseRegisterMap_t -{ -public: - KeyValues3 m_Inparams; // 0x0 - KeyValues3 m_Outparams; // 0x10 -}; - // Alignment: 4 -// Size: 0x230 +// Size: 0x1d0 class C_INIT_SetRigidAttachment : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x220 + int32_t m_nControlPointNumber; // 0x1c0 // MPropertyFriendlyName "attribute to read from" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldInput; // 0x224 + ParticleAttributeIndex_t m_nFieldInput; // 0x1c4 // MPropertyFriendlyName "attribute to cache to" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x228 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c8 // MPropertyFriendlyName "local space" - bool m_bLocalSpace; // 0x22c + bool m_bLocalSpace; // 0x1cc }; // Alignment: 15 @@ -17023,51 +13354,51 @@ public: }; // Alignment: 6 -// Size: 0x240 +// Size: 0x1e0 class C_OP_RemapDensityToVector : public CParticleFunctionOperator { public: // MPropertyFriendlyName "Radius scale for particle influence" - float m_flRadiusScale; // 0x210 + float m_flRadiusScale; // 0x1b0 // MPropertyFriendlyName "Output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 // MPropertyFriendlyName "Density value to map to min value" - float m_flDensityMin; // 0x218 + float m_flDensityMin; // 0x1b8 // MPropertyFriendlyName "Density value to map to max value" - float m_flDensityMax; // 0x21c + float m_flDensityMax; // 0x1bc // MPropertyFriendlyName "Output minimum" - Vector m_vecOutputMin; // 0x220 + Vector m_vecOutputMin; // 0x1c0 // MPropertyFriendlyName "Output maximum" - Vector m_vecOutputMax; // 0x22c + Vector m_vecOutputMax; // 0x1cc }; // Alignment: 7 -// Size: 0x250 +// Size: 0x1f0 class C_OP_ForceBasedOnDistanceToPlane : public CParticleFunctionForce { public: // MPropertyFriendlyName "min distance from plane" - float m_flMinDist; // 0x210 + float m_flMinDist; // 0x1b0 // MPropertyFriendlyName "force at min distance" // MVectorIsCoordinate - Vector m_vecForceAtMinDist; // 0x214 + Vector m_vecForceAtMinDist; // 0x1b4 // MPropertyFriendlyName "max distance from plane" - float m_flMaxDist; // 0x220 + float m_flMaxDist; // 0x1c0 // MPropertyFriendlyName "force at max distance" // MVectorIsCoordinate - Vector m_vecForceAtMaxDist; // 0x224 + Vector m_vecForceAtMaxDist; // 0x1c4 // MPropertyFriendlyName "plane normal" // MVectorIsCoordinate - Vector m_vecPlaneNormal; // 0x230 + Vector m_vecPlaneNormal; // 0x1d0 // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x23c + int32_t m_nControlPointNumber; // 0x1dc // MPropertyFriendlyName "exponent" - float m_flExponent; // 0x240 + float m_flExponent; // 0x1e0 }; // Alignment: 0 -// Size: 0x210 +// Size: 0x1b0 class C_OP_EndCapDecay : public CParticleFunctionOperator { public: @@ -17075,277 +13406,83 @@ public: }; // Alignment: 15 -// Size: 0x920 +// Size: 0x910 class C_INIT_DistanceToCPInit : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x220 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0224[0x4]; // 0x224 + [[maybe_unused]] uint8_t __pad01c4[0x4]; // 0x1c4 public: // MPropertyFriendlyName "distance minimum" - CPerParticleFloatInput m_flInputMin; // 0x228 + CPerParticleFloatInput m_flInputMin; // 0x1c8 // MPropertyFriendlyName "distance maximum" - CPerParticleFloatInput m_flInputMax; // 0x368 + CPerParticleFloatInput m_flInputMax; // 0x318 // MPropertyFriendlyName "output minimum" - CPerParticleFloatInput m_flOutputMin; // 0x4a8 + CPerParticleFloatInput m_flOutputMin; // 0x468 // MPropertyFriendlyName "output maximum" - CPerParticleFloatInput m_flOutputMax; // 0x5e8 + CPerParticleFloatInput m_flOutputMax; // 0x5b8 // MPropertyFriendlyName "control point" - int32_t m_nStartCP; // 0x728 + int32_t m_nStartCP; // 0x708 // MPropertyFriendlyName "ensure line of sight" - bool m_bLOS; // 0x72c + bool m_bLOS; // 0x70c // MPropertyFriendlyName "LOS collision group" - char m_CollisionGroupName[128]; // 0x72d + char m_CollisionGroupName[128]; // 0x70d private: - [[maybe_unused]] uint8_t __pad07ad[0x3]; // 0x7ad + [[maybe_unused]] uint8_t __pad078d[0x3]; // 0x78d public: // MPropertyFriendlyName "Trace Set" - ParticleTraceSet_t m_nTraceSet; // 0x7b0 + ParticleTraceSet_t m_nTraceSet; // 0x790 private: - [[maybe_unused]] uint8_t __pad07b4[0x4]; // 0x7b4 + [[maybe_unused]] uint8_t __pad0794[0x4]; // 0x794 public: // MPropertyFriendlyName "Maximum Trace Length" - CPerParticleFloatInput m_flMaxTraceLength; // 0x7b8 + CPerParticleFloatInput m_flMaxTraceLength; // 0x798 // MPropertyFriendlyName "LOS Failure Scalar" - float m_flLOSScale; // 0x8f8 + float m_flLOSScale; // 0x8e8 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x8fc + ParticleSetMethod_t m_nSetMethod; // 0x8ec // MPropertyFriendlyName "only active within specified distance" - bool m_bActiveRange; // 0x900 + bool m_bActiveRange; // 0x8f0 private: - [[maybe_unused]] uint8_t __pad0901[0x3]; // 0x901 + [[maybe_unused]] uint8_t __pad08f1[0x3]; // 0x8f1 public: // MPropertyFriendlyName "distance component scale" - Vector m_vecDistanceScale; // 0x904 + Vector m_vecDistanceScale; // 0x8f4 // MPropertyFriendlyName "remap bias" - float m_flRemapBias; // 0x910 + float m_flRemapBias; // 0x900 }; // Alignment: 3 -// Size: 0x370 +// Size: 0x320 class C_OP_EnableChildrenFromParentParticleCount : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "group ID to affect" - int32_t m_nChildGroupID; // 0x220 + int32_t m_nChildGroupID; // 0x1c0 // MPropertyFriendlyName "first child to enable" - int32_t m_nFirstChild; // 0x224 + int32_t m_nFirstChild; // 0x1c4 // MPropertyFriendlyName "max # of children to enable (-1 for max particle count)" - CParticleCollectionFloatInput m_nNumChildrenToEnable; // 0x228 -}; - -// Alignment: 0 -// Size: 0x5e8 -class CParticleCollectionVecInput : public CParticleVecInput -{ -public: - // No members available -}; - -// Alignment: 3 -// Size: 0x270 -class C_OP_RenderFlattenGrass : public CParticleFunctionRenderer -{ -public: - // MPropertyFriendlyName "flattening strength" - float m_flFlattenStrength; // 0x260 - // MPropertyFriendlyName "strength field override" - // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nStrengthFieldOverride; // 0x264 - // MPropertyFriendlyName "radius scale" - float m_flRadiusScale; // 0x268 -}; - -// Alignment: 6 -// Size: 0x230 -class C_OP_MovementRigidAttachToCP : public CParticleFunctionOperator -{ -public: - // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x210 - // MPropertyFriendlyName "scale control point number" - int32_t m_nScaleControlPoint; // 0x214 - // MPropertyFriendlyName "scale control point field" - // MPropertyAttributeChoiceName "vector_component" - int32_t m_nScaleCPField; // 0x218 - // MPropertyFriendlyName "cache attribute to read from" - // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldInput; // 0x21c - // MPropertyFriendlyName "attribute to write to" - // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x220 - // MPropertyFriendlyName "local space" - bool m_bOffsetLocal; // 0x224 -}; - -// Alignment: 9 -// Size: 0x250 -class C_INIT_ChaoticAttractor : public CParticleFunctionInitializer -{ -public: - // MPropertyFriendlyName "pickover A parameter" - float m_flAParm; // 0x220 - // MPropertyFriendlyName "pickover B parameter" - float m_flBParm; // 0x224 - // MPropertyFriendlyName "pickover C parameter" - float m_flCParm; // 0x228 - // MPropertyFriendlyName "pickover D parameter" - float m_flDParm; // 0x22c - // MPropertyFriendlyName "scale" - float m_flScale; // 0x230 - // MPropertyFriendlyName "speed min" - float m_flSpeedMin; // 0x234 - // MPropertyFriendlyName "speed max" - float m_flSpeedMax; // 0x238 - // MPropertyFriendlyName "relative control point number" - int32_t m_nBaseCP; // 0x23c - // MPropertyFriendlyName "uniform speed" - bool m_bUniformSpeed; // 0x240 -}; - -// Alignment: 4 -// Size: 0x250 -class C_OP_RampScalarLinearSimple : public CParticleFunctionOperator -{ -public: - // MPropertyFriendlyName "ramp rate" - float m_Rate; // 0x210 - // MPropertyFriendlyName "start time" - float m_flStartTime; // 0x214 - // MPropertyFriendlyName "end time" - float m_flEndTime; // 0x218 -private: - [[maybe_unused]] uint8_t __pad021c[0x24]; // 0x21c -public: - // MPropertyFriendlyName "ramp field" - // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nField; // 0x240 -}; - -// Alignment: 5 -// Size: 0x240 -class C_INIT_InheritFromParentParticles : public CParticleFunctionInitializer -{ -public: - // MPropertyFriendlyName "scale" - float m_flScale; // 0x220 - // MPropertyFriendlyName "inherited field" - // MPropertyAttributeChoiceName "particlefield" - ParticleAttributeIndex_t m_nFieldOutput; // 0x224 - // MPropertyFriendlyName "particle increment amount" - int32_t m_nIncrement; // 0x228 - // MPropertyFriendlyName "random parent particle distribution" - bool m_bRandomDistribution; // 0x22c -private: - [[maybe_unused]] uint8_t __pad022d[0x3]; // 0x22d -public: - // MPropertyFriendlyName "random seed" - int32_t m_nRandomSeed; // 0x230 -}; - -// Alignment: 4 -// Size: 0x270 -class C_INIT_RemapParticleCountToNamedModelElementScalar : public C_INIT_RemapParticleCountToScalar -{ -public: - CStrongHandle< InfoForResourceTypeCModel > m_hModel; // 0x250 - // MPropertyFriendlyName "output min name" - CUtlString m_outputMinName; // 0x258 - // MPropertyFriendlyName "output max name" - CUtlString m_outputMaxName; // 0x260 - bool m_bModelFromRenderer; // 0x268 -}; - -// Alignment: 10 -// Size: 0x270 -class C_INIT_RandomColor : public CParticleFunctionInitializer -{ -private: - [[maybe_unused]] uint8_t __pad0220[0x1c]; // 0x220 -public: - // MPropertyFriendlyName "color1" - Color m_ColorMin; // 0x23c - // MPropertyFriendlyName "color2" - Color m_ColorMax; // 0x240 - // MPropertyFriendlyName "tint clamp min" - Color m_TintMin; // 0x244 - // MPropertyFriendlyName "tint clamp max" - Color m_TintMax; // 0x248 - // MPropertyFriendlyName "tint perc" - float m_flTintPerc; // 0x24c - // MPropertyFriendlyName "tint update movement threshold" - float m_flUpdateThreshold; // 0x250 - // MPropertyFriendlyName "tint control point" - int32_t m_nTintCP; // 0x254 - // MPropertyFriendlyName "output field" - // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x258 - // MPropertyFriendlyName "tint blend mode" - ParticleColorBlendMode_t m_nTintBlendMode; // 0x25c - // MPropertyFriendlyName "light amplification amount" - float m_flLightAmplification; // 0x260 -}; - -// Alignment: 4 -// Size: 0x380 -class C_OP_LerpToOtherAttribute : public CParticleFunctionOperator -{ -public: - // MPropertyFriendlyName "Interpolation" - CPerParticleFloatInput m_flInterpolation; // 0x210 - // MPropertyFriendlyName "input attribute from" - // MPropertyAttributeChoiceName "particlefield" - ParticleAttributeIndex_t m_nFieldInputFrom; // 0x350 - // MPropertyFriendlyName "input attribute to" - // MPropertyAttributeChoiceName "particlefield" - ParticleAttributeIndex_t m_nFieldInput; // 0x354 - // MPropertyFriendlyName "output attribute" - // MPropertyAttributeChoiceName "particlefield" - ParticleAttributeIndex_t m_nFieldOutput; // 0x358 -}; - -// Alignment: 5 -// Size: 0x250 -class C_INIT_PointList : public CParticleFunctionInitializer -{ -public: - // MPropertyFriendlyName "output field" - // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x220 -private: - [[maybe_unused]] uint8_t __pad0224[0x4]; // 0x224 -public: - // MPropertyFriendlyName "point list" - CUtlVector< PointDefinition_t > m_pointList; // 0x228 - // MPropertyFriendlyName "space points along path" - bool m_bPlaceAlongPath; // 0x240 - // MPropertyFriendlyName "Treat path as a loop" - bool m_bClosedLoop; // 0x241 -private: - [[maybe_unused]] uint8_t __pad0242[0x2]; // 0x242 -public: - // MPropertyFriendlyName "Numer of points along path" - int32_t m_nNumPointsAlongPath; // 0x244 + CParticleCollectionFloatInput m_nNumChildrenToEnable; // 0x1c8 }; // Alignment: 7 -// Size: 0xd60 +// Size: 0xd90 class C_OP_RenderLightBeam : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "Color Blend" - CParticleCollectionVecInput m_vColorBlend; // 0x260 + CParticleCollectionVecInput m_vColorBlend; // 0x200 // MPropertyFriendlyName "Color Blend Type" // MPropertySortPriority "700" - ParticleColorBlendType_t m_nColorBlendType; // 0x848 + ParticleColorBlendType_t m_nColorBlendType; // 0x838 private: - [[maybe_unused]] uint8_t __pad084c[0x4]; // 0x84c + [[maybe_unused]] uint8_t __pad083c[0x4]; // 0x83c public: // MPropertyFriendlyName "Lumens Per Meter" - CParticleCollectionFloatInput m_flBrightnessLumensPerMeter; // 0x850 + CParticleCollectionFloatInput m_flBrightnessLumensPerMeter; // 0x840 // MPropertyFriendlyName "Shadows" // MPropertySuppressExpr "mod == csgo" bool m_bCastShadows; // 0x990 @@ -17355,209 +13492,360 @@ public: // MPropertyFriendlyName "Skirt" CParticleCollectionFloatInput m_flSkirt; // 0x998 // MPropertyFriendlyName "Range" - CParticleCollectionFloatInput m_flRange; // 0xad8 + CParticleCollectionFloatInput m_flRange; // 0xae8 // MPropertyFriendlyName "Thickness" - CParticleCollectionFloatInput m_flThickness; // 0xc18 + CParticleCollectionFloatInput m_flThickness; // 0xc38 }; -// Alignment: 8 -// Size: 0x3f0 -class C_OP_MoveToHitbox : public CParticleFunctionOperator +// Alignment: 3 +// Size: 0x210 +class C_OP_RenderFlattenGrass : public CParticleFunctionRenderer +{ +public: + // MPropertyFriendlyName "flattening strength" + float m_flFlattenStrength; // 0x200 + // MPropertyFriendlyName "strength field override" + // MPropertyAttributeChoiceName "particlefield_scalar" + ParticleAttributeIndex_t m_nStrengthFieldOverride; // 0x204 + // MPropertyFriendlyName "radius scale" + float m_flRadiusScale; // 0x208 +}; + +// Alignment: 6 +// Size: 0x1d0 +class C_OP_MovementRigidAttachToCP : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x210 -private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + int32_t m_nControlPointNumber; // 0x1b0 + // MPropertyFriendlyName "scale control point number" + int32_t m_nScaleControlPoint; // 0x1b4 + // MPropertyFriendlyName "scale control point field" + // MPropertyAttributeChoiceName "vector_component" + int32_t m_nScaleCPField; // 0x1b8 + // MPropertyFriendlyName "cache attribute to read from" + // MPropertyAttributeChoiceName "particlefield_vector" + ParticleAttributeIndex_t m_nFieldInput; // 0x1bc + // MPropertyFriendlyName "attribute to write to" + // MPropertyAttributeChoiceName "particlefield_vector" + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c0 + // MPropertyFriendlyName "local space" + bool m_bOffsetLocal; // 0x1c4 +}; + +// Alignment: 9 +// Size: 0x1f0 +class C_INIT_ChaoticAttractor : public CParticleFunctionInitializer +{ public: - // MPropertyFriendlyName "lifetime lerp start" - float m_flLifeTimeLerpStart; // 0x218 - // MPropertyFriendlyName "lifetime lerp end" - float m_flLifeTimeLerpEnd; // 0x21c - // MPropertyFriendlyName "previous position scale" - float m_flPrevPosScale; // 0x220 - // MPropertyFriendlyName "hitbox set" - char m_HitboxSetName[128]; // 0x224 - // MPropertyFriendlyName "use bones instead of hitboxes" - bool m_bUseBones; // 0x2a4 -private: - [[maybe_unused]] uint8_t __pad02a5[0x3]; // 0x2a5 + // MPropertyFriendlyName "pickover A parameter" + float m_flAParm; // 0x1c0 + // MPropertyFriendlyName "pickover B parameter" + float m_flBParm; // 0x1c4 + // MPropertyFriendlyName "pickover C parameter" + float m_flCParm; // 0x1c8 + // MPropertyFriendlyName "pickover D parameter" + float m_flDParm; // 0x1cc + // MPropertyFriendlyName "scale" + float m_flScale; // 0x1d0 + // MPropertyFriendlyName "speed min" + float m_flSpeedMin; // 0x1d4 + // MPropertyFriendlyName "speed max" + float m_flSpeedMax; // 0x1d8 + // MPropertyFriendlyName "relative control point number" + int32_t m_nBaseCP; // 0x1dc + // MPropertyFriendlyName "uniform speed" + bool m_bUniformSpeed; // 0x1e0 +}; + +// Alignment: 4 +// Size: 0x1f0 +class C_OP_RampScalarLinearSimple : public CParticleFunctionOperator +{ public: - // MPropertyFriendlyName "lerp type" - HitboxLerpType_t m_nLerpType; // 0x2a8 + // MPropertyFriendlyName "ramp rate" + float m_Rate; // 0x1b0 + // MPropertyFriendlyName "start time" + float m_flStartTime; // 0x1b4 + // MPropertyFriendlyName "end time" + float m_flEndTime; // 0x1b8 private: - [[maybe_unused]] uint8_t __pad02ac[0x4]; // 0x2ac + [[maybe_unused]] uint8_t __pad01bc[0x24]; // 0x1bc public: - // MPropertyFriendlyName "Constant Interpolation" - CPerParticleFloatInput m_flInterpolation; // 0x2b0 + // MPropertyFriendlyName "ramp field" + // MPropertyAttributeChoiceName "particlefield_scalar" + ParticleAttributeIndex_t m_nField; // 0x1e0 +}; + +// Alignment: 5 +// Size: 0x1e0 +class C_INIT_InheritFromParentParticles : public CParticleFunctionInitializer +{ +public: + // MPropertyFriendlyName "scale" + float m_flScale; // 0x1c0 + // MPropertyFriendlyName "inherited field" + // MPropertyAttributeChoiceName "particlefield" + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c4 + // MPropertyFriendlyName "particle increment amount" + int32_t m_nIncrement; // 0x1c8 + // MPropertyFriendlyName "random parent particle distribution" + bool m_bRandomDistribution; // 0x1cc +private: + [[maybe_unused]] uint8_t __pad01cd[0x3]; // 0x1cd +public: + // MPropertyFriendlyName "random seed" + int32_t m_nRandomSeed; // 0x1d0 +}; + +// Alignment: 4 +// Size: 0x210 +class C_INIT_RemapParticleCountToNamedModelElementScalar : public C_INIT_RemapParticleCountToScalar +{ +public: + CStrongHandle< InfoForResourceTypeCModel > m_hModel; // 0x1f0 + // MPropertyFriendlyName "output min name" + CUtlString m_outputMinName; // 0x1f8 + // MPropertyFriendlyName "output max name" + CUtlString m_outputMaxName; // 0x200 + bool m_bModelFromRenderer; // 0x208 +}; + +// Alignment: 10 +// Size: 0x210 +class C_INIT_RandomColor : public CParticleFunctionInitializer +{ +public: + // MPropertyFriendlyName "color1" + Color m_ColorMin; // 0x1dc + // MPropertyFriendlyName "color2" + Color m_ColorMax; // 0x1e0 + // MPropertyFriendlyName "tint clamp min" + Color m_TintMin; // 0x1e4 + // MPropertyFriendlyName "tint clamp max" + Color m_TintMax; // 0x1e8 + // MPropertyFriendlyName "tint perc" + float m_flTintPerc; // 0x1ec + // MPropertyFriendlyName "tint update movement threshold" + float m_flUpdateThreshold; // 0x1f0 + // MPropertyFriendlyName "tint control point" + int32_t m_nTintCP; // 0x1f4 + // MPropertyFriendlyName "output field" + // MPropertyAttributeChoiceName "particlefield_vector" + ParticleAttributeIndex_t m_nFieldOutput; // 0x1f8 + // MPropertyFriendlyName "tint blend mode" + ParticleColorBlendMode_t m_nTintBlendMode; // 0x1fc + // MPropertyFriendlyName "light amplification amount" + float m_flLightAmplification; // 0x200 +}; + +// Alignment: 4 +// Size: 0x330 +class C_OP_LerpToOtherAttribute : public CParticleFunctionOperator +{ +public: + // MPropertyFriendlyName "Interpolation" + CPerParticleFloatInput m_flInterpolation; // 0x1b0 + // MPropertyFriendlyName "input attribute from" + // MPropertyAttributeChoiceName "particlefield" + ParticleAttributeIndex_t m_nFieldInputFrom; // 0x300 + // MPropertyFriendlyName "input attribute to" + // MPropertyAttributeChoiceName "particlefield" + ParticleAttributeIndex_t m_nFieldInput; // 0x304 + // MPropertyFriendlyName "output attribute" + // MPropertyAttributeChoiceName "particlefield" + ParticleAttributeIndex_t m_nFieldOutput; // 0x308 +}; + +// Alignment: 5 +// Size: 0x1f0 +class C_INIT_PointList : public CParticleFunctionInitializer +{ +public: + // MPropertyFriendlyName "output field" + // MPropertyAttributeChoiceName "particlefield_vector" + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c0 +private: + [[maybe_unused]] uint8_t __pad01c4[0x4]; // 0x1c4 +public: + // MPropertyFriendlyName "point list" + CUtlVector< PointDefinition_t > m_pointList; // 0x1c8 + // MPropertyFriendlyName "space points along path" + bool m_bPlaceAlongPath; // 0x1e0 + // MPropertyFriendlyName "Treat path as a loop" + bool m_bClosedLoop; // 0x1e1 +private: + [[maybe_unused]] uint8_t __pad01e2[0x2]; // 0x1e2 +public: + // MPropertyFriendlyName "Numer of points along path" + int32_t m_nNumPointsAlongPath; // 0x1e4 +}; + +// Alignment: 5 +// Size: 0x480 +class C_OP_SetAttributeToScalarExpression : public CParticleFunctionOperator +{ +public: + // MPropertyFriendlyName "expression" + ScalarExpressionType_t m_nExpression; // 0x1b0 +private: + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 +public: + // MPropertyFriendlyName "input 1" + CPerParticleFloatInput m_flInput1; // 0x1b8 + // MPropertyFriendlyName "input 2" + CPerParticleFloatInput m_flInput2; // 0x308 + // MPropertyFriendlyName "output field" + // MPropertyAttributeChoiceName "particlefield_scalar" + ParticleAttributeIndex_t m_nOutputField; // 0x458 + // MPropertyFriendlyName "set value method" + ParticleSetMethod_t m_nSetMethod; // 0x45c +}; + +// Alignment: 3 +// Size: 0x60 +class CParticleModelInput : public CParticleInput +{ +public: + ParticleModelType_t m_nType; // 0x10 +private: + [[maybe_unused]] uint8_t __pad0014[0x4]; // 0x14 +public: + CParticleNamedValueRef m_NamedValue; // 0x18 + int32_t m_nControlPoint; // 0x58 }; // Alignment: 1 -// Size: 0x810 +// Size: 0x800 class C_INIT_ScaleVelocity : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "velocity scale" // MVectorIsCoordinate - CParticleCollectionVecInput m_vecScale; // 0x220 -}; - -// Alignment: 0 -// Size: 0x48 -class CPulseCell_Test_MultiInflow_NoDefault : public CPulseCell_BaseFlow -{ -public: - // No members available + CParticleCollectionVecInput m_vecScale; // 0x1c0 }; // Alignment: 7 -// Size: 0x270 +// Size: 0x210 class C_OP_RemapNamedModelElementEndCap : public CParticleFunctionOperator { public: - CStrongHandle< InfoForResourceTypeCModel > m_hModel; // 0x210 + CStrongHandle< InfoForResourceTypeCModel > m_hModel; // 0x1b0 // MPropertyFriendlyName "input names" - CUtlVector< CUtlString > m_inNames; // 0x218 + CUtlVector< CUtlString > m_inNames; // 0x1b8 // MPropertyFriendlyName "output names" - CUtlVector< CUtlString > m_outNames; // 0x230 + CUtlVector< CUtlString > m_outNames; // 0x1d0 // MPropertyFriendlyName "fallback names when the input doesn't match" - CUtlVector< CUtlString > m_fallbackNames; // 0x248 + CUtlVector< CUtlString > m_fallbackNames; // 0x1e8 // MPropertyFriendlyName "model from renderer" - bool m_bModelFromRenderer; // 0x260 + bool m_bModelFromRenderer; // 0x200 private: - [[maybe_unused]] uint8_t __pad0261[0x3]; // 0x261 + [[maybe_unused]] uint8_t __pad0201[0x3]; // 0x201 public: // MPropertyFriendlyName "input field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldInput; // 0x264 + ParticleAttributeIndex_t m_nFieldInput; // 0x204 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x268 + ParticleAttributeIndex_t m_nFieldOutput; // 0x208 }; // Alignment: 2 -// Size: 0x360 +// Size: 0x310 class C_OP_CPVelocityForce : public CParticleFunctionForce { public: // MPropertyFriendlyName "control point" - int32_t m_nControlPointNumber; // 0x210 + int32_t m_nControlPointNumber; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "velocity scale" - CPerParticleFloatInput m_flScale; // 0x218 + CPerParticleFloatInput m_flScale; // 0x1b8 }; // Alignment: 7 -// Size: 0x240 +// Size: 0x1e0 class C_INIT_CreateSpiralSphere : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x220 + int32_t m_nControlPointNumber; // 0x1c0 // MPropertyFriendlyName "override CP (X/Y/Z *= radius/density/speed)" - int32_t m_nOverrideCP; // 0x224 + int32_t m_nOverrideCP; // 0x1c4 // MPropertyFriendlyName "density" - int32_t m_nDensity; // 0x228 + int32_t m_nDensity; // 0x1c8 // MPropertyFriendlyName "initial radius" - float m_flInitialRadius; // 0x22c + float m_flInitialRadius; // 0x1cc // MPropertyFriendlyName "min initial speed" - float m_flInitialSpeedMin; // 0x230 + float m_flInitialSpeedMin; // 0x1d0 // MPropertyFriendlyName "max initial speed" - float m_flInitialSpeedMax; // 0x234 + float m_flInitialSpeedMax; // 0x1d4 // MPropertyFriendlyName "use particle count as density scale" - bool m_bUseParticleCount; // 0x238 -}; - -// Alignment: 9 -// Size: 0xf8 -class CPulseGraphDef -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 -public: - CUtlSymbolLarge m_DomainIdentifier; // 0x8 - CUtlSymbolLarge m_ParentMapName; // 0x10 - CUtlVector< CPulse_Chunk* > m_Chunks; // 0x18 - CUtlVector< CPulseCell_Base* > m_Cells; // 0x30 - CUtlVector< CPulse_Variable > m_Vars; // 0x48 - CUtlVector< CPulse_PublicOutput > m_PublicOutputs; // 0x60 - CUtlVector< CPulse_InvokeBinding* > m_InvokeBindings; // 0x78 - CUtlVector< CPulse_LandingPadInfo* > m_LandingPads; // 0x90 - CUtlVector< CPulse_OutputConnection* > m_OutputConnections; // 0xa8 -}; - -// Alignment: 2 -// Size: 0x78 -class CPulseCell_Outflow_IntSwitch : public CPulseCell_BaseFlow -{ -public: - CPulse_OutflowConnection m_DefaultCaseOutflow; // 0x48 - CUtlVector< CPulse_OutflowConnection > m_CaseOutflows; // 0x60 + bool m_bUseParticleCount; // 0x1d8 }; // Alignment: 6 -// Size: 0x230 +// Size: 0x1d0 class C_OP_LockPoints : public CParticleFunctionOperator { public: // MPropertyFriendlyName "min column/particle index to affect" - int32_t m_nMinCol; // 0x210 + int32_t m_nMinCol; // 0x1b0 // MPropertyFriendlyName "max column/particle index to affect" - int32_t m_nMaxCol; // 0x214 + int32_t m_nMaxCol; // 0x1b4 // MPropertyFriendlyName "min row/particle index to affect" - int32_t m_nMinRow; // 0x218 + int32_t m_nMinRow; // 0x1b8 // MPropertyFriendlyName "max row/particle index to affect" - int32_t m_nMaxRow; // 0x21c + int32_t m_nMaxRow; // 0x1bc // MPropertyFriendlyName "control point to lock to" - int32_t m_nControlPoint; // 0x220 + int32_t m_nControlPoint; // 0x1c0 // MPropertyFriendlyName "amount of current position to preserve" - float m_flBlendValue; // 0x224 + float m_flBlendValue; // 0x1c4 }; // Alignment: 4 -// Size: 0x370 +// Size: 0x320 class C_INIT_CreateFromCPs : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "control point increment amount" - int32_t m_nIncrement; // 0x220 + int32_t m_nIncrement; // 0x1c0 // MPropertyFriendlyName "starting control point" - int32_t m_nMinCP; // 0x224 + int32_t m_nMinCP; // 0x1c4 // MPropertyFriendlyName "ending control point" // MParticleMinVersion - int32_t m_nMaxCP; // 0x228 + int32_t m_nMaxCP; // 0x1c8 private: - [[maybe_unused]] uint8_t __pad022c[0x4]; // 0x22c + [[maybe_unused]] uint8_t __pad01cc[0x4]; // 0x1cc public: // MPropertyFriendlyName "dynamic control point count" - CParticleCollectionFloatInput m_nDynamicCPCount; // 0x230 + CParticleCollectionFloatInput m_nDynamicCPCount; // 0x1d0 }; // Alignment: 7 -// Size: 0x4b0 +// Size: 0x470 class C_OP_PlanarConstraint : public CParticleFunctionConstraint { public: // MPropertyFriendlyName "plane point" // MVectorIsCoordinate - Vector m_PointOnPlane; // 0x210 + Vector m_PointOnPlane; // 0x1b0 // MPropertyFriendlyName "plane normal" - Vector m_PlaneNormal; // 0x21c + Vector m_PlaneNormal; // 0x1bc // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x228 + int32_t m_nControlPointNumber; // 0x1c8 // MPropertyFriendlyName "global origin" - bool m_bGlobalOrigin; // 0x22c + bool m_bGlobalOrigin; // 0x1cc // MPropertyFriendlyName "global normal" - bool m_bGlobalNormal; // 0x22d + bool m_bGlobalNormal; // 0x1cd private: - [[maybe_unused]] uint8_t __pad022e[0x2]; // 0x22e + [[maybe_unused]] uint8_t __pad01ce[0x2]; // 0x1ce public: // MPropertyFriendlyName "radius scale" - CPerParticleFloatInput m_flRadiusScale; // 0x230 + CPerParticleFloatInput m_flRadiusScale; // 0x1d0 // MPropertyFriendlyName "falloff distance from control point" - CParticleCollectionFloatInput m_flMaximumDistanceToCP; // 0x370 + CParticleCollectionFloatInput m_flMaximumDistanceToCP; // 0x320 }; // Alignment: 2 @@ -17572,149 +13860,149 @@ public: }; // Alignment: 5 -// Size: 0x5f0 +// Size: 0x5c0 class C_OP_SelectivelyEnableChildren : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "group ID to affect" - CParticleCollectionFloatInput m_nChildGroupID; // 0x220 + CParticleCollectionFloatInput m_nChildGroupID; // 0x1c0 // MPropertyFriendlyName "first child to enable" - CParticleCollectionFloatInput m_nFirstChild; // 0x360 + CParticleCollectionFloatInput m_nFirstChild; // 0x310 // MPropertyFriendlyName "# of children to enable" - CParticleCollectionFloatInput m_nNumChildrenToEnable; // 0x4a0 + CParticleCollectionFloatInput m_nNumChildrenToEnable; // 0x460 // MPropertyFriendlyName "play endcap when children are removed" - bool m_bPlayEndcapOnStop; // 0x5e0 + bool m_bPlayEndcapOnStop; // 0x5b0 // MPropertyFriendlyName "destroy particles immediately when child is removed" - bool m_bDestroyImmediately; // 0x5e1 + bool m_bDestroyImmediately; // 0x5b1 }; // Alignment: 4 -// Size: 0x240 +// Size: 0x1e0 class C_INIT_SequenceFromCP : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "kill unused" - bool m_bKillUnused; // 0x220 + bool m_bKillUnused; // 0x1c0 // MPropertyFriendlyName "offset propotional to radius" - bool m_bRadiusScale; // 0x221 + bool m_bRadiusScale; // 0x1c1 private: - [[maybe_unused]] uint8_t __pad0222[0x2]; // 0x222 + [[maybe_unused]] uint8_t __pad01c2[0x2]; // 0x1c2 public: // MPropertyFriendlyName "control point" - int32_t m_nCP; // 0x224 + int32_t m_nCP; // 0x1c4 // MPropertyFriendlyName "per particle spatial offset" // MVectorIsCoordinate - Vector m_vecOffset; // 0x228 + Vector m_vecOffset; // 0x1c8 }; // Alignment: 15 -// Size: 0x260 +// Size: 0x200 class C_OP_NoiseEmitter : public CParticleFunctionEmitter { public: // MPropertyFriendlyName "emission duration" - float m_flEmissionDuration; // 0x220 + float m_flEmissionDuration; // 0x1c0 // MPropertyFriendlyName "emission start time" - float m_flStartTime; // 0x224 + float m_flStartTime; // 0x1c4 // MPropertyFriendlyName "scale emission to used control points" // MParticleMaxVersion - float m_flEmissionScale; // 0x228 + float m_flEmissionScale; // 0x1c8 // MPropertyFriendlyName "emission count scale control point" - int32_t m_nScaleControlPoint; // 0x22c + int32_t m_nScaleControlPoint; // 0x1cc // MPropertyFriendlyName "emission count scale control point field" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nScaleControlPointField; // 0x230 + int32_t m_nScaleControlPointField; // 0x1d0 // MPropertyFriendlyName "world noise scale control point" - int32_t m_nWorldNoisePoint; // 0x234 + int32_t m_nWorldNoisePoint; // 0x1d4 // MPropertyFriendlyName "absolute value" - bool m_bAbsVal; // 0x238 + bool m_bAbsVal; // 0x1d8 // MPropertyFriendlyName "invert absolute value" - bool m_bAbsValInv; // 0x239 + bool m_bAbsValInv; // 0x1d9 private: - [[maybe_unused]] uint8_t __pad023a[0x2]; // 0x23a + [[maybe_unused]] uint8_t __pad01da[0x2]; // 0x1da public: // MPropertyFriendlyName "time coordinate offset" - float m_flOffset; // 0x23c + float m_flOffset; // 0x1dc // MPropertyFriendlyName "emission minimum" - float m_flOutputMin; // 0x240 + float m_flOutputMin; // 0x1e0 // MPropertyFriendlyName "emission maximum" - float m_flOutputMax; // 0x244 + float m_flOutputMax; // 0x1e4 // MPropertyFriendlyName "time noise coordinate scale" - float m_flNoiseScale; // 0x248 + float m_flNoiseScale; // 0x1e8 // MPropertyFriendlyName "world spatial noise coordinate scale" - float m_flWorldNoiseScale; // 0x24c + float m_flWorldNoiseScale; // 0x1ec // MPropertyFriendlyName "spatial coordinate offset" // MVectorIsCoordinate - Vector m_vecOffsetLoc; // 0x250 + Vector m_vecOffsetLoc; // 0x1f0 // MPropertyFriendlyName "world time noise coordinate scale" - float m_flWorldTimeScale; // 0x25c + float m_flWorldTimeScale; // 0x1fc }; // Alignment: 8 -// Size: 0x240 +// Size: 0x1e0 class C_INIT_InitialSequenceFromModel : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x220 + int32_t m_nControlPointNumber; // 0x1c0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x224 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c4 // MPropertyFriendlyName "current anim time output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutputAnim; // 0x228 + ParticleAttributeIndex_t m_nFieldOutputAnim; // 0x1c8 // MPropertyFriendlyName "input minimum" - float m_flInputMin; // 0x22c + float m_flInputMin; // 0x1cc // MPropertyFriendlyName "input maximum" - float m_flInputMax; // 0x230 + float m_flInputMax; // 0x1d0 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x234 + float m_flOutputMin; // 0x1d4 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x238 + float m_flOutputMax; // 0x1d8 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x23c + ParticleSetMethod_t m_nSetMethod; // 0x1dc }; // Alignment: 12 -// Size: 0x270 +// Size: 0x210 class C_INIT_RemapScalarToVector : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "input field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldInput; // 0x220 + ParticleAttributeIndex_t m_nFieldInput; // 0x1c0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x224 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c4 // MPropertyFriendlyName "input minimum" - float m_flInputMin; // 0x228 + float m_flInputMin; // 0x1c8 // MPropertyFriendlyName "input maximum" - float m_flInputMax; // 0x22c + float m_flInputMax; // 0x1cc // MPropertyFriendlyName "output minimum" // MVectorIsSometimesCoordinate - Vector m_vecOutputMin; // 0x230 + Vector m_vecOutputMin; // 0x1d0 // MPropertyFriendlyName "output maximum" // MVectorIsSometimesCoordinate - Vector m_vecOutputMax; // 0x23c + Vector m_vecOutputMax; // 0x1dc // MPropertyFriendlyName "emitter lifetime start time (seconds)" - float m_flStartTime; // 0x248 + float m_flStartTime; // 0x1e8 // MPropertyFriendlyName "emitter lifetime end time (seconds)" - float m_flEndTime; // 0x24c + float m_flEndTime; // 0x1ec // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x250 + ParticleSetMethod_t m_nSetMethod; // 0x1f0 // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x254 + int32_t m_nControlPointNumber; // 0x1f4 // MPropertyFriendlyName "use local system" - bool m_bLocalCoords; // 0x258 + bool m_bLocalCoords; // 0x1f8 private: - [[maybe_unused]] uint8_t __pad0259[0x3]; // 0x259 + [[maybe_unused]] uint8_t __pad01f9[0x3]; // 0x1f9 public: // MPropertyFriendlyName "remap bias" - float m_flRemapBias; // 0x25c + float m_flRemapBias; // 0x1fc }; // Alignment: 0 -// Size: 0x270 +// Size: 0x210 class C_INIT_RemapNamedModelBodyPartToScalar : public C_INIT_RemapNamedModelElementToScalar { public: @@ -17722,401 +14010,383 @@ public: }; // Alignment: 1 -// Size: 0x220 +// Size: 0x1c0 class C_OP_RadiusDecay : public CParticleFunctionOperator { public: // MPropertyFriendlyName "minimum radius" - float m_flMinRadius; // 0x210 + float m_flMinRadius; // 0x1b0 }; // Alignment: 14 -// Size: 0x1950 +// Size: 0x1a40 class C_INIT_CreateWithinSphereTransform : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "distance min" - CPerParticleFloatInput m_fRadiusMin; // 0x220 + CPerParticleFloatInput m_fRadiusMin; // 0x1c0 // MPropertyFriendlyName "distance max" - CPerParticleFloatInput m_fRadiusMax; // 0x360 + CPerParticleFloatInput m_fRadiusMax; // 0x310 // MPropertyFriendlyName "distance bias" // MVectorIsCoordinate - CPerParticleVecInput m_vecDistanceBias; // 0x4a0 + CPerParticleVecInput m_vecDistanceBias; // 0x460 // MPropertyFriendlyName "distance bias absolute value" // MVectorIsCoordinate - Vector m_vecDistanceBiasAbs; // 0xa88 + Vector m_vecDistanceBiasAbs; // 0xa98 private: - [[maybe_unused]] uint8_t __pad0a94[0x4]; // 0xa94 + [[maybe_unused]] uint8_t __pad0aa4[0x4]; // 0xaa4 public: // MPropertyFriendlyName "input position transform" - CParticleTransformInput m_TransformInput; // 0xa98 + CParticleTransformInput m_TransformInput; // 0xaa8 // MPropertyFriendlyName "speed min" - CPerParticleFloatInput m_fSpeedMin; // 0xae8 + CPerParticleFloatInput m_fSpeedMin; // 0xb10 // MPropertyFriendlyName "speed max" - CPerParticleFloatInput m_fSpeedMax; // 0xc28 + CPerParticleFloatInput m_fSpeedMax; // 0xc60 // MPropertyFriendlyName "speed random exponent" - float m_fSpeedRandExp; // 0xd68 + float m_fSpeedRandExp; // 0xdb0 // MPropertyFriendlyName "bias in local system" - bool m_bLocalCoords; // 0xd6c + bool m_bLocalCoords; // 0xdb4 private: - [[maybe_unused]] uint8_t __pad0d6d[0x3]; // 0xd6d + [[maybe_unused]] uint8_t __pad0db5[0x3]; // 0xdb5 public: // MPropertyFriendlyName "randomly distribution growth time" - float m_flEndCPGrowthTime; // 0xd70 + float m_flEndCPGrowthTime; // 0xdb8 private: - [[maybe_unused]] uint8_t __pad0d74[0x4]; // 0xd74 + [[maybe_unused]] uint8_t __pad0dbc[0x4]; // 0xdbc public: // MPropertyFriendlyName "speed in local coordinate system min" // MVectorIsCoordinate - CPerParticleVecInput m_LocalCoordinateSystemSpeedMin; // 0xd78 + CPerParticleVecInput m_LocalCoordinateSystemSpeedMin; // 0xdc0 // MPropertyFriendlyName "speed in local coordinate system max" // MVectorIsCoordinate - CPerParticleVecInput m_LocalCoordinateSystemSpeedMax; // 0x1360 + CPerParticleVecInput m_LocalCoordinateSystemSpeedMax; // 0x13f8 // MPropertyFriendlyName "Output vector" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x1948 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1a30 // MPropertyFriendlyName "Velocity vector" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldVelocity; // 0x194c + ParticleAttributeIndex_t m_nFieldVelocity; // 0x1a34 }; // Alignment: 7 -// Size: 0x230 +// Size: 0x1d0 class C_OP_SnapshotSkinToBones : public CParticleFunctionOperator { public: // MPropertyFriendlyName "rotate normals" - bool m_bTransformNormals; // 0x210 + bool m_bTransformNormals; // 0x1b0 // MPropertyFriendlyName "scale radii" - bool m_bTransformRadii; // 0x211 + bool m_bTransformRadii; // 0x1b1 private: - [[maybe_unused]] uint8_t __pad0212[0x2]; // 0x212 + [[maybe_unused]] uint8_t __pad01b2[0x2]; // 0x1b2 public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x214 + int32_t m_nControlPointNumber; // 0x1b4 // MPropertyFriendlyName "lifetime fade start" - float m_flLifeTimeFadeStart; // 0x218 + float m_flLifeTimeFadeStart; // 0x1b8 // MPropertyFriendlyName "lifetime fade end" - float m_flLifeTimeFadeEnd; // 0x21c + float m_flLifeTimeFadeEnd; // 0x1bc // MPropertyFriendlyName "instant jump threshold" - float m_flJumpThreshold; // 0x220 + float m_flJumpThreshold; // 0x1c0 // MPropertyFriendlyName "previous position scale" - float m_flPrevPosScale; // 0x224 + float m_flPrevPosScale; // 0x1c4 }; // Alignment: 9 -// Size: 0x2c0 +// Size: 0x260 class C_OP_SetCPOrientationToGroundNormal : public CParticleFunctionOperator { public: // MPropertyFriendlyName "interpolation rate" - float m_flInterpRate; // 0x210 + float m_flInterpRate; // 0x1b0 // MPropertyFriendlyName "max trace length" - float m_flMaxTraceLength; // 0x214 + float m_flMaxTraceLength; // 0x1b4 // MPropertyFriendlyName "CP movement tolerance" - float m_flTolerance; // 0x218 + float m_flTolerance; // 0x1b8 // MPropertyFriendlyName "trace offset" - float m_flTraceOffset; // 0x21c + float m_flTraceOffset; // 0x1bc // MPropertyFriendlyName "collision group" - char m_CollisionGroupName[128]; // 0x220 + char m_CollisionGroupName[128]; // 0x1c0 // MPropertyFriendlyName "Trace Set" - ParticleTraceSet_t m_nTraceSet; // 0x2a0 + ParticleTraceSet_t m_nTraceSet; // 0x240 // MPropertyFriendlyName "CP to trace from" - int32_t m_nInputCP; // 0x2a4 + int32_t m_nInputCP; // 0x244 // MPropertyFriendlyName "CP to set" - int32_t m_nOutputCP; // 0x2a8 + int32_t m_nOutputCP; // 0x248 private: - [[maybe_unused]] uint8_t __pad02ac[0xc]; // 0x2ac + [[maybe_unused]] uint8_t __pad024c[0xc]; // 0x24c public: // MPropertyFriendlyName "include water" - bool m_bIncludeWater; // 0x2b8 + bool m_bIncludeWater; // 0x258 }; // Alignment: 4 -// Size: 0x230 +// Size: 0x1d0 class C_OP_TimeVaryingForce : public CParticleFunctionForce { public: // MPropertyFriendlyName "time to start transition" - float m_flStartLerpTime; // 0x210 + float m_flStartLerpTime; // 0x1b0 // MPropertyFriendlyName "starting force" // MVectorIsCoordinate - Vector m_StartingForce; // 0x214 + Vector m_StartingForce; // 0x1b4 // MPropertyFriendlyName "time to end transition" - float m_flEndLerpTime; // 0x220 + float m_flEndLerpTime; // 0x1c0 // MPropertyFriendlyName "ending force" // MVectorIsCoordinate - Vector m_EndingForce; // 0x224 + Vector m_EndingForce; // 0x1c4 }; // Alignment: 16 -// Size: 0x8e0 +// Size: 0x950 struct TextureControls_t { public: // MPropertyFriendlyName "horizontal texture scale" CParticleCollectionRendererFloatInput m_flFinalTextureScaleU; // 0x0 // MPropertyFriendlyName "vertical texture scale" - CParticleCollectionRendererFloatInput m_flFinalTextureScaleV; // 0x140 + CParticleCollectionRendererFloatInput m_flFinalTextureScaleV; // 0x150 // MPropertyFriendlyName "horizontal texture offset" - CParticleCollectionRendererFloatInput m_flFinalTextureOffsetU; // 0x280 + CParticleCollectionRendererFloatInput m_flFinalTextureOffsetU; // 0x2a0 // MPropertyFriendlyName "vertical texture offset" - CParticleCollectionRendererFloatInput m_flFinalTextureOffsetV; // 0x3c0 + CParticleCollectionRendererFloatInput m_flFinalTextureOffsetV; // 0x3f0 // MPropertyFriendlyName "texture rotation / animation rate scale" - CParticleCollectionRendererFloatInput m_flFinalTextureUVRotation; // 0x500 + CParticleCollectionRendererFloatInput m_flFinalTextureUVRotation; // 0x540 // MPropertyFriendlyName "Infinite Zoom Scale" - CParticleCollectionRendererFloatInput m_flZoomScale; // 0x640 + CParticleCollectionRendererFloatInput m_flZoomScale; // 0x690 // MPropertyFriendlyName "Distortion Amount" - CParticleCollectionRendererFloatInput m_flDistortion; // 0x780 + CParticleCollectionRendererFloatInput m_flDistortion; // 0x7e0 // MPropertyFriendlyName "Randomize Initial Offset" - bool m_bRandomizeOffsets; // 0x8c0 + bool m_bRandomizeOffsets; // 0x930 // MPropertyFriendlyName "Clamp UVs" - bool m_bClampUVs; // 0x8c1 + bool m_bClampUVs; // 0x931 private: - [[maybe_unused]] uint8_t __pad08c2[0x2]; // 0x8c2 + [[maybe_unused]] uint8_t __pad0932[0x2]; // 0x932 public: // MPropertyFriendlyName "per-particle scalar for blend" - SpriteCardPerParticleScale_t m_nPerParticleBlend; // 0x8c4 + SpriteCardPerParticleScale_t m_nPerParticleBlend; // 0x934 // MPropertyFriendlyName "per-particle scalar for scale" - SpriteCardPerParticleScale_t m_nPerParticleScale; // 0x8c8 + SpriteCardPerParticleScale_t m_nPerParticleScale; // 0x938 // MPropertyFriendlyName "per-particle scalar for horizontal offset" - SpriteCardPerParticleScale_t m_nPerParticleOffsetU; // 0x8cc + SpriteCardPerParticleScale_t m_nPerParticleOffsetU; // 0x93c // MPropertyFriendlyName "per-particle scalar for vertical offset" - SpriteCardPerParticleScale_t m_nPerParticleOffsetV; // 0x8d0 + SpriteCardPerParticleScale_t m_nPerParticleOffsetV; // 0x940 // MPropertyFriendlyName "per-particle scalar for rotation" - SpriteCardPerParticleScale_t m_nPerParticleRotation; // 0x8d4 + SpriteCardPerParticleScale_t m_nPerParticleRotation; // 0x944 // MPropertyFriendlyName "per-particle scalar for zoom" - SpriteCardPerParticleScale_t m_nPerParticleZoom; // 0x8d8 + SpriteCardPerParticleScale_t m_nPerParticleZoom; // 0x948 // MPropertyFriendlyName "per-particle scalar for distortion" - SpriteCardPerParticleScale_t m_nPerParticleDistortion; // 0x8dc + SpriteCardPerParticleScale_t m_nPerParticleDistortion; // 0x94c }; // Alignment: 3 -// Size: 0x230 +// Size: 0x1d0 class C_OP_SetControlPointFieldToWater : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "source CP" - int32_t m_nSourceCP; // 0x220 + int32_t m_nSourceCP; // 0x1c0 // MPropertyFriendlyName "dest CP" - int32_t m_nDestCP; // 0x224 + int32_t m_nDestCP; // 0x1c4 // MPropertyFriendlyName "dest control point component" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nCPField; // 0x228 -}; - -// Alignment: 1 -// Size: 0x4 -struct PulseRuntimeCellIndex_t -{ -public: - int32_t m_Value; // 0x0 + int32_t m_nCPField; // 0x1c8 }; // Alignment: 5 -// Size: 0x230 +// Size: 0x1d0 class C_OP_LerpVector : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 // MPropertyFriendlyName "value to lerp to" // MVectorIsSometimesCoordinate - Vector m_vecOutput; // 0x214 + Vector m_vecOutput; // 0x1b4 // MPropertyFriendlyName "start time" - float m_flStartTime; // 0x220 + float m_flStartTime; // 0x1c0 // MPropertyFriendlyName "end time" - float m_flEndTime; // 0x224 + float m_flEndTime; // 0x1c4 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x228 + ParticleSetMethod_t m_nSetMethod; // 0x1c8 }; // Alignment: 5 -// Size: 0x2b0 +// Size: 0x250 class C_INIT_InitialVelocityFromHitbox : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "velocity minimum" - float m_flVelocityMin; // 0x220 + float m_flVelocityMin; // 0x1c0 // MPropertyFriendlyName "velocity maximum" - float m_flVelocityMax; // 0x224 + float m_flVelocityMax; // 0x1c4 // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x228 + int32_t m_nControlPointNumber; // 0x1c8 // MPropertyFriendlyName "hitbox set" - char m_HitboxSetName[128]; // 0x22c + char m_HitboxSetName[128]; // 0x1cc // MPropertyFriendlyName "use bones instead of hitboxes" - bool m_bUseBones; // 0x2ac + bool m_bUseBones; // 0x24c }; // Alignment: 1 -// Size: 0x230 +// Size: 0x1d0 class C_INIT_RadiusFromCPObject : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "control point" - int32_t m_nControlPoint; // 0x220 + int32_t m_nControlPoint; // 0x1c0 }; // Alignment: 6 -// Size: 0x230 +// Size: 0x1d0 class C_INIT_GlobalScale : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "scale amount" - float m_flScale; // 0x220 + float m_flScale; // 0x1c0 // MPropertyFriendlyName "scale control point number" - int32_t m_nScaleControlPointNumber; // 0x224 + int32_t m_nScaleControlPointNumber; // 0x1c4 // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x228 + int32_t m_nControlPointNumber; // 0x1c8 // MPropertyFriendlyName "scale radius" - bool m_bScaleRadius; // 0x22c + bool m_bScaleRadius; // 0x1cc // MPropertyFriendlyName "scale position" - bool m_bScalePosition; // 0x22d + bool m_bScalePosition; // 0x1cd // MPropertyFriendlyName "scale velocity" - bool m_bScaleVelocity; // 0x22e + bool m_bScaleVelocity; // 0x1ce }; // Alignment: 4 -// Size: 0x240 +// Size: 0x1e0 class C_OP_HSVShiftToCP : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "Target color control point number" - int32_t m_nColorCP; // 0x220 + int32_t m_nColorCP; // 0x1c0 // MPropertyFriendlyName "Color Gem Enable control point number" - int32_t m_nColorGemEnableCP; // 0x224 + int32_t m_nColorGemEnableCP; // 0x1c4 // MPropertyFriendlyName "output control point number" - int32_t m_nOutputCP; // 0x228 + int32_t m_nOutputCP; // 0x1c8 // MPropertyFriendlyName "Default HSV Color" - Color m_DefaultHSVColor; // 0x22c + Color m_DefaultHSVColor; // 0x1cc }; // Alignment: 5 -// Size: 0x240 +// Size: 0x1e0 class C_OP_RemapBoundingVolumetoCP : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "output control point" - int32_t m_nOutControlPointNumber; // 0x220 + int32_t m_nOutControlPointNumber; // 0x1c0 // MPropertyFriendlyName "input volume minimum in cubic units" - float m_flInputMin; // 0x224 + float m_flInputMin; // 0x1c4 // MPropertyFriendlyName "input volume maximum in cubic units" - float m_flInputMax; // 0x228 + float m_flInputMax; // 0x1c8 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x22c + float m_flOutputMin; // 0x1cc // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x230 + float m_flOutputMax; // 0x1d0 }; // Alignment: 9 -// Size: 0x290 +// Size: 0x230 class C_OP_RenderScreenShake : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "duration scale" - float m_flDurationScale; // 0x260 + float m_flDurationScale; // 0x200 // MPropertyFriendlyName "radius scale" - float m_flRadiusScale; // 0x264 + float m_flRadiusScale; // 0x204 // MPropertyFriendlyName "frequence scale" - float m_flFrequencyScale; // 0x268 + float m_flFrequencyScale; // 0x208 // MPropertyFriendlyName "amplitude scale" - float m_flAmplitudeScale; // 0x26c + float m_flAmplitudeScale; // 0x20c // MPropertyFriendlyName "radius field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nRadiusField; // 0x270 + ParticleAttributeIndex_t m_nRadiusField; // 0x210 // MPropertyFriendlyName "duration field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nDurationField; // 0x274 + ParticleAttributeIndex_t m_nDurationField; // 0x214 // MPropertyFriendlyName "frequency field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFrequencyField; // 0x278 + ParticleAttributeIndex_t m_nFrequencyField; // 0x218 // MPropertyFriendlyName "amplitude field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nAmplitudeField; // 0x27c + ParticleAttributeIndex_t m_nAmplitudeField; // 0x21c // MPropertyFriendlyName "control point of shake recipient (-1 = global)" - int32_t m_nFilterCP; // 0x280 + int32_t m_nFilterCP; // 0x220 }; // Alignment: 4 -// Size: 0x220 +// Size: 0x1c0 class C_OP_FadeIn : public CParticleFunctionOperator { public: // MPropertyFriendlyName "fade in time min" - float m_flFadeInTimeMin; // 0x210 + float m_flFadeInTimeMin; // 0x1b0 // MPropertyFriendlyName "fade in time max" - float m_flFadeInTimeMax; // 0x214 + float m_flFadeInTimeMax; // 0x1b4 // MPropertyFriendlyName "fade in time exponent" - float m_flFadeInTimeExp; // 0x218 + float m_flFadeInTimeExp; // 0x1b8 // MPropertyFriendlyName "proportional 0/1" - bool m_bProportional; // 0x21c + bool m_bProportional; // 0x1bc }; // Alignment: 1 -// Size: 0x360 +// Size: 0x310 class C_OP_SetSimulationRate : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "simulation timescale" - CParticleCollectionFloatInput m_flSimulationScale; // 0x220 + CParticleCollectionFloatInput m_flSimulationScale; // 0x1c0 }; // Alignment: 3 -// Size: 0x230 +// Size: 0x1d0 class C_INIT_Orient2DRelToCP : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "control point" - int32_t m_nCP; // 0x220 + int32_t m_nCP; // 0x1c0 // MPropertyFriendlyName "rotation field" // MPropertyAttributeChoiceName "particlefield_rotation" - ParticleAttributeIndex_t m_nFieldOutput; // 0x224 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c4 // MPropertyFriendlyName "rotation offset" - float m_flRotOffset; // 0x228 + float m_flRotOffset; // 0x1c8 }; // Alignment: 6 -// Size: 0x1650 +// Size: 0x1700 class C_OP_CurlNoiseForce : public CParticleFunctionForce { public: // MPropertyFriendlyName "noise type" - ParticleDirectionNoiseType_t m_nNoiseType; // 0x210 + ParticleDirectionNoiseType_t m_nNoiseType; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "noise frequency" // MVectorIsCoordinate - CPerParticleVecInput m_vecNoiseFreq; // 0x218 + CPerParticleVecInput m_vecNoiseFreq; // 0x1b8 // MPropertyFriendlyName "noise amplitude" // MVectorIsCoordinate - CPerParticleVecInput m_vecNoiseScale; // 0x800 + CPerParticleVecInput m_vecNoiseScale; // 0x7f0 // MPropertyFriendlyName "offset rate" // MVectorIsCoordinate - CPerParticleVecInput m_vecOffsetRate; // 0xde8 + CPerParticleVecInput m_vecOffsetRate; // 0xe28 // MPropertyFriendlyName "worley seed" - CPerParticleFloatInput m_flWorleySeed; // 0x13d0 + CPerParticleFloatInput m_flWorleySeed; // 0x1460 // MPropertyFriendlyName "worley jitter" - CPerParticleFloatInput m_flWorleyJitter; // 0x1510 -}; - -// Alignment: 1 -// Size: 0x2 -struct PulseRuntimeRegisterIndex_t -{ -public: - int16_t m_Value; // 0x0 + CPerParticleFloatInput m_flWorleyJitter; // 0x15b0 }; // Alignment: 0 // Size: 0x8 class IControlPointEditorData { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: - // No members available + uint8_t __pad0000[0x8]; // Autoaligned }; // Alignment: 4 @@ -18126,9 +14396,9 @@ class C_OP_SetControlPointRotation : public CParticleFunctionPreEmission public: // MPropertyFriendlyName "rotation axis" // MVectorIsCoordinate - CParticleCollectionVecInput m_vecRotAxis; // 0x220 + CParticleCollectionVecInput m_vecRotAxis; // 0x1c0 // MPropertyFriendlyName "rotation rate" - CParticleCollectionFloatInput m_flRotRate; // 0x808 + CParticleCollectionFloatInput m_flRotRate; // 0x7f8 // MPropertyFriendlyName "control point" int32_t m_nCP; // 0x948 // MPropertyFriendlyName "local space control point" @@ -18136,197 +14406,189 @@ public: }; // Alignment: 10 -// Size: 0x250 +// Size: 0x1f0 class C_OP_RemapCPtoCP : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "input control point number" - int32_t m_nInputControlPoint; // 0x220 + int32_t m_nInputControlPoint; // 0x1c0 // MPropertyFriendlyName "output control point number" - int32_t m_nOutputControlPoint; // 0x224 + int32_t m_nOutputControlPoint; // 0x1c4 // MPropertyFriendlyName "input field" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nInputField; // 0x228 + int32_t m_nInputField; // 0x1c8 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nOutputField; // 0x22c + int32_t m_nOutputField; // 0x1cc // MPropertyFriendlyName "input minimum" - float m_flInputMin; // 0x230 + float m_flInputMin; // 0x1d0 // MPropertyFriendlyName "input maximum" - float m_flInputMax; // 0x234 + float m_flInputMax; // 0x1d4 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x238 + float m_flOutputMin; // 0x1d8 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x23c + float m_flOutputMax; // 0x1dc // MPropertyFriendlyName "use the derivative" - bool m_bDerivative; // 0x240 + bool m_bDerivative; // 0x1e0 private: - [[maybe_unused]] uint8_t __pad0241[0x3]; // 0x241 + [[maybe_unused]] uint8_t __pad01e1[0x3]; // 0x1e1 public: // MPropertyFriendlyName "interpolation" - float m_flInterpRate; // 0x244 + float m_flInterpRate; // 0x1e4 }; // Alignment: 11 -// Size: 0x240 +// Size: 0x1e0 class C_OP_RemapDotProductToScalar : public CParticleFunctionOperator { public: // MPropertyFriendlyName "first input control point" - int32_t m_nInputCP1; // 0x210 + int32_t m_nInputCP1; // 0x1b0 // MPropertyFriendlyName "second input control point" - int32_t m_nInputCP2; // 0x214 + int32_t m_nInputCP2; // 0x1b4 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x218 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b8 // MPropertyFriendlyName "input minimum (-1 to 1)" - float m_flInputMin; // 0x21c + float m_flInputMin; // 0x1bc // MPropertyFriendlyName "input maximum (-1 to 1)" - float m_flInputMax; // 0x220 + float m_flInputMax; // 0x1c0 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x224 + float m_flOutputMin; // 0x1c4 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x228 + float m_flOutputMax; // 0x1c8 // MPropertyFriendlyName "use particle velocity for first input" - bool m_bUseParticleVelocity; // 0x22c + bool m_bUseParticleVelocity; // 0x1cc private: - [[maybe_unused]] uint8_t __pad022d[0x3]; // 0x22d + [[maybe_unused]] uint8_t __pad01cd[0x3]; // 0x1cd public: // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x230 + ParticleSetMethod_t m_nSetMethod; // 0x1d0 // MPropertyFriendlyName "only active within specified input range" - bool m_bActiveRange; // 0x234 + bool m_bActiveRange; // 0x1d4 // MPropertyFriendlyName "use particle normal for first input" - bool m_bUseParticleNormal; // 0x235 + bool m_bUseParticleNormal; // 0x1d5 }; // Alignment: 7 -// Size: 0x240 +// Size: 0x1e0 class C_OP_RemapAverageScalarValuetoCP : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "output control point" - int32_t m_nOutControlPointNumber; // 0x220 + int32_t m_nOutControlPointNumber; // 0x1c0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nOutVectorField; // 0x224 + int32_t m_nOutVectorField; // 0x1c4 // MPropertyFriendlyName "scalar field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nField; // 0x228 + ParticleAttributeIndex_t m_nField; // 0x1c8 // MPropertyFriendlyName "input volume minimum" - float m_flInputMin; // 0x22c + float m_flInputMin; // 0x1cc // MPropertyFriendlyName "input volume maximum" - float m_flInputMax; // 0x230 + float m_flInputMax; // 0x1d0 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x234 + float m_flOutputMin; // 0x1d4 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x238 + float m_flOutputMax; // 0x1d8 }; // Alignment: 2 -// Size: 0x230 +// Size: 0x1d0 class C_OP_SetControlPointToCenter : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "control point number to set" - int32_t m_nCP1; // 0x220 + int32_t m_nCP1; // 0x1c0 // MPropertyFriendlyName "center offset" // MVectorIsCoordinate - Vector m_vecCP1Pos; // 0x224 + Vector m_vecCP1Pos; // 0x1c4 }; // Alignment: 4 -// Size: 0x220 +// Size: 0x1c0 class C_OP_RemapControlPointOrientationToRotation : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point" - int32_t m_nCP; // 0x210 + int32_t m_nCP; // 0x1b0 // MPropertyFriendlyName "rotation field" // MPropertyAttributeChoiceName "particlefield_rotation" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 // MPropertyFriendlyName "offset rotation" - float m_flOffsetRot; // 0x218 + float m_flOffsetRot; // 0x1b8 // MPropertyFriendlyName "control point axis" // MPropertyAttributeChoiceName "vector_component" // MVectorIsSometimesCoordinate - int32_t m_nComponent; // 0x21c + int32_t m_nComponent; // 0x1bc }; // Alignment: 15 -// Size: 0xdf0 +// Size: 0xe30 class C_OP_DistanceToTransform : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "distance minimum" - CPerParticleFloatInput m_flInputMin; // 0x218 + CPerParticleFloatInput m_flInputMin; // 0x1b8 // MPropertyFriendlyName "distance maximum" - CPerParticleFloatInput m_flInputMax; // 0x358 + CPerParticleFloatInput m_flInputMax; // 0x308 // MPropertyFriendlyName "output minimum" - CPerParticleFloatInput m_flOutputMin; // 0x498 + CPerParticleFloatInput m_flOutputMin; // 0x458 // MPropertyFriendlyName "output maximum" - CPerParticleFloatInput m_flOutputMax; // 0x5d8 + CPerParticleFloatInput m_flOutputMax; // 0x5a8 // MPropertyFriendlyName "transform input" - CParticleTransformInput m_TransformStart; // 0x718 + CParticleTransformInput m_TransformStart; // 0x6f8 // MPropertyFriendlyName "ensure line of sight" - bool m_bLOS; // 0x768 + bool m_bLOS; // 0x760 // MPropertyFriendlyName "LOS collision group" - char m_CollisionGroupName[128]; // 0x769 + char m_CollisionGroupName[128]; // 0x761 private: - [[maybe_unused]] uint8_t __pad07e9[0x3]; // 0x7e9 + [[maybe_unused]] uint8_t __pad07e1[0x3]; // 0x7e1 public: // MPropertyFriendlyName "Trace Set" - ParticleTraceSet_t m_nTraceSet; // 0x7ec + ParticleTraceSet_t m_nTraceSet; // 0x7e4 // MPropertyFriendlyName "maximum trace length" - float m_flMaxTraceLength; // 0x7f0 + float m_flMaxTraceLength; // 0x7e8 // MPropertyFriendlyName "LOS Failure Scalar" - float m_flLOSScale; // 0x7f4 + float m_flLOSScale; // 0x7ec // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x7f8 + ParticleSetMethod_t m_nSetMethod; // 0x7f0 // MPropertyFriendlyName "only active within specified distance" - bool m_bActiveRange; // 0x7fc + bool m_bActiveRange; // 0x7f4 // MPropertyFriendlyName "output is additive" - bool m_bAdditive; // 0x7fd + bool m_bAdditive; // 0x7f5 private: - [[maybe_unused]] uint8_t __pad07fe[0x2]; // 0x7fe + [[maybe_unused]] uint8_t __pad07f6[0x2]; // 0x7f6 public: // MPropertyFriendlyName "component scale" - CPerParticleVecInput m_vecComponentScale; // 0x800 -}; - -// Alignment: 0 -// Size: 0x48 -class CPulseCell_BaseValue : public CPulseCell_Base -{ -public: - // No members available + CPerParticleVecInput m_vecComponentScale; // 0x7f8 }; // Alignment: 29 -// Size: 0x12b0 +// Size: 0x1320 class C_OP_RenderStandardLight : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "light type" - ParticleLightTypeChoiceList_t m_nLightType; // 0x260 + ParticleLightTypeChoiceList_t m_nLightType; // 0x200 private: - [[maybe_unused]] uint8_t __pad0264[0x4]; // 0x264 + [[maybe_unused]] uint8_t __pad0204[0x4]; // 0x204 public: // MPropertyFriendlyName "color blend" - CParticleCollectionVecInput m_vecColorScale; // 0x268 + CParticleCollectionVecInput m_vecColorScale; // 0x208 // MPropertyFriendlyName "color blend type" - ParticleColorBlendType_t m_nColorBlendType; // 0x850 + ParticleColorBlendType_t m_nColorBlendType; // 0x840 private: - [[maybe_unused]] uint8_t __pad0854[0x4]; // 0x854 + [[maybe_unused]] uint8_t __pad0844[0x4]; // 0x844 public: // MPropertyFriendlyName "intensity" - CParticleCollectionFloatInput m_flIntensity; // 0x858 + CParticleCollectionFloatInput m_flIntensity; // 0x848 // MPropertyFriendlyName "cast shadows" // MPropertySuppressExpr "m_nLightType == PARTICLE_LIGHT_TYPE_FX" bool m_bCastShadows; // 0x998 @@ -18338,96 +14600,105 @@ public: CParticleCollectionFloatInput m_flTheta; // 0x9a0 // MPropertyFriendlyName "outer cone angle" // MPropertySuppressExpr "m_nLightType != PARTICLE_LIGHT_TYPE_SPOT" - CParticleCollectionFloatInput m_flPhi; // 0xae0 + CParticleCollectionFloatInput m_flPhi; // 0xaf0 // MPropertyFriendlyName "light radius multiplier" - CParticleCollectionFloatInput m_flRadiusMultiplier; // 0xc20 + CParticleCollectionFloatInput m_flRadiusMultiplier; // 0xc40 // MPropertyFriendlyName "attenuation type" - StandardLightingAttenuationStyle_t m_nAttenuationStyle; // 0xd60 + StandardLightingAttenuationStyle_t m_nAttenuationStyle; // 0xd90 private: - [[maybe_unused]] uint8_t __pad0d64[0x4]; // 0xd64 + [[maybe_unused]] uint8_t __pad0d94[0x4]; // 0xd94 public: // MPropertyFriendlyName "falloff linearity" // MPropertySuppressExpr "m_nAttenuationStyle == LIGHT_STYLE_NEW || ( m_nAttenuationStyle == LIGHT_STYLE_OLD && m_nLightType == PARTICLE_LIGHT_TYPE_FX )" - CParticleCollectionFloatInput m_flFalloffLinearity; // 0xd68 + CParticleCollectionFloatInput m_flFalloffLinearity; // 0xd98 // MPropertyFriendlyName "falloff fifty percent" // MPropertySuppressExpr "m_nAttenuationStyle == LIGHT_STYLE_OLD" - CParticleCollectionFloatInput m_flFiftyPercentFalloff; // 0xea8 + CParticleCollectionFloatInput m_flFiftyPercentFalloff; // 0xee8 // MPropertyFriendlyName "falloff zero percent" // MPropertySuppressExpr "m_nAttenuationStyle == LIGHT_STYLE_OLD" - CParticleCollectionFloatInput m_flZeroPercentFalloff; // 0xfe8 + CParticleCollectionFloatInput m_flZeroPercentFalloff; // 0x1038 // MPropertyFriendlyName "render diffuse" // MPropertySuppressExpr "m_nLightType == PARTICLE_LIGHT_TYPE_FX" - bool m_bRenderDiffuse; // 0x1128 + bool m_bRenderDiffuse; // 0x1188 // MPropertyFriendlyName "render specular" // MPropertySuppressExpr "m_nLightType == PARTICLE_LIGHT_TYPE_FX" - bool m_bRenderSpecular; // 0x1129 + bool m_bRenderSpecular; // 0x1189 private: - [[maybe_unused]] uint8_t __pad112a[0x6]; // 0x112a + [[maybe_unused]] uint8_t __pad118a[0x6]; // 0x118a public: // MPropertyFriendlyName "light cookie string" - CUtlString m_lightCookie; // 0x1130 + CUtlString m_lightCookie; // 0x1190 // MPropertyFriendlyName "light priority" - int32_t m_nPriority; // 0x1138 + int32_t m_nPriority; // 0x1198 // MPropertyFriendlyName "fog lighting mode" // MPropertySuppressExpr "m_nLightType == PARTICLE_LIGHT_TYPE_FX" - ParticleLightFogLightingMode_t m_nFogLightingMode; // 0x113c + ParticleLightFogLightingMode_t m_nFogLightingMode; // 0x119c // MPropertyFriendlyName "fog contribution" // MPropertySuppressExpr "m_nLightType == PARTICLE_LIGHT_TYPE_FX" - CParticleCollectionRendererFloatInput m_flFogContribution; // 0x1140 + CParticleCollectionRendererFloatInput m_flFogContribution; // 0x11a0 // MPropertyFriendlyName "capsule behavior" - ParticleLightBehaviorChoiceList_t m_nCapsuleLightBehavior; // 0x1280 + ParticleLightBehaviorChoiceList_t m_nCapsuleLightBehavior; // 0x12f0 // MPropertyStartGroup "Capsule Light Controls" // MPropertyFriendlyName "capsule length" // MPropertySuppressExpr "m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_ROPE || m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_TRAILS" - float m_flCapsuleLength; // 0x1284 + float m_flCapsuleLength; // 0x12f4 // MPropertyFriendlyName "reverse point order" // MPropertySuppressExpr "m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_FOLLOW_DIRECTION || m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_TRAILS" - bool m_bReverseOrder; // 0x1288 + bool m_bReverseOrder; // 0x12f8 // MPropertyFriendlyName "Closed loop" // MPropertySuppressExpr "m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_FOLLOW_DIRECTION || m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_TRAILS" - bool m_bClosedLoop; // 0x1289 + bool m_bClosedLoop; // 0x12f9 private: - [[maybe_unused]] uint8_t __pad128a[0x2]; // 0x128a + [[maybe_unused]] uint8_t __pad12fa[0x2]; // 0x12fa public: // MPropertyFriendlyName "Anchor point source" // MPropertyAttributeChoiceName "particlefield_vector" // MPropertySuppressExpr "m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_FOLLOW_DIRECTION || m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_ROPE" - ParticleAttributeIndex_t m_nPrevPntSource; // 0x128c + ParticleAttributeIndex_t m_nPrevPntSource; // 0x12fc // MPropertyFriendlyName "max length" // MPropertySuppressExpr "m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_FOLLOW_DIRECTION || m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_ROPE" - float m_flMaxLength; // 0x1290 + float m_flMaxLength; // 0x1300 // MPropertyFriendlyName "min length" // MPropertySuppressExpr "m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_FOLLOW_DIRECTION || m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_ROPE" - float m_flMinLength; // 0x1294 + float m_flMinLength; // 0x1304 // MPropertyFriendlyName "ignore delta time" // MPropertySuppressExpr "m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_FOLLOW_DIRECTION || m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_ROPE" - bool m_bIgnoreDT; // 0x1298 + bool m_bIgnoreDT; // 0x1308 private: - [[maybe_unused]] uint8_t __pad1299[0x3]; // 0x1299 + [[maybe_unused]] uint8_t __pad1309[0x3]; // 0x1309 public: // MPropertyFriendlyName "constrain radius to no more than this times the length" // MPropertySuppressExpr "m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_FOLLOW_DIRECTION || m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_ROPE" - float m_flConstrainRadiusToLengthRatio; // 0x129c + float m_flConstrainRadiusToLengthRatio; // 0x130c // MPropertyFriendlyName "amount to scale trail length by" // MPropertySuppressExpr "m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_FOLLOW_DIRECTION || m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_ROPE" - float m_flLengthScale; // 0x12a0 + float m_flLengthScale; // 0x1310 // MPropertyFriendlyName "how long before a trail grows to its full length" // MPropertySuppressExpr "m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_FOLLOW_DIRECTION || m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_ROPE" - float m_flLengthFadeInTime; // 0x12a4 + float m_flLengthFadeInTime; // 0x1314 +}; + +// Alignment: 2 +// Size: 0x40 +class CParticleVariableRef +{ +public: + CKV3MemberNameWithStorage m_variableName; // 0x0 + PulseValueType_t m_variableType; // 0x38 }; // Alignment: 1 -// Size: 0x220 +// Size: 0x1c0 class C_OP_WindForce : public CParticleFunctionForce { public: // MPropertyFriendlyName "force to apply" // MVectorIsCoordinate - Vector m_vForce; // 0x210 + Vector m_vForce; // 0x1b0 }; // Alignment: 2 -// Size: 0x148 +// Size: 0x158 struct FloatInputMaterialVariable_t { public: @@ -18437,109 +14708,91 @@ public: CParticleCollectionFloatInput m_flInput; // 0x8 }; -// Alignment: 0 -// Size: 0x48 -class CPulseCell_Val_TestDomainGetEntityName : public CPulseCell_BaseValue -{ -public: - // No members available -}; - // Alignment: 0 // Size: 0x8 class IParticleSystemDefinition { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: - // No members available -}; - -// Alignment: 0 -// Size: 0x48 -class CPulseCell_Step_TestDomainTracepoint : public CPulseCell_BaseFlow -{ -public: - // No members available + uint8_t __pad0000[0x8]; // Autoaligned }; // Alignment: 11 -// Size: 0x250 +// Size: 0x1f0 class C_INIT_RemapCPtoScalar : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "input control point number" - int32_t m_nCPInput; // 0x220 + int32_t m_nCPInput; // 0x1c0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x224 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c4 // MPropertyFriendlyName "input field 0-2 X/Y/Z" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nField; // 0x228 + int32_t m_nField; // 0x1c8 // MPropertyFriendlyName "input minimum" - float m_flInputMin; // 0x22c + float m_flInputMin; // 0x1cc // MPropertyFriendlyName "input maximum" - float m_flInputMax; // 0x230 + float m_flInputMax; // 0x1d0 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x234 + float m_flOutputMin; // 0x1d4 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x238 + float m_flOutputMax; // 0x1d8 // MPropertyFriendlyName "emitter lifetime start time (seconds)" - float m_flStartTime; // 0x23c + float m_flStartTime; // 0x1dc // MPropertyFriendlyName "emitter lifetime end time (seconds)" - float m_flEndTime; // 0x240 + float m_flEndTime; // 0x1e0 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x244 + ParticleSetMethod_t m_nSetMethod; // 0x1e4 // MPropertyFriendlyName "remap bias" - float m_flRemapBias; // 0x248 + float m_flRemapBias; // 0x1e8 }; // Alignment: 6 -// Size: 0x290 +// Size: 0x230 class C_OP_RenderStatusEffectCitadel : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "color warp texture (3d)" // MPropertyAttributeEditor "AssetBrowse( vtex, *showassetpreview )" - CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureColorWarp; // 0x260 + CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureColorWarp; // 0x200 // MPropertyFriendlyName "normal texture" // MPropertyAttributeEditor "AssetBrowse( vtex, *showassetpreview )" - CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureNormal; // 0x268 + CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureNormal; // 0x208 // MPropertyFriendlyName "metalness texture" // MPropertyAttributeEditor "AssetBrowse( vtex, *showassetpreview )" - CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureMetalness; // 0x270 + CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureMetalness; // 0x210 // MPropertyFriendlyName "roughness texture" // MPropertyAttributeEditor "AssetBrowse( vtex, *showassetpreview )" - CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureRoughness; // 0x278 + CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureRoughness; // 0x218 // MPropertyFriendlyName "self illum texture" // MPropertyAttributeEditor "AssetBrowse( vtex, *showassetpreview )" - CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureSelfIllum; // 0x280 + CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureSelfIllum; // 0x220 // MPropertyFriendlyName "detail texture" // MPropertyAttributeEditor "AssetBrowse( vtex, *showassetpreview )" - CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureDetail; // 0x288 + CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureDetail; // 0x228 }; // Alignment: 3 -// Size: 0xdf0 +// Size: 0xe30 class C_OP_ClampVector : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "output minimum" // MVectorIsSometimesCoordinate - CPerParticleVecInput m_vecOutputMin; // 0x218 + CPerParticleVecInput m_vecOutputMin; // 0x1b8 // MPropertyFriendlyName "output maximum" // MVectorIsSometimesCoordinate - CPerParticleVecInput m_vecOutputMax; // 0x800 + CPerParticleVecInput m_vecOutputMax; // 0x7f0 }; // Alignment: 0 -// Size: 0x270 +// Size: 0x210 class C_INIT_RemapNamedModelMeshGroupToScalar : public C_INIT_RemapNamedModelElementToScalar { public: @@ -18573,7 +14826,7 @@ public: }; // Alignment: 0 -// Size: 0x230 +// Size: 0x1d0 class C_OP_SpinYaw : public CGeneralSpin { public: @@ -18581,20 +14834,20 @@ public: }; // Alignment: 3 -// Size: 0x370 +// Size: 0x320 class C_OP_StopAfterCPDuration : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "duration at which to stop" - CParticleCollectionFloatInput m_flDuration; // 0x220 + CParticleCollectionFloatInput m_flDuration; // 0x1c0 // MPropertyFriendlyName "destroy all particles immediately" - bool m_bDestroyImmediately; // 0x360 + bool m_bDestroyImmediately; // 0x310 // MPropertyFriendlyName "play end cap effect" - bool m_bPlayEndCap; // 0x361 + bool m_bPlayEndCap; // 0x311 }; // Alignment: 0 -// Size: 0x270 +// Size: 0x210 class C_OP_RemapNamedModelBodyPartEndCap : public C_OP_RemapNamedModelElementEndCap { public: @@ -18602,166 +14855,118 @@ public: }; // Alignment: 7 -// Size: 0x270 +// Size: 0x210 class C_OP_MaintainSequentialPath : public CParticleFunctionOperator { public: // MPropertyFriendlyName "maximum distance" - float m_fMaxDistance; // 0x210 + float m_fMaxDistance; // 0x1b0 // MPropertyFriendlyName "particles to map from start to end" - float m_flNumToAssign; // 0x214 + float m_flNumToAssign; // 0x1b4 // MPropertyFriendlyName "cohesion strength" - float m_flCohesionStrength; // 0x218 + float m_flCohesionStrength; // 0x1b8 // MPropertyFriendlyName "control point movement tolerance" - float m_flTolerance; // 0x21c + float m_flTolerance; // 0x1bc // MPropertyFriendlyName "restart behavior (0 = bounce, 1 = loop )" - bool m_bLoop; // 0x220 + bool m_bLoop; // 0x1c0 // MPropertyFriendlyName "use existing particle count" - bool m_bUseParticleCount; // 0x221 + bool m_bUseParticleCount; // 0x1c1 private: - [[maybe_unused]] uint8_t __pad0222[0xe]; // 0x222 + [[maybe_unused]] uint8_t __pad01c2[0xe]; // 0x1c2 public: - CPathParameters m_PathParams; // 0x230 + CPathParameters m_PathParams; // 0x1d0 }; // Alignment: 2 -// Size: 0x70 -class CPulseCell_Inflow_BaseEntrypoint : public CPulseCell_BaseFlow -{ -public: - PulseRuntimeChunkIndex_t m_EntryChunk; // 0x48 -private: - [[maybe_unused]] uint8_t __pad004c[0x4]; // 0x4c -public: - PulseRegisterMap_t m_RegisterMap; // 0x50 -}; - -// Alignment: 2 -// Size: 0x230 +// Size: 0x1d0 class C_OP_SetControlPointFromObjectScale : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "input control point number" - int32_t m_nCPInput; // 0x220 + int32_t m_nCPInput; // 0x1c0 // MPropertyFriendlyName "output control point number" - int32_t m_nCPOutput; // 0x224 -}; - -// Alignment: 0 -// Size: 0xd0 -class CBasePulseGraphInstance -{ -private: - [[maybe_unused]] uint8_t __pad0000[0xd0]; // 0x0 -public: - // No members available -}; - -// Alignment: 5 -// Size: 0x230 -class C_OP_ExternalGenericForce : public CParticleFunctionForce -{ -public: - // MPropertyFriendlyName "strength" - float m_flStrength; // 0x210 - // MPropertyFriendlyName "curl strength" - float m_flCurlStrength; // 0x214 - // MPropertyFriendlyName "linear strength" - float m_flLinearStrength; // 0x218 - // MPropertyFriendlyName "radial strength" - float m_flRadialStrength; // 0x21c - // MPropertyFriendlyName "rotation strength" - float m_flRotationStrength; // 0x220 + int32_t m_nCPOutput; // 0x1c4 }; // Alignment: 9 -// Size: 0x270 +// Size: 0x210 class C_OP_RemapNamedModelElementOnceTimed : public CParticleFunctionOperator { public: - CStrongHandle< InfoForResourceTypeCModel > m_hModel; // 0x210 + CStrongHandle< InfoForResourceTypeCModel > m_hModel; // 0x1b0 // MPropertyFriendlyName "input names" - CUtlVector< CUtlString > m_inNames; // 0x218 + CUtlVector< CUtlString > m_inNames; // 0x1b8 // MPropertyFriendlyName "output names" - CUtlVector< CUtlString > m_outNames; // 0x230 + CUtlVector< CUtlString > m_outNames; // 0x1d0 // MPropertyFriendlyName "fallback names when the input doesn't match" - CUtlVector< CUtlString > m_fallbackNames; // 0x248 + CUtlVector< CUtlString > m_fallbackNames; // 0x1e8 // MPropertyFriendlyName "model from renderer" - bool m_bModelFromRenderer; // 0x260 + bool m_bModelFromRenderer; // 0x200 // MPropertyFriendlyName "remap time proportional" - bool m_bProportional; // 0x261 + bool m_bProportional; // 0x201 private: - [[maybe_unused]] uint8_t __pad0262[0x2]; // 0x262 + [[maybe_unused]] uint8_t __pad0202[0x2]; // 0x202 public: // MPropertyFriendlyName "input field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldInput; // 0x264 + ParticleAttributeIndex_t m_nFieldInput; // 0x204 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x268 + ParticleAttributeIndex_t m_nFieldOutput; // 0x208 // MPropertyFriendlyName "remap time" - float m_flRemapTime; // 0x26c -}; - -// Alignment: 1 -// Size: 0x220 -class C_OP_ScreenForceFromPlayerView : public CParticleFunctionForce -{ -public: - // MPropertyFriendlyName "Acceleration" - float m_flAccel; // 0x210 + float m_flRemapTime; // 0x20c }; // Alignment: 10 -// Size: 0x260 +// Size: 0x200 class C_OP_RampScalarSpline : public CParticleFunctionOperator { public: // MPropertyFriendlyName "ramp rate min" - float m_RateMin; // 0x210 + float m_RateMin; // 0x1b0 // MPropertyFriendlyName "ramp rate max" - float m_RateMax; // 0x214 + float m_RateMax; // 0x1b4 // MPropertyFriendlyName "start time min" - float m_flStartTime_min; // 0x218 + float m_flStartTime_min; // 0x1b8 // MPropertyFriendlyName "start time max" - float m_flStartTime_max; // 0x21c + float m_flStartTime_max; // 0x1bc // MPropertyFriendlyName "end time min" - float m_flEndTime_min; // 0x220 + float m_flEndTime_min; // 0x1c0 // MPropertyFriendlyName "end time max" - float m_flEndTime_max; // 0x224 + float m_flEndTime_max; // 0x1c4 // MPropertyFriendlyName "bias" - float m_flBias; // 0x228 + float m_flBias; // 0x1c8 private: - [[maybe_unused]] uint8_t __pad022c[0x24]; // 0x22c + [[maybe_unused]] uint8_t __pad01cc[0x24]; // 0x1cc public: // MPropertyFriendlyName "ramp field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nField; // 0x250 + ParticleAttributeIndex_t m_nField; // 0x1f0 // MPropertyFriendlyName "start/end proportional" - bool m_bProportionalOp; // 0x254 + bool m_bProportionalOp; // 0x1f4 // MPropertyFriendlyName "ease out" - bool m_bEaseOut; // 0x255 + bool m_bEaseOut; // 0x1f5 }; // Alignment: 5 -// Size: 0x230 +// Size: 0x1d0 class C_OP_ColorInterpolate : public CParticleFunctionOperator { public: // MPropertyFriendlyName "color fade" - Color m_ColorFade; // 0x210 + Color m_ColorFade; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0xc]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0xc]; // 0x1b4 public: // MPropertyFriendlyName "fade start time" - float m_flFadeStartTime; // 0x220 + float m_flFadeStartTime; // 0x1c0 // MPropertyFriendlyName "fade end time" - float m_flFadeEndTime; // 0x224 + float m_flFadeEndTime; // 0x1c4 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x228 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c8 // MPropertyFriendlyName "ease in and out" - bool m_bEaseInOut; // 0x22c + bool m_bEaseInOut; // 0x1cc }; // Alignment: 1 @@ -18773,167 +14978,170 @@ public: }; // Alignment: 7 -// Size: 0x230 +// Size: 0x1d0 class C_OP_FadeAndKill : public CParticleFunctionOperator { public: // MPropertyFriendlyName "start fade in time" - float m_flStartFadeInTime; // 0x210 + float m_flStartFadeInTime; // 0x1b0 // MPropertyFriendlyName "end fade in time" - float m_flEndFadeInTime; // 0x214 + float m_flEndFadeInTime; // 0x1b4 // MPropertyFriendlyName "start fade out time" - float m_flStartFadeOutTime; // 0x218 + float m_flStartFadeOutTime; // 0x1b8 // MPropertyFriendlyName "end fade out time" - float m_flEndFadeOutTime; // 0x21c + float m_flEndFadeOutTime; // 0x1bc // MPropertyFriendlyName "start alpha" - float m_flStartAlpha; // 0x220 + float m_flStartAlpha; // 0x1c0 // MPropertyFriendlyName "end alpha" - float m_flEndAlpha; // 0x224 + float m_flEndAlpha; // 0x1c4 // MPropertyFriendlyName "force preserving particle order" - bool m_bForcePreserveParticleOrder; // 0x228 + bool m_bForcePreserveParticleOrder; // 0x1c8 }; // Alignment: 4 -// Size: 0x280 +// Size: 0x240 class C_INIT_RemapInitialTransformDirectionToRotation : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "transform input" - CParticleTransformInput m_TransformInput; // 0x220 + CParticleTransformInput m_TransformInput; // 0x1c0 // MPropertyFriendlyName "rotation field" // MPropertyAttributeChoiceName "particlefield_rotation" - ParticleAttributeIndex_t m_nFieldOutput; // 0x270 + ParticleAttributeIndex_t m_nFieldOutput; // 0x228 // MPropertyFriendlyName "offset rotation" - float m_flOffsetRot; // 0x274 + float m_flOffsetRot; // 0x22c // MPropertyFriendlyName "control point axis" // MPropertyAttributeChoiceName "vector_component" // MVectorIsSometimesCoordinate - int32_t m_nComponent; // 0x278 + int32_t m_nComponent; // 0x230 }; // Alignment: 3 -// Size: 0x230 +// Size: 0x1d0 class C_INIT_PositionOffsetToCP : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "creation control point number" - int32_t m_nControlPointNumberStart; // 0x220 + int32_t m_nControlPointNumberStart; // 0x1c0 // MPropertyFriendlyName "offset control point number" - int32_t m_nControlPointNumberEnd; // 0x224 + int32_t m_nControlPointNumberEnd; // 0x1c4 // MPropertyFriendlyName "offset in local space 0/1" - bool m_bLocalCoords; // 0x228 + bool m_bLocalCoords; // 0x1c8 }; // Alignment: 8 -// Size: 0x4c0 +// Size: 0x5d0 class C_OP_MaintainEmitter : public CParticleFunctionEmitter { public: // MPropertyFriendlyName "count to maintain" - int32_t m_nParticlesToMaintain; // 0x220 + CParticleCollectionFloatInput m_nParticlesToMaintain; // 0x1c0 // MPropertyFriendlyName "emission start time" - float m_flStartTime; // 0x224 - // MPropertyFriendlyName "emission duration" - CParticleCollectionFloatInput m_flEmissionDuration; // 0x228 - // MPropertyFriendlyName "emission rate" - float m_flEmissionRate; // 0x368 - // MPropertyFriendlyName "control point with snapshot data" - int32_t m_nSnapshotControlPoint; // 0x36c - // MPropertyFriendlyName "group emission times for new particles" - bool m_bEmitInstantaneously; // 0x370 - // MPropertyFriendlyName "perform final emit on stop" - bool m_bFinalEmitOnStop; // 0x371 + float m_flStartTime; // 0x310 private: - [[maybe_unused]] uint8_t __pad0372[0x6]; // 0x372 + [[maybe_unused]] uint8_t __pad0314[0x4]; // 0x314 +public: + // MPropertyFriendlyName "emission duration" + CParticleCollectionFloatInput m_flEmissionDuration; // 0x318 + // MPropertyFriendlyName "emission rate" + float m_flEmissionRate; // 0x468 + // MPropertyFriendlyName "control point with snapshot data" + int32_t m_nSnapshotControlPoint; // 0x46c + // MPropertyFriendlyName "group emission times for new particles" + bool m_bEmitInstantaneously; // 0x470 + // MPropertyFriendlyName "perform final emit on stop" + bool m_bFinalEmitOnStop; // 0x471 +private: + [[maybe_unused]] uint8_t __pad0472[0x6]; // 0x472 public: // MPropertyFriendlyName "total count scale" - CParticleCollectionFloatInput m_flScale; // 0x378 + CParticleCollectionFloatInput m_flScale; // 0x478 }; // Alignment: 3 -// Size: 0x230 +// Size: 0x1d0 class C_INIT_VelocityFromNormal : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "random speed min" - float m_fSpeedMin; // 0x220 + float m_fSpeedMin; // 0x1c0 // MPropertyFriendlyName "random speed max" - float m_fSpeedMax; // 0x224 + float m_fSpeedMax; // 0x1c4 // MPropertyFriendlyName "ignore delta time" - bool m_bIgnoreDt; // 0x228 + bool m_bIgnoreDt; // 0x1c8 }; // Alignment: 3 -// Size: 0x220 +// Size: 0x1c0 class C_OP_MaxVelocity : public CParticleFunctionOperator { public: // MPropertyFriendlyName "maximum velocity" - float m_flMaxVelocity; // 0x210 + float m_flMaxVelocity; // 0x1b0 // MPropertyFriendlyName "override max velocity from this CP" - int32_t m_nOverrideCP; // 0x214 + int32_t m_nOverrideCP; // 0x1b4 // MPropertyFriendlyName "override CP field" - int32_t m_nOverrideCPField; // 0x218 + int32_t m_nOverrideCPField; // 0x1b8 }; // Alignment: 11 -// Size: 0x2b0 +// Size: 0x250 class C_OP_RenderProjected : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "project on characters" - bool m_bProjectCharacter; // 0x260 + bool m_bProjectCharacter; // 0x200 // MPropertyFriendlyName "project on world" - bool m_bProjectWorld; // 0x261 + bool m_bProjectWorld; // 0x201 // MPropertyFriendlyName "project on water" - bool m_bProjectWater; // 0x262 + bool m_bProjectWater; // 0x202 // MPropertyFriendlyName "flip horizontal" - bool m_bFlipHorizontal; // 0x263 + bool m_bFlipHorizontal; // 0x203 // MPropertyFriendlyName "enable projected depth controls" - bool m_bEnableProjectedDepthControls; // 0x264 + bool m_bEnableProjectedDepthControls; // 0x204 private: - [[maybe_unused]] uint8_t __pad0265[0x3]; // 0x265 + [[maybe_unused]] uint8_t __pad0205[0x3]; // 0x205 public: // MPropertyFriendlyName "min projection depth" // MPropertySuppressExpr "!m_bEnableProjectedDepthControls" - float m_flMinProjectionDepth; // 0x268 + float m_flMinProjectionDepth; // 0x208 // MPropertyFriendlyName "max projection depth" // MPropertySuppressExpr "!m_bEnableProjectedDepthControls" - float m_flMaxProjectionDepth; // 0x26c + float m_flMaxProjectionDepth; // 0x20c // MPropertyFriendlyName "material" - CStrongHandle< InfoForResourceTypeIMaterial2 > m_hProjectedMaterial; // 0x270 + CStrongHandle< InfoForResourceTypeIMaterial2 > m_hProjectedMaterial; // 0x210 // MPropertyFriendlyName "sheet animation time scale" - float m_flAnimationTimeScale; // 0x278 + float m_flAnimationTimeScale; // 0x218 // MPropertyFriendlyName "orient to normal" - bool m_bOrientToNormal; // 0x27c + bool m_bOrientToNormal; // 0x21c private: - [[maybe_unused]] uint8_t __pad027d[0x3]; // 0x27d + [[maybe_unused]] uint8_t __pad021d[0x3]; // 0x21d public: // MPropertyFriendlyName "material variables" // MPropertyAutoExpandSelf - CUtlVector< MaterialVariable_t > m_MaterialVars; // 0x280 + CUtlVector< MaterialVariable_t > m_MaterialVars; // 0x220 }; // Alignment: 6 -// Size: 0x250 +// Size: 0x1f0 class C_INIT_RandomNamedModelElement : public CParticleFunctionInitializer { public: - CStrongHandle< InfoForResourceTypeCModel > m_hModel; // 0x220 + CStrongHandle< InfoForResourceTypeCModel > m_hModel; // 0x1c0 // MPropertyFriendlyName "names" - CUtlVector< CUtlString > m_names; // 0x228 + CUtlVector< CUtlString > m_names; // 0x1c8 // MPropertyFriendlyName "shuffle" - bool m_bShuffle; // 0x240 + bool m_bShuffle; // 0x1e0 // MPropertyFriendlyName "linear" - bool m_bLinear; // 0x241 + bool m_bLinear; // 0x1e1 // MPropertyFriendlyName "model from renderer" - bool m_bModelFromRenderer; // 0x242 + bool m_bModelFromRenderer; // 0x1e2 private: - [[maybe_unused]] uint8_t __pad0243[0x1]; // 0x243 + [[maybe_unused]] uint8_t __pad01e3[0x1]; // 0x1e3 public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x244 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1e4 }; // Alignment: 3 @@ -18942,100 +15150,106 @@ class C_OP_PerParticleForce : public CParticleFunctionForce { public: // MPropertyFriendlyName "force scale" - CPerParticleFloatInput m_flForceScale; // 0x210 + CPerParticleFloatInput m_flForceScale; // 0x1b0 // MPropertyFriendlyName "force to apply" // MVectorIsCoordinate - CPerParticleVecInput m_vForce; // 0x350 + CPerParticleVecInput m_vForce; // 0x300 // MPropertyFriendlyName "local space control point" int32_t m_nCP; // 0x938 }; // Alignment: 4 -// Size: 0x220 +// Size: 0x1c0 class C_OP_InheritFromPeerSystem : public CParticleFunctionOperator { public: // MPropertyFriendlyName "read field" // MPropertyAttributeChoiceName "particlefield" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 // MPropertyFriendlyName "written field" // MPropertyAttributeChoiceName "particlefield" - ParticleAttributeIndex_t m_nFieldInput; // 0x214 + ParticleAttributeIndex_t m_nFieldInput; // 0x1b4 // MPropertyFriendlyName "particle neighbor increment amount" - int32_t m_nIncrement; // 0x218 + int32_t m_nIncrement; // 0x1b8 // MPropertyFriendlyName "group id" - int32_t m_nGroupID; // 0x21c + int32_t m_nGroupID; // 0x1bc }; -// Alignment: 12 -// Size: 0xfd0 +// Alignment: 13 +// Size: 0x10f0 class C_INIT_CreateOnModel : public CParticleFunctionInitializer { public: - // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x220 + // MPropertyFriendlyName "input model" + CParticleModelInput m_modelInput; // 0x1c0 + // MPropertyFriendlyName "input transform for transforming local space bias vector" + // MParticleInputOptional + CParticleTransformInput m_transformInput; // 0x220 // MPropertyFriendlyName "force to be inside model" - int32_t m_nForceInModel; // 0x224 + int32_t m_nForceInModel; // 0x288 // MPropertyFriendlyName "desired hitbox" - int32_t m_nDesiredHitbox; // 0x228 + int32_t m_nDesiredHitbox; // 0x28c // MPropertyFriendlyName "Control Point Providing Hitbox index" - int32_t m_nHitboxValueFromControlPointIndex; // 0x22c + int32_t m_nHitboxValueFromControlPointIndex; // 0x290 +private: + [[maybe_unused]] uint8_t __pad0294[0x4]; // 0x294 +public: // MPropertyFriendlyName "hitbox scale" - CParticleCollectionVecInput m_vecHitBoxScale; // 0x230 + CParticleCollectionVecInput m_vecHitBoxScale; // 0x298 // MPropertyFriendlyName "inherited velocity scale" - float m_flBoneVelocity; // 0x818 + float m_flBoneVelocity; // 0x8d0 // MPropertyFriendlyName "maximum inherited velocity" - float m_flMaxBoneVelocity; // 0x81c + float m_flMaxBoneVelocity; // 0x8d4 // MPropertyFriendlyName "direction bias" // MVectorIsCoordinate - CParticleCollectionVecInput m_vecDirectionBias; // 0x820 + CParticleCollectionVecInput m_vecDirectionBias; // 0x8d8 // MPropertyFriendlyName "hitbox set" - char m_HitboxSetName[128]; // 0xe08 + char m_HitboxSetName[128]; // 0xf10 // MPropertyFriendlyName "bias in local space" - bool m_bLocalCoords; // 0xe88 + bool m_bLocalCoords; // 0xf90 // MPropertyFriendlyName "use bones instead of hitboxes" - bool m_bUseBones; // 0xe89 + bool m_bUseBones; // 0xf91 private: - [[maybe_unused]] uint8_t __pad0e8a[0x6]; // 0xe8a + [[maybe_unused]] uint8_t __pad0f92[0x6]; // 0xf92 public: // MPropertyFriendlyName "hitbox shell thickness" - CParticleCollectionFloatInput m_flShellSize; // 0xe90 + CParticleCollectionFloatInput m_flShellSize; // 0xf98 }; // Alignment: 4 -// Size: 0x4b0 +// Size: 0x470 class C_INIT_InitFloat : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "value" - CPerParticleFloatInput m_InputValue; // 0x220 + CPerParticleFloatInput m_InputValue; // 0x1c0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nOutputField; // 0x360 + ParticleAttributeIndex_t m_nOutputField; // 0x310 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x364 + ParticleSetMethod_t m_nSetMethod; // 0x314 // MPropertyFriendlyName "per-particle strength" - CPerParticleFloatInput m_InputStrength; // 0x368 + CPerParticleFloatInput m_InputStrength; // 0x318 }; // Alignment: 4 -// Size: 0x990 +// Size: 0x9b0 class C_OP_MovementRotateParticleAroundAxis : public CParticleFunctionOperator { public: // MPropertyFriendlyName "rotation axis" // MVectorIsCoordinate - CParticleCollectionVecInput m_vecRotAxis; // 0x210 + CParticleCollectionVecInput m_vecRotAxis; // 0x1b0 // MPropertyFriendlyName "rotation rate" - CParticleCollectionFloatInput m_flRotRate; // 0x7f8 + CParticleCollectionFloatInput m_flRotRate; // 0x7e8 // MPropertyFriendlyName "transform input" CParticleTransformInput m_TransformInput; // 0x938 // MPropertyFriendlyName "use local space" - bool m_bLocalSpace; // 0x988 + bool m_bLocalSpace; // 0x9a0 }; // Alignment: 0 -// Size: 0x140 +// Size: 0x150 class CParticleRemapFloatInput : public CParticleFloatInput { public: @@ -19043,61 +15257,61 @@ public: }; // Alignment: 12 -// Size: 0x270 +// Size: 0x210 class C_OP_SetControlPointPositions : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "set positions in world space" - bool m_bUseWorldLocation; // 0x220 + bool m_bUseWorldLocation; // 0x1c0 // MPropertyFriendlyName "inherit CP orientation" - bool m_bOrient; // 0x221 + bool m_bOrient; // 0x1c1 // MPropertyFriendlyName "only set position once" - bool m_bSetOnce; // 0x222 + bool m_bSetOnce; // 0x1c2 private: - [[maybe_unused]] uint8_t __pad0223[0x1]; // 0x223 + [[maybe_unused]] uint8_t __pad01c3[0x1]; // 0x1c3 public: // MPropertyFriendlyName "first control point number" - int32_t m_nCP1; // 0x224 + int32_t m_nCP1; // 0x1c4 // MPropertyFriendlyName "second control point number" - int32_t m_nCP2; // 0x228 + int32_t m_nCP2; // 0x1c8 // MPropertyFriendlyName "third control point number" - int32_t m_nCP3; // 0x22c + int32_t m_nCP3; // 0x1cc // MPropertyFriendlyName "fourth control point number" - int32_t m_nCP4; // 0x230 + int32_t m_nCP4; // 0x1d0 // MPropertyFriendlyName "first control point location" // MVectorIsCoordinate - Vector m_vecCP1Pos; // 0x234 + Vector m_vecCP1Pos; // 0x1d4 // MPropertyFriendlyName "second control point location" // MVectorIsCoordinate - Vector m_vecCP2Pos; // 0x240 + Vector m_vecCP2Pos; // 0x1e0 // MPropertyFriendlyName "third control point location" // MVectorIsCoordinate - Vector m_vecCP3Pos; // 0x24c + Vector m_vecCP3Pos; // 0x1ec // MPropertyFriendlyName "fourth control point location" // MVectorIsCoordinate - Vector m_vecCP4Pos; // 0x258 + Vector m_vecCP4Pos; // 0x1f8 // MPropertyFriendlyName "control point to offset positions from" - int32_t m_nHeadLocation; // 0x264 + int32_t m_nHeadLocation; // 0x204 }; // Alignment: 5 -// Size: 0x240 +// Size: 0x1e0 class C_OP_ConstrainDistanceToUserSpecifiedPath : public CParticleFunctionConstraint { public: // MPropertyFriendlyName "minimum distance" - float m_fMinDistance; // 0x210 + float m_fMinDistance; // 0x1b0 // MPropertyFriendlyName "maximum distance" - float m_flMaxDistance; // 0x214 + float m_flMaxDistance; // 0x1b4 // MPropertyFriendlyName "Time scale" - float m_flTimeScale; // 0x218 + float m_flTimeScale; // 0x1b8 // MPropertyFriendlyName "Treat path as a loop" - bool m_bLoopedPath; // 0x21c + bool m_bLoopedPath; // 0x1bc private: - [[maybe_unused]] uint8_t __pad021d[0x3]; // 0x21d + [[maybe_unused]] uint8_t __pad01bd[0x3]; // 0x1bd public: // MPropertyFriendlyName "path points" - CUtlVector< PointDefinitionWithTimeValues_t > m_pointList; // 0x220 + CUtlVector< PointDefinitionWithTimeValues_t > m_pointList; // 0x1c0 }; // Alignment: 10 @@ -19107,118 +15321,118 @@ class C_INIT_CreateInEpitrochoid : public CParticleFunctionInitializer public: // MPropertyFriendlyName "first dimension 0-2 (-1 disables)" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nComponent1; // 0x220 + int32_t m_nComponent1; // 0x1c0 // MPropertyFriendlyName "second dimension 0-2 (-1 disables)" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nComponent2; // 0x224 + int32_t m_nComponent2; // 0x1c4 // MPropertyFriendlyName "input transform" - CParticleTransformInput m_TransformInput; // 0x228 + CParticleTransformInput m_TransformInput; // 0x1c8 // MPropertyFriendlyName "particle density" - CPerParticleFloatInput m_flParticleDensity; // 0x278 + CPerParticleFloatInput m_flParticleDensity; // 0x230 // MPropertyFriendlyName "point offset" - CPerParticleFloatInput m_flOffset; // 0x3b8 + CPerParticleFloatInput m_flOffset; // 0x380 // MPropertyFriendlyName "radius 1" - CPerParticleFloatInput m_flRadius1; // 0x4f8 + CPerParticleFloatInput m_flRadius1; // 0x4d0 // MPropertyFriendlyName "radius 2" - CPerParticleFloatInput m_flRadius2; // 0x638 + CPerParticleFloatInput m_flRadius2; // 0x620 // MPropertyFriendlyName "use particle count instead of creation time" - bool m_bUseCount; // 0x778 + bool m_bUseCount; // 0x770 // MPropertyFriendlyName "local space" - bool m_bUseLocalCoords; // 0x779 + bool m_bUseLocalCoords; // 0x771 // MPropertyFriendlyName "offset from existing position" - bool m_bOffsetExistingPos; // 0x77a + bool m_bOffsetExistingPos; // 0x772 }; // Alignment: 2 -// Size: 0x220 +// Size: 0x1c0 class C_OP_DensityForce : public CParticleFunctionForce { public: // MPropertyFriendlyName "Radius scale for particle influence" - float m_flRadiusScale; // 0x210 + float m_flRadiusScale; // 0x1b0 // MPropertyFriendlyName "Scale of force" - float m_flForceScale; // 0x214 + float m_flForceScale; // 0x1b4 }; // Alignment: 5 -// Size: 0x5f0 +// Size: 0x5c0 class C_INIT_CreateParticleImpulse : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "radius" - CPerParticleFloatInput m_InputRadius; // 0x220 + CPerParticleFloatInput m_InputRadius; // 0x1c0 // MPropertyFriendlyName "magnitude" - CPerParticleFloatInput m_InputMagnitude; // 0x360 + CPerParticleFloatInput m_InputMagnitude; // 0x310 // MPropertyFriendlyName "force falloff function" - ParticleFalloffFunction_t m_nFalloffFunction; // 0x4a0 + ParticleFalloffFunction_t m_nFalloffFunction; // 0x460 private: - [[maybe_unused]] uint8_t __pad04a4[0x4]; // 0x4a4 + [[maybe_unused]] uint8_t __pad0464[0x4]; // 0x464 public: // MPropertyFriendlyName "exponential falloff exponent" - CPerParticleFloatInput m_InputFalloffExp; // 0x4a8 + CPerParticleFloatInput m_InputFalloffExp; // 0x468 // MPropertyFriendlyName "impulse type" - ParticleImpulseType_t m_nImpulseType; // 0x5e8 + ParticleImpulseType_t m_nImpulseType; // 0x5b8 }; // Alignment: 13 -// Size: 0x260 +// Size: 0x200 class C_OP_RemapCPtoVector : public CParticleFunctionOperator { public: // MPropertyFriendlyName "input control point number" - int32_t m_nCPInput; // 0x210 + int32_t m_nCPInput; // 0x1b0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 // MPropertyFriendlyName "local space CP" - int32_t m_nLocalSpaceCP; // 0x218 + int32_t m_nLocalSpaceCP; // 0x1b8 // MPropertyFriendlyName "input minimum" // MVectorIsSometimesCoordinate - Vector m_vInputMin; // 0x21c + Vector m_vInputMin; // 0x1bc // MPropertyFriendlyName "input maximum" // MVectorIsSometimesCoordinate - Vector m_vInputMax; // 0x228 + Vector m_vInputMax; // 0x1c8 // MPropertyFriendlyName "output minimum" // MVectorIsSometimesCoordinate - Vector m_vOutputMin; // 0x234 + Vector m_vOutputMin; // 0x1d4 // MPropertyFriendlyName "output maximum" // MVectorIsSometimesCoordinate - Vector m_vOutputMax; // 0x240 + Vector m_vOutputMax; // 0x1e0 // MPropertyFriendlyName "emitter lifetime start time (seconds)" - float m_flStartTime; // 0x24c + float m_flStartTime; // 0x1ec // MPropertyFriendlyName "emitter lifetime end time (seconds)" - float m_flEndTime; // 0x250 + float m_flEndTime; // 0x1f0 // MPropertyFriendlyName "interpolation scale" - float m_flInterpRate; // 0x254 + float m_flInterpRate; // 0x1f4 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x258 + ParticleSetMethod_t m_nSetMethod; // 0x1f8 // MPropertyFriendlyName "offset position" - bool m_bOffset; // 0x25c + bool m_bOffset; // 0x1fc // MPropertyFriendlyName "accelerate position" - bool m_bAccelerate; // 0x25d + bool m_bAccelerate; // 0x1fd }; -// Alignment: 12 -// Size: 0xe60 +// Alignment: 13 +// Size: 0xff0 class C_OP_PinParticleToCP : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x210 + int32_t m_nControlPointNumber; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "offset" - CParticleCollectionVecInput m_vecOffset; // 0x218 + CParticleCollectionVecInput m_vecOffset; // 0x1b8 // MPropertyFriendlyName "offset in local space" - bool m_bOffsetLocal; // 0x800 + bool m_bOffsetLocal; // 0x7f0 private: - [[maybe_unused]] uint8_t __pad0801[0x3]; // 0x801 + [[maybe_unused]] uint8_t __pad07f1[0x3]; // 0x7f1 public: // MPropertyFriendlyName "particle to use" - ParticleSelection_t m_nParticleSelection; // 0x804 - // MPropertyFriendlyName "particle number" - CParticleCollectionFloatInput m_nParticleNumber; // 0x808 + ParticleSelection_t m_nParticleSelection; // 0x7f4 + // MPropertyFriendlyName "particle number/offset" + CParticleCollectionFloatInput m_nParticleNumber; // 0x7f8 // MPropertyFriendlyName "pin break type" ParticlePinDistance_t m_nPinBreakType; // 0x948 private: @@ -19227,146 +15441,150 @@ public: // MPropertyFriendlyName "break length %" CParticleCollectionFloatInput m_flBreakDistance; // 0x950 // MPropertyFriendlyName "break speed" - CParticleCollectionFloatInput m_flBreakSpeed; // 0xa90 + CParticleCollectionFloatInput m_flBreakSpeed; // 0xaa0 // MPropertyFriendlyName "break age" - CParticleCollectionFloatInput m_flAge; // 0xbd0 + CParticleCollectionFloatInput m_flAge; // 0xbf0 // MPropertyFriendlyName "break comparison control point 1" - int32_t m_nBreakControlPointNumber; // 0xd10 + int32_t m_nBreakControlPointNumber; // 0xd40 // MPropertyFriendlyName "break comparison control point 2" - int32_t m_nBreakControlPointNumber2; // 0xd14 + int32_t m_nBreakControlPointNumber2; // 0xd44 + // MPropertyFriendlyName "break value" + CParticleCollectionFloatInput m_flBreakValue; // 0xd48 // MPropertyFriendlyName "Interpolation" - CPerParticleFloatInput m_flInterpolation; // 0xd18 + CPerParticleFloatInput m_flInterpolation; // 0xe98 }; // Alignment: 7 -// Size: 0x2c0 +// Size: 0x260 class C_OP_RtEnvCull : public CParticleFunctionOperator { public: // MPropertyFriendlyName "test direction" // MVectorIsCoordinate - Vector m_vecTestDir; // 0x210 + Vector m_vecTestDir; // 0x1b0 // MPropertyFriendlyName "cull normal" // MVectorIsCoordinate - Vector m_vecTestNormal; // 0x21c + Vector m_vecTestNormal; // 0x1bc // MPropertyFriendlyName "cull on miss" - bool m_bCullOnMiss; // 0x228 + bool m_bCullOnMiss; // 0x1c8 // MPropertyFriendlyName "stick instead of cull" - bool m_bStickInsteadOfCull; // 0x229 + bool m_bStickInsteadOfCull; // 0x1c9 // MPropertyFriendlyName "ray trace environment name" - char m_RtEnvName[128]; // 0x22a + char m_RtEnvName[128]; // 0x1ca private: - [[maybe_unused]] uint8_t __pad02aa[0x2]; // 0x2aa + [[maybe_unused]] uint8_t __pad024a[0x2]; // 0x24a public: // MPropertyFriendlyName "ray trace environment cp" - int32_t m_nRTEnvCP; // 0x2ac + int32_t m_nRTEnvCP; // 0x24c // MPropertyFriendlyName "rt env control point component" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nComponent; // 0x2b0 + int32_t m_nComponent; // 0x250 }; // Alignment: 9 -// Size: 0x260 +// Size: 0x200 class C_OP_DriveCPFromGlobalSoundFloat : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "output control point" - int32_t m_nOutputControlPoint; // 0x220 + int32_t m_nOutputControlPoint; // 0x1c0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nOutputField; // 0x224 + int32_t m_nOutputField; // 0x1c4 // MPropertyFriendlyName "input minimum" - float m_flInputMin; // 0x228 + float m_flInputMin; // 0x1c8 // MPropertyFriendlyName "input maximum" - float m_flInputMax; // 0x22c + float m_flInputMax; // 0x1cc // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x230 + float m_flOutputMin; // 0x1d0 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x234 + float m_flOutputMax; // 0x1d4 // MPropertyFriendlyName "sound stack name" - CUtlString m_StackName; // 0x238 + CUtlString m_StackName; // 0x1d8 // MPropertyFriendlyName "sound operator name" - CUtlString m_OperatorName; // 0x240 + CUtlString m_OperatorName; // 0x1e0 // MPropertyFriendlyName "sound field name" - CUtlString m_FieldName; // 0x248 + CUtlString m_FieldName; // 0x1e8 }; // Alignment: 7 -// Size: 0x240 +// Size: 0x1e0 class C_OP_RemapDirectionToCPToVector : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point" - int32_t m_nCP; // 0x210 + int32_t m_nCP; // 0x1b0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 // MPropertyFriendlyName "scale factor" - float m_flScale; // 0x218 + float m_flScale; // 0x1b8 // MPropertyFriendlyName "offset rotation" - float m_flOffsetRot; // 0x21c + float m_flOffsetRot; // 0x1bc // MPropertyFriendlyName "offset axis" // MVectorIsCoordinate - Vector m_vecOffsetAxis; // 0x220 + Vector m_vecOffsetAxis; // 0x1c0 // MPropertyFriendlyName "normalize" - bool m_bNormalize; // 0x22c + bool m_bNormalize; // 0x1cc private: - [[maybe_unused]] uint8_t __pad022d[0x3]; // 0x22d + [[maybe_unused]] uint8_t __pad01cd[0x3]; // 0x1cd public: // MPropertyFriendlyName "strength field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldStrength; // 0x230 + ParticleAttributeIndex_t m_nFieldStrength; // 0x1d0 }; // Alignment: 10 -// Size: 0x1300 +// Size: 0x1380 class C_OP_ChladniWave : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "wave minimum" - CPerParticleFloatInput m_flInputMin; // 0x218 + CPerParticleFloatInput m_flInputMin; // 0x1b8 // MPropertyFriendlyName "wave maximum" - CPerParticleFloatInput m_flInputMax; // 0x358 + CPerParticleFloatInput m_flInputMax; // 0x308 // MPropertyFriendlyName "output minimum" - CPerParticleFloatInput m_flOutputMin; // 0x498 + CPerParticleFloatInput m_flOutputMin; // 0x458 // MPropertyFriendlyName "output maximum" - CPerParticleFloatInput m_flOutputMax; // 0x5d8 + CPerParticleFloatInput m_flOutputMax; // 0x5a8 // MPropertyFriendlyName "wave length" - CPerParticleVecInput m_vecWaveLength; // 0x718 + CPerParticleVecInput m_vecWaveLength; // 0x6f8 // MPropertyFriendlyName "harmonics" - CPerParticleVecInput m_vecHarmonics; // 0xd00 + CPerParticleVecInput m_vecHarmonics; // 0xd30 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x12e8 + ParticleSetMethod_t m_nSetMethod; // 0x1368 // MPropertyFriendlyName "local space control point" - int32_t m_nLocalSpaceControlPoint; // 0x12ec + int32_t m_nLocalSpaceControlPoint; // 0x136c // MPropertyFriendlyName "3D" - bool m_b3D; // 0x12f0 + bool m_b3D; // 0x1370 }; -// Alignment: 5 -// Size: 0x370 +// Alignment: 6 +// Size: 0x320 class C_OP_SetChildControlPoints : public CParticleFunctionOperator { public: // MPropertyFriendlyName "group ID to affect" - int32_t m_nChildGroupID; // 0x210 + int32_t m_nChildGroupID; // 0x1b0 // MPropertyFriendlyName "first control point to set" - int32_t m_nFirstControlPoint; // 0x214 + int32_t m_nFirstControlPoint; // 0x1b4 // MPropertyFriendlyName "# of control points to set" - int32_t m_nNumControlPoints; // 0x218 + int32_t m_nNumControlPoints; // 0x1b8 private: - [[maybe_unused]] uint8_t __pad021c[0x4]; // 0x21c + [[maybe_unused]] uint8_t __pad01bc[0x4]; // 0x1bc public: // MPropertyFriendlyName "first particle to copy" - CParticleCollectionFloatInput m_nFirstSourcePoint; // 0x220 + CParticleCollectionFloatInput m_nFirstSourcePoint; // 0x1c0 + // MPropertyFriendlyName "start as last particle" + bool m_bReverse; // 0x310 // MPropertyFriendlyName "set orientation" - bool m_bSetOrientation; // 0x360 + bool m_bSetOrientation; // 0x311 }; // Alignment: 2 @@ -19374,10 +15592,10 @@ public: class C_INIT_NormalAlignToCP : public CParticleFunctionInitializer { public: - // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x220 + // MPropertyFriendlyName "input" + CParticleTransformInput m_transformInput; // 0x1c0 // MPropertyFriendlyName "control point axis" - ParticleControlPointAxis_t m_nControlPointAxis; // 0x224 + ParticleControlPointAxis_t m_nControlPointAxis; // 0x228 }; // Alignment: 2 @@ -19393,164 +15611,148 @@ public: }; // Alignment: 7 -// Size: 0x380 +// Size: 0x330 class C_OP_SetControlPointToWaterSurface : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "source CP" - int32_t m_nSourceCP; // 0x220 + int32_t m_nSourceCP; // 0x1c0 // MPropertyFriendlyName "CP to set to surface" - int32_t m_nDestCP; // 0x224 + int32_t m_nDestCP; // 0x1c4 // MPropertyFriendlyName "CP to set to surface current flow velocity" // MPropertySuppressExpr "mod != hlx" - int32_t m_nFlowCP; // 0x228 + int32_t m_nFlowCP; // 0x1c8 // MPropertyFriendlyName "CP to set component of if water" - int32_t m_nActiveCP; // 0x22c + int32_t m_nActiveCP; // 0x1cc // MPropertyFriendlyName "CP component" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nActiveCPField; // 0x230 + int32_t m_nActiveCPField; // 0x1d0 private: - [[maybe_unused]] uint8_t __pad0234[0x4]; // 0x234 + [[maybe_unused]] uint8_t __pad01d4[0x4]; // 0x1d4 public: // MPropertyFriendlyName "retest rate" - CParticleCollectionFloatInput m_flRetestRate; // 0x238 + CParticleCollectionFloatInput m_flRetestRate; // 0x1d8 // MPropertyFriendlyName "adaptive retest on moving surface" - bool m_bAdaptiveThreshold; // 0x378 + bool m_bAdaptiveThreshold; // 0x328 }; // Alignment: 2 -// Size: 0x230 +// Size: 0x1d0 class C_INIT_InheritVelocity : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x220 + int32_t m_nControlPointNumber; // 0x1c0 // MPropertyFriendlyName "velocity scale" - float m_flVelocityScale; // 0x224 -}; - -// Alignment: 1 -// Size: 0x50 -class CPulseCell_Step_TestDomainEntFire : public CPulseCell_BaseFlow -{ -public: - CUtlString m_Input; // 0x48 + float m_flVelocityScale; // 0x1c4 }; // Alignment: 22 -// Size: 0x1330 +// Size: 0x13c0 class C_OP_RenderCables : public CParticleFunctionRenderer { public: // MPropertyStartGroup "Renderer Modifiers" // MPropertyFriendlyName "Radius Scale" // MPropertySortPriority "700" - CParticleCollectionFloatInput m_flRadiusScale; // 0x260 + CParticleCollectionFloatInput m_flRadiusScale; // 0x200 // MPropertyFriendlyName "alpha scale" // MPropertySortPriority "700" - CParticleCollectionFloatInput m_flAlphaScale; // 0x3a0 + CParticleCollectionFloatInput m_flAlphaScale; // 0x350 // MPropertyFriendlyName "color blend" // MPropertySortPriority "700" - CParticleCollectionVecInput m_vecColorScale; // 0x4e0 + CParticleCollectionVecInput m_vecColorScale; // 0x4a0 // MPropertyFriendlyName "color blend type" // MPropertySortPriority "700" - ParticleColorBlendType_t m_nColorBlendType; // 0xac8 -private: - [[maybe_unused]] uint8_t __pad0acc[0x4]; // 0xacc -public: - // MPropertyStartGroup - CStrongHandle< InfoForResourceTypeIMaterial2 > m_hMaterial; // 0xad0 - // MPropertyFriendlyName "texture repetition mode" - TextureRepetitionMode_t m_nTextureRepetitionMode; // 0xad8 + ParticleColorBlendType_t m_nColorBlendType; // 0xad8 private: [[maybe_unused]] uint8_t __pad0adc[0x4]; // 0xadc public: - // MPropertyFriendlyName "texture repetitions" - CParticleCollectionFloatInput m_flTextureRepeatsPerSegment; // 0xae0 - // MPropertyFriendlyName "texture repetitions around cable" - CParticleCollectionFloatInput m_flTextureRepeatsCircumference; // 0xc20 - // MPropertyFriendlyName "color map offset along path" - CParticleCollectionFloatInput m_flColorMapOffsetV; // 0xd60 - // MPropertyFriendlyName "color map offset around cable" - CParticleCollectionFloatInput m_flColorMapOffsetU; // 0xea0 - // MPropertyFriendlyName "normal map offset along path" - CParticleCollectionFloatInput m_flNormalMapOffsetV; // 0xfe0 - // MPropertyFriendlyName "normal map offset around cable" - CParticleCollectionFloatInput m_flNormalMapOffsetU; // 0x1120 - // MPropertyFriendlyName "draw caps at each end of the cable" - bool m_bDrawCableCaps; // 0x1260 + // MPropertyStartGroup + CStrongHandle< InfoForResourceTypeIMaterial2 > m_hMaterial; // 0xae0 + // MPropertyFriendlyName "texture repetition mode" + TextureRepetitionMode_t m_nTextureRepetitionMode; // 0xae8 private: - [[maybe_unused]] uint8_t __pad1261[0x3]; // 0x1261 + [[maybe_unused]] uint8_t __pad0aec[0x4]; // 0xaec +public: + // MPropertyFriendlyName "texture repetitions" + CParticleCollectionFloatInput m_flTextureRepeatsPerSegment; // 0xaf0 + // MPropertyFriendlyName "texture repetitions around cable" + CParticleCollectionFloatInput m_flTextureRepeatsCircumference; // 0xc40 + // MPropertyFriendlyName "color map offset along path" + CParticleCollectionFloatInput m_flColorMapOffsetV; // 0xd90 + // MPropertyFriendlyName "color map offset around cable" + CParticleCollectionFloatInput m_flColorMapOffsetU; // 0xee0 + // MPropertyFriendlyName "normal map offset along path" + CParticleCollectionFloatInput m_flNormalMapOffsetV; // 0x1030 + // MPropertyFriendlyName "normal map offset around cable" + CParticleCollectionFloatInput m_flNormalMapOffsetU; // 0x1180 + // MPropertyFriendlyName "draw caps at each end of the cable" + bool m_bDrawCableCaps; // 0x12d0 +private: + [[maybe_unused]] uint8_t __pad12d1[0x3]; // 0x12d1 public: // MPropertyFriendlyName "cable end cap shape factor" // MPropertyAttributeRange "0 2" - float m_flCapRoundness; // 0x1264 + float m_flCapRoundness; // 0x12d4 // MPropertyFriendlyName "cable end cap offset amount" // MPropertyAttributeRange "0 2" - float m_flCapOffsetAmount; // 0x1268 + float m_flCapOffsetAmount; // 0x12d8 // MPropertyFriendlyName "tessellation scale factor" - float m_flTessScale; // 0x126c + float m_flTessScale; // 0x12dc // MPropertyFriendlyName "minimum steps between particles" - int32_t m_nMinTesselation; // 0x1270 + int32_t m_nMinTesselation; // 0x12e0 // MPropertyFriendlyName "maximum steps between particles" - int32_t m_nMaxTesselation; // 0x1274 + int32_t m_nMaxTesselation; // 0x12e4 // MPropertyFriendlyName "roundness factor" - int32_t m_nRoundness; // 0x1278 + int32_t m_nRoundness; // 0x12e8 private: - [[maybe_unused]] uint8_t __pad127c[0x4]; // 0x127c + [[maybe_unused]] uint8_t __pad12ec[0x4]; // 0x12ec public: // MPropertyFriendlyName "diffuse lighting origin" - // MParticleTransformInputOptional - CParticleTransformInput m_LightingTransform; // 0x1280 + // MParticleInputOptional + CParticleTransformInput m_LightingTransform; // 0x12f0 // MPropertyFriendlyName "material float variables" - CUtlVector< FloatInputMaterialVariable_t > m_MaterialFloatVars; // 0x12d0 + CUtlVector< FloatInputMaterialVariable_t > m_MaterialFloatVars; // 0x1358 private: - [[maybe_unused]] uint8_t __pad12e8[0x18]; // 0x12e8 + [[maybe_unused]] uint8_t __pad1370[0x18]; // 0x1370 public: // MPropertyFriendlyName "material vector variables" - CUtlVector< VecInputMaterialVariable_t > m_MaterialVecVars; // 0x1300 -}; - -// Alignment: 0 -// Size: 0x48 -class CPulseCell_Step_TestDomainCreateFakeEntity : public CPulseCell_BaseFlow -{ -public: - // No members available + CUtlVector< VecInputMaterialVariable_t > m_MaterialVecVars; // 0x1388 }; // Alignment: 9 -// Size: 0x380 +// Size: 0x330 class C_INIT_InitFromCPSnapshot : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "snapshot control point number" - int32_t m_nControlPointNumber; // 0x220 + int32_t m_nControlPointNumber; // 0x1c0 // MPropertyFriendlyName "field to read" // MPropertyAttributeChoiceName "particlefield" - ParticleAttributeIndex_t m_nAttributeToRead; // 0x224 + ParticleAttributeIndex_t m_nAttributeToRead; // 0x1c4 // MPropertyFriendlyName "field to write" // MPropertyAttributeChoiceName "particlefield" - ParticleAttributeIndex_t m_nAttributeToWrite; // 0x228 + ParticleAttributeIndex_t m_nAttributeToWrite; // 0x1c8 // MPropertyFriendlyName "local space control point number" - int32_t m_nLocalSpaceCP; // 0x22c + int32_t m_nLocalSpaceCP; // 0x1cc // MPropertyFriendlyName "random order" - bool m_bRandom; // 0x230 + bool m_bRandom; // 0x1d0 // MPropertyFriendlyName "reverse order" - bool m_bReverse; // 0x231 + bool m_bReverse; // 0x1d1 private: - [[maybe_unused]] uint8_t __pad0232[0x6]; // 0x232 + [[maybe_unused]] uint8_t __pad01d2[0x6]; // 0x1d2 public: // MPropertyFriendlyName "Snapshot increment amount" - CParticleCollectionFloatInput m_nSnapShotIncrement; // 0x238 + CParticleCollectionFloatInput m_nSnapShotIncrement; // 0x1d8 // MPropertyFriendlyName "random seed" - int32_t m_nRandomSeed; // 0x378 + int32_t m_nRandomSeed; // 0x328 // MPropertyFriendlyName "local space angles" - bool m_bLocalSpaceAngles; // 0x37c + bool m_bLocalSpaceAngles; // 0x32c }; // Alignment: 0 -// Size: 0x5e8 +// Size: 0x638 class CParticleCollectionRendererVecInput : public CParticleCollectionVecInput { public: @@ -19558,7 +15760,7 @@ public: }; // Alignment: 0 -// Size: 0x270 +// Size: 0x210 class C_OP_RemapNamedModelSequenceEndCap : public C_OP_RemapNamedModelElementEndCap { public: @@ -19566,221 +15768,213 @@ public: }; // Alignment: 3 -// Size: 0x370 +// Size: 0x320 class C_INIT_PlaneCull : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "control point of plane" - int32_t m_nControlPoint; // 0x220 + int32_t m_nControlPoint; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0224[0x4]; // 0x224 + [[maybe_unused]] uint8_t __pad01c4[0x4]; // 0x1c4 public: // MPropertyFriendlyName "cull offset" - CParticleCollectionFloatInput m_flDistance; // 0x228 + CParticleCollectionFloatInput m_flDistance; // 0x1c8 // MPropertyFriendlyName "flip cull normal" - bool m_bCullInside; // 0x368 + bool m_bCullInside; // 0x318 }; // Alignment: 10 -// Size: 0x2d0 +// Size: 0x2a0 class C_OP_PercentageBetweenTransforms : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 // MPropertyFriendlyName "percentage minimum" - float m_flInputMin; // 0x214 + float m_flInputMin; // 0x1b4 // MPropertyFriendlyName "percentage maximum" - float m_flInputMax; // 0x218 + float m_flInputMax; // 0x1b8 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x21c + float m_flOutputMin; // 0x1bc // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x220 + float m_flOutputMax; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0224[0x4]; // 0x224 + [[maybe_unused]] uint8_t __pad01c4[0x4]; // 0x1c4 public: // MPropertyFriendlyName "strarting transform" - CParticleTransformInput m_TransformStart; // 0x228 + CParticleTransformInput m_TransformStart; // 0x1c8 // MPropertyFriendlyName "end transform" - CParticleTransformInput m_TransformEnd; // 0x278 + CParticleTransformInput m_TransformEnd; // 0x230 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x2c8 + ParticleSetMethod_t m_nSetMethod; // 0x298 // MPropertyFriendlyName "only active within input range" - bool m_bActiveRange; // 0x2cc + bool m_bActiveRange; // 0x29c // MPropertyFriendlyName "treat distance between points as radius" - bool m_bRadialCheck; // 0x2cd + bool m_bRadialCheck; // 0x29d }; // Alignment: 6 -// Size: 0xf40 +// Size: 0xf90 class C_OP_SetControlPointFieldFromVectorExpression : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "expression" - VectorFloatExpressionType_t m_nExpression; // 0x220 + VectorFloatExpressionType_t m_nExpression; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0224[0x4]; // 0x224 + [[maybe_unused]] uint8_t __pad01c4[0x4]; // 0x1c4 public: // MPropertyFriendlyName "input 1" - CParticleCollectionVecInput m_vecInput1; // 0x228 + CParticleCollectionVecInput m_vecInput1; // 0x1c8 // MPropertyFriendlyName "input 2" - CParticleCollectionVecInput m_vecInput2; // 0x810 + CParticleCollectionVecInput m_vecInput2; // 0x800 // MPropertyFriendlyName "output" - CParticleRemapFloatInput m_flOutputRemap; // 0xdf8 + CParticleRemapFloatInput m_flOutputRemap; // 0xe38 // MPropertyFriendlyName "output control point" - int32_t m_nOutputCP; // 0xf38 + int32_t m_nOutputCP; // 0xf88 // MPropertyFriendlyName "output component" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nOutVectorField; // 0xf3c + int32_t m_nOutVectorField; // 0xf8c }; // Alignment: 9 -// Size: 0x230 +// Size: 0x1d0 class C_OP_DifferencePreviousParticle : public CParticleFunctionOperator { public: // MPropertyFriendlyName "input field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldInput; // 0x210 + ParticleAttributeIndex_t m_nFieldInput; // 0x1b0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 // MPropertyFriendlyName "difference minimum" - float m_flInputMin; // 0x218 + float m_flInputMin; // 0x1b8 // MPropertyFriendlyName "difference maximum" - float m_flInputMax; // 0x21c + float m_flInputMax; // 0x1bc // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x220 + float m_flOutputMin; // 0x1c0 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x224 + float m_flOutputMax; // 0x1c4 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x228 + ParticleSetMethod_t m_nSetMethod; // 0x1c8 // MPropertyFriendlyName "only active within specified difference" - bool m_bActiveRange; // 0x22c + bool m_bActiveRange; // 0x1cc // MPropertyFriendlyName "also set ouput to previous particle" - bool m_bSetPreviousParticle; // 0x22d + bool m_bSetPreviousParticle; // 0x1cd }; // Alignment: 3 -// Size: 0x240 +// Size: 0x1e0 class C_OP_SetControlPointToHMD : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "control point number" - int32_t m_nCP1; // 0x220 + int32_t m_nCP1; // 0x1c0 // MPropertyFriendlyName "control point offset" // MVectorIsCoordinate - Vector m_vecCP1Pos; // 0x224 + Vector m_vecCP1Pos; // 0x1c4 // MPropertyFriendlyName "use hmd orientation" - bool m_bOrientToHMD; // 0x230 + bool m_bOrientToHMD; // 0x1d0 }; // Alignment: 3 -// Size: 0x4a0 +// Size: 0x460 class C_OP_ClampScalar : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "output minimum" - CPerParticleFloatInput m_flOutputMin; // 0x218 + CPerParticleFloatInput m_flOutputMin; // 0x1b8 // MPropertyFriendlyName "output maximum" - CPerParticleFloatInput m_flOutputMax; // 0x358 + CPerParticleFloatInput m_flOutputMax; // 0x308 }; // Alignment: 13 -// Size: 0x2e0 +// Size: 0x280 class C_INIT_InitialRepulsionVelocity : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "collision group" - char m_CollisionGroupName[128]; // 0x220 + char m_CollisionGroupName[128]; // 0x1c0 // MPropertyFriendlyName "Trace Set" - ParticleTraceSet_t m_nTraceSet; // 0x2a0 + ParticleTraceSet_t m_nTraceSet; // 0x240 // MPropertyFriendlyName "minimum velocity" // MVectorIsCoordinate - Vector m_vecOutputMin; // 0x2a4 + Vector m_vecOutputMin; // 0x244 // MPropertyFriendlyName "maximum velocity" // MVectorIsCoordinate - Vector m_vecOutputMax; // 0x2b0 + Vector m_vecOutputMax; // 0x250 // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x2bc + int32_t m_nControlPointNumber; // 0x25c // MPropertyFriendlyName "per particle world collision tests" - bool m_bPerParticle; // 0x2c0 + bool m_bPerParticle; // 0x260 // MPropertyFriendlyName "offset instead of accelerate" - bool m_bTranslate; // 0x2c1 + bool m_bTranslate; // 0x261 // MPropertyFriendlyName "offset proportional to radius 0/1" - bool m_bProportional; // 0x2c2 + bool m_bProportional; // 0x262 private: - [[maybe_unused]] uint8_t __pad02c3[0x1]; // 0x2c3 + [[maybe_unused]] uint8_t __pad0263[0x1]; // 0x263 public: // MPropertyFriendlyName "trace length" - float m_flTraceLength; // 0x2c4 + float m_flTraceLength; // 0x264 // MPropertyFriendlyName "use radius for per particle trace length" - bool m_bPerParticleTR; // 0x2c8 + bool m_bPerParticleTR; // 0x268 // MPropertyFriendlyName "inherit from parent" - bool m_bInherit; // 0x2c9 + bool m_bInherit; // 0x269 private: - [[maybe_unused]] uint8_t __pad02ca[0x2]; // 0x2ca + [[maybe_unused]] uint8_t __pad026a[0x2]; // 0x26a public: // MPropertyFriendlyName "control points to broadcast to children (n + 1)" - int32_t m_nChildCP; // 0x2cc + int32_t m_nChildCP; // 0x26c // MPropertyFriendlyName "child group ID to affect" - int32_t m_nChildGroupID; // 0x2d0 -}; - -// Alignment: 1 -// Size: 0x4 -struct PulseRuntimeOutputIndex_t -{ -public: - int32_t m_Value; // 0x0 + int32_t m_nChildGroupID; // 0x270 }; // Alignment: 4 -// Size: 0x360 +// Size: 0x310 class C_OP_LerpScalar : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "value to lerp to" - CPerParticleFloatInput m_flOutput; // 0x218 + CPerParticleFloatInput m_flOutput; // 0x1b8 // MPropertyFriendlyName "start time" - float m_flStartTime; // 0x358 + float m_flStartTime; // 0x308 // MPropertyFriendlyName "end time" - float m_flEndTime; // 0x35c + float m_flEndTime; // 0x30c }; // Alignment: 6 -// Size: 0x4a0 +// Size: 0x460 class C_OP_MovementMoveAlongSkinnedCPSnapshot : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x210 + int32_t m_nControlPointNumber; // 0x1b0 // MPropertyFriendlyName "snapshot control point number" - int32_t m_nSnapshotControlPointNumber; // 0x214 + int32_t m_nSnapshotControlPointNumber; // 0x1b4 // MPropertyFriendlyName "set normal" - bool m_bSetNormal; // 0x218 + bool m_bSetNormal; // 0x1b8 // MPropertyFriendlyName "set radius" - bool m_bSetRadius; // 0x219 + bool m_bSetRadius; // 0x1b9 private: - [[maybe_unused]] uint8_t __pad021a[0x6]; // 0x21a + [[maybe_unused]] uint8_t __pad01ba[0x6]; // 0x1ba public: // MPropertyFriendlyName "Interpolation" - CPerParticleFloatInput m_flInterpolation; // 0x220 + CPerParticleFloatInput m_flInterpolation; // 0x1c0 // MPropertyFriendlyName "Snapshot Index T Value" - CPerParticleFloatInput m_flTValue; // 0x360 + CPerParticleFloatInput m_flTValue; // 0x310 }; // Alignment: 9 @@ -19789,235 +15983,227 @@ class C_INIT_SetHitboxToModel : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x220 + int32_t m_nControlPointNumber; // 0x1c0 // MPropertyFriendlyName "force to be inside model" - int32_t m_nForceInModel; // 0x224 + int32_t m_nForceInModel; // 0x1c4 // MPropertyFriendlyName "desired hitbox" - int32_t m_nDesiredHitbox; // 0x228 + int32_t m_nDesiredHitbox; // 0x1c8 private: - [[maybe_unused]] uint8_t __pad022c[0x4]; // 0x22c + [[maybe_unused]] uint8_t __pad01cc[0x4]; // 0x1cc public: // MPropertyFriendlyName "model hitbox scale" - CParticleCollectionVecInput m_vecHitBoxScale; // 0x230 + CParticleCollectionVecInput m_vecHitBoxScale; // 0x1d0 // MPropertyFriendlyName "direction bias" // MVectorIsCoordinate - Vector m_vecDirectionBias; // 0x818 + Vector m_vecDirectionBias; // 0x808 // MPropertyFriendlyName "maintain existing hitbox" - bool m_bMaintainHitbox; // 0x824 + bool m_bMaintainHitbox; // 0x814 // MPropertyFriendlyName "use bones instead of hitboxes" - bool m_bUseBones; // 0x825 + bool m_bUseBones; // 0x815 // MPropertyFriendlyName "hitbox set" - char m_HitboxSetName[128]; // 0x826 + char m_HitboxSetName[128]; // 0x816 private: - [[maybe_unused]] uint8_t __pad08a6[0x2]; // 0x8a6 + [[maybe_unused]] uint8_t __pad0896[0x2]; // 0x896 public: // MPropertyFriendlyName "hitbox shell thickness" - CParticleCollectionFloatInput m_flShellSize; // 0x8a8 + CParticleCollectionFloatInput m_flShellSize; // 0x898 }; // Alignment: 5 -// Size: 0x820 +// Size: 0x810 class C_INIT_InitVec : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "value" - CPerParticleVecInput m_InputValue; // 0x220 + CPerParticleVecInput m_InputValue; // 0x1c0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nOutputField; // 0x808 + ParticleAttributeIndex_t m_nOutputField; // 0x7f8 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x80c + ParticleSetMethod_t m_nSetMethod; // 0x7fc // MPropertyFriendlyName "normalize result" - bool m_bNormalizedOutput; // 0x810 + bool m_bNormalizedOutput; // 0x800 // MPropertyFriendlyName "set previous position" // MPropertySuppressExpr "m_nOutputField != PARTICLE_ATTRIBUTE_XYZ" - bool m_bWritePreviousPosition; // 0x811 + bool m_bWritePreviousPosition; // 0x801 }; // Alignment: 2 -// Size: 0x220 +// Size: 0x1c0 class C_OP_RemapDensityGradientToVectorAttribute : public CParticleFunctionOperator { public: // MPropertyFriendlyName "Radius scale for particle influence" - float m_flRadiusScale; // 0x210 + float m_flRadiusScale; // 0x1b0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 }; // Alignment: 1 -// Size: 0x220 +// Size: 0x1c0 class C_OP_AlphaDecay : public CParticleFunctionOperator { public: // MPropertyFriendlyName "minimum alpha" - float m_flMinAlpha; // 0x210 -}; - -// Alignment: 1 -// Size: 0x60 -class CPulseCell_Outflow_CycleShuffled : public CPulseCell_BaseFlow -{ -public: - CUtlVector< CPulse_OutflowConnection > m_Outputs; // 0x48 + float m_flMinAlpha; // 0x1b0 }; // Alignment: 8 -// Size: 0x230 +// Size: 0x1d0 class C_OP_SequenceFromModel : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x210 + int32_t m_nControlPointNumber; // 0x1b0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 // MPropertyFriendlyName "current anim time output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutputAnim; // 0x218 + ParticleAttributeIndex_t m_nFieldOutputAnim; // 0x1b8 // MPropertyFriendlyName "input minimum" - float m_flInputMin; // 0x21c + float m_flInputMin; // 0x1bc // MPropertyFriendlyName "input maximum" - float m_flInputMax; // 0x220 + float m_flInputMax; // 0x1c0 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x224 + float m_flOutputMin; // 0x1c4 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x228 + float m_flOutputMax; // 0x1c8 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x22c + ParticleSetMethod_t m_nSetMethod; // 0x1cc }; // Alignment: 3 -// Size: 0x5d0 +// Size: 0x5a0 class C_OP_ColorAdjustHSL : public CParticleFunctionOperator { public: // MPropertyFriendlyName "hue adjust" - CPerParticleFloatInput m_flHueAdjust; // 0x210 + CPerParticleFloatInput m_flHueAdjust; // 0x1b0 // MPropertyFriendlyName "saturation adjust" - CPerParticleFloatInput m_flSaturationAdjust; // 0x350 + CPerParticleFloatInput m_flSaturationAdjust; // 0x300 // MPropertyFriendlyName "lightness adjust" - CPerParticleFloatInput m_flLightnessAdjust; // 0x490 + CPerParticleFloatInput m_flLightnessAdjust; // 0x450 }; // Alignment: 6 -// Size: 0x230 +// Size: 0x1d0 class C_OP_FadeAndKillForTracers : public CParticleFunctionOperator { public: // MPropertyFriendlyName "start fade in time" - float m_flStartFadeInTime; // 0x210 + float m_flStartFadeInTime; // 0x1b0 // MPropertyFriendlyName "end fade in time" - float m_flEndFadeInTime; // 0x214 + float m_flEndFadeInTime; // 0x1b4 // MPropertyFriendlyName "start fade out time" - float m_flStartFadeOutTime; // 0x218 + float m_flStartFadeOutTime; // 0x1b8 // MPropertyFriendlyName "end fade out time" - float m_flEndFadeOutTime; // 0x21c + float m_flEndFadeOutTime; // 0x1bc // MPropertyFriendlyName "start alpha" - float m_flStartAlpha; // 0x220 + float m_flStartAlpha; // 0x1c0 // MPropertyFriendlyName "end alpha" - float m_flEndAlpha; // 0x224 + float m_flEndAlpha; // 0x1c4 }; // Alignment: 6 -// Size: 0x230 +// Size: 0x1d0 class C_OP_Noise : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x214 + float m_flOutputMin; // 0x1b4 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x218 + float m_flOutputMax; // 0x1b8 // MPropertyFriendlyName "noise coordinate scale" - float m_fl4NoiseScale; // 0x21c + float m_fl4NoiseScale; // 0x1bc // MPropertyFriendlyName "additive" - bool m_bAdditive; // 0x220 + bool m_bAdditive; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0221[0x3]; // 0x221 + [[maybe_unused]] uint8_t __pad01c1[0x3]; // 0x1c1 public: // MPropertyFriendlyName "Noise animation time scale" - float m_flNoiseAnimationTimeScale; // 0x224 + float m_flNoiseAnimationTimeScale; // 0x1c4 }; // Alignment: 2 -// Size: 0x490 +// Size: 0x450 class C_OP_CollideWithSelf : public CParticleFunctionConstraint { public: // MPropertyFriendlyName "particle radius scale" - CPerParticleFloatInput m_flRadiusScale; // 0x210 + CPerParticleFloatInput m_flRadiusScale; // 0x1b0 // MPropertyFriendlyName "minimum speed for check" - CPerParticleFloatInput m_flMinimumSpeed; // 0x350 + CPerParticleFloatInput m_flMinimumSpeed; // 0x300 }; // Alignment: 4 -// Size: 0x220 +// Size: 0x1c0 class C_OP_LagCompensation : public CParticleFunctionOperator { public: // MPropertyFriendlyName "desired velocity CP" - int32_t m_nDesiredVelocityCP; // 0x210 + int32_t m_nDesiredVelocityCP; // 0x1b0 // MPropertyFriendlyName "latency CP" - int32_t m_nLatencyCP; // 0x214 + int32_t m_nLatencyCP; // 0x1b4 // MPropertyFriendlyName "latency CP field" - int32_t m_nLatencyCPField; // 0x218 + int32_t m_nLatencyCPField; // 0x1b8 // MPropertyFriendlyName "desired velocity CP field override(for speed only)" - int32_t m_nDesiredVelocityCPField; // 0x21c + int32_t m_nDesiredVelocityCPField; // 0x1bc }; // Alignment: 17 -// Size: 0x260 +// Size: 0x200 class C_INIT_InitSkinnedPositionFromCPSnapshot : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "snapshot control point number" - int32_t m_nSnapshotControlPointNumber; // 0x220 + int32_t m_nSnapshotControlPointNumber; // 0x1c0 // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x224 + int32_t m_nControlPointNumber; // 0x1c4 // MPropertyFriendlyName "random order" - bool m_bRandom; // 0x228 + bool m_bRandom; // 0x1c8 private: - [[maybe_unused]] uint8_t __pad0229[0x3]; // 0x229 + [[maybe_unused]] uint8_t __pad01c9[0x3]; // 0x1c9 public: // MPropertyFriendlyName "random seed" - int32_t m_nRandomSeed; // 0x22c + int32_t m_nRandomSeed; // 0x1cc // MPropertyFriendlyName "prepare for rigid lock" - bool m_bRigid; // 0x230 + bool m_bRigid; // 0x1d0 // MPropertyFriendlyName "set normal" - bool m_bSetNormal; // 0x231 + bool m_bSetNormal; // 0x1d1 // MPropertyFriendlyName "normal velocity ignore delta time" - bool m_bIgnoreDt; // 0x232 + bool m_bIgnoreDt; // 0x1d2 private: - [[maybe_unused]] uint8_t __pad0233[0x1]; // 0x233 + [[maybe_unused]] uint8_t __pad01d3[0x1]; // 0x1d3 public: // MPropertyFriendlyName "normal velocity min" - float m_flMinNormalVelocity; // 0x234 + float m_flMinNormalVelocity; // 0x1d4 // MPropertyFriendlyName "normal velocity max" - float m_flMaxNormalVelocity; // 0x238 + float m_flMaxNormalVelocity; // 0x1d8 // MPropertyFriendlyName "particle increment amount" - float m_flIncrement; // 0x23c + float m_flIncrement; // 0x1dc // MPropertyFriendlyName "Full Loop Increment Amount" - int32_t m_nFullLoopIncrement; // 0x240 + int32_t m_nFullLoopIncrement; // 0x1e0 // MPropertyFriendlyName "Snapshot start point" - int32_t m_nSnapShotStartPoint; // 0x244 + int32_t m_nSnapShotStartPoint; // 0x1e4 // MPropertyFriendlyName "inherited bone velocity" - float m_flBoneVelocity; // 0x248 + float m_flBoneVelocity; // 0x1e8 // MPropertyFriendlyName "max inherited bone velocity" - float m_flBoneVelocityMax; // 0x24c + float m_flBoneVelocityMax; // 0x1ec // MPropertyFriendlyName "Set Color" - bool m_bCopyColor; // 0x250 + bool m_bCopyColor; // 0x1f0 // MPropertyFriendlyName "Set Alpha" - bool m_bCopyAlpha; // 0x251 + bool m_bCopyAlpha; // 0x1f1 // MPropertyFriendlyName "Set Radius" - bool m_bSetRadius; // 0x252 + bool m_bSetRadius; // 0x1f2 }; // Alignment: 0 -// Size: 0x270 +// Size: 0x210 class C_INIT_RemapParticleCountToNamedModelBodyPartScalar : public C_INIT_RemapParticleCountToNamedModelElementScalar { public: @@ -20025,101 +16211,85 @@ public: }; // Alignment: 7 -// Size: 0x380 +// Size: 0x330 class C_OP_RotateVector : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 // MPropertyFriendlyName "rotation axis min" // MVectorIsCoordinate - Vector m_vecRotAxisMin; // 0x214 + Vector m_vecRotAxisMin; // 0x1b4 // MPropertyFriendlyName "rotation axis max" // MVectorIsCoordinate - Vector m_vecRotAxisMax; // 0x220 + Vector m_vecRotAxisMax; // 0x1c0 // MPropertyFriendlyName "rotation rate min" - float m_flRotRateMin; // 0x22c + float m_flRotRateMin; // 0x1cc // MPropertyFriendlyName "rotation rate max" - float m_flRotRateMax; // 0x230 + float m_flRotRateMax; // 0x1d0 // MPropertyFriendlyName "normalize output" - bool m_bNormalize; // 0x234 + bool m_bNormalize; // 0x1d4 private: - [[maybe_unused]] uint8_t __pad0235[0x3]; // 0x235 + [[maybe_unused]] uint8_t __pad01d5[0x3]; // 0x1d5 public: // MPropertyFriendlyName "per particle scale" - CPerParticleFloatInput m_flScale; // 0x238 -}; - -// Alignment: 5 -// Size: 0x108 -class CPulseGraphInstance_TestDomain : public CBasePulseGraphInstance -{ -public: - bool m_bIsRunningUnitTests; // 0xd0 - bool m_bExplicitTimeStepping; // 0xd1 - bool m_bExpectingToDestroyWithYieldedCursors; // 0xd2 -private: - [[maybe_unused]] uint8_t __pad00d3[0x1]; // 0xd3 -public: - int32_t m_nNextValidateIndex; // 0xd4 - CUtlVector< CUtlString > m_Tracepoints; // 0xd8 - - // Static fields: - static double &Get_s_flExplicitCurTime(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("!GlobalTypes")->FindDeclaredClass("CPulseGraphInstance_TestDomain")->m_static_fields[0]->m_instance);}; + CPerParticleFloatInput m_flScale; // 0x1d8 }; // Alignment: 2 -// Size: 0x220 +// Size: 0x1c0 class C_OP_ConnectParentParticleToNearest : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point to set" - int32_t m_nFirstControlPoint; // 0x210 + int32_t m_nFirstControlPoint; // 0x1b0 // MPropertyFriendlyName "Second Control point to set" - int32_t m_nSecondControlPoint; // 0x214 + int32_t m_nSecondControlPoint; // 0x1b4 }; -// Alignment: 13 -// Size: 0x1130 +// Alignment: 14 +// Size: 0x11a0 class C_OP_RenderOmni2Light : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "Type" - ParticleOmni2LightTypeChoiceList_t m_nLightType; // 0x260 + ParticleOmni2LightTypeChoiceList_t m_nLightType; // 0x200 private: - [[maybe_unused]] uint8_t __pad0264[0x4]; // 0x264 + [[maybe_unused]] uint8_t __pad0204[0x4]; // 0x204 public: // MPropertyFriendlyName "Color Blend" - CParticleCollectionVecInput m_vColorBlend; // 0x268 + CParticleCollectionVecInput m_vColorBlend; // 0x208 // MPropertyFriendlyName "Color Blend Type" // MPropertySortPriority "700" - ParticleColorBlendType_t m_nColorBlendType; // 0x850 - ParticleLightUnitChoiceList_t m_nBrightnessUnit; // 0x854 + ParticleColorBlendType_t m_nColorBlendType; // 0x840 + ParticleLightUnitChoiceList_t m_nBrightnessUnit; // 0x844 // MPropertyFriendlyName "Lumens" // MPropertySuppressExpr "m_nBrightnessUnit != PARTICLE_LIGHT_UNIT_LUMENS" - CPerParticleFloatInput m_flBrightnessLumens; // 0x858 + CPerParticleFloatInput m_flBrightnessLumens; // 0x848 // MPropertyFriendlyName "Candelas" // MPropertySuppressExpr "m_nBrightnessUnit != PARTICLE_LIGHT_UNIT_CANDELAS" CPerParticleFloatInput m_flBrightnessCandelas; // 0x998 // MPropertyFriendlyName "Shadows" // MPropertySuppressExpr "mod == csgo" - bool m_bCastShadows; // 0xad8 + bool m_bCastShadows; // 0xae8 private: - [[maybe_unused]] uint8_t __pad0ad9[0x7]; // 0xad9 + [[maybe_unused]] uint8_t __pad0ae9[0x7]; // 0xae9 public: // MPropertyFriendlyName "Light Radius" - CPerParticleFloatInput m_flLuminaireRadius; // 0xae0 + CPerParticleFloatInput m_flLuminaireRadius; // 0xaf0 // MPropertyFriendlyName "Skirt" - CPerParticleFloatInput m_flSkirt; // 0xc20 + CPerParticleFloatInput m_flSkirt; // 0xc40 // MPropertyFriendlyName "Range" - CPerParticleFloatInput m_flRange; // 0xd60 + CPerParticleFloatInput m_flRange; // 0xd90 // MPropertyFriendlyName "Inner Cone Angle" - CPerParticleFloatInput m_flInnerConeAngle; // 0xea0 + CPerParticleFloatInput m_flInnerConeAngle; // 0xee0 // MPropertyFriendlyName "Outer Cone Angle" - CPerParticleFloatInput m_flOuterConeAngle; // 0xfe0 + CPerParticleFloatInput m_flOuterConeAngle; // 0x1030 // MPropertyFriendlyName "Cookie" - CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightCookie; // 0x1120 + CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightCookie; // 0x1180 + // MPropertyFriendlyName "Cookie is Spherically Mapped" + bool m_bSphericalCookie; // 0x1188 }; // Alignment: 1 @@ -20130,90 +16300,40 @@ public: int32_t unused; // 0x0 }; -// Alignment: 10 -// Size: 0x138 -class CPulseCell_Inflow_Method : public CPulseCell_Inflow_BaseEntrypoint -{ -public: - CUtlSymbolLarge m_MethodName; // 0x70 - CUtlString m_Description; // 0x78 - bool m_bIsPublic; // 0x80 -private: - [[maybe_unused]] uint8_t __pad0081[0x7]; // 0x81 -public: - // MFgdFromSchemaCompletelySkipField - CPulseValueFullType m_ReturnType; // 0x88 - CKV3MemberNameWithStorage m_Arg0Name; // 0x98 - CUtlString m_Arg0Description; // 0xd0 - // MFgdFromSchemaCompletelySkipField - CPulseValueFullType m_Arg0Type; // 0xd8 - CKV3MemberNameWithStorage m_Arg1Name; // 0xe8 - CUtlString m_Arg1Description; // 0x120 - // MFgdFromSchemaCompletelySkipField - CPulseValueFullType m_Arg1Type; // 0x128 -}; - -// Alignment: 5 -// Size: 0x38 -class CPulse_Variable -{ -public: - CUtlSymbolLarge m_Name; // 0x0 - CUtlString m_Description; // 0x8 - CPulseValueFullType m_Type; // 0x10 - KeyValues3 m_DefaultValue; // 0x20 -private: - [[maybe_unused]] uint8_t __pad0030[0x2]; // 0x30 -public: - bool m_bIsPublic; // 0x32 -}; - // Alignment: 0 -// Size: 0x250 +// Size: 0x1f0 class C_INIT_RandomNamedModelBodyPart : public C_INIT_RandomNamedModelElement { public: // No members available }; -// Alignment: 3 -// Size: 0x30 -class CPulse_InvokeBinding -{ -public: - PulseRegisterMap_t m_RegisterMap; // 0x0 - CUtlSymbolLarge m_FuncName; // 0x20 - PulseRuntimeCellIndex_t m_nCellIndex; // 0x28 -}; - // Alignment: 0 // Size: 0x8 class IParticleEffect { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: - // No members available + uint8_t __pad0000[0x8]; // Autoaligned }; // Alignment: 5 -// Size: 0x240 +// Size: 0x1e0 class C_INIT_CreateFromParentParticles : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "inherited velocity scale" - float m_flVelocityScale; // 0x220 + float m_flVelocityScale; // 0x1c0 // MPropertyFriendlyName "particle increment amount" - float m_flIncrement; // 0x224 + float m_flIncrement; // 0x1c4 // MPropertyFriendlyName "random parent particle distribution" - bool m_bRandomDistribution; // 0x228 + bool m_bRandomDistribution; // 0x1c8 private: - [[maybe_unused]] uint8_t __pad0229[0x3]; // 0x229 + [[maybe_unused]] uint8_t __pad01c9[0x3]; // 0x1c9 public: // MPropertyFriendlyName "random seed" - int32_t m_nRandomSeed; // 0x22c + int32_t m_nRandomSeed; // 0x1cc // MPropertyFriendlyName "sub frame interpolation" - bool m_bSubFrame; // 0x230 + bool m_bSubFrame; // 0x1d0 }; // Alignment: 5 @@ -20222,125 +16342,119 @@ class C_OP_SetVec : public CParticleFunctionOperator { public: // MPropertyFriendlyName "value" - CPerParticleVecInput m_InputValue; // 0x210 + CPerParticleVecInput m_InputValue; // 0x1b0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nOutputField; // 0x7f8 + ParticleAttributeIndex_t m_nOutputField; // 0x7e8 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x7fc + ParticleSetMethod_t m_nSetMethod; // 0x7ec // MPropertyFriendlyName "interpolation" - CPerParticleFloatInput m_Lerp; // 0x800 + CPerParticleFloatInput m_Lerp; // 0x7f0 // MPropertyFriendlyName "normalize result" bool m_bNormalizedOutput; // 0x940 }; // Alignment: 3 -// Size: 0x230 +// Size: 0x1d0 class C_OP_MovementMaintainOffset : public CParticleFunctionOperator { public: // MPropertyFriendlyName "desired offset" // MVectorIsCoordinate - Vector m_vecOffset; // 0x210 + Vector m_vecOffset; // 0x1b0 // MPropertyFriendlyName "local space CP" - int32_t m_nCP; // 0x21c + int32_t m_nCP; // 0x1bc // MPropertyFriendlyName "scale by radius" - bool m_bRadiusScale; // 0x220 -}; - -// Alignment: 1 -// Size: 0x4 -struct PulseRuntimeInvokeIndex_t -{ -public: - int32_t m_Value; // 0x0 + bool m_bRadiusScale; // 0x1c0 }; // Alignment: 0 -// Size: 0x270 +// Size: 0x210 class C_OP_RemapNamedModelBodyPartOnceTimed : public C_OP_RemapNamedModelElementOnceTimed { public: // No members available }; -// Alignment: 14 -// Size: 0x9e0 +// Alignment: 15 +// Size: 0xab0 class C_OP_LockToBone : public CParticleFunctionOperator { public: - // MPropertyFriendlyName "control_point_number" - int32_t m_nControlPointNumber; // 0x210 + // MPropertyFriendlyName "model input" + CParticleModelInput m_modelInput; // 0x1b0 + // MPropertyFriendlyName "transform input" + CParticleTransformInput m_transformInput; // 0x210 // MPropertyFriendlyName "lifetime fade start" - float m_flLifeTimeFadeStart; // 0x214 + float m_flLifeTimeFadeStart; // 0x278 // MPropertyFriendlyName "lifetime fade end" - float m_flLifeTimeFadeEnd; // 0x218 + float m_flLifeTimeFadeEnd; // 0x27c // MPropertyFriendlyName "instant jump threshold" - float m_flJumpThreshold; // 0x21c + float m_flJumpThreshold; // 0x280 // MPropertyFriendlyName "previous position scale" - float m_flPrevPosScale; // 0x220 + float m_flPrevPosScale; // 0x284 // MPropertyFriendlyName "hitbox set" - char m_HitboxSetName[128]; // 0x224 + char m_HitboxSetName[128]; // 0x288 // MPropertyFriendlyName "rigid lock" - bool m_bRigid; // 0x2a4 + bool m_bRigid; // 0x308 // MPropertyFriendlyName "use bones instead of hitboxes" - bool m_bUseBones; // 0x2a5 + bool m_bUseBones; // 0x309 private: - [[maybe_unused]] uint8_t __pad02a6[0x2]; // 0x2a6 + [[maybe_unused]] uint8_t __pad030a[0x2]; // 0x30a public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x2a8 + ParticleAttributeIndex_t m_nFieldOutput; // 0x30c // MPropertyFriendlyName "output field prev" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutputPrev; // 0x2ac + ParticleAttributeIndex_t m_nFieldOutputPrev; // 0x310 // MPropertyStartGroup "Set Rotations to Bones" // MPropertyFriendlyName "lock rotations to bone orientation" - ParticleRotationLockType_t m_nRotationSetType; // 0x2b0 + ParticleRotationLockType_t m_nRotationSetType; // 0x314 // MPropertyFriendlyName "rigid set rotation from bones" - bool m_bRigidRotationLock; // 0x2b4 + bool m_bRigidRotationLock; // 0x318 private: - [[maybe_unused]] uint8_t __pad02b5[0x3]; // 0x2b5 + [[maybe_unused]] uint8_t __pad0319[0x7]; // 0x319 public: // MPropertyFriendlyName "rigid rotation offset pitch/yaw/roll" - CPerParticleVecInput m_vecRotation; // 0x2b8 + CPerParticleVecInput m_vecRotation; // 0x320 // MPropertyFriendlyName "rigid rotation interpolation" - CPerParticleFloatInput m_flRotLerp; // 0x8a0 + CPerParticleFloatInput m_flRotLerp; // 0x958 }; // Alignment: 12 -// Size: 0x2e0 +// Size: 0x2b0 class C_OP_PercentageBetweenTransformLerpCPs : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 // MPropertyFriendlyName "percentage minimum" - float m_flInputMin; // 0x214 + float m_flInputMin; // 0x1b4 // MPropertyFriendlyName "percentage maximum" - float m_flInputMax; // 0x218 + float m_flInputMax; // 0x1b8 private: - [[maybe_unused]] uint8_t __pad021c[0x4]; // 0x21c + [[maybe_unused]] uint8_t __pad01bc[0x4]; // 0x1bc public: // MPropertyFriendlyName "strarting transform" - CParticleTransformInput m_TransformStart; // 0x220 + CParticleTransformInput m_TransformStart; // 0x1c0 // MPropertyFriendlyName "end transform" - CParticleTransformInput m_TransformEnd; // 0x270 + CParticleTransformInput m_TransformEnd; // 0x228 // MPropertyFriendlyName "output starting control point number" - int32_t m_nOutputStartCP; // 0x2c0 + int32_t m_nOutputStartCP; // 0x290 // MPropertyFriendlyName "output starting control point field 0-2 X/Y/Z" - int32_t m_nOutputStartField; // 0x2c4 + int32_t m_nOutputStartField; // 0x294 // MPropertyFriendlyName "output ending control point number" - int32_t m_nOutputEndCP; // 0x2c8 + int32_t m_nOutputEndCP; // 0x298 // MPropertyFriendlyName "output ending control point field 0-2 X/Y/Z" - int32_t m_nOutputEndField; // 0x2cc + int32_t m_nOutputEndField; // 0x29c // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x2d0 + ParticleSetMethod_t m_nSetMethod; // 0x2a0 // MPropertyFriendlyName "only active within input range" - bool m_bActiveRange; // 0x2d4 + bool m_bActiveRange; // 0x2a4 // MPropertyFriendlyName "treat distance between points as radius" - bool m_bRadialCheck; // 0x2d5 + bool m_bRadialCheck; // 0x2a5 }; // Alignment: 3 @@ -20356,145 +16470,127 @@ public: bool m_bOffsetInLocalSpace; // 0x10 }; -// Alignment: 0 -// Size: 0x48 -class CPulseCell_BaseYieldingInflow : public CPulseCell_BaseFlow -{ -public: - // No members available -}; - // Alignment: 3 -// Size: 0x220 +// Size: 0x1c0 class C_OP_DampenToCP : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x210 + int32_t m_nControlPointNumber; // 0x1b0 // MPropertyFriendlyName "falloff range" - float m_flRange; // 0x214 + float m_flRange; // 0x1b4 // MPropertyFriendlyName "dampen scale" - float m_flScale; // 0x218 + float m_flScale; // 0x1b8 }; // Alignment: 9 -// Size: 0x12f0 +// Size: 0x1370 class C_OP_DistanceBetweenVecs : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "first vector" - CPerParticleVecInput m_vecPoint1; // 0x218 + CPerParticleVecInput m_vecPoint1; // 0x1b8 // MPropertyFriendlyName "second vector" - CPerParticleVecInput m_vecPoint2; // 0x800 + CPerParticleVecInput m_vecPoint2; // 0x7f0 // MPropertyFriendlyName "distance minimum" - CPerParticleFloatInput m_flInputMin; // 0xde8 + CPerParticleFloatInput m_flInputMin; // 0xe28 // MPropertyFriendlyName "distance maximum" - CPerParticleFloatInput m_flInputMax; // 0xf28 + CPerParticleFloatInput m_flInputMax; // 0xf78 // MPropertyFriendlyName "output minimum" - CPerParticleFloatInput m_flOutputMin; // 0x1068 + CPerParticleFloatInput m_flOutputMin; // 0x10c8 // MPropertyFriendlyName "output maximum" - CPerParticleFloatInput m_flOutputMax; // 0x11a8 + CPerParticleFloatInput m_flOutputMax; // 0x1218 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x12e8 + ParticleSetMethod_t m_nSetMethod; // 0x1368 // MPropertyFriendlyName "divide by deltatime (for comparing motion since last simulation)" - bool m_bDeltaTime; // 0x12ec + bool m_bDeltaTime; // 0x136c }; // Alignment: 6 -// Size: 0x240 +// Size: 0x1e0 class CGeneralRandomRotation : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "rotation field" // MPropertyAttributeChoiceName "particlefield_rotation" - ParticleAttributeIndex_t m_nFieldOutput; // 0x220 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c0 // MPropertyFriendlyName "rotation initial" - float m_flDegrees; // 0x224 + float m_flDegrees; // 0x1c4 // MPropertyFriendlyName "rotation offset from initial min" - float m_flDegreesMin; // 0x228 + float m_flDegreesMin; // 0x1c8 // MPropertyFriendlyName "rotation offset from initial max" - float m_flDegreesMax; // 0x22c + float m_flDegreesMax; // 0x1cc // MPropertyFriendlyName "rotation offset exponent" - float m_flRotationRandExponent; // 0x230 + float m_flRotationRandExponent; // 0x1d0 // MPropertyFriendlyName "randomly flip direction" - bool m_bRandomlyFlipDirection; // 0x234 + bool m_bRandomlyFlipDirection; // 0x1d4 }; // Alignment: 3 -// Size: 0x220 +// Size: 0x1c0 class C_OP_RemapVectorComponentToScalar : public CParticleFunctionOperator { public: // MPropertyFriendlyName "Input Vector" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldInput; // 0x210 + ParticleAttributeIndex_t m_nFieldInput; // 0x1b0 // MPropertyFriendlyName "Output Scalar" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 // MPropertyFriendlyName "Vector Component" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nComponent; // 0x218 + int32_t m_nComponent; // 0x1b8 }; // Alignment: 8 -// Size: 0x250 +// Size: 0x1f0 class C_INIT_AgeNoise : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "absolute value" - bool m_bAbsVal; // 0x220 + bool m_bAbsVal; // 0x1c0 // MPropertyFriendlyName "invert absolute value" - bool m_bAbsValInv; // 0x221 + bool m_bAbsValInv; // 0x1c1 private: - [[maybe_unused]] uint8_t __pad0222[0x2]; // 0x222 + [[maybe_unused]] uint8_t __pad01c2[0x2]; // 0x1c2 public: // MPropertyFriendlyName "time coordinate offset" - float m_flOffset; // 0x224 + float m_flOffset; // 0x1c4 // MPropertyFriendlyName "start age minimum" - float m_flAgeMin; // 0x228 + float m_flAgeMin; // 0x1c8 // MPropertyFriendlyName "start age maximum" - float m_flAgeMax; // 0x22c + float m_flAgeMax; // 0x1cc // MPropertyFriendlyName "time noise coordinate scale" - float m_flNoiseScale; // 0x230 + float m_flNoiseScale; // 0x1d0 // MPropertyFriendlyName "spatial noise coordinate scale" - float m_flNoiseScaleLoc; // 0x234 + float m_flNoiseScaleLoc; // 0x1d4 // MPropertyFriendlyName "spatial coordinate offset" // MVectorIsCoordinate - Vector m_vecOffsetLoc; // 0x238 -}; - -// Alignment: 0 -// Size: 0x1 -class CPulseTurtleGraphicsLib -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 -public: - // No members available + Vector m_vecOffsetLoc; // 0x1d8 }; // Alignment: 4 -// Size: 0x370 +// Size: 0x320 class C_OP_SetControlPointPositionToRandomActiveCP : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "control point number" - int32_t m_nCP1; // 0x220 + int32_t m_nCP1; // 0x1c0 // MPropertyFriendlyName "min active CP" - int32_t m_nHeadLocationMin; // 0x224 + int32_t m_nHeadLocationMin; // 0x1c4 // MPropertyFriendlyName "max active CP" - int32_t m_nHeadLocationMax; // 0x228 + int32_t m_nHeadLocationMax; // 0x1c8 private: - [[maybe_unused]] uint8_t __pad022c[0x4]; // 0x22c + [[maybe_unused]] uint8_t __pad01cc[0x4]; // 0x1cc public: // MPropertyFriendlyName "reset rate" - CParticleCollectionFloatInput m_flResetRate; // 0x230 + CParticleCollectionFloatInput m_flResetRate; // 0x1d0 }; // Alignment: 1 @@ -20507,57 +16603,57 @@ public: }; // Alignment: 4 -// Size: 0x4c0 +// Size: 0x480 class C_OP_SetFloatCollection : public CParticleFunctionOperator { public: // MPropertyFriendlyName "value" - CParticleCollectionFloatInput m_InputValue; // 0x210 + CParticleCollectionFloatInput m_InputValue; // 0x1b0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nOutputField; // 0x350 + ParticleAttributeIndex_t m_nOutputField; // 0x300 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x354 + ParticleSetMethod_t m_nSetMethod; // 0x304 // MPropertyFriendlyName "interpolation" - CParticleCollectionFloatInput m_Lerp; // 0x358 + CParticleCollectionFloatInput m_Lerp; // 0x308 }; // Alignment: 2 -// Size: 0x230 +// Size: 0x1d0 class C_INIT_RandomSecondSequence : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "sequence min" // MPropertyAttributeEditor "SequencePicker( 2 )" - int32_t m_nSequenceMin; // 0x220 + int32_t m_nSequenceMin; // 0x1c0 // MPropertyFriendlyName "sequence max" // MPropertyAttributeEditor "SequencePicker( 2 )" - int32_t m_nSequenceMax; // 0x224 + int32_t m_nSequenceMax; // 0x1c4 }; // Alignment: 5 -// Size: 0x230 +// Size: 0x1d0 class C_OP_InheritFromParentParticlesV2 : public CParticleFunctionOperator { public: // MPropertyFriendlyName "scale" - float m_flScale; // 0x210 + float m_flScale; // 0x1b0 // MPropertyFriendlyName "inherited field" // MPropertyAttributeChoiceName "particlefield" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 // MPropertyFriendlyName "particle increment amount" - int32_t m_nIncrement; // 0x218 + int32_t m_nIncrement; // 0x1b8 // MPropertyFriendlyName "random parent particle distribution" - bool m_bRandomDistribution; // 0x21c + bool m_bRandomDistribution; // 0x1bc private: - [[maybe_unused]] uint8_t __pad021d[0x3]; // 0x21d + [[maybe_unused]] uint8_t __pad01bd[0x3]; // 0x1bd public: // MPropertyFriendlyName "behavior if parent particle dies" - MissingParentInheritBehavior_t m_nMissingParentBehavior; // 0x220 + MissingParentInheritBehavior_t m_nMissingParentBehavior; // 0x1c0 }; // Alignment: 0 -// Size: 0x240 +// Size: 0x1e0 class C_INIT_RandomRotationSpeed : public CGeneralRandomRotation { public: @@ -20565,166 +16661,166 @@ public: }; // Alignment: 4 -// Size: 0x270 +// Size: 0x230 class C_OP_RemapTransformOrientationToRotations : public CParticleFunctionOperator { public: // MPropertyFriendlyName "transform input" - CParticleTransformInput m_TransformInput; // 0x210 + CParticleTransformInput m_TransformInput; // 0x1b0 // MPropertyFriendlyName "offset pitch/yaw/roll" - Vector m_vecRotation; // 0x260 + Vector m_vecRotation; // 0x218 // MPropertyFriendlyName "Use Quaternians Internally" - bool m_bUseQuat; // 0x26c + bool m_bUseQuat; // 0x224 // MPropertyFriendlyName "Write normal instead of rotation" - bool m_bWriteNormal; // 0x26d + bool m_bWriteNormal; // 0x225 }; // Alignment: 4 -// Size: 0xdf0 +// Size: 0xe30 class C_OP_RemapCrossProductOfTwoVectorsToVector : public CParticleFunctionOperator { public: // MPropertyFriendlyName "input vector 1" - CPerParticleVecInput m_InputVec1; // 0x210 + CPerParticleVecInput m_InputVec1; // 0x1b0 // MPropertyFriendlyName "input vector 2" - CPerParticleVecInput m_InputVec2; // 0x7f8 + CPerParticleVecInput m_InputVec2; // 0x7e8 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0xde0 + ParticleAttributeIndex_t m_nFieldOutput; // 0xe20 // MPropertyFriendlyName "normalize output" - bool m_bNormalize; // 0xde4 + bool m_bNormalize; // 0xe24 }; // Alignment: 2 -// Size: 0x220 +// Size: 0x1c0 class C_OP_SetCPOrientationToDirection : public CParticleFunctionOperator { public: // MPropertyFriendlyName "input control point" - int32_t m_nInputControlPoint; // 0x210 + int32_t m_nInputControlPoint; // 0x1b0 // MPropertyFriendlyName "output control point" - int32_t m_nOutputControlPoint; // 0x214 + int32_t m_nOutputControlPoint; // 0x1b4 }; // Alignment: 17 -// Size: 0x410 +// Size: 0x3c0 class C_OP_MovementPlaceOnGround : public CParticleFunctionOperator { public: // MPropertyFriendlyName "offset" - CPerParticleFloatInput m_flOffset; // 0x210 + CPerParticleFloatInput m_flOffset; // 0x1b0 // MPropertyFriendlyName "max trace length" - float m_flMaxTraceLength; // 0x350 + float m_flMaxTraceLength; // 0x300 // MPropertyFriendlyName "CP movement tolerance" - float m_flTolerance; // 0x354 + float m_flTolerance; // 0x304 // MPropertyFriendlyName "trace offset" - float m_flTraceOffset; // 0x358 + float m_flTraceOffset; // 0x308 // MPropertyFriendlyName "interpolation rate" - float m_flLerpRate; // 0x35c + float m_flLerpRate; // 0x30c // MPropertyFriendlyName "collision group" - char m_CollisionGroupName[128]; // 0x360 + char m_CollisionGroupName[128]; // 0x310 // MPropertyFriendlyName "Trace Set" - ParticleTraceSet_t m_nTraceSet; // 0x3e0 + ParticleTraceSet_t m_nTraceSet; // 0x390 // MPropertyFriendlyName "reference CP 1" - int32_t m_nRefCP1; // 0x3e4 + int32_t m_nRefCP1; // 0x394 // MPropertyFriendlyName "reference CP 2" - int32_t m_nRefCP2; // 0x3e8 + int32_t m_nRefCP2; // 0x398 // MPropertyFriendlyName "interploation distance tolerance cp" - int32_t m_nLerpCP; // 0x3ec + int32_t m_nLerpCP; // 0x39c private: - [[maybe_unused]] uint8_t __pad03f0[0x8]; // 0x3f0 + [[maybe_unused]] uint8_t __pad03a0[0x8]; // 0x3a0 public: // MPropertyFriendlyName "No Collision Behavior" - ParticleTraceMissBehavior_t m_nTraceMissBehavior; // 0x3f8 + ParticleTraceMissBehavior_t m_nTraceMissBehavior; // 0x3a8 // MPropertyFriendlyName "include default contents trace hulls" - bool m_bIncludeShotHull; // 0x3fc + bool m_bIncludeShotHull; // 0x3ac // MPropertyFriendlyName "include water" - bool m_bIncludeWater; // 0x3fd + bool m_bIncludeWater; // 0x3ad private: - [[maybe_unused]] uint8_t __pad03fe[0x2]; // 0x3fe + [[maybe_unused]] uint8_t __pad03ae[0x2]; // 0x3ae public: // MPropertyFriendlyName "set normal" - bool m_bSetNormal; // 0x400 + bool m_bSetNormal; // 0x3b0 // MPropertyFriendlyName "treat offset as scalar of particle radius" - bool m_bScaleOffset; // 0x401 + bool m_bScaleOffset; // 0x3b1 private: - [[maybe_unused]] uint8_t __pad0402[0x2]; // 0x402 + [[maybe_unused]] uint8_t __pad03b2[0x2]; // 0x3b2 public: // MPropertyFriendlyName "preserve initial Z-offset relative to cp" - int32_t m_nPreserveOffsetCP; // 0x404 + int32_t m_nPreserveOffsetCP; // 0x3b4 // MPropertyFriendlyName "CP Entity to Ignore for Collisions" - int32_t m_nIgnoreCP; // 0x408 + int32_t m_nIgnoreCP; // 0x3b8 }; // Alignment: 5 -// Size: 0x240 +// Size: 0x1e0 class C_OP_LockToPointList : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "point list" - CUtlVector< PointDefinition_t > m_pointList; // 0x218 + CUtlVector< PointDefinition_t > m_pointList; // 0x1b8 // MPropertyFriendlyName "space points along path" - bool m_bPlaceAlongPath; // 0x230 + bool m_bPlaceAlongPath; // 0x1d0 // MPropertyFriendlyName "Treat path as a loop" - bool m_bClosedLoop; // 0x231 + bool m_bClosedLoop; // 0x1d1 private: - [[maybe_unused]] uint8_t __pad0232[0x2]; // 0x232 + [[maybe_unused]] uint8_t __pad01d2[0x2]; // 0x1d2 public: // MPropertyFriendlyName "Numer of points along path" - int32_t m_nNumPointsAlongPath; // 0x234 + int32_t m_nNumPointsAlongPath; // 0x1d4 }; // Alignment: 6 -// Size: 0x370 +// Size: 0x320 class C_OP_SetCPOrientationToPointAtCP : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "CP to point towards" - int32_t m_nInputCP; // 0x220 + int32_t m_nInputCP; // 0x1c0 // MPropertyFriendlyName "CP to set" - int32_t m_nOutputCP; // 0x224 + int32_t m_nOutputCP; // 0x1c4 // MPropertyFriendlyName "Interpolation" - CParticleCollectionFloatInput m_flInterpolation; // 0x228 + CParticleCollectionFloatInput m_flInterpolation; // 0x1c8 // MPropertyFriendlyName "2D Orient" - bool m_b2DOrientation; // 0x368 + bool m_b2DOrientation; // 0x318 // MPropertyFriendlyName "Avoid Vertical Axis Singularity" - bool m_bAvoidSingularity; // 0x369 + bool m_bAvoidSingularity; // 0x319 // MPropertyFriendlyName "Point Away" - bool m_bPointAway; // 0x36a + bool m_bPointAway; // 0x31a }; // Alignment: 1 -// Size: 0x220 +// Size: 0x1c0 class C_OP_VelocityDecay : public CParticleFunctionOperator { public: // MPropertyFriendlyName "minimum velocity" - float m_flMinVelocity; // 0x210 + float m_flMinVelocity; // 0x1b0 }; // Alignment: 3 -// Size: 0x230 +// Size: 0x1d0 class C_OP_LerpEndCapVector : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 // MPropertyFriendlyName "value to lerp to" // MVectorIsSometimesCoordinate - Vector m_vecOutput; // 0x214 + Vector m_vecOutput; // 0x1b4 // MPropertyFriendlyName "lerp time" - float m_flLerpTime; // 0x220 + float m_flLerpTime; // 0x1c0 }; // Alignment: 0 -// Size: 0x240 +// Size: 0x1e0 class C_INIT_RandomRotation : public CGeneralRandomRotation { public: @@ -20732,63 +16828,63 @@ public: }; // Alignment: 5 -// Size: 0xa90 +// Size: 0xaa0 class C_OP_LerpToInitialPosition : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x210 + int32_t m_nControlPointNumber; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "Interpolation" - CPerParticleFloatInput m_flInterpolation; // 0x218 + CPerParticleFloatInput m_flInterpolation; // 0x1b8 // MPropertyFriendlyName "position cache attribute" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nCacheField; // 0x358 + ParticleAttributeIndex_t m_nCacheField; // 0x308 private: - [[maybe_unused]] uint8_t __pad035c[0x4]; // 0x35c + [[maybe_unused]] uint8_t __pad030c[0x4]; // 0x30c public: // MPropertyFriendlyName "scale" - CParticleCollectionFloatInput m_flScale; // 0x360 + CParticleCollectionFloatInput m_flScale; // 0x310 // MPropertyFriendlyName "component scale" - CParticleCollectionVecInput m_vecScale; // 0x4a0 + CParticleCollectionVecInput m_vecScale; // 0x460 }; // Alignment: 2 -// Size: 0x270 +// Size: 0x210 class C_OP_RenderText : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "outline color" - Color m_OutlineColor; // 0x260 + Color m_OutlineColor; // 0x200 private: - [[maybe_unused]] uint8_t __pad0264[0x4]; // 0x264 + [[maybe_unused]] uint8_t __pad0204[0x4]; // 0x204 public: // MPropertyFriendlyName "default text" - CUtlString m_DefaultText; // 0x268 + CUtlString m_DefaultText; // 0x208 }; // Alignment: 5 -// Size: 0x4a0 +// Size: 0x460 class C_OP_ReadFromNeighboringParticle : public CParticleFunctionOperator { public: // MPropertyFriendlyName "read field" // MPropertyAttributeChoiceName "particlefield" - ParticleAttributeIndex_t m_nFieldInput; // 0x210 + ParticleAttributeIndex_t m_nFieldInput; // 0x1b0 // MPropertyFriendlyName "written field" // MPropertyAttributeChoiceName "particlefield" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 // MPropertyFriendlyName "particle increment amount" - int32_t m_nIncrement; // 0x218 + int32_t m_nIncrement; // 0x1b8 private: - [[maybe_unused]] uint8_t __pad021c[0x4]; // 0x21c + [[maybe_unused]] uint8_t __pad01bc[0x4]; // 0x1bc public: // MPropertyFriendlyName "maximum distance" - CPerParticleFloatInput m_DistanceCheck; // 0x220 + CPerParticleFloatInput m_DistanceCheck; // 0x1c0 // MPropertyFriendlyName "Interpolation" - CPerParticleFloatInput m_flInterpolation; // 0x360 + CPerParticleFloatInput m_flInterpolation; // 0x310 }; // Alignment: 2 @@ -20804,93 +16900,93 @@ public: }; // Alignment: 1 -// Size: 0x230 +// Size: 0x1d0 class C_INIT_RandomYawFlip : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "flip percentage" - float m_flPercent; // 0x220 + float m_flPercent; // 0x1c0 }; // Alignment: 4 -// Size: 0x220 +// Size: 0x1c0 class C_OP_Cull : public CParticleFunctionOperator { public: // MPropertyFriendlyName "cull percentage" - float m_flCullPerc; // 0x210 + float m_flCullPerc; // 0x1b0 // MPropertyFriendlyName "cull start time" - float m_flCullStart; // 0x214 + float m_flCullStart; // 0x1b4 // MPropertyFriendlyName "cull end time" - float m_flCullEnd; // 0x218 + float m_flCullEnd; // 0x1b8 // MPropertyFriendlyName "cull time exponent" - float m_flCullExp; // 0x21c + float m_flCullExp; // 0x1bc }; // Alignment: 4 -// Size: 0x280 +// Size: 0x240 class C_INIT_RemapTransformOrientationToRotations : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "transform input" - CParticleTransformInput m_TransformInput; // 0x220 + CParticleTransformInput m_TransformInput; // 0x1c0 // MPropertyFriendlyName "offset pitch/yaw/roll" - Vector m_vecRotation; // 0x270 + Vector m_vecRotation; // 0x228 // MPropertyFriendlyName "Use Quaternians Internally" - bool m_bUseQuat; // 0x27c + bool m_bUseQuat; // 0x234 // MPropertyFriendlyName "Write normal instead of rotation" - bool m_bWriteNormal; // 0x27d + bool m_bWriteNormal; // 0x235 }; // Alignment: 1 -// Size: 0x220 +// Size: 0x1c0 class C_OP_NormalLock : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x210 + int32_t m_nControlPointNumber; // 0x1b0 }; // Alignment: 4 -// Size: 0x260 +// Size: 0x200 class C_OP_LockToSavedSequentialPathV2 : public CParticleFunctionOperator { public: // MPropertyFriendlyName "start fade time" - float m_flFadeStart; // 0x210 + float m_flFadeStart; // 0x1b0 // MPropertyFriendlyName "end fade time" - float m_flFadeEnd; // 0x214 + float m_flFadeEnd; // 0x1b4 // MPropertyFriendlyName "Use sequential CP pairs between start and end point" - bool m_bCPPairs; // 0x218 + bool m_bCPPairs; // 0x1b8 private: - [[maybe_unused]] uint8_t __pad0219[0x7]; // 0x219 + [[maybe_unused]] uint8_t __pad01b9[0x7]; // 0x1b9 public: - CPathParameters m_PathParams; // 0x220 + CPathParameters m_PathParams; // 0x1c0 }; // Alignment: 6 -// Size: 0x290 +// Size: 0x250 class C_INIT_RemapInitialDirectionToTransformToVector : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "transform input" - CParticleTransformInput m_TransformInput; // 0x220 + CParticleTransformInput m_TransformInput; // 0x1c0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x270 + ParticleAttributeIndex_t m_nFieldOutput; // 0x228 // MPropertyFriendlyName "scale factor" - float m_flScale; // 0x274 + float m_flScale; // 0x22c // MPropertyFriendlyName "offset rotation" - float m_flOffsetRot; // 0x278 + float m_flOffsetRot; // 0x230 // MPropertyFriendlyName "offset axis" // MVectorIsCoordinate - Vector m_vecOffsetAxis; // 0x27c + Vector m_vecOffsetAxis; // 0x234 // MPropertyFriendlyName "normalize" - bool m_bNormalize; // 0x288 + bool m_bNormalize; // 0x240 }; // Alignment: 2 -// Size: 0x5f0 +// Size: 0x640 struct VecInputMaterialVariable_t { public: @@ -20901,193 +16997,183 @@ public: }; // Alignment: 6 -// Size: 0x500 +// Size: 0x4c0 class C_INIT_CreateSequentialPathV2 : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "maximum distance" - CPerParticleFloatInput m_fMaxDistance; // 0x220 + CPerParticleFloatInput m_fMaxDistance; // 0x1c0 // MPropertyFriendlyName "particles to map from start to end" - CParticleCollectionFloatInput m_flNumToAssign; // 0x360 + CParticleCollectionFloatInput m_flNumToAssign; // 0x310 // MPropertyFriendlyName "restart behavior (0 = bounce, 1 = loop )" - bool m_bLoop; // 0x4a0 + bool m_bLoop; // 0x460 // MPropertyFriendlyName "use sequential CP pairs between start and end point" - bool m_bCPPairs; // 0x4a1 + bool m_bCPPairs; // 0x461 // MPropertyFriendlyName "save offset" - bool m_bSaveOffset; // 0x4a2 + bool m_bSaveOffset; // 0x462 private: - [[maybe_unused]] uint8_t __pad04a3[0xd]; // 0x4a3 + [[maybe_unused]] uint8_t __pad0463[0xd]; // 0x463 public: - CPathParameters m_PathParams; // 0x4b0 + CPathParameters m_PathParams; // 0x470 }; // Alignment: 7 -// Size: 0x230 +// Size: 0x1d0 class C_OP_RemapVisibilityScalar : public CParticleFunctionOperator { public: // MPropertyFriendlyName "input field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldInput; // 0x210 + ParticleAttributeIndex_t m_nFieldInput; // 0x1b0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 // MPropertyFriendlyName "visibility minimum" - float m_flInputMin; // 0x218 + float m_flInputMin; // 0x1b8 // MPropertyFriendlyName "visibility maximum" - float m_flInputMax; // 0x21c + float m_flInputMax; // 0x1bc // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x220 + float m_flOutputMin; // 0x1c0 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x224 + float m_flOutputMax; // 0x1c4 // MPropertyFriendlyName "radius scale" - float m_flRadiusScale; // 0x228 + float m_flRadiusScale; // 0x1c8 }; // Alignment: 0 -// Size: 0x260 +// Size: 0x200 class C_OP_RenderClothForce : public CParticleFunctionRenderer { public: // No members available }; -// Alignment: 1 -// Size: 0x60 -class CPulseCell_Outflow_SimultaneousParallel : public CPulseCell_BaseFlow -{ -public: - CUtlVector< CPulse_OutflowConnection > m_Outputs; // 0x48 -}; - // Alignment: 6 -// Size: 0x230 +// Size: 0x1d0 class C_OP_RestartAfterDuration : public CParticleFunctionOperator { public: // MPropertyFriendlyName "minimum restart time" - float m_flDurationMin; // 0x210 + float m_flDurationMin; // 0x1b0 // MPropertyFriendlyName "maximum restart time" - float m_flDurationMax; // 0x214 + float m_flDurationMax; // 0x1b4 // MPropertyFriendlyName "control point to scale duration" - int32_t m_nCP; // 0x218 + int32_t m_nCP; // 0x1b8 // MPropertyFriendlyName "control point field X/Y/Z" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nCPField; // 0x21c + int32_t m_nCPField; // 0x1bc // MPropertyFriendlyName "child group ID" - int32_t m_nChildGroupID; // 0x220 + int32_t m_nChildGroupID; // 0x1c0 // MPropertyFriendlyName "only restart children" - bool m_bOnlyChildren; // 0x224 + bool m_bOnlyChildren; // 0x1c4 }; -// Alignment: 0 -// Size: 0xf0 -class CPulseGraphInstance_TurtleGraphics : public CBasePulseGraphInstance +// Alignment: 6 +// Size: 0xa10 +class C_OP_SetVariable : public CParticleFunctionPreEmission { public: - // No members available + // MPropertyFriendlyName "Variable" + CParticleVariableRef m_variableReference; // 0x1c0 + // MPropertyFriendlyName "Value" + // MPropertySuppressExpr "m_variableReference.m_variableType != PVAL_TRANSFORM" + CParticleTransformInput m_transformInput; // 0x200 + // MPropertyFriendlyName "Position Offset" + // MPropertySuppressExpr "m_variableReference.m_variableType != PVAL_TRANSFORM" + Vector m_positionOffset; // 0x268 + // MPropertyFriendlyName "Rotation Offset" + // MPropertySuppressExpr "m_variableReference.m_variableType != PVAL_TRANSFORM" + QAngle m_rotationOffset; // 0x274 + // MPropertyFriendlyName "Value" + // MPropertySuppressExpr "m_variableReference.m_variableType != PVAL_VEC3" + CParticleCollectionVecInput m_vecInput; // 0x280 + // MPropertyFriendlyName "Value" + // MPropertySuppressExpr "m_variableReference.m_variableType != PVAL_FLOAT" + CParticleCollectionFloatInput m_floatInput; // 0x8b8 }; // Alignment: 14 -// Size: 0x1250 +// Size: 0x12c0 class C_INIT_CreateOnModelAtHeight : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "use bones instead of hitboxes" - bool m_bUseBones; // 0x220 + bool m_bUseBones; // 0x1c0 // MPropertyFriendlyName "force creation height to desired height" - bool m_bForceZ; // 0x221 + bool m_bForceZ; // 0x1c1 private: - [[maybe_unused]] uint8_t __pad0222[0x2]; // 0x222 + [[maybe_unused]] uint8_t __pad01c2[0x2]; // 0x1c2 public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x224 + int32_t m_nControlPointNumber; // 0x1c4 // MPropertyFriendlyName "height override control point number" - int32_t m_nHeightCP; // 0x228 + int32_t m_nHeightCP; // 0x1c8 // MPropertyFriendlyName "desired height is relative to water" - bool m_bUseWaterHeight; // 0x22c + bool m_bUseWaterHeight; // 0x1cc private: - [[maybe_unused]] uint8_t __pad022d[0x3]; // 0x22d + [[maybe_unused]] uint8_t __pad01cd[0x3]; // 0x1cd public: // MPropertyFriendlyName "relative desired height" - CParticleCollectionFloatInput m_flDesiredHeight; // 0x230 + CParticleCollectionFloatInput m_flDesiredHeight; // 0x1d0 // MPropertyFriendlyName "model hitbox scale" - CParticleCollectionVecInput m_vecHitBoxScale; // 0x370 + CParticleCollectionVecInput m_vecHitBoxScale; // 0x320 // MPropertyFriendlyName "direction bias" // MVectorIsCoordinate CParticleCollectionVecInput m_vecDirectionBias; // 0x958 // MPropertyFriendlyName "bias type" - ParticleHitboxBiasType_t m_nBiasType; // 0xf40 + ParticleHitboxBiasType_t m_nBiasType; // 0xf90 // MPropertyFriendlyName "bias in local space" - bool m_bLocalCoords; // 0xf44 + bool m_bLocalCoords; // 0xf94 // MPropertyFriendlyName "bias prefers moving hitboxes" - bool m_bPreferMovingBoxes; // 0xf45 + bool m_bPreferMovingBoxes; // 0xf95 // MPropertyFriendlyName "hitbox set" - char m_HitboxSetName[128]; // 0xf46 + char m_HitboxSetName[128]; // 0xf96 private: - [[maybe_unused]] uint8_t __pad0fc6[0x2]; // 0xfc6 + [[maybe_unused]] uint8_t __pad1016[0x2]; // 0x1016 public: // MPropertyFriendlyName "hitbox velocity inherited scale" - CParticleCollectionFloatInput m_flHitboxVelocityScale; // 0xfc8 + CParticleCollectionFloatInput m_flHitboxVelocityScale; // 0x1018 // MPropertyFriendlyName "max hitbox velocity" - CParticleCollectionFloatInput m_flMaxBoneVelocity; // 0x1108 + CParticleCollectionFloatInput m_flMaxBoneVelocity; // 0x1168 }; // Alignment: 3 -// Size: 0xc0 -class CPulseCell_Step_BaseCallMethod : public CPulseCell_BaseFlow -{ -public: - CUtlSymbolLarge m_MethodName; // 0x48 - CKV3MemberNameWithStorage m_Arg0Name; // 0x50 - CKV3MemberNameWithStorage m_Arg1Name; // 0x88 -}; - -// Alignment: 3 -// Size: 0x230 +// Size: 0x1d0 class C_INIT_RandomAlphaWindowThreshold : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "min" - float m_flMin; // 0x220 + float m_flMin; // 0x1c0 // MPropertyFriendlyName "max" - float m_flMax; // 0x224 + float m_flMax; // 0x1c4 // MPropertyFriendlyName "exponent" - float m_flExponent; // 0x228 -}; - -// Alignment: 0 -// Size: 0xc0 -class CPulseCell_Step_CallExternalMethod : public CPulseCell_Step_BaseCallMethod -{ -public: - // No members available + float m_flExponent; // 0x1c8 }; // Alignment: 3 -// Size: 0x220 +// Size: 0x1c0 class C_OP_VelocityMatchingForce : public CParticleFunctionOperator { public: // MPropertyFriendlyName "direction matching strength" - float m_flDirScale; // 0x210 + float m_flDirScale; // 0x1b0 // MPropertyFriendlyName "speed matching strength" - float m_flSpdScale; // 0x214 + float m_flSpdScale; // 0x1b4 // MPropertyFriendlyName "control point to broadcast speed and direction to" - int32_t m_nCPBroadcast; // 0x218 + int32_t m_nCPBroadcast; // 0x1b8 }; // Alignment: 3 -// Size: 0x240 +// Size: 0x1e0 class C_OP_RampCPLinearRandom : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "output control point" - int32_t m_nOutControlPointNumber; // 0x220 + int32_t m_nOutControlPointNumber; // 0x1c0 // MPropertyFriendlyName "ramp rate min" - Vector m_vecRateMin; // 0x224 + Vector m_vecRateMin; // 0x1c4 // MPropertyFriendlyName "ramp rate max" - Vector m_vecRateMax; // 0x230 + Vector m_vecRateMax; // 0x1d0 }; // Alignment: 10 @@ -21096,17 +17182,17 @@ class C_INIT_CreateOnGrid : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "X Dimension Count" - CParticleCollectionFloatInput m_nXCount; // 0x220 + CParticleCollectionFloatInput m_nXCount; // 0x1c0 // MPropertyFriendlyName "Y Dimension Count" - CParticleCollectionFloatInput m_nYCount; // 0x360 + CParticleCollectionFloatInput m_nYCount; // 0x310 // MPropertyFriendlyName "Z Dimension Count" - CParticleCollectionFloatInput m_nZCount; // 0x4a0 + CParticleCollectionFloatInput m_nZCount; // 0x460 // MPropertyFriendlyName "X Dimension Spacing" - CParticleCollectionFloatInput m_nXSpacing; // 0x5e0 + CParticleCollectionFloatInput m_nXSpacing; // 0x5b0 // MPropertyFriendlyName "Y Dimension Spacing" - CParticleCollectionFloatInput m_nYSpacing; // 0x720 + CParticleCollectionFloatInput m_nYSpacing; // 0x700 // MPropertyFriendlyName "Z Dimension Spacing" - CParticleCollectionFloatInput m_nZSpacing; // 0x860 + CParticleCollectionFloatInput m_nZSpacing; // 0x850 // MPropertyFriendlyName "control point number" int32_t m_nControlPointNumber; // 0x9a0 // MPropertyFriendlyName "use local space" @@ -21118,95 +17204,93 @@ public: }; // Alignment: 1 -// Size: 0x270 +// Size: 0x210 class C_OP_RenderPoints : public CParticleFunctionRenderer { public: - CStrongHandle< InfoForResourceTypeIMaterial2 > m_hMaterial; // 0x260 + CStrongHandle< InfoForResourceTypeIMaterial2 > m_hMaterial; // 0x200 }; // Alignment: 7 -// Size: 0x260 +// Size: 0x200 class C_INIT_ColorLitPerParticle : public CParticleFunctionInitializer { -private: - [[maybe_unused]] uint8_t __pad0220[0x18]; // 0x220 public: // MPropertyFriendlyName "color1" - Color m_ColorMin; // 0x238 + Color m_ColorMin; // 0x1d8 // MPropertyFriendlyName "color2" - Color m_ColorMax; // 0x23c + Color m_ColorMax; // 0x1dc // MPropertyFriendlyName "tint clamp min" - Color m_TintMin; // 0x240 + Color m_TintMin; // 0x1e0 // MPropertyFriendlyName "tint clamp max" - Color m_TintMax; // 0x244 + Color m_TintMax; // 0x1e4 // MPropertyFriendlyName "light bias" - float m_flTintPerc; // 0x248 + float m_flTintPerc; // 0x1e8 // MPropertyFriendlyName "tint blend mode" - ParticleColorBlendMode_t m_nTintBlendMode; // 0x24c + ParticleColorBlendMode_t m_nTintBlendMode; // 0x1ec // MPropertyFriendlyName "light amplification amount" - float m_flLightAmplification; // 0x250 + float m_flLightAmplification; // 0x1f0 }; // Alignment: 6 -// Size: 0xe50 +// Size: 0xeb0 class C_INIT_PositionOffset : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "offset min" // MVectorIsCoordinate - CPerParticleVecInput m_OffsetMin; // 0x220 + CPerParticleVecInput m_OffsetMin; // 0x1c0 // MPropertyFriendlyName "offset max" // MVectorIsCoordinate - CPerParticleVecInput m_OffsetMax; // 0x808 + CPerParticleVecInput m_OffsetMax; // 0x7f8 // MPropertyFriendlyName "transform input" - CParticleTransformInput m_TransformInput; // 0xdf0 + CParticleTransformInput m_TransformInput; // 0xe30 // MPropertyFriendlyName "offset in local space 0/1" - bool m_bLocalCoords; // 0xe40 + bool m_bLocalCoords; // 0xe98 // MPropertyFriendlyName "offset proportional to radius 0/1" - bool m_bProportional; // 0xe41 + bool m_bProportional; // 0xe99 private: - [[maybe_unused]] uint8_t __pad0e42[0x2]; // 0xe42 + [[maybe_unused]] uint8_t __pad0e9a[0x2]; // 0xe9a public: // MPropertyFriendlyName "Random number generator controls" - CRandomNumberGeneratorParameters m_randomnessParameters; // 0xe44 + CRandomNumberGeneratorParameters m_randomnessParameters; // 0xe9c }; // Alignment: 1 -// Size: 0x350 +// Size: 0x300 class C_OP_DecayClampCount : public CParticleFunctionOperator { public: // MPropertyFriendlyName "Maximum Count" - CParticleCollectionFloatInput m_nCount; // 0x210 + CParticleCollectionFloatInput m_nCount; // 0x1b0 }; // Alignment: 7 -// Size: 0x290 +// Size: 0x230 class C_OP_RenderLights : public C_OP_RenderPoints { public: // MPropertyFriendlyName "animation rate" - float m_flAnimationRate; // 0x270 + float m_flAnimationRate; // 0x210 // MPropertyFriendlyName "animation type" - AnimationType_t m_nAnimationType; // 0x274 + AnimationType_t m_nAnimationType; // 0x214 // MPropertyFriendlyName "set animation value in FPS" - bool m_bAnimateInFPS; // 0x278 + bool m_bAnimateInFPS; // 0x218 private: - [[maybe_unused]] uint8_t __pad0279[0x3]; // 0x279 + [[maybe_unused]] uint8_t __pad0219[0x3]; // 0x219 public: // MPropertyFriendlyName "minimum visual size" - float m_flMinSize; // 0x27c + float m_flMinSize; // 0x21c // MPropertyFriendlyName "maximum visual size" - float m_flMaxSize; // 0x280 + float m_flMaxSize; // 0x220 // MPropertyFriendlyName "size at which to start fading" - float m_flStartFadeSize; // 0x284 + float m_flStartFadeSize; // 0x224 // MPropertyFriendlyName "size at which to fade away" - float m_flEndFadeSize; // 0x288 + float m_flEndFadeSize; // 0x228 }; // Alignment: 0 -// Size: 0x270 +// Size: 0x210 class C_INIT_RemapNamedModelSequenceToScalar : public C_INIT_RemapNamedModelElementToScalar { public: @@ -21214,362 +17298,351 @@ public: }; // Alignment: 6 -// Size: 0x250 +// Size: 0x1f0 class C_OP_ColorInterpolateRandom : public CParticleFunctionOperator { public: // MPropertyFriendlyName "color fade min" - Color m_ColorFadeMin; // 0x210 + Color m_ColorFadeMin; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x18]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x18]; // 0x1b4 public: // MPropertyFriendlyName "color fade max" - Color m_ColorFadeMax; // 0x22c + Color m_ColorFadeMax; // 0x1cc private: - [[maybe_unused]] uint8_t __pad0230[0xc]; // 0x230 + [[maybe_unused]] uint8_t __pad01d0[0xc]; // 0x1d0 public: // MPropertyFriendlyName "fade start time" - float m_flFadeStartTime; // 0x23c + float m_flFadeStartTime; // 0x1dc // MPropertyFriendlyName "fade end time" - float m_flFadeEndTime; // 0x240 + float m_flFadeEndTime; // 0x1e0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x244 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1e4 // MPropertyFriendlyName "ease in and out" - bool m_bEaseInOut; // 0x248 + bool m_bEaseInOut; // 0x1e8 }; // Alignment: 7 -// Size: 0x320 +// Size: 0x2c0 class C_OP_SetControlPointsToModelParticles : public CParticleFunctionOperator { public: // MPropertyFriendlyName "hitbox set" - char m_HitboxSetName[128]; // 0x210 + char m_HitboxSetName[128]; // 0x1b0 // MPropertyFriendlyName "attachment to follow" - char m_AttachmentName[128]; // 0x290 + char m_AttachmentName[128]; // 0x230 // MPropertyFriendlyName "First control point to set" - int32_t m_nFirstControlPoint; // 0x310 + int32_t m_nFirstControlPoint; // 0x2b0 // MPropertyFriendlyName "# of control points to set" - int32_t m_nNumControlPoints; // 0x314 + int32_t m_nNumControlPoints; // 0x2b4 // MPropertyFriendlyName "first particle to copy" - int32_t m_nFirstSourcePoint; // 0x318 + int32_t m_nFirstSourcePoint; // 0x2b8 // MPropertyFriendlyName "use skinning instead of hitboxes" - bool m_bSkin; // 0x31c + bool m_bSkin; // 0x2bc // MPropertyFriendlyName "follow attachment" - bool m_bAttachment; // 0x31d + bool m_bAttachment; // 0x2bd }; // Alignment: 5 -// Size: 0x290 +// Size: 0x230 class C_INIT_CreateAlongPath : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "maximum distance" - float m_fMaxDistance; // 0x220 + float m_fMaxDistance; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0224[0xc]; // 0x224 + [[maybe_unused]] uint8_t __pad01c4[0xc]; // 0x1c4 public: - CPathParameters m_PathParams; // 0x230 + CPathParameters m_PathParams; // 0x1d0 // MPropertyFriendlyName "randomly select sequential CP pairs between start and end points" - bool m_bUseRandomCPs; // 0x270 + bool m_bUseRandomCPs; // 0x210 private: - [[maybe_unused]] uint8_t __pad0271[0x3]; // 0x271 + [[maybe_unused]] uint8_t __pad0211[0x3]; // 0x211 public: // MPropertyFriendlyName "Offset from control point for path end" // MVectorIsCoordinate - Vector m_vEndOffset; // 0x274 + Vector m_vEndOffset; // 0x214 // MPropertyFriendlyName "save offset" - bool m_bSaveOffset; // 0x280 + bool m_bSaveOffset; // 0x220 }; // Alignment: 4 -// Size: 0x230 +// Size: 0x1d0 class C_OP_DistanceCull : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point" - int32_t m_nControlPoint; // 0x210 + int32_t m_nControlPoint; // 0x1b0 // MPropertyFriendlyName "control point offset" // MVectorIsCoordinate - Vector m_vecPointOffset; // 0x214 + Vector m_vecPointOffset; // 0x1b4 // MPropertyFriendlyName "cull distance" - float m_flDistance; // 0x220 + float m_flDistance; // 0x1c0 // MPropertyFriendlyName "cull inside instead of outside" - bool m_bCullInside; // 0x224 + bool m_bCullInside; // 0x1c4 }; // Alignment: 8 -// Size: 0x270 +// Size: 0x210 class C_OP_ConstrainDistanceToPath : public CParticleFunctionConstraint { public: // MPropertyFriendlyName "minimum distance" - float m_fMinDistance; // 0x210 + float m_fMinDistance; // 0x1b0 // MPropertyFriendlyName "maximum distance" - float m_flMaxDistance0; // 0x214 + float m_flMaxDistance0; // 0x1b4 // MPropertyFriendlyName "maximum distance middle" - float m_flMaxDistanceMid; // 0x218 + float m_flMaxDistanceMid; // 0x1b8 // MPropertyFriendlyName "maximum distance end" - float m_flMaxDistance1; // 0x21c - CPathParameters m_PathParameters; // 0x220 + float m_flMaxDistance1; // 0x1bc + CPathParameters m_PathParameters; // 0x1c0 // MPropertyFriendlyName "travel time" - float m_flTravelTime; // 0x260 + float m_flTravelTime; // 0x200 // MPropertyFriendlyName "travel time scale field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldScale; // 0x264 + ParticleAttributeIndex_t m_nFieldScale; // 0x204 // MPropertyFriendlyName "manual time placement field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nManualTField; // 0x268 + ParticleAttributeIndex_t m_nManualTField; // 0x208 }; // Alignment: 4 -// Size: 0x240 +// Size: 0x1e0 class C_OP_SetControlPointToHand : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "control point number" - int32_t m_nCP1; // 0x220 + int32_t m_nCP1; // 0x1c0 // MPropertyFriendlyName "hand" - int32_t m_nHand; // 0x224 + int32_t m_nHand; // 0x1c4 // MPropertyFriendlyName "control point offset" // MVectorIsCoordinate - Vector m_vecCP1Pos; // 0x228 + Vector m_vecCP1Pos; // 0x1c8 // MPropertyFriendlyName "use hand orientation" - bool m_bOrientToHand; // 0x234 + bool m_bOrientToHand; // 0x1d4 }; // Alignment: 15 -// Size: 0x2e0 +// Size: 0x280 class C_OP_DistanceBetweenCPsToCP : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "starting control point" - int32_t m_nStartCP; // 0x220 + int32_t m_nStartCP; // 0x1c0 // MPropertyFriendlyName "ending control point" - int32_t m_nEndCP; // 0x224 + int32_t m_nEndCP; // 0x1c4 // MPropertyFriendlyName "output control point" - int32_t m_nOutputCP; // 0x228 + int32_t m_nOutputCP; // 0x1c8 // MPropertyFriendlyName "output control point field" - int32_t m_nOutputCPField; // 0x22c + int32_t m_nOutputCPField; // 0x1cc // MPropertyFriendlyName "only set distance once" - bool m_bSetOnce; // 0x230 + bool m_bSetOnce; // 0x1d0 private: - [[maybe_unused]] uint8_t __pad0231[0x3]; // 0x231 + [[maybe_unused]] uint8_t __pad01d1[0x3]; // 0x1d1 public: // MPropertyFriendlyName "distance minimum" - float m_flInputMin; // 0x234 + float m_flInputMin; // 0x1d4 // MPropertyFriendlyName "distance maximum" - float m_flInputMax; // 0x238 + float m_flInputMax; // 0x1d8 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x23c + float m_flOutputMin; // 0x1dc // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x240 + float m_flOutputMax; // 0x1e0 // MPropertyFriendlyName "maximum trace length" - float m_flMaxTraceLength; // 0x244 + float m_flMaxTraceLength; // 0x1e4 // MPropertyFriendlyName "LOS Failure Scale" - float m_flLOSScale; // 0x248 + float m_flLOSScale; // 0x1e8 // MPropertyFriendlyName "ensure line of sight" - bool m_bLOS; // 0x24c + bool m_bLOS; // 0x1ec // MPropertyFriendlyName "LOS collision group" - char m_CollisionGroupName[128]; // 0x24d + char m_CollisionGroupName[128]; // 0x1ed private: - [[maybe_unused]] uint8_t __pad02cd[0x3]; // 0x2cd + [[maybe_unused]] uint8_t __pad026d[0x3]; // 0x26d public: // MPropertyFriendlyName "Trace Set" - ParticleTraceSet_t m_nTraceSet; // 0x2d0 + ParticleTraceSet_t m_nTraceSet; // 0x270 // MPropertyFriendlyName "set parent" - ParticleParentSetMode_t m_nSetParent; // 0x2d4 + ParticleParentSetMode_t m_nSetParent; // 0x274 }; // Alignment: 11 -// Size: 0x5f0 +// Size: 0x5c0 class C_OP_SetFromCPSnapshot : public CParticleFunctionOperator { public: // MPropertyFriendlyName "snapshot control point number" - int32_t m_nControlPointNumber; // 0x210 + int32_t m_nControlPointNumber; // 0x1b0 // MPropertyFriendlyName "field to read" // MPropertyAttributeChoiceName "particlefield" - ParticleAttributeIndex_t m_nAttributeToRead; // 0x214 + ParticleAttributeIndex_t m_nAttributeToRead; // 0x1b4 // MPropertyFriendlyName "field to write" // MPropertyAttributeChoiceName "particlefield" - ParticleAttributeIndex_t m_nAttributeToWrite; // 0x218 + ParticleAttributeIndex_t m_nAttributeToWrite; // 0x1b8 // MPropertyFriendlyName "local space control point number" - int32_t m_nLocalSpaceCP; // 0x21c + int32_t m_nLocalSpaceCP; // 0x1bc // MPropertyFriendlyName "random order" - bool m_bRandom; // 0x220 + bool m_bRandom; // 0x1c0 // MPropertyFriendlyName "reverse order" - bool m_bReverse; // 0x221 + bool m_bReverse; // 0x1c1 private: - [[maybe_unused]] uint8_t __pad0222[0x2]; // 0x222 + [[maybe_unused]] uint8_t __pad01c2[0x2]; // 0x1c2 public: // MPropertyFriendlyName "random seed" - int32_t m_nRandomSeed; // 0x224 + int32_t m_nRandomSeed; // 0x1c4 // MPropertyFriendlyName "Snapshot start point" - CParticleCollectionFloatInput m_nSnapShotStartPoint; // 0x228 + CParticleCollectionFloatInput m_nSnapShotStartPoint; // 0x1c8 // MPropertyFriendlyName "Snapshot increment amount" - CParticleCollectionFloatInput m_nSnapShotIncrement; // 0x368 + CParticleCollectionFloatInput m_nSnapShotIncrement; // 0x318 // MPropertyFriendlyName "Interpolation" - CPerParticleFloatInput m_flInterpolation; // 0x4a8 + CPerParticleFloatInput m_flInterpolation; // 0x468 // MPropertyFriendlyName "Sub-Sample Between Input Points" - bool m_bSubSample; // 0x5e8 + bool m_bSubSample; // 0x5b8 }; // Alignment: 3 -// Size: 0x220 +// Size: 0x1c0 class C_OP_RemapVectortoCP : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output control point" - int32_t m_nOutControlPointNumber; // 0x210 + int32_t m_nOutControlPointNumber; // 0x1b0 // MPropertyFriendlyName "input field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldInput; // 0x214 + ParticleAttributeIndex_t m_nFieldInput; // 0x1b4 // MPropertyFriendlyName "particle number to read" - int32_t m_nParticleNumber; // 0x218 + int32_t m_nParticleNumber; // 0x1b8 }; // Alignment: 6 -// Size: 0xf30 +// Size: 0xf80 class C_OP_SetFloatAttributeToVectorExpression : public CParticleFunctionOperator { public: // MPropertyFriendlyName "expression" - VectorFloatExpressionType_t m_nExpression; // 0x210 + VectorFloatExpressionType_t m_nExpression; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "input 1" - CPerParticleVecInput m_vInput1; // 0x218 + CPerParticleVecInput m_vInput1; // 0x1b8 // MPropertyFriendlyName "input 2" - CPerParticleVecInput m_vInput2; // 0x800 + CPerParticleVecInput m_vInput2; // 0x7f0 // MPropertyFriendlyName "output" - CParticleRemapFloatInput m_flOutputRemap; // 0xde8 + CParticleRemapFloatInput m_flOutputRemap; // 0xe28 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nOutputField; // 0xf28 + ParticleAttributeIndex_t m_nOutputField; // 0xf78 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0xf2c + ParticleSetMethod_t m_nSetMethod; // 0xf7c }; // Alignment: 5 -// Size: 0x230 +// Size: 0x1d0 class C_OP_RemapDistanceToLineSegmentBase : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point 0" - int32_t m_nCP0; // 0x210 + int32_t m_nCP0; // 0x1b0 // MPropertyFriendlyName "control point 1" - int32_t m_nCP1; // 0x214 + int32_t m_nCP1; // 0x1b4 // MPropertyFriendlyName "min distance value" - float m_flMinInputValue; // 0x218 + float m_flMinInputValue; // 0x1b8 // MPropertyFriendlyName "max distance value" - float m_flMaxInputValue; // 0x21c + float m_flMaxInputValue; // 0x1bc // MPropertyFriendlyName "use distance to an infinite line instead of a finite line segment" - bool m_bInfiniteLine; // 0x220 + bool m_bInfiniteLine; // 0x1c0 }; // Alignment: 13 -// Size: 0x310 +// Size: 0x2e0 class C_INIT_RemapTransformToVector : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x220 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c0 // MPropertyFriendlyName "input minimum" // MVectorIsSometimesCoordinate - Vector m_vInputMin; // 0x224 + Vector m_vInputMin; // 0x1c4 // MPropertyFriendlyName "input maximum" // MVectorIsSometimesCoordinate - Vector m_vInputMax; // 0x230 + Vector m_vInputMax; // 0x1d0 // MPropertyFriendlyName "output minimum" // MVectorIsSometimesCoordinate - Vector m_vOutputMin; // 0x23c + Vector m_vOutputMin; // 0x1dc // MPropertyFriendlyName "output maximum" // MVectorIsSometimesCoordinate - Vector m_vOutputMax; // 0x248 + Vector m_vOutputMax; // 0x1e8 private: - [[maybe_unused]] uint8_t __pad0254[0x4]; // 0x254 + [[maybe_unused]] uint8_t __pad01f4[0x4]; // 0x1f4 public: // MPropertyFriendlyName "transform input" - CParticleTransformInput m_TransformInput; // 0x258 + CParticleTransformInput m_TransformInput; // 0x1f8 // MPropertyFriendlyName "local space transform" - // MParticleTransformInputOptional - CParticleTransformInput m_LocalSpaceTransform; // 0x2a8 + // MParticleInputOptional + CParticleTransformInput m_LocalSpaceTransform; // 0x260 // MPropertyFriendlyName "emitter lifetime start time (seconds)" - float m_flStartTime; // 0x2f8 + float m_flStartTime; // 0x2c8 // MPropertyFriendlyName "emitter lifetime end time (seconds)" - float m_flEndTime; // 0x2fc + float m_flEndTime; // 0x2cc // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x300 + ParticleSetMethod_t m_nSetMethod; // 0x2d0 // MPropertyFriendlyName "offset position" - bool m_bOffset; // 0x304 + bool m_bOffset; // 0x2d4 // MPropertyFriendlyName "accelerate position" - bool m_bAccelerate; // 0x305 + bool m_bAccelerate; // 0x2d5 private: - [[maybe_unused]] uint8_t __pad0306[0x2]; // 0x306 + [[maybe_unused]] uint8_t __pad02d6[0x2]; // 0x2d6 public: // MPropertyFriendlyName "remap bias" - float m_flRemapBias; // 0x308 + float m_flRemapBias; // 0x2d8 }; // Alignment: 4 -// Size: 0x4c0 +// Size: 0x480 class C_OP_SetFloat : public CParticleFunctionOperator { public: // MPropertyFriendlyName "value" - CPerParticleFloatInput m_InputValue; // 0x210 + CPerParticleFloatInput m_InputValue; // 0x1b0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nOutputField; // 0x350 + ParticleAttributeIndex_t m_nOutputField; // 0x300 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x354 + ParticleSetMethod_t m_nSetMethod; // 0x304 // MPropertyFriendlyName "interpolation" - CPerParticleFloatInput m_Lerp; // 0x358 -}; - -// Alignment: 4 -// Size: 0x20 -class CPulse_OutputConnection -{ -public: - CUtlSymbolLarge m_SourceOutput; // 0x0 - CUtlSymbolLarge m_TargetEntity; // 0x8 - CUtlSymbolLarge m_TargetInput; // 0x10 - CUtlSymbolLarge m_Param; // 0x18 + CPerParticleFloatInput m_Lerp; // 0x308 }; // Alignment: 5 -// Size: 0x2a0 +// Size: 0x240 class C_OP_ModelCull : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x210 + int32_t m_nControlPointNumber; // 0x1b0 // MPropertyFriendlyName "use only bounding box" - bool m_bBoundBox; // 0x214 + bool m_bBoundBox; // 0x1b4 // MPropertyFriendlyName "cull outside instead of inside" - bool m_bCullOutside; // 0x215 + bool m_bCullOutside; // 0x1b5 // MPropertyFriendlyName "use bones instead of hitboxes" - bool m_bUseBones; // 0x216 + bool m_bUseBones; // 0x1b6 // MPropertyFriendlyName "hitbox set" - char m_HitboxSetName[128]; // 0x217 + char m_HitboxSetName[128]; // 0x1b7 }; // Alignment: 3 -// Size: 0x800 +// Size: 0x7f0 class C_OP_LocalAccelerationForce : public CParticleFunctionForce { public: // MPropertyFriendlyName "local space control point" - int32_t m_nCP; // 0x210 + int32_t m_nCP; // 0x1b0 // MPropertyFriendlyName "scale control point" - int32_t m_nScaleCP; // 0x214 + int32_t m_nScaleCP; // 0x1b4 // MPropertyFriendlyName "local space acceleration" - CParticleCollectionVecInput m_vecAccel; // 0x218 + CParticleCollectionVecInput m_vecAccel; // 0x1b8 }; // Alignment: 3 @@ -21583,583 +17656,507 @@ public: }; // Alignment: 7 -// Size: 0x230 +// Size: 0x1d0 class C_OP_RemapParticleCountOnScalarEndCap : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 // MPropertyFriendlyName "input minimum" - int32_t m_nInputMin; // 0x214 + int32_t m_nInputMin; // 0x1b4 // MPropertyFriendlyName "input maximum" - int32_t m_nInputMax; // 0x218 + int32_t m_nInputMax; // 0x1b8 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x21c + float m_flOutputMin; // 0x1bc // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x220 + float m_flOutputMax; // 0x1c0 // MPropertyFriendlyName "count back from last particle" - bool m_bBackwards; // 0x224 + bool m_bBackwards; // 0x1c4 private: - [[maybe_unused]] uint8_t __pad0225[0x3]; // 0x225 + [[maybe_unused]] uint8_t __pad01c5[0x3]; // 0x1c5 public: // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x228 + ParticleSetMethod_t m_nSetMethod; // 0x1c8 }; // Alignment: 2 -// Size: 0x230 +// Size: 0x1d0 class C_OP_RandomForce : public CParticleFunctionForce { public: // MPropertyFriendlyName "min force" // MVectorIsCoordinate - Vector m_MinForce; // 0x210 + Vector m_MinForce; // 0x1b0 // MPropertyFriendlyName "max force" // MVectorIsCoordinate - Vector m_MaxForce; // 0x21c + Vector m_MaxForce; // 0x1bc }; // Alignment: 7 -// Size: 0x2a0 +// Size: 0x240 class C_OP_RenderStatusEffect : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "color warp texture (3d)" // MPropertyAttributeEditor "AssetBrowse( vtex, *showassetpreview )" - CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureColorWarp; // 0x260 + CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureColorWarp; // 0x200 // MPropertyFriendlyName "detail 2 texture" // MPropertyAttributeEditor "AssetBrowse( vtex, *showassetpreview )" - CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureDetail2; // 0x268 + CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureDetail2; // 0x208 // MPropertyFriendlyName "diffuse warp texture (3d)" // MPropertyAttributeEditor "AssetBrowse( vtex, *showassetpreview )" - CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureDiffuseWarp; // 0x270 + CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureDiffuseWarp; // 0x210 // MPropertyFriendlyName "fresnel color warp texture (3d)" // MPropertyAttributeEditor "AssetBrowse( vtex, *showassetpreview )" - CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureFresnelColorWarp; // 0x278 + CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureFresnelColorWarp; // 0x218 // MPropertyFriendlyName "fresnel warp texture" // MPropertyAttributeEditor "AssetBrowse( vtex, *showassetpreview )" - CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureFresnelWarp; // 0x280 + CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureFresnelWarp; // 0x220 // MPropertyFriendlyName "specular warp texture" // MPropertyAttributeEditor "AssetBrowse( vtex, *showassetpreview )" - CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureSpecularWarp; // 0x288 + CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureSpecularWarp; // 0x228 // MPropertyFriendlyName "environment map texture" // MPropertyAttributeEditor "AssetBrowse( vtex, *showassetpreview )" - CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureEnvMap; // 0x290 + CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureEnvMap; // 0x230 }; // Alignment: 4 -// Size: 0x270 +// Size: 0x230 class C_OP_RemapTransformOrientationToYaw : public CParticleFunctionOperator { public: // MPropertyFriendlyName "transform input" - CParticleTransformInput m_TransformInput; // 0x210 + CParticleTransformInput m_TransformInput; // 0x1b0 // MPropertyFriendlyName "rotation field" // MPropertyAttributeChoiceName "particlefield_rotation" - ParticleAttributeIndex_t m_nFieldOutput; // 0x260 + ParticleAttributeIndex_t m_nFieldOutput; // 0x218 // MPropertyFriendlyName "rotation offset" - float m_flRotOffset; // 0x264 + float m_flRotOffset; // 0x21c // MPropertyFriendlyName "spin strength" - float m_flSpinStrength; // 0x268 -}; - -// Alignment: 2 -// Size: 0x10 -class CPulse_PublicOutput -{ -public: - CUtlSymbolLarge m_Name; // 0x0 - CUtlString m_Description; // 0x8 + float m_flSpinStrength; // 0x220 }; // Alignment: 5 -// Size: 0x240 +// Size: 0x1e0 class C_INIT_RemapInitialVisibilityScalar : public CParticleFunctionInitializer { -private: - [[maybe_unused]] uint8_t __pad0220[0x4]; // 0x220 public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x224 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c4 // MPropertyFriendlyName "visibility minimum" - float m_flInputMin; // 0x228 + float m_flInputMin; // 0x1c8 // MPropertyFriendlyName "visibility maximum" - float m_flInputMax; // 0x22c + float m_flInputMax; // 0x1cc // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x230 + float m_flOutputMin; // 0x1d0 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x234 + float m_flOutputMax; // 0x1d4 }; // Alignment: 6 -// Size: 0x260 +// Size: 0x200 class C_INIT_AddVectorToVector : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "component scale factor" - Vector m_vecScale; // 0x220 + Vector m_vecScale; // 0x1c0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x22c + ParticleAttributeIndex_t m_nFieldOutput; // 0x1cc // MPropertyFriendlyName "input field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldInput; // 0x230 + ParticleAttributeIndex_t m_nFieldInput; // 0x1d0 // MPropertyFriendlyName "random offset min" - Vector m_vOffsetMin; // 0x234 + Vector m_vOffsetMin; // 0x1d4 // MPropertyFriendlyName "random offset max" - Vector m_vOffsetMax; // 0x240 + Vector m_vOffsetMax; // 0x1e0 // MPropertyFriendlyName "Random number generator controls" - CRandomNumberGeneratorParameters m_randomnessParameters; // 0x24c -}; - -// Alignment: 1 -// Size: 0x78 -class CPulseCell_Inflow_EventHandler : public CPulseCell_Inflow_BaseEntrypoint -{ -public: - CUtlSymbolLarge m_EventName; // 0x70 + CRandomNumberGeneratorParameters m_randomnessParameters; // 0x1ec }; // Alignment: 6 -// Size: 0xe60 +// Size: 0xea0 class C_OP_SetVectorAttributeToVectorExpression : public CParticleFunctionOperator { public: // MPropertyFriendlyName "expression" - VectorExpressionType_t m_nExpression; // 0x210 + VectorExpressionType_t m_nExpression; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "input 1" - CPerParticleVecInput m_vInput1; // 0x218 + CPerParticleVecInput m_vInput1; // 0x1b8 // MPropertyFriendlyName "input 2" - CPerParticleVecInput m_vInput2; // 0x800 + CPerParticleVecInput m_vInput2; // 0x7f0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nOutputField; // 0xde8 + ParticleAttributeIndex_t m_nOutputField; // 0xe28 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0xdec + ParticleSetMethod_t m_nSetMethod; // 0xe2c // MPropertyFriendlyName "normalize result" - bool m_bNormalizedOutput; // 0xdf0 + bool m_bNormalizedOutput; // 0xe30 }; // Alignment: 5 -// Size: 0x820 +// Size: 0x810 class C_INIT_InitFromVectorFieldSnapshot : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "snapshot control point number" - int32_t m_nControlPointNumber; // 0x220 + int32_t m_nControlPointNumber; // 0x1c0 // MPropertyFriendlyName "local space control point number" - int32_t m_nLocalSpaceCP; // 0x224 + int32_t m_nLocalSpaceCP; // 0x1c4 // MPropertyFriendlyName "weight update control point" - int32_t m_nWeightUpdateCP; // 0x228 + int32_t m_nWeightUpdateCP; // 0x1c8 // MPropertyFriendlyName "use vertical velocity for weighting" - bool m_bUseVerticalVelocity; // 0x22c + bool m_bUseVerticalVelocity; // 0x1cc private: - [[maybe_unused]] uint8_t __pad022d[0x3]; // 0x22d + [[maybe_unused]] uint8_t __pad01cd[0x3]; // 0x1cd public: // MPropertyFriendlyName "Component Scale" - CPerParticleVecInput m_vecScale; // 0x230 -}; - -// Alignment: 1 -// Size: 0x60 -class CPulseCell_Outflow_CycleRandom : public CPulseCell_BaseFlow -{ -public: - CUtlVector< CPulse_OutflowConnection > m_Outputs; // 0x48 + CPerParticleVecInput m_vecScale; // 0x1d0 }; // Alignment: 2 -// Size: 0x490 +// Size: 0x450 class C_OP_CollideWithParentParticles : public CParticleFunctionConstraint { public: // MPropertyFriendlyName "parent particle radius scale" - CPerParticleFloatInput m_flParentRadiusScale; // 0x210 + CPerParticleFloatInput m_flParentRadiusScale; // 0x1b0 // MPropertyFriendlyName "particle radius scale" - CPerParticleFloatInput m_flRadiusScale; // 0x350 -}; - -// Alignment: 0 -// Size: 0x18 -class CPulse_ResumePoint : public CPulse_OutflowConnection -{ -public: - // No members available + CPerParticleFloatInput m_flRadiusScale; // 0x300 }; // Alignment: 3 -// Size: 0x370 +// Size: 0x320 class C_INIT_DistanceCull : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "control point" - int32_t m_nControlPoint; // 0x220 + int32_t m_nControlPoint; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0224[0x4]; // 0x224 + [[maybe_unused]] uint8_t __pad01c4[0x4]; // 0x1c4 public: // MPropertyFriendlyName "cull distance" - CParticleCollectionFloatInput m_flDistance; // 0x228 + CParticleCollectionFloatInput m_flDistance; // 0x1c8 // MPropertyFriendlyName "cull inside instead of outside" - bool m_bCullInside; // 0x368 + bool m_bCullInside; // 0x318 }; // Alignment: 5 -// Size: 0x250 +// Size: 0x1f0 class C_OP_RampScalarSplineSimple : public CParticleFunctionOperator { public: // MPropertyFriendlyName "ramp rate" - float m_Rate; // 0x210 + float m_Rate; // 0x1b0 // MPropertyFriendlyName "start time" - float m_flStartTime; // 0x214 + float m_flStartTime; // 0x1b4 // MPropertyFriendlyName "end time" - float m_flEndTime; // 0x218 + float m_flEndTime; // 0x1b8 private: - [[maybe_unused]] uint8_t __pad021c[0x24]; // 0x21c + [[maybe_unused]] uint8_t __pad01bc[0x24]; // 0x1bc public: // MPropertyFriendlyName "ramp field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nField; // 0x240 + ParticleAttributeIndex_t m_nField; // 0x1e0 // MPropertyFriendlyName "ease out" - bool m_bEaseOut; // 0x244 -}; - -// Alignment: 0 -// Size: 0x48 -class CPulseCell_Value_RandomInt : public CPulseCell_BaseValue -{ -public: - // No members available -}; - -// Alignment: 2 -// Size: 0x28 -struct CPulseCell_Outflow_CycleShuffled__InstanceState_t -{ -public: - CUtlVectorFixedGrowable< uint8 > m_Shuffle; // 0x0 - int32_t m_nNextShuffle; // 0x20 + bool m_bEaseOut; // 0x1e4 }; // Alignment: 5 -// Size: 0x250 +// Size: 0x1f0 class C_INIT_RandomSequence : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "sequence min" // MPropertyAttributeEditor "SequencePicker( 1 )" - int32_t m_nSequenceMin; // 0x220 + int32_t m_nSequenceMin; // 0x1c0 // MPropertyFriendlyName "sequence max" // MPropertyAttributeEditor "SequencePicker( 1 )" - int32_t m_nSequenceMax; // 0x224 + int32_t m_nSequenceMax; // 0x1c4 // MPropertyFriendlyName "shuffle" - bool m_bShuffle; // 0x228 + bool m_bShuffle; // 0x1c8 // MPropertyFriendlyName "linear" - bool m_bLinear; // 0x229 + bool m_bLinear; // 0x1c9 private: - [[maybe_unused]] uint8_t __pad022a[0x6]; // 0x22a + [[maybe_unused]] uint8_t __pad01ca[0x6]; // 0x1ca public: // MPropertyFriendlyName "weighted list" - CUtlVector< SequenceWeightedList_t > m_WeightedList; // 0x230 -}; - -// Alignment: 1 -// Size: 0x4 -struct PulseTestEHandle_t -{ -public: - int32_t m_Value; // 0x0 + CUtlVector< SequenceWeightedList_t > m_WeightedList; // 0x1d0 }; // Alignment: 6 -// Size: 0x260 +// Size: 0x200 class C_OP_FadeOut : public CParticleFunctionOperator { public: // MPropertyFriendlyName "fade out time min" - float m_flFadeOutTimeMin; // 0x210 + float m_flFadeOutTimeMin; // 0x1b0 // MPropertyFriendlyName "fade out time max" - float m_flFadeOutTimeMax; // 0x214 + float m_flFadeOutTimeMax; // 0x1b4 // MPropertyFriendlyName "fade out time exponent" - float m_flFadeOutTimeExp; // 0x218 + float m_flFadeOutTimeExp; // 0x1b8 // MPropertyFriendlyName "fade bias" - float m_flFadeBias; // 0x21c + float m_flFadeBias; // 0x1bc private: - [[maybe_unused]] uint8_t __pad0220[0x30]; // 0x220 + [[maybe_unused]] uint8_t __pad01c0[0x30]; // 0x1c0 public: // MPropertyFriendlyName "proportional 0/1" - bool m_bProportional; // 0x250 + bool m_bProportional; // 0x1f0 // MPropertyFriendlyName "ease in and out" - bool m_bEaseInAndOut; // 0x251 + bool m_bEaseInAndOut; // 0x1f1 }; // Alignment: 13 -// Size: 0x240 +// Size: 0x1e0 class C_OP_OscillateScalar : public CParticleFunctionOperator { public: // MPropertyFriendlyName "oscillation rate min" - float m_RateMin; // 0x210 + float m_RateMin; // 0x1b0 // MPropertyFriendlyName "oscillation rate max" - float m_RateMax; // 0x214 + float m_RateMax; // 0x1b4 // MPropertyFriendlyName "oscillation frequency min" - float m_FrequencyMin; // 0x218 + float m_FrequencyMin; // 0x1b8 // MPropertyFriendlyName "oscillation frequency max" - float m_FrequencyMax; // 0x21c + float m_FrequencyMax; // 0x1bc // MPropertyFriendlyName "oscillation field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nField; // 0x220 + ParticleAttributeIndex_t m_nField; // 0x1c0 // MPropertyFriendlyName "proportional 0/1" - bool m_bProportional; // 0x224 + bool m_bProportional; // 0x1c4 // MPropertyFriendlyName "start/end proportional" - bool m_bProportionalOp; // 0x225 + bool m_bProportionalOp; // 0x1c5 private: - [[maybe_unused]] uint8_t __pad0226[0x2]; // 0x226 + [[maybe_unused]] uint8_t __pad01c6[0x2]; // 0x1c6 public: // MPropertyFriendlyName "start time min" - float m_flStartTime_min; // 0x228 + float m_flStartTime_min; // 0x1c8 // MPropertyFriendlyName "start time max" - float m_flStartTime_max; // 0x22c + float m_flStartTime_max; // 0x1cc // MPropertyFriendlyName "end time min" - float m_flEndTime_min; // 0x230 + float m_flEndTime_min; // 0x1d0 // MPropertyFriendlyName "end time max" - float m_flEndTime_max; // 0x234 + float m_flEndTime_max; // 0x1d4 // MPropertyFriendlyName "oscillation multiplier" - float m_flOscMult; // 0x238 + float m_flOscMult; // 0x1d8 // MPropertyFriendlyName "oscillation start phase" - float m_flOscAdd; // 0x23c + float m_flOscAdd; // 0x1dc }; // Alignment: 5 -// Size: 0x630 +// Size: 0x600 class C_OP_RenderBlobs : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "cube width" - CParticleCollectionRendererFloatInput m_cubeWidth; // 0x260 + CParticleCollectionRendererFloatInput m_cubeWidth; // 0x200 // MPropertyFriendlyName "cutoff radius" - CParticleCollectionRendererFloatInput m_cutoffRadius; // 0x3a0 + CParticleCollectionRendererFloatInput m_cutoffRadius; // 0x350 // MPropertyFriendlyName "render radius" - CParticleCollectionRendererFloatInput m_renderRadius; // 0x4e0 + CParticleCollectionRendererFloatInput m_renderRadius; // 0x4a0 // MPropertyFriendlyName "scale CP (cube width/cutoff/render = x/y/z)" - int32_t m_nScaleCP; // 0x620 + int32_t m_nScaleCP; // 0x5f0 private: - [[maybe_unused]] uint8_t __pad0624[0x4]; // 0x624 + [[maybe_unused]] uint8_t __pad05f4[0x4]; // 0x5f4 public: - CStrongHandle< InfoForResourceTypeIMaterial2 > m_hMaterial; // 0x628 + CStrongHandle< InfoForResourceTypeIMaterial2 > m_hMaterial; // 0x5f8 }; // Alignment: 2 -// Size: 0x810 +// Size: 0x800 class C_INIT_InitVecCollection : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "value" - CParticleCollectionVecInput m_InputValue; // 0x220 + CParticleCollectionVecInput m_InputValue; // 0x1c0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nOutputField; // 0x808 -}; - -// Alignment: 0 -// Size: 0x48 -class CPulseCell_Test_NoInflow : public CPulseCell_BaseFlow -{ -public: - // No members available -}; - -// Alignment: 0 -// Size: 0xc0 -class CPulseCell_Step_CallMethod : public CPulseCell_Step_BaseCallMethod -{ -public: - // No members available + ParticleAttributeIndex_t m_nOutputField; // 0x7f8 }; // Alignment: 26 -// Size: 0x920 +// Size: 0x910 class C_OP_WorldTraceConstraint : public CParticleFunctionConstraint { public: // MPropertyFriendlyName "control point for fast collision tests" - int32_t m_nCP; // 0x210 + int32_t m_nCP; // 0x1b0 // MPropertyFriendlyName "control point offset for fast collisions" // MVectorIsCoordinate - Vector m_vecCpOffset; // 0x214 + Vector m_vecCpOffset; // 0x1b4 // MPropertyFriendlyName "collision mode" - ParticleCollisionMode_t m_nCollisionMode; // 0x220 + ParticleCollisionMode_t m_nCollisionMode; // 0x1c0 // MPropertyFriendlyName "minimum detail collision mode" - ParticleCollisionMode_t m_nCollisionModeMin; // 0x224 + ParticleCollisionMode_t m_nCollisionModeMin; // 0x1c4 // MPropertyStartGroup "Collision Options" // MPropertyFriendlyName "Trace Set" - ParticleTraceSet_t m_nTraceSet; // 0x228 + ParticleTraceSet_t m_nTraceSet; // 0x1c8 // MPropertyFriendlyName "collision group" - char m_CollisionGroupName[128]; // 0x22c + char m_CollisionGroupName[128]; // 0x1cc // MPropertyFriendlyName "World Only" - bool m_bWorldOnly; // 0x2ac + bool m_bWorldOnly; // 0x24c // MPropertyFriendlyName "brush only" - bool m_bBrushOnly; // 0x2ad + bool m_bBrushOnly; // 0x24d // MPropertyFriendlyName "include water" - bool m_bIncludeWater; // 0x2ae + bool m_bIncludeWater; // 0x24e private: - [[maybe_unused]] uint8_t __pad02af[0x1]; // 0x2af + [[maybe_unused]] uint8_t __pad024f[0x1]; // 0x24f public: // MPropertyFriendlyName "CP Entity to Ignore for Collisions" - int32_t m_nIgnoreCP; // 0x2b0 + int32_t m_nIgnoreCP; // 0x250 // MPropertyFriendlyName "control point movement distance tolerance" // MPropertySuppressExpr "m_nCollisionMode == COLLISION_MODE_PER_PARTICLE_TRACE" - float m_flCpMovementTolerance; // 0x2b4 + float m_flCpMovementTolerance; // 0x254 // MPropertyFriendlyName "plane cache retest rate" // MPropertySuppressExpr "m_nCollisionMode != COLLISION_MODE_PER_FRAME_PLANESET" - float m_flRetestRate; // 0x2b8 + float m_flRetestRate; // 0x258 // MPropertyFriendlyName "trace accuracy tolerance" // MPropertySuppressExpr "m_nCollisionMode != COLLISION_MODE_USE_NEAREST_TRACE" - float m_flTraceTolerance; // 0x2bc + float m_flTraceTolerance; // 0x25c // MPropertyFriendlyName "Confirm Collision Speed Threshold" // MPropertySuppressExpr "m_nCollisionMode == COLLISION_MODE_PER_PARTICLE_TRACE" - float m_flCollisionConfirmationSpeed; // 0x2c0 + float m_flCollisionConfirmationSpeed; // 0x260 // MPropertyFriendlyName "Max Confirmation Traces Per Fame" // MPropertySuppressExpr "m_nCollisionMode == COLLISION_MODE_PER_PARTICLE_TRACE" - float m_nMaxTracesPerFrame; // 0x2c4 + float m_nMaxTracesPerFrame; // 0x264 // MPropertyStartGroup "Impact Options" // MPropertyFriendlyName "radius scale" - CPerParticleFloatInput m_flRadiusScale; // 0x2c8 + CPerParticleFloatInput m_flRadiusScale; // 0x268 // MPropertyFriendlyName "amount of bounce" - CPerParticleFloatInput m_flBounceAmount; // 0x408 + CPerParticleFloatInput m_flBounceAmount; // 0x3b8 // MPropertyFriendlyName "amount of slide" - CPerParticleFloatInput m_flSlideAmount; // 0x548 + CPerParticleFloatInput m_flSlideAmount; // 0x508 // MPropertyFriendlyName "Random Direction scale" - CPerParticleFloatInput m_flRandomDirScale; // 0x688 + CPerParticleFloatInput m_flRandomDirScale; // 0x658 // MPropertyFriendlyName "Add Decay to Bounce" - bool m_bDecayBounce; // 0x7c8 + bool m_bDecayBounce; // 0x7a8 // MPropertyFriendlyName "kill particle on collision" - bool m_bKillonContact; // 0x7c9 + bool m_bKillonContact; // 0x7a9 private: - [[maybe_unused]] uint8_t __pad07ca[0x2]; // 0x7ca + [[maybe_unused]] uint8_t __pad07aa[0x2]; // 0x7aa public: // MPropertyFriendlyName "minimum speed to kill on collision" - float m_flMinSpeed; // 0x7cc + float m_flMinSpeed; // 0x7ac // MPropertyFriendlyName "Set Normal" - bool m_bSetNormal; // 0x7d0 + bool m_bSetNormal; // 0x7b0 private: - [[maybe_unused]] uint8_t __pad07d1[0x3]; // 0x7d1 + [[maybe_unused]] uint8_t __pad07b1[0x3]; // 0x7b1 public: // MPropertyFriendlyName "Stick On Collision Cache Field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nStickOnCollisionField; // 0x7d4 + ParticleAttributeIndex_t m_nStickOnCollisionField; // 0x7b4 // MPropertyFriendlyName "Speed to stop when sticking" - CPerParticleFloatInput m_flStopSpeed; // 0x7d8 + CPerParticleFloatInput m_flStopSpeed; // 0x7b8 // MPropertyFriendlyName "Entity Hitbox Cache Field (Requires Stick on Collision)" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nEntityStickDataField; // 0x918 + ParticleAttributeIndex_t m_nEntityStickDataField; // 0x908 }; // Alignment: 3 -// Size: 0x3b0 +// Size: 0x360 class C_OP_RenderPostProcessing : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "Post Processing Strength" - CPerParticleFloatInput m_flPostProcessStrength; // 0x260 + CPerParticleFloatInput m_flPostProcessStrength; // 0x200 // MPropertyFriendlyName "Post Processing File" // MPropertyAttributeEditor "AssetBrowse( vpost, *showassetpreview )" - CStrongHandle< InfoForResourceTypeCPostProcessingResource > m_hPostTexture; // 0x3a0 + CStrongHandle< InfoForResourceTypeCPostProcessingResource > m_hPostTexture; // 0x350 // MPropertyFriendlyName "Post Processing Priority Group" - ParticlePostProcessPriorityGroup_t m_nPriority; // 0x3a8 + ParticlePostProcessPriorityGroup_t m_nPriority; // 0x358 }; // Alignment: 4 -// Size: 0x230 +// Size: 0x1d0 class C_INIT_RandomScalar : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "min" - float m_flMin; // 0x220 + float m_flMin; // 0x1c0 // MPropertyFriendlyName "max" - float m_flMax; // 0x224 + float m_flMax; // 0x1c4 // MPropertyFriendlyName "exponent" - float m_flExponent; // 0x228 + float m_flExponent; // 0x1c8 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x22c + ParticleAttributeIndex_t m_nFieldOutput; // 0x1cc }; // Alignment: 13 -// Size: 0x550 +// Size: 0x510 class C_INIT_PositionPlaceOnGround : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "offset" - CPerParticleFloatInput m_flOffset; // 0x220 + CPerParticleFloatInput m_flOffset; // 0x1c0 // MPropertyFriendlyName "max trace length" - CPerParticleFloatInput m_flMaxTraceLength; // 0x360 + CPerParticleFloatInput m_flMaxTraceLength; // 0x310 // MPropertyFriendlyName "collision group" - char m_CollisionGroupName[128]; // 0x4a0 + char m_CollisionGroupName[128]; // 0x460 // MPropertyFriendlyName "Trace Set" - ParticleTraceSet_t m_nTraceSet; // 0x520 + ParticleTraceSet_t m_nTraceSet; // 0x4e0 private: - [[maybe_unused]] uint8_t __pad0524[0xc]; // 0x524 + [[maybe_unused]] uint8_t __pad04e4[0xc]; // 0x4e4 public: // MPropertyFriendlyName "No Collision Behavior" - ParticleTraceMissBehavior_t m_nTraceMissBehavior; // 0x530 + ParticleTraceMissBehavior_t m_nTraceMissBehavior; // 0x4f0 // MPropertyFriendlyName "include water" - bool m_bIncludeWater; // 0x534 + bool m_bIncludeWater; // 0x4f4 // MPropertyFriendlyName "set normal" - bool m_bSetNormal; // 0x535 + bool m_bSetNormal; // 0x4f5 // MPropertyFriendlyName "set Previous XYZ only" - bool m_bSetPXYZOnly; // 0x536 + bool m_bSetPXYZOnly; // 0x4f6 // MPropertyFriendlyName "Trace along particle normal" - bool m_bTraceAlongNormal; // 0x537 + bool m_bTraceAlongNormal; // 0x4f7 // MPropertyFriendlyName "Offset only if trace hit" - bool m_bOffsetonColOnly; // 0x538 + bool m_bOffsetonColOnly; // 0x4f8 private: - [[maybe_unused]] uint8_t __pad0539[0x3]; // 0x539 + [[maybe_unused]] uint8_t __pad04f9[0x3]; // 0x4f9 public: // MPropertyFriendlyName "offset final position by this fraction of the particle radius" - float m_flOffsetByRadiusFactor; // 0x53c + float m_flOffsetByRadiusFactor; // 0x4fc // MPropertyFriendlyName "preserve initial Z-offset relative to cp" - int32_t m_nPreserveOffsetCP; // 0x540 + int32_t m_nPreserveOffsetCP; // 0x500 // MPropertyFriendlyName "CP Entity to Ignore for Collisions" - int32_t m_nIgnoreCP; // 0x544 + int32_t m_nIgnoreCP; // 0x504 }; // Alignment: 11 -// Size: 0x7c0 +// Size: 0x7d0 class C_OP_CylindricalDistanceToTransform : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "cylinder inner radius" - CPerParticleFloatInput m_flInputMin; // 0x218 + CPerParticleFloatInput m_flInputMin; // 0x1b8 // MPropertyFriendlyName "cylinder outer radius" - CPerParticleFloatInput m_flInputMax; // 0x358 + CPerParticleFloatInput m_flInputMax; // 0x308 // MPropertyFriendlyName "cylinder inner output" - CPerParticleFloatInput m_flOutputMin; // 0x498 + CPerParticleFloatInput m_flOutputMin; // 0x458 // MPropertyFriendlyName "cylinder outer output" - CPerParticleFloatInput m_flOutputMax; // 0x5d8 + CPerParticleFloatInput m_flOutputMax; // 0x5a8 // MPropertyFriendlyName "cylindrical top transform" - CParticleTransformInput m_TransformStart; // 0x718 + CParticleTransformInput m_TransformStart; // 0x6f8 // MPropertyFriendlyName "cylindrical bottom transform" - CParticleTransformInput m_TransformEnd; // 0x768 + CParticleTransformInput m_TransformEnd; // 0x760 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x7b8 + ParticleSetMethod_t m_nSetMethod; // 0x7c8 // MPropertyFriendlyName "only active within specified distance" - bool m_bActiveRange; // 0x7bc + bool m_bActiveRange; // 0x7cc // MPropertyFriendlyName "output is additive" - bool m_bAdditive; // 0x7bd + bool m_bAdditive; // 0x7cd // MPropertyFriendlyName "apply radius to ends (capsule)" - bool m_bCapsule; // 0x7be + bool m_bCapsule; // 0x7ce }; // Alignment: 9 @@ -22168,19 +18165,19 @@ class C_OP_VectorFieldSnapshot : public CParticleFunctionOperator { public: // MPropertyFriendlyName "snapshot control point number" - int32_t m_nControlPointNumber; // 0x210 + int32_t m_nControlPointNumber; // 0x1b0 // MPropertyFriendlyName "extra velocity field to write" // MPropertyAttributeChoiceName "particlefield" - ParticleAttributeIndex_t m_nAttributeToWrite; // 0x214 + ParticleAttributeIndex_t m_nAttributeToWrite; // 0x1b4 // MPropertyFriendlyName "local space control point number" - int32_t m_nLocalSpaceCP; // 0x218 + int32_t m_nLocalSpaceCP; // 0x1b8 private: - [[maybe_unused]] uint8_t __pad021c[0x4]; // 0x21c + [[maybe_unused]] uint8_t __pad01bc[0x4]; // 0x1bc public: // MPropertyFriendlyName "Interpolation" - CPerParticleFloatInput m_flInterpolation; // 0x220 + CPerParticleFloatInput m_flInterpolation; // 0x1c0 // MPropertyFriendlyName "Component Scale" - CPerParticleVecInput m_vecScale; // 0x360 + CPerParticleVecInput m_vecScale; // 0x310 // MPropertyFriendlyName "Boundary Dampening" float m_flBoundaryDampening; // 0x948 // MPropertyFriendlyName "Set Velocity" @@ -22195,185 +18192,185 @@ public: }; // Alignment: 33 -// Size: 0x760 +// Size: 0x700 class C_OP_ControlpointLight : public CParticleFunctionOperator { public: // MPropertyFriendlyName "initial color bias" - float m_flScale; // 0x210 + float m_flScale; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4cc]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4cc]; // 0x1b4 public: // MPropertyFriendlyName "light 1 control point" - int32_t m_nControlPoint1; // 0x6e0 + int32_t m_nControlPoint1; // 0x680 // MPropertyFriendlyName "light 2 control point" - int32_t m_nControlPoint2; // 0x6e4 + int32_t m_nControlPoint2; // 0x684 // MPropertyFriendlyName "light 3 control point" - int32_t m_nControlPoint3; // 0x6e8 + int32_t m_nControlPoint3; // 0x688 // MPropertyFriendlyName "light 4 control point" - int32_t m_nControlPoint4; // 0x6ec + int32_t m_nControlPoint4; // 0x68c // MPropertyFriendlyName "light 1 control point offset" - Vector m_vecCPOffset1; // 0x6f0 + Vector m_vecCPOffset1; // 0x690 // MPropertyFriendlyName "light 2 control point offset" - Vector m_vecCPOffset2; // 0x6fc + Vector m_vecCPOffset2; // 0x69c // MPropertyFriendlyName "light 3 control point offset" - Vector m_vecCPOffset3; // 0x708 + Vector m_vecCPOffset3; // 0x6a8 // MPropertyFriendlyName "light 4 control point offset" - Vector m_vecCPOffset4; // 0x714 + Vector m_vecCPOffset4; // 0x6b4 // MPropertyFriendlyName "light 1 50% distance" - float m_LightFiftyDist1; // 0x720 + float m_LightFiftyDist1; // 0x6c0 // MPropertyFriendlyName "light 1 0% distance" - float m_LightZeroDist1; // 0x724 + float m_LightZeroDist1; // 0x6c4 // MPropertyFriendlyName "light 2 50% distance" - float m_LightFiftyDist2; // 0x728 + float m_LightFiftyDist2; // 0x6c8 // MPropertyFriendlyName "light 2 0% distance" - float m_LightZeroDist2; // 0x72c + float m_LightZeroDist2; // 0x6cc // MPropertyFriendlyName "light 3 50% distance" - float m_LightFiftyDist3; // 0x730 + float m_LightFiftyDist3; // 0x6d0 // MPropertyFriendlyName "light 3 0% distance" - float m_LightZeroDist3; // 0x734 + float m_LightZeroDist3; // 0x6d4 // MPropertyFriendlyName "light 4 50% distance" - float m_LightFiftyDist4; // 0x738 + float m_LightFiftyDist4; // 0x6d8 // MPropertyFriendlyName "light 4 0% distance" - float m_LightZeroDist4; // 0x73c + float m_LightZeroDist4; // 0x6dc // MPropertyFriendlyName "light 1 color" - Color m_LightColor1; // 0x740 + Color m_LightColor1; // 0x6e0 // MPropertyFriendlyName "light 2 color" - Color m_LightColor2; // 0x744 + Color m_LightColor2; // 0x6e4 // MPropertyFriendlyName "light 3 color" - Color m_LightColor3; // 0x748 + Color m_LightColor3; // 0x6e8 // MPropertyFriendlyName "light 4 color" - Color m_LightColor4; // 0x74c + Color m_LightColor4; // 0x6ec // MPropertyFriendlyName "light 1 type 0=point 1=spot" - bool m_bLightType1; // 0x750 + bool m_bLightType1; // 0x6f0 // MPropertyFriendlyName "light 2 type 0=point 1=spot" - bool m_bLightType2; // 0x751 + bool m_bLightType2; // 0x6f1 // MPropertyFriendlyName "light 3 type 0=point 1=spot" - bool m_bLightType3; // 0x752 + bool m_bLightType3; // 0x6f2 // MPropertyFriendlyName "light 4 type 0=point 1=spot" - bool m_bLightType4; // 0x753 + bool m_bLightType4; // 0x6f3 // MPropertyFriendlyName "light 1 dynamic light" - bool m_bLightDynamic1; // 0x754 + bool m_bLightDynamic1; // 0x6f4 // MPropertyFriendlyName "light 2 dynamic light" - bool m_bLightDynamic2; // 0x755 + bool m_bLightDynamic2; // 0x6f5 // MPropertyFriendlyName "light 3 dynamic light" - bool m_bLightDynamic3; // 0x756 + bool m_bLightDynamic3; // 0x6f6 // MPropertyFriendlyName "light 4 dynamic light" - bool m_bLightDynamic4; // 0x757 + bool m_bLightDynamic4; // 0x6f7 // MPropertyFriendlyName "compute normals from control points" - bool m_bUseNormal; // 0x758 + bool m_bUseNormal; // 0x6f8 // MPropertyFriendlyName "half-lambert normals" - bool m_bUseHLambert; // 0x759 + bool m_bUseHLambert; // 0x6f9 private: - [[maybe_unused]] uint8_t __pad075a[0x4]; // 0x75a + [[maybe_unused]] uint8_t __pad06fa[0x4]; // 0x6fa public: // MPropertyFriendlyName "clamp minimum light value to initial color" - bool m_bClampLowerRange; // 0x75e + bool m_bClampLowerRange; // 0x6fe // MPropertyFriendlyName "clamp maximum light value to initial color" - bool m_bClampUpperRange; // 0x75f + bool m_bClampUpperRange; // 0x6ff }; // Alignment: 2 -// Size: 0x370 +// Size: 0x320 class C_OP_ChooseRandomChildrenInGroup : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "group ID to affect" - int32_t m_nChildGroupID; // 0x220 + int32_t m_nChildGroupID; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0224[0x4]; // 0x224 + [[maybe_unused]] uint8_t __pad01c4[0x4]; // 0x1c4 public: // MPropertyFriendlyName "Number of Children to Use" - CParticleCollectionFloatInput m_flNumberOfChildren; // 0x228 + CParticleCollectionFloatInput m_flNumberOfChildren; // 0x1c8 }; // Alignment: 5 -// Size: 0xe00 +// Size: 0xe40 class C_INIT_CreateWithinBox : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "min" // MVectorIsCoordinate - CPerParticleVecInput m_vecMin; // 0x220 + CPerParticleVecInput m_vecMin; // 0x1c0 // MPropertyFriendlyName "max" // MVectorIsCoordinate - CPerParticleVecInput m_vecMax; // 0x808 + CPerParticleVecInput m_vecMax; // 0x7f8 // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0xdf0 + int32_t m_nControlPointNumber; // 0xe30 // MPropertyFriendlyName "use local space" - bool m_bLocalSpace; // 0xdf4 + bool m_bLocalSpace; // 0xe34 private: - [[maybe_unused]] uint8_t __pad0df5[0x3]; // 0xdf5 + [[maybe_unused]] uint8_t __pad0e35[0x3]; // 0xe35 public: // MPropertyFriendlyName "Random number generator controls" - CRandomNumberGeneratorParameters m_randomnessParameters; // 0xdf8 + CRandomNumberGeneratorParameters m_randomnessParameters; // 0xe38 }; // Alignment: 6 -// Size: 0x230 +// Size: 0x1d0 class C_OP_UpdateLightSource : public CParticleFunctionOperator { public: // MPropertyFriendlyName "color tint" - Color m_vColorTint; // 0x210 + Color m_vColorTint; // 0x1b0 // MPropertyFriendlyName "amount to multiply light brightness by" - float m_flBrightnessScale; // 0x214 + float m_flBrightnessScale; // 0x1b4 // MPropertyFriendlyName "amount to multiply particle system radius by to get light radius" - float m_flRadiusScale; // 0x218 + float m_flRadiusScale; // 0x1b8 // MPropertyFriendlyName "minimum radius for created lights" - float m_flMinimumLightingRadius; // 0x21c + float m_flMinimumLightingRadius; // 0x1bc // MPropertyFriendlyName "maximum radius for created lights" - float m_flMaximumLightingRadius; // 0x220 + float m_flMaximumLightingRadius; // 0x1c0 // MPropertyFriendlyName "amount of damping of changes" - float m_flPositionDampingConstant; // 0x224 + float m_flPositionDampingConstant; // 0x1c4 }; // Alignment: 2 -// Size: 0x270 +// Size: 0x210 class C_OP_RenderScreenVelocityRotate : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "rotate rate(dps)" - float m_flRotateRateDegrees; // 0x260 + float m_flRotateRateDegrees; // 0x200 // MPropertyFriendlyName "forward angle" - float m_flForwardDegrees; // 0x264 + float m_flForwardDegrees; // 0x204 }; // Alignment: 10 -// Size: 0x2e0 +// Size: 0x2b0 class C_OP_PercentageBetweenTransformsVector : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 // MPropertyFriendlyName "percentage minimum" - float m_flInputMin; // 0x214 + float m_flInputMin; // 0x1b4 // MPropertyFriendlyName "percentage maximum" - float m_flInputMax; // 0x218 + float m_flInputMax; // 0x1b8 // MPropertyFriendlyName "output minimum" // MVectorIsSometimesCoordinate - Vector m_vecOutputMin; // 0x21c + Vector m_vecOutputMin; // 0x1bc // MPropertyFriendlyName "output maximum" // MVectorIsSometimesCoordinate - Vector m_vecOutputMax; // 0x228 + Vector m_vecOutputMax; // 0x1c8 private: - [[maybe_unused]] uint8_t __pad0234[0x4]; // 0x234 + [[maybe_unused]] uint8_t __pad01d4[0x4]; // 0x1d4 public: // MPropertyFriendlyName "strarting transform" - CParticleTransformInput m_TransformStart; // 0x238 + CParticleTransformInput m_TransformStart; // 0x1d8 // MPropertyFriendlyName "end transform" - CParticleTransformInput m_TransformEnd; // 0x288 + CParticleTransformInput m_TransformEnd; // 0x240 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x2d8 + ParticleSetMethod_t m_nSetMethod; // 0x2a8 // MPropertyFriendlyName "only active within input range" - bool m_bActiveRange; // 0x2dc + bool m_bActiveRange; // 0x2ac // MPropertyFriendlyName "treat distance between points as radius" - bool m_bRadialCheck; // 0x2dd + bool m_bRadialCheck; // 0x2ad }; // Alignment: 0 -// Size: 0x270 +// Size: 0x210 class C_OP_RemapNamedModelMeshGroupEndCap : public C_OP_RemapNamedModelElementEndCap { public: @@ -22446,9 +18443,8 @@ public: // MPropertyAutoRebuildOnChange // MPropertySuppressExpr "!m_bEnableNamedValues" CUtlString m_NamedValueDomain; // 0x240 - // MPropertyFriendlyName "Variables" - // MPropertySuppressExpr "!m_bEnableNamedValues" - CUtlVector< ParticleNamedValueSource_t > m_NamedValueLocals; // 0x248 + // MPropertySuppressField + CUtlVector< ParticleNamedValueSource_t* > m_NamedValueLocals; // 0x248 // MPropertyStartGroup "+Base Properties" // MPropertyFriendlyName "color" // MPropertyColorPlusAlpha @@ -22566,235 +18562,242 @@ public: }; // Alignment: 8 -// Size: 0xb10 +// Size: 0xb20 class C_OP_RenderMaterialProxy : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "Control Point for Model" - int32_t m_nMaterialControlPoint; // 0x260 + int32_t m_nMaterialControlPoint; // 0x200 // MPropertyFriendlyName "proxy type" - MaterialProxyType_t m_nProxyType; // 0x264 + MaterialProxyType_t m_nProxyType; // 0x204 // MPropertyFriendlyName "material variables" // MPropertyAutoExpandSelf - CUtlVector< MaterialVariable_t > m_MaterialVars; // 0x268 + CUtlVector< MaterialVariable_t > m_MaterialVars; // 0x208 // MPropertyFriendlyName "material override" - CStrongHandle< InfoForResourceTypeIMaterial2 > m_hOverrideMaterial; // 0x280 + CStrongHandle< InfoForResourceTypeIMaterial2 > m_hOverrideMaterial; // 0x220 // MPropertyFriendlyName "material override enable" - CParticleCollectionFloatInput m_flMaterialOverrideEnabled; // 0x288 + CParticleCollectionFloatInput m_flMaterialOverrideEnabled; // 0x228 // MPropertyFriendlyName "model tint" - CParticleCollectionVecInput m_vecColorScale; // 0x3c8 + CParticleCollectionVecInput m_vecColorScale; // 0x378 // MPropertyFriendlyName "model alpha" CPerParticleFloatInput m_flAlpha; // 0x9b0 // MPropertyFriendlyName "model tint blend type" - ParticleColorBlendType_t m_nColorBlendType; // 0xaf0 + ParticleColorBlendType_t m_nColorBlendType; // 0xb00 }; // Alignment: 11 -// Size: 0x240 +// Size: 0x1e0 class C_OP_RemapCPtoScalar : public CParticleFunctionOperator { public: // MPropertyFriendlyName "input control point number" - int32_t m_nCPInput; // 0x210 + int32_t m_nCPInput; // 0x1b0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 // MPropertyFriendlyName "input field 0-2 X/Y/Z" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nField; // 0x218 + int32_t m_nField; // 0x1b8 // MPropertyFriendlyName "input minimum" - float m_flInputMin; // 0x21c + float m_flInputMin; // 0x1bc // MPropertyFriendlyName "input maximum" - float m_flInputMax; // 0x220 + float m_flInputMax; // 0x1c0 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x224 + float m_flOutputMin; // 0x1c4 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x228 + float m_flOutputMax; // 0x1c8 // MPropertyFriendlyName "emitter lifetime start time (seconds)" - float m_flStartTime; // 0x22c + float m_flStartTime; // 0x1cc // MPropertyFriendlyName "emitter lifetime end time (seconds)" - float m_flEndTime; // 0x230 + float m_flEndTime; // 0x1d0 // MPropertyFriendlyName "interpolation scale" - float m_flInterpRate; // 0x234 + float m_flInterpRate; // 0x1d4 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x238 + ParticleSetMethod_t m_nSetMethod; // 0x1d8 }; // Alignment: 1 -// Size: 0x360 +// Size: 0x310 class C_INIT_DistanceToNeighborCull : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "cull distance" - CPerParticleFloatInput m_flDistance; // 0x220 + CPerParticleFloatInput m_flDistance; // 0x1c0 }; -// Alignment: 5 -// Size: 0x820 +// Alignment: 4 +// Size: 0x870 class C_OP_SetSingleControlPointPosition : public CParticleFunctionPreEmission { public: - // MPropertyFriendlyName "set positions in world space" - bool m_bUseWorldLocation; // 0x220 // MPropertyFriendlyName "only set position once" - bool m_bSetOnce; // 0x221 + bool m_bSetOnce; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0222[0x2]; // 0x222 + [[maybe_unused]] uint8_t __pad01c1[0x3]; // 0x1c1 public: // MPropertyFriendlyName "control point number" - int32_t m_nCP1; // 0x224 + int32_t m_nCP1; // 0x1c4 // MPropertyFriendlyName "control point location" - CParticleCollectionVecInput m_vecCP1Pos; // 0x228 - // MPropertyFriendlyName "control point to offset positions from" - int32_t m_nHeadLocation; // 0x810 + CParticleCollectionVecInput m_vecCP1Pos; // 0x1c8 + // MPropertyFriendlyName "transform to offset positions from" + // MParticleInputOptional + CParticleTransformInput m_transformInput; // 0x800 }; // Alignment: 3 -// Size: 0x220 +// Size: 0x1c0 class C_OP_SnapshotRigidSkinToBones : public CParticleFunctionOperator { public: // MPropertyFriendlyName "rotate normals" - bool m_bTransformNormals; // 0x210 + bool m_bTransformNormals; // 0x1b0 // MPropertyFriendlyName "scale radii" - bool m_bTransformRadii; // 0x211 + bool m_bTransformRadii; // 0x1b1 private: - [[maybe_unused]] uint8_t __pad0212[0x2]; // 0x212 + [[maybe_unused]] uint8_t __pad01b2[0x2]; // 0x1b2 public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x214 + int32_t m_nControlPointNumber; // 0x1b4 }; // Alignment: 0 -// Size: 0x240 +// Size: 0x1e0 class C_INIT_RandomYaw : public CGeneralRandomRotation { public: // No members available }; -// Alignment: 3 -// Size: 0x10 -struct ParticleNamedValueSource_t +// Alignment: 6 +// Size: 0x38 +struct ParticleNamedValueConfiguration_t { public: - CUtlString m_Name; // 0x0 - // MPropertyAttributeChoiceName "particlefield_namedvaluetype" - PulseValueType_t m_Type; // 0x8 - bool m_IsPublic; // 0xc + CUtlString m_ConfigName; // 0x0 + KeyValues3 m_ConfigValue; // 0x8 + ParticleAttachment_t m_iAttachType; // 0x18 +private: + [[maybe_unused]] uint8_t __pad001c[0x4]; // 0x1c +public: + CUtlString m_BoundEntityPath; // 0x20 + CUtlString m_strEntityScope; // 0x28 + CUtlString m_strAttachmentName; // 0x30 }; // Alignment: 2 -// Size: 0x220 +// Size: 0x1c0 class C_OP_SetCPtoVector : public CParticleFunctionOperator { public: // MPropertyFriendlyName "input control point number" - int32_t m_nCPInput; // 0x210 + int32_t m_nCPInput; // 0x1b0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 -}; - -// Alignment: 2 -// Size: 0x78 -class CPulseCell_Outflow_StringSwitch : public CPulseCell_BaseFlow -{ -public: - CPulse_OutflowConnection m_DefaultCaseOutflow; // 0x48 - CUtlVector< CPulse_OutflowConnection > m_CaseOutflows; // 0x60 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 }; // Alignment: 3 -// Size: 0x220 +// Size: 0x940 +class C_OP_DragRelativeToPlane : public CParticleFunctionOperator +{ +public: + // MPropertyFriendlyName "dampening" + CParticleCollectionFloatInput m_flDragAtPlane; // 0x1b0 + // MPropertyFriendlyName "plane normal" + // MVectorIsCoordinate + CParticleCollectionVecInput m_vecPlaneNormal; // 0x300 + // MPropertyFriendlyName "control point number" + int32_t m_nControlPointNumber; // 0x938 +}; + +// Alignment: 3 +// Size: 0x1c0 class C_OP_LerpEndCapScalar : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 // MPropertyFriendlyName "value to lerp to" - float m_flOutput; // 0x214 + float m_flOutput; // 0x1b4 // MPropertyFriendlyName "lerp time" - float m_flLerpTime; // 0x218 + float m_flLerpTime; // 0x1b8 }; // Alignment: 3 -// Size: 0x220 +// Size: 0x1c0 class C_OP_RemapControlPointDirectionToVector : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 // MPropertyFriendlyName "scale factor" - float m_flScale; // 0x214 + float m_flScale; // 0x1b4 // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x218 + int32_t m_nControlPointNumber; // 0x1b8 }; // Alignment: 8 -// Size: 0x280 +// Size: 0x240 class C_OP_RemapTransformVisibilityToScalar : public CParticleFunctionOperator { public: // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x210 + ParticleSetMethod_t m_nSetMethod; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "transform input" - CParticleTransformInput m_TransformInput; // 0x218 + CParticleTransformInput m_TransformInput; // 0x1b8 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x268 + ParticleAttributeIndex_t m_nFieldOutput; // 0x220 // MPropertyFriendlyName "CP visibility minimum" - float m_flInputMin; // 0x26c + float m_flInputMin; // 0x224 // MPropertyFriendlyName "CP visibility maximum" - float m_flInputMax; // 0x270 + float m_flInputMax; // 0x228 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x274 + float m_flOutputMin; // 0x22c // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x278 + float m_flOutputMax; // 0x230 // MPropertyFriendlyName "visibility radius" - float m_flRadius; // 0x27c + float m_flRadius; // 0x234 }; // Alignment: 8 -// Size: 0x4d0 +// Size: 0x490 class C_OP_SetRandomControlPointPosition : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "set positions in world space" - bool m_bUseWorldLocation; // 0x220 + bool m_bUseWorldLocation; // 0x1c0 // MPropertyFriendlyName "inherit CP orientation" - bool m_bOrient; // 0x221 + bool m_bOrient; // 0x1c1 private: - [[maybe_unused]] uint8_t __pad0222[0x2]; // 0x222 + [[maybe_unused]] uint8_t __pad01c2[0x2]; // 0x1c2 public: // MPropertyFriendlyName "control point number" - int32_t m_nCP1; // 0x224 + int32_t m_nCP1; // 0x1c4 // MPropertyFriendlyName "control point to offset positions from" - int32_t m_nHeadLocation; // 0x228 + int32_t m_nHeadLocation; // 0x1c8 private: - [[maybe_unused]] uint8_t __pad022c[0x4]; // 0x22c + [[maybe_unused]] uint8_t __pad01cc[0x4]; // 0x1cc public: // MPropertyFriendlyName "re-randomize rate (-1 for once only)" - CParticleCollectionFloatInput m_flReRandomRate; // 0x230 + CParticleCollectionFloatInput m_flReRandomRate; // 0x1d0 // MPropertyFriendlyName "control point min" - Vector m_vecCPMinPos; // 0x370 + Vector m_vecCPMinPos; // 0x320 // MPropertyFriendlyName "control point max" - Vector m_vecCPMaxPos; // 0x37c + Vector m_vecCPMaxPos; // 0x32c // MPropertyFriendlyName "Interpolation" - CParticleCollectionFloatInput m_flInterpolation; // 0x388 + CParticleCollectionFloatInput m_flInterpolation; // 0x338 }; // Alignment: 32 // Size: 0xc8 class CNewParticleEffect : public IParticleEffect { -private: - [[maybe_unused]] uint8_t __pad0008[0x8]; // 0x8 public: CNewParticleEffect* m_pNext; // 0x10 CNewParticleEffect* m_pPrev; // 0x18 @@ -22843,31 +18846,54 @@ public: int32_t m_RefCount; // 0xc0 }; +// Alignment: 6 +// Size: 0x610 +class C_OP_RenderGpuImplicit : public CParticleFunctionRenderer +{ +public: + // MPropertySortPriority "-1" + // MPropertyDescription "Honors the per-particle radius (multiplied by radius scale) but is more expensive to render. Some particles with large radii can make things much costlier" + bool m_bUsePerParticleRadius; // 0x200 +private: + [[maybe_unused]] uint8_t __pad0201[0x7]; // 0x201 +public: + CParticleCollectionRendererFloatInput m_fGridSize; // 0x208 + CParticleCollectionRendererFloatInput m_fRadiusScale; // 0x358 + // MPropertyAttributeRange ".1 .95" + CParticleCollectionRendererFloatInput m_fIsosurfaceThreshold; // 0x4a8 + // MPropertyFriendlyName "scale CP (grid size/particle radius/threshold = x/y/z)" + int32_t m_nScaleCP; // 0x5f8 +private: + [[maybe_unused]] uint8_t __pad05fc[0x4]; // 0x5fc +public: + CStrongHandle< InfoForResourceTypeIMaterial2 > m_hMaterial; // 0x600 +}; + // Alignment: 1 -// Size: 0x350 +// Size: 0x300 class C_OP_EndCapTimedFreeze : public CParticleFunctionOperator { public: // MPropertyFriendlyName "freeze time" - CParticleCollectionFloatInput m_flFreezeTime; // 0x210 + CParticleCollectionFloatInput m_flFreezeTime; // 0x1b0 }; // Alignment: 3 -// Size: 0x240 +// Size: 0x1e0 class C_OP_SetControlPointToPlayer : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "control point number" - int32_t m_nCP1; // 0x220 + int32_t m_nCP1; // 0x1c0 // MPropertyFriendlyName "control point offset" // MVectorIsCoordinate - Vector m_vecCP1Pos; // 0x224 + Vector m_vecCP1Pos; // 0x1c4 // MPropertyFriendlyName "use eye orientation" - bool m_bOrientToEyes; // 0x230 + bool m_bOrientToEyes; // 0x1d0 }; // Alignment: 0 -// Size: 0x270 +// Size: 0x210 class C_OP_RemapNamedModelSequenceOnceTimed : public C_OP_RemapNamedModelElementOnceTimed { public: @@ -22875,668 +18901,669 @@ public: }; // Alignment: 8 -// Size: 0x250 +// Size: 0x1f0 class C_OP_TurbulenceForce : public CParticleFunctionForce { public: // MPropertyFriendlyName "noise scale 0" - float m_flNoiseCoordScale0; // 0x210 + float m_flNoiseCoordScale0; // 0x1b0 // MPropertyFriendlyName "noise scale 1" - float m_flNoiseCoordScale1; // 0x214 + float m_flNoiseCoordScale1; // 0x1b4 // MPropertyFriendlyName "noise scale 2" - float m_flNoiseCoordScale2; // 0x218 + float m_flNoiseCoordScale2; // 0x1b8 // MPropertyFriendlyName "noise scale 3" - float m_flNoiseCoordScale3; // 0x21c + float m_flNoiseCoordScale3; // 0x1bc // MPropertyFriendlyName "noise amount 0" // MVectorIsCoordinate - Vector m_vecNoiseAmount0; // 0x220 + Vector m_vecNoiseAmount0; // 0x1c0 // MPropertyFriendlyName "noise amount 1" // MVectorIsCoordinate - Vector m_vecNoiseAmount1; // 0x22c + Vector m_vecNoiseAmount1; // 0x1cc // MPropertyFriendlyName "noise amount 2" // MVectorIsCoordinate - Vector m_vecNoiseAmount2; // 0x238 + Vector m_vecNoiseAmount2; // 0x1d8 // MPropertyFriendlyName "noise amount 3" // MVectorIsCoordinate - Vector m_vecNoiseAmount3; // 0x244 + Vector m_vecNoiseAmount3; // 0x1e4 }; // Alignment: 3 -// Size: 0x220 +// Size: 0x1c0 class C_OP_ReinitializeScalarEndCap : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 // MPropertyFriendlyName "minimum" - float m_flOutputMin; // 0x214 + float m_flOutputMin; // 0x1b4 // MPropertyFriendlyName "maximum" - float m_flOutputMax; // 0x218 + float m_flOutputMax; // 0x1b8 }; // Alignment: 8 -// Size: 0x260 +// Size: 0x200 class C_OP_RampScalarLinear : public CParticleFunctionOperator { public: // MPropertyFriendlyName "ramp rate min" - float m_RateMin; // 0x210 + float m_RateMin; // 0x1b0 // MPropertyFriendlyName "ramp rate max" - float m_RateMax; // 0x214 + float m_RateMax; // 0x1b4 // MPropertyFriendlyName "start time min" - float m_flStartTime_min; // 0x218 + float m_flStartTime_min; // 0x1b8 // MPropertyFriendlyName "start time max" - float m_flStartTime_max; // 0x21c + float m_flStartTime_max; // 0x1bc // MPropertyFriendlyName "end time min" - float m_flEndTime_min; // 0x220 + float m_flEndTime_min; // 0x1c0 // MPropertyFriendlyName "end time max" - float m_flEndTime_max; // 0x224 + float m_flEndTime_max; // 0x1c4 private: - [[maybe_unused]] uint8_t __pad0228[0x28]; // 0x228 + [[maybe_unused]] uint8_t __pad01c8[0x28]; // 0x1c8 public: // MPropertyFriendlyName "ramp field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nField; // 0x250 + ParticleAttributeIndex_t m_nField; // 0x1f0 // MPropertyFriendlyName "start/end proportional" - bool m_bProportionalOp; // 0x254 + bool m_bProportionalOp; // 0x1f4 }; // Alignment: 6 -// Size: 0x260 +// Size: 0x200 class C_OP_InterpolateRadius : public CParticleFunctionOperator { public: // MPropertyFriendlyName "start time" - float m_flStartTime; // 0x210 + float m_flStartTime; // 0x1b0 // MPropertyFriendlyName "end time" - float m_flEndTime; // 0x214 + float m_flEndTime; // 0x1b4 // MPropertyFriendlyName "radius start scale" - float m_flStartScale; // 0x218 + float m_flStartScale; // 0x1b8 // MPropertyFriendlyName "radius end scale" - float m_flEndScale; // 0x21c + float m_flEndScale; // 0x1bc // MPropertyFriendlyName "ease in and out" - bool m_bEaseInAndOut; // 0x220 + bool m_bEaseInAndOut; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0221[0x3]; // 0x221 + [[maybe_unused]] uint8_t __pad01c1[0x3]; // 0x1c1 public: // MPropertyFriendlyName "scale bias" - float m_flBias; // 0x224 + float m_flBias; // 0x1c4 }; // Alignment: 11 -// Size: 0x410 +// Size: 0x3c0 class C_OP_SetControlPointToImpactPoint : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "control point to set" - int32_t m_nCPOut; // 0x220 + int32_t m_nCPOut; // 0x1c0 // MPropertyFriendlyName "control point to trace from" - int32_t m_nCPIn; // 0x224 + int32_t m_nCPIn; // 0x1c4 // MPropertyFriendlyName "trace update rate" - float m_flUpdateRate; // 0x228 + float m_flUpdateRate; // 0x1c8 private: - [[maybe_unused]] uint8_t __pad022c[0x4]; // 0x22c + [[maybe_unused]] uint8_t __pad01cc[0x4]; // 0x1cc public: // MPropertyFriendlyName "max trace length" - CParticleCollectionFloatInput m_flTraceLength; // 0x230 + CParticleCollectionFloatInput m_flTraceLength; // 0x1d0 // MPropertyFriendlyName "offset start point amount" - float m_flStartOffset; // 0x370 + float m_flStartOffset; // 0x320 // MPropertyFriendlyName "offset end point amount" - float m_flOffset; // 0x374 + float m_flOffset; // 0x324 // MPropertyFriendlyName "trace direction override" // MVectorIsCoordinate - Vector m_vecTraceDir; // 0x378 + Vector m_vecTraceDir; // 0x328 // MPropertyFriendlyName "trace collision group" - char m_CollisionGroupName[128]; // 0x384 + char m_CollisionGroupName[128]; // 0x334 // MPropertyFriendlyName "Trace Set" - ParticleTraceSet_t m_nTraceSet; // 0x404 + ParticleTraceSet_t m_nTraceSet; // 0x3b4 // MPropertyFriendlyName "set to trace endpoint if no collision" - bool m_bSetToEndpoint; // 0x408 + bool m_bSetToEndpoint; // 0x3b8 // MPropertyFriendlyName "trace to closest surface along all cardinal directions" - bool m_bTraceToClosestSurface; // 0x409 + bool m_bTraceToClosestSurface; // 0x3b9 }; // Alignment: 4 -// Size: 0x3b0 +// Size: 0x360 class C_OP_RenderVRHapticEvent : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "haptic hand" - ParticleVRHandChoiceList_t m_nHand; // 0x260 + ParticleVRHandChoiceList_t m_nHand; // 0x200 // MPropertyFriendlyName "hand control point number" - int32_t m_nOutputHandCP; // 0x264 + int32_t m_nOutputHandCP; // 0x204 // MPropertyFriendlyName "cp field" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nOutputField; // 0x268 + int32_t m_nOutputField; // 0x208 private: - [[maybe_unused]] uint8_t __pad026c[0x4]; // 0x26c + [[maybe_unused]] uint8_t __pad020c[0x4]; // 0x20c public: // MPropertyFriendlyName "amplitude" - CPerParticleFloatInput m_flAmplitude; // 0x270 + CPerParticleFloatInput m_flAmplitude; // 0x210 }; // Alignment: 15 -// Size: 0x9c0 +// Size: 0x9e0 class C_OP_PositionLock : public CParticleFunctionOperator { public: // MPropertyFriendlyName "transform input" - CParticleTransformInput m_TransformInput; // 0x210 + CParticleTransformInput m_TransformInput; // 0x1b0 // MPropertyFriendlyName "start fadeout min" - float m_flStartTime_min; // 0x260 + float m_flStartTime_min; // 0x218 // MPropertyFriendlyName "start fadeout max" - float m_flStartTime_max; // 0x264 + float m_flStartTime_max; // 0x21c // MPropertyFriendlyName "start fadeout exponent" - float m_flStartTime_exp; // 0x268 + float m_flStartTime_exp; // 0x220 // MPropertyFriendlyName "end fadeout min" - float m_flEndTime_min; // 0x26c + float m_flEndTime_min; // 0x224 // MPropertyFriendlyName "end fadeout max" - float m_flEndTime_max; // 0x270 + float m_flEndTime_max; // 0x228 // MPropertyFriendlyName "end fadeout exponent" - float m_flEndTime_exp; // 0x274 + float m_flEndTime_exp; // 0x22c // MPropertyFriendlyName "distance fade range" - float m_flRange; // 0x278 + float m_flRange; // 0x230 private: - [[maybe_unused]] uint8_t __pad027c[0x4]; // 0x27c + [[maybe_unused]] uint8_t __pad0234[0x4]; // 0x234 public: // MPropertyFriendlyName "distance fade bias" - CParticleCollectionFloatInput m_flRangeBias; // 0x280 + CParticleCollectionFloatInput m_flRangeBias; // 0x238 // MPropertyFriendlyName "instant jump threshold" - float m_flJumpThreshold; // 0x3c0 + float m_flJumpThreshold; // 0x388 // MPropertyFriendlyName "previous position scale" - float m_flPrevPosScale; // 0x3c4 + float m_flPrevPosScale; // 0x38c // MPropertyFriendlyName "lock rotation" - bool m_bLockRot; // 0x3c8 + bool m_bLockRot; // 0x390 private: - [[maybe_unused]] uint8_t __pad03c9[0x7]; // 0x3c9 + [[maybe_unused]] uint8_t __pad0391[0x7]; // 0x391 public: // MPropertyFriendlyName "component scale" - CParticleCollectionVecInput m_vecScale; // 0x3d0 + CParticleCollectionVecInput m_vecScale; // 0x398 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x9b8 + ParticleAttributeIndex_t m_nFieldOutput; // 0x9d0 // MPropertyFriendlyName "output field prev" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutputPrev; // 0x9bc + ParticleAttributeIndex_t m_nFieldOutputPrev; // 0x9d4 }; // Alignment: 15 -// Size: 0x620 +// Size: 0x5f0 class C_OP_OscillateVector : public CParticleFunctionOperator { public: // MPropertyFriendlyName "oscillation rate min" // MVectorIsSometimesCoordinate - Vector m_RateMin; // 0x210 + Vector m_RateMin; // 0x1b0 // MPropertyFriendlyName "oscillation rate max" // MVectorIsSometimesCoordinate - Vector m_RateMax; // 0x21c + Vector m_RateMax; // 0x1bc // MPropertyFriendlyName "oscillation frequency min" // MVectorIsSometimesCoordinate - Vector m_FrequencyMin; // 0x228 + Vector m_FrequencyMin; // 0x1c8 // MPropertyFriendlyName "oscillation frequency max" // MVectorIsSometimesCoordinate - Vector m_FrequencyMax; // 0x234 + Vector m_FrequencyMax; // 0x1d4 // MPropertyFriendlyName "oscillation field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nField; // 0x240 + ParticleAttributeIndex_t m_nField; // 0x1e0 // MPropertyFriendlyName "proportional 0/1" - bool m_bProportional; // 0x244 + bool m_bProportional; // 0x1e4 // MPropertyFriendlyName "start/end proportional" - bool m_bProportionalOp; // 0x245 + bool m_bProportionalOp; // 0x1e5 // MPropertyFriendlyName "offset instead of accelerate position" - bool m_bOffset; // 0x246 + bool m_bOffset; // 0x1e6 private: - [[maybe_unused]] uint8_t __pad0247[0x1]; // 0x247 + [[maybe_unused]] uint8_t __pad01e7[0x1]; // 0x1e7 public: // MPropertyFriendlyName "start time min" - float m_flStartTime_min; // 0x248 + float m_flStartTime_min; // 0x1e8 // MPropertyFriendlyName "start time max" - float m_flStartTime_max; // 0x24c + float m_flStartTime_max; // 0x1ec // MPropertyFriendlyName "end time min" - float m_flEndTime_min; // 0x250 + float m_flEndTime_min; // 0x1f0 // MPropertyFriendlyName "end time max" - float m_flEndTime_max; // 0x254 + float m_flEndTime_max; // 0x1f4 // MPropertyFriendlyName "oscillation multiplier" - CPerParticleFloatInput m_flOscMult; // 0x258 + CPerParticleFloatInput m_flOscMult; // 0x1f8 // MPropertyFriendlyName "oscillation start phase" - CPerParticleFloatInput m_flOscAdd; // 0x398 + CPerParticleFloatInput m_flOscAdd; // 0x348 // MPropertyFriendlyName "rate scale" - CPerParticleFloatInput m_flRateScale; // 0x4d8 + CPerParticleFloatInput m_flRateScale; // 0x498 }; // Alignment: 10 -// Size: 0x730 +// Size: 0x710 class C_OP_MovementSkinnedPositionFromCPSnapshot : public CParticleFunctionOperator { public: // MPropertyFriendlyName "snapshot control point number" - int32_t m_nSnapshotControlPointNumber; // 0x210 + int32_t m_nSnapshotControlPointNumber; // 0x1b0 // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x214 + int32_t m_nControlPointNumber; // 0x1b4 // MPropertyFriendlyName "random order" - bool m_bRandom; // 0x218 + bool m_bRandom; // 0x1b8 private: - [[maybe_unused]] uint8_t __pad0219[0x3]; // 0x219 + [[maybe_unused]] uint8_t __pad01b9[0x3]; // 0x1b9 public: // MPropertyFriendlyName "random seed" - int32_t m_nRandomSeed; // 0x21c + int32_t m_nRandomSeed; // 0x1bc // MPropertyFriendlyName "set normal" - bool m_bSetNormal; // 0x220 + bool m_bSetNormal; // 0x1c0 // MPropertyFriendlyName "set radius" - bool m_bSetRadius; // 0x221 + bool m_bSetRadius; // 0x1c1 private: - [[maybe_unused]] uint8_t __pad0222[0x6]; // 0x222 + [[maybe_unused]] uint8_t __pad01c2[0x6]; // 0x1c2 public: // MPropertyFriendlyName "particle increment amount" - CParticleCollectionFloatInput m_flIncrement; // 0x228 + CParticleCollectionFloatInput m_flIncrement; // 0x1c8 // MPropertyFriendlyName "Full Loop Increment Amount" - CParticleCollectionFloatInput m_nFullLoopIncrement; // 0x368 + CParticleCollectionFloatInput m_nFullLoopIncrement; // 0x318 // MPropertyFriendlyName "Snapshot start point" - CParticleCollectionFloatInput m_nSnapShotStartPoint; // 0x4a8 + CParticleCollectionFloatInput m_nSnapShotStartPoint; // 0x468 // MPropertyFriendlyName "Interpolation" - CPerParticleFloatInput m_flInterpolation; // 0x5e8 + CPerParticleFloatInput m_flInterpolation; // 0x5b8 }; // Alignment: 8 -// Size: 0x390 +// Size: 0x340 class C_OP_SetControlPointOrientation : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "set orientation in world space" - bool m_bUseWorldLocation; // 0x220 + bool m_bUseWorldLocation; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0221[0x1]; // 0x221 + [[maybe_unused]] uint8_t __pad01c1[0x1]; // 0x1c1 public: // MPropertyFriendlyName "randomize" - bool m_bRandomize; // 0x222 + bool m_bRandomize; // 0x1c2 // MPropertyFriendlyName "only set orientation once" - bool m_bSetOnce; // 0x223 + bool m_bSetOnce; // 0x1c3 // MPropertyFriendlyName "control point number" - int32_t m_nCP; // 0x224 + int32_t m_nCP; // 0x1c4 // MPropertyFriendlyName "control point to offset orientation from" - int32_t m_nHeadLocation; // 0x228 + int32_t m_nHeadLocation; // 0x1c8 // MPropertyFriendlyName "pitch yaw roll" - QAngle m_vecRotation; // 0x22c + QAngle m_vecRotation; // 0x1cc // MPropertyFriendlyName "pitch yaw roll max" - QAngle m_vecRotationB; // 0x238 + QAngle m_vecRotationB; // 0x1d8 private: - [[maybe_unused]] uint8_t __pad0244[0x4]; // 0x244 + [[maybe_unused]] uint8_t __pad01e4[0x4]; // 0x1e4 public: // MPropertyFriendlyName "interpolation" - CParticleCollectionFloatInput m_flInterpolation; // 0x248 + CParticleCollectionFloatInput m_flInterpolation; // 0x1e8 }; -// Alignment: 5 -// Size: 0x240 +// Alignment: 4 +// Size: 0x870 class C_INIT_VelocityFromCP : public CParticleFunctionInitializer { public: - // MPropertyFriendlyName "control point number" - int32_t m_nControlPoint; // 0x220 - // MPropertyFriendlyName "comparison control point number" - int32_t m_nControlPointCompare; // 0x224 - // MPropertyFriendlyName "local space control point number" - int32_t m_nControlPointLocal; // 0x228 + // MPropertyFriendlyName "velocity" + CParticleCollectionVecInput m_velocityInput; // 0x1c0 + // MPropertyFriendlyName "local space" + // MParticleInputOptional + CParticleTransformInput m_transformInput; // 0x7f8 // MPropertyFriendlyName "velocity scale" - float m_flVelocityScale; // 0x22c + float m_flVelocityScale; // 0x860 // MPropertyFriendlyName "direction only" - bool m_bDirectionOnly; // 0x230 -}; - -// Alignment: 0 -// Size: 0x48 -class CPulseCell_Test_MultiInflow_WithDefault : public CPulseCell_BaseFlow -{ -public: - // No members available + bool m_bDirectionOnly; // 0x864 }; // Alignment: 61 -// Size: 0x2270 +// Size: 0x2390 class CBaseRendererSource2 : public CParticleFunctionRenderer { public: // MPropertyStartGroup "+Renderer Modifiers" // MPropertyFriendlyName "radius scale" // MPropertySortPriority "700" - CParticleCollectionRendererFloatInput m_flRadiusScale; // 0x260 + CParticleCollectionRendererFloatInput m_flRadiusScale; // 0x200 // MPropertyFriendlyName "alpha scale" // MPropertySortPriority "700" - CParticleCollectionRendererFloatInput m_flAlphaScale; // 0x3a0 + CParticleCollectionRendererFloatInput m_flAlphaScale; // 0x350 // MPropertyFriendlyName "rotation roll scale" // MPropertySortPriority "700" - CParticleCollectionRendererFloatInput m_flRollScale; // 0x4e0 + CParticleCollectionRendererFloatInput m_flRollScale; // 0x4a0 // MPropertyFriendlyName "per-particle alpha scale attribute" // MPropertyAttributeChoiceName "particlefield_scalar" // MPropertySortPriority "700" - ParticleAttributeIndex_t m_nAlpha2Field; // 0x620 + ParticleAttributeIndex_t m_nAlpha2Field; // 0x5f0 private: - [[maybe_unused]] uint8_t __pad0624[0x4]; // 0x624 + [[maybe_unused]] uint8_t __pad05f4[0x4]; // 0x5f4 public: // MPropertyFriendlyName "color blend" // MPropertySortPriority "700" - CParticleCollectionRendererVecInput m_vecColorScale; // 0x628 + CParticleCollectionRendererVecInput m_vecColorScale; // 0x5f8 // MPropertyFriendlyName "color blend type" // MPropertySortPriority "700" - ParticleColorBlendType_t m_nColorBlendType; // 0xc10 + ParticleColorBlendType_t m_nColorBlendType; // 0xc30 // MPropertyStartGroup "+Material" // MPropertyFriendlyName "Shader" // MPropertySortPriority "600" - SpriteCardShaderType_t m_nShaderType; // 0xc14 + SpriteCardShaderType_t m_nShaderType; // 0xc34 // MPropertyFriendlyName "Custom Shader" // MPropertySuppressExpr "m_nShaderType != SPRITECARD_SHADER_CUSTOM" // MPropertySortPriority "600" - CUtlString m_strShaderOverride; // 0xc18 + CUtlString m_strShaderOverride; // 0xc38 // MPropertyFriendlyName "X offset of center point" // MPropertySortPriority "600" - CParticleCollectionRendererFloatInput m_flCenterXOffset; // 0xc20 + CParticleCollectionRendererFloatInput m_flCenterXOffset; // 0xc40 // MPropertyFriendlyName "Y offset of center point" // MPropertySortPriority "600" - CParticleCollectionRendererFloatInput m_flCenterYOffset; // 0xd60 + CParticleCollectionRendererFloatInput m_flCenterYOffset; // 0xd90 // MPropertyFriendlyName "Bump Strength" // MPropertySortPriority "600" - float m_flBumpStrength; // 0xea0 + float m_flBumpStrength; // 0xee0 // MPropertyFriendlyName "Sheet Crop Behavior" // MPropertySortPriority "600" - ParticleSequenceCropOverride_t m_nCropTextureOverride; // 0xea4 + ParticleSequenceCropOverride_t m_nCropTextureOverride; // 0xee4 // MPropertyFriendlyName "Textures" // MParticleRequireDefaultArrayEntry // MPropertyAutoExpandSelf // MPropertySortPriority "600" - CUtlVector< TextureGroup_t > m_vecTexturesInput; // 0xea8 + CUtlVector< TextureGroup_t > m_vecTexturesInput; // 0xee8 // MPropertyStartGroup "Animation" // MPropertyFriendlyName "animation rate" // MPropertyAttributeRange "0 5" // MPropertySortPriority "500" - float m_flAnimationRate; // 0xec0 + float m_flAnimationRate; // 0xf00 // MPropertyFriendlyName "animation type" // MPropertySortPriority "500" - AnimationType_t m_nAnimationType; // 0xec4 + AnimationType_t m_nAnimationType; // 0xf04 // MPropertyFriendlyName "set animation value in FPS" // MPropertySortPriority "500" - bool m_bAnimateInFPS; // 0xec8 + bool m_bAnimateInFPS; // 0xf08 private: - [[maybe_unused]] uint8_t __pad0ec9[0x7]; // 0xec9 + [[maybe_unused]] uint8_t __pad0f09[0x7]; // 0xf09 public: // MPropertyStartGroup "Lighting and Shadows" // MPropertyFriendlyName "self illum amount" // MPropertyAttributeRange "0 2" // MPropertySortPriority "400" - CParticleCollectionRendererFloatInput m_flSelfIllumAmount; // 0xed0 + CParticleCollectionRendererFloatInput m_flSelfIllumAmount; // 0xf10 // MPropertyFriendlyName "diffuse lighting amount" // MPropertyAttributeRange "0 1" // MPropertySortPriority "400" - CParticleCollectionRendererFloatInput m_flDiffuseAmount; // 0x1010 + CParticleCollectionRendererFloatInput m_flDiffuseAmount; // 0x1060 // MPropertyFriendlyName "diffuse lighting origin Control Point" // MPropertySortPriority "400" - int32_t m_nLightingControlPoint; // 0x1150 + int32_t m_nLightingControlPoint; // 0x11b0 // MPropertyFriendlyName "self illum per-particle" // MPropertyAttributeChoiceName "particlefield_scalar" // MPropertySortPriority "400" - ParticleAttributeIndex_t m_nSelfIllumPerParticle; // 0x1154 + ParticleAttributeIndex_t m_nSelfIllumPerParticle; // 0x11b4 // MPropertyStartGroup "+Color and alpha adjustments" // MPropertyFriendlyName "output blend mode" // MPropertySortPriority "300" - ParticleOutputBlendMode_t m_nOutputBlendMode; // 0x1158 + ParticleOutputBlendMode_t m_nOutputBlendMode; // 0x11b8 // MPropertyFriendlyName "Gamma-correct vertex colors" // MPropertySortPriority "300" - bool m_bGammaCorrectVertexColors; // 0x115c + bool m_bGammaCorrectVertexColors; // 0x11bc // MPropertyFriendlyName "Saturate color pre alphablend" // MPropertySortPriority "300" // MPropertySuppressExpr "mod!=dota" - bool m_bSaturateColorPreAlphaBlend; // 0x115d + bool m_bSaturateColorPreAlphaBlend; // 0x11bd private: - [[maybe_unused]] uint8_t __pad115e[0x2]; // 0x115e + [[maybe_unused]] uint8_t __pad11be[0x2]; // 0x11be public: // MPropertyFriendlyName "add self amount over alphablend" // MPropertySortPriority "300" - CParticleCollectionRendererFloatInput m_flAddSelfAmount; // 0x1160 + CParticleCollectionRendererFloatInput m_flAddSelfAmount; // 0x11c0 // MPropertyFriendlyName "desaturation amount" // MPropertyAttributeRange "0 1" // MPropertySortPriority "300" - CParticleCollectionRendererFloatInput m_flDesaturation; // 0x12a0 + CParticleCollectionRendererFloatInput m_flDesaturation; // 0x1310 // MPropertyFriendlyName "overbright factor" // MPropertySortPriority "300" - CParticleCollectionRendererFloatInput m_flOverbrightFactor; // 0x13e0 + CParticleCollectionRendererFloatInput m_flOverbrightFactor; // 0x1460 // MPropertyFriendlyName "HSV Shift Control Point" // MPropertySortPriority "300" - int32_t m_nHSVShiftControlPoint; // 0x1520 + int32_t m_nHSVShiftControlPoint; // 0x15b0 // MPropertyFriendlyName "Apply fog to particle" // MPropertySortPriority "300" - ParticleFogType_t m_nFogType; // 0x1524 + ParticleFogType_t m_nFogType; // 0x15b4 // MPropertyFriendlyName "Fog Scale" // MPropertySortPriority "300" // MPropertySuppressExpr "mod != hlx" - CParticleCollectionRendererFloatInput m_flFogAmount; // 0x1528 + CParticleCollectionRendererFloatInput m_flFogAmount; // 0x15b8 // MPropertyFriendlyName "Apply fog of war to color" // MPropertySortPriority "300" // MPropertySuppressExpr "mod != dota" - bool m_bTintByFOW; // 0x1668 + bool m_bTintByFOW; // 0x1708 // MPropertyFriendlyName "Apply global light to color" // MPropertySortPriority "300" // MPropertySuppressExpr "mod != dota" - bool m_bTintByGlobalLight; // 0x1669 + bool m_bTintByGlobalLight; // 0x1709 private: - [[maybe_unused]] uint8_t __pad166a[0x2]; // 0x166a + [[maybe_unused]] uint8_t __pad170a[0x2]; // 0x170a public: // MPropertyStartGroup "Color and alpha adjustments/Alpha Reference" // MPropertyFriendlyName "alpha reference" // MPropertySortPriority "300" - SpriteCardPerParticleScale_t m_nPerParticleAlphaReference; // 0x166c + SpriteCardPerParticleScale_t m_nPerParticleAlphaReference; // 0x170c // MPropertyFriendlyName "alpha reference window size" // MPropertySortPriority "300" - SpriteCardPerParticleScale_t m_nPerParticleAlphaRefWindow; // 0x1670 + SpriteCardPerParticleScale_t m_nPerParticleAlphaRefWindow; // 0x1710 // MPropertyFriendlyName "alpha reference type" // MPropertySortPriority "300" - ParticleAlphaReferenceType_t m_nAlphaReferenceType; // 0x1674 + ParticleAlphaReferenceType_t m_nAlphaReferenceType; // 0x1714 // MPropertyFriendlyName "alpha reference softness" // MPropertyAttributeRange "0 1" // MPropertySortPriority "300" - CParticleCollectionRendererFloatInput m_flAlphaReferenceSoftness; // 0x1678 + CParticleCollectionRendererFloatInput m_flAlphaReferenceSoftness; // 0x1718 // MPropertyFriendlyName "source alpha value to map to alpha of zero" // MPropertyAttributeRange "0 1" // MPropertySortPriority "300" - CParticleCollectionRendererFloatInput m_flSourceAlphaValueToMapToZero; // 0x17b8 + CParticleCollectionRendererFloatInput m_flSourceAlphaValueToMapToZero; // 0x1868 // MPropertyFriendlyName "source alpha value to map to alpha of 1" // MPropertyAttributeRange "0 1" // MPropertySortPriority "300" - CParticleCollectionRendererFloatInput m_flSourceAlphaValueToMapToOne; // 0x18f8 + CParticleCollectionRendererFloatInput m_flSourceAlphaValueToMapToOne; // 0x19b8 // MPropertyStartGroup "Refraction" // MPropertyFriendlyName "refract background" // MPropertySortPriority "200" - bool m_bRefract; // 0x1a38 + bool m_bRefract; // 0x1b08 // MPropertyFriendlyName "refract draws opaque - alpha scales refraction" // MPropertySortPriority "200" // MPropertySuppressExpr "!m_bRefract" - bool m_bRefractSolid; // 0x1a39 + bool m_bRefractSolid; // 0x1b09 private: - [[maybe_unused]] uint8_t __pad1a3a[0x6]; // 0x1a3a + [[maybe_unused]] uint8_t __pad1b0a[0x6]; // 0x1b0a public: // MPropertyFriendlyName "refract amount" // MPropertyAttributeRange "-2 2" // MPropertySortPriority "200" // MPropertySuppressExpr "!m_bRefract" - CParticleCollectionRendererFloatInput m_flRefractAmount; // 0x1a40 + CParticleCollectionRendererFloatInput m_flRefractAmount; // 0x1b10 // MPropertyFriendlyName "refract blur radius" // MPropertySortPriority "200" // MPropertySuppressExpr "!m_bRefract" - int32_t m_nRefractBlurRadius; // 0x1b80 + int32_t m_nRefractBlurRadius; // 0x1c60 // MPropertyFriendlyName "refract blur type" // MPropertySortPriority "200" // MPropertySuppressExpr "!m_bRefract" - BlurFilterType_t m_nRefractBlurType; // 0x1b84 + BlurFilterType_t m_nRefractBlurType; // 0x1c64 // MPropertyStartGroup // MPropertyFriendlyName "Only Render in effects bloom pass" // MPropertySortPriority "1100" - bool m_bOnlyRenderInEffectsBloomPass; // 0x1b88 + bool m_bOnlyRenderInEffectsBloomPass; // 0x1c68 // MPropertyFriendlyName "Only Render in effects water pass" // MPropertySortPriority "1050" // MPropertySuppressExpr "mod != csgo" - bool m_bOnlyRenderInEffectsWaterPass; // 0x1b89 + bool m_bOnlyRenderInEffectsWaterPass; // 0x1c69 // MPropertyFriendlyName "Use Mixed Resolution Rendering" // MPropertySortPriority "1200" - bool m_bUseMixedResolutionRendering; // 0x1b8a + bool m_bUseMixedResolutionRendering; // 0x1c6a // MPropertyFriendlyName "Only Render in effects game overlay pass" // MPropertySortPriority "1210" // MPropertySuppressExpr "mod != csgo" - bool m_bOnlyRenderInEffecsGameOverlay; // 0x1b8b + bool m_bOnlyRenderInEffecsGameOverlay; // 0x1c6b // MPropertyStartGroup "Stencil" // MPropertyFriendlyName "stencil test ID" // MPropertySortPriority "0" - char m_stencilTestID[128]; // 0x1b8c + char m_stencilTestID[128]; // 0x1c6c // MPropertyFriendlyName "only write where stencil is NOT stencil test ID" // MPropertySortPriority "0" - bool m_bStencilTestExclude; // 0x1c0c + bool m_bStencilTestExclude; // 0x1cec // MPropertyFriendlyName "stencil write ID" // MPropertySortPriority "0" - char m_stencilWriteID[128]; // 0x1c0d + char m_stencilWriteID[128]; // 0x1ced // MPropertyFriendlyName "write stencil on z-buffer test success" // MPropertySortPriority "0" - bool m_bWriteStencilOnDepthPass; // 0x1c8d + bool m_bWriteStencilOnDepthPass; // 0x1d6d // MPropertyFriendlyName "write stencil on z-buffer test failure" // MPropertySortPriority "0" - bool m_bWriteStencilOnDepthFail; // 0x1c8e + bool m_bWriteStencilOnDepthFail; // 0x1d6e // MPropertyStartGroup "Depth buffer control and effects" // MPropertyFriendlyName "reverse z-buffer test" // MPropertySortPriority "900" - bool m_bReverseZBuffering; // 0x1c8f + bool m_bReverseZBuffering; // 0x1d6f // MPropertyFriendlyName "disable z-buffer test" // MPropertySortPriority "900" - bool m_bDisableZBuffering; // 0x1c90 + bool m_bDisableZBuffering; // 0x1d70 private: - [[maybe_unused]] uint8_t __pad1c91[0x3]; // 0x1c91 + [[maybe_unused]] uint8_t __pad1d71[0x3]; // 0x1d71 public: // MPropertyFriendlyName "Depth feathering mode" // MPropertySortPriority "900" - ParticleDepthFeatheringMode_t m_nFeatheringMode; // 0x1c94 + ParticleDepthFeatheringMode_t m_nFeatheringMode; // 0x1d74 // MPropertyFriendlyName "particle feathering closest distance to surface" // MPropertySortPriority "900" - CParticleCollectionRendererFloatInput m_flFeatheringMinDist; // 0x1c98 + CParticleCollectionRendererFloatInput m_flFeatheringMinDist; // 0x1d78 // MPropertyFriendlyName "particle feathering farthest distance to surface" // MPropertySortPriority "900" - CParticleCollectionRendererFloatInput m_flFeatheringMaxDist; // 0x1dd8 + CParticleCollectionRendererFloatInput m_flFeatheringMaxDist; // 0x1ec8 // MPropertyFriendlyName "particle feathering filter" // MPropertySortPriority "900" - CParticleCollectionRendererFloatInput m_flFeatheringFilter; // 0x1f18 + CParticleCollectionRendererFloatInput m_flFeatheringFilter; // 0x2018 // MPropertyFriendlyName "depth comparison bias" // MPropertySortPriority "900" - float m_flDepthBias; // 0x2058 + float m_flDepthBias; // 0x2168 // MPropertyFriendlyName "Sort Method" // MPropertySortPriority "900" - ParticleSortingChoiceList_t m_nSortMethod; // 0x205c + ParticleSortingChoiceList_t m_nSortMethod; // 0x216c // MPropertyStartGroup "Animation" // MPropertyFriendlyName "blend sequence animation frames" // MPropertySortPriority "500" - bool m_bBlendFramesSeq0; // 0x2060 + bool m_bBlendFramesSeq0; // 0x2170 // MPropertyFriendlyName "use max-luminance blending for sequence" // MPropertySortPriority "500" // MPropertySuppressExpr "!m_bBlendFramesSeq0" - bool m_bMaxLuminanceBlendingSequence0; // 0x2061 + bool m_bMaxLuminanceBlendingSequence0; // 0x2171 }; // Alignment: 8 -// Size: 0x2e0 +// Size: 0x280 class C_INIT_LifespanFromVelocity : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "bias distance" // MVectorIsCoordinate - Vector m_vecComponentScale; // 0x220 + Vector m_vecComponentScale; // 0x1c0 // MPropertyFriendlyName "trace offset" - float m_flTraceOffset; // 0x22c + float m_flTraceOffset; // 0x1cc // MPropertyFriendlyName "maximum trace length" - float m_flMaxTraceLength; // 0x230 + float m_flMaxTraceLength; // 0x1d0 // MPropertyFriendlyName "trace recycle tolerance" - float m_flTraceTolerance; // 0x234 + float m_flTraceTolerance; // 0x1d4 // MPropertyFriendlyName "maximum points to cache" - int32_t m_nMaxPlanes; // 0x238 + int32_t m_nMaxPlanes; // 0x1d8 private: - [[maybe_unused]] uint8_t __pad023c[0x4]; // 0x23c + [[maybe_unused]] uint8_t __pad01dc[0x4]; // 0x1dc public: // MPropertyFriendlyName "trace collision group" - char m_CollisionGroupName[128]; // 0x240 + char m_CollisionGroupName[128]; // 0x1e0 // MPropertyFriendlyName "Trace Set" - ParticleTraceSet_t m_nTraceSet; // 0x2c0 + ParticleTraceSet_t m_nTraceSet; // 0x260 private: - [[maybe_unused]] uint8_t __pad02c4[0xc]; // 0x2c4 + [[maybe_unused]] uint8_t __pad0264[0xc]; // 0x264 public: // MPropertyFriendlyName "collide with water" - bool m_bIncludeWater; // 0x2d0 -}; - -// Alignment: 0 -// Size: 0x48 -class CPulseCell_Value_TestValue50 : public CPulseCell_BaseValue -{ -public: - // No members available + bool m_bIncludeWater; // 0x270 }; // Alignment: 2 -// Size: 0x220 +// Size: 0x1c0 class C_OP_ConstrainLineLength : public CParticleFunctionConstraint { public: // MPropertyFriendlyName "minimum length" - float m_flMinDistance; // 0x210 + float m_flMinDistance; // 0x1b0 // MPropertyFriendlyName "maximum length" - float m_flMaxDistance; // 0x214 + float m_flMaxDistance; // 0x1b4 }; // Alignment: 5 -// Size: 0x4b0 +// Size: 0x470 class C_OP_InstantaneousEmitter : public CParticleFunctionEmitter { public: // MPropertyFriendlyName "num to emit" // MPropertyAttributeRange "1 1000" - CParticleCollectionFloatInput m_nParticlesToEmit; // 0x220 + CParticleCollectionFloatInput m_nParticlesToEmit; // 0x1c0 // MPropertyFriendlyName "emission start time" - CParticleCollectionFloatInput m_flStartTime; // 0x360 + CParticleCollectionFloatInput m_flStartTime; // 0x310 // MPropertyFriendlyName "emission scale from killed parent particles" - float m_flInitFromKilledParentParticles; // 0x4a0 + float m_flInitFromKilledParentParticles; // 0x460 // MPropertyFriendlyName "maximum emission per frame" - int32_t m_nMaxEmittedPerFrame; // 0x4a4 + int32_t m_nMaxEmittedPerFrame; // 0x464 // MPropertyFriendlyName "control point with snapshot data" - int32_t m_nSnapshotControlPoint; // 0x4a8 + int32_t m_nSnapshotControlPoint; // 0x468 }; // Alignment: 7 -// Size: 0x2510 +// Size: 0x2650 class CBaseTrailRenderer : public CBaseRendererSource2 { public: // MPropertyStartGroup "Orientation" // MPropertyFriendlyName "orientation type" // MPropertySortPriority "750" - ParticleOrientationChoiceList_t m_nOrientationType; // 0x2270 + ParticleOrientationChoiceList_t m_nOrientationType; // 0x2390 // MPropertyFriendlyName "orientation control point" // MPropertySortPriority "750" // MPropertySuppressExpr "m_nOrientationType != PARTICLE_ORIENTATION_ALIGN_TO_PARTICLE_NORMAL && m_nOrientationType != PARTICLE_ORIENTATION_SCREENALIGN_TO_PARTICLE_NORMAL" - int32_t m_nOrientationControlPoint; // 0x2274 + int32_t m_nOrientationControlPoint; // 0x2394 // MPropertyStartGroup "Screenspace Fading and culling" // MPropertyFriendlyName "minimum visual screen-size" // MPropertySortPriority "900" - float m_flMinSize; // 0x2278 + float m_flMinSize; // 0x2398 // MPropertyFriendlyName "maximum visual screen-size" // MPropertySortPriority "900" - float m_flMaxSize; // 0x227c + float m_flMaxSize; // 0x239c // MPropertyFriendlyName "start fade screen-size" // MPropertySortPriority "900" - CParticleCollectionRendererFloatInput m_flStartFadeSize; // 0x2280 + CParticleCollectionRendererFloatInput m_flStartFadeSize; // 0x23a0 // MPropertyFriendlyName "end fade and cull screen-size" // MPropertySortPriority "900" - CParticleCollectionRendererFloatInput m_flEndFadeSize; // 0x23c0 + CParticleCollectionRendererFloatInput m_flEndFadeSize; // 0x24f0 // MPropertyStartGroup "Trail UV Controls" // MPropertyFriendlyName "Clamp Non-Sheet texture V coords" // MPropertySortPriority "800" - bool m_bClampV; // 0x2500 + bool m_bClampV; // 0x2640 +}; + +// Alignment: 5 +// Size: 0x60 +struct ParticleNamedValueSource_t +{ +public: + CUtlString m_Name; // 0x0 + bool m_IsPublic; // 0x8 +private: + [[maybe_unused]] uint8_t __pad0009[0x3]; // 0x9 +public: + // MPropertySuppressField + PulseValueType_t m_ValueType; // 0xc + // MPropertySuppressField + ParticleNamedValueConfiguration_t m_DefaultConfig; // 0x10 + // MPropertySuppressField + CUtlVector< ParticleNamedValueConfiguration_t > m_NamedConfigs; // 0x48 }; // Alignment: 0 -// Size: 0x230 +// Size: 0x1d0 class C_OP_Spin : public CGeneralSpin { public: @@ -23544,106 +19571,106 @@ public: }; // Alignment: 10 -// Size: 0x250 +// Size: 0x1f0 class C_INIT_CreationNoise : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x220 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c0 // MPropertyFriendlyName "absolute value" - bool m_bAbsVal; // 0x224 + bool m_bAbsVal; // 0x1c4 // MPropertyFriendlyName "invert absolute value" - bool m_bAbsValInv; // 0x225 + bool m_bAbsValInv; // 0x1c5 private: - [[maybe_unused]] uint8_t __pad0226[0x2]; // 0x226 + [[maybe_unused]] uint8_t __pad01c6[0x2]; // 0x1c6 public: // MPropertyFriendlyName "time coordinate offset" - float m_flOffset; // 0x228 + float m_flOffset; // 0x1c8 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x22c + float m_flOutputMin; // 0x1cc // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x230 + float m_flOutputMax; // 0x1d0 // MPropertyFriendlyName "time noise coordinate scale" - float m_flNoiseScale; // 0x234 + float m_flNoiseScale; // 0x1d4 // MPropertyFriendlyName "spatial noise coordinate scale" - float m_flNoiseScaleLoc; // 0x238 + float m_flNoiseScaleLoc; // 0x1d8 // MPropertyFriendlyName "spatial coordinate offset" // MVectorIsCoordinate - Vector m_vecOffsetLoc; // 0x23c + Vector m_vecOffsetLoc; // 0x1dc // MPropertyFriendlyName "world time noise coordinate scale" - float m_flWorldTimeScale; // 0x248 + float m_flWorldTimeScale; // 0x1e8 }; // Alignment: 8 -// Size: 0x2a0 +// Size: 0x240 class C_OP_RenderAsModels : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "models" // MParticleRequireDefaultArrayEntry - CUtlVector< ModelReference_t > m_ModelList; // 0x260 + CUtlVector< ModelReference_t > m_ModelList; // 0x200 private: - [[maybe_unused]] uint8_t __pad0278[0x4]; // 0x278 + [[maybe_unused]] uint8_t __pad0218[0x4]; // 0x218 public: // MPropertyFriendlyName "scale factor for radius" - float m_flModelScale; // 0x27c + float m_flModelScale; // 0x21c // MPropertyFriendlyName "scale model to match particle size" - bool m_bFitToModelSize; // 0x280 + bool m_bFitToModelSize; // 0x220 // MPropertyFriendlyName "non-uniform scaling" - bool m_bNonUniformScaling; // 0x281 + bool m_bNonUniformScaling; // 0x221 private: - [[maybe_unused]] uint8_t __pad0282[0x2]; // 0x282 + [[maybe_unused]] uint8_t __pad0222[0x2]; // 0x222 public: // MPropertyFriendlyName "X axis scaling scalar field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nXAxisScalingAttribute; // 0x284 + ParticleAttributeIndex_t m_nXAxisScalingAttribute; // 0x224 // MPropertyFriendlyName "Y axis scaling scalar field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nYAxisScalingAttribute; // 0x288 + ParticleAttributeIndex_t m_nYAxisScalingAttribute; // 0x228 // MPropertyFriendlyName "Z axis scaling scalar field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nZAxisScalingAttribute; // 0x28c + ParticleAttributeIndex_t m_nZAxisScalingAttribute; // 0x22c // MPropertyFriendlyName "model size cull bloat" // MPropertyAttributeChoiceName "particlefield_size_cull_bloat" - int32_t m_nSizeCullBloat; // 0x290 + int32_t m_nSizeCullBloat; // 0x230 }; // Alignment: 3 -// Size: 0x250 +// Size: 0x1f0 class C_OP_RemapDistanceToLineSegmentToVector : public C_OP_RemapDistanceToLineSegmentBase { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x230 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1d0 // MPropertyFriendlyName "output value at min distance" - Vector m_vMinOutputValue; // 0x234 + Vector m_vMinOutputValue; // 0x1d4 // MPropertyFriendlyName "output value at max distance" - Vector m_vMaxOutputValue; // 0x240 + Vector m_vMaxOutputValue; // 0x1e0 }; // Alignment: 5 -// Size: 0x240 +// Size: 0x1e0 class C_INIT_NormalOffset : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "offset min" // MVectorIsCoordinate - Vector m_OffsetMin; // 0x220 + Vector m_OffsetMin; // 0x1c0 // MPropertyFriendlyName "offset max" // MVectorIsCoordinate - Vector m_OffsetMax; // 0x22c + Vector m_OffsetMax; // 0x1cc // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x238 + int32_t m_nControlPointNumber; // 0x1d8 // MPropertyFriendlyName "offset in local space 0/1" - bool m_bLocalCoords; // 0x23c + bool m_bLocalCoords; // 0x1dc // MPropertyFriendlyName "normalize output 0/1" - bool m_bNormalize; // 0x23d + bool m_bNormalize; // 0x1dd }; // Alignment: 0 -// Size: 0x210 +// Size: 0x1b0 class CSpinUpdateBase : public CParticleFunctionOperator { public: @@ -23651,134 +19678,117 @@ public: }; // Alignment: 5 -// Size: 0x240 +// Size: 0x1e0 class C_OP_ControlPointToRadialScreenSpace : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "source Control Point in World" - int32_t m_nCPIn; // 0x220 + int32_t m_nCPIn; // 0x1c0 // MPropertyFriendlyName "Source Control Point offset" // MVectorIsCoordinate - Vector m_vecCP1Pos; // 0x224 + Vector m_vecCP1Pos; // 0x1c4 // MPropertyFriendlyName "Set control point number" - int32_t m_nCPOut; // 0x230 + int32_t m_nCPOut; // 0x1d0 // MPropertyFriendlyName "Output field 0-2 X/Y/Z" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nCPOutField; // 0x234 + int32_t m_nCPOutField; // 0x1d4 // MPropertyFriendlyName "Ss Pos and Dot OUT CP" - int32_t m_nCPSSPosOut; // 0x238 + int32_t m_nCPSSPosOut; // 0x1d8 }; // Alignment: 3 -// Size: 0x240 +// Size: 0x1e0 class C_INIT_CreateFromPlaneCache : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "local offset min" // MVectorIsCoordinate - Vector m_vecOffsetMin; // 0x220 + Vector m_vecOffsetMin; // 0x1c0 // MPropertyFriendlyName "local offset max" // MVectorIsCoordinate - Vector m_vecOffsetMax; // 0x22c + Vector m_vecOffsetMax; // 0x1cc private: - [[maybe_unused]] uint8_t __pad0238[0x1]; // 0x238 + [[maybe_unused]] uint8_t __pad01d8[0x1]; // 0x1d8 public: // MPropertyFriendlyName "set normal" - bool m_bUseNormal; // 0x239 + bool m_bUseNormal; // 0x1d9 }; // Alignment: 6 -// Size: 0x230 +// Size: 0x1d0 class C_OP_RemapScalarEndCap : public CParticleFunctionOperator { public: // MPropertyFriendlyName "input field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldInput; // 0x210 + ParticleAttributeIndex_t m_nFieldInput; // 0x1b0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 // MPropertyFriendlyName "input minimum" - float m_flInputMin; // 0x218 + float m_flInputMin; // 0x1b8 // MPropertyFriendlyName "input maximum" - float m_flInputMax; // 0x21c + float m_flInputMax; // 0x1bc // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x220 + float m_flOutputMin; // 0x1c0 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x224 + float m_flOutputMax; // 0x1c4 }; // Alignment: 4 -// Size: 0x260 +// Size: 0x200 class C_OP_LockToSavedSequentialPath : public CParticleFunctionOperator { -private: - [[maybe_unused]] uint8_t __pad0210[0x4]; // 0x210 public: // MPropertyFriendlyName "start fade time" - float m_flFadeStart; // 0x214 + float m_flFadeStart; // 0x1b4 // MPropertyFriendlyName "end fade time" - float m_flFadeEnd; // 0x218 + float m_flFadeEnd; // 0x1b8 // MPropertyFriendlyName "Use sequential CP pairs between start and end point" - bool m_bCPPairs; // 0x21c + bool m_bCPPairs; // 0x1bc private: - [[maybe_unused]] uint8_t __pad021d[0x3]; // 0x21d + [[maybe_unused]] uint8_t __pad01bd[0x3]; // 0x1bd public: - CPathParameters m_PathParams; // 0x220 + CPathParameters m_PathParams; // 0x1c0 }; // Alignment: 2 -// Size: 0x370 +// Size: 0x320 class C_INIT_InitFloatCollection : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "value" - CParticleCollectionFloatInput m_InputValue; // 0x220 + CParticleCollectionFloatInput m_InputValue; // 0x1c0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nOutputField; // 0x360 + ParticleAttributeIndex_t m_nOutputField; // 0x310 }; // Alignment: 2 -// Size: 0x230 +// Size: 0x1d0 class C_OP_PlayEndCapWhenFinished : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "play when emission ends" - bool m_bFireOnEmissionEnd; // 0x220 + bool m_bFireOnEmissionEnd; // 0x1c0 // MPropertyFriendlyName "wait for children to finish" - bool m_bIncludeChildren; // 0x221 + bool m_bIncludeChildren; // 0x1c1 }; // Alignment: 4 -// Size: 0x98 -class CPulseCell_Inflow_EntOutputHandler : public CPulseCell_Inflow_BaseEntrypoint -{ -public: - // MFgdFromSchemaCompletelySkipField - CUtlSymbolLarge m_SourceEntity; // 0x70 - // MFgdFromSchemaCompletelySkipField - CUtlSymbolLarge m_SourceOutput; // 0x78 - // MFgdFromSchemaCompletelySkipField - CUtlSymbolLarge m_TargetInput; // 0x80 - // MFgdFromSchemaCompletelySkipField - CPulseValueFullType m_ExpectedParamType; // 0x88 -}; - -// Alignment: 4 -// Size: 0x4b0 +// Size: 0x470 class C_OP_QuantizeCPComponent : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "input" - CParticleCollectionFloatInput m_flInputValue; // 0x220 + CParticleCollectionFloatInput m_flInputValue; // 0x1c0 // MPropertyFriendlyName "output control point" - int32_t m_nCPOutput; // 0x360 + int32_t m_nCPOutput; // 0x310 // MPropertyFriendlyName "output component" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nOutVectorField; // 0x364 + int32_t m_nOutVectorField; // 0x314 // MPropertyFriendlyName "interval to snap to" - CParticleCollectionFloatInput m_flQuantizeValue; // 0x368 + CParticleCollectionFloatInput m_flQuantizeValue; // 0x318 }; // Alignment: 4 @@ -23787,235 +19797,253 @@ class C_OP_MovementLoopInsideSphere : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point" - int32_t m_nCP; // 0x210 + int32_t m_nCP; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "distance maximum" - CParticleCollectionFloatInput m_flDistance; // 0x218 + CParticleCollectionFloatInput m_flDistance; // 0x1b8 // MPropertyFriendlyName "component scale" - CParticleCollectionVecInput m_vecScale; // 0x358 + CParticleCollectionVecInput m_vecScale; // 0x308 // MPropertyFriendlyName "distance squared output attribute" // MPropertyAttributeChoiceName "particlefield_scalar" ParticleAttributeIndex_t m_nDistSqrAttr; // 0x940 }; // Alignment: 3 -// Size: 0xdf0 +// Size: 0xe30 class C_OP_DirectionBetweenVecsToVec : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "first vector" - CPerParticleVecInput m_vecPoint1; // 0x218 + CPerParticleVecInput m_vecPoint1; // 0x1b8 // MPropertyFriendlyName "second vector" - CPerParticleVecInput m_vecPoint2; // 0x800 + CPerParticleVecInput m_vecPoint2; // 0x7f0 }; // Alignment: 8 -// Size: 0x290 +// Size: 0x250 class C_OP_RemapTransformVisibilityToVector : public CParticleFunctionOperator { public: // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x210 + ParticleSetMethod_t m_nSetMethod; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "transform input" - CParticleTransformInput m_TransformInput; // 0x218 + CParticleTransformInput m_TransformInput; // 0x1b8 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x268 + ParticleAttributeIndex_t m_nFieldOutput; // 0x220 // MPropertyFriendlyName "CP visibility minimum" - float m_flInputMin; // 0x26c + float m_flInputMin; // 0x224 // MPropertyFriendlyName "CP visibility maximum" - float m_flInputMax; // 0x270 + float m_flInputMax; // 0x228 // MPropertyFriendlyName "output minimum" - Vector m_vecOutputMin; // 0x274 + Vector m_vecOutputMin; // 0x22c // MPropertyFriendlyName "output maximum" - Vector m_vecOutputMax; // 0x280 + Vector m_vecOutputMax; // 0x238 // MPropertyFriendlyName "visibility radius" - float m_flRadius; // 0x28c + float m_flRadius; // 0x244 }; // Alignment: 6 -// Size: 0xe70 +// Size: 0xeb0 class C_INIT_SetVectorAttributeToVectorExpression : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "expression" - VectorExpressionType_t m_nExpression; // 0x220 + VectorExpressionType_t m_nExpression; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0224[0x4]; // 0x224 + [[maybe_unused]] uint8_t __pad01c4[0x4]; // 0x1c4 public: // MPropertyFriendlyName "input 1" - CPerParticleVecInput m_vInput1; // 0x228 + CPerParticleVecInput m_vInput1; // 0x1c8 // MPropertyFriendlyName "input 2" - CPerParticleVecInput m_vInput2; // 0x810 + CPerParticleVecInput m_vInput2; // 0x800 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nOutputField; // 0xdf8 + ParticleAttributeIndex_t m_nOutputField; // 0xe38 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0xdfc + ParticleSetMethod_t m_nSetMethod; // 0xe3c // MPropertyFriendlyName "normalize result" - bool m_bNormalizedOutput; // 0xe00 + bool m_bNormalizedOutput; // 0xe40 }; // Alignment: 4 -// Size: 0x220 +// Size: 0x1c0 class C_OP_InheritFromParentParticles : public CParticleFunctionOperator { public: // MPropertyFriendlyName "scale" - float m_flScale; // 0x210 + float m_flScale; // 0x1b0 // MPropertyFriendlyName "inherited field" // MPropertyAttributeChoiceName "particlefield" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 // MPropertyFriendlyName "particle increment amount" - int32_t m_nIncrement; // 0x218 + int32_t m_nIncrement; // 0x1b8 // MPropertyFriendlyName "random parent particle distribution" - bool m_bRandomDistribution; // 0x21c + bool m_bRandomDistribution; // 0x1bc }; // Alignment: 4 -// Size: 0x230 +// Size: 0x1d0 class C_INIT_RandomVectorComponent : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "min" - float m_flMin; // 0x220 + float m_flMin; // 0x1c0 // MPropertyFriendlyName "max" - float m_flMax; // 0x224 + float m_flMax; // 0x1c4 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x228 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c8 // MPropertyFriendlyName "component 0/1/2 X/Y/Z" // MPropertyAttributeChoiceName "vector_component" // MVectorIsSometimesCoordinate - int32_t m_nComponent; // 0x22c + int32_t m_nComponent; // 0x1cc }; // Alignment: 4 -// Size: 0xdf0 +// Size: 0xe30 class C_OP_ExternalWindForce : public CParticleFunctionForce { public: // MPropertyFriendlyName "sample position" - CPerParticleVecInput m_vecSamplePosition; // 0x210 + CPerParticleVecInput m_vecSamplePosition; // 0x1b0 // MPropertyFriendlyName "force scale" - CPerParticleVecInput m_vecScale; // 0x7f8 + CPerParticleVecInput m_vecScale; // 0x7e8 // MPropertyFriendlyName "sample wind" - bool m_bSampleWind; // 0xde0 + bool m_bSampleWind; // 0xe20 // MPropertyFriendlyName "sample water current" - bool m_bSampleWater; // 0xde1 + bool m_bSampleWater; // 0xe21 }; // Alignment: 6 -// Size: 0x5f0 +// Size: 0x5c0 class C_OP_SetControlPointFieldToScalarExpression : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "expression" - ScalarExpressionType_t m_nExpression; // 0x220 + ScalarExpressionType_t m_nExpression; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0224[0x4]; // 0x224 + [[maybe_unused]] uint8_t __pad01c4[0x4]; // 0x1c4 public: // MPropertyFriendlyName "input 1" - CParticleCollectionFloatInput m_flInput1; // 0x228 + CParticleCollectionFloatInput m_flInput1; // 0x1c8 // MPropertyFriendlyName "input 2" - CParticleCollectionFloatInput m_flInput2; // 0x368 + CParticleCollectionFloatInput m_flInput2; // 0x318 // MPropertyFriendlyName "output" - CParticleRemapFloatInput m_flOutputRemap; // 0x4a8 + CParticleRemapFloatInput m_flOutputRemap; // 0x468 // MPropertyFriendlyName "output control point" - int32_t m_nOutputCP; // 0x5e8 + int32_t m_nOutputCP; // 0x5b8 // MPropertyFriendlyName "output component" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nOutVectorField; // 0x5ec + int32_t m_nOutVectorField; // 0x5bc }; // Alignment: 10 -// Size: 0xe10 +// Size: 0xe50 class C_INIT_PositionWarp : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "warp min" // MVectorIsCoordinate - CParticleCollectionVecInput m_vecWarpMin; // 0x220 + CParticleCollectionVecInput m_vecWarpMin; // 0x1c0 // MPropertyFriendlyName "warp max" // MVectorIsCoordinate - CParticleCollectionVecInput m_vecWarpMax; // 0x808 + CParticleCollectionVecInput m_vecWarpMax; // 0x7f8 // MPropertyFriendlyName "warp scale control point number" - int32_t m_nScaleControlPointNumber; // 0xdf0 + int32_t m_nScaleControlPointNumber; // 0xe30 // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0xdf4 + int32_t m_nControlPointNumber; // 0xe34 // MPropertyFriendlyName "radius scale component" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nRadiusComponent; // 0xdf8 + int32_t m_nRadiusComponent; // 0xe38 // MPropertyFriendlyName "warp transition time (treats min/max as start/end sizes)" - float m_flWarpTime; // 0xdfc + float m_flWarpTime; // 0xe3c // MPropertyFriendlyName "warp transition start time" - float m_flWarpStartTime; // 0xe00 + float m_flWarpStartTime; // 0xe40 // MPropertyFriendlyName "previous position sacale" - float m_flPrevPosScale; // 0xe04 + float m_flPrevPosScale; // 0xe44 // MPropertyFriendlyName "reverse warp (0/1)" - bool m_bInvertWarp; // 0xe08 + bool m_bInvertWarp; // 0xe48 // MPropertyFriendlyName "use particle count instead of time" - bool m_bUseCount; // 0xe09 + bool m_bUseCount; // 0xe49 }; // Alignment: 1 -// Size: 0x270 +// Size: 0x230 class C_INIT_RemapQAnglesToRotation : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "transform input" - CParticleTransformInput m_TransformInput; // 0x220 + CParticleTransformInput m_TransformInput; // 0x1c0 }; // Alignment: 10 -// Size: 0x250 +// Size: 0x1f0 class C_INIT_RemapSpeedToScalar : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x220 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c0 // MPropertyFriendlyName "control point number (ignored if per particle)" - int32_t m_nControlPointNumber; // 0x224 + int32_t m_nControlPointNumber; // 0x1c4 // MPropertyFriendlyName "emitter lifetime start time (seconds)" - float m_flStartTime; // 0x228 + float m_flStartTime; // 0x1c8 // MPropertyFriendlyName "emitter lifetime end time (seconds)" - float m_flEndTime; // 0x22c + float m_flEndTime; // 0x1cc // MPropertyFriendlyName "input minimum" - float m_flInputMin; // 0x230 + float m_flInputMin; // 0x1d0 // MPropertyFriendlyName "input maximum" - float m_flInputMax; // 0x234 + float m_flInputMax; // 0x1d4 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x238 + float m_flOutputMin; // 0x1d8 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x23c + float m_flOutputMax; // 0x1dc // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x240 + ParticleSetMethod_t m_nSetMethod; // 0x1e0 // MPropertyFriendlyName "per particle" - bool m_bPerParticle; // 0x244 + bool m_bPerParticle; // 0x1e4 }; -// Alignment: 1 -// Size: 0x60 -class CPulseCell_Inflow_Wait : public CPulseCell_BaseYieldingInflow +// Alignment: 6 +// Size: 0x810 +class C_OP_SetControlPointToCPVelocity : public CParticleFunctionPreEmission { public: - CPulse_ResumePoint m_WakeResume; // 0x48 + // MPropertyFriendlyName "control point input" + int32_t m_nCPInput; // 0x1c0 + // MPropertyFriendlyName "control point number to set velocity" + int32_t m_nCPOutputVel; // 0x1c4 + // MPropertyFriendlyName "normalize output" + bool m_bNormalize; // 0x1c8 +private: + [[maybe_unused]] uint8_t __pad01c9[0x3]; // 0x1c9 +public: + // MPropertyFriendlyName "control point number to set magnitude" + int32_t m_nCPOutputMag; // 0x1cc + // MPropertyFriendlyName "control point field for magnitude" + // MPropertyAttributeChoiceName "vector_component" + int32_t m_nCPField; // 0x1d0 +private: + [[maybe_unused]] uint8_t __pad01d4[0x4]; // 0x1d4 +public: + // MPropertyFriendlyName "comparison velocity" + CParticleCollectionVecInput m_vecComparisonVelocity; // 0x1d8 }; // Alignment: 0 -// Size: 0x270 +// Size: 0x210 class C_OP_RemapNamedModelMeshGroupOnceTimed : public C_OP_RemapNamedModelElementOnceTimed { public: @@ -24023,107 +20051,99 @@ public: }; // Alignment: 15 -// Size: 0x1000 +// Size: 0x1050 class C_OP_LightningSnapshotGenerator : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "snapshot control point number" - int32_t m_nCPSnapshot; // 0x220 + int32_t m_nCPSnapshot; // 0x1c0 // MPropertyFriendlyName "start control point number" - int32_t m_nCPStartPnt; // 0x224 + int32_t m_nCPStartPnt; // 0x1c4 // MPropertyFriendlyName "end control point number" - int32_t m_nCPEndPnt; // 0x228 + int32_t m_nCPEndPnt; // 0x1c8 private: - [[maybe_unused]] uint8_t __pad022c[0x4]; // 0x22c + [[maybe_unused]] uint8_t __pad01cc[0x4]; // 0x1cc public: // MPropertyFriendlyName "Recursion Depth" - CParticleCollectionFloatInput m_flSegments; // 0x230 + CParticleCollectionFloatInput m_flSegments; // 0x1d0 // MPropertyFriendlyName "Offset" - CParticleCollectionFloatInput m_flOffset; // 0x370 + CParticleCollectionFloatInput m_flOffset; // 0x320 // MPropertyFriendlyName "Offset Decay" - CParticleCollectionFloatInput m_flOffsetDecay; // 0x4b0 + CParticleCollectionFloatInput m_flOffsetDecay; // 0x470 // MPropertyFriendlyName "Recalculation Rate" - CParticleCollectionFloatInput m_flRecalcRate; // 0x5f0 + CParticleCollectionFloatInput m_flRecalcRate; // 0x5c0 // MPropertyFriendlyName "UV Scale" - CParticleCollectionFloatInput m_flUVScale; // 0x730 + CParticleCollectionFloatInput m_flUVScale; // 0x710 // MPropertyFriendlyName "UV Offset" - CParticleCollectionFloatInput m_flUVOffset; // 0x870 + CParticleCollectionFloatInput m_flUVOffset; // 0x860 // MPropertyFriendlyName "Branch Split Rate" CParticleCollectionFloatInput m_flSplitRate; // 0x9b0 // MPropertyFriendlyName "Branch Twist" - CParticleCollectionFloatInput m_flBranchTwist; // 0xaf0 + CParticleCollectionFloatInput m_flBranchTwist; // 0xb00 // MPropertyFriendlyName "Branch Behavior" - ParticleLightnintBranchBehavior_t m_nBranchBehavior; // 0xc30 + ParticleLightnintBranchBehavior_t m_nBranchBehavior; // 0xc50 private: - [[maybe_unused]] uint8_t __pad0c34[0x4]; // 0xc34 + [[maybe_unused]] uint8_t __pad0c54[0x4]; // 0xc54 public: // MPropertyFriendlyName "Start Radius" - CParticleCollectionFloatInput m_flRadiusStart; // 0xc38 + CParticleCollectionFloatInput m_flRadiusStart; // 0xc58 // MPropertyFriendlyName "End Radius" - CParticleCollectionFloatInput m_flRadiusEnd; // 0xd78 + CParticleCollectionFloatInput m_flRadiusEnd; // 0xda8 // MPropertyFriendlyName "Dedicated Particle Pool Count" - CParticleCollectionFloatInput m_flDedicatedPool; // 0xeb8 + CParticleCollectionFloatInput m_flDedicatedPool; // 0xef8 }; // Alignment: 5 -// Size: 0xe00 +// Size: 0xe40 class C_OP_SetControlPointToVectorExpression : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "expression" - VectorExpressionType_t m_nExpression; // 0x220 + VectorExpressionType_t m_nExpression; // 0x1c0 // MPropertyFriendlyName "output control point" - int32_t m_nOutputCP; // 0x224 + int32_t m_nOutputCP; // 0x1c4 // MPropertyFriendlyName "input 1" - CParticleCollectionVecInput m_vInput1; // 0x228 + CParticleCollectionVecInput m_vInput1; // 0x1c8 // MPropertyFriendlyName "input 2" - CParticleCollectionVecInput m_vInput2; // 0x810 + CParticleCollectionVecInput m_vInput2; // 0x800 // MPropertyFriendlyName "normalize result" - bool m_bNormalizedOutput; // 0xdf8 + bool m_bNormalizedOutput; // 0xe38 }; // Alignment: 11 -// Size: 0x270 +// Size: 0x210 class C_OP_CalculateVectorAttribute : public CParticleFunctionOperator { public: // MPropertyFriendlyName "start value" - Vector m_vStartValue; // 0x210 + Vector m_vStartValue; // 0x1b0 // MPropertyFriendlyName "input field 1" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldInput1; // 0x21c + ParticleAttributeIndex_t m_nFieldInput1; // 0x1bc // MPropertyFriendlyName "input scale 1" - float m_flInputScale1; // 0x220 + float m_flInputScale1; // 0x1c0 // MPropertyFriendlyName "input field 2" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldInput2; // 0x224 + ParticleAttributeIndex_t m_nFieldInput2; // 0x1c4 // MPropertyFriendlyName "input scale 2" - float m_flInputScale2; // 0x228 + float m_flInputScale2; // 0x1c8 // MPropertyFriendlyName "control point input 1" - ControlPointReference_t m_nControlPointInput1; // 0x22c + ControlPointReference_t m_nControlPointInput1; // 0x1cc // MPropertyFriendlyName "control point scale 1" - float m_flControlPointScale1; // 0x240 + float m_flControlPointScale1; // 0x1e0 // MPropertyFriendlyName "control point input 2" - ControlPointReference_t m_nControlPointInput2; // 0x244 + ControlPointReference_t m_nControlPointInput2; // 0x1e4 // MPropertyFriendlyName "control point scale 2" - float m_flControlPointScale2; // 0x258 + float m_flControlPointScale2; // 0x1f8 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x25c + ParticleAttributeIndex_t m_nFieldOutput; // 0x1fc // MPropertyFriendlyName "final per component scale" - Vector m_vFinalOutputScale; // 0x260 -}; - -// Alignment: 1 -// Size: 0x78 -class CPulseCell_Inflow_GraphHook : public CPulseCell_Inflow_BaseEntrypoint -{ -public: - CUtlSymbolLarge m_HookName; // 0x70 + Vector m_vFinalOutputScale; // 0x200 }; // Alignment: 9 -// Size: 0xa58 +// Size: 0xad8 struct TextureGroup_t { public: @@ -24158,312 +20178,275 @@ public: CParticleCollectionRendererFloatInput m_flTextureBlend; // 0x38 // MPropertyFriendlyName "Texture Controls" // MPropertySuppressExpr "( m_nTextureType == SPRITECARD_TEXTURE_NORMALMAP || m_nTextureType == SPRITECARD_TEXTURE_ANIMMOTIONVEC || m_nTextureType == SPRITECARD_TEXTURE_6POINT_XYZ_A || m_nTextureType == SPRITECARD_TEXTURE_6POINT_NEGXYZ_E )" - TextureControls_t m_TextureControls; // 0x178 -}; - -// Alignment: 1 -// Size: 0x60 -class CPulseCell_Inflow_Yield : public CPulseCell_BaseYieldingInflow -{ -public: - CPulse_ResumePoint m_UnyieldResume; // 0x48 + TextureControls_t m_TextureControls; // 0x188 }; // Alignment: 4 -// Size: 0x220 +// Size: 0x1c0 class C_OP_Orient2DRelToCP : public CParticleFunctionOperator { public: // MPropertyFriendlyName "rotation offset" - float m_flRotOffset; // 0x210 + float m_flRotOffset; // 0x1b0 // MPropertyFriendlyName "spin strength" - float m_flSpinStrength; // 0x214 + float m_flSpinStrength; // 0x1b4 // MPropertyFriendlyName "control point" - int32_t m_nCP; // 0x218 + int32_t m_nCP; // 0x1b8 // MPropertyFriendlyName "rotation field" // MPropertyAttributeChoiceName "particlefield_rotation" - ParticleAttributeIndex_t m_nFieldOutput; // 0x21c -}; - -// Alignment: 0 -// Size: 0x1 -class CPulseTestFuncs_DerivedDomain -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 -public: - // No members available + ParticleAttributeIndex_t m_nFieldOutput; // 0x1bc }; // Alignment: 3 -// Size: 0x230 +// Size: 0x1d0 class C_INIT_RandomRadius : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "radius min" // MPropertyAttributeRange "biased 0 500" - float m_flRadiusMin; // 0x220 + float m_flRadiusMin; // 0x1c0 // MPropertyFriendlyName "radius max" // MPropertyAttributeRange "biased 0 500" - float m_flRadiusMax; // 0x224 + float m_flRadiusMax; // 0x1c4 // MPropertyFriendlyName "radius random exponent" // MPropertyAttributeRange "-2 2" - float m_flRadiusRandExponent; // 0x228 + float m_flRadiusRandExponent; // 0x1c8 }; // Alignment: 5 -// Size: 0x240 +// Size: 0x1e0 class C_INIT_VelocityRadialRandom : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x220 + int32_t m_nControlPointNumber; // 0x1c0 // MPropertyFriendlyName "random speed min" - float m_fSpeedMin; // 0x224 + float m_fSpeedMin; // 0x1c4 // MPropertyFriendlyName "random speed max" - float m_fSpeedMax; // 0x228 + float m_fSpeedMax; // 0x1c8 // MPropertyFriendlyName "local space scale" - Vector m_vecLocalCoordinateSystemSpeedScale; // 0x22c + Vector m_vecLocalCoordinateSystemSpeedScale; // 0x1cc private: - [[maybe_unused]] uint8_t __pad0238[0x1]; // 0x238 + [[maybe_unused]] uint8_t __pad01d8[0x1]; // 0x1d8 public: // MPropertyFriendlyName "ignore delta time" - bool m_bIgnoreDelta; // 0x239 + bool m_bIgnoreDelta; // 0x1d9 }; // Alignment: 0 -// Size: 0x270 +// Size: 0x210 class C_INIT_RemapParticleCountToNamedModelSequenceScalar : public C_INIT_RemapParticleCountToNamedModelElementScalar { public: // No members available }; -// Alignment: 1 -// Size: 0x60 -class CPulseCell_Outflow_CycleOrdered : public CPulseCell_BaseFlow -{ -public: - CUtlVector< CPulse_OutflowConnection > m_Outputs; // 0x48 -}; - // Alignment: 3 -// Size: 0x230 +// Size: 0x1d0 class C_INIT_RandomLifeTime : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "lifetime min" // MPropertyAttributeRange "0 20" - float m_fLifetimeMin; // 0x220 + float m_fLifetimeMin; // 0x1c0 // MPropertyFriendlyName "lifetime max" // MPropertyAttributeRange "0 20" - float m_fLifetimeMax; // 0x224 + float m_fLifetimeMax; // 0x1c4 // MPropertyFriendlyName "lifetime random exponent" - float m_fLifetimeRandExponent; // 0x228 + float m_fLifetimeRandExponent; // 0x1c8 }; // Alignment: 6 -// Size: 0x500 +// Size: 0x4e0 class C_OP_AttractToControlPoint : public CParticleFunctionForce { public: // MPropertyFriendlyName "component scale" // MVectorIsCoordinate - Vector m_vecComponentScale; // 0x210 + Vector m_vecComponentScale; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad021c[0x4]; // 0x21c + [[maybe_unused]] uint8_t __pad01bc[0x4]; // 0x1bc public: // MPropertyFriendlyName "amount of force (or Max Force)" - CPerParticleFloatInput m_fForceAmount; // 0x220 + CPerParticleFloatInput m_fForceAmount; // 0x1c0 // MPropertyFriendlyName "falloff power" - float m_fFalloffPower; // 0x360 + float m_fFalloffPower; // 0x310 private: - [[maybe_unused]] uint8_t __pad0364[0x4]; // 0x364 + [[maybe_unused]] uint8_t __pad0314[0x4]; // 0x314 public: // MPropertyFriendlyName "input position transform" - CParticleTransformInput m_TransformInput; // 0x368 + CParticleTransformInput m_TransformInput; // 0x318 // MPropertyFriendlyName "Min Pullforce" - CPerParticleFloatInput m_fForceAmountMin; // 0x3b8 + CPerParticleFloatInput m_fForceAmountMin; // 0x380 // MPropertyFriendlyName "Apply Min Pullforce" - bool m_bApplyMinForce; // 0x4f8 + bool m_bApplyMinForce; // 0x4d0 }; // Alignment: 14 -// Size: 0x250 +// Size: 0x1f0 class C_INIT_CreatePhyllotaxis : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x220 + int32_t m_nControlPointNumber; // 0x1c0 // MPropertyFriendlyName "scale size multiplier from CP" - int32_t m_nScaleCP; // 0x224 + int32_t m_nScaleCP; // 0x1c4 // MPropertyFriendlyName "scale CP component 0/1/2 X/Y/Z" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nComponent; // 0x228 + int32_t m_nComponent; // 0x1c8 // MPropertyFriendlyName "center core radius" - float m_fRadCentCore; // 0x22c + float m_fRadCentCore; // 0x1cc // MPropertyFriendlyName "radius multiplier" - float m_fRadPerPoint; // 0x230 + float m_fRadPerPoint; // 0x1d0 // MPropertyFriendlyName "radius max (-1 procedural growth)" - float m_fRadPerPointTo; // 0x234 + float m_fRadPerPointTo; // 0x1d4 // MPropertyFriendlyName "golden angle (is 137.508)" - float m_fpointAngle; // 0x238 + float m_fpointAngle; // 0x1d8 // MPropertyFriendlyName "overall size multiplier (-1 count based distribution)" - float m_fsizeOverall; // 0x23c + float m_fsizeOverall; // 0x1dc // MPropertyFriendlyName "radius bias" - float m_fRadBias; // 0x240 + float m_fRadBias; // 0x1e0 // MPropertyFriendlyName "radius min " - float m_fMinRad; // 0x244 + float m_fMinRad; // 0x1e4 // MPropertyFriendlyName "distribution bias" - float m_fDistBias; // 0x248 + float m_fDistBias; // 0x1e8 // MPropertyFriendlyName "local space" - bool m_bUseLocalCoords; // 0x24c + bool m_bUseLocalCoords; // 0x1ec // MPropertyFriendlyName "use continuous emission" - bool m_bUseWithContEmit; // 0x24d + bool m_bUseWithContEmit; // 0x1ed // MPropertyFriendlyName "scale radius from initial value" - bool m_bUseOrigRadius; // 0x24e + bool m_bUseOrigRadius; // 0x1ee }; // Alignment: 4 -// Size: 0x230 +// Size: 0xe30 class C_OP_BoxConstraint : public CParticleFunctionConstraint { public: // MPropertyFriendlyName "min coords" - Vector m_vecMin; // 0x210 + CParticleCollectionVecInput m_vecMin; // 0x1b0 // MPropertyFriendlyName "max coords" - Vector m_vecMax; // 0x21c + CParticleCollectionVecInput m_vecMax; // 0x7e8 // MPropertyFriendlyName "control point" - int32_t m_nCP; // 0x228 + int32_t m_nCP; // 0xe20 // MPropertyFriendlyName "use local space" - bool m_bLocalSpace; // 0x22c + bool m_bLocalSpace; // 0xe24 }; // Alignment: 5 -// Size: 0x240 +// Size: 0x1e0 class C_OP_SetParentControlPointsToChildCP : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "group ID to affect" - int32_t m_nChildGroupID; // 0x220 + int32_t m_nChildGroupID; // 0x1c0 // MPropertyFriendlyName "control point to set" - int32_t m_nChildControlPoint; // 0x224 + int32_t m_nChildControlPoint; // 0x1c4 // MPropertyFriendlyName "# of children to set" - int32_t m_nNumControlPoints; // 0x228 + int32_t m_nNumControlPoints; // 0x1c8 // MPropertyFriendlyName "first parent control point to set from" - int32_t m_nFirstSourcePoint; // 0x22c + int32_t m_nFirstSourcePoint; // 0x1cc // MPropertyFriendlyName "set orientation" - bool m_bSetOrientation; // 0x230 + bool m_bSetOrientation; // 0x1d0 }; // Alignment: 8 -// Size: 0x230 +// Size: 0x1d0 class C_OP_SetPerChildControlPointFromAttribute : public CParticleFunctionOperator { public: // MPropertyFriendlyName "group ID to affect" - int32_t m_nChildGroupID; // 0x210 + int32_t m_nChildGroupID; // 0x1b0 // MPropertyFriendlyName "control point to set" - int32_t m_nFirstControlPoint; // 0x214 + int32_t m_nFirstControlPoint; // 0x1b4 // MPropertyFriendlyName "# of children to set" - int32_t m_nNumControlPoints; // 0x218 + int32_t m_nNumControlPoints; // 0x1b8 // MPropertyFriendlyName "particle increment amount" - int32_t m_nParticleIncrement; // 0x21c + int32_t m_nParticleIncrement; // 0x1bc // MPropertyFriendlyName "first particle to copy" - int32_t m_nFirstSourcePoint; // 0x220 + int32_t m_nFirstSourcePoint; // 0x1c0 // MPropertyFriendlyName "set number of children based on particle count" - bool m_bNumBasedOnParticleCount; // 0x224 + bool m_bNumBasedOnParticleCount; // 0x1c4 private: - [[maybe_unused]] uint8_t __pad0225[0x3]; // 0x225 + [[maybe_unused]] uint8_t __pad01c5[0x3]; // 0x1c5 public: // MPropertyFriendlyName "field to read" // MPropertyAttributeChoiceName "particlefield" - ParticleAttributeIndex_t m_nAttributeToRead; // 0x228 + ParticleAttributeIndex_t m_nAttributeToRead; // 0x1c8 // MPropertyFriendlyName "control point field for scalars" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nCPField; // 0x22c + int32_t m_nCPField; // 0x1cc }; // Alignment: 5 -// Size: 0x250 +// Size: 0x1f0 class C_INIT_OffsetVectorToVector : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "input field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldInput; // 0x220 + ParticleAttributeIndex_t m_nFieldInput; // 0x1c0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x224 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c4 // MPropertyFriendlyName "output offset minimum" // MVectorIsSometimesCoordinate - Vector m_vecOutputMin; // 0x228 + Vector m_vecOutputMin; // 0x1c8 // MPropertyFriendlyName "output offset maximum" // MVectorIsSometimesCoordinate - Vector m_vecOutputMax; // 0x234 + Vector m_vecOutputMax; // 0x1d4 // MPropertyFriendlyName "Random number generator controls" - CRandomNumberGeneratorParameters m_randomnessParameters; // 0x240 -}; - -// Alignment: 4 -// Size: 0x18 -class CPulse_LandingPadInfo -{ -public: - CUtlSymbolLarge m_PortName; // 0x0 - PulseDocNodeID_t m_nEditorNodeID; // 0x8 - PulseRuntimeChunkIndex_t m_nAssociatedChunk; // 0xc - int32_t m_nAssociatedInstruction; // 0x10 + CRandomNumberGeneratorParameters m_randomnessParameters; // 0x1e0 }; // Alignment: 3 -// Size: 0x220 +// Size: 0x1c0 class C_OP_GlobalLight : public CParticleFunctionOperator { public: // MPropertyFriendlyName "initial color bias" - float m_flScale; // 0x210 + float m_flScale; // 0x1b0 // MPropertyFriendlyName "clamp minimum light value to initial color" - bool m_bClampLowerRange; // 0x214 + bool m_bClampLowerRange; // 0x1b4 // MPropertyFriendlyName "clamp maximum light value to initial color" - bool m_bClampUpperRange; // 0x215 + bool m_bClampUpperRange; // 0x1b5 }; // Alignment: 11 -// Size: 0x240 +// Size: 0x1e0 class C_OP_CPOffsetToPercentageBetweenCPs : public CParticleFunctionOperator { public: // MPropertyFriendlyName "percentage minimum" - float m_flInputMin; // 0x210 + float m_flInputMin; // 0x1b0 // MPropertyFriendlyName "percentage maximum" - float m_flInputMax; // 0x214 + float m_flInputMax; // 0x1b4 // MPropertyFriendlyName "percentage bias" - float m_flInputBias; // 0x218 + float m_flInputBias; // 0x1b8 // MPropertyFriendlyName "starting control point" - int32_t m_nStartCP; // 0x21c + int32_t m_nStartCP; // 0x1bc // MPropertyFriendlyName "ending control point" - int32_t m_nEndCP; // 0x220 + int32_t m_nEndCP; // 0x1c0 // MPropertyFriendlyName "offset control point" - int32_t m_nOffsetCP; // 0x224 + int32_t m_nOffsetCP; // 0x1c4 // MPropertyFriendlyName "output control point" - int32_t m_nOuputCP; // 0x228 + int32_t m_nOuputCP; // 0x1c8 // MPropertyFriendlyName "input control point" - int32_t m_nInputCP; // 0x22c + int32_t m_nInputCP; // 0x1cc // MPropertyFriendlyName "treat distance between points as radius" - bool m_bRadialCheck; // 0x230 + bool m_bRadialCheck; // 0x1d0 // MPropertyFriendlyName "treat offset as scale of total distance" - bool m_bScaleOffset; // 0x231 + bool m_bScaleOffset; // 0x1d1 private: - [[maybe_unused]] uint8_t __pad0232[0x2]; // 0x232 + [[maybe_unused]] uint8_t __pad01d2[0x2]; // 0x1d2 public: // MPropertyFriendlyName "offset amount" // MVectorIsCoordinate - Vector m_vecOffset; // 0x234 + Vector m_vecOffset; // 0x1d4 }; // Alignment: 0 -// Size: 0x260 +// Size: 0x200 class C_OP_Callback : public CParticleFunctionRenderer { public: @@ -24471,48 +20454,40 @@ public: }; // Alignment: 1 -// Size: 0x2b0 +// Size: 0x250 class C_INIT_InitFromParentKilled : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "field to init" // MPropertyAttributeChoiceName "particlefield" - ParticleAttributeIndex_t m_nAttributeToCopy; // 0x220 + ParticleAttributeIndex_t m_nAttributeToCopy; // 0x1c0 }; // Alignment: 0 -// Size: 0x250 +// Size: 0x1f0 class C_INIT_RandomNamedModelMeshGroup : public C_INIT_RandomNamedModelElement { public: // No members available }; -// Alignment: 0 -// Size: 0x108 -class CPulseGraphInstance_TestDomain_Derived : public CPulseGraphInstance_TestDomain -{ -public: - // No members available -}; - // Alignment: 3 -// Size: 0x230 +// Size: 0x940 class C_OP_BasicMovement : public CParticleFunctionOperator { public: // MPropertyFriendlyName "gravity" // MVectorIsCoordinate - Vector m_Gravity; // 0x210 + CParticleCollectionVecInput m_Gravity; // 0x1b0 // MPropertyFriendlyName "drag" // MPropertyAttributeRange "-1 1" - float m_fDrag; // 0x21c + CParticleCollectionFloatInput m_fDrag; // 0x7e8 // MPropertyFriendlyName "max constraint passes" - int32_t m_nMaxConstraintPasses; // 0x220 + int32_t m_nMaxConstraintPasses; // 0x938 }; // Alignment: 0 -// Size: 0x108 +// Size: 0x110 class CParticleCollectionBindingInstance : public CBasePulseGraphInstance { public: @@ -24520,312 +20495,287 @@ public: }; // Alignment: 2 -// Size: 0x380 +// Size: 0x330 class C_OP_QuantizeFloat : public CParticleFunctionOperator { public: // MPropertyFriendlyName "value" - CPerParticleFloatInput m_InputValue; // 0x210 + CPerParticleFloatInput m_InputValue; // 0x1b0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nOutputField; // 0x350 -}; - -// Alignment: 2 -// Size: 0x78 -class CPulseCell_Outflow_TestRandomYesNo : public CPulseCell_BaseFlow -{ -public: - // MPropertyFriendlyName "Yes" - // MPropertyDescription "Randomly taken half of the time" - CPulse_OutflowConnection m_Yes; // 0x48 - // MPropertyFriendlyName "No" - // MPropertyDescription "Randomly taken half of the time" - CPulse_OutflowConnection m_No; // 0x60 + ParticleAttributeIndex_t m_nOutputField; // 0x300 }; // Alignment: 11 -// Size: 0x250 +// Size: 0x1f0 class C_INIT_RemapScalar : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "input field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldInput; // 0x220 + ParticleAttributeIndex_t m_nFieldInput; // 0x1c0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x224 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c4 // MPropertyFriendlyName "input minimum" - float m_flInputMin; // 0x228 + float m_flInputMin; // 0x1c8 // MPropertyFriendlyName "input maximum" - float m_flInputMax; // 0x22c + float m_flInputMax; // 0x1cc // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x230 + float m_flOutputMin; // 0x1d0 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x234 + float m_flOutputMax; // 0x1d4 // MPropertyFriendlyName "emitter lifetime start time (seconds)" - float m_flStartTime; // 0x238 + float m_flStartTime; // 0x1d8 // MPropertyFriendlyName "emitter lifetime end time (seconds)" - float m_flEndTime; // 0x23c + float m_flEndTime; // 0x1dc // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x240 + ParticleSetMethod_t m_nSetMethod; // 0x1e0 // MPropertyFriendlyName "only active within specified input range" - bool m_bActiveRange; // 0x244 + bool m_bActiveRange; // 0x1e4 private: - [[maybe_unused]] uint8_t __pad0245[0x3]; // 0x245 + [[maybe_unused]] uint8_t __pad01e5[0x3]; // 0x1e5 public: // MPropertyFriendlyName "remap bias" - float m_flRemapBias; // 0x248 + float m_flRemapBias; // 0x1e8 }; // Alignment: 7 -// Size: 0x870 +// Size: 0x860 class C_INIT_MoveBetweenPoints : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "minimum speed" - CPerParticleFloatInput m_flSpeedMin; // 0x220 + CPerParticleFloatInput m_flSpeedMin; // 0x1c0 // MPropertyFriendlyName "maximum speed" - CPerParticleFloatInput m_flSpeedMax; // 0x360 + CPerParticleFloatInput m_flSpeedMax; // 0x310 // MPropertyFriendlyName "end spread" - CPerParticleFloatInput m_flEndSpread; // 0x4a0 + CPerParticleFloatInput m_flEndSpread; // 0x460 // MPropertyFriendlyName "start offset" - CPerParticleFloatInput m_flStartOffset; // 0x5e0 + CPerParticleFloatInput m_flStartOffset; // 0x5b0 // MPropertyFriendlyName "end offset" - CPerParticleFloatInput m_flEndOffset; // 0x720 + CPerParticleFloatInput m_flEndOffset; // 0x700 // MPropertyFriendlyName "end control point" - int32_t m_nEndControlPointNumber; // 0x860 + int32_t m_nEndControlPointNumber; // 0x850 // MPropertyFriendlyName "bias lifetime by trail length" - bool m_bTrailBias; // 0x864 + bool m_bTrailBias; // 0x854 }; // Alignment: 1 -// Size: 0x230 +// Size: 0x1d0 class C_INIT_SequenceLifeTime : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "frames per second" - float m_flFramerate; // 0x220 + float m_flFramerate; // 0x1c0 }; // Alignment: 6 -// Size: 0x240 +// Size: 0x1e0 class C_OP_OscillateVectorSimple : public CParticleFunctionOperator { public: // MPropertyFriendlyName "oscillation rate" // MVectorIsSometimesCoordinate - Vector m_Rate; // 0x210 + Vector m_Rate; // 0x1b0 // MPropertyFriendlyName "oscillation frequency" - Vector m_Frequency; // 0x21c + Vector m_Frequency; // 0x1bc // MPropertyFriendlyName "oscillation field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nField; // 0x228 + ParticleAttributeIndex_t m_nField; // 0x1c8 // MPropertyFriendlyName "oscillation multiplier" - float m_flOscMult; // 0x22c + float m_flOscMult; // 0x1cc // MPropertyFriendlyName "oscillation start phase" - float m_flOscAdd; // 0x230 + float m_flOscAdd; // 0x1d0 // MPropertyFriendlyName "offset instead of accelerate position" - bool m_bOffset; // 0x234 -}; - -// Alignment: 5 -// Size: 0x58 -class CPulse_RegisterInfo -{ -public: - PulseRuntimeRegisterIndex_t m_nReg; // 0x0 - CPulseValueFullType m_Type; // 0x8 - CKV3MemberNameWithStorage m_OriginName; // 0x18 - int32_t m_nWrittenByInstruction; // 0x50 - int32_t m_nLastReadByInstruction; // 0x54 + bool m_bOffset; // 0x1d4 }; // Alignment: 10 -// Size: 0x600 +// Size: 0x5d0 class C_OP_ContinuousEmitter : public CParticleFunctionEmitter { public: // MPropertyFriendlyName "emission duration" - CParticleCollectionFloatInput m_flEmissionDuration; // 0x220 + CParticleCollectionFloatInput m_flEmissionDuration; // 0x1c0 // MPropertyFriendlyName "emission start time" - CParticleCollectionFloatInput m_flStartTime; // 0x360 + CParticleCollectionFloatInput m_flStartTime; // 0x310 // MPropertyFriendlyName "emission rate" - CParticleCollectionFloatInput m_flEmitRate; // 0x4a0 + CParticleCollectionFloatInput m_flEmitRate; // 0x460 // MPropertyFriendlyName "scale emission to used control points" // MParticleMaxVersion - float m_flEmissionScale; // 0x5e0 + float m_flEmissionScale; // 0x5b0 // MPropertyFriendlyName "scale emission by parent particle count" - float m_flScalePerParentParticle; // 0x5e4 + float m_flScalePerParentParticle; // 0x5b4 // MPropertyFriendlyName "emit particles for killed parent particles" - bool m_bInitFromKilledParentParticles; // 0x5e8 + bool m_bInitFromKilledParentParticles; // 0x5b8 private: - [[maybe_unused]] uint8_t __pad05e9[0x3]; // 0x5e9 + [[maybe_unused]] uint8_t __pad05b9[0x3]; // 0x5b9 public: // MPropertyFriendlyName "control point with snapshot data" - int32_t m_nSnapshotControlPoint; // 0x5ec + int32_t m_nSnapshotControlPoint; // 0x5bc // MPropertyFriendlyName "limit per update" - int32_t m_nLimitPerUpdate; // 0x5f0 + int32_t m_nLimitPerUpdate; // 0x5c0 // MPropertyFriendlyName "force emit on first update" - bool m_bForceEmitOnFirstUpdate; // 0x5f4 + bool m_bForceEmitOnFirstUpdate; // 0x5c4 // MPropertyFriendlyName "force emit on last update" - bool m_bForceEmitOnLastUpdate; // 0x5f5 + bool m_bForceEmitOnLastUpdate; // 0x5c5 }; // Alignment: 3 -// Size: 0x240 +// Size: 0x1e0 class C_OP_RemapDistanceToLineSegmentToScalar : public C_OP_RemapDistanceToLineSegmentBase { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x230 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1d0 // MPropertyFriendlyName "output value at min distance" - float m_flMinOutputValue; // 0x234 + float m_flMinOutputValue; // 0x1d4 // MPropertyFriendlyName "output value at max distance" - float m_flMaxOutputValue; // 0x238 + float m_flMaxOutputValue; // 0x1d8 }; // Alignment: 1 -// Size: 0x220 +// Size: 0x1c0 class C_OP_EndCapTimedDecay : public CParticleFunctionOperator { public: // MPropertyFriendlyName "decay time" - float m_flDecayTime; // 0x210 + float m_flDecayTime; // 0x1b0 }; // Alignment: 6 -// Size: 0x270 +// Size: 0x210 class C_INIT_CreateSequentialPath : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "maximum distance" - float m_fMaxDistance; // 0x220 + float m_fMaxDistance; // 0x1c0 // MPropertyFriendlyName "particles to map from start to end" - float m_flNumToAssign; // 0x224 + float m_flNumToAssign; // 0x1c4 // MPropertyFriendlyName "restart behavior (0 = bounce, 1 = loop )" - bool m_bLoop; // 0x228 + bool m_bLoop; // 0x1c8 // MPropertyFriendlyName "use sequential CP pairs between start and end point" - bool m_bCPPairs; // 0x229 + bool m_bCPPairs; // 0x1c9 // MPropertyFriendlyName "save offset" - bool m_bSaveOffset; // 0x22a + bool m_bSaveOffset; // 0x1ca private: - [[maybe_unused]] uint8_t __pad022b[0x5]; // 0x22b + [[maybe_unused]] uint8_t __pad01cb[0x5]; // 0x1cb public: - CPathParameters m_PathParams; // 0x230 + CPathParameters m_PathParams; // 0x1d0 }; // Alignment: 1 -// Size: 0x350 +// Size: 0x300 class C_OP_DecayOffscreen : public CParticleFunctionOperator { public: // MPropertyFriendlyName "Offscreen Time Before Decay" - CParticleCollectionFloatInput m_flOffscreenTime; // 0x210 + CParticleCollectionFloatInput m_flOffscreenTime; // 0x1b0 }; // Alignment: 13 -// Size: 0x850 +// Size: 0x860 class C_OP_DistanceBetweenTransforms : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "strarting transform" - CParticleTransformInput m_TransformStart; // 0x218 + CParticleTransformInput m_TransformStart; // 0x1b8 // MPropertyFriendlyName "end transform" - CParticleTransformInput m_TransformEnd; // 0x268 + CParticleTransformInput m_TransformEnd; // 0x220 // MPropertyFriendlyName "distance minimum" - CPerParticleFloatInput m_flInputMin; // 0x2b8 + CPerParticleFloatInput m_flInputMin; // 0x288 // MPropertyFriendlyName "distance maximum" - CPerParticleFloatInput m_flInputMax; // 0x3f8 + CPerParticleFloatInput m_flInputMax; // 0x3d8 // MPropertyFriendlyName "output minimum" - CPerParticleFloatInput m_flOutputMin; // 0x538 + CPerParticleFloatInput m_flOutputMin; // 0x528 // MPropertyFriendlyName "output maximum" CPerParticleFloatInput m_flOutputMax; // 0x678 // MPropertyFriendlyName "maximum trace length" - float m_flMaxTraceLength; // 0x7b8 + float m_flMaxTraceLength; // 0x7c8 // MPropertyFriendlyName "LOS Failure Scalar" - float m_flLOSScale; // 0x7bc + float m_flLOSScale; // 0x7cc // MPropertyFriendlyName "LOS collision group" - char m_CollisionGroupName[128]; // 0x7c0 + char m_CollisionGroupName[128]; // 0x7d0 // MPropertyFriendlyName "Trace Set" - ParticleTraceSet_t m_nTraceSet; // 0x840 + ParticleTraceSet_t m_nTraceSet; // 0x850 // MPropertyFriendlyName "ensure line of sight" - bool m_bLOS; // 0x844 + bool m_bLOS; // 0x854 private: - [[maybe_unused]] uint8_t __pad0845[0x3]; // 0x845 + [[maybe_unused]] uint8_t __pad0855[0x3]; // 0x855 public: // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x848 + ParticleSetMethod_t m_nSetMethod; // 0x858 }; // Alignment: 6 -// Size: 0x230 +// Size: 0x1d0 class C_OP_RemapScalar : public CParticleFunctionOperator { public: // MPropertyFriendlyName "input field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldInput; // 0x210 + ParticleAttributeIndex_t m_nFieldInput; // 0x1b0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 // MPropertyFriendlyName "input minimum" - float m_flInputMin; // 0x218 + float m_flInputMin; // 0x1b8 // MPropertyFriendlyName "input maximum" - float m_flInputMax; // 0x21c + float m_flInputMax; // 0x1bc // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x220 + float m_flOutputMin; // 0x1c0 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x224 + float m_flOutputMax; // 0x1c4 }; // Alignment: 3 -// Size: 0x230 +// Size: 0x1d0 class C_INIT_RandomTrailLength : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "length min" - float m_flMinLength; // 0x220 + float m_flMinLength; // 0x1c0 // MPropertyFriendlyName "length max" - float m_flMaxLength; // 0x224 + float m_flMaxLength; // 0x1c4 // MPropertyFriendlyName "length random exponent" - float m_flLengthRandExponent; // 0x228 + float m_flLengthRandExponent; // 0x1c8 }; // Alignment: 11 -// Size: 0xc80 +// Size: 0xcb0 class C_INIT_RingWave : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "input transform" - CParticleTransformInput m_TransformInput; // 0x220 + CParticleTransformInput m_TransformInput; // 0x1c0 // MPropertyFriendlyName "even distribution count" - CParticleCollectionFloatInput m_flParticlesPerOrbit; // 0x270 + CParticleCollectionFloatInput m_flParticlesPerOrbit; // 0x228 // MPropertyFriendlyName "initial radius" - CPerParticleFloatInput m_flInitialRadius; // 0x3b0 + CPerParticleFloatInput m_flInitialRadius; // 0x378 // MPropertyFriendlyName "thickness" - CPerParticleFloatInput m_flThickness; // 0x4f0 + CPerParticleFloatInput m_flThickness; // 0x4c8 // MPropertyFriendlyName "min initial speed" - CPerParticleFloatInput m_flInitialSpeedMin; // 0x630 + CPerParticleFloatInput m_flInitialSpeedMin; // 0x618 // MPropertyFriendlyName "max initial speed" - CPerParticleFloatInput m_flInitialSpeedMax; // 0x770 + CPerParticleFloatInput m_flInitialSpeedMax; // 0x768 // MPropertyFriendlyName "roll" - CPerParticleFloatInput m_flRoll; // 0x8b0 + CPerParticleFloatInput m_flRoll; // 0x8b8 // MPropertyFriendlyName "pitch" - CPerParticleFloatInput m_flPitch; // 0x9f0 + CPerParticleFloatInput m_flPitch; // 0xa08 // MPropertyFriendlyName "yaw" - CPerParticleFloatInput m_flYaw; // 0xb30 + CPerParticleFloatInput m_flYaw; // 0xb58 // MPropertyFriendlyName "even distribution" - bool m_bEvenDistribution; // 0xc70 + bool m_bEvenDistribution; // 0xca8 // MPropertyFriendlyName "XY velocity only" - bool m_bXYVelocityOnly; // 0xc71 + bool m_bXYVelocityOnly; // 0xca9 }; // Alignment: 9 @@ -24834,389 +20784,540 @@ class C_INIT_SetHitboxToClosest : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x220 + int32_t m_nControlPointNumber; // 0x1c0 // MPropertyFriendlyName "desired hitbox" - int32_t m_nDesiredHitbox; // 0x224 + int32_t m_nDesiredHitbox; // 0x1c4 // MPropertyFriendlyName "model hitbox scale" - CParticleCollectionVecInput m_vecHitBoxScale; // 0x228 + CParticleCollectionVecInput m_vecHitBoxScale; // 0x1c8 // MPropertyFriendlyName "hitbox set" - char m_HitboxSetName[128]; // 0x810 + char m_HitboxSetName[128]; // 0x800 // MPropertyFriendlyName "use bones instead of hitboxes" - bool m_bUseBones; // 0x890 + bool m_bUseBones; // 0x880 // MPropertyFriendlyName "get closest point on closest hitbox" - bool m_bUseClosestPointOnHitbox; // 0x891 + bool m_bUseClosestPointOnHitbox; // 0x881 private: - [[maybe_unused]] uint8_t __pad0892[0x2]; // 0x892 + [[maybe_unused]] uint8_t __pad0882[0x2]; // 0x882 public: // MPropertyFriendlyName "closest point test type" - ClosestPointTestType_t m_nTestType; // 0x894 + ClosestPointTestType_t m_nTestType; // 0x884 // MPropertyFriendlyName "hybrid ratio" - CParticleCollectionFloatInput m_flHybridRatio; // 0x898 + CParticleCollectionFloatInput m_flHybridRatio; // 0x888 // MPropertyFriendlyName "set initial position" bool m_bUpdatePosition; // 0x9d8 }; // Alignment: 3 -// Size: 0x220 +// Size: 0x1c0 class C_OP_RemapVelocityToVector : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 // MPropertyFriendlyName "scale factor" - float m_flScale; // 0x214 + float m_flScale; // 0x1b4 // MPropertyFriendlyName "normalize" - bool m_bNormalize; // 0x218 + bool m_bNormalize; // 0x1b8 }; // Alignment: 4 -// Size: 0x270 +// Size: 0x210 class C_OP_RenderTonemapController : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "tonemap level scale" - float m_flTonemapLevel; // 0x260 + float m_flTonemapLevel; // 0x200 // MPropertyFriendlyName "tonemap weight scale" - float m_flTonemapWeight; // 0x264 + float m_flTonemapWeight; // 0x204 // MPropertyFriendlyName "tonemap level" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nTonemapLevelField; // 0x268 + ParticleAttributeIndex_t m_nTonemapLevelField; // 0x208 // MPropertyFriendlyName "tonemap weight" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nTonemapWeightField; // 0x26c + ParticleAttributeIndex_t m_nTonemapWeightField; // 0x20c }; // Alignment: 5 -// Size: 0x5f0 +// Size: 0x5c0 class C_OP_RepeatedTriggerChildGroup : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "group ID to affect" - int32_t m_nChildGroupID; // 0x220 + int32_t m_nChildGroupID; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0224[0x4]; // 0x224 + [[maybe_unused]] uint8_t __pad01c4[0x4]; // 0x1c4 public: // MPropertyFriendlyName "Within-Cluster Refire Time" - CParticleCollectionFloatInput m_flClusterRefireTime; // 0x228 + CParticleCollectionFloatInput m_flClusterRefireTime; // 0x1c8 // MPropertyFriendlyName "Within-Cluster Fire Count Before Cooldown" - CParticleCollectionFloatInput m_flClusterSize; // 0x368 + CParticleCollectionFloatInput m_flClusterSize; // 0x318 // MPropertyFriendlyName "Cluster Cooldown Time" - CParticleCollectionFloatInput m_flClusterCooldown; // 0x4a8 + CParticleCollectionFloatInput m_flClusterCooldown; // 0x468 // MPropertyFriendlyName "limit active children to parent particle count" - bool m_bLimitChildCount; // 0x5e8 + bool m_bLimitChildCount; // 0x5b8 }; // Alignment: 2 -// Size: 0x220 +// Size: 0x1c0 class C_OP_FadeInSimple : public CParticleFunctionOperator { public: // MPropertyFriendlyName "proportional fade in time" - float m_flFadeInTime; // 0x210 + float m_flFadeInTime; // 0x1b0 // MPropertyFriendlyName "alpha field" // MPropertyAttributeChoiceName "particlefield_alpha" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 }; // Alignment: 2 -// Size: 0x220 +// Size: 0x1c0 class C_OP_NormalizeVector : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 // MPropertyFriendlyName "scale factor" - float m_flScale; // 0x214 + float m_flScale; // 0x1b4 }; // Alignment: 4 -// Size: 0x240 +// Size: 0x1e0 class C_INIT_RandomAlpha : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "alpha field" // MPropertyAttributeChoiceName "particlefield_alpha" - ParticleAttributeIndex_t m_nFieldOutput; // 0x220 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c0 // MPropertyFriendlyName "alpha min" // MPropertyAttributeRange "0 255" - int32_t m_nAlphaMin; // 0x224 + int32_t m_nAlphaMin; // 0x1c4 // MPropertyFriendlyName "alpha max" // MPropertyAttributeRange "0 255" - int32_t m_nAlphaMax; // 0x228 + int32_t m_nAlphaMax; // 0x1c8 private: - [[maybe_unused]] uint8_t __pad022c[0x8]; // 0x22c + [[maybe_unused]] uint8_t __pad01cc[0x8]; // 0x1cc public: // MPropertyFriendlyName "alpha random exponent" - float m_flAlphaRandExponent; // 0x234 + float m_flAlphaRandExponent; // 0x1d4 }; // Alignment: 10 -// Size: 0xda0 +// Size: 0xdd0 class C_OP_RemapAverageHitboxSpeedtoCP : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "input control point" - int32_t m_nInControlPointNumber; // 0x220 + int32_t m_nInControlPointNumber; // 0x1c0 // MPropertyFriendlyName "output control point" - int32_t m_nOutControlPointNumber; // 0x224 + int32_t m_nOutControlPointNumber; // 0x1c4 // MPropertyFriendlyName "Output component" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nField; // 0x228 + int32_t m_nField; // 0x1c8 private: - [[maybe_unused]] uint8_t __pad022c[0x4]; // 0x22c + [[maybe_unused]] uint8_t __pad01cc[0x4]; // 0x1cc public: // MPropertyFriendlyName "input minimum" - CParticleCollectionFloatInput m_flInputMin; // 0x230 + CParticleCollectionFloatInput m_flInputMin; // 0x1d0 // MPropertyFriendlyName "input maximum" - CParticleCollectionFloatInput m_flInputMax; // 0x370 + CParticleCollectionFloatInput m_flInputMax; // 0x320 // MPropertyFriendlyName "output minimum" - CParticleCollectionFloatInput m_flOutputMin; // 0x4b0 + CParticleCollectionFloatInput m_flOutputMin; // 0x470 // MPropertyFriendlyName "output maximum" - CParticleCollectionFloatInput m_flOutputMax; // 0x5f0 + CParticleCollectionFloatInput m_flOutputMax; // 0x5c0 // MPropertyFriendlyName "intersection height CP" - int32_t m_nHeightControlPointNumber; // 0x730 + int32_t m_nHeightControlPointNumber; // 0x710 private: - [[maybe_unused]] uint8_t __pad0734[0x4]; // 0x734 + [[maybe_unused]] uint8_t __pad0714[0x4]; // 0x714 public: // MPropertyFriendlyName "comparison velocity" - CParticleCollectionVecInput m_vecComparisonVelocity; // 0x738 + CParticleCollectionVecInput m_vecComparisonVelocity; // 0x718 // MPropertyFriendlyName "hitbox set" - char m_HitboxSetName[128]; // 0xd20 + char m_HitboxSetName[128]; // 0xd50 }; // Alignment: 5 -// Size: 0x360 +// Size: 0x310 class C_OP_ExternalGameImpulseForce : public CParticleFunctionForce { public: // MPropertyFriendlyName "force scale" - CPerParticleFloatInput m_flForceScale; // 0x210 + CPerParticleFloatInput m_flForceScale; // 0x1b0 // MPropertyFriendlyName "rope shake" - bool m_bRopes; // 0x350 + bool m_bRopes; // 0x300 // MPropertyFriendlyName "limit rope impulses to Z" - bool m_bRopesZOnly; // 0x351 + bool m_bRopesZOnly; // 0x301 // MPropertyFriendlyName "explosions" - bool m_bExplosions; // 0x352 + bool m_bExplosions; // 0x302 // MPropertyFriendlyName "particle systems" - bool m_bParticles; // 0x353 + bool m_bParticles; // 0x303 }; -// Alignment: 3 -// Size: 0x48 -class CParticleModelInput +// Alignment: 48 +// Size: 0x2400 +class C_OP_RenderModels : public CParticleFunctionRenderer { -private: - [[maybe_unused]] uint8_t __pad0000[0x4]; // 0x0 public: - ParticleModelType_t m_nType; // 0x4 - CKV3MemberNameWithStorage m_NamedValue; // 0x8 - int32_t m_nControlPoint; // 0x40 + // MPropertyFriendlyName "Only Render in effects bloom pass" + // MPropertySortPriority "1100" + bool m_bOnlyRenderInEffectsBloomPass; // 0x200 + // MPropertyFriendlyName "Only Render in effects water pass" + // MPropertySortPriority "1050" + // MPropertySuppressExpr "mod != csgo" + bool m_bOnlyRenderInEffectsWaterPass; // 0x201 + // MPropertyFriendlyName "Use Mixed Resolution Rendering" + // MPropertySortPriority "1200" + bool m_bUseMixedResolutionRendering; // 0x202 + // MPropertyFriendlyName "Only Render in effects game overlay pass" + // MPropertySortPriority "1210" + // MPropertySuppressExpr "mod != csgo" + bool m_bOnlyRenderInEffecsGameOverlay; // 0x203 +private: + [[maybe_unused]] uint8_t __pad0204[0x4]; // 0x204 +public: + // MPropertyFriendlyName "models" + // MParticleRequireDefaultArrayEntry + // MPropertyAutoExpandSelf + // MPropertySortPriority "775" + CUtlVector< ModelReference_t > m_ModelList; // 0x208 +private: + [[maybe_unused]] uint8_t __pad0220[0x4]; // 0x220 +public: + // MPropertyFriendlyName "bodygroup field" + // MPropertyAttributeChoiceName "particlefield_scalar" + ParticleAttributeIndex_t m_nBodyGroupField; // 0x224 + // MPropertyFriendlyName "submodel field" + // MPropertyAttributeChoiceName "particlefield_scalar" + ParticleAttributeIndex_t m_nSubModelField; // 0x228 + // MPropertyStartGroup "Orientation" + // MPropertyFriendlyName "ignore normal" + // MPropertySortPriority "750" + bool m_bIgnoreNormal; // 0x22c + // MPropertyFriendlyName "orient model z to normal" + // MPropertySortPriority "750" + // MPropertySuppressExpr "m_bIgnoreNormal" + bool m_bOrientZ; // 0x22d + // MPropertyFriendlyName "center mesh" + // MPropertySortPriority "750" + bool m_bCenterOffset; // 0x22e +private: + [[maybe_unused]] uint8_t __pad022f[0x1]; // 0x22f +public: + // MPropertyFriendlyName "model local offset" + // MPropertySortPriority "750" + CPerParticleVecInput m_vecLocalOffset; // 0x230 + // MPropertyFriendlyName "model local rotation (pitch/yaw/roll)" + // MPropertySortPriority "750" + CPerParticleVecInput m_vecLocalRotation; // 0x868 + // MPropertyStartGroup "Model Scale" + // MPropertyFriendlyName "ignore radius" + // MPropertySortPriority "700" + bool m_bIgnoreRadius; // 0xea0 +private: + [[maybe_unused]] uint8_t __pad0ea1[0x3]; // 0xea1 +public: + // MPropertyFriendlyName "model scale CP" + // MPropertySortPriority "700" + int32_t m_nModelScaleCP; // 0xea4 + // MPropertyFriendlyName "model component scale" + // MPropertySortPriority "700" + CPerParticleVecInput m_vecComponentScale; // 0xea8 + // MPropertyFriendlyName "apply scales in local model space" + // MPropertySortPriority "700" + bool m_bLocalScale; // 0x14e0 + // MPropertyStartGroup "Animation" + // MPropertyFriendlyName "animated" + // MPropertySortPriority "500" + bool m_bAnimated; // 0x14e1 +private: + [[maybe_unused]] uint8_t __pad14e2[0x2]; // 0x14e2 +public: + // MPropertyFriendlyName "animation rate" + // MPropertySortPriority "500" + // MPropertySuppressExpr "!m_bAnimated" + float m_flAnimationRate; // 0x14e4 + // MPropertyFriendlyName "scale animation rate" + // MPropertySortPriority "500" + // MPropertySuppressExpr "!m_bAnimated" + bool m_bScaleAnimationRate; // 0x14e8 + // MPropertyFriendlyName "force looping animations" + // MPropertySortPriority "500" + // MPropertySuppressExpr "!m_bAnimated" + bool m_bForceLoopingAnimation; // 0x14e9 + // MPropertyFriendlyName "reset animation frame on stop" + // MPropertySortPriority "500" + // MPropertySuppressExpr "!m_bAnimated" + bool m_bResetAnimOnStop; // 0x14ea + // MPropertyFriendlyName "set animation frame manually" + // MPropertySortPriority "500" + // MPropertySuppressExpr "!m_bAnimated" + bool m_bManualAnimFrame; // 0x14eb + // MPropertyFriendlyName "animation rate scale field" + // MPropertyAttributeChoiceName "particlefield_scalar" + // MPropertySortPriority "500" + // MPropertySuppressExpr "!m_bAnimated" + ParticleAttributeIndex_t m_nAnimationScaleField; // 0x14ec + // MPropertyStartGroup "Animation" + // MPropertyFriendlyName "animation sequence field" + // MPropertyAttributeChoiceName "particlefield_scalar" + // MPropertySortPriority "500" + ParticleAttributeIndex_t m_nAnimationField; // 0x14f0 + // MPropertyFriendlyName "manual animation frame field" + // MPropertyAttributeChoiceName "particlefield_scalar" + // MPropertySortPriority "500" + // MPropertySuppressExpr "!(m_bAnimated && m_bManualAnimFrame)" + ParticleAttributeIndex_t m_nManualFrameField; // 0x14f4 + // MPropertyFriendlyName "activity override" + // MPropertySuppressExpr "mod != dota" + // MPropertySortPriority "500" + char m_ActivityName[256]; // 0x14f8 + // MPropertyFriendlyName "sequence override" + // MPropertySuppressExpr "mod == dota" + // MPropertySortPriority "500" + char m_SequenceName[256]; // 0x15f8 + // MPropertyFriendlyName "Enable Cloth Simulation" + bool m_bEnableClothSimulation; // 0x16f8 +private: + [[maybe_unused]] uint8_t __pad16f9[0x7]; // 0x16f9 +public: + // MPropertyStartGroup "Material" + // MPropertyFriendlyName "material override" + // MPropertySortPriority "600" + CStrongHandle< InfoForResourceTypeIMaterial2 > m_hOverrideMaterial; // 0x1700 + // MPropertyFriendlyName "override translucent materials" + // MPropertySortPriority "600" + bool m_bOverrideTranslucentMaterials; // 0x1708 +private: + [[maybe_unused]] uint8_t __pad1709[0x3]; // 0x1709 +public: + // MPropertyFriendlyName "skin number" + // MPropertySortPriority "600" + int32_t m_nSkin; // 0x170c + // MPropertyFriendlyName "skin override CP" + // MPropertySortPriority "600" + int32_t m_nSkinCP; // 0x1710 +private: + [[maybe_unused]] uint8_t __pad1714[0x4]; // 0x1714 +public: + // MPropertyFriendlyName "material variables" + // MPropertyAutoExpandSelf + // MPropertySortPriority "600" + CUtlVector< MaterialVariable_t > m_MaterialVars; // 0x1718 + // MPropertyStartGroup "Model Overrides" + // MPropertyFriendlyName "input model" + CParticleModelInput m_modelInput; // 0x1730 + // MPropertyFriendlyName "model LOD" + int32_t m_nLOD; // 0x1790 + // MPropertyFriendlyName "model override economy loadout slot type" + char m_EconSlotName[256]; // 0x1794 + // MPropertyFriendlyName "model override original model only (ignore shapeshift/hex/etc)" + bool m_bOriginalModel; // 0x1894 + // MPropertyFriendlyName "suppress tinting of the model" + bool m_bSuppressTint; // 0x1895 + // MPropertyFriendlyName "use raw mesh group (ignore bodygroup field and use submodel field as raw meshgroup)" + bool m_bUseRawMeshGroup; // 0x1896 + // MPropertyFriendlyName "disable shadows" + bool m_bDisableShadows; // 0x1897 + // MPropertyFriendlyName "forcedrawinterlevedwithsiblings" + bool m_bForceDrawInterlevedWithSiblings; // 0x1898 + // MPropertyFriendlyName "render attribute" + char m_szRenderAttribute[260]; // 0x1899 +private: + [[maybe_unused]] uint8_t __pad199d[0x3]; // 0x199d +public: + // MPropertyStartGroup "+Renderer Modifiers" + // MPropertyFriendlyName "Radius Scale" + // MPropertySortPriority "700" + CParticleCollectionFloatInput m_flRadiusScale; // 0x19a0 + // MPropertyFriendlyName "alpha scale" + // MPropertySortPriority "700" + CParticleCollectionFloatInput m_flAlphaScale; // 0x1af0 + // MPropertyFriendlyName "rotation roll scale" + // MPropertySortPriority "700" + CParticleCollectionFloatInput m_flRollScale; // 0x1c40 + // MPropertyFriendlyName "per-particle alpha scale attribute" + // MPropertyAttributeChoiceName "particlefield_scalar" + // MPropertySortPriority "700" + ParticleAttributeIndex_t m_nAlpha2Field; // 0x1d90 +private: + [[maybe_unused]] uint8_t __pad1d94[0x4]; // 0x1d94 +public: + // MPropertyFriendlyName "color blend" + // MPropertySortPriority "700" + CParticleCollectionVecInput m_vecColorScale; // 0x1d98 + // MPropertyFriendlyName "color blend type" + // MPropertySortPriority "700" + ParticleColorBlendType_t m_nColorBlendType; // 0x23d0 }; // Alignment: 3 -// Size: 0x430 +// Size: 0x3d0 class C_INIT_RandomModelSequence : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "activity" // MPropertySuppressExpr "mod != dota" - char m_ActivityName[256]; // 0x220 + char m_ActivityName[256]; // 0x1c0 // MPropertyFriendlyName "sequence" // MPropertySuppressExpr "mod == dota" - char m_SequenceName[256]; // 0x320 + char m_SequenceName[256]; // 0x2c0 // MPropertyFriendlyName "model" - CStrongHandle< InfoForResourceTypeCModel > m_hModel; // 0x420 + CStrongHandle< InfoForResourceTypeCModel > m_hModel; // 0x3c0 }; // Alignment: 6 -// Size: 0x370 +// Size: 0x320 class C_OP_DecayMaintainCount : public CParticleFunctionOperator { public: // MPropertyFriendlyName "count to maintain" - int32_t m_nParticlesToMaintain; // 0x210 + int32_t m_nParticlesToMaintain; // 0x1b0 // MPropertyFriendlyName "decay delay" - float m_flDecayDelay; // 0x214 + float m_flDecayDelay; // 0x1b4 // MPropertyFriendlyName "snapshot control point for count" - int32_t m_nSnapshotControlPoint; // 0x218 + int32_t m_nSnapshotControlPoint; // 0x1b8 // MPropertyFriendlyName "decay on lifespan" - bool m_bLifespanDecay; // 0x21c + bool m_bLifespanDecay; // 0x1bc private: - [[maybe_unused]] uint8_t __pad021d[0x3]; // 0x21d + [[maybe_unused]] uint8_t __pad01bd[0x3]; // 0x1bd public: // MPropertyFriendlyName "total count scale" - CParticleCollectionFloatInput m_flScale; // 0x220 + CParticleCollectionFloatInput m_flScale; // 0x1c0 // MPropertyFriendlyName "kill newest instead of oldest" - bool m_bKillNewest; // 0x360 + bool m_bKillNewest; // 0x310 }; // Alignment: 3 -// Size: 0x2c0 +// Size: 0x260 class C_OP_SetControlPointPositionToTimeOfDayValue : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x220 + int32_t m_nControlPointNumber; // 0x1c0 // MPropertyFriendlyName "time-of-day parameter" - char m_pszTimeOfDayParameter[128]; // 0x224 + char m_pszTimeOfDayParameter[128]; // 0x1c4 // MPropertyFriendlyName "default value" - Vector m_vecDefaultValue; // 0x2a4 -}; - -// Alignment: 1 -// Size: 0x4 -struct CPulseCell_Outflow_CycleOrdered__InstanceState_t -{ -public: - int32_t m_nNextIndex; // 0x0 + Vector m_vecDefaultValue; // 0x244 }; // Alignment: 20 -// Size: 0x3620 +// Size: 0x3840 class C_OP_RenderTrails : public CBaseTrailRenderer { public: // MPropertyStartGroup "Screenspace Fading and culling" // MPropertyFriendlyName "enable fading and clamping" // MPropertySortPriority "1000" - bool m_bEnableFadingAndClamping; // 0x2510 + bool m_bEnableFadingAndClamping; // 0x2650 private: - [[maybe_unused]] uint8_t __pad2511[0x3]; // 0x2511 + [[maybe_unused]] uint8_t __pad2651[0x3]; // 0x2651 public: // MPropertyFriendlyName "start fade dot product of normal vs view" // MPropertySortPriority "1000" - float m_flStartFadeDot; // 0x2514 + float m_flStartFadeDot; // 0x2654 // MPropertyFriendlyName "end fade dot product of normal vs view" // MPropertySortPriority "1000" - float m_flEndFadeDot; // 0x2518 + float m_flEndFadeDot; // 0x2658 // MPropertyStartGroup "+Trail Length" // MPropertyFriendlyName "Anchor point source" // MPropertyAttributeChoiceName "particlefield_vector" // MPropertySortPriority "800" - ParticleAttributeIndex_t m_nPrevPntSource; // 0x251c + ParticleAttributeIndex_t m_nPrevPntSource; // 0x265c // MPropertyFriendlyName "max length" // MPropertySortPriority "800" - float m_flMaxLength; // 0x2520 + float m_flMaxLength; // 0x2660 // MPropertyFriendlyName "min length" // MPropertySortPriority "800" - float m_flMinLength; // 0x2524 + float m_flMinLength; // 0x2664 // MPropertyFriendlyName "ignore delta time" // MPropertySortPriority "800" - bool m_bIgnoreDT; // 0x2528 + bool m_bIgnoreDT; // 0x2668 private: - [[maybe_unused]] uint8_t __pad2529[0x3]; // 0x2529 + [[maybe_unused]] uint8_t __pad2669[0x3]; // 0x2669 public: // MPropertyFriendlyName "constrain radius to no more than this times the length" // MPropertySortPriority "800" - float m_flConstrainRadiusToLengthRatio; // 0x252c + float m_flConstrainRadiusToLengthRatio; // 0x266c // MPropertyFriendlyName "amount to scale trail length by" - float m_flLengthScale; // 0x2530 + float m_flLengthScale; // 0x2670 // MPropertyFriendlyName "how long before a trail grows to its full length" - float m_flLengthFadeInTime; // 0x2534 + float m_flLengthFadeInTime; // 0x2674 // MPropertyStartGroup "Trail Head & Tail" // MPropertyFriendlyName "head taper scale" // MPropertySortPriority "800" - CPerParticleFloatInput m_flRadiusHeadTaper; // 0x2538 + CPerParticleFloatInput m_flRadiusHeadTaper; // 0x2678 // MPropertyFriendlyName "head color scale" - CParticleCollectionVecInput m_vecHeadColorScale; // 0x2678 + CParticleCollectionVecInput m_vecHeadColorScale; // 0x27c8 // MPropertyFriendlyName "head alpha scale" - CPerParticleFloatInput m_flHeadAlphaScale; // 0x2c60 + CPerParticleFloatInput m_flHeadAlphaScale; // 0x2e00 // MPropertyFriendlyName "tail taper scale" - CPerParticleFloatInput m_flRadiusTaper; // 0x2da0 + CPerParticleFloatInput m_flRadiusTaper; // 0x2f50 // MPropertyFriendlyName "tail color scale" - CParticleCollectionVecInput m_vecTailColorScale; // 0x2ee0 + CParticleCollectionVecInput m_vecTailColorScale; // 0x30a0 // MPropertyFriendlyName "tail alpha scale" - CPerParticleFloatInput m_flTailAlphaScale; // 0x34c8 + CPerParticleFloatInput m_flTailAlphaScale; // 0x36d8 // MPropertyStartGroup "Trail UV Controls" // MPropertyFriendlyName "texture UV horizontal Scale field" // MPropertyAttributeChoiceName "particlefield_scalar" // MPropertySortPriority "800" - ParticleAttributeIndex_t m_nHorizCropField; // 0x3608 + ParticleAttributeIndex_t m_nHorizCropField; // 0x3828 // MPropertyFriendlyName "texture UV vertical Scale field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nVertCropField; // 0x360c + ParticleAttributeIndex_t m_nVertCropField; // 0x382c // MPropertyFriendlyName "Trail forward shift (fraction)" - float m_flForwardShift; // 0x3610 + float m_flForwardShift; // 0x3830 // MPropertyFriendlyName "Flip U or V texcoords if pitch or yaw go over PI" - bool m_bFlipUVBasedOnPitchYaw; // 0x3614 + bool m_bFlipUVBasedOnPitchYaw; // 0x3834 }; // Alignment: 0 -// Size: 0x270 +// Size: 0x210 class C_INIT_RemapParticleCountToNamedModelMeshGroupScalar : public C_INIT_RemapParticleCountToNamedModelElementScalar { public: // No members available }; -// Alignment: 1 -// Size: 0x4 -struct PulseRuntimeVarIndex_t -{ -public: - int32_t m_Value; // 0x0 -}; - -// Alignment: 0 -// Size: 0x68 -class CPulseCell_Value_Expression : public CPulseCell_BaseValue -{ -public: - // No members available -}; - // Alignment: 8 -// Size: 0x730 +// Size: 0x710 class C_OP_RemapDotProductToCP : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "first input control point" - int32_t m_nInputCP1; // 0x220 + int32_t m_nInputCP1; // 0x1c0 // MPropertyFriendlyName "second input control point" - int32_t m_nInputCP2; // 0x224 + int32_t m_nInputCP2; // 0x1c4 // MPropertyFriendlyName "output control point" - int32_t m_nOutputCP; // 0x228 + int32_t m_nOutputCP; // 0x1c8 // MPropertyFriendlyName "output component" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nOutVectorField; // 0x22c + int32_t m_nOutVectorField; // 0x1cc // MPropertyFriendlyName "input minimum (-1 to 1)" - CParticleCollectionFloatInput m_flInputMin; // 0x230 + CParticleCollectionFloatInput m_flInputMin; // 0x1d0 // MPropertyFriendlyName "input maximum (-1 to 1)" - CParticleCollectionFloatInput m_flInputMax; // 0x370 + CParticleCollectionFloatInput m_flInputMax; // 0x320 // MPropertyFriendlyName "output minimum" - CParticleCollectionFloatInput m_flOutputMin; // 0x4b0 + CParticleCollectionFloatInput m_flOutputMin; // 0x470 // MPropertyFriendlyName "output maximum" - CParticleCollectionFloatInput m_flOutputMax; // 0x5f0 + CParticleCollectionFloatInput m_flOutputMax; // 0x5c0 }; // Alignment: 3 -// Size: 0x220 +// Size: 0x1c0 class C_OP_OrientTo2dDirection : public CParticleFunctionOperator { public: // MPropertyFriendlyName "rotation offset" - float m_flRotOffset; // 0x210 + float m_flRotOffset; // 0x1b0 // MPropertyFriendlyName "spin strength" - float m_flSpinStrength; // 0x214 + float m_flSpinStrength; // 0x1b4 // MPropertyFriendlyName "rotation field" // MPropertyAttributeChoiceName "particlefield_rotation" - ParticleAttributeIndex_t m_nFieldOutput; // 0x218 -}; - -// Alignment: 3 -// Size: 0x60 -class CPulse_Chunk -{ -public: - CUtlLeanVector< PGDInstruction_t > m_Instructions; // 0x0 - CUtlLeanVector< CPulse_RegisterInfo > m_Registers; // 0x10 - CUtlLeanVector< PulseDocNodeID_t > m_InstructionEditorIDs; // 0x20 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b8 }; // Alignment: 0 -// Size: 0x210 +// Size: 0x1b0 class C_OP_SpinUpdate : public CSpinUpdateBase { public: @@ -25224,285 +21325,277 @@ public: }; // Alignment: 27 -// Size: 0x2910 +// Size: 0x2a80 class C_OP_RenderSprites : public CBaseRendererSource2 { public: // MPropertyStartGroup "Animation" // MPropertyFriendlyName "sequence id override" // MPropertySortPriority "500" - CParticleCollectionRendererFloatInput m_nSequenceOverride; // 0x2270 + CParticleCollectionRendererFloatInput m_nSequenceOverride; // 0x2390 // MPropertyStartGroup "Orientation" // MPropertyFriendlyName "orientation type" // MPropertySortPriority "750" - ParticleOrientationChoiceList_t m_nOrientationType; // 0x23b0 + ParticleOrientationChoiceList_t m_nOrientationType; // 0x24e0 // MPropertyFriendlyName "orientation control point" // MPropertySortPriority "750" // MPropertySuppressExpr "m_nOrientationType != PARTICLE_ORIENTATION_ALIGN_TO_PARTICLE_NORMAL && m_nOrientationType != PARTICLE_ORIENTATION_SCREENALIGN_TO_PARTICLE_NORMAL" - int32_t m_nOrientationControlPoint; // 0x23b4 + int32_t m_nOrientationControlPoint; // 0x24e4 // MPropertyFriendlyName "enable yaw for particles aligned to normals" // MPropertySortPriority "750" // MPropertySuppressExpr "m_nOrientationType != PARTICLE_ORIENTATION_ALIGN_TO_PARTICLE_NORMAL && m_nOrientationType != PARTICLE_ORIENTATION_SCREENALIGN_TO_PARTICLE_NORMAL" - bool m_bUseYawWithNormalAligned; // 0x23b8 + bool m_bUseYawWithNormalAligned; // 0x24e8 private: - [[maybe_unused]] uint8_t __pad23b9[0x3]; // 0x23b9 + [[maybe_unused]] uint8_t __pad24e9[0x3]; // 0x24e9 public: // MPropertyStartGroup "Fading and culling" // MPropertyFriendlyName "minimum visual screen size" // MPropertySortPriority "1000" - float m_flMinSize; // 0x23bc + float m_flMinSize; // 0x24ec // MPropertyFriendlyName "maximum visual screen size" // MPropertySortPriority "1000" - float m_flMaxSize; // 0x23c0 + float m_flMaxSize; // 0x24f0 // MPropertyFriendlyName "Factor to map size adjustment to alpha" // MPropertySortPriority "1000" - float m_flAlphaAdjustWithSizeAdjust; // 0x23c4 + float m_flAlphaAdjustWithSizeAdjust; // 0x24f4 // MPropertyFriendlyName "screen size to start fading" // MPropertySortPriority "1000" - CParticleCollectionRendererFloatInput m_flStartFadeSize; // 0x23c8 + CParticleCollectionRendererFloatInput m_flStartFadeSize; // 0x24f8 // MPropertyFriendlyName "screen size to fade away" // MPropertySortPriority "1000" - CParticleCollectionRendererFloatInput m_flEndFadeSize; // 0x2508 + CParticleCollectionRendererFloatInput m_flEndFadeSize; // 0x2648 // MPropertyFriendlyName "start fade dot product of normal vs view" // MPropertySortPriority "1000" - float m_flStartFadeDot; // 0x2648 + float m_flStartFadeDot; // 0x2798 // MPropertyFriendlyName "end fade dot product of normal vs view" // MPropertySortPriority "1000" - float m_flEndFadeDot; // 0x264c + float m_flEndFadeDot; // 0x279c // MPropertyStartGroup "Distance to alpha coding" // MPropertyFriendlyName "distance alpha" // MPropertySortPriority "0" - bool m_bDistanceAlpha; // 0x2650 + bool m_bDistanceAlpha; // 0x27a0 // MPropertyFriendlyName "use soft edges for distance alpha" // MPropertySortPriority "0" // MPropertySuppressExpr "!m_bDistanceAlpha" - bool m_bSoftEdges; // 0x2651 + bool m_bSoftEdges; // 0x27a1 private: - [[maybe_unused]] uint8_t __pad2652[0x2]; // 0x2652 + [[maybe_unused]] uint8_t __pad27a2[0x2]; // 0x27a2 public: // MPropertyFriendlyName "start value for soft edges for distance alpha" // MPropertySortPriority "0" // MPropertySuppressExpr "!m_bDistanceAlpha" - float m_flEdgeSoftnessStart; // 0x2654 + float m_flEdgeSoftnessStart; // 0x27a4 // MPropertyFriendlyName "end value for soft edges for distance alpha" // MPropertySortPriority "0" // MPropertySuppressExpr "!m_bDistanceAlpha" - float m_flEdgeSoftnessEnd; // 0x2658 + float m_flEdgeSoftnessEnd; // 0x27a8 // MPropertyStartGroup "Outlining" // MPropertyFriendlyName "enable particle outlining" // MPropertySortPriority "0" - bool m_bOutline; // 0x265c + bool m_bOutline; // 0x27ac // MPropertyFriendlyName "outline color" // MPropertySortPriority "0" // MPropertySuppressExpr "!m_bOutline" - Color m_OutlineColor; // 0x265d + Color m_OutlineColor; // 0x27ad private: - [[maybe_unused]] uint8_t __pad2661[0x3]; // 0x2661 + [[maybe_unused]] uint8_t __pad27b1[0x3]; // 0x27b1 public: // MPropertyFriendlyName "outline alpha" // MPropertyAttributeRange "0 255" // MPropertySortPriority "0" // MPropertySuppressExpr "!m_bOutline" - int32_t m_nOutlineAlpha; // 0x2664 + int32_t m_nOutlineAlpha; // 0x27b4 // MPropertyFriendlyName "outline start 0" // MPropertySortPriority "0" // MPropertySuppressExpr "!m_bOutline" - float m_flOutlineStart0; // 0x2668 + float m_flOutlineStart0; // 0x27b8 // MPropertyFriendlyName "outline start 1" // MPropertySortPriority "0" // MPropertySuppressExpr "!m_bOutline" - float m_flOutlineStart1; // 0x266c + float m_flOutlineStart1; // 0x27bc // MPropertyFriendlyName "outline end 0" // MPropertySortPriority "0" // MPropertySuppressExpr "!m_bOutline" - float m_flOutlineEnd0; // 0x2670 + float m_flOutlineEnd0; // 0x27c0 // MPropertyFriendlyName "outline end 1" // MPropertySortPriority "0" // MPropertySuppressExpr "!m_bOutline" - float m_flOutlineEnd1; // 0x2674 + float m_flOutlineEnd1; // 0x27c4 // MPropertyStartGroup "Lighting and Shadows" // MPropertyFriendlyName "lighting mode" // MPropertySortPriority "400" // MPropertySuppressExpr "mod != hlx" - ParticleLightingQuality_t m_nLightingMode; // 0x2678 + ParticleLightingQuality_t m_nLightingMode; // 0x27c8 private: - [[maybe_unused]] uint8_t __pad267c[0x4]; // 0x267c + [[maybe_unused]] uint8_t __pad27cc[0x4]; // 0x27cc public: // MPropertyFriendlyName "vertex lighting tessellation (0-5)" // MPropertyAttributeRange "0 5" // MPropertySortPriority "400" // MPropertySuppressExpr "mod != hlx || m_nLightingMode != PARTICLE_LIGHTING_PER_VERTEX" - CParticleCollectionRendererFloatInput m_flLightingTessellation; // 0x2680 + CParticleCollectionRendererFloatInput m_flLightingTessellation; // 0x27d0 // MPropertyFriendlyName "lighting directionality" // MPropertySortPriority "400" // MPropertySuppressExpr "mod != hlx" - CParticleCollectionRendererFloatInput m_flLightingDirectionality; // 0x27c0 + CParticleCollectionRendererFloatInput m_flLightingDirectionality; // 0x2920 // MPropertyFriendlyName "Particle Shadows" // MPropertySortPriority "400" - bool m_bParticleShadows; // 0x2900 + bool m_bParticleShadows; // 0x2a70 private: - [[maybe_unused]] uint8_t __pad2901[0x3]; // 0x2901 + [[maybe_unused]] uint8_t __pad2a71[0x3]; // 0x2a71 public: // MPropertyFriendlyName "Shadow Density" // MPropertySortPriority "400" // MPropertySuppressExpr "!m_bParticleShadows" - float m_flShadowDensity; // 0x2904 + float m_flShadowDensity; // 0x2a74 }; // Alignment: 5 -// Size: 0x820 +// Size: 0x810 class C_OP_RemapExternalWindToCP : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "control point to sample wind" - int32_t m_nCP; // 0x220 + int32_t m_nCP; // 0x1c0 // MPropertyFriendlyName "output control point" - int32_t m_nCPOutput; // 0x224 + int32_t m_nCPOutput; // 0x1c4 // MPropertyFriendlyName "wind scale" - CParticleCollectionVecInput m_vecScale; // 0x228 + CParticleCollectionVecInput m_vecScale; // 0x1c8 // MPropertyFriendlyName "set magnitude instead of vector" - bool m_bSetMagnitude; // 0x810 + bool m_bSetMagnitude; // 0x800 private: - [[maybe_unused]] uint8_t __pad0811[0x3]; // 0x811 + [[maybe_unused]] uint8_t __pad0801[0x3]; // 0x801 public: // MPropertyFriendlyName "magnitude output component" // MPropertyAttributeChoiceName "vector_component" // MPropertySuppressExpr "!m_bSetMagnitude" - int32_t m_nOutVectorField; // 0x814 + int32_t m_nOutVectorField; // 0x804 }; // Alignment: 11 -// Size: 0x250 +// Size: 0x1f0 class C_OP_TeleportBeam : public CParticleFunctionOperator { public: // MPropertyFriendlyName "Position Control Point" - int32_t m_nCPPosition; // 0x210 + int32_t m_nCPPosition; // 0x1b0 // MPropertyFriendlyName "Velocity Control Point" - int32_t m_nCPVelocity; // 0x214 + int32_t m_nCPVelocity; // 0x1b4 // MPropertyFriendlyName "Misc Control Point" - int32_t m_nCPMisc; // 0x218 + int32_t m_nCPMisc; // 0x1b8 // MPropertyFriendlyName "Color Control Point" - int32_t m_nCPColor; // 0x21c + int32_t m_nCPColor; // 0x1bc // MPropertyFriendlyName "Invalid Color Control Point" - int32_t m_nCPInvalidColor; // 0x220 + int32_t m_nCPInvalidColor; // 0x1c0 // MPropertyFriendlyName "Extra Arc Data Point" - int32_t m_nCPExtraArcData; // 0x224 + int32_t m_nCPExtraArcData; // 0x1c4 // MPropertyFriendlyName "Gravity" - Vector m_vGravity; // 0x228 + Vector m_vGravity; // 0x1c8 // MPropertyFriendlyName "Arc Duration Maximum" - float m_flArcMaxDuration; // 0x234 + float m_flArcMaxDuration; // 0x1d4 // MPropertyFriendlyName "Segment Break" - float m_flSegmentBreak; // 0x238 + float m_flSegmentBreak; // 0x1d8 // MPropertyFriendlyName "Arc Speed" - float m_flArcSpeed; // 0x23c + float m_flArcSpeed; // 0x1dc // MPropertyFriendlyName "Alpha" - float m_flAlpha; // 0x240 + float m_flAlpha; // 0x1e0 }; // Alignment: 4 -// Size: 0x230 +// Size: 0x1d0 class C_OP_TwistAroundAxis : public CParticleFunctionForce { public: // MPropertyFriendlyName "amount of force" - float m_fForceAmount; // 0x210 + float m_fForceAmount; // 0x1b0 // MPropertyFriendlyName "twist axis" // MVectorIsCoordinate - Vector m_TwistAxis; // 0x214 + Vector m_TwistAxis; // 0x1b4 // MPropertyFriendlyName "object local space axis 0/1" - bool m_bLocalSpace; // 0x220 + bool m_bLocalSpace; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0221[0x3]; // 0x221 + [[maybe_unused]] uint8_t __pad01c1[0x3]; // 0x1c1 public: // MPropertyFriendlyName "control point" - int32_t m_nControlPointNumber; // 0x224 + int32_t m_nControlPointNumber; // 0x1c4 }; // Alignment: 7 -// Size: 0x890 +// Size: 0x880 class C_OP_ModelDampenMovement : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x210 + int32_t m_nControlPointNumber; // 0x1b0 // MPropertyFriendlyName "use only bounding box" - bool m_bBoundBox; // 0x214 + bool m_bBoundBox; // 0x1b4 // MPropertyFriendlyName "dampen outside instead of inside" - bool m_bOutside; // 0x215 + bool m_bOutside; // 0x1b5 // MPropertyFriendlyName "use bones instead of hitboxes" - bool m_bUseBones; // 0x216 + bool m_bUseBones; // 0x1b6 // MPropertyFriendlyName "hitbox set" - char m_HitboxSetName[128]; // 0x217 + char m_HitboxSetName[128]; // 0x1b7 private: - [[maybe_unused]] uint8_t __pad0297[0x1]; // 0x297 + [[maybe_unused]] uint8_t __pad0237[0x1]; // 0x237 public: // MPropertyFriendlyName "test position offset" // MVectorIsCoordinate - CPerParticleVecInput m_vecPosOffset; // 0x298 + CPerParticleVecInput m_vecPosOffset; // 0x238 // MPropertyFriendlyName "drag" // MPropertyAttributeRange "-1 1" - float m_fDrag; // 0x880 + float m_fDrag; // 0x870 }; // Alignment: 7 -// Size: 0x1090 +// Size: 0x10f0 class C_INIT_VelocityRandom : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x220 + int32_t m_nControlPointNumber; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0224[0x4]; // 0x224 + [[maybe_unused]] uint8_t __pad01c4[0x4]; // 0x1c4 public: // MPropertyFriendlyName "random speed min" - CPerParticleFloatInput m_fSpeedMin; // 0x228 + CPerParticleFloatInput m_fSpeedMin; // 0x1c8 // MPropertyFriendlyName "random speed max" - CPerParticleFloatInput m_fSpeedMax; // 0x368 + CPerParticleFloatInput m_fSpeedMax; // 0x318 // MPropertyFriendlyName "speed in local coordinate system min" // MVectorIsCoordinate - CPerParticleVecInput m_LocalCoordinateSystemSpeedMin; // 0x4a8 + CPerParticleVecInput m_LocalCoordinateSystemSpeedMin; // 0x468 // MPropertyFriendlyName "speed in local coordinate system max" // MVectorIsCoordinate - CPerParticleVecInput m_LocalCoordinateSystemSpeedMax; // 0xa90 + CPerParticleVecInput m_LocalCoordinateSystemSpeedMax; // 0xaa0 // MPropertyFriendlyName "Ignore delta time (RenderTrails)" - bool m_bIgnoreDT; // 0x1078 + bool m_bIgnoreDT; // 0x10d8 private: - [[maybe_unused]] uint8_t __pad1079[0x3]; // 0x1079 + [[maybe_unused]] uint8_t __pad10d9[0x3]; // 0x10d9 public: // MPropertyFriendlyName "Random number generator controls" - CRandomNumberGeneratorParameters m_randomnessParameters; // 0x107c + CRandomNumberGeneratorParameters m_randomnessParameters; // 0x10dc }; // Alignment: 4 -// Size: 0x230 +// Size: 0x1d0 class C_OP_PlaneCull : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point for point on plane" - int32_t m_nPlaneControlPoint; // 0x210 + int32_t m_nPlaneControlPoint; // 0x1b0 // MPropertyFriendlyName "plane normal" // MVectorIsCoordinate - Vector m_vecPlaneDirection; // 0x214 + Vector m_vecPlaneDirection; // 0x1b4 // MPropertyFriendlyName "use local space" - bool m_bLocalSpace; // 0x220 + bool m_bLocalSpace; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0221[0x3]; // 0x221 + [[maybe_unused]] uint8_t __pad01c1[0x3]; // 0x1c1 public: // MPropertyFriendlyName "cull plane offset" - float m_flPlaneOffset; // 0x224 -}; - -// Alignment: 1 -// Size: 0x4 -struct PulseRuntimeEntrypointIndex_t -{ -public: - int32_t m_Value; // 0x0 + float m_flPlaneOffset; // 0x1c4 }; // Alignment: 0 -// Size: 0x250 +// Size: 0x1f0 class C_INIT_RandomNamedModelSequence : public C_INIT_RandomNamedModelElement { public: @@ -25510,63 +21603,31 @@ public: }; // Alignment: 8 -// Size: 0x230 +// Size: 0x1d0 class C_OP_RemapScalarOnceTimed : public CParticleFunctionOperator { public: // MPropertyFriendlyName "remap time proportional" - bool m_bProportional; // 0x210 + bool m_bProportional; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0211[0x3]; // 0x211 + [[maybe_unused]] uint8_t __pad01b1[0x3]; // 0x1b1 public: // MPropertyFriendlyName "input field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldInput; // 0x214 + ParticleAttributeIndex_t m_nFieldInput; // 0x1b4 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x218 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b8 // MPropertyFriendlyName "input minimum" - float m_flInputMin; // 0x21c + float m_flInputMin; // 0x1bc // MPropertyFriendlyName "input maximum" - float m_flInputMax; // 0x220 + float m_flInputMax; // 0x1c0 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x224 + float m_flOutputMin; // 0x1c4 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x228 + float m_flOutputMax; // 0x1c8 // MPropertyFriendlyName "remap time" - float m_flRemapTime; // 0x22c -}; - -// Alignment: 16 -// Size: 0x68 -struct PGDInstruction_t -{ -public: - PulseInstructionCode_t m_nCode; // 0x0 - PulseRuntimeVarIndex_t m_nVar; // 0x4 - PulseRuntimeRegisterIndex_t m_nReg0; // 0x8 - PulseRuntimeRegisterIndex_t m_nReg1; // 0xa - PulseRuntimeRegisterIndex_t m_nReg2; // 0xc -private: - [[maybe_unused]] uint8_t __pad000e[0x2]; // 0xe -public: - PulseRuntimeInvokeIndex_t m_nInvokeBindingIndex; // 0x10 - PulseRuntimeChunkIndex_t m_nChunk; // 0x14 - int32_t m_nDestInstruction; // 0x18 - PulseRuntimeLandingPadIndex_t m_nLandingPadIndex; // 0x1c - CUtlSymbolLarge m_Arg0Name; // 0x20 - CUtlSymbolLarge m_Arg1Name; // 0x28 - bool m_bLiteralBool; // 0x30 -private: - [[maybe_unused]] uint8_t __pad0031[0x3]; // 0x31 -public: - int32_t m_nLiteralInt; // 0x34 - float m_flLiteralFloat; // 0x38 -private: - [[maybe_unused]] uint8_t __pad003c[0x4]; // 0x3c -public: - CBufferString m_LiteralString; // 0x40 - Vector m_vLiteralVec3; // 0x50 + float m_flRemapTime; // 0x1cc }; // Alignment: 5 @@ -25590,160 +21651,160 @@ public: }; // Alignment: 10 -// Size: 0x1810 +// Size: 0x18e0 class C_INIT_InitialVelocityNoise : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "absolute value" // MVectorIsCoordinate - Vector m_vecAbsVal; // 0x220 + Vector m_vecAbsVal; // 0x1c0 // MPropertyFriendlyName "invert abs value" // MVectorIsCoordinate - Vector m_vecAbsValInv; // 0x22c + Vector m_vecAbsValInv; // 0x1cc // MPropertyFriendlyName "spatial coordinate offset" // MVectorIsCoordinate - CPerParticleVecInput m_vecOffsetLoc; // 0x238 + CPerParticleVecInput m_vecOffsetLoc; // 0x1d8 // MPropertyFriendlyName "time coordinate offset" - CPerParticleFloatInput m_flOffset; // 0x820 + CPerParticleFloatInput m_flOffset; // 0x810 // MPropertyFriendlyName "output minimum" CPerParticleVecInput m_vecOutputMin; // 0x960 // MPropertyFriendlyName "output maximum" - CPerParticleVecInput m_vecOutputMax; // 0xf48 + CPerParticleVecInput m_vecOutputMax; // 0xf98 // MPropertyFriendlyName "time noise coordinate scale" - CPerParticleFloatInput m_flNoiseScale; // 0x1530 + CPerParticleFloatInput m_flNoiseScale; // 0x15d0 // MPropertyFriendlyName "spatial noise coordinate scale" - CPerParticleFloatInput m_flNoiseScaleLoc; // 0x1670 + CPerParticleFloatInput m_flNoiseScaleLoc; // 0x1720 // MPropertyFriendlyName "input local space velocity (optional)" - // MParticleTransformInputOptional - CParticleTransformInput m_TransformInput; // 0x17b0 + // MParticleInputOptional + CParticleTransformInput m_TransformInput; // 0x1870 // MPropertyFriendlyName "ignore delta time" - bool m_bIgnoreDt; // 0x1800 + bool m_bIgnoreDt; // 0x18d8 }; // Alignment: 4 -// Size: 0x250 +// Size: 0x1f0 class C_INIT_RandomVector : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "min" // MVectorIsSometimesCoordinate - Vector m_vecMin; // 0x220 + Vector m_vecMin; // 0x1c0 // MPropertyFriendlyName "max" // MVectorIsSometimesCoordinate - Vector m_vecMax; // 0x22c + Vector m_vecMax; // 0x1cc // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x238 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1d8 // MPropertyFriendlyName "Random number generator controls" - CRandomNumberGeneratorParameters m_randomnessParameters; // 0x23c + CRandomNumberGeneratorParameters m_randomnessParameters; // 0x1dc }; // Alignment: 5 -// Size: 0x4b0 +// Size: 0x470 class C_OP_ConstrainDistance : public CParticleFunctionConstraint { public: // MPropertyFriendlyName "minimum distance" - CParticleCollectionFloatInput m_fMinDistance; // 0x210 + CParticleCollectionFloatInput m_fMinDistance; // 0x1b0 // MPropertyFriendlyName "maximum distance" - CParticleCollectionFloatInput m_fMaxDistance; // 0x350 + CParticleCollectionFloatInput m_fMaxDistance; // 0x300 // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x490 + int32_t m_nControlPointNumber; // 0x450 // MPropertyFriendlyName "offset of center" // MVectorIsCoordinate - Vector m_CenterOffset; // 0x494 + Vector m_CenterOffset; // 0x454 // MPropertyFriendlyName "global center point" - bool m_bGlobalCenter; // 0x4a0 + bool m_bGlobalCenter; // 0x460 }; // Alignment: 8 -// Size: 0x2d0 +// Size: 0x270 class C_INIT_RtEnvCull : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "test direction" // MVectorIsCoordinate - Vector m_vecTestDir; // 0x220 + Vector m_vecTestDir; // 0x1c0 // MPropertyFriendlyName "cull normal" // MVectorIsCoordinate - Vector m_vecTestNormal; // 0x22c + Vector m_vecTestNormal; // 0x1cc // MPropertyFriendlyName "use velocity for test direction" - bool m_bUseVelocity; // 0x238 + bool m_bUseVelocity; // 0x1d8 // MPropertyFriendlyName "cull on miss" - bool m_bCullOnMiss; // 0x239 + bool m_bCullOnMiss; // 0x1d9 // MPropertyFriendlyName "velocity test adjust lifespan" - bool m_bLifeAdjust; // 0x23a + bool m_bLifeAdjust; // 0x1da // MPropertyFriendlyName "ray trace environment name" - char m_RtEnvName[128]; // 0x23b + char m_RtEnvName[128]; // 0x1db private: - [[maybe_unused]] uint8_t __pad02bb[0x1]; // 0x2bb + [[maybe_unused]] uint8_t __pad025b[0x1]; // 0x25b public: // MPropertyFriendlyName "ray trace environment cp" - int32_t m_nRTEnvCP; // 0x2bc + int32_t m_nRTEnvCP; // 0x25c // MPropertyFriendlyName "rt env control point component" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nComponent; // 0x2c0 + int32_t m_nComponent; // 0x260 }; // Alignment: 18 -// Size: 0x280 +// Size: 0x220 class C_INIT_StatusEffect : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "D_DETAIL_2" - Detail2Combo_t m_nDetail2Combo; // 0x220 + Detail2Combo_t m_nDetail2Combo; // 0x1c0 // MPropertyFriendlyName "$DETAIL2ROTATION" - float m_flDetail2Rotation; // 0x224 + float m_flDetail2Rotation; // 0x1c4 // MPropertyFriendlyName "$DETAIL2SCALE" - float m_flDetail2Scale; // 0x228 + float m_flDetail2Scale; // 0x1c8 // MPropertyFriendlyName "$DETAIL2BLENDFACTOR" - float m_flDetail2BlendFactor; // 0x22c + float m_flDetail2BlendFactor; // 0x1cc // MPropertyFriendlyName "$COLORWARPINTENSITY" - float m_flColorWarpIntensity; // 0x230 + float m_flColorWarpIntensity; // 0x1d0 // MPropertyFriendlyName "$DIFFUSEWARPBLENDTOFULL" - float m_flDiffuseWarpBlendToFull; // 0x234 + float m_flDiffuseWarpBlendToFull; // 0x1d4 // MPropertyFriendlyName "$ENVMAPINTENSITY" - float m_flEnvMapIntensity; // 0x238 + float m_flEnvMapIntensity; // 0x1d8 // MPropertyFriendlyName "$AMBIENTSCALE" - float m_flAmbientScale; // 0x23c + float m_flAmbientScale; // 0x1dc // MPropertyFriendlyName "$SPECULARCOLOR" - Color m_specularColor; // 0x240 + Color m_specularColor; // 0x1e0 // MPropertyFriendlyName "$SPECULARSCALE" - float m_flSpecularScale; // 0x244 + float m_flSpecularScale; // 0x1e4 // MPropertyFriendlyName "$SPECULAREXPONENT" - float m_flSpecularExponent; // 0x248 + float m_flSpecularExponent; // 0x1e8 // MPropertyFriendlyName "$SPECULAREXPONENTBLENDTOFULL" - float m_flSpecularExponentBlendToFull; // 0x24c + float m_flSpecularExponentBlendToFull; // 0x1ec // MPropertyFriendlyName "$SPECULARBLENDTOFULL" - float m_flSpecularBlendToFull; // 0x250 + float m_flSpecularBlendToFull; // 0x1f0 // MPropertyFriendlyName "$RIMLIGHTCOLOR" - Color m_rimLightColor; // 0x254 + Color m_rimLightColor; // 0x1f4 // MPropertyFriendlyName "$RIMLIGHTSCALE" - float m_flRimLightScale; // 0x258 + float m_flRimLightScale; // 0x1f8 // MPropertyFriendlyName "$REFLECTIONSTINTBYBASEBLENDTONONE" - float m_flReflectionsTintByBaseBlendToNone; // 0x25c + float m_flReflectionsTintByBaseBlendToNone; // 0x1fc // MPropertyFriendlyName "$METALNESSBLENDTOFULL" - float m_flMetalnessBlendToFull; // 0x260 + float m_flMetalnessBlendToFull; // 0x200 // MPropertyFriendlyName "$SELFILLUMBLENDTOFULL" - float m_flSelfIllumBlendToFull; // 0x264 + float m_flSelfIllumBlendToFull; // 0x204 }; // Alignment: 5 -// Size: 0x250 +// Size: 0x1f0 class C_OP_OscillateScalarSimple : public CParticleFunctionOperator { public: // MPropertyFriendlyName "oscillation rate" - float m_Rate; // 0x210 + float m_Rate; // 0x1b0 // MPropertyFriendlyName "oscillation frequency" - float m_Frequency; // 0x214 + float m_Frequency; // 0x1b4 // MPropertyFriendlyName "oscillation field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nField; // 0x218 + ParticleAttributeIndex_t m_nField; // 0x1b8 // MPropertyFriendlyName "oscillation multiplier" - float m_flOscMult; // 0x21c + float m_flOscMult; // 0x1bc // MPropertyFriendlyName "oscillation start phase" - float m_flOscAdd; // 0x220 + float m_flOscAdd; // 0x1c0 }; // Alignment: 2 @@ -25756,556 +21817,372 @@ public: }; // Alignment: 2 -// Size: 0x360 +// Size: 0x310 class C_OP_PointVectorAtNextParticle : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "Interpolation" - CPerParticleFloatInput m_flInterpolation; // 0x218 + CPerParticleFloatInput m_flInterpolation; // 0x1b8 }; // Alignment: 4 -// Size: 0x220 +// Size: 0x1c0 class C_OP_RemapCPVelocityToVector : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point" - int32_t m_nControlPoint; // 0x210 + int32_t m_nControlPoint; // 0x1b0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 // MPropertyFriendlyName "scale factor" - float m_flScale; // 0x218 + float m_flScale; // 0x1b8 // MPropertyFriendlyName "normalize" - bool m_bNormalize; // 0x21c -}; - -// Alignment: 0 -// Size: 0x48 -class CPulseCell_Step_TestDomainDestroyFakeEntity : public CPulseCell_BaseFlow -{ -public: - // No members available + bool m_bNormalize; // 0x1bc }; // Alignment: 7 -// Size: 0x230 +// Size: 0x1d0 class C_OP_SetControlPointsToParticle : public CParticleFunctionOperator { public: // MPropertyFriendlyName "group ID to affect" - int32_t m_nChildGroupID; // 0x210 + int32_t m_nChildGroupID; // 0x1b0 // MPropertyFriendlyName "first control point to set" - int32_t m_nFirstControlPoint; // 0x214 + int32_t m_nFirstControlPoint; // 0x1b4 // MPropertyFriendlyName "# of control points to set" - int32_t m_nNumControlPoints; // 0x218 + int32_t m_nNumControlPoints; // 0x1b8 // MPropertyFriendlyName "first particle to copy" - int32_t m_nFirstSourcePoint; // 0x21c + int32_t m_nFirstSourcePoint; // 0x1bc // MPropertyFriendlyName "set orientation" - bool m_bSetOrientation; // 0x220 + bool m_bSetOrientation; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0221[0x3]; // 0x221 + [[maybe_unused]] uint8_t __pad01c1[0x3]; // 0x1c1 public: // MPropertyFriendlyName "orientation style" - ParticleOrientationSetMode_t m_nOrientationMode; // 0x224 + ParticleOrientationSetMode_t m_nOrientationMode; // 0x1c4 // MPropertyFriendlyName "set parent" - ParticleParentSetMode_t m_nSetParent; // 0x228 + ParticleParentSetMode_t m_nSetParent; // 0x1c8 }; // Alignment: 10 -// Size: 0x290 +// Size: 0x230 class C_OP_RenderTreeShake : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "peak strength" - float m_flPeakStrength; // 0x260 + float m_flPeakStrength; // 0x200 // MPropertyFriendlyName "peak strength field override" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nPeakStrengthFieldOverride; // 0x264 + ParticleAttributeIndex_t m_nPeakStrengthFieldOverride; // 0x204 // MPropertyFriendlyName "radius" - float m_flRadius; // 0x268 + float m_flRadius; // 0x208 // MPropertyFriendlyName "strength field override" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nRadiusFieldOverride; // 0x26c + ParticleAttributeIndex_t m_nRadiusFieldOverride; // 0x20c // MPropertyFriendlyName "shake duration after end" - float m_flShakeDuration; // 0x270 + float m_flShakeDuration; // 0x210 // MPropertyFriendlyName "amount of time taken to smooth between different shake parameters" - float m_flTransitionTime; // 0x274 + float m_flTransitionTime; // 0x214 // MPropertyFriendlyName "Twist amount (-1..1)" - float m_flTwistAmount; // 0x278 + float m_flTwistAmount; // 0x218 // MPropertyFriendlyName "Radial Amount (-1..1)" - float m_flRadialAmount; // 0x27c + float m_flRadialAmount; // 0x21c // MPropertyFriendlyName "Control Point Orientation Amount (-1..1)" - float m_flControlPointOrientationAmount; // 0x280 + float m_flControlPointOrientationAmount; // 0x220 // MPropertyFriendlyName "Control Point for Orientation Amount" - int32_t m_nControlPointForLinearDirection; // 0x284 + int32_t m_nControlPointForLinearDirection; // 0x224 }; // Alignment: 12 -// Size: 0x390 +// Size: 0x330 class C_OP_RenderSound : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "duration scale" - float m_flDurationScale; // 0x260 + float m_flDurationScale; // 0x200 // MPropertyFriendlyName "decibel level scale" - float m_flSndLvlScale; // 0x264 + float m_flSndLvlScale; // 0x204 // MPropertyFriendlyName "pitch scale" - float m_flPitchScale; // 0x268 + float m_flPitchScale; // 0x208 // MPropertyFriendlyName "volume scale" - float m_flVolumeScale; // 0x26c + float m_flVolumeScale; // 0x20c // MPropertyFriendlyName "decibel level field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nSndLvlField; // 0x270 + ParticleAttributeIndex_t m_nSndLvlField; // 0x210 // MPropertyFriendlyName "duration field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nDurationField; // 0x274 + ParticleAttributeIndex_t m_nDurationField; // 0x214 // MPropertyFriendlyName "pitch field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nPitchField; // 0x278 + ParticleAttributeIndex_t m_nPitchField; // 0x218 // MPropertyFriendlyName "volume field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nVolumeField; // 0x27c + ParticleAttributeIndex_t m_nVolumeField; // 0x21c // MPropertyFriendlyName "sound channel" // MPropertyAttributeChoiceName "sound_channel" - int32_t m_nChannel; // 0x280 + int32_t m_nChannel; // 0x220 // MPropertyFriendlyName "sound control point number" - int32_t m_nCPReference; // 0x284 + int32_t m_nCPReference; // 0x224 // MPropertyFriendlyName "sound" // MPropertyAttributeEditor "SoundPicker()" - char m_pszSoundName[256]; // 0x288 + char m_pszSoundName[256]; // 0x228 // MPropertyFriendlyName "suppress stop event" - bool m_bSuppressStopSoundEvent; // 0x388 + bool m_bSuppressStopSoundEvent; // 0x328 }; // Alignment: 19 -// Size: 0x270 +// Size: 0x210 class C_INIT_StatusEffectCitadel : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "$SFXColorWarpAmount" - float m_flSFXColorWarpAmount; // 0x220 + float m_flSFXColorWarpAmount; // 0x1c0 // MPropertyFriendlyName "$SFXNormalAmount" - float m_flSFXNormalAmount; // 0x224 + float m_flSFXNormalAmount; // 0x1c4 // MPropertyFriendlyName "$SFXMetalnessAmount" - float m_flSFXMetalnessAmount; // 0x228 + float m_flSFXMetalnessAmount; // 0x1c8 // MPropertyFriendlyName "$SFXRoughnessAmount" - float m_flSFXRoughnessAmount; // 0x22c + float m_flSFXRoughnessAmount; // 0x1cc // MPropertyFriendlyName "$SFXSelfIllumAmount" - float m_flSFXSelfIllumAmount; // 0x230 + float m_flSFXSelfIllumAmount; // 0x1d0 // MPropertyFriendlyName "$SFXTextureScale" - float m_flSFXSScale; // 0x234 + float m_flSFXSScale; // 0x1d4 // MPropertyFriendlyName "$SFXTextureScrollX" - float m_flSFXSScrollX; // 0x238 + float m_flSFXSScrollX; // 0x1d8 // MPropertyFriendlyName "$SFXTextureScrollY" - float m_flSFXSScrollY; // 0x23c + float m_flSFXSScrollY; // 0x1dc // MPropertyFriendlyName "$SFXTextureScrollZ" - float m_flSFXSScrollZ; // 0x240 + float m_flSFXSScrollZ; // 0x1e0 // MPropertyFriendlyName "$SFXTextureOffsetX" - float m_flSFXSOffsetX; // 0x244 + float m_flSFXSOffsetX; // 0x1e4 // MPropertyFriendlyName "$SFXTextureOffsetY" - float m_flSFXSOffsetY; // 0x248 + float m_flSFXSOffsetY; // 0x1e8 // MPropertyFriendlyName "$SFXTextureOffsetZ" - float m_flSFXSOffsetZ; // 0x24c + float m_flSFXSOffsetZ; // 0x1ec // MPropertyFriendlyName "D_DETAIL" - DetailCombo_t m_nDetailCombo; // 0x250 + DetailCombo_t m_nDetailCombo; // 0x1f0 // MPropertyFriendlyName "$SFXDetailAmount" - float m_flSFXSDetailAmount; // 0x254 + float m_flSFXSDetailAmount; // 0x1f4 // MPropertyFriendlyName "$SFXDetailTextureScale" - float m_flSFXSDetailScale; // 0x258 + float m_flSFXSDetailScale; // 0x1f8 // MPropertyFriendlyName "$SFXDetailTextureScrollX" - float m_flSFXSDetailScrollX; // 0x25c + float m_flSFXSDetailScrollX; // 0x1fc // MPropertyFriendlyName "$SFXDetailTextureScrollY" - float m_flSFXSDetailScrollY; // 0x260 + float m_flSFXSDetailScrollY; // 0x200 // MPropertyFriendlyName "$SFXDetailTextureScrollZ" - float m_flSFXSDetailScrollZ; // 0x264 + float m_flSFXSDetailScrollZ; // 0x204 // MPropertyFriendlyName "$SFXUseModelUVs" - float m_flSFXSUseModelUVs; // 0x268 -}; - -// Alignment: 0 -// Size: 0x48 -class CPulseCell_Val_TestDomainFindEntityByName : public CPulseCell_BaseValue -{ -public: - // No members available + float m_flSFXSUseModelUVs; // 0x208 }; // Alignment: 30 -// Size: 0x26a0 +// Size: 0x27f0 class C_OP_RenderRopes : public CBaseRendererSource2 { public: // MPropertyStartGroup "Screenspace Fading and culling" // MPropertyFriendlyName "enable fading and clamping" // MPropertySortPriority "1000" - bool m_bEnableFadingAndClamping; // 0x2270 + bool m_bEnableFadingAndClamping; // 0x2390 private: - [[maybe_unused]] uint8_t __pad2271[0x3]; // 0x2271 + [[maybe_unused]] uint8_t __pad2391[0x3]; // 0x2391 public: // MPropertyFriendlyName "minimum visual screen-size" // MPropertySuppressExpr "!m_bEnableFadingAndClamping" - float m_flMinSize; // 0x2274 + float m_flMinSize; // 0x2394 // MPropertyFriendlyName "maximum visual screen-size" // MPropertySuppressExpr "!m_bEnableFadingAndClamping" - float m_flMaxSize; // 0x2278 + float m_flMaxSize; // 0x2398 // MPropertyFriendlyName "start fade screen-size" // MPropertySuppressExpr "!m_bEnableFadingAndClamping" - float m_flStartFadeSize; // 0x227c + float m_flStartFadeSize; // 0x239c // MPropertyFriendlyName "end fade and cull screen-size" // MPropertySuppressExpr "!m_bEnableFadingAndClamping" - float m_flEndFadeSize; // 0x2280 + float m_flEndFadeSize; // 0x23a0 // MPropertyFriendlyName "start fade dot product of normal vs view" // MPropertySortPriority "1000" - float m_flStartFadeDot; // 0x2284 + float m_flStartFadeDot; // 0x23a4 // MPropertyFriendlyName "end fade dot product of normal vs view" // MPropertySortPriority "1000" - float m_flEndFadeDot; // 0x2288 + float m_flEndFadeDot; // 0x23a8 // MPropertyStartGroup "Rope Tesselation" // MPropertyFriendlyName "amount to taper the width of the trail end by" - float m_flRadiusTaper; // 0x228c + float m_flRadiusTaper; // 0x23ac // MPropertyFriendlyName "minium number of quads per render segment" // MPropertySortPriority "850" - int32_t m_nMinTesselation; // 0x2290 + int32_t m_nMinTesselation; // 0x23b0 // MPropertyFriendlyName "maximum number of quads per render segment" - int32_t m_nMaxTesselation; // 0x2294 + int32_t m_nMaxTesselation; // 0x23b4 // MPropertyFriendlyName "tesselation resolution scale factor" - float m_flTessScale; // 0x2298 + float m_flTessScale; // 0x23b8 private: - [[maybe_unused]] uint8_t __pad229c[0x4]; // 0x229c + [[maybe_unused]] uint8_t __pad23bc[0x4]; // 0x23bc public: // MPropertyStartGroup "+Rope Global UV Controls" // MPropertyFriendlyName "global texture V World Size" // MPropertySortPriority "800" - CParticleCollectionRendererFloatInput m_flTextureVWorldSize; // 0x22a0 + CParticleCollectionRendererFloatInput m_flTextureVWorldSize; // 0x23c0 // MPropertyFriendlyName "global texture V Scroll Rate" - CParticleCollectionRendererFloatInput m_flTextureVScrollRate; // 0x23e0 + CParticleCollectionRendererFloatInput m_flTextureVScrollRate; // 0x2510 // MPropertyFriendlyName "global texture V Offset" - CParticleCollectionRendererFloatInput m_flTextureVOffset; // 0x2520 + CParticleCollectionRendererFloatInput m_flTextureVOffset; // 0x2660 // MPropertyFriendlyName "global texture V Params CP" - int32_t m_nTextureVParamsCP; // 0x2660 + int32_t m_nTextureVParamsCP; // 0x27b0 // MPropertyFriendlyName "Clamp Non-Sheet texture V coords" - bool m_bClampV; // 0x2664 + bool m_bClampV; // 0x27b4 private: - [[maybe_unused]] uint8_t __pad2665[0x3]; // 0x2665 + [[maybe_unused]] uint8_t __pad27b5[0x3]; // 0x27b5 public: // MPropertyStartGroup "Rope Global UV Controls/CP Scaling" // MPropertyFriendlyName "scale CP start" - int32_t m_nScaleCP1; // 0x2668 + int32_t m_nScaleCP1; // 0x27b8 // MPropertyFriendlyName "scale CP end" - int32_t m_nScaleCP2; // 0x266c + int32_t m_nScaleCP2; // 0x27bc // MPropertyFriendlyName "scale V world size by CP distance" - float m_flScaleVSizeByControlPointDistance; // 0x2670 + float m_flScaleVSizeByControlPointDistance; // 0x27c0 // MPropertyFriendlyName "scale V scroll rate by CP distance" - float m_flScaleVScrollByControlPointDistance; // 0x2674 + float m_flScaleVScrollByControlPointDistance; // 0x27c4 // MPropertyFriendlyName "scale V offset by CP distance" - float m_flScaleVOffsetByControlPointDistance; // 0x2678 + float m_flScaleVOffsetByControlPointDistance; // 0x27c8 private: - [[maybe_unused]] uint8_t __pad267c[0x1]; // 0x267c + [[maybe_unused]] uint8_t __pad27cc[0x1]; // 0x27cc public: // MPropertyStartGroup "Rope Global UV Controls" // MPropertyFriendlyName "Use scalar attribute for texture coordinate" - bool m_bUseScalarForTextureCoordinate; // 0x267d + bool m_bUseScalarForTextureCoordinate; // 0x27cd private: - [[maybe_unused]] uint8_t __pad267e[0x2]; // 0x267e + [[maybe_unused]] uint8_t __pad27ce[0x2]; // 0x27ce public: // MPropertyFriendlyName "scalar to use for texture coordinate" // MPropertyAttributeChoiceName "particlefield_scalar" // MPropertySuppressExpr "!m_bUseScalarForTextureCoordinate" - ParticleAttributeIndex_t m_nScalarFieldForTextureCoordinate; // 0x2680 + ParticleAttributeIndex_t m_nScalarFieldForTextureCoordinate; // 0x27d0 // MPropertyFriendlyName "scale value to map attribute to texture coordinate" // MPropertySuppressExpr "!m_bUseScalarForTextureCoordinate" - float m_flScalarAttributeTextureCoordScale; // 0x2684 + float m_flScalarAttributeTextureCoordScale; // 0x27d4 // MPropertyStartGroup "Rope Order Controls" // MPropertyFriendlyName "reverse point order" // MPropertySortPriority "800" - bool m_bReverseOrder; // 0x2688 + bool m_bReverseOrder; // 0x27d8 // MPropertyFriendlyName "Closed loop" - bool m_bClosedLoop; // 0x2689 + bool m_bClosedLoop; // 0x27d9 private: - [[maybe_unused]] uint8_t __pad268a[0x2]; // 0x268a + [[maybe_unused]] uint8_t __pad27da[0x2]; // 0x27da public: // MPropertyStartGroup "Orientation" // MPropertyFriendlyName "orientation_type" // MPropertySortPriority "750" - ParticleOrientationChoiceList_t m_nOrientationType; // 0x268c + ParticleOrientationChoiceList_t m_nOrientationType; // 0x27dc // MPropertyFriendlyName "attribute to use for normal" // MPropertyAttributeChoiceName "particlefield_vector" // MPropertySortPriority "750" // MPropertySuppressExpr "m_nOrientationType != PARTICLE_ORIENTATION_ALIGN_TO_PARTICLE_NORMAL && m_nOrientationType != PARTICLE_ORIENTATION_SCREENALIGN_TO_PARTICLE_NORMAL" - ParticleAttributeIndex_t m_nVectorFieldForOrientation; // 0x2690 + ParticleAttributeIndex_t m_nVectorFieldForOrientation; // 0x27e0 // MPropertyStartGroup "Material" // MPropertyFriendlyName "draw as opaque" - bool m_bDrawAsOpaque; // 0x2694 + bool m_bDrawAsOpaque; // 0x27e4 // MPropertyStartGroup "Orientation" // MPropertyFriendlyName "generate normals for cylinder" - bool m_bGenerateNormals; // 0x2695 + bool m_bGenerateNormals; // 0x27e5 }; // Alignment: 5 -// Size: 0xd00 +// Size: 0xd30 class C_OP_SpringToVectorConstraint : public CParticleFunctionConstraint { public: // MPropertyFriendlyName "slack" - CPerParticleFloatInput m_flRestLength; // 0x210 + CPerParticleFloatInput m_flRestLength; // 0x1b0 // MPropertyFriendlyName "minimum segment length %" - CPerParticleFloatInput m_flMinDistance; // 0x350 + CPerParticleFloatInput m_flMinDistance; // 0x300 // MPropertyFriendlyName "maximum segment length %" - CPerParticleFloatInput m_flMaxDistance; // 0x490 + CPerParticleFloatInput m_flMaxDistance; // 0x450 // MPropertyFriendlyName "resting spacing" - CPerParticleFloatInput m_flRestingLength; // 0x5d0 + CPerParticleFloatInput m_flRestingLength; // 0x5a0 // MPropertyFriendlyName "anchor vector" - CPerParticleVecInput m_vecAnchorVector; // 0x710 + CPerParticleVecInput m_vecAnchorVector; // 0x6f0 }; // Alignment: 2 -// Size: 0x220 +// Size: 0x1c0 class C_OP_FadeOutSimple : public CParticleFunctionOperator { public: // MPropertyFriendlyName "proportional fade out time" - float m_flFadeOutTime; // 0x210 + float m_flFadeOutTime; // 0x1b0 // MPropertyFriendlyName "alpha field" // MPropertyAttributeChoiceName "particlefield_alpha" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 }; -// Alignment: 1 -// Size: 0x50 -class CPulseCell_Step_PublicOutput : public CPulseCell_BaseFlow +// Alignment: 9 +// Size: 0x1f0 +class C_OP_RemapModelVolumetoCP : public CParticleFunctionPreEmission { public: - PulseRuntimeOutputIndex_t m_OutputIndex; // 0x48 -}; - -// Alignment: 6 -// Size: 0x820 -class C_OP_SetControlPointToCPVelocity : public CParticleFunctionPreEmission -{ -public: - // MPropertyFriendlyName "control point input" - int32_t m_nCPInput; // 0x220 - // MPropertyFriendlyName "control point number to set velocity" - int32_t m_nCPOutputVel; // 0x224 - // MPropertyFriendlyName "normalize output" - bool m_bNormalize; // 0x228 -private: - [[maybe_unused]] uint8_t __pad0229[0x3]; // 0x229 -public: - // MPropertyFriendlyName "control point number to set magnitude" - int32_t m_nCPOutputMag; // 0x22c - // MPropertyFriendlyName "control point field for magnitude" + // MPropertyFriendlyName "output BBox Type" + BBoxVolumeType_t m_nBBoxType; // 0x1c0 + // MPropertyFriendlyName "input control point" + int32_t m_nInControlPointNumber; // 0x1c4 + // MPropertyFriendlyName "output control point" + int32_t m_nOutControlPointNumber; // 0x1c8 + // MPropertyFriendlyName "output max control point" + // MPropertySuppressExpr "m_nBBoxType != BBOX_MINS_MAXS" + int32_t m_nOutControlPointMaxNumber; // 0x1cc + // MPropertyFriendlyName "output CP component" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nCPField; // 0x230 -private: - [[maybe_unused]] uint8_t __pad0234[0x4]; // 0x234 -public: - // MPropertyFriendlyName "comparison velocity" - CParticleCollectionVecInput m_vecComparisonVelocity; // 0x238 + // MPropertySuppressExpr "m_nBBoxType != BBOX_VOLUME" + int32_t m_nField; // 0x1d0 + // MPropertyFriendlyName "input volume minimum in cubic units" + // MPropertySuppressExpr "m_nBBoxType != BBOX_VOLUME" + float m_flInputMin; // 0x1d4 + // MPropertyFriendlyName "input volume maximum in cubic units" + // MPropertySuppressExpr "m_nBBoxType != BBOX_VOLUME" + float m_flInputMax; // 0x1d8 + // MPropertyFriendlyName "output minimum" + // MPropertySuppressExpr "m_nBBoxType != BBOX_VOLUME" + float m_flOutputMin; // 0x1dc + // MPropertyFriendlyName "output maximum" + // MPropertySuppressExpr "m_nBBoxType != BBOX_VOLUME" + float m_flOutputMax; // 0x1e0 }; -// Alignment: 48 -// Size: 0x22e0 -class C_OP_RenderModels : public CParticleFunctionRenderer +// Alignment: 9 +// Size: 0x460 +class C_OP_MoveToHitbox : public CParticleFunctionOperator { public: - // MPropertyFriendlyName "Only Render in effects bloom pass" - // MPropertySortPriority "1100" - bool m_bOnlyRenderInEffectsBloomPass; // 0x260 - // MPropertyFriendlyName "Only Render in effects water pass" - // MPropertySortPriority "1050" - // MPropertySuppressExpr "mod != csgo" - bool m_bOnlyRenderInEffectsWaterPass; // 0x261 - // MPropertyFriendlyName "Use Mixed Resolution Rendering" - // MPropertySortPriority "1200" - bool m_bUseMixedResolutionRendering; // 0x262 - // MPropertyFriendlyName "Only Render in effects game overlay pass" - // MPropertySortPriority "1210" - // MPropertySuppressExpr "mod != csgo" - bool m_bOnlyRenderInEffecsGameOverlay; // 0x263 + // MPropertyFriendlyName "model input" + CParticleModelInput m_modelInput; // 0x1b0 + // MPropertyFriendlyName "transform input" + CParticleTransformInput m_transformInput; // 0x210 private: - [[maybe_unused]] uint8_t __pad0264[0x4]; // 0x264 + [[maybe_unused]] uint8_t __pad0278[0x4]; // 0x278 public: - // MPropertyFriendlyName "models" - // MParticleRequireDefaultArrayEntry - // MPropertyAutoExpandSelf - // MPropertySortPriority "775" - CUtlVector< ModelReference_t > m_ModelList; // 0x268 + // MPropertyFriendlyName "lifetime lerp start" + float m_flLifeTimeLerpStart; // 0x27c + // MPropertyFriendlyName "lifetime lerp end" + float m_flLifeTimeLerpEnd; // 0x280 + // MPropertyFriendlyName "previous position scale" + float m_flPrevPosScale; // 0x284 + // MPropertyFriendlyName "hitbox set" + char m_HitboxSetName[128]; // 0x288 + // MPropertyFriendlyName "use bones instead of hitboxes" + bool m_bUseBones; // 0x308 private: - [[maybe_unused]] uint8_t __pad0280[0x4]; // 0x280 + [[maybe_unused]] uint8_t __pad0309[0x3]; // 0x309 public: - // MPropertyFriendlyName "bodygroup field" - // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nBodyGroupField; // 0x284 - // MPropertyFriendlyName "submodel field" - // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nSubModelField; // 0x288 - // MPropertyStartGroup "Orientation" - // MPropertyFriendlyName "ignore normal" - // MPropertySortPriority "750" - bool m_bIgnoreNormal; // 0x28c - // MPropertyFriendlyName "orient model z to normal" - // MPropertySortPriority "750" - // MPropertySuppressExpr "m_bIgnoreNormal" - bool m_bOrientZ; // 0x28d - // MPropertyFriendlyName "center mesh" - // MPropertySortPriority "750" - bool m_bCenterOffset; // 0x28e -private: - [[maybe_unused]] uint8_t __pad028f[0x1]; // 0x28f -public: - // MPropertyFriendlyName "model local offset" - // MPropertySortPriority "750" - CPerParticleVecInput m_vecLocalOffset; // 0x290 - // MPropertyFriendlyName "model local rotation (pitch/yaw/roll)" - // MPropertySortPriority "750" - CPerParticleVecInput m_vecLocalRotation; // 0x878 - // MPropertyStartGroup "Model Scale" - // MPropertyFriendlyName "ignore radius" - // MPropertySortPriority "700" - bool m_bIgnoreRadius; // 0xe60 -private: - [[maybe_unused]] uint8_t __pad0e61[0x3]; // 0xe61 -public: - // MPropertyFriendlyName "model scale CP" - // MPropertySortPriority "700" - int32_t m_nModelScaleCP; // 0xe64 - // MPropertyFriendlyName "model component scale" - // MPropertySortPriority "700" - CPerParticleVecInput m_vecComponentScale; // 0xe68 - // MPropertyFriendlyName "apply scales in local model space" - // MPropertySortPriority "700" - bool m_bLocalScale; // 0x1450 - // MPropertyStartGroup "Animation" - // MPropertyFriendlyName "animated" - // MPropertySortPriority "500" - bool m_bAnimated; // 0x1451 -private: - [[maybe_unused]] uint8_t __pad1452[0x2]; // 0x1452 -public: - // MPropertyFriendlyName "animation rate" - // MPropertySortPriority "500" - // MPropertySuppressExpr "!m_bAnimated" - float m_flAnimationRate; // 0x1454 - // MPropertyFriendlyName "scale animation rate" - // MPropertySortPriority "500" - // MPropertySuppressExpr "!m_bAnimated" - bool m_bScaleAnimationRate; // 0x1458 - // MPropertyFriendlyName "force looping animations" - // MPropertySortPriority "500" - // MPropertySuppressExpr "!m_bAnimated" - bool m_bForceLoopingAnimation; // 0x1459 - // MPropertyFriendlyName "reset animation frame on stop" - // MPropertySortPriority "500" - // MPropertySuppressExpr "!m_bAnimated" - bool m_bResetAnimOnStop; // 0x145a - // MPropertyFriendlyName "set animation frame manually" - // MPropertySortPriority "500" - // MPropertySuppressExpr "!m_bAnimated" - bool m_bManualAnimFrame; // 0x145b - // MPropertyFriendlyName "animation rate scale field" - // MPropertyAttributeChoiceName "particlefield_scalar" - // MPropertySortPriority "500" - // MPropertySuppressExpr "!m_bAnimated" - ParticleAttributeIndex_t m_nAnimationScaleField; // 0x145c - // MPropertyStartGroup "Animation" - // MPropertyFriendlyName "animation sequence field" - // MPropertyAttributeChoiceName "particlefield_scalar" - // MPropertySortPriority "500" - ParticleAttributeIndex_t m_nAnimationField; // 0x1460 - // MPropertyFriendlyName "manual animation frame field" - // MPropertyAttributeChoiceName "particlefield_scalar" - // MPropertySortPriority "500" - // MPropertySuppressExpr "!(m_bAnimated && m_bManualAnimFrame)" - ParticleAttributeIndex_t m_nManualFrameField; // 0x1464 - // MPropertyFriendlyName "activity override" - // MPropertySuppressExpr "mod != dota" - // MPropertySortPriority "500" - char m_ActivityName[256]; // 0x1468 - // MPropertyFriendlyName "sequence override" - // MPropertySuppressExpr "mod == dota" - // MPropertySortPriority "500" - char m_SequenceName[256]; // 0x1568 - // MPropertyFriendlyName "Enable Cloth Simulation" - bool m_bEnableClothSimulation; // 0x1668 -private: - [[maybe_unused]] uint8_t __pad1669[0x7]; // 0x1669 -public: - // MPropertyStartGroup "Material" - // MPropertyFriendlyName "material override" - // MPropertySortPriority "600" - CStrongHandle< InfoForResourceTypeIMaterial2 > m_hOverrideMaterial; // 0x1670 - // MPropertyFriendlyName "override translucent materials" - // MPropertySortPriority "600" - bool m_bOverrideTranslucentMaterials; // 0x1678 -private: - [[maybe_unused]] uint8_t __pad1679[0x3]; // 0x1679 -public: - // MPropertyFriendlyName "skin number" - // MPropertySortPriority "600" - int32_t m_nSkin; // 0x167c - // MPropertyFriendlyName "skin override CP" - // MPropertySortPriority "600" - int32_t m_nSkinCP; // 0x1680 -private: - [[maybe_unused]] uint8_t __pad1684[0x4]; // 0x1684 -public: - // MPropertyFriendlyName "material variables" - // MPropertyAutoExpandSelf - // MPropertySortPriority "600" - CUtlVector< MaterialVariable_t > m_MaterialVars; // 0x1688 - // MPropertyStartGroup "Model Overrides" - // MPropertyFriendlyName "input model" - CParticleModelInput m_modelInput; // 0x16a0 - // MPropertyFriendlyName "model LOD" - int32_t m_nLOD; // 0x16e8 - // MPropertyFriendlyName "model override economy loadout slot type" - char m_EconSlotName[256]; // 0x16ec - // MPropertyFriendlyName "model override original model only (ignore shapeshift/hex/etc)" - bool m_bOriginalModel; // 0x17ec - // MPropertyFriendlyName "suppress tinting of the model" - bool m_bSuppressTint; // 0x17ed - // MPropertyFriendlyName "use raw mesh group (ignore bodygroup field and use submodel field as raw meshgroup)" - bool m_bUseRawMeshGroup; // 0x17ee - // MPropertyFriendlyName "disable shadows" - bool m_bDisableShadows; // 0x17ef - // MPropertyFriendlyName "forcedrawinterlevedwithsiblings" - bool m_bForceDrawInterlevedWithSiblings; // 0x17f0 - // MPropertyFriendlyName "render attribute" - char m_szRenderAttribute[260]; // 0x17f1 -private: - [[maybe_unused]] uint8_t __pad18f5[0x3]; // 0x18f5 -public: - // MPropertyStartGroup "+Renderer Modifiers" - // MPropertyFriendlyName "Radius Scale" - // MPropertySortPriority "700" - CParticleCollectionFloatInput m_flRadiusScale; // 0x18f8 - // MPropertyFriendlyName "alpha scale" - // MPropertySortPriority "700" - CParticleCollectionFloatInput m_flAlphaScale; // 0x1a38 - // MPropertyFriendlyName "rotation roll scale" - // MPropertySortPriority "700" - CParticleCollectionFloatInput m_flRollScale; // 0x1b78 - // MPropertyFriendlyName "per-particle alpha scale attribute" - // MPropertyAttributeChoiceName "particlefield_scalar" - // MPropertySortPriority "700" - ParticleAttributeIndex_t m_nAlpha2Field; // 0x1cb8 -private: - [[maybe_unused]] uint8_t __pad1cbc[0x4]; // 0x1cbc -public: - // MPropertyFriendlyName "color blend" - // MPropertySortPriority "700" - CParticleCollectionVecInput m_vecColorScale; // 0x1cc0 - // MPropertyFriendlyName "color blend type" - // MPropertySortPriority "700" - ParticleColorBlendType_t m_nColorBlendType; // 0x22a8 + // MPropertyFriendlyName "lerp type" + HitboxLerpType_t m_nLerpType; // 0x30c + // MPropertyFriendlyName "Constant Interpolation" + CPerParticleFloatInput m_flInterpolation; // 0x310 }; // Alignment: 1 @@ -26317,105 +22194,105 @@ public: }; // Alignment: 1 -// Size: 0x260 +// Size: 0x220 class C_OP_RemapTransformToVelocity : public CParticleFunctionOperator { public: // MPropertyFriendlyName "transform input" - CParticleTransformInput m_TransformInput; // 0x210 + CParticleTransformInput m_TransformInput; // 0x1b0 }; // Alignment: 8 -// Size: 0x240 +// Size: 0x1e0 class C_OP_RemapSpeedtoCP : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "input control point" - int32_t m_nInControlPointNumber; // 0x220 + int32_t m_nInControlPointNumber; // 0x1c0 // MPropertyFriendlyName "output control point" - int32_t m_nOutControlPointNumber; // 0x224 + int32_t m_nOutControlPointNumber; // 0x1c4 // MPropertyFriendlyName "Output field 0-2 X/Y/Z" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nField; // 0x228 + int32_t m_nField; // 0x1c8 // MPropertyFriendlyName "input minimum" - float m_flInputMin; // 0x22c + float m_flInputMin; // 0x1cc // MPropertyFriendlyName "input maximum" - float m_flInputMax; // 0x230 + float m_flInputMax; // 0x1d0 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x234 + float m_flOutputMin; // 0x1d4 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x238 + float m_flOutputMax; // 0x1d8 // MPropertyFriendlyName "use delta of velocity instead of constant speed" - bool m_bUseDeltaV; // 0x23c + bool m_bUseDeltaV; // 0x1dc }; // Alignment: 16 -// Size: 0x890 +// Size: 0x880 class C_OP_RenderDeferredLight : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "projected texture use alpha test window" // MPropertySuppressExpr "!m_bUseTexture" - bool m_bUseAlphaTestWindow; // 0x260 + bool m_bUseAlphaTestWindow; // 0x200 // MPropertyFriendlyName "projected texture light" - bool m_bUseTexture; // 0x261 + bool m_bUseTexture; // 0x201 private: - [[maybe_unused]] uint8_t __pad0262[0x2]; // 0x262 + [[maybe_unused]] uint8_t __pad0202[0x2]; // 0x202 public: // MPropertyStartGroup "+Renderer Modifiers" // MPropertyFriendlyName "radius scale" // MPropertySortPriority "700" - float m_flRadiusScale; // 0x264 + float m_flRadiusScale; // 0x204 // MPropertyFriendlyName "alpha scale" // MPropertySortPriority "700" - float m_flAlphaScale; // 0x268 + float m_flAlphaScale; // 0x208 // MPropertyFriendlyName "per-particle alpha scale attribute" // MPropertyAttributeChoiceName "particlefield_scalar" // MPropertySortPriority "700" - ParticleAttributeIndex_t m_nAlpha2Field; // 0x26c + ParticleAttributeIndex_t m_nAlpha2Field; // 0x20c // MPropertyFriendlyName "color blend" // MPropertySortPriority "700" - CParticleCollectionVecInput m_vecColorScale; // 0x270 + CParticleCollectionVecInput m_vecColorScale; // 0x210 // MPropertyFriendlyName "color blend type" // MPropertySortPriority "700" - ParticleColorBlendType_t m_nColorBlendType; // 0x858 + ParticleColorBlendType_t m_nColorBlendType; // 0x848 // MPropertyStartGroup // MPropertyFriendlyName "spotlight distance" - float m_flLightDistance; // 0x85c + float m_flLightDistance; // 0x84c // MPropertyFriendlyName "light start falloff" - float m_flStartFalloff; // 0x860 + float m_flStartFalloff; // 0x850 // MPropertyFriendlyName "spotlight distance falloff" - float m_flDistanceFalloff; // 0x864 + float m_flDistanceFalloff; // 0x854 // MPropertyFriendlyName "spotlight FoV" - float m_flSpotFoV; // 0x868 + float m_flSpotFoV; // 0x858 // MPropertyFriendlyName "projected texture alpha test point scale field" // MPropertyAttributeChoiceName "particlefield_scalar" // MPropertySuppressExpr "!m_bUseTexture" - ParticleAttributeIndex_t m_nAlphaTestPointField; // 0x86c + ParticleAttributeIndex_t m_nAlphaTestPointField; // 0x85c // MPropertyFriendlyName "projected texture alpha test range scale field" // MPropertyAttributeChoiceName "particlefield_scalar" // MPropertySuppressExpr "!m_bUseTexture" - ParticleAttributeIndex_t m_nAlphaTestRangeField; // 0x870 + ParticleAttributeIndex_t m_nAlphaTestRangeField; // 0x860 // MPropertyFriendlyName "projected texture alpha test sharpness scale field" // MPropertyAttributeChoiceName "particlefield_scalar" // MPropertySuppressExpr "!m_bUseTexture" - ParticleAttributeIndex_t m_nAlphaTestSharpnessField; // 0x874 + ParticleAttributeIndex_t m_nAlphaTestSharpnessField; // 0x864 // MPropertyFriendlyName "texture" // MPropertySuppressExpr "!m_bUseTexture" - CStrongHandle< InfoForResourceTypeCTextureBase > m_hTexture; // 0x878 + CStrongHandle< InfoForResourceTypeCTextureBase > m_hTexture; // 0x868 // MPropertyFriendlyName "HSV Shift Control Point" - int32_t m_nHSVShiftControlPoint; // 0x880 + int32_t m_nHSVShiftControlPoint; // 0x870 }; // Alignment: 2 -// Size: 0x220 +// Size: 0x1c0 class C_OP_Decay : public CParticleFunctionOperator { public: // MPropertyFriendlyName "Reduce rope popping on decay" - bool m_bRopeDecay; // 0x210 + bool m_bRopeDecay; // 0x1b0 // MPropertyFriendlyName "force preserving particle order" - bool m_bForcePreserveParticleOrder; // 0x211 + bool m_bForcePreserveParticleOrder; // 0x1b1 }; // Alignment: 2 @@ -26431,18 +22308,14 @@ public: // Size: 0x70 class CNavVolume { -private: - [[maybe_unused]] uint8_t __pad0000[0x70]; // 0x0 public: - // No members available + uint8_t __pad0000[0x70]; // Autoaligned }; // Alignment: 1 // Size: 0x98 class CNavVolumeVector : public CNavVolume { -private: - [[maybe_unused]] uint8_t __pad0070[0x8]; // 0x70 public: bool m_bHasBeenPreFiltered; // 0x78 }; @@ -26451,29 +22324,35 @@ public: // Size: 0x28 class CNetworkVelocityVector { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: // MNetworkBitCount "18" - // MNetworkMinValue "-4096.000000" - // MNetworkMaxValue "4096.000000" + // MNetworkMinValue "-4096" + // MNetworkMaxValue "4096" // MNetworkEncodeFlags // MNetworkChangeCallback "CNetworkVelocityVector" CNetworkedQuantizedFloat m_vecX; // 0x10 // MNetworkBitCount "18" - // MNetworkMinValue "-4096.000000" - // MNetworkMaxValue "4096.000000" + // MNetworkMinValue "-4096" + // MNetworkMaxValue "4096" // MNetworkEncodeFlags // MNetworkChangeCallback "CNetworkVelocityVector" CNetworkedQuantizedFloat m_vecY; // 0x18 // MNetworkBitCount "18" - // MNetworkMinValue "-4096.000000" - // MNetworkMaxValue "4096.000000" + // MNetworkMinValue "-4096" + // MNetworkMaxValue "4096" // MNetworkEncodeFlags // MNetworkChangeCallback "CNetworkVelocityVector" CNetworkedQuantizedFloat m_vecZ; // 0x20 }; +// Alignment: 0 +// Size: 0x18 +class CAnimGraphControllerBase +{ +public: + uint8_t __pad0000[0x18]; // Autoaligned +}; + // Alignment: 6 // Size: 0x14 struct hudtextparms_t @@ -26494,10 +22373,8 @@ public: // Size: 0x8 class IRagdoll { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: - // No members available + uint8_t __pad0000[0x8]; // Autoaligned }; // Alignment: 5 @@ -26556,8 +22433,6 @@ public: // Size: 0x90 class CGameRules { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: char m_szQuestName[128]; // 0x8 int32_t m_nQuestPhase; // 0x88 @@ -26567,10 +22442,8 @@ public: // Size: 0x28 class CEntitySubclassVDataBase { -private: - [[maybe_unused]] uint8_t __pad0000[0x28]; // 0x0 public: - // No members available + uint8_t __pad0000[0x28]; // Autoaligned }; // Alignment: 1 @@ -26616,10 +22489,8 @@ public: // Size: 0x58 class CBtNode { -private: - [[maybe_unused]] uint8_t __pad0000[0x58]; // 0x0 public: - // No members available + uint8_t __pad0000[0x58]; // Autoaligned }; // Alignment: 1 @@ -26634,8 +22505,6 @@ public: // Size: 0xb8 class CNavVolumeBreadthFirstSearch : public CNavVolumeCalculatedVector { -private: - [[maybe_unused]] uint8_t __pad0098[0x8]; // 0x98 public: Vector m_vStartPos; // 0xa0 float m_flSearchDist; // 0xac @@ -26649,12 +22518,61 @@ public: // No members available }; +// Alignment: 0 +// Size: 0x18 +class CAnimEventListenerBase +{ +public: + uint8_t __pad0000[0x18]; // Autoaligned +}; + +// Alignment: 11 +// Size: 0x2c +class CNavHullVData +{ +public: + // MPropertyFriendlyName "Enabled" + // MPropertyDescription "Is this agent enabled for generation? ( will result in 0 nav areas for this agent if not )." + bool m_bAgentEnabled; // 0x0 + // MPropertyFriendlyName "Radius" + // MPropertyDescription "Radius of navigating agent capsule." + float m_agentRadius; // 0x4 + // MPropertyFriendlyName "Height" + // MPropertyDescription "Height of navigating agent capsule." + float m_agentHeight; // 0x8 + // MPropertyFriendlyName "Enable Short Height" + // MPropertyDescription "Enable shorter navigating agent capsules ( e.g. crouch ) in addition to regular height capsules." + bool m_agentShortHeightEnabled; // 0xc +private: + [[maybe_unused]] uint8_t __pad000d[0x3]; // 0xd +public: + // MPropertyFriendlyName "Short height" + // MPropertyDescription "Short Height of navigating agent capsules if enabled." + float m_agentShortHeight; // 0x10 + // MPropertyFriendlyName "Max Climb" + // MPropertyDescription "Max vertical offset that the agent simply ignores and walks over." + float m_agentMaxClimb; // 0x14 + // MPropertyFriendlyName "Max Slope" + // MPropertyDescription "Max ground slope to be considered walkable." + int32_t m_agentMaxSlope; // 0x18 + // MPropertyFriendlyName "Max Jump Down Distance" + // MPropertyDescription "Max vertical offset at which to create a jump connection ( possibly one-way )." + float m_agentMaxJumpDownDist; // 0x1c + // MPropertyFriendlyName "Max Horizontal Jump Distance" + // MPropertyDescription "Max horizontal offset over which to create a jump connection ( actually a parameter into the true threshold function )." + float m_agentMaxJumpHorizDistBase; // 0x20 + // MPropertyFriendlyName "Max Jump Up Distance" + // MPropertyDescription "Max vertical offset at which to make a jump connection two-way." + float m_agentMaxJumpUpDist; // 0x24 + // MPropertyFriendlyName "Border Erosion" + // MPropertyDescription "Border erosion in voxel units ( -1 to use default value based on agent radius )." + int32_t m_agentBorderErosion; // 0x28 +}; + // Alignment: 1 // Size: 0x20 class CInButtonState { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: uint64_t m_pButtonStates[3]; // 0x8 }; @@ -26663,8 +22581,6 @@ public: // Size: 0x18 class CIronSightController { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: bool m_bIronSightAvailable; // 0x8 private: @@ -26679,12 +22595,8 @@ public: // Size: 0x20 class CTakeDamageSummaryScopeGuard { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: CUtlVector< SummaryTakeDamageInfo_t* > m_vecSummaries; // 0x8 - - // Static fields: static SummaryTakeDamageInfo_t &Get_EmptySummary(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("!GlobalTypes")->FindDeclaredClass("CTakeDamageSummaryScopeGuard")->m_static_fields[0]->m_instance);}; }; @@ -26694,8 +22606,6 @@ struct GameTime_t { public: float m_Value; // 0x0 - - // Static fields: static GameTime_t &Get_Zero(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("!GlobalTypes")->FindDeclaredClass("GameTime_t")->m_static_fields[0]->m_instance);}; }; @@ -26711,10 +22621,16 @@ public: // Size: 0x1 class QuestProgress { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned +}; + +// Alignment: 1 +// Size: 0x50 +class CPulseCell_Value_FindEntByName : public CPulseCell_BaseValue +{ +public: + CUtlString m_EntityType; // 0x48 }; // Alignment: 2 @@ -26730,8 +22646,6 @@ public: // Size: 0x60 class CAI_Expresser { -private: - [[maybe_unused]] uint8_t __pad0000[0x38]; // 0x0 public: GameTime_t m_flStopTalkTime; // 0x38 GameTime_t m_flStopTalkTimeWithoutDelay; // 0x3c @@ -26754,10 +22668,8 @@ public: // Size: 0x8 class IEconItemInterface { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: - // No members available + uint8_t __pad0000[0x8]; // Autoaligned }; // Alignment: 2 @@ -26798,8 +22710,6 @@ public: // Size: 0x40 class CConstantForceController { -private: - [[maybe_unused]] uint8_t __pad0000[0xc]; // 0x0 public: Vector m_linear; // 0xc RotationVector m_angular; // 0x18 @@ -26819,8 +22729,6 @@ public: // Size: 0x20 class ResponseParams { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: int16_t odds; // 0x10 int16_t flags; // 0x12 @@ -26830,6 +22738,14 @@ public: ResponseFollowup* m_pFollowup; // 0x18 }; +// Alignment: 1 +// Size: 0x50 +class CPulseCell_Step_SetAnimGraphParam : public CPulseCell_BaseFlow +{ +public: + CUtlString m_ParamName; // 0x48 +}; + // Alignment: 2 // Size: 0x8 class CTakeDamageResult @@ -26843,8 +22759,6 @@ public: // Size: 0x178 class CBaseIssue { -private: - [[maybe_unused]] uint8_t __pad0000[0x20]; // 0x0 public: char m_szTypeString[64]; // 0x20 char m_szDetailsString[260]; // 0x60 @@ -26866,8 +22780,6 @@ public: // Size: 0x20 class CMotorController { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: float m_speed; // 0x8 float m_maxTorque; // 0xc @@ -26883,6 +22795,14 @@ public: int32_t m_pValue[2]; // 0x0 }; +// Alignment: 0 +// Size: 0x8 +class ISkeletonAnimationController +{ +public: + uint8_t __pad0000[0x8]; // Autoaligned +}; + // Alignment: 10 // Size: 0xa struct HullFlags_t @@ -26900,6 +22820,14 @@ public: bool m_bHull_Small; // 0x9 }; +// Alignment: 1 +// Size: 0x50 +class CPulseCell_Step_EntFire : public CPulseCell_BaseFlow +{ +public: + CUtlString m_Input; // 0x48 +}; + // Alignment: 4 // Size: 0x38 struct ragdoll_t @@ -26915,18 +22843,14 @@ public: // Size: 0x8 class IHasAttributes { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: - // No members available + uint8_t __pad0000[0x8]; // Autoaligned }; // Alignment: 5 // Size: 0x20 class CSmoothFunc { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: float m_flSmoothAmplitude; // 0x8 float m_flSmoothBias; // 0xc @@ -26939,8 +22863,6 @@ public: // Size: 0x28 class CCopyRecipientFilter { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: int32_t m_Flags; // 0x8 private: @@ -26969,14 +22891,22 @@ public: // Size: 0x20 struct locksound_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: CUtlSymbolLarge sLockedSound; // 0x8 CUtlSymbolLarge sUnlockedSound; // 0x10 GameTime_t flwaitSound; // 0x18 }; +// Alignment: 3 +// Size: 0x78 +class CPulseCell_Outflow_PlayVCD : public CPulseCell_BaseFlow +{ +public: + CUtlString m_vcdFilename; // 0x48 + CPulse_OutflowConnection m_OnFinished; // 0x50 + CUtlVector< CPulse_OutflowConnection > m_Triggers; // 0x60 +}; + // Alignment: 4 // Size: 0x10 class CSoundEnvelope @@ -27026,14 +22956,23 @@ public: float m_pValue[4]; // 0x0 }; +// Alignment: 1 +// Size: 0x18 +class CNavHullPresetVData +{ +public: + // MPropertyFriendlyName "Nav Hulls" + // MPropertyDescription "List of nav hulls belonging to this preset." + // MPropertyAttributeEditor "VDataChoice( scripts/nav_hulls.vdata )" + CUtlVector< CUtlString > m_vecNavHulls; // 0x0 +}; + // Alignment: 1 // Size: 0x4 struct GameTick_t { public: int32_t m_Value; // 0x0 - - // Static fields: static GameTick_t &Get_Zero(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("!GlobalTypes")->FindDeclaredClass("GameTick_t")->m_static_fields[0]->m_instance);}; }; @@ -27049,8 +22988,6 @@ public: // Size: 0x30 class CHintMessageQueue { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: float m_tmMessageEnd; // 0x8 private: @@ -27072,8 +23009,6 @@ public: // Size: 0x10 struct magnetted_objects_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: CHandle< CBaseEntity > hEntity; // 0x8 }; @@ -27082,24 +23017,22 @@ public: // Size: 0x28 class CNetworkOriginQuantizedVector { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: // MNetworkBitCount "19" - // MNetworkMinValue "-16384.000000" - // MNetworkMaxValue "16384.000000" + // MNetworkMinValue "-16384" + // MNetworkMaxValue "16384" // MNetworkEncodeFlags // MNetworkChangeCallback "CNetworkOriginQuantizedVector" CNetworkedQuantizedFloat m_vecX; // 0x10 // MNetworkBitCount "19" - // MNetworkMinValue "-16384.000000" - // MNetworkMaxValue "16384.000000" + // MNetworkMinValue "-16384" + // MNetworkMaxValue "16384" // MNetworkEncodeFlags // MNetworkChangeCallback "CNetworkOriginQuantizedVector" CNetworkedQuantizedFloat m_vecY; // 0x18 // MNetworkBitCount "19" - // MNetworkMinValue "-16384.000000" - // MNetworkMaxValue "16384.000000" + // MNetworkMinValue "-16384" + // MNetworkMaxValue "16384" // MNetworkEncodeFlags // MNetworkChangeCallback "CNetworkOriginQuantizedVector" CNetworkedQuantizedFloat m_vecZ; // 0x20 @@ -27109,8 +23042,6 @@ public: // Size: 0x30 class CNetworkOriginCellCoordQuantizedVector { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: // MNetworkEnable // MNetworkChangeCallback "OnCellChanged" @@ -27130,24 +23061,24 @@ public: // MNetworkEnable uint16_t m_nOutsideWorld; // 0x16 // MNetworkBitCount "15" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "1024.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "1024" // MNetworkEncodeFlags // MNetworkChangeCallback "OnCellChanged" // MNetworkPriority "31" // MNetworkSerializer "posx" CNetworkedQuantizedFloat m_vecX; // 0x18 // MNetworkBitCount "15" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "1024.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "1024" // MNetworkEncodeFlags // MNetworkChangeCallback "OnCellChanged" // MNetworkPriority "31" // MNetworkSerializer "posy" CNetworkedQuantizedFloat m_vecY; // 0x20 // MNetworkBitCount "15" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "1024.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "1024" // MNetworkEncodeFlags // MNetworkChangeCallback "OnCellChanged" // MNetworkPriority "31" @@ -27190,12 +23121,18 @@ public: DebugOverlayBits_t m_ClearDebugBits; // 0x40 }; +// Alignment: 0 +// Size: 0x1 +class CCSPulseServerFuncs_Globals +{ +public: + uint8_t __pad0000[0x1]; // Autoaligned +}; + // Alignment: 30 // Size: 0xc0 class CShatterGlassShard { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: uint32_t m_hShardHandle; // 0x8 private: @@ -27258,15 +23195,22 @@ public: bool m_fIsRunning; // 0x8 }; +// Alignment: 2 +// Size: 0x30 +class CAnimGraphTag +{ +public: + int32_t m_nTagIndex; // 0x0 + CAnimGraphSymbolWithStorage m_pTagName; // 0x10 +}; + // Alignment: 0 // Size: 0x8 class IChoreoServices { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: - // Static fields: static uint32_t &Get_ms_uSequenceId(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("!GlobalTypes")->FindDeclaredClass("IChoreoServices")->m_static_fields[0]->m_instance);}; + uint8_t __pad0000[0x8]; // Autoaligned }; // Alignment: 10 @@ -27304,12 +23248,18 @@ public: float m_maxInterval; // 0x10 }; +// Alignment: 0 +// Size: 0x1 +class CPulseServerFuncs_Sounds +{ +public: + uint8_t __pad0000[0x1]; // Autoaligned +}; + // Alignment: 5 // Size: 0x38 struct AmmoTypeInfo_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: int32_t m_nMaxCarry; // 0x10 private: @@ -27348,15 +23298,11 @@ public: }; // Alignment: 1 -// Size: 0x1a0 +// Size: 0x1b0 class CNetworkTransmitComponent { -private: - [[maybe_unused]] uint8_t __pad0000[0x16c]; // 0x0 public: uint8_t m_nTransmitStateOwnedCounter; // 0x16c - - // Static fields: static int32_t &Get_s_nDebugStateChange(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("!GlobalTypes")->FindDeclaredClass("CNetworkTransmitComponent")->m_static_fields[0]->m_instance);}; static int32_t &Get_s_nWatchTransmitEntity(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("!GlobalTypes")->FindDeclaredClass("CNetworkTransmitComponent")->m_static_fields[1]->m_instance);}; static bool &Get_s_bUseNetworkVars(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("!GlobalTypes")->FindDeclaredClass("CNetworkTransmitComponent")->m_static_fields[2]->m_instance);}; @@ -27391,8 +23337,6 @@ public: // Size: 0x30 class CResponseCriteriaSet { -private: - [[maybe_unused]] uint8_t __pad0000[0x28]; // 0x0 public: int32_t m_nNumPrefixedContexts; // 0x28 bool m_bOverrideOnAppend; // 0x2c @@ -27402,8 +23346,6 @@ public: // Size: 0x60 class CCommentarySystem { -private: - [[maybe_unused]] uint8_t __pad0000[0x11]; // 0x0 public: bool m_bCommentaryConvarsChanging; // 0x11 bool m_bCommentaryEnabledMidGame; // 0x12 @@ -27430,8 +23372,6 @@ public: // Size: 0xa0 class CTakeDamageInfo { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: Vector m_vecDamageForce; // 0x8 Vector m_vecDamagePosition; // 0x14 @@ -27458,8 +23398,6 @@ private: [[maybe_unused]] uint8_t __pad0080[0x18]; // 0x80 public: bool m_bInTakeDamageFlow; // 0x98 - - // Static fields: static CTakeDamageInfo &Get_EmptyInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("!GlobalTypes")->FindDeclaredClass("CTakeDamageInfo")->m_static_fields[0]->m_instance);}; }; @@ -27477,8 +23415,6 @@ public: // Size: 0x18 class CPhysicsShake { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: Vector m_force; // 0x8 }; @@ -27499,6 +23435,14 @@ public: // No members available }; +// Alignment: 1 +// Size: 0x88 +class CPulseCell_Inflow_GameEvent : public CPulseCell_Inflow_BaseEntrypoint +{ +public: + CBufferString m_EventName; // 0x70 +}; + // Alignment: 0 // Size: 0xc class CSimpleStopwatch : public CStopwatchBase @@ -27519,8 +23463,6 @@ public: // Size: 0x90 class CSoundPatch { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: CSoundEnvelope m_pitch; // 0x8 CSoundEnvelope m_volume; // 0x18 @@ -27541,17 +23483,21 @@ private: [[maybe_unused]] uint8_t __pad0085[0x3]; // 0x85 public: CUtlSymbolLarge m_iszClassName; // 0x88 - - // Static fields: static int32_t &Get_g_SoundPatchCount(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("!GlobalTypes")->FindDeclaredClass("CSoundPatch")->m_static_fields[0]->m_instance);}; }; +// Alignment: 0 +// Size: 0x118 +class CPulseGraphInstance_ServerPointEntity : public CBasePulseGraphInstance +{ +public: + // No members available +}; + // Alignment: 3 // Size: 0x20 class SimpleConstraintSoundProfile { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: SimpleConstraintSoundProfile::SimpleConstraintsSoundProfileKeypoints_t eKeypoints; // 0x8 float m_keyPoints[2]; // 0xc @@ -27562,8 +23508,6 @@ public: // Size: 0x20 struct thinkfunc_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: HSCRIPT m_hFn; // 0x8 CUtlStringToken m_nContext; // 0x10 @@ -27612,8 +23556,6 @@ public: // Size: 0x240 class CResponseQueue::CDeferredResponse { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: CResponseCriteriaSet m_contexts; // 0x10 float m_fDispatchTime; // 0x40 @@ -27635,10 +23577,8 @@ public: // Alignment: 1 // Size: 0x10 -class CSkeletonAnimationController +class CSkeletonAnimationController : public ISkeletonAnimationController { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkDisable CSkeletonInstance* m_pSkeletonInstance; // 0x8 @@ -27674,18 +23614,14 @@ public: // Size: 0x120 class CCSGOPlayerAnimGraphState { -private: - [[maybe_unused]] uint8_t __pad0000[0x120]; // 0x0 public: - // No members available + uint8_t __pad0000[0x120]; // Autoaligned }; // Alignment: 1 // Size: 0x40 class CPlayerPawnComponent { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex @@ -27725,24 +23661,22 @@ public: // Size: 0x28 class CNetworkViewOffsetVector { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: // MNetworkBitCount "10" - // MNetworkMinValue "-64.000000" - // MNetworkMaxValue "64.000000" + // MNetworkMinValue "-64" + // MNetworkMaxValue "64" // MNetworkEncodeFlags // MNetworkChangeCallback "CNetworkViewOffsetVector" CNetworkedQuantizedFloat m_vecX; // 0x10 // MNetworkBitCount "10" - // MNetworkMinValue "-64.000000" - // MNetworkMaxValue "64.000000" + // MNetworkMinValue "-64" + // MNetworkMaxValue "64" // MNetworkEncodeFlags // MNetworkChangeCallback "CNetworkViewOffsetVector" CNetworkedQuantizedFloat m_vecY; // 0x18 // MNetworkBitCount "20" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "128.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "128" // MNetworkEncodeFlags // MNetworkChangeCallback "CNetworkViewOffsetVector" CNetworkedQuantizedFloat m_vecZ; // 0x20 @@ -27756,6 +23690,14 @@ public: bool m_bAllowMultipleScenes; // 0x70 }; +// Alignment: 0 +// Size: 0x20 +class CAnimEventListener : public CAnimEventListenerBase +{ +public: + // No members available +}; + // Alignment: 2 // Size: 0x14 class CSkillDamage @@ -27771,10 +23713,8 @@ public: // Size: 0x8 class IVehicle { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: - // No members available + uint8_t __pad0000[0x8]; // Autoaligned }; // Alignment: 2 @@ -27790,8 +23730,6 @@ public: // Size: 0x88 class ConstraintSoundInfo { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: VelocitySampler m_vSampler; // 0x8 private: @@ -27835,25 +23773,27 @@ public: // Size: 0xa0 class CScriptUniformRandomStream { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: HSCRIPT m_hScriptScope; // 0x8 private: [[maybe_unused]] uint8_t __pad0010[0x8c]; // 0x10 public: int32_t m_nInitialSeed; // 0x9c - - // Static fields: static CUtlVector< CScriptUniformRandomStream* > &Get_sm_UniformStreams(){return *reinterpret_cast*>(interfaces::g_schema->FindTypeScopeForModule("!GlobalTypes")->FindDeclaredClass("CScriptUniformRandomStream")->m_static_fields[0]->m_instance);}; }; +// Alignment: 1 +// Size: 0x50 +class CPulseCell_SoundEventStart : public CPulseCell_BaseFlow +{ +public: + SoundEventStartType_t m_Type; // 0x48 +}; + // Alignment: 1 // Size: 0x68 class CResponseQueue { -private: - [[maybe_unused]] uint8_t __pad0000[0x50]; // 0x0 public: CUtlVector< CAI_Expresser* > m_ExpresserTargets; // 0x50 }; @@ -27884,8 +23824,6 @@ public: // Size: 0x40 class CPlayerControllerComponent { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex @@ -27896,10 +23834,8 @@ public: // Size: 0x8 class CFootstepTableHandle { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: - // No members available + uint8_t __pad0000[0x8]; // Autoaligned }; // Alignment: 9 @@ -27919,8 +23855,6 @@ public: Vector m_vecLastOrigin; // 0x6c float m_flLastOriginChangeTime; // 0x78 float m_flAwakeTime; // 0x7c - - // Static fields: static uint32_t &Get_s_globalCount(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("!GlobalTypes")->FindDeclaredClass("CRagdoll")->m_static_fields[0]->m_instance);}; }; @@ -27928,14 +23862,20 @@ public: // Size: 0x30 class CHintMessage { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: char* m_hintString; // 0x8 CUtlVector< char* > m_args; // 0x10 float m_duration; // 0x28 }; +// Alignment: 0 +// Size: 0x1 +class CPulseServerFuncs +{ +public: + uint8_t __pad0000[0x1]; // Autoaligned +}; + // Alignment: 1 // Size: 0x10 class CRemapFloat @@ -27953,6 +23893,14 @@ public: Class_T classType; // 0xc }; +// Alignment: 0 +// Size: 0x38 +class CAnimEventQueueListener : public CAnimEventListenerBase +{ +public: + // No members available +}; + // Alignment: 12 // Size: 0x60 struct MoodAnimationLayer_t @@ -27998,8 +23946,6 @@ public: // Size: 0x60 struct CompositeMaterial_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MPropertyGroupName "Target Material" // MPropertyAttributeEditor "CompositeMaterialKVInspector" @@ -28021,8 +23967,6 @@ public: // Size: 0xd0 class CGlowOverlay { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: Vector m_vPos; // 0x8 bool m_bDirectional; // 0x14 @@ -28059,7 +24003,6 @@ struct CompositeMaterialMatchFilter_t { public: // MPropertyFriendlyName "Match Type" - // MPropertyAttributeChoiceEnumName CompositeMaterialMatchFilterType_t m_nCompositeMaterialMatchFilterType; // 0x0 // MPropertyFriendlyName "Name" CUtlString m_strMatchFilter; // 0x8 @@ -28074,18 +24017,14 @@ public: // Size: 0x8 class IClientAlphaProperty { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: - // No members available + uint8_t __pad0000[0x8]; // Autoaligned }; // Alignment: 43 // Size: 0x4c0 class CGlobalLightBase { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: bool m_bSpotLight; // 0x10 private: @@ -28151,8 +24090,6 @@ public: // Size: 0x30 class CClientAlphaProperty : public IClientAlphaProperty { -private: - [[maybe_unused]] uint8_t __pad0008[0x8]; // 0x8 public: uint8_t m_nRenderFX; // 0x10 uint8_t m_nRenderMode; // 0x11 @@ -28177,8 +24114,6 @@ public: // Size: 0x38 class CCompositeMaterialEditorDoc { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: int32_t m_nVersion; // 0x8 private: @@ -28188,7 +24123,7 @@ public: KeyValues3 m_KVthumbnail; // 0x28 }; -// Alignment: 31 +// Alignment: 32 // Size: 0x258 struct CompositeMaterialInputLooseVariable_t { @@ -28208,87 +24143,89 @@ public: // MPropertyFriendlyName "Exposed Friendly Group" // MPropertyAttrStateCallback CUtlString m_strExposedFriendlyGroupName; // 0x18 + // MPropertyFriendlyName "Exposed Fixed Range" + // MPropertyAttrStateCallback + bool m_bExposedVariableIsFixedRange; // 0x20 +private: + [[maybe_unused]] uint8_t __pad0021[0x3]; // 0x21 +public: // MPropertyAutoRebuildOnChange // MPropertyFriendlyName "Type" - // MPropertyAttributeChoiceEnumName - CompositeMaterialInputLooseVariableType_t m_nVariableType; // 0x20 + CompositeMaterialInputLooseVariableType_t m_nVariableType; // 0x24 // MPropertyFriendlyName "Value" // MPropertyAttrStateCallback - bool m_bValueBoolean; // 0x24 + bool m_bValueBoolean; // 0x28 private: - [[maybe_unused]] uint8_t __pad0025[0x3]; // 0x25 + [[maybe_unused]] uint8_t __pad0029[0x3]; // 0x29 public: // MPropertyFriendlyName "X Value" // MPropertyAttrStateCallback // MPropertyAttributeRange "0 255" - int32_t m_nValueIntX; // 0x28 + int32_t m_nValueIntX; // 0x2c // MPropertyFriendlyName "Y Value" // MPropertyAttrStateCallback // MPropertyAttributeRange "0 255" - int32_t m_nValueIntY; // 0x2c + int32_t m_nValueIntY; // 0x30 // MPropertyFriendlyName "Z Value" // MPropertyAttrStateCallback // MPropertyAttributeRange "0 255" - int32_t m_nValueIntZ; // 0x30 + int32_t m_nValueIntZ; // 0x34 // MPropertyFriendlyName "W Value" // MPropertyAttrStateCallback // MPropertyAttributeRange "0 255" - int32_t m_nValueIntW; // 0x34 + int32_t m_nValueIntW; // 0x38 // MPropertyFriendlyName "Specify Min/Max" // MPropertyAttrStateCallback - bool m_bHasFloatBounds; // 0x38 + bool m_bHasFloatBounds; // 0x3c private: - [[maybe_unused]] uint8_t __pad0039[0x3]; // 0x39 + [[maybe_unused]] uint8_t __pad003d[0x3]; // 0x3d public: // MPropertyFriendlyName "X Value" // MPropertyAttrStateCallback // MPropertyAttributeRange "0.0 1.0" - float m_flValueFloatX; // 0x3c + float m_flValueFloatX; // 0x40 // MPropertyFriendlyName "X Min" // MPropertyAttrStateCallback - float m_flValueFloatX_Min; // 0x40 + float m_flValueFloatX_Min; // 0x44 // MPropertyFriendlyName "X Max" // MPropertyAttrStateCallback - float m_flValueFloatX_Max; // 0x44 + float m_flValueFloatX_Max; // 0x48 // MPropertyFriendlyName "Y Value" // MPropertyAttrStateCallback // MPropertyAttributeRange "0.0 1.0" - float m_flValueFloatY; // 0x48 + float m_flValueFloatY; // 0x4c // MPropertyFriendlyName "Y Min" // MPropertyAttrStateCallback - float m_flValueFloatY_Min; // 0x4c + float m_flValueFloatY_Min; // 0x50 // MPropertyFriendlyName "Y Max" // MPropertyAttrStateCallback - float m_flValueFloatY_Max; // 0x50 + float m_flValueFloatY_Max; // 0x54 // MPropertyFriendlyName "Z Value" // MPropertyAttrStateCallback // MPropertyAttributeRange "0.0 1.0" - float m_flValueFloatZ; // 0x54 + float m_flValueFloatZ; // 0x58 // MPropertyFriendlyName "Z Min" // MPropertyAttrStateCallback - float m_flValueFloatZ_Min; // 0x58 + float m_flValueFloatZ_Min; // 0x5c // MPropertyFriendlyName "Z Max" // MPropertyAttrStateCallback - float m_flValueFloatZ_Max; // 0x5c + float m_flValueFloatZ_Max; // 0x60 // MPropertyFriendlyName "W Value" // MPropertyAttrStateCallback // MPropertyAttributeRange "0.0 1.0" - float m_flValueFloatW; // 0x60 + float m_flValueFloatW; // 0x64 // MPropertyFriendlyName "W Min" // MPropertyAttrStateCallback - float m_flValueFloatW_Min; // 0x64 + float m_flValueFloatW_Min; // 0x68 // MPropertyFriendlyName "W Max" // MPropertyAttrStateCallback - float m_flValueFloatW_Max; // 0x68 + float m_flValueFloatW_Max; // 0x6c // MPropertyFriendlyName "Value" // MPropertyAttrStateCallback - Color m_cValueColor4; // 0x6c + Color m_cValueColor4; // 0x70 // MPropertyFriendlyName "Value" // MPropertyAttrStateCallback - CompositeMaterialVarSystemVar_t m_nValueSystemVar; // 0x70 -private: - [[maybe_unused]] uint8_t __pad0074[0x4]; // 0x74 -public: + CompositeMaterialVarSystemVar_t m_nValueSystemVar; // 0x74 // MPropertyFriendlyName "Material" // MPropertyAttributeEditor "AssetBrowse( vmat )" // MPropertyAttrStateCallback @@ -28316,10 +24253,8 @@ public: // Size: 0x8 class C_GameRules { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: - // No members available + uint8_t __pad0000[0x8]; // Autoaligned }; // Alignment: 0 @@ -28337,7 +24272,6 @@ struct CompMatMutatorCondition_t public: // MPropertyAutoRebuildOnChange // MPropertyFriendlyName "Condition" - // MPropertyAttributeChoiceEnumName CompMatPropertyMutatorConditionType_t m_nMutatorCondition; // 0x0 // MPropertyFriendlyName "Container Name" // MPropertyAttrStateCallback @@ -28367,8 +24301,6 @@ public: // Size: 0xb0 class C_IronSightController { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: bool m_bIronSightAvailable; // 0x10 private: @@ -28392,10 +24324,8 @@ public: // Size: 0x30 class CPlayerSprayDecalRenderHelper { -private: - [[maybe_unused]] uint8_t __pad0000[0x30]; // 0x0 public: - // No members available + uint8_t __pad0000[0x30]; // Autoaligned }; // Alignment: 8 @@ -28472,8 +24402,6 @@ public: // Size: 0x2e0 class CFlashlightEffect { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: bool m_bIsOn; // 0x10 private: @@ -28545,8 +24473,8 @@ public: bool m_bModulateByDot; // 0xf5 }; -// Alignment: 25 -// Size: 0x340 +// Alignment: 27 +// Size: 0x350 struct CompMatPropertyMutator_t { public: @@ -28555,7 +24483,6 @@ public: bool m_bEnabled; // 0x0 // MPropertyAutoRebuildOnChange // MPropertyFriendlyName "Mutator Command" - // MPropertyAttributeChoiceEnumName // MPropertyAttrStateCallback CompMatPropertyMutatorType_t m_nMutatorCommandType; // 0x4 // MPropertyFriendlyName "Container to Init With" @@ -28629,9 +24556,18 @@ public: // MPropertyFriendlyName "Text Position" // MPropertyAttrStateCallback Vector2D m_vecDrawText_Position; // 0x320 + // MPropertyFriendlyName "Text Color" + // MPropertyAttrStateCallback + Color m_colDrawText_Color; // 0x328 +private: + [[maybe_unused]] uint8_t __pad032c[0x4]; // 0x32c +public: + // MPropertyFriendlyName "Font" + // MPropertyAttrStateCallback + CUtlString m_strDrawText_Font; // 0x330 // MPropertyFriendlyName "Conditions" // MPropertyAttrStateCallback - CUtlVector< CompMatMutatorCondition_t > m_vecConditions; // 0x328 + CUtlVector< CompMatMutatorCondition_t > m_vecConditions; // 0x338 }; // Alignment: 10 @@ -28683,7 +24619,6 @@ public: bool m_bEnabled; // 0x0 // MPropertyAutoRebuildOnChange // MPropertyFriendlyName "Input Container Source" - // MPropertyAttributeChoiceEnumName // MPropertyAttrStateCallback CompositeMaterialInputContainerSourceType_t m_nCompositeMaterialInputContainerSourceType; // 0x4 // MPropertyFriendlyName "Specific Material" @@ -28719,11 +24654,25 @@ public: // Size: 0x50 struct GeneratedTextureHandle_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MPropertyFriendlyName "Generated Texture" // MPropertyAttributeEditor "CompositeMaterialTextureViewer" CUtlString m_strBitmapName; // 0x8 }; +// Alignment: 1 +// Size: 0x10 +class CAnimScriptBase +{ +public: + bool m_bIsValid; // 0x8 +}; + +// Alignment: 1 +// Size: 0x38 +class EmptyTestScript : public CAnimScriptBase +{ +public: + CAnimScriptParam< float32 > m_hTest; // 0x10 +}; + diff --git a/sdk/animationsystem.hpp b/sdk/animationsystem.hpp index e29f88cc..588e0fdb 100644 --- a/sdk/animationsystem.hpp +++ b/sdk/animationsystem.hpp @@ -4,8 +4,8 @@ // ///////////////////////////////////////////////////////////// // Binary: animationsystem.dll -// Classes count: 476 -// Enums count: 77 +// Classes count: 331 +// Enums count: 68 // Created using source2gen - github.com/neverlosecc/source2gen // ///////////////////////////////////////////////////////////// @@ -99,17 +99,6 @@ enum class ParticleAttachment_t : uint32_t MAX_PATTACH_TYPES = 0x10, }; -// Alignment: 4 -// Size: 0x5 -enum class CAnimationGraphVisualizerPrimitiveType : uint32_t -{ - ANIMATIONGRAPHVISUALIZERPRIMITIVETYPE_Text = 0x0, - ANIMATIONGRAPHVISUALIZERPRIMITIVETYPE_Sphere = 0x1, - ANIMATIONGRAPHVISUALIZERPRIMITIVETYPE_Line = 0x2, - ANIMATIONGRAPHVISUALIZERPRIMITIVETYPE_Pie = 0x3, - ANIMATIONGRAPHVISUALIZERPRIMITIVETYPE_Axis = 0x4, -}; - // Alignment: 1 // Size: 0x9 enum class AnimParamType_t : uint8_t @@ -135,15 +124,6 @@ enum class BoneTransformSpace_t : uint32_t BoneTransformSpace_World = 0x2, }; -// Alignment: 1 -// Size: 0x3 -enum class PoseType_t : uint8_t -{ - POSETYPE_STATIC = 0x0, - POSETYPE_DYNAMIC = 0x1, - POSETYPE_INVALID = 0xff, -}; - // Alignment: 4 // Size: 0xd enum class AnimParamButton_t : uint32_t @@ -172,32 +152,6 @@ enum class AnimParamNetworkSetting : uint32_t NeverNetwork = 0x2, }; -// Alignment: 4 -// Size: 0x2 -enum class AnimNodeNetworkMode : uint32_t -{ - ServerAuthoritative = 0x0, - ClientSimulate = 0x1, -}; - -// Alignment: 4 -// Size: 0x4 -enum class StateActionBehavior : uint32_t -{ - STATETAGBEHAVIOR_ACTIVE_WHILE_CURRENT = 0x0, - STATETAGBEHAVIOR_FIRE_ON_ENTER = 0x1, - STATETAGBEHAVIOR_FIRE_ON_EXIT = 0x2, - STATETAGBEHAVIOR_FIRE_ON_ENTER_AND_EXIT = 0x3, -}; - -// Alignment: 4 -// Size: 0x2 -enum class SolveIKChainAnimNodeSettingSource : uint32_t -{ - SOLVEIKCHAINANIMNODESETTINGSOURCE_Default = 0x0, - SOLVEIKCHAINANIMNODESETTINGSOURCE_Override = 0x1, -}; - // Alignment: 4 // Size: 0x3 enum class FootstepLandedFootSoundType_t : uint32_t @@ -216,15 +170,6 @@ enum class AnimPoseControl : uint32_t RelativePoseControl = 0x2, }; -// Alignment: 4 -// Size: 0x3 -enum class FacingMode : uint32_t -{ - FacingMode_Manual = 0x0, - FacingMode_Path = 0x1, - FacingMode_LookTarget = 0x2, -}; - // Alignment: 4 // Size: 0x2 enum class RagdollPoseControl : uint32_t @@ -259,469 +204,6 @@ enum class AnimVrBoneTransformSource_t : uint32_t AnimVrBoneTransformSource_GripLimit = 0x1, }; -// Alignment: 4 -// Size: 0x6 -enum class IKSolverType : uint32_t -{ - IKSOLVER_Perlin = 0x0, - IKSOLVER_TwoBone = 0x1, - IKSOLVER_Fabrik = 0x2, - IKSOLVER_DogLeg3Bone = 0x3, - IKSOLVER_CCD = 0x4, - IKSOLVER_COUNT = 0x5, -}; - -// Alignment: 4 -// Size: 0x3 -enum class IKTargetSource : uint32_t -{ - IKTARGETSOURCE_Bone = 0x0, - IKTARGETSOURCE_AnimgraphParameter = 0x1, - IKTARGETSOURCE_COUNT = 0x2, -}; - -// Alignment: 4 -// Size: 0x3 -enum class IKTargetCoordinateSystem : uint32_t -{ - IKTARGETCOORDINATESYSTEM_WorldSpace = 0x0, - IKTARGETCOORDINATESYSTEM_ModelSpace = 0x1, - IKTARGETCOORDINATESYSTEM_COUNT = 0x2, -}; - -// Alignment: 4 -// Size: 0x25 -enum class AnimValueSource : uint32_t -{ - MoveHeading = 0x0, - MoveSpeed = 0x1, - ForwardSpeed = 0x2, - StrafeSpeed = 0x3, - FacingHeading = 0x4, - ManualFacingHeading = 0x5, - LookHeading = 0x6, - LookPitch = 0x7, - LookDistance = 0x8, - Parameter = 0x9, - WayPointHeading = 0xa, - WayPointDistance = 0xb, - BoundaryRadius = 0xc, - TargetMoveHeading = 0xd, - TargetMoveSpeed = 0xe, - AccelerationHeading = 0xf, - AccelerationSpeed = 0x10, - SlopeHeading = 0x11, - SlopeAngle = 0x12, - SlopePitch = 0x13, - SlopeYaw = 0x14, - GoalDistance = 0x15, - AccelerationLeftRight = 0x16, - AccelerationFrontBack = 0x17, - RootMotionSpeed = 0x18, - RootMotionTurnSpeed = 0x19, - MoveHeadingRelativeToLookHeading = 0x1a, - MaxMoveSpeed = 0x1b, - FingerCurl_Thumb = 0x1c, - FingerCurl_Index = 0x1d, - FingerCurl_Middle = 0x1e, - FingerCurl_Ring = 0x1f, - FingerCurl_Pinky = 0x20, - FingerSplay_Thumb_Index = 0x21, - FingerSplay_Index_Middle = 0x22, - FingerSplay_Middle_Ring = 0x23, - FingerSplay_Ring_Pinky = 0x24, -}; - -// Alignment: 4 -// Size: 0xd -enum class AnimVectorSource : uint32_t -{ - MoveDirection = 0x0, - FacingDirection = 0x1, - LookDirection = 0x2, - VectorParameter = 0x3, - WayPointDirection = 0x4, - Acceleration = 0x5, - SlopeNormal = 0x6, - SlopeNormal_WorldSpace = 0x7, - LookTarget = 0x8, - LookTarget_WorldSpace = 0x9, - WayPointPosition = 0xa, - GoalPosition = 0xb, - RootMotionVelocity = 0xc, -}; - -// Alignment: 4 -// Size: 0x3 -enum class DampingSpeedFunction : uint32_t -{ - NoDamping = 0x0, - Constant = 0x1, - Spring = 0x2, -}; - -// Alignment: 4 -// Size: 0x2 -enum class EAnimValueSource : uint32_t -{ - Constant = 0x0, - Parameter = 0x1, -}; - -// Alignment: 4 -// Size: 0x29 -enum class ControlValue : uint32_t -{ - ControlValue_MoveHeading = 0x0, - ControlValue_MoveSpeed = 0x1, - ControlValue_FacingHeading = 0x2, - ControlValue_LookHeading = 0x3, - ControlValue_LookPitch = 0x4, - ControlValue_LookDistance = 0x5, - ControlValue_WayPointHeading = 0x6, - ControlValue_WayPointDistance = 0x7, - ControlValue_BoundaryRadius = 0x8, - ControlValue_TotalTranslation_SourceState = 0x9, - ControlValue_TotalTranslation_TargetState = 0xa, - ControlValue_RemainingTranslation_SourceState = 0xb, - ControlValue_RemainingTranslation_TargetState = 0xc, - ControlValue_MoveVsFacingDelta = 0xd, - ControlValue_SourceStateBlendWeight = 0xe, - ControlValue_TargetStateBlendWeight = 0xf, - ControlValue_TargetMoveHeading = 0x10, - ControlValue_TargetMoveSpeed = 0x11, - ControlValue_AccelerationHeading = 0x12, - ControlValue_AccelerationSpeed = 0x13, - ControlValue_SlopeHeading = 0x14, - ControlValue_SlopeAngle = 0x15, - ControlValue_SlopeYaw = 0x16, - ControlValue_SlopePitch = 0x17, - ControlValue_GoalDistance = 0x18, - ControlValue_AccelerationLeftRight = 0x19, - ControlValue_AccelerationFrontBack = 0x1a, - ControlValue_RootMotionSpeed = 0x1b, - ControlValue_RootMotionTurnSpeed = 0x1c, - ControlValue_MoveHeadingRelativeToLookHeading = 0x1d, - ControlValue_FingerCurl_Thumb = 0x1e, - ControlValue_FingerCurl_Index = 0x1f, - ControlValue_FingerCurl_Middle = 0x20, - ControlValue_FingerCurl_Ring = 0x21, - ControlValue_FingerCurl_Pinky = 0x22, - ControlValue_FingerSplay_Thumb_Index = 0x23, - ControlValue_FingerSplay_Index_Middle = 0x24, - ControlValue_FingerSplay_Middle_Ring = 0x25, - ControlValue_FingerSplay_Ring_Pinky = 0x26, - ControlValue_Count = 0x27, - ControlValue_Invalid = 0xff, -}; - -// Alignment: 4 -// Size: 0x3 -enum class FieldNetworkOption : uint32_t -{ - Auto = 0x0, - ForceEnable = 0x1, - ForceDisable = 0x2, -}; - -// Alignment: 4 -// Size: 0x2 -enum class DampedValueType : uint32_t -{ - FloatParameter = 0x0, - VectorParameter = 0x1, -}; - -// Alignment: 4 -// Size: 0x2 -enum class SelectionSource_t : uint32_t -{ - SelectionSource_Bool = 0x0, - SelectionSource_Enum = 0x1, -}; - -// Alignment: 4 -// Size: 0x3 -enum class SingleFrameSelection : uint32_t -{ - FirstFrame = 0x0, - LastFrame = 0x1, - SpecificFrame = 0x2, -}; - -// Alignment: 4 -// Size: 0x7 -enum class Comparison_t : uint32_t -{ - COMPARISON_EQUALS = 0x0, - COMPARISON_NOT_EQUALS = 0x1, - COMPARISON_GREATER = 0x2, - COMPARISON_GREATER_OR_EQUAL = 0x3, - COMPARISON_LESS = 0x4, - COMPARISON_LESS_OR_EQUAL = 0x5, - COMPARISON_COUNT = 0x6, -}; - -// Alignment: 1 -// Size: 0x2 -enum class ComparisonValueType : uint8_t -{ - COMPARISONVALUETYPE_FIXEDVALUE = 0x0, - COMPARISONVALUETYPE_PARAMETER = 0x1, -}; - -// Alignment: 4 -// Size: 0x2 -enum class FinishedConditionOption : uint32_t -{ - FinishedConditionOption_OnFinished = 0x0, - FinishedConditionOption_OnAlmostFinished = 0x1, -}; - -// Alignment: 4 -// Size: 0x3 -enum class StateComparisonValueType : uint32_t -{ - StateComparisonValue_FixedValue = 0x0, - StateComparisonValue_StateValue = 0x1, - StateComparisonValue_Parameter = 0x2, -}; - -// Alignment: 4 -// Size: 0x5 -enum class StateValue : uint32_t -{ - TotalTranslation_SourceState = 0x0, - TotalTranslation_TargetState = 0x1, - SourceStateBlendWeight = 0x2, - TargetStateBlendWeight = 0x3, - Count = 0x4, -}; - -// Alignment: 4 -// Size: 0x8 -enum class FootFallTagFoot_t : uint32_t -{ - FOOT1 = 0x0, - FOOT2 = 0x1, - FOOT3 = 0x2, - FOOT4 = 0x3, - FOOT5 = 0x4, - FOOT6 = 0x5, - FOOT7 = 0x6, - FOOT8 = 0x7, -}; - -// Alignment: 4 -// Size: 0x2 -enum class MatterialAttributeTagType_t : uint32_t -{ - MATERIAL_ATTRIBUTE_TAG_VALUE = 0x0, - MATERIAL_ATTRIBUTE_TAG_COLOR = 0x1, -}; - -// Alignment: 2 -// Size: 0x4 -enum class AnimScriptType : uint16_t -{ - ANIMSCRIPT_TYPE_INVALID = 0xffffffffffffffff, - ANIMSCRIPT_FUSE_GENERAL = 0x0, - ANIMSCRIPT_FUSE_STATEMACHINE = 0x1, - ANIMSCRIPT_EXPRTK = 0x2, -}; - -// Alignment: 4 -// Size: 0x4 -enum class BlendKeyType : uint32_t -{ - BlendKey_UserValue = 0x0, - BlendKey_Velocity = 0x1, - BlendKey_Distance = 0x2, - BlendKey_RemainingDistance = 0x3, -}; - -// Alignment: 4 -// Size: 0x5 -enum class ResetCycleOption : uint32_t -{ - Beginning = 0x0, - SameCycleAsSource = 0x1, - InverseSourceCycle = 0x2, - FixedValue = 0x3, - SameTimeAsSource = 0x4, -}; - -// Alignment: 4 -// Size: 0x4 -enum class ChoiceMethod : uint32_t -{ - WeightedRandom = 0x0, - WeightedRandomNoRepeat = 0x1, - Iterate = 0x2, - IterateRandom = 0x3, -}; - -// Alignment: 4 -// Size: 0x3 -enum class ChoiceChangeMethod : uint32_t -{ - OnReset = 0x0, - OnCycleEnd = 0x1, - OnResetOrCycleEnd = 0x2, -}; - -// Alignment: 4 -// Size: 0x2 -enum class ChoiceBlendMethod : uint32_t -{ - SingleBlendTime = 0x0, - PerChoiceBlendTimes = 0x1, -}; - -// Alignment: 4 -// Size: 0x2 -enum class IkEndEffectorType : uint32_t -{ - IkEndEffector_Attachment = 0x0, - IkEndEffector_Bone = 0x1, -}; - -// Alignment: 4 -// Size: 0x4 -enum class IkTargetType : uint32_t -{ - IkTarget_Attachment = 0x0, - IkTarget_Bone = 0x1, - IkTarget_Parameter_ModelSpace = 0x2, - IkTarget_Parameter_WorldSpace = 0x3, -}; - -// Alignment: 4 -// Size: 0x3 -enum class BinaryNodeTiming : uint32_t -{ - UseChild1 = 0x0, - UseChild2 = 0x1, - SyncChildren = 0x2, -}; - -// Alignment: 4 -// Size: 0x2 -enum class BinaryNodeChildOption : uint32_t -{ - Child1 = 0x0, - Child2 = 0x1, -}; - -// Alignment: 4 -// Size: 0x2 -enum class StanceOverrideMode : uint32_t -{ - Sequence = 0x0, - Node = 0x1, -}; - -// Alignment: 4 -// Size: 0x3 -enum class SelectorTagBehavior_t : uint32_t -{ - SelectorTagBehavior_OnWhileCurrent = 0x0, - SelectorTagBehavior_OffWhenFinished = 0x1, - SelectorTagBehavior_OffBeforeFinished = 0x2, -}; - -// Alignment: 4 -// Size: 0x2 -enum class Blend2DMode : uint32_t -{ - Blend2DMode_General = 0x0, - Blend2DMode_Directional = 0x1, -}; - -// Alignment: 4 -// Size: 0x2 -enum class FootLockSubVisualization : uint32_t -{ - FOOTLOCKSUBVISUALIZATION_ReachabilityAnalysis = 0x0, - FOOTLOCKSUBVISUALIZATION_IKSolve = 0x1, -}; - -// Alignment: 4 -// Size: 0x3 -enum class FootPinningTimingSource : uint32_t -{ - FootMotion = 0x0, - Tag = 0x1, - Parameter = 0x2, -}; - -// Alignment: 4 -// Size: 0x2 -enum class JumpCorrectionMethod : uint32_t -{ - ScaleMotion = 0x0, - AddCorrectionDelta = 0x1, -}; - -// Alignment: 4 -// Size: 0x2 -enum class StepPhase : uint32_t -{ - StepPhase_OnGround = 0x0, - StepPhase_InAir = 0x1, -}; - -// Alignment: 1 -// Size: 0x3 -enum class VelocityMetricMode : uint8_t -{ - DirectionOnly = 0x0, - MagnitudeOnly = 0x1, - DirectionAndMagnitude = 0x2, -}; - -// Alignment: 4 -// Size: 0x4 -enum class BoneMaskBlendSpace : uint32_t -{ - BlendSpace_Parent = 0x0, - BlendSpace_Model = 0x1, - BlendSpace_Model_RotationOnly = 0x2, - BlendSpace_Model_TranslationOnly = 0x3, -}; - -// Alignment: 4 -// Size: 0x4 -enum class AimMatrixBlendMode : uint32_t -{ - AimMatrixBlendMode_None = 0x0, - AimMatrixBlendMode_Additive = 0x1, - AimMatrixBlendMode_ModelSpaceAdditive = 0x2, - AimMatrixBlendMode_BoneMask = 0x3, -}; - -// Alignment: 4 -// Size: 0x7 -enum class SolveIKChainAnimNodeDebugSetting : uint32_t -{ - SOLVEIKCHAINANIMNODEDEBUGSETTING_None = 0x0, - SOLVEIKCHAINANIMNODEDEBUGSETTING_X_Axis_Circle = 0x1, - SOLVEIKCHAINANIMNODEDEBUGSETTING_Y_Axis_Circle = 0x2, - SOLVEIKCHAINANIMNODEDEBUGSETTING_Z_Axis_Circle = 0x3, - SOLVEIKCHAINANIMNODEDEBUGSETTING_Forward = 0x4, - SOLVEIKCHAINANIMNODEDEBUGSETTING_Up = 0x5, - SOLVEIKCHAINANIMNODEDEBUGSETTING_Left = 0x6, -}; - -// Alignment: 4 -// Size: 0x3 -enum class JiggleBoneSimSpace : uint32_t -{ - SimSpace_Local = 0x0, - SimSpace_Model = 0x1, - SimSpace_World = 0x2, -}; - // Alignment: 4 // Size: 0x5 enum class VPhysXBodyPart_t__VPhysXFlagEnum_t : uint32_t @@ -761,12 +243,13 @@ enum class VPhysXAggregateData_t__VPhysXFlagEnum_t : uint32_t }; // Alignment: 4 -// Size: 0x8 +// Size: 0x9 enum class MeshDrawPrimitiveFlags_t : uint32_t { MESH_DRAW_FLAGS_NONE = 0x0, MESH_DRAW_FLAGS_USE_SHADOW_FAST_PATH = 0x1, MESH_DRAW_FLAGS_USE_COMPRESSED_NORMAL_TANGENT = 0x2, + MESH_DRAW_FLAGS_USE_COMPRESSED_NORMAL_TANGENT_V2 = 0x4, MESH_DRAW_INPUT_LAYOUT_IS_NOT_MATCHED_TO_MATERIAL = 0x8, MESH_DRAW_FLAGS_USE_COMPRESSED_PER_VERTEX_LIGHTING = 0x10, MESH_DRAW_FLAGS_USE_UNCOMPRESSED_PER_VERTEX_LIGHTING = 0x20, @@ -915,6 +398,404 @@ enum class AnimVRFinger_t : uint32_t AnimVrFinger_Pinky = 0x4, }; +// Alignment: 4 +// Size: 0x4 +enum class IKChannelMode : uint32_t +{ + TwoBone = 0x0, + TwoBone_Translate = 0x1, + OneBone = 0x2, + OneBone_Translate = 0x3, +}; + +// Alignment: 4 +// Size: 0x2 +enum class EDemoBoneSelectionMode : uint32_t +{ + CaptureAllBones = 0x0, + CaptureSelectedBones = 0x1, +}; + +// Alignment: 4 +// Size: 0x25 +enum class AnimValueSource : uint32_t +{ + MoveHeading = 0x0, + MoveSpeed = 0x1, + ForwardSpeed = 0x2, + StrafeSpeed = 0x3, + FacingHeading = 0x4, + ManualFacingHeading = 0x5, + LookHeading = 0x6, + LookPitch = 0x7, + LookDistance = 0x8, + Parameter = 0x9, + WayPointHeading = 0xa, + WayPointDistance = 0xb, + BoundaryRadius = 0xc, + TargetMoveHeading = 0xd, + TargetMoveSpeed = 0xe, + AccelerationHeading = 0xf, + AccelerationSpeed = 0x10, + SlopeHeading = 0x11, + SlopeAngle = 0x12, + SlopePitch = 0x13, + SlopeYaw = 0x14, + GoalDistance = 0x15, + AccelerationLeftRight = 0x16, + AccelerationFrontBack = 0x17, + RootMotionSpeed = 0x18, + RootMotionTurnSpeed = 0x19, + MoveHeadingRelativeToLookHeading = 0x1a, + MaxMoveSpeed = 0x1b, + FingerCurl_Thumb = 0x1c, + FingerCurl_Index = 0x1d, + FingerCurl_Middle = 0x1e, + FingerCurl_Ring = 0x1f, + FingerCurl_Pinky = 0x20, + FingerSplay_Thumb_Index = 0x21, + FingerSplay_Index_Middle = 0x22, + FingerSplay_Middle_Ring = 0x23, + FingerSplay_Ring_Pinky = 0x24, +}; + +// Alignment: 4 +// Size: 0xd +enum class AnimVectorSource : uint32_t +{ + MoveDirection = 0x0, + FacingDirection = 0x1, + LookDirection = 0x2, + VectorParameter = 0x3, + WayPointDirection = 0x4, + Acceleration = 0x5, + SlopeNormal = 0x6, + SlopeNormal_WorldSpace = 0x7, + LookTarget = 0x8, + LookTarget_WorldSpace = 0x9, + WayPointPosition = 0xa, + GoalPosition = 0xb, + RootMotionVelocity = 0xc, +}; + +// Alignment: 4 +// Size: 0x3 +enum class DampingSpeedFunction : uint32_t +{ + NoDamping = 0x0, + Constant = 0x1, + Spring = 0x2, +}; + +// Alignment: 4 +// Size: 0x2 +enum class AnimNodeNetworkMode : uint32_t +{ + ServerAuthoritative = 0x0, + ClientSimulate = 0x1, +}; + +// Alignment: 4 +// Size: 0x4 +enum class StateActionBehavior : uint32_t +{ + STATETAGBEHAVIOR_ACTIVE_WHILE_CURRENT = 0x0, + STATETAGBEHAVIOR_FIRE_ON_ENTER = 0x1, + STATETAGBEHAVIOR_FIRE_ON_EXIT = 0x2, + STATETAGBEHAVIOR_FIRE_ON_ENTER_AND_EXIT = 0x3, +}; + +// Alignment: 4 +// Size: 0x3 +enum class FieldNetworkOption : uint32_t +{ + Auto = 0x0, + ForceEnable = 0x1, + ForceDisable = 0x2, +}; + +// Alignment: 4 +// Size: 0x8 +enum class FootFallTagFoot_t : uint32_t +{ + FOOT1 = 0x0, + FOOT2 = 0x1, + FOOT3 = 0x2, + FOOT4 = 0x3, + FOOT5 = 0x4, + FOOT6 = 0x5, + FOOT7 = 0x6, + FOOT8 = 0x7, +}; + +// Alignment: 4 +// Size: 0x2 +enum class MatterialAttributeTagType_t : uint32_t +{ + MATERIAL_ATTRIBUTE_TAG_VALUE = 0x0, + MATERIAL_ATTRIBUTE_TAG_COLOR = 0x1, +}; + +// Alignment: 1 +// Size: 0x3 +enum class VelocityMetricMode : uint8_t +{ + DirectionOnly = 0x0, + MagnitudeOnly = 0x1, + DirectionAndMagnitude = 0x2, +}; + +// Alignment: 4 +// Size: 0x4 +enum class AimMatrixBlendMode : uint32_t +{ + AimMatrixBlendMode_None = 0x0, + AimMatrixBlendMode_Additive = 0x1, + AimMatrixBlendMode_ModelSpaceAdditive = 0x2, + AimMatrixBlendMode_BoneMask = 0x3, +}; + +// Alignment: 4 +// Size: 0x4 +enum class BoneMaskBlendSpace : uint32_t +{ + BlendSpace_Parent = 0x0, + BlendSpace_Model = 0x1, + BlendSpace_Model_RotationOnly = 0x2, + BlendSpace_Model_TranslationOnly = 0x3, +}; + +// Alignment: 4 +// Size: 0x3 +enum class JiggleBoneSimSpace : uint32_t +{ + SimSpace_Local = 0x0, + SimSpace_Model = 0x1, + SimSpace_World = 0x2, +}; + +// Alignment: 4 +// Size: 0x7 +enum class SolveIKChainAnimNodeDebugSetting : uint32_t +{ + SOLVEIKCHAINANIMNODEDEBUGSETTING_None = 0x0, + SOLVEIKCHAINANIMNODEDEBUGSETTING_X_Axis_Circle = 0x1, + SOLVEIKCHAINANIMNODEDEBUGSETTING_Y_Axis_Circle = 0x2, + SOLVEIKCHAINANIMNODEDEBUGSETTING_Z_Axis_Circle = 0x3, + SOLVEIKCHAINANIMNODEDEBUGSETTING_Forward = 0x4, + SOLVEIKCHAINANIMNODEDEBUGSETTING_Up = 0x5, + SOLVEIKCHAINANIMNODEDEBUGSETTING_Left = 0x6, +}; + +// Alignment: 2 +// Size: 0x3 +enum class AnimScriptType : uint16_t +{ + ANIMSCRIPT_TYPE_INVALID = 0xffffffffffffffff, + ANIMSCRIPT_FUSE_GENERAL = 0x0, + ANIMSCRIPT_FUSE_STATEMACHINE = 0x1, +}; + +// Alignment: 4 +// Size: 0x3 +enum class BinaryNodeTiming : uint32_t +{ + UseChild1 = 0x0, + UseChild2 = 0x1, + SyncChildren = 0x2, +}; + +// Alignment: 4 +// Size: 0x2 +enum class BinaryNodeChildOption : uint32_t +{ + Child1 = 0x0, + Child2 = 0x1, +}; + +// Alignment: 4 +// Size: 0x4 +enum class BlendKeyType : uint32_t +{ + BlendKey_UserValue = 0x0, + BlendKey_Velocity = 0x1, + BlendKey_Distance = 0x2, + BlendKey_RemainingDistance = 0x3, +}; + +// Alignment: 4 +// Size: 0x2 +enum class Blend2DMode : uint32_t +{ + Blend2DMode_General = 0x0, + Blend2DMode_Directional = 0x1, +}; + +// Alignment: 4 +// Size: 0x4 +enum class ChoiceMethod : uint32_t +{ + WeightedRandom = 0x0, + WeightedRandomNoRepeat = 0x1, + Iterate = 0x2, + IterateRandom = 0x3, +}; + +// Alignment: 4 +// Size: 0x3 +enum class ChoiceChangeMethod : uint32_t +{ + OnReset = 0x0, + OnCycleEnd = 0x1, + OnResetOrCycleEnd = 0x2, +}; + +// Alignment: 4 +// Size: 0x2 +enum class ChoiceBlendMethod : uint32_t +{ + SingleBlendTime = 0x0, + PerChoiceBlendTimes = 0x1, +}; + +// Alignment: 4 +// Size: 0x2 +enum class FootLockSubVisualization : uint32_t +{ + FOOTLOCKSUBVISUALIZATION_ReachabilityAnalysis = 0x0, + FOOTLOCKSUBVISUALIZATION_IKSolve = 0x1, +}; + +// Alignment: 4 +// Size: 0x3 +enum class FootPinningTimingSource : uint32_t +{ + FootMotion = 0x0, + Tag = 0x1, + Parameter = 0x2, +}; + +// Alignment: 4 +// Size: 0x2 +enum class StepPhase : uint32_t +{ + StepPhase_OnGround = 0x0, + StepPhase_InAir = 0x1, +}; + +// Alignment: 4 +// Size: 0x2 +enum class JumpCorrectionMethod : uint32_t +{ + ScaleMotion = 0x0, + AddCorrectionDelta = 0x1, +}; + +// Alignment: 4 +// Size: 0x3 +enum class SelectorTagBehavior_t : uint32_t +{ + SelectorTagBehavior_OnWhileCurrent = 0x0, + SelectorTagBehavior_OffWhenFinished = 0x1, + SelectorTagBehavior_OffBeforeFinished = 0x2, +}; + +// Alignment: 4 +// Size: 0x2 +enum class StanceOverrideMode : uint32_t +{ + Sequence = 0x0, + Node = 0x1, +}; + +// Alignment: 4 +// Size: 0x5 +enum class ResetCycleOption : uint32_t +{ + Beginning = 0x0, + SameCycleAsSource = 0x1, + InverseSourceCycle = 0x2, + FixedValue = 0x3, + SameTimeAsSource = 0x4, +}; + +// Alignment: 4 +// Size: 0x2 +enum class IkEndEffectorType : uint32_t +{ + IkEndEffector_Attachment = 0x0, + IkEndEffector_Bone = 0x1, +}; + +// Alignment: 4 +// Size: 0x4 +enum class IkTargetType : uint32_t +{ + IkTarget_Attachment = 0x0, + IkTarget_Bone = 0x1, + IkTarget_Parameter_ModelSpace = 0x2, + IkTarget_Parameter_WorldSpace = 0x3, +}; + +// Alignment: 1 +// Size: 0x3 +enum class PoseType_t : uint8_t +{ + POSETYPE_STATIC = 0x0, + POSETYPE_DYNAMIC = 0x1, + POSETYPE_INVALID = 0xff, +}; + +// Alignment: 4 +// Size: 0x5 +enum class CAnimationGraphVisualizerPrimitiveType : uint32_t +{ + ANIMATIONGRAPHVISUALIZERPRIMITIVETYPE_Text = 0x0, + ANIMATIONGRAPHVISUALIZERPRIMITIVETYPE_Sphere = 0x1, + ANIMATIONGRAPHVISUALIZERPRIMITIVETYPE_Line = 0x2, + ANIMATIONGRAPHVISUALIZERPRIMITIVETYPE_Pie = 0x3, + ANIMATIONGRAPHVISUALIZERPRIMITIVETYPE_Axis = 0x4, +}; + +// Alignment: 4 +// Size: 0x3 +enum class FacingMode : uint32_t +{ + FacingMode_Manual = 0x0, + FacingMode_Path = 0x1, + FacingMode_LookTarget = 0x2, +}; + +// Alignment: 4 +// Size: 0x6 +enum class IKSolverType : uint32_t +{ + IKSOLVER_Perlin = 0x0, + IKSOLVER_TwoBone = 0x1, + IKSOLVER_Fabrik = 0x2, + IKSOLVER_DogLeg3Bone = 0x3, + IKSOLVER_CCD = 0x4, + IKSOLVER_COUNT = 0x5, +}; + +// Alignment: 4 +// Size: 0x3 +enum class IKTargetSource : uint32_t +{ + IKTARGETSOURCE_Bone = 0x0, + IKTARGETSOURCE_AnimgraphParameter = 0x1, + IKTARGETSOURCE_COUNT = 0x2, +}; + +// Alignment: 4 +// Size: 0x3 +enum class IKTargetCoordinateSystem : uint32_t +{ + IKTARGETCOORDINATESYSTEM_WorldSpace = 0x0, + IKTARGETCOORDINATESYSTEM_ModelSpace = 0x1, + IKTARGETCOORDINATESYSTEM_COUNT = 0x2, +}; + struct CRangeFloat; struct AnimationDecodeDebugDumpElement_t; struct CAnimEncodeDifference; @@ -927,45 +808,6 @@ struct CSeqMultiFetchFlag; struct CSeqSeqDescFlag; struct CSeqMultiFetch; struct CSeqTransition; -struct AnimNodeID; -struct AnimNodeOutputID; -struct MotionIndex; -struct IKBoneNameAndIndex_t; -struct AnimParamID; -struct CAnimNodeManager; -struct CAnimComponentManager; -struct CAnimGraphSettingsManager; -struct CAnimNodePath; -struct HSequence; -struct CAnimParamHandle; -struct AnimComponentID; -struct CAnimInputDamping; -struct AnimTagID; -struct CAnimNodeConnection; -struct IKSolverSettings_t; -struct IKTargetSettings_t; -struct CFloatAnimValue; -struct CBlendCurve; -struct AnimStateID; -struct CConditionContainer; -struct AnimScriptHandle; -struct CVectorQuantizer; -struct CMotionSearchNode; -struct CProductQuantizer; -struct CMotionParameterManager; -struct CMotionNodeManager; -struct CAnimUpdateNodeRef; -struct CAnimAttachment; -struct SkeletalInputOpFixedSettings_t; -struct HitReactFixedSettings_t; -struct CParamSpanUpdater; -struct CPoseHandle; -struct TraceSettings_t; -struct FootLockPoseOpFixedSettings; -struct FootPinningPoseOpFixedData_t; -struct CMotionDataSet; -struct JiggleBoneSettingsList_t; -struct CMotionSearchDB; struct VPhysics2ShapeDef_t; struct VPhysXConstraintParams_t; struct VPhysXRange_t; @@ -985,13 +827,44 @@ struct CAnimCycle; struct CFootCycle; struct CFootCycleDefinition; struct CFootTrajectories; -struct CAnimClipDataManager; +struct CAnimGraphSettingsManager; +struct CAnimNodePath; +struct CAnimParamHandle; +struct HSequence; +struct AnimComponentID; +struct AnimScriptHandle; +struct AnimTagID; +struct CAnimInputDamping; +struct CAnimDemoCaptureSettings; struct CAnimStateMachineUpdater; +struct CMotionSearchDB; +struct CVectorQuantizer; +struct CMotionSearchNode; +struct CProductQuantizer; +struct CParamSpanUpdater; +struct AnimNodeID; +struct CAnimAttachment; +struct IKSolverSettings_t; +struct IKTargetSettings_t; +struct AnimParamID; +struct AnimStateID; +struct CAnimUpdateNodeRef; +struct TraceSettings_t; +struct CMotionDataSet; +struct CBlendCurve; +struct CPoseHandle; +struct SkeletalInputOpFixedSettings_t; +struct MotionIndex; +struct IKBoneNameAndIndex_t; struct AimMatrixOpFixedSettings_t; -struct TwoBoneIKSettings_t; -struct SolveIKChainPoseOpFixedSettings_t; -struct LookAtOpFixedSettings_t; struct FollowAttachmentSettings_t; +struct FootLockPoseOpFixedSettings; +struct FootPinningPoseOpFixedData_t; +struct HitReactFixedSettings_t; +struct JiggleBoneSettingsList_t; +struct LookAtOpFixedSettings_t; +struct SolveIKChainPoseOpFixedSettings_t; +struct TwoBoneIKSettings_t; // Alignment: 2 // Size: 0x10 @@ -1164,15 +1037,15 @@ public: // Alignment: 5 // Size: 0x38 -class CAnimAnimEvent +class CAnimEventDefinition { public: - int32_t m_nFrame; // 0x0 - float m_flCycle; // 0x4 - KeyValues3 m_EventData; // 0x8 + int32_t m_nFrame; // 0x8 + float m_flCycle; // 0xc + KeyValues3 m_EventData; // 0x10 // MKV3TransferName "m_sOptions" - CBufferString m_sLegacyOptions; // 0x18 - CBufferString m_sEventName; // 0x28 + CBufferString m_sLegacyOptions; // 0x20 + CGlobalSymbol m_sEventName; // 0x30 }; // Alignment: 7 @@ -1286,7 +1159,7 @@ public: // MKV3TransferName "m_pData" CAnimEncodedFrames m_Data; // 0x20 CUtlVector< CAnimMovement > m_movementArray; // 0xf8 - CUtlVector< CAnimAnimEvent > m_eventArray; // 0x110 + CUtlVector< CAnimEventDefinition > m_eventArray; // 0x110 CUtlVector< CAnimActivity > m_activityArray; // 0x128 CUtlVector< CAnimLocalHierarchy > m_hierarchyArray; // 0x140 float framestalltime; // 0x158 @@ -1315,8 +1188,6 @@ public: // Size: 0x70 class CAnimData { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: CBufferString m_name; // 0x10 CUtlVector< CAnimDesc > m_animArray; // 0x20 @@ -1387,8 +1258,6 @@ public: // Size: 0x130 class CAnimationGroup { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: uint32_t m_nFlags; // 0x10 private: @@ -1463,18 +1332,19 @@ public: CUtlVector< CUtlPair< CBufferString, float32 > > m_morphCtrlWeightArray; // 0x48 }; -// Alignment: 4 -// Size: 0x48 +// Alignment: 5 +// Size: 0x50 class CSeqScaleSet { public: CBufferString m_sName; // 0x0 - float m_flRootOffsetScale; // 0x10 + bool m_bRootOffset; // 0x10 private: - [[maybe_unused]] uint8_t __pad0014[0x4]; // 0x14 + [[maybe_unused]] uint8_t __pad0011[0x3]; // 0x11 public: - CUtlVector< int16 > m_nLocalBoneArray; // 0x18 - CUtlVector< float32 > m_flBoneScaleArray; // 0x30 + Vector m_vRootOffset; // 0x14 + CUtlVector< int16 > m_nLocalBoneArray; // 0x20 + CUtlVector< float32 > m_flBoneScaleArray; // 0x38 }; // Alignment: 6 @@ -1627,7 +1497,7 @@ public: int16_t m_nSubCycles; // 0x2c int16_t m_numLocalResults; // 0x2e CUtlVector< CSeqCmdLayer > m_cmdLayerArray; // 0x30 - CUtlVector< CAnimAnimEvent > m_eventArray; // 0x48 + CUtlVector< CAnimEventDefinition > m_eventArray; // 0x48 CUtlVector< CAnimActivity > m_activityArray; // 0x60 CUtlVector< CSeqPoseSetting > m_poseSettingArray; // 0x78 }; @@ -1648,8 +1518,6 @@ public: // Size: 0x138 class CSequenceGroupData { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: CBufferString m_sName; // 0x10 uint32_t m_nFlags; // 0x20 @@ -1705,127 +1573,6 @@ public: int32_t m_Value; // 0x0 }; -// Alignment: 3 -// Size: 0x40 -class CAnimationGraphVisualizerPrimitiveBase -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 -public: - CAnimationGraphVisualizerPrimitiveType m_Type; // 0x8 - AnimNodeID m_OwningAnimNodePaths[11]; // 0xc - int32_t m_nOwningAnimNodePathCount; // 0x38 -}; - -// Alignment: 3 -// Size: 0x60 -class CAnimationGraphVisualizerText : public CAnimationGraphVisualizerPrimitiveBase -{ -public: - VectorAligned m_vWsPosition; // 0x40 - Color m_Color; // 0x50 -private: - [[maybe_unused]] uint8_t __pad0054[0x4]; // 0x54 -public: - CUtlString m_Text; // 0x58 -}; - -// Alignment: 3 -// Size: 0x60 -class CAnimationGraphVisualizerSphere : public CAnimationGraphVisualizerPrimitiveBase -{ -public: - VectorAligned m_vWsPosition; // 0x40 - float m_flRadius; // 0x50 - Color m_Color; // 0x54 -}; - -// Alignment: 3 -// Size: 0x70 -class CAnimationGraphVisualizerLine : public CAnimationGraphVisualizerPrimitiveBase -{ -public: - VectorAligned m_vWsPositionStart; // 0x40 - VectorAligned m_vWsPositionEnd; // 0x50 - Color m_Color; // 0x60 -}; - -// Alignment: 4 -// Size: 0x80 -class CAnimationGraphVisualizerPie : public CAnimationGraphVisualizerPrimitiveBase -{ -public: - VectorAligned m_vWsCenter; // 0x40 - VectorAligned m_vWsStart; // 0x50 - VectorAligned m_vWsEnd; // 0x60 - Color m_Color; // 0x70 -}; - -// Alignment: 2 -// Size: 0x70 -class CAnimationGraphVisualizerAxis : public CAnimationGraphVisualizerPrimitiveBase -{ -public: - CTransform m_xWsTransform; // 0x40 - float m_flAxisSize; // 0x60 -}; - -// Alignment: 1 -// Size: 0x4 -class AnimNodeID -{ -public: - uint32_t m_id; // 0x0 -}; - -// Alignment: 1 -// Size: 0x4 -class AnimNodeOutputID -{ -public: - uint32_t m_id; // 0x0 -}; - -// Alignment: 1 -// Size: 0x4 -class AnimStateID -{ -public: - uint32_t m_id; // 0x0 -}; - -// Alignment: 1 -// Size: 0x4 -class AnimParamID -{ -public: - uint32_t m_id; // 0x0 -}; - -// Alignment: 1 -// Size: 0x4 -class AnimTagID -{ -public: - uint32_t m_id; // 0x0 -}; - -// Alignment: 1 -// Size: 0x4 -class AnimComponentID -{ -public: - uint32_t m_id; // 0x0 -}; - -// Alignment: 1 -// Size: 0x4 -class AnimScriptHandle -{ -public: - uint32_t m_id; // 0x0 -}; - // Alignment: 1 // Size: 0x1 class CAnimEnum @@ -1834,4774 +1581,6 @@ public: uint8_t m_value; // 0x0 }; -// Alignment: 2 -// Size: 0x8 -class CBlendCurve -{ -public: - float m_flControlPoint1; // 0x0 - float m_flControlPoint2; // 0x4 -}; - -// Alignment: 2 -// Size: 0x30 -class CAnimNodePath -{ -public: - AnimNodeID m_path[11]; // 0x0 - int32_t m_nCount; // 0x2c -}; - -// Alignment: 2 -// Size: 0x4 -class CPoseHandle -{ -public: - uint16_t m_nIndex; // 0x0 - PoseType_t m_eType; // 0x2 -}; - -// Alignment: 2 -// Size: 0x8 -class CAnimNodeConnection -{ -public: - AnimNodeID m_nodeID; // 0x0 - AnimNodeOutputID m_outputID; // 0x4 -}; - -// Alignment: 2 -// Size: 0x4 -class ConfigIndex -{ -public: - uint16_t m_nGroup; // 0x0 - uint16_t m_nConfig; // 0x2 -}; - -// Alignment: 2 -// Size: 0x4 -class MotionIndex -{ -public: - uint16_t m_nGroup; // 0x0 - uint16_t m_nMotion; // 0x2 -}; - -// Alignment: 5 -// Size: 0x20 -class CMotionGraphConfig -{ -public: - float m_paramValues[4]; // 0x0 - float m_flDuration; // 0x10 - MotionIndex m_nMotionIndex; // 0x14 - int32_t m_nSampleStart; // 0x18 - int32_t m_nSampleCount; // 0x1c -}; - -// Alignment: 1 -// Size: 0x10 -struct IKBoneNameAndIndex_t -{ -public: - // MPropertyAttributeChoiceName "Bone" - CUtlString m_Name; // 0x0 -}; - -// Alignment: 2 -// Size: 0x8 -struct IKSolverSettings_t -{ -public: - // MPropertyFriendlyName "Solver Type" - // MPropertyAttributeChoiceEnumName - // MPropertyAttrChangeCallback - IKSolverType m_SolverType; // 0x0 - // MPropertyFriendlyName "Num Iterations " - // MPropertyAttrStateCallback - int32_t m_nNumIterations; // 0x4 -}; - -// Alignment: 4 -// Size: 0x20 -struct IKTargetSettings_t -{ -public: - // MPropertyFriendlyName "Target Source" - // MPropertyAttributeChoiceEnumName - // MPropertyAttrChangeCallback - IKTargetSource m_TargetSource; // 0x0 - // MPropertyFriendlyName "Bone" - // MPropertyAttrStateCallback - IKBoneNameAndIndex_t m_Bone; // 0x8 - // MPropertyFriendlyName "Animgraph Position Parameter" - // MPropertyAttributeChoiceName "VectorParameter" - // MPropertyAttrStateCallback - AnimParamID m_AnimgraphParameterNamePosition; // 0x18 - // MPropertyFriendlyName "Target Coords" - // MPropertyAttrStateCallback - IKTargetCoordinateSystem m_TargetCoordSystem; // 0x1c -}; - -// Alignment: 1 -// Size: 0x48 -class CAnimNodeManager -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 -public: - // MPropertyHideField - CUtlHashtable< AnimNodeID, CSmartPtr< CAnimNodeBase > > m_nodes; // 0x8 -}; - -// Alignment: 2 -// Size: 0x28 -class CAnimGraphModelBinding -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 -public: - CUtlString m_modelName; // 0x8 - CSmartPtr< CAnimUpdateSharedData > m_pSharedData; // 0x10 -}; - -// Alignment: 1 -// Size: 0x38 -class CAnimClipDataManager -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 -public: - CUtlHashtable< CUtlString, CSmartPtr< CAnimClipData > > m_itemTable; // 0x18 -}; - -// Alignment: 2 -// Size: 0x48 -class CAnimClipData -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x20]; // 0x0 -public: - // MPropertyHideField - CUtlVector< CSmartPtr< CAnimTagSpan > > m_tagSpans; // 0x20 - // MPropertyFriendlyName "Sequence" - // MPropertyAttributeChoiceName "Sequence" - CUtlString m_clipName; // 0x38 -}; - -// Alignment: 1 -// Size: 0x58 -class CAnimParameterList -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x20]; // 0x0 -public: - CUtlVector< CSmartPtr< CAnimParameterBase > > m_Parameters; // 0x20 -}; - -// Alignment: 1 -// Size: 0x28 -class CAnimNodeList -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 -public: - CUtlVector< CAnimNodeBase* > m_nodes; // 0x10 -}; - -// Alignment: 1 -// Size: 0x28 -class CAnimComponentManager -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 -public: - CUtlVector< CSmartPtr< CAnimComponentBase > > m_components; // 0x8 -}; - -// Alignment: 1 -// Size: 0x28 -class CAnimStateList -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 -public: - CUtlVector< CAnimState* > m_states; // 0x10 -}; - -// Alignment: 2 -// Size: 0x10 -class CAnimInputDamping -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 -public: - // MPropertyFriendlyName "Speed Function" - DampingSpeedFunction m_speedFunction; // 0x8 - // MPropertyFriendlyName "Speed Scale" - float m_fSpeedScale; // 0xc -}; - -// Alignment: 1 -// Size: 0x30 -class CAnimGraphSettingsManager -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 -public: - CUtlVector< CSmartPtr< CAnimGraphSettingsGroup > > m_settingsGroups; // 0x18 -}; - -// Alignment: 3 -// Size: 0x18 -class CFloatAnimValue -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 -public: - // MPropertyHideField - float m_flConstValue; // 0x8 - // MPropertyHideField - AnimParamID m_paramID; // 0xc - // MPropertyHideField - EAnimValueSource m_eSource; // 0x10 -}; - -// Alignment: 4 -// Size: 0x40 -class CCachedPose -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 -public: - CUtlVector< CTransform > m_transforms; // 0x8 - CUtlVector< float32 > m_morphWeights; // 0x20 - HSequence m_hSequence; // 0x38 - float m_flCycle; // 0x3c -}; - -// Alignment: 3 -// Size: 0x30 -class CStaticPoseCache -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 -public: - CUtlVector< CCachedPose > m_poses; // 0x10 - int32_t m_nBoneCount; // 0x28 - int32_t m_nMorphCount; // 0x2c -}; - -// Alignment: 0 -// Size: 0x38 -class CStaticPoseCacheBuilder : public CStaticPoseCache -{ -public: - // No members available -}; - -// Alignment: 10 -// Size: 0x100 -class CAnimUpdateSharedData -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 -public: - CUtlVector< CSmartPtr< CAnimUpdateNodeBase > > m_nodes; // 0x10 - CUtlHashtable< CAnimNodePath, int32 > m_nodeIndexMap; // 0x28 - CUtlVector< CSmartPtr< CAnimComponentUpdater > > m_components; // 0x48 - CSmartPtr< CAnimParameterListUpdater > m_pParamListUpdater; // 0x60 - CSmartPtr< CAnimTagManagerUpdater > m_pTagManagerUpdater; // 0x68 - CSmartPtr< CAnimScriptManager > m_scriptManager; // 0x70 - CAnimGraphSettingsManager m_settings; // 0x78 - CSmartPtr< CStaticPoseCacheBuilder > m_pStaticPoseCache; // 0xa8 - CSmartPtr< CAnimSkeleton > m_pSkeleton; // 0xb0 - CAnimNodePath m_rootNodePath; // 0xb8 -}; - -// Alignment: 2 -// Size: 0x20 -class CAnimParamSpanSample -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 -public: - CAnimVariant m_value; // 0x8 -private: - [[maybe_unused]] uint8_t __pad0019[0x3]; // 0x19 -public: - float m_flCycle; // 0x1c -}; - -// Alignment: 4 -// Size: 0x48 -class CAnimParamSpan -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x20]; // 0x0 -public: - CUtlVector< CAnimParamSpanSample > m_samples; // 0x20 - AnimParamID m_id; // 0x38 - float m_flStartCycle; // 0x3c - float m_flEndCycle; // 0x40 -}; - -// Alignment: 2 -// Size: 0x18 -struct ParamSpanSample_t -{ -public: - CAnimVariant m_value; // 0x0 - float m_flCycle; // 0x14 -}; - -// Alignment: 2 -// Size: 0x2 -class CAnimParamHandle -{ -public: - AnimParamType_t m_type; // 0x0 - uint8_t m_index; // 0x1 -}; - -// Alignment: 1 -// Size: 0x18 -class CParamSpanUpdater -{ -public: - CUtlVector< ParamSpan_t > m_spans; // 0x0 -}; - -// Alignment: 0 -// Size: 0x20 -class CAnimGraphSettingsGroup -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x20]; // 0x0 -public: - // No members available -}; - -// Alignment: 1 -// Size: 0x28 -class CAnimGraphNetworkSettings : public CAnimGraphSettingsGroup -{ -public: - // MPropertyFriendlyName "Enable Networking" - bool m_bNetworkingEnabled; // 0x20 -}; - -// Alignment: 5 -// Size: 0x38 -class CAnimComponentBase -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 -public: - // MPropertyHideField - CUtlString m_group; // 0x18 -private: - [[maybe_unused]] uint8_t __pad0020[0x8]; // 0x20 -public: - // MPropertyHideField - AnimComponentID m_id; // 0x28 - // MPropertyFriendlyName "Start Enabled" - bool m_bStartEnabled; // 0x2c -private: - [[maybe_unused]] uint8_t __pad002d[0x3]; // 0x2d -public: - // MPropertyFriendlyName "Priority" - int32_t m_nPriority; // 0x30 - // MPropertyFriendlyName "Network Mode" - AnimNodeNetworkMode m_networkMode; // 0x34 -}; - -// Alignment: 6 -// Size: 0xe0 -class CAnimationSubGraph -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 -public: - CAnimNodeManager m_nodeManager; // 0x8 - CAnimComponentManager m_componentManager; // 0x50 - CUtlVector< CSmartPtr< CAnimParameterBase > > m_localParameters; // 0x78 - CUtlVector< CSmartPtr< CAnimTagBase > > m_localTags; // 0x90 - CUtlVector< CUtlString > m_referencedParamGroups; // 0xa8 - CUtlVector< CUtlString > m_referencedTagGroups; // 0xc0 -}; - -// Alignment: 2 -// Size: 0x58 -class CAnimScriptComponent : public CAnimComponentBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 -public: - // MPropertyFriendlyName "Name" - // MPropertySortPriority "100" - CUtlString m_sName; // 0x40 - // MPropertyFriendlyName "Script File" - // MPropertyAttributeEditor "AssetBrowse( as )" - // MPropertyAttrChangeCallback - CUtlString m_scriptFilename; // 0x48 -}; - -// Alignment: 2 -// Size: 0x58 -class CActionComponent : public CAnimComponentBase -{ -public: - CUtlVector< CSmartPtr< CAnimActionBase > > m_actions; // 0x38 - // MPropertyFriendlyName "Name" - // MPropertySortPriority "100" - CUtlString m_sName; // 0x50 -}; - -// Alignment: 1 -// Size: 0x58 -class CCPPScriptComponent : public CAnimComponentBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 -public: - // MPropertyFriendlyName "Scripts" - CUtlVector< CUtlString > m_scriptsToRun; // 0x40 -}; - -// Alignment: 6 -// Size: 0x28 -class CDampedValueItem -{ -public: - // MPropertyFriendlyName "Value Type" - // MPropertyAttrChangeCallback - DampedValueType m_valueType; // 0x0 - // MPropertyFriendlyName "Parameter In" - // MPropertyAttributeChoiceName "FloatParameter" - // MPropertyAttrStateCallback - AnimParamID m_floatParamIn; // 0x4 - // MPropertyFriendlyName "Parameter Out" - // MPropertyAttributeChoiceName "PrivateFloatParameter" - // MPropertyAttrStateCallback - AnimParamID m_floatParamOut; // 0x8 - // MPropertyFriendlyName "Parameter In" - // MPropertyAttributeChoiceName "VectorParameter" - // MPropertyAttrStateCallback - AnimParamID m_vectorParamIn; // 0xc - // MPropertyFriendlyName "Parameter Out" - // MPropertyAttributeChoiceName "PrivateVectorParameter" - // MPropertyAttrStateCallback - AnimParamID m_vectorParamOut; // 0x10 -private: - [[maybe_unused]] uint8_t __pad0014[0x4]; // 0x14 -public: - // MPropertyFriendlyName "Damping" - CAnimInputDamping m_damping; // 0x18 -}; - -// Alignment: 2 -// Size: 0x58 -class CDampedValueComponent : public CAnimComponentBase -{ -public: - // MPropertyFriendlyName "Name" - CUtlString m_name; // 0x38 - // MPropertyFriendlyName "Items" - // MPropertyAutoExpandSelf - CUtlVector< CDampedValueItem > m_items; // 0x40 -}; - -// Alignment: 3 -// Size: 0x20 -class CDampedValueUpdateItem -{ -public: - CAnimInputDamping m_damping; // 0x0 - CAnimParamHandle m_hParamIn; // 0x18 - CAnimParamHandle m_hParamOut; // 0x1a -}; - -// Alignment: 7 -// Size: 0x108 -class CMovementComponent : public CAnimComponentBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 -public: - // MPropertyFriendlyName "Movement Modes" - CUtlVector< CMovementMode > m_moveModes; // 0x40 - // MPropertyHideField - CUtlVector< CSmartPtr< CAnimMotorBase > > m_motors; // 0x58 - // MPropertyFriendlyName "Network Path" - bool m_bNetworkPath; // 0x70 -private: - [[maybe_unused]] uint8_t __pad0071[0x3]; // 0x71 -public: - // MPropertyGroupName "+Facing" - // MPropertyFriendlyName "Default Mode" - FacingMode m_eDefaultFacingMode; // 0x74 - // MPropertyGroupName "+Facing" - // MPropertyFriendlyName "Damping" - CAnimInputDamping m_facingDamping; // 0x78 - // MPropertyGroupName "+Facing" - // MPropertyFriendlyName "Network Facing" - bool m_bNetworkFacing; // 0x88 -private: - [[maybe_unused]] uint8_t __pad0089[0x3]; // 0x89 -public: - // MPropertyHideField - AnimParamID m_paramIDs[30]; // 0x8c -}; - -// Alignment: 1 -// Size: 0x40 -class CLODComponent : public CAnimComponentBase -{ -public: - int32_t m_nServerLOD; // 0x38 -}; - -// Alignment: 8 -// Size: 0x60 -class CLookComponent : public CAnimComponentBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 -public: - // MPropertyFriendlyName "Network Look Target" - bool m_bNetworkLookTarget; // 0x40 -private: - [[maybe_unused]] uint8_t __pad0041[0x3]; // 0x41 -public: - // MPropertyHideField - AnimParamID m_lookHeadingID; // 0x44 - // MPropertyHideField - AnimParamID m_lookHeadingVelocityID; // 0x48 - // MPropertyHideField - AnimParamID m_lookPitchID; // 0x4c - // MPropertyHideField - AnimParamID m_lookDistanceID; // 0x50 - // MPropertyHideField - AnimParamID m_lookDirectionID; // 0x54 - // MPropertyHideField - AnimParamID m_lookTargetID; // 0x58 - // MPropertyHideField - AnimParamID m_lookTargetWorldSpaceID; // 0x5c -}; - -// Alignment: 2 -// Size: 0x10 -class CRigidBodyWeight -{ -public: - CUtlString m_name; // 0x0 - float m_flWeight; // 0x8 -}; - -// Alignment: 2 -// Size: 0x28 -class CRigidBodyWeightList -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 -public: - CUtlString m_name; // 0x8 - CUtlVector< CRigidBodyWeight > m_weights; // 0x10 -}; - -// Alignment: 3 -// Size: 0x58 -class CRagdollComponent : public CAnimComponentBase -{ -public: - CUtlVector< CRigidBodyWeightList > m_weightLists; // 0x38 - float m_flSpringFrequencyMin; // 0x50 - float m_flSpringFrequencyMax; // 0x54 -}; - -// Alignment: 2 -// Size: 0x20 -class WeightList -{ -public: - CUtlString m_name; // 0x0 - CUtlVector< float32 > m_weights; // 0x8 -}; - -// Alignment: 7 -// Size: 0x60 -class CSlopeComponent : public CAnimComponentBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 -public: - // MPropertyFriendlyName "Trace Distance" - float m_flTraceDistance; // 0x40 - // MPropertyHideField - AnimParamID m_slopeAngleID; // 0x44 - // MPropertyHideField - AnimParamID m_slopeHeadingID; // 0x48 - // MPropertyHideField - AnimParamID m_slopeAngleSideID; // 0x4c - // MPropertyHideField - AnimParamID m_slopeAngleFrontID; // 0x50 - // MPropertyHideField - AnimParamID m_slopeNormalID; // 0x54 - // MPropertyHideField - AnimParamID m_slopeNormal_WorldSpaceID; // 0x58 -}; - -// Alignment: 9 -// Size: 0x60 -class CVRInputComponent : public CAnimComponentBase -{ -public: - // MPropertyHideField - AnimParamID m_FingerCurl_Thumb; // 0x38 - // MPropertyHideField - AnimParamID m_FingerCurl_Index; // 0x3c - // MPropertyHideField - AnimParamID m_FingerCurl_Middle; // 0x40 - // MPropertyHideField - AnimParamID m_FingerCurl_Ring; // 0x44 - // MPropertyHideField - AnimParamID m_FingerCurl_Pinky; // 0x48 - // MPropertyHideField - AnimParamID m_FingerSplay_Thumb_Index; // 0x4c - // MPropertyHideField - AnimParamID m_FingerSplay_Index_Middle; // 0x50 - // MPropertyHideField - AnimParamID m_FingerSplay_Middle_Ring; // 0x54 - // MPropertyHideField - AnimParamID m_FingerSplay_Ring_Pinky; // 0x58 -}; - -// Alignment: 0 -// Size: 0x28 -class CAnimActionBase -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x28]; // 0x0 -public: - // No members available -}; - -// Alignment: 1 -// Size: 0x30 -class CEmitTagAction : public CAnimActionBase -{ -public: - // MPropertyFriendlyName "Tag" - // MPropertyAttributeChoiceName "Tag" - AnimTagID m_tag; // 0x28 -}; - -// Alignment: 2 -// Size: 0x40 -class CSetParameterAction : public CAnimActionBase -{ -public: - // MPropertyFriendlyName "Parameter" - // MPropertyAttributeChoiceName "Parameter" - AnimParamID m_param; // 0x28 - // MPropertyFriendlyName "Value" - CAnimVariant m_value; // 0x2c -}; - -// Alignment: 2 -// Size: 0x30 -class CToggleComponentAction : public CAnimActionBase -{ -public: - // MPropertyFriendlyName "Component" - // MPropertyAttributeChoiceName "Component" - AnimComponentID m_componentID; // 0x28 - // MPropertyFriendlyName "Set Enabled" - bool m_bSetEnabled; // 0x2c -}; - -// Alignment: 2 -// Size: 0x38 -class CExpressionAction : public CAnimActionBase -{ -public: - AnimParamID m_param; // 0x28 -private: - [[maybe_unused]] uint8_t __pad002c[0x4]; // 0x2c -public: - CUtlString m_expression; // 0x30 -}; - -// Alignment: 2 -// Size: 0x28 -class CAnimMotorBase -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 -public: - // MPropertyFriendlyName "Name" - // MPropertySortPriority "100" - CUtlString m_name; // 0x18 - // MPropertyFriendlyName "Is Default" - bool m_bDefault; // 0x20 -}; - -// Alignment: 1 -// Size: 0x30 -class CPathAnimMotorBase : public CAnimMotorBase -{ -public: - // MPropertyFriendlyName "Lock To Path" - // MPropertySortPriority "90" - bool m_bLockToPath; // 0x28 -}; - -// Alignment: 0 -// Size: 0x30 -class CPathAnimMotor : public CPathAnimMotorBase -{ -public: - // No members available -}; - -// Alignment: 7 -// Size: 0x50 -class CDampedPathAnimMotor : public CPathAnimMotorBase -{ -public: - // MPropertyFriendlyName "Anticipation Time" - float m_flAnticipationTime; // 0x30 - // MPropertyFriendlyName "Minimum Speed Percentage" - float m_flMinSpeedScale; // 0x34 - // MPropertyFriendlyName "Anticipation Position Parameter" - // MPropertyAttributeChoiceName "VectorParameter" - AnimParamID m_anticipationPosParam; // 0x38 - // MPropertyFriendlyName "Anticipation Heading Parameter" - // MPropertyAttributeChoiceName "FloatParameter" - AnimParamID m_anticipationHeadingParam; // 0x3c - // MPropertyFriendlyName "Spring Constant" - // MPropertyGroupName "+Stopping:Arrival Damping" - float m_flSpringConstant; // 0x40 - // MPropertyFriendlyName "Min Tension" - // MPropertyGroupName "+Stopping:Arrival Damping" - float m_flMinSpringTension; // 0x44 - // MPropertyFriendlyName "Max Tension" - // MPropertyGroupName "+Stopping:Arrival Damping" - float m_flMaxSpringTension; // 0x48 -}; - -// Alignment: 6 -// Size: 0x58 -class CPlayerInputAnimMotor : public CAnimMotorBase -{ -public: - // MPropertyFriendlyName "Sample Times" - CUtlVector< float32 > m_sampleTimes; // 0x28 - // MPropertyFriendlyName "Use Acceleration" - bool m_bUseAcceleration; // 0x40 -private: - [[maybe_unused]] uint8_t __pad0041[0x3]; // 0x41 -public: - // MPropertyFriendlyName "Spring Constant" - float m_flSpringConstant; // 0x44 - // MPropertyFriendlyName "Anticipation Distance" - float m_flAnticipationDistance; // 0x48 - // MPropertyFriendlyName "Anticipation Position Parameter" - // MPropertyAttributeChoiceName "VectorParameter" - AnimParamID m_anticipationPosParam; // 0x4c - // MPropertyFriendlyName "Anticipation Heading Parameter" - // MPropertyAttributeChoiceName "FloatParameter" - AnimParamID m_anticipationHeadingParam; // 0x50 -}; - -// Alignment: 12 -// Size: 0x78 -class CAnimParameterBase -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 -public: - // MPropertyFriendlyName "Name" - // MPropertySortPriority "100" - CAnimGraphSymbolWithStorage m_name; // 0x18 - // MPropertyHideField - CUtlString m_group; // 0x38 - // MPropertyHideField - AnimParamID m_id; // 0x40 -private: - [[maybe_unused]] uint8_t __pad0044[0x14]; // 0x44 -public: - // MPropertyHideField - // MPropertyAttrChangeCallback - CUtlString m_componentName; // 0x58 -private: - [[maybe_unused]] uint8_t __pad0060[0x4]; // 0x60 -public: - // MPropertyFriendlyName "Preview Button" - AnimParamButton_t m_previewButton; // 0x64 - // MPropertyFriendlyName "Force Latest Value" - bool m_bUseMostRecentValue; // 0x68 - // MPropertyFriendlyName "Auto Reset" - bool m_bAutoReset; // 0x69 -private: - [[maybe_unused]] uint8_t __pad006a[0x2]; // 0x6a -public: - // MPropertyFriendlyName "Network" - AnimParamNetworkSetting m_eNetworkSetting; // 0x6c - // MPropertyFriendlyName "Game Writable" - // MPropertyGroupName "+Permissions" - // MPropertyAttrStateCallback - bool m_bGameWritable; // 0x70 - // MPropertyFriendlyName "Graph Writable" - // MPropertyGroupName "+Permissions" - // MPropertyAttrStateCallback - bool m_bGraphWritable; // 0x71 - // MPropertyHideField - bool m_bIsReferenced; // 0x72 - // MPropertyHideField - bool m_bNetworkingRequested; // 0x73 -}; - -// Alignment: 1 -// Size: 0x80 -class CBoolAnimParameter : public CAnimParameterBase -{ -public: - // MPropertyFriendlyName "Default Value" - bool m_bDefaultValue; // 0x78 -}; - -// Alignment: 2 -// Size: 0xd0 -class CEnumAnimParameter : public CAnimParameterBase -{ -private: - [[maybe_unused]] uint8_t __pad0078[0x8]; // 0x78 -public: - // MPropertyFriendlyName "Default Value" - uint8_t m_defaultValue; // 0x80 -private: - [[maybe_unused]] uint8_t __pad0081[0x7]; // 0x81 -public: - // MPropertyFriendlyName "Values" - CUtlVector< CUtlString > m_enumOptions; // 0x88 -}; - -// Alignment: 3 -// Size: 0x88 -class CIntAnimParameter : public CAnimParameterBase -{ -public: - // MPropertyFriendlyName "Default Value" - int32_t m_defaultValue; // 0x78 - // MPropertyFriendlyName "Min Value" - int32_t m_minValue; // 0x7c - // MPropertyFriendlyName "Max Value" - int32_t m_maxValue; // 0x80 -}; - -// Alignment: 4 -// Size: 0x88 -class CFloatAnimParameter : public CAnimParameterBase -{ -public: - // MPropertyFriendlyName "Default Value" - float m_fDefaultValue; // 0x78 - // MPropertyFriendlyName "Min Value" - float m_fMinValue; // 0x7c - // MPropertyFriendlyName "Max Value" - float m_fMaxValue; // 0x80 - // MPropertyFriendlyName "Interpolate" - bool m_bInterpolate; // 0x84 -}; - -// Alignment: 2 -// Size: 0x88 -class CVectorAnimParameter : public CAnimParameterBase -{ -public: - // MPropertyFriendlyName "Default Value" - Vector m_defaultValue; // 0x78 - // MPropertyFriendlyName "Interpolate" - bool m_bInterpolate; // 0x84 -}; - -// Alignment: 2 -// Size: 0xa0 -class CQuaternionAnimParameter : public CAnimParameterBase -{ -private: - [[maybe_unused]] uint8_t __pad0078[0x8]; // 0x78 -public: - // MPropertyFriendlyName "Default Value" - Quaternion m_defaultValue; // 0x80 - // MPropertyFriendlyName "Interpolate" - bool m_bInterpolate; // 0x90 -}; - -// Alignment: 4 -// Size: 0x38 -class CAnimNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x20]; // 0x0 -public: - // MPropertyFriendlyName "Name" - // MPropertySortPriority "100" - CUtlString m_sName; // 0x20 - // MPropertyHideField - Vector2D m_vecPosition; // 0x28 - // MPropertyHideField - AnimNodeID m_nNodeID; // 0x30 - // MPropertyFriendlyName "Network Mode" - AnimNodeNetworkMode m_networkMode; // 0x34 -}; - -// Alignment: 5 -// Size: 0xa8 -class CSequenceAnimNode : public CAnimNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x30]; // 0x38 -public: - // MPropertyHideField - CUtlVector< CSmartPtr< CAnimTagSpan > > m_tagSpans; // 0x68 - // MPropertyHideField - CUtlVector< CSmartPtr< CAnimParamSpan > > m_paramSpans; // 0x80 - // MPropertyFriendlyName "Sequence" - // MPropertyAttributeChoiceName "Sequence" - CUtlString m_sequenceName; // 0x98 - // MPropertyFriendlyName "Playback Speed" - float m_playbackSpeed; // 0xa0 - // MPropertyFriendlyName "Loop" - bool m_bLoop; // 0xa4 -}; - -// Alignment: 3 -// Size: 0x20 -class CBlendNodeChild -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x8 - // MPropertyFriendlyName "Name" - CUtlString m_name; // 0x10 - // MPropertyFriendlyName "Blend Value" - float m_blendValue; // 0x18 -}; - -// Alignment: 9 -// Size: 0x80 -class CBlendAnimNode : public CAnimNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x10]; // 0x38 -public: - // MPropertyFriendlyName "Blend Items" - // MPropertyAutoExpandSelf - CUtlVector< CBlendNodeChild > m_children; // 0x48 - // MPropertyFriendlyName "Blend Source" - // MPropertyAttrChangeCallback - // MPropertyAttrStateCallback - AnimValueSource m_blendValueSource; // 0x60 - // MPropertyFriendlyName "Parameter" - // MPropertyAttributeChoiceName "FloatParameter" - AnimParamID m_param; // 0x64 - // MPropertyFriendlyName "Blend Key Values" - BlendKeyType m_blendKeyType; // 0x68 - // MPropertyFriendlyName "Lock Blend on Reset" - bool m_bLockBlendOnReset; // 0x6c - // MPropertyFriendlyName "Sync Cycles" - bool m_bSyncCycles; // 0x6d - // MPropertyFriendlyName "Loop" - bool m_bLoop; // 0x6e - // MPropertyFriendlyName "Lock Blend When Waning" - bool m_bLockWhenWaning; // 0x6f - // MPropertyFriendlyName "Damping" - CAnimInputDamping m_damping; // 0x70 -}; - -// Alignment: 3 -// Size: 0x50 -class CRagdollAnimNode : public CAnimNodeBase -{ -public: - CUtlString m_weightListName; // 0x38 - RagdollPoseControl m_poseControlMethod; // 0x40 - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x44 -}; - -// Alignment: 1 -// Size: 0x58 -class CRootAnimNode : public CAnimNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x18]; // 0x38 -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x50 -}; - -// Alignment: 4 -// Size: 0x18 -class CChoiceNodeChild -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x0 - // MPropertyFriendlyName "Name" - CUtlString m_name; // 0x8 - // MPropertyFriendlyName "Weight" - float m_weight; // 0x10 - // MPropertyFriendlyName "Blend Time" - float m_blendTime; // 0x14 -}; - -// Alignment: 9 -// Size: 0x68 -class CChoiceAnimNode : public CAnimNodeBase -{ -public: - // MPropertyFriendlyName "Options" - // MPropertyAutoExpandSelf - CUtlVector< CChoiceNodeChild > m_children; // 0x38 - // MPropertyHideField - int32_t m_seed; // 0x50 - // MPropertyFriendlyName "Method" - ChoiceMethod m_choiceMethod; // 0x54 - // MPropertyFriendlyName "Change Selection" - ChoiceChangeMethod m_choiceChangeMethod; // 0x58 - // MPropertyGroupName "Blending" - // MPropertyFriendlyName "Blend Method" - // MPropertyAttrChangeCallback - ChoiceBlendMethod m_blendMethod; // 0x5c - // MPropertyGroupName "Blending" - // MPropertyFriendlyName "Blend Duration" - // MPropertyAttrStateCallback - float m_blendTime; // 0x60 - // MPropertyGroupName "Blending" - // MPropertyFriendlyName "Cross Fade" - bool m_bCrossFade; // 0x64 - // MPropertyFriendlyName "Reset On Selection" - // MPropertyAttrChangeCallback - bool m_bResetChosen; // 0x65 - // MPropertyFriendlyName "Don't Reset Same Selection" - // MPropertyAttrStateCallback - bool m_bDontResetSameSelection; // 0x66 -}; - -// Alignment: 3 -// Size: 0x48 -class CCycleControlAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Blend Source" - // MPropertyAttrChangeCallback - // MPropertyAttrStateCallback - AnimValueSource m_valueSource; // 0x40 - // MPropertyFriendlyName "Parameter" - // MPropertyAttributeChoiceName "FloatParameter" - AnimParamID m_param; // 0x44 -}; - -// Alignment: 4 -// Size: 0x78 -class CCycleControlClipAnimNode : public CAnimNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x18]; // 0x38 -public: - // MPropertyHideField - CUtlVector< CSmartPtr< CAnimTagSpan > > m_tagSpans; // 0x50 - // MPropertyFriendlyName "Sequence" - // MPropertyAttributeChoiceName "Sequence" - CUtlString m_sequenceName; // 0x68 - // MPropertyFriendlyName "Blend Source" - // MPropertyAttrChangeCallback - // MPropertyAttrStateCallback - AnimValueSource m_valueSource; // 0x70 - // MPropertyFriendlyName "Parameter" - // MPropertyAttributeChoiceName "FloatParameter" - AnimParamID m_param; // 0x74 -}; - -// Alignment: 10 -// Size: 0x60 -class CAddAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_baseInput; // 0x38 - // MPropertyHideField - CAnimNodeConnection m_additiveInput; // 0x40 - // MPropertyFriendlyName "Timing Control" - // MPropertyAttrChangeCallback - BinaryNodeTiming m_timingBehavior; // 0x48 - // MPropertyFriendlyName "Timing Blend" - // MPropertyAttributeRange "0 1" - // MPropertyAttrStateCallback - float m_flTimingBlend; // 0x4c - // MPropertyFriendlyName "Foot Motion Timing" - BinaryNodeChildOption m_footMotionTiming; // 0x50 - // MPropertyFriendlyName "Add Foot Motion" - bool m_bApplyToFootMotion; // 0x54 - // MPropertyFriendlyName "Reset Base Child" - bool m_bResetBase; // 0x55 - // MPropertyFriendlyName "Reset Additive Child" - bool m_bResetAdditive; // 0x56 - // MPropertyFriendlyName "Treat Translation Separately" - bool m_bApplyChannelsSeparately; // 0x57 - // MPropertyFriendlyName "Use Model Space" - bool m_bUseModelSpace; // 0x58 -}; - -// Alignment: 10 -// Size: 0x60 -class CSubtractAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_baseInputConnection; // 0x38 - // MPropertyHideField - CAnimNodeConnection m_subtractInputConnection; // 0x40 - // MPropertyFriendlyName "Timing Control" - // MPropertyAttrChangeCallback - BinaryNodeTiming m_timingBehavior; // 0x48 - // MPropertyFriendlyName "Timing Blend" - // MPropertyAttributeRange "0 1" - // MPropertyAttrStateCallback - float m_flTimingBlend; // 0x4c - // MPropertyFriendlyName "Foot Motion Timing" - BinaryNodeChildOption m_footMotionTiming; // 0x50 - // MPropertyFriendlyName "Subtract Foot Motion" - bool m_bApplyToFootMotion; // 0x54 - // MPropertyFriendlyName "Reset Base Child" - bool m_bResetBase; // 0x55 - // MPropertyFriendlyName "Reset Subtracted Child" - bool m_bResetSubtract; // 0x56 - // MPropertyFriendlyName "Treat Translation Separately" - bool m_bApplyChannelsSeparately; // 0x57 - // MPropertyFriendlyName "Use Model Space" - bool m_bUseModelSpace; // 0x58 -}; - -// Alignment: 13 -// Size: 0x78 -class CMoverAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Generate Movement" - // MPropertyGroupName "Generate Movement" - // MPropertyAttrChangeCallback - bool m_bApplyMovement; // 0x40 -private: - [[maybe_unused]] uint8_t __pad0041[0x3]; // 0x41 -public: - // MPropertyFriendlyName "Movement Velocity Parameter" - // MPropertyGroupName "Generate Movement" - // MPropertyAttributeChoiceName "VectorParameter" - // MPropertyAttrStateCallback - AnimParamID m_moveVectorParam; // 0x44 - // MPropertyFriendlyName "Orient Movement" - // MPropertyGroupName "Orient Movement" - // MPropertyAttrChangeCallback - bool m_bOrientMovement; // 0x48 -private: - [[maybe_unused]] uint8_t __pad0049[0x3]; // 0x49 -public: - // MPropertyFriendlyName "Movement Heading Parameter" - // MPropertyGroupName "Orient Movement" - // MPropertyAttributeChoiceName "FloatParameter" - // MPropertyAttrStateCallback - AnimParamID m_moveHeadingParam; // 0x4c - // MPropertyFriendlyName "Additive" - bool m_bAdditive; // 0x50 - // MPropertyFriendlyName "Turn to Face" - // MPropertyGroupName "Turn to Face" - // MPropertyAttrChangeCallback - bool m_bTurnToFace; // 0x51 -private: - [[maybe_unused]] uint8_t __pad0052[0x2]; // 0x52 -public: - // MPropertyFriendlyName "Face Direction" - // MPropertyGroupName "Turn to Face" - // MPropertyAttrChangeCallback - // MPropertyAttrStateCallback - AnimValueSource m_facingTarget; // 0x54 - // MPropertyFriendlyName "Facing Parameter" - // MPropertyGroupName "Turn to Face" - // MPropertyAttributeChoiceName "FloatParameter" - // MPropertyAttrStateCallback - AnimParamID m_param; // 0x58 - // MPropertyFriendlyName "Turn Limit Only" - // MPropertyGroupName "Turn to Face" - // MPropertyAttrStateCallback - // MPropertyAttrChangeCallback - bool m_bLimitOnly; // 0x5c -private: - [[maybe_unused]] uint8_t __pad005d[0x3]; // 0x5d -public: - // MPropertyFriendlyName "Turn to Face Offset" - // MPropertyAttributeRange "-180 180" - // MPropertyGroupName "Turn to Face" - // MPropertyAttrStateCallback - float m_flTurnToFaceOffset; // 0x60 - // MPropertyFriendlyName "Turn to Face Limit" - // MPropertyAttributeRange "0 180" - // MPropertyGroupName "Turn to Face" - // MPropertyAttrStateCallback - float m_flTurnToFaceLimit; // 0x64 - // MPropertyFriendlyName "Damping" - // MPropertyGroupName "Turn to Face" - // MPropertyAttrStateCallback - CAnimInputDamping m_damping; // 0x68 -}; - -// Alignment: 2 -// Size: 0x48 -class CSlowDownOnSlopesAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Slow Down Strength" - // MPropertyAttributeRange "0.1 2" - float m_flSlowDownStrength; // 0x40 -}; - -// Alignment: 7 -// Size: 0x58 -class CTurnHelperAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Turn to Face" - AnimValueSource m_facingTarget; // 0x40 - // MPropertyFriendlyName "Turn Start Time" - float m_turnStartTime; // 0x44 - // MPropertyFriendlyName "Turn Duration" - float m_turnDuration; // 0x48 - // MPropertyFriendlyName "Match Child Duration" - bool m_bMatchChildDuration; // 0x4c - // MPropertyFriendlyName "Use Manual Turn Offset" - bool m_bUseManualTurnOffset; // 0x4d -private: - [[maybe_unused]] uint8_t __pad004e[0x2]; // 0x4e -public: - // MPropertyFriendlyName "Manual Turn Offset" - float m_manualTurnOffset; // 0x50 -}; - -// Alignment: 11 -// Size: 0x90 -class CAimMatrixAnimNode : public CAnimNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x40 - // MPropertyFriendlyName "Sequence" - // MPropertyAttributeChoiceName "Sequence" - CUtlString m_sequenceName; // 0x48 - // MPropertyFriendlyName "Angle Increment" - float m_fAngleIncrement; // 0x50 - // MPropertyFriendlyName "Target" - AnimVectorSource m_target; // 0x54 - // MPropertyFriendlyName "Parameter" - // MPropertyAttributeChoiceName "VectorParameter" - AnimParamID m_param; // 0x58 -private: - [[maybe_unused]] uint8_t __pad005c[0x4]; // 0x5c -public: - // MPropertyFriendlyName "Aim Attachment" - // MPropertyAttributeChoiceName "Attachment" - CUtlString m_attachmentName; // 0x60 - // MPropertyFriendlyName "Blend Mode" - // MPropertyAttrChangeCallback - AimMatrixBlendMode m_blendMode; // 0x68 -private: - [[maybe_unused]] uint8_t __pad006c[0x4]; // 0x6c -public: - // MPropertyFriendlyName "Bone Mask" - // MPropertyAttributeChoiceName "BoneMask" - // MPropertyAttrStateCallback - CUtlString m_boneMaskName; // 0x70 - // MPropertyFriendlyName "Reset Child" - bool m_bResetBase; // 0x78 - // MPropertyFriendlyName "Lock Blend When Waning" - bool m_bLockWhenWaning; // 0x79 -private: - [[maybe_unused]] uint8_t __pad007a[0x6]; // 0x7a -public: - // MPropertyFriendlyName "Damping" - CAnimInputDamping m_damping; // 0x80 -}; - -// Alignment: 2 -// Size: 0x48 -class CSpeedScaleAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Parameter" - // MPropertyAttributeChoiceName "FloatParameter" - AnimParamID m_param; // 0x40 -}; - -// Alignment: 7 -// Size: 0x68 -class CDirectionalBlendAnimNode : public CAnimNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 -public: - // MPropertyFriendlyName "Sequence Names Prefix" - CUtlString m_animNamePrefix; // 0x40 - // MPropertyFriendlyName "Blend Source" - // MPropertyAttrChangeCallback - // MPropertyAttrStateCallback - AnimValueSource m_blendValueSource; // 0x48 - // MPropertyFriendlyName "Parameter" - // MPropertyAttributeChoiceName "FloatParameter" - AnimParamID m_param; // 0x4c - // MPropertyFriendlyName "Loop" - bool m_bLoop; // 0x50 - // MPropertyFriendlyName "Lock Blend on Reset" - bool m_bLockBlendOnReset; // 0x51 -private: - [[maybe_unused]] uint8_t __pad0052[0x2]; // 0x52 -public: - // MPropertyFriendlyName "Playback Speed" - float m_playbackSpeed; // 0x54 - // MPropertyFriendlyName "Damping" - CAnimInputDamping m_damping; // 0x58 -}; - -// Alignment: 6 -// Size: 0x50 -class CWayPointHelperAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Start Cycle" - // MPropertyAttributeRange "0 1" - float m_flStartCycle; // 0x40 - // MPropertyFriendlyName "End Cycle" - // MPropertyAttributeRange "0 1" - float m_flEndCycle; // 0x44 - // MPropertyFriendlyName "Only align to Goals" - bool m_bOnlyGoals; // 0x48 - // MPropertyFriendlyName "Prevent Overshoot" - bool m_bPreventOvershoot; // 0x49 - // MPropertyFriendlyName "Prevent Undershoot" - bool m_bPreventUndershoot; // 0x4a -}; - -// Alignment: 13 -// Size: 0x78 -class CBoneMaskAnimNode : public CAnimNodeBase -{ -public: - // MPropertyFriendlyName "Bone Mask" - // MPropertyAttributeChoiceName "BoneMask" - CUtlString m_weightListName; // 0x38 - // MPropertyHideField - CAnimNodeConnection m_inputConnection1; // 0x40 - // MPropertyHideField - CAnimNodeConnection m_inputConnection2; // 0x48 - // MPropertyFriendlyName "Blend Space" - BoneMaskBlendSpace m_blendSpace; // 0x50 - // MPropertyFriendlyName "Use Blend Source" - // MPropertyAttrChangeCallback - bool m_bUseBlendScale; // 0x54 -private: - [[maybe_unused]] uint8_t __pad0055[0x3]; // 0x55 -public: - // MPropertyFriendlyName "Blend Source" - // MPropertyAttrChangeCallback - // MPropertyAttrStateCallback - AnimValueSource m_blendValueSource; // 0x58 - // MPropertyFriendlyName "Blend Parameter" - // MPropertyAttributeChoiceName "FloatParameter" - // MPropertyAttrStateCallback - AnimParamID m_blendParameter; // 0x5c - // MPropertyFriendlyName "Timing Control" - // MPropertyAttrChangeCallback - BinaryNodeTiming m_timingBehavior; // 0x60 - // MPropertyFriendlyName "Timing Blend" - // MPropertyAttributeRange "0 1" - // MPropertyAttrStateCallback - float m_flTimingBlend; // 0x64 - // MPropertyFriendlyName "Root Motion Blend" - // MPropertyAttributeRange "0 1" - float m_flRootMotionBlend; // 0x68 - // MPropertyFriendlyName "Foot Motion Timing" - BinaryNodeChildOption m_footMotionTiming; // 0x6c - // MPropertyFriendlyName "Reset Child1" - bool m_bResetChild1; // 0x70 - // MPropertyFriendlyName "Reset Child2" - bool m_bResetChild2; // 0x71 -}; - -// Alignment: 1 -// Size: 0x40 -class CChoreoAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 -}; - -// Alignment: 3 -// Size: 0x48 -class CDirectPlaybackAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Finish Early" - bool m_bFinishEarly; // 0x40 - // MPropertyFriendlyName "Reset Child On Finish" - bool m_bResetOnFinish; // 0x41 -}; - -// Alignment: 7 -// Size: 0x80 -class CLeanMatrixAnimNode : public CAnimNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 -public: - // MPropertyFriendlyName "Sequence" - // MPropertyAttributeChoiceName "Sequence" - CUtlString m_sequenceName; // 0x40 - // MPropertyFriendlyName "Max Value" - float m_flMaxValue; // 0x48 - // MPropertyFriendlyName "Blend Source" - AnimVectorSource m_blendSource; // 0x4c - // MPropertyFriendlyName "Parameter" - // MPropertyAttributeChoiceName "VectorParameter" - AnimParamID m_param; // 0x50 - // MPropertyFriendlyName "Vertical Axis" - Vector m_verticalAxisDirection; // 0x54 - // MPropertyFriendlyName "Horizontal Axis" - Vector m_horizontalAxisDirection; // 0x60 -private: - [[maybe_unused]] uint8_t __pad006c[0x4]; // 0x6c -public: - // MPropertyFriendlyName "Damping" - CAnimInputDamping m_damping; // 0x70 -}; - -// Alignment: 13 -// Size: 0x88 -class CTwoBoneIKAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "IK Chain" - // MPropertyAttributeChoiceName "IKChain" - CUtlString m_ikChainName; // 0x40 - // MPropertyFriendlyName "Auto-Detect Hinge Axis" - bool m_bAutoDetectHingeAxis; // 0x48 -private: - [[maybe_unused]] uint8_t __pad0049[0x3]; // 0x49 -public: - // MPropertyGroupName "End Effector" - // MPropertyFriendlyName "End Effector Type" - // MPropertyAttrChangeCallback - IkEndEffectorType m_endEffectorType; // 0x4c - // MPropertyGroupName "End Effector" - // MPropertyFriendlyName "Attachment" - // MPropertyAttributeChoiceName "Attachment" - // MPropertyAttrStateCallback - CUtlString m_endEffectorAttachmentName; // 0x50 - // MPropertyGroupName "Target" - // MPropertyFriendlyName "Target Type" - // MPropertyAttrChangeCallback - IkTargetType m_targetType; // 0x58 -private: - [[maybe_unused]] uint8_t __pad005c[0x4]; // 0x5c -public: - // MPropertyGroupName "Target" - // MPropertyFriendlyName "Attachment" - // MPropertyAttributeChoiceName "Attachment" - // MPropertyAttrStateCallback - CUtlString m_attachmentName; // 0x60 - // MPropertyGroupName "Target" - // MPropertyFriendlyName "Bone" - // MPropertyAttributeChoiceName "Bone" - // MPropertyAttrStateCallback - CUtlString m_targetBoneName; // 0x68 - // MPropertyGroupName "Target" - // MPropertyFriendlyName "Position Parameter" - // MPropertyAttributeChoiceName "VectorParameter" - // MPropertyAttrStateCallback - AnimParamID m_targetParam; // 0x70 - // MPropertyGroupName "Target" - // MPropertyFriendlyName "Match Target Orientation" - // MPropertyAttrChangeCallback - bool m_bMatchTargetOrientation; // 0x74 -private: - [[maybe_unused]] uint8_t __pad0075[0x3]; // 0x75 -public: - // MPropertyGroupName "Target" - // MPropertyFriendlyName "Rotation Parameter" - // MPropertyAttributeChoiceName "QuaternionParameter" - // MPropertyAttrStateCallback - AnimParamID m_rotationParam; // 0x78 - // MPropertyGroupName "Target" - // MPropertyFriendlyName "Constrain Twist" - // MPropertyAttrStateCallback - bool m_bConstrainTwist; // 0x7c -private: - [[maybe_unused]] uint8_t __pad007d[0x3]; // 0x7d -public: - // MPropertyGroupName "Target" - // MPropertyFriendlyName "Max Twist" - // MPropertyAttrStateCallback - float m_flMaxTwist; // 0x80 -}; - -// Alignment: 8 -// Size: 0x58 -class CSolveIKChainAnimNodeChainData -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 -public: - // MPropertyFriendlyName "IK Chain" - // MPropertyAttributeChoiceName "IKChain" - CUtlString m_IkChain; // 0x8 - // MPropertyFriendlyName "Solver Setting Source" - // MPropertyAttributeChoiceEnumName - // MPropertyAttrChangeCallback - SolveIKChainAnimNodeSettingSource m_SolverSettingSource; // 0x10 - // MPropertyFriendlyName "Override Solver Settings" - // MPropertyAutoExpandSelf - // MPropertyAttrStateCallback - IKSolverSettings_t m_OverrideSolverSettings; // 0x14 - // MPropertyFriendlyName "Target Setting Source" - // MPropertyAttributeChoiceEnumName - // MPropertyAttrChangeCallback - SolveIKChainAnimNodeSettingSource m_TargetSettingSource; // 0x1c - // MPropertyFriendlyName "Override Target Settings" - // MPropertyAutoExpandSelf - // MPropertyAttrStateCallback - IKTargetSettings_t m_OverrideTargetSettings; // 0x20 - // MPropertyFriendlyName "Debug Setting" - // MPropertyGroupName "Debug" - SolveIKChainAnimNodeDebugSetting m_DebugSetting; // 0x40 - // MPropertyFriendlyName "Debug Normalized Length" - // MPropertyGroupName "Debug" - float m_flDebugNormalizedLength; // 0x44 - // MPropertyFriendlyName "Debug Offset" - // MPropertyGroupName "Debug" - Vector m_vDebugOffset; // 0x48 -}; - -// Alignment: 2 -// Size: 0x60 -class CSolveIKChainAnimNode : public CAnimNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x40 - // MPropertyFriendlyName "IK Chains" - // MPropertyAutoExpandSelf - CUtlVector< CSolveIKChainAnimNodeChainData > m_IkChains; // 0x48 -}; - -// Alignment: 17 -// Size: 0x88 -class CLookAtAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Target" - // MPropertyAttrChangeCallback - AnimVectorSource m_target; // 0x40 - // MPropertyFriendlyName "Target Parameter" - // MPropertyAttributeChoiceName "VectorParameter" - // MPropertyAttrStateCallback - AnimParamID m_param; // 0x44 - // MPropertyFriendlyName "Parameter is a Position" - // MPropertyAttrStateCallback - bool m_bIsPosition; // 0x48 -private: - [[maybe_unused]] uint8_t __pad0049[0x3]; // 0x49 -public: - // MPropertyFriendlyName "Weight Parameter" - // MPropertyAttributeChoiceName "FloatParameter" - AnimParamID m_weightParam; // 0x4c - // MPropertyFriendlyName "LookAt Chain" - // MPropertyAttributeChoiceName "LookAtChain" - CUtlString m_lookatChainName; // 0x50 - // MPropertyFriendlyName "Aim Attachment" - // MPropertyAttributeChoiceName "Attachment" - CUtlString m_attachmentName; // 0x58 - // MPropertyFriendlyName "Rotate Through Forward" - // MPropertyGroupName "Rotation Limits" - // MPropertyAttrChangeCallback - bool m_bRotateYawForward; // 0x60 -private: - [[maybe_unused]] uint8_t __pad0061[0x3]; // 0x61 -public: - // MPropertyFriendlyName "Yaw Limit" - // MPropertyAttributeRange "0 180" - // MPropertyGroupName "Rotation Limits" - // MPropertyAttrStateCallback - float m_flYawLimit; // 0x64 - // MPropertyFriendlyName "Pitch Limit" - // MPropertyAttributeRange "0 90" - // MPropertyGroupName "Rotation Limits" - float m_flPitchLimit; // 0x68 - // MPropertyFriendlyName "Maintain Up Direction" - bool m_bMaintainUpDirection; // 0x6c - // MPropertyFriendlyName "Reset Child" - bool m_bResetBase; // 0x6d - // MPropertyFriendlyName "Lock Blend When Waning" - bool m_bLockWhenWaning; // 0x6e - // MPropertyFriendlyName "Use Hysteresis" - // MPropertyGroupName "Hysteresis" - bool m_bUseHysteresis; // 0x6f - // MPropertyFriendlyName "Inner Angle" - // MPropertyGroupName "Hysteresis" - float m_flHysteresisInnerAngle; // 0x70 - // MPropertyFriendlyName "Outer Angle" - // MPropertyGroupName "Hysteresis" - float m_flHysteresisOuterAngle; // 0x74 - // MPropertyFriendlyName "Damping" - CAnimInputDamping m_damping; // 0x78 -}; - -// Alignment: 3 -// Size: 0x48 -class CPathHelperAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Stopping Radius" - float m_flStoppingRadius; // 0x40 - // MPropertyFriendlyName "Stopping Min Speed Scale" - float m_flStoppingSpeedScale; // 0x44 -}; - -// Alignment: 3 -// Size: 0x18 -class CConnectionProxyItem -{ -public: - // MPropertyFriendlyName "Name" - CUtlString m_name; // 0x0 - // MPropertyHideField - AnimNodeOutputID m_outputID; // 0x8 - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0xc -}; - -// Alignment: 1 -// Size: 0x58 -class CProxyAnimNodeBase : public CAnimNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 -public: - // MPropertyFriendlyName "External Connections" - // MPropertyAutoExpandSelf - // MPropertyAttrChangeCallback - CUtlVector< CConnectionProxyItem > m_proxyItems; // 0x40 -}; - -// Alignment: 5 -// Size: 0x58 -class CFollowAttachmentAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Bone" - // MPropertyAttributeChoiceName "Bone" - CUtlString m_boneName; // 0x40 - // MPropertyFriendlyName "Target Attachment" - // MPropertyAttributeChoiceName "Attachment" - CUtlString m_attachmentName; // 0x48 - // MPropertyFriendlyName "Match Translation" - bool m_bMatchTranslation; // 0x50 - // MPropertyFriendlyName "Match Rotation" - bool m_bMatchRotation; // 0x51 -}; - -// Alignment: 4 -// Size: 0x48 -class CSkeletalInputAnimNode : public CAnimNodeBase -{ -public: - // MPropertyFriendlyName "Data Source" - // MPropertyAttrChangeCallback - AnimVrBoneTransformSource_t m_transformSource; // 0x38 - // MPropertyFriendlyName "Motion Range" - // MPropertyAttrStateCallback - AnimVRHandMotionRange_t m_motionRange; // 0x3c - // MPropertyFriendlyName "Enable IK" - // MPropertyGroupName "+Retargetting" - bool m_bEnableIK; // 0x40 - // MPropertyFriendlyName "Enable Collision" - // MPropertyGroupName "+Retargetting" - bool m_bEnableCollision; // 0x41 -}; - -// Alignment: 6 -// Size: 0x60 -class CStanceOverrideAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyHideField - CAnimNodeConnection m_stanceSourceConnection; // 0x40 - // MPropertyFriendlyName "Blend Parameter (optional)" - // MPropertyAttributeChoiceName "FloatParameter" - AnimParamID m_blendParamID; // 0x48 - // MPropertyFriendlyName "Stance Source" - // MPropertyAttrChangeCallback - StanceOverrideMode m_eMode; // 0x4c - // MPropertyFriendlyName "Sequence" - // MPropertyAttributeChoiceName "Sequence" - // MPropertyAttrStateCallback - CUtlString m_sequenceName; // 0x50 - // MPropertyFriendlyName "Frame" - // MPropertyAttrStateCallback - int32_t m_nFrameIndex; // 0x58 -}; - -// Alignment: 2 -// Size: 0x48 -class CStanceScaleAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Parameter" - // MPropertyAttributeChoiceName "FloatParameter" - AnimParamID m_param; // 0x40 -}; - -// Alignment: 10 -// Size: 0xa8 -class CSelectorAnimNode : public CAnimNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 -public: - // MPropertySuppressField - CUtlVector< CAnimNodeConnection > m_children; // 0x40 - // MPropertyHideField - CUtlVector< AnimTagID > m_tags; // 0x58 - // MPropertyFriendlyName "Selection Source" - // MPropertyAttrChangeCallback - SelectionSource_t m_selectionSource; // 0x70 - // MPropertyFriendlyName "Bool Parameter" - // MPropertyAttributeChoiceName "BoolParameter" - // MPropertyAttrChangeCallback - // MPropertyAttrStateCallback - AnimParamID m_boolParamID; // 0x74 - // MPropertyFriendlyName "Enum Parameter" - // MPropertyAttributeChoiceName "EnumParameter" - // MPropertyAttrChangeCallback - // MPropertyAttrStateCallback - AnimParamID m_enumParamID; // 0x78 -private: - [[maybe_unused]] uint8_t __pad007c[0x4]; // 0x7c -public: - // MPropertyFriendlyName "Blend Duration" - CFloatAnimValue m_blendDuration; // 0x80 - // MPropertyFriendlyName "Tag Behavior" - SelectorTagBehavior_t m_tagBehavior; // 0x98 - // MPropertyFriendlyName "Reset On Change" - bool m_bResetOnChange; // 0x9c - // MPropertyFriendlyName "Start new option at same cycle" - bool m_bSyncCyclesOnChange; // 0x9d -private: - [[maybe_unused]] uint8_t __pad009e[0x2]; // 0x9e -public: - // MPropertyHideField - CBlendCurve m_blendCurve; // 0xa0 -}; - -// Alignment: 24 -// Size: 0xa8 -class CHitReactAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Minimum Delay Between Hits" - float m_flMinDelayBetweenHits; // 0x40 - // MPropertyFriendlyName "Trigger Parameter" - // MPropertyAttributeChoiceName "BoolParameter" - AnimParamID m_triggerParam; // 0x44 - // MPropertyFriendlyName "Hit Bone Parameter" - // MPropertyAttributeChoiceName "IntParameter" - AnimParamID m_hitBoneParam; // 0x48 - // MPropertyFriendlyName "Hit Offset Parameter" - // MPropertyAttributeChoiceName "VectorParameter" - AnimParamID m_hitOffsetParam; // 0x4c - // MPropertyFriendlyName "Hit Direction Parameter" - // MPropertyAttributeChoiceName "VectorParameter" - AnimParamID m_hitDirectionParam; // 0x50 - // MPropertyFriendlyName "Hit Strength Parameter" - // MPropertyAttributeChoiceName "FloatParameter" - AnimParamID m_hitStrengthParam; // 0x54 - // MPropertyFriendlyName "Bone Weights" - // MPropertyAttributeChoiceName "BoneMask" - CUtlString m_weightListName; // 0x58 - // MPropertyFriendlyName "Hip Bone" - // MPropertyAttributeChoiceName "Bone" - CUtlString m_hipBoneName; // 0x60 - // MPropertyFriendlyName "Hip Translation Scale" - float m_flHipBoneTranslationScale; // 0x68 - // MPropertyFriendlyName "Number of bone effected" - int32_t m_nEffectedBoneCount; // 0x6c - // MPropertyFriendlyName "Max Impact Force" - float m_flMaxImpactForce; // 0x70 - // MPropertyFriendlyName "Min Impact Force" - float m_flMinImpactForce; // 0x74 - // MPropertyFriendlyName "Whip Impact Scale" - float m_flWhipImpactScale; // 0x78 - // MPropertyFriendlyName "Counter Rotation Scale" - float m_flCounterRotationScale; // 0x7c - // MPropertyFriendlyName "Distance Fade Scale" - float m_flDistanceFadeScale; // 0x80 - // MPropertyFriendlyName "Propagation Scale" - float m_flPropagationScale; // 0x84 - // MPropertyFriendlyName "Whip Delay Time" - float m_flWhipDelay; // 0x88 - // MPropertyFriendlyName "Spring Strength" - float m_flSpringStrength; // 0x8c - // MPropertyFriendlyName "Whip Spring Strength" - float m_flWhipSpringStrength; // 0x90 - // MPropertyFriendlyName "Hip Dip Spring Strength" - float m_flHipDipSpringStrength; // 0x94 - // MPropertyFriendlyName "Hip Dip Scale" - float m_flHipDipImpactScale; // 0x98 - // MPropertyFriendlyName "Hip Dip Delay Time" - float m_flHipDipDelay; // 0x9c - // MPropertyFriendlyName "Reset Child" - bool m_bResetBase; // 0xa0 -}; - -// Alignment: 3 -// Size: 0x30 -class CBlend2DItemBase -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 -public: - // MPropertyFriendlyName "Blend Value" - Vector2D m_blendValue; // 0x18 -private: - [[maybe_unused]] uint8_t __pad0020[0x8]; // 0x20 -public: - // MPropertyGroupName "+Duration Override" - // MPropertyFriendlyName "Use Custom Duration" - // MPropertyAttrChangeCallback - bool m_bUseCustomDuration; // 0x28 -private: - [[maybe_unused]] uint8_t __pad0029[0x3]; // 0x29 -public: - // MPropertyGroupName "+Duration Override" - // MPropertyFriendlyName "Custom Duration" - // MPropertyAttrStateCallback - float m_flCustomDuration; // 0x2c -}; - -// Alignment: 2 -// Size: 0x58 -class CSequenceBlend2DItem : public CBlend2DItemBase -{ -private: - [[maybe_unused]] uint8_t __pad0030[0x8]; // 0x30 -public: - // MPropertyHideField - CUtlVector< CSmartPtr< CAnimTagSpan > > m_tagSpans; // 0x38 - // MPropertyFriendlyName "Sequence" - // MPropertyAttributeChoiceName "Sequence" - CUtlString m_sequenceName; // 0x50 -}; - -// Alignment: 2 -// Size: 0x48 -class CNodeBlend2DItem : public CBlend2DItemBase -{ -private: - [[maybe_unused]] uint8_t __pad0030[0x8]; // 0x30 -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Name" - CUtlString m_name; // 0x40 -}; - -// Alignment: 13 -// Size: 0xc8 -class CBlend2DAnimNode : public CAnimNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x18]; // 0x38 -public: - // MPropertyHideField - CUtlVector< CSmartPtr< CBlend2DItemBase > > m_items; // 0x50 - // MPropertyHideField - CUtlVector< CSmartPtr< CAnimTagSpan > > m_tagSpans; // 0x68 - // MPropertyHideField - CUtlVector< CSmartPtr< CAnimParamSpan > > m_paramSpans; // 0x80 - // MPropertyFriendlyName "Horizontal Axis" - // MPropertyAttrChangeCallback - // MPropertyAttrStateCallback - AnimValueSource m_blendSourceX; // 0x98 - // MPropertyFriendlyName "Horizontal Parameter" - // MPropertyAttributeChoiceName "FloatParameter" - AnimParamID m_paramX; // 0x9c - // MPropertyFriendlyName "Vertical Axis" - // MPropertyAttrChangeCallback - // MPropertyAttrStateCallback - AnimValueSource m_blendSourceY; // 0xa0 - // MPropertyFriendlyName "Vertical Parameter" - // MPropertyAttributeChoiceName "FloatParameter" - AnimParamID m_paramY; // 0xa4 - // MPropertyFriendlyName "Loop" - bool m_bLoop; // 0xa8 - // MPropertyFriendlyName "Lock Blend on Reset" - bool m_bLockBlendOnReset; // 0xa9 - // MPropertyFriendlyName "Lock Blend When Waning" - bool m_bLockWhenWaning; // 0xaa -private: - [[maybe_unused]] uint8_t __pad00ab[0x1]; // 0xab -public: - // MPropertyFriendlyName "Playback Speed" - float m_playbackSpeed; // 0xac - // MPropertyFriendlyName "Damping" - CAnimInputDamping m_damping; // 0xb0 - // MPropertyFriendlyName "AnimEvents and Tags Exclusive To Most Weighted" - bool m_bAnimEventsAndTagsOnMostWeightedOnly; // 0xc0 -}; - -// Alignment: 10 -// Size: 0x78 -class CFootAdjustmentAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Turn to Face" - // MPropertyAttributeChoiceName "FloatParameter" - AnimParamID m_facingTarget; // 0x40 - // MPropertyFriendlyName "Reset Child" - bool m_bResetChild; // 0x44 - // MPropertyFriendlyName "Animation Driven" - // MPropertyAttrChangeCallback - bool m_bAnimationDriven; // 0x45 -private: - [[maybe_unused]] uint8_t __pad0046[0x2]; // 0x46 -public: - // MPropertyFriendlyName "Base Anim Clips" - // MPropertyGroupName "Anim Driven Settings" - // MPropertyAttributeChoiceName "Sequence" - // MPropertyAttrStateCallback - CUtlString m_baseClipName; // 0x48 - // MPropertyFriendlyName "Clips" - // MPropertyGroupName "Anim Driven Settings" - // MPropertyAttributeChoiceName "Sequence" - // MPropertyAttrStateCallback - CUtlVector< CUtlString > m_clips; // 0x50 - // MPropertyFriendlyName "Turn Time Min" - // MPropertyGroupName "Procedural Settings" - // MPropertyAttrStateCallback - float m_flTurnTimeMin; // 0x68 - // MPropertyFriendlyName "Turn Time Max" - // MPropertyGroupName "Procedural Settings" - // MPropertyAttrStateCallback - float m_flTurnTimeMax; // 0x6c - // MPropertyFriendlyName "Step Height Max" - // MPropertyGroupName "Procedural Settings" - // MPropertyAttrStateCallback - float m_flStepHeightMax; // 0x70 - // MPropertyFriendlyName "Step Height Max Angle" - // MPropertyGroupName "Procedural Settings" - // MPropertyAttrStateCallback - float m_flStepHeightMaxAngle; // 0x74 -}; - -// Alignment: 7 -// Size: 0x28 -class CFootLockItem -{ -public: - // MPropertyFriendlyName "Foot" - // MPropertyAttributeChoiceName "Foot" - CUtlString m_footName; // 0x0 - // MPropertyFriendlyName "Target Bone" - // MPropertyAttributeChoiceName "Bone" - CUtlString m_targetBoneName; // 0x8 - // MPropertyFriendlyName "IK Chain" - // MPropertyAttributeChoiceName "IKChain" - CUtlString m_ikChainName; // 0x10 - // MPropertyFriendlyName "Disable Tag" - // MPropertyAttributeChoiceName "Tag" - AnimTagID m_disableTagID; // 0x18 - // MPropertyFriendlyName "Max Left Rotation" - // MPropertyAttributeRange "0 180" - float m_flMaxRotationLeft; // 0x1c - // MPropertyFriendlyName "Max Right Rotation" - // MPropertyAttributeRange "0 180" - float m_flMaxRotationRight; // 0x20 - // MPropertyFriendlyName "Footstep Landed Tag" - // MPropertyAttributeChoiceName "Tag" - AnimTagID m_footstepLandedTag; // 0x24 -}; - -// Alignment: 38 -// Size: 0x108 -class CFootLockAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Feet" - // MPropertyAutoExpandSelf - CUtlVector< CFootLockItem > m_items; // 0x40 - // MPropertyFriendlyName "Hip Bone" - // MPropertyAttributeChoiceName "Bone" - CUtlString m_hipBoneName; // 0x58 - // MPropertyFriendlyName "Blend Time" - float m_flBlendTime; // 0x60 - // MPropertyFriendlyName "Apply Foot Rotation Limits" - bool m_bApplyFootRotationLimits; // 0x64 - // MPropertyFriendlyName "Reset Child" - bool m_bResetChild; // 0x65 -private: - [[maybe_unused]] uint8_t __pad0066[0x2]; // 0x66 -public: - // MPropertyFriendlyName "IK Solver Type" - // MPropertyGroupName "IK" - // MPropertyAttrChangeCallback - IKSolverType m_ikSolverType; // 0x68 - // MPropertyFriendlyName "Always use fallback hinge" - // MPropertyGroupName "IK" - // MPropertyAttrStateCallback - bool m_bAlwaysUseFallbackHinge; // 0x6c - // MPropertyFriendlyName "Limit Leg Twist" - // MPropertyGroupName "IK" - // MPropertyAttrStateCallback - bool m_bApplyLegTwistLimits; // 0x6d -private: - [[maybe_unused]] uint8_t __pad006e[0x2]; // 0x6e -public: - // MPropertyFriendlyName "Max Leg Twist Angle" - // MPropertyGroupName "IK" - // MPropertyAttrStateCallback - float m_flMaxLegTwist; // 0x70 - // MPropertyFriendlyName "Curve Foot Paths" - // MPropertyGroupName "Curve Paths" - // MPropertyAttributeRange "0 1" - float m_flStrideCurveScale; // 0x74 - // MPropertyFriendlyName "Curve Paths Limit" - // MPropertyGroupName "Curve Paths" - // MPropertyAttributeRange "0 1" - float m_flStrideCurveLimitScale; // 0x78 - // MPropertyFriendlyName "Enable Vertical Curved Paths" - // MPropertyGroupName "Curve Paths" - bool m_bEnableVerticalCurvedPaths; // 0x7c - // MPropertyFriendlyName "Modulate Step Height" - // MPropertyGroupName "Step Height" - // MPropertyAttrChangeCallback - bool m_bModulateStepHeight; // 0x7d -private: - [[maybe_unused]] uint8_t __pad007e[0x2]; // 0x7e -public: - // MPropertyFriendlyName "Height Increase Scale" - // MPropertyGroupName "Step Height" - // MPropertyAttrStateCallback - float m_flStepHeightIncreaseScale; // 0x80 - // MPropertyFriendlyName "Height Decrease Scale" - // MPropertyGroupName "Step Height" - // MPropertyAttrStateCallback - float m_flStepHeightDecreaseScale; // 0x84 - // MPropertyFriendlyName "Enable Hip Shift" - // MPropertyGroupName "Hip Shift" - bool m_bEnableHipShift; // 0x88 -private: - [[maybe_unused]] uint8_t __pad0089[0x3]; // 0x89 -public: - // MPropertyFriendlyName "Hip Shift Scale" - // MPropertyGroupName "Hip Shift" - // MPropertyAttributeRange "0 1" - float m_flHipShiftScale; // 0x8c - // MPropertyFriendlyName "Damping" - // MPropertyGroupName "Hip Shift" - CAnimInputDamping m_hipShiftDamping; // 0x90 - // MPropertyFriendlyName "Apply Tilt" - // MPropertyGroupName "Tilt" - bool m_bApplyTilt; // 0xa0 -private: - [[maybe_unused]] uint8_t __pad00a1[0x3]; // 0xa1 -public: - // MPropertyFriendlyName "Tilt Plane Pitch Spring Strength" - // MPropertyGroupName "Tilt" - float m_flTiltPlanePitchSpringStrength; // 0xa4 - // MPropertyFriendlyName "Tilt Plane Roll Spring Strength" - // MPropertyGroupName "Tilt" - float m_flTiltPlaneRollSpringStrength; // 0xa8 - // MPropertyFriendlyName "Enable Lock Breaking" - // MPropertyGroupName "Lock Breaking" - bool m_bEnableLockBreaking; // 0xac -private: - [[maybe_unused]] uint8_t __pad00ad[0x3]; // 0xad -public: - // MPropertyFriendlyName "Tolerance" - // MPropertyGroupName "Lock Breaking" - float m_flLockBreakTolerance; // 0xb0 - // MPropertyFriendlyName "Blend Time" - // MPropertyGroupName "Lock Breaking" - float m_flLockBreakBlendTime; // 0xb4 - // MPropertyFriendlyName "Enable Stretching" - // MPropertyGroupName "Stretch" - bool m_bEnableStretching; // 0xb8 -private: - [[maybe_unused]] uint8_t __pad00b9[0x3]; // 0xb9 -public: - // MPropertyFriendlyName "Max Stretch Amount" - // MPropertyGroupName "Stretch" - float m_flMaxStretchAmount; // 0xbc - // MPropertyFriendlyName "Extension Scale" - // MPropertyGroupName "Stretch" - // MPropertyAttributeRange "0 1" - float m_flStretchExtensionScale; // 0xc0 - // MPropertyFriendlyName "Enable Ground Tracing" - // MPropertyGroupName "Ground IK" - // MPropertyAttrChangeCallback - bool m_bEnableGroundTracing; // 0xc4 -private: - [[maybe_unused]] uint8_t __pad00c5[0x3]; // 0xc5 -public: - // MPropertyFriendlyName "Angle Traces with Slope" - // MPropertyGroupName "Ground IK" - // MPropertyAttributeRange "0 1" - // MPropertyAttrStateCallback - float m_flTraceAngleBlend; // 0xc8 - // MPropertyFriendlyName "Apply Hip Drop" - // MPropertyGroupName "Ground IK" - // MPropertyAttrChangeCallback - // MPropertyAttrStateCallback - bool m_bApplyHipDrop; // 0xcc -private: - [[maybe_unused]] uint8_t __pad00cd[0x3]; // 0xcd -public: - // MPropertyFriendlyName "Max Foot Lift" - // MPropertyGroupName "Ground IK" - // MPropertyAttrStateCallback - float m_flMaxFootHeight; // 0xd0 - // MPropertyFriendlyName "Leg Extension Scale" - // MPropertyGroupName "Ground IK" - // MPropertyAttrStateCallback - float m_flExtensionScale; // 0xd4 - // MPropertyFriendlyName "Hip Damping" - // MPropertyGroupName "Ground IK" - // MPropertyAttrStateCallback - CAnimInputDamping m_hipDampingSettings; // 0xd8 - // MPropertyFriendlyName "Enable Root Height Damping" - // MPropertyGroupName "Root Height Damping" - // MPropertyAttrChangeCallback - bool m_bEnableRootHeightDamping; // 0xe8 -private: - [[maybe_unused]] uint8_t __pad00e9[0x7]; // 0xe9 -public: - // MPropertyFriendlyName "Damping Settings" - // MPropertyGroupName "Root Height Damping" - // MPropertyAttrStateCallback - CAnimInputDamping m_rootHeightDamping; // 0xf0 - // MPropertyFriendlyName "Max Offset" - // MPropertyGroupName "Root Height Damping" - // MPropertyAttrStateCallback - float m_flMaxRootHeightOffset; // 0x100 - // MPropertyFriendlyName "Min Offset" - // MPropertyGroupName "Root Height Damping" - // MPropertyAttrStateCallback - float m_flMinRootHeightOffset; // 0x104 -}; - -// Alignment: 11 -// Size: 0x50 -struct FootFixedData_t -{ -public: - VectorAligned m_vToeOffset; // 0x0 - VectorAligned m_vHeelOffset; // 0x10 - int32_t m_nTargetBoneIndex; // 0x20 - int32_t m_nAnkleBoneIndex; // 0x24 - int32_t m_nIKAnchorBoneIndex; // 0x28 - int32_t m_ikChainIndex; // 0x2c - float m_flMaxIKLength; // 0x30 - int32_t m_nFootIndex; // 0x34 - int32_t m_nTagIndex; // 0x38 - float m_flMaxRotationLeft; // 0x3c - float m_flMaxRotationRight; // 0x40 -}; - -// Alignment: 7 -// Size: 0x28 -class CFootPinningItem -{ -public: - // MPropertyFriendlyName "Foot" - // MPropertyAttributeChoiceName "Foot" - CUtlString m_footName; // 0x0 - // MPropertyFriendlyName "Target Bone" - // MPropertyAttributeChoiceName "Bone" - CUtlString m_targetBoneName; // 0x8 - // MPropertyFriendlyName "IK Chain" - // MPropertyAttributeChoiceName "IKChain" - CUtlString m_ikChainName; // 0x10 - // MPropertyFriendlyName "Tag" - // MPropertyAttributeChoiceName "Tag" - AnimTagID m_tag; // 0x18 - // MPropertyFriendlyName "Parameter" - // MPropertyAttributeChoiceName "BoolParameter" - AnimParamID m_param; // 0x1c - // MPropertyFriendlyName "Max Left Rotation" - // MPropertyAttributeRange "0 180" - float m_flMaxRotationLeft; // 0x20 - // MPropertyFriendlyName "Max Right Rotation" - // MPropertyAttributeRange "0 180" - float m_flMaxRotationRight; // 0x24 -}; - -// Alignment: 11 -// Size: 0x88 -class CFootPinningAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Feet" - // MPropertyAutoExpandSelf - CUtlVector< CFootPinningItem > m_items; // 0x40 - // MPropertyFriendlyName "Lock Timing Source" - FootPinningTimingSource m_eTimingSource; // 0x58 - // MPropertyFriendlyName "Blend Time" - float m_flBlendTime; // 0x5c - // MPropertyFriendlyName "Lock Break Distance" - float m_flLockBreakDistance; // 0x60 - // MPropertyFriendlyName "Max Leg Straight Amount" - // MPropertyAttributeRange "0 1" - float m_flMaxLegStraightAmount; // 0x64 - // MPropertyFriendlyName "Limit Foot Rotation" - // MPropertyGroupName "Foot Rotation Limits" - bool m_bApplyFootRotationLimits; // 0x68 -private: - [[maybe_unused]] uint8_t __pad0069[0x7]; // 0x69 -public: - // MPropertyFriendlyName "Hip Bone" - // MPropertyAttributeChoiceName "Bone" - // MPropertyGroupName "Foot Rotation Limits" - CUtlString m_hipBoneName; // 0x70 - // MPropertyFriendlyName "Limit Leg Twist" - // MPropertyGroupName "Knee Twist Limits" - bool m_bApplyLegTwistLimits; // 0x78 -private: - [[maybe_unused]] uint8_t __pad0079[0x3]; // 0x79 -public: - // MPropertyFriendlyName "Max Leg Twist Angle" - // MPropertyGroupName "Knee Twist Limits" - float m_flMaxLegTwist; // 0x7c - // MPropertyFriendlyName "Reset Child" - bool m_bResetChild; // 0x80 -}; - -// Alignment: 14 -// Size: 0x78 -class CFollowPathAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Blend Out Time" - float m_flBlendOutTime; // 0x40 - // MPropertyFriendlyName "Block Non-Path Movement" - bool m_bBlockNonPathMovement; // 0x44 - // MPropertyFriendlyName "Stop Feet at Goal" - bool m_bStopFeetAtGoal; // 0x45 - // MPropertyFriendlyName "Enable Speed Scaling" - // MPropertyGroupName "Speed Scaling" - // MPropertyAttrChangeCallback - bool m_bScaleSpeed; // 0x46 -private: - [[maybe_unused]] uint8_t __pad0047[0x1]; // 0x47 -public: - // MPropertyFriendlyName "Scale" - // MPropertyGroupName "Speed Scaling" - // MPropertyAttributeRange "0 1" - // MPropertyAttrStateCallback - float m_flScale; // 0x48 - // MPropertyFriendlyName "Min Angle" - // MPropertyGroupName "Speed Scaling" - // MPropertyAttributeRange "0 180" - // MPropertyAttrStateCallback - float m_flMinAngle; // 0x4c - // MPropertyFriendlyName "Max Angle" - // MPropertyGroupName "Speed Scaling" - // MPropertyAttributeRange "0 180" - // MPropertyAttrStateCallback - float m_flMaxAngle; // 0x50 - // MPropertyFriendlyName "Blend Time" - // MPropertyGroupName "Speed Scaling" - // MPropertyAttrStateCallback - float m_flSpeedScaleBlending; // 0x54 - // MPropertyFriendlyName "Enable Turn to Face" - // MPropertyGroupName "Turn to Face" - // MPropertyAttrChangeCallback - bool m_bTurnToFace; // 0x58 -private: - [[maybe_unused]] uint8_t __pad0059[0x3]; // 0x59 -public: - // MPropertyFriendlyName "Target" - // MPropertyGroupName "Turn to Face" - // MPropertyAttrChangeCallback - // MPropertyAttrStateCallback - AnimValueSource m_facingTarget; // 0x5c - // MPropertyFriendlyName "Parameter" - // MPropertyGroupName "Turn to Face" - // MPropertyAttributeChoiceName "FloatParameter" - // MPropertyAttrStateCallback - AnimParamID m_param; // 0x60 - // MPropertyFriendlyName "Offset" - // MPropertyGroupName "Turn to Face" - // MPropertyAttributeRange "-180 180" - // MPropertyAttrStateCallback - float m_flTurnToFaceOffset; // 0x64 - // MPropertyFriendlyName "Damping" - // MPropertyGroupName "Turn to Face" - // MPropertyAttrStateCallback - CAnimInputDamping m_damping; // 0x68 -}; - -// Alignment: 23 -// Size: 0xd0 -class CMotionMatchingAnimNode : public CAnimNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x10]; // 0x38 -public: - // MPropertyHideField - CUtlVector< CSmartPtr< CMotionItemGroup > > m_groups; // 0x48 - // MPropertyHideField - CUtlVector< CSmartPtr< CMotionMetricBase > > m_metrics; // 0x60 - // MPropertyHideField - CBlendCurve m_blendCurve; // 0x78 - // MPropertyHideField - int32_t m_nRandomSeed; // 0x80 - // MPropertyFriendlyName "Sample Rate" - // MPropertyAttributeRange "0.01 0.2" - float m_flSampleRate; // 0x84 - // MPropertyFriendlyName "Search Every Update" - // MPropertyGroupName "Search Frequency" - // MPropertyAttrChangeCallback - bool m_bSearchEveryTick; // 0x88 -private: - [[maybe_unused]] uint8_t __pad0089[0x3]; // 0x89 -public: - // MPropertyFriendlyName "Search Interval" - // MPropertyGroupName "Search Frequency" - // MPropertyAttrStateCallback - float m_flSearchInterval; // 0x8c - // MPropertyFriendlyName "Search when motion ends" - // MPropertyGroupName "Search Frequency" - // MPropertyAttrStateCallback - bool m_bSearchWhenMotionEnds; // 0x90 - // MPropertyFriendlyName "Search when goal changes" - // MPropertyGroupName "Search Frequency" - // MPropertyAttrStateCallback - bool m_bSearchWhenGoalChanges; // 0x91 -private: - [[maybe_unused]] uint8_t __pad0092[0x2]; // 0x92 -public: - // MPropertyFriendlyName "Blend Time" - float m_flBlendTime; // 0x94 - // MPropertyFriendlyName "Selection Threshold" - float m_flSelectionThreshold; // 0x98 - // MPropertyFriendlyName "Re-Selection Time Window" - float m_flReselectionTimeWindow; // 0x9c - // MPropertyFriendlyName "Lock Selection When Waning" - bool m_bLockSelectionWhenWaning; // 0xa0 - // MPropertyFriendlyName "Enable Rotation Correction" - bool m_bEnableRotationCorrection; // 0xa1 - // MPropertyFriendlyName "Enable Goal Assist" - // MPropertyGroupName "Goal Assist" - // MPropertyAttrChangeCallback - bool m_bGoalAssist; // 0xa2 -private: - [[maybe_unused]] uint8_t __pad00a3[0x1]; // 0xa3 -public: - // MPropertyFriendlyName "Goal Assist Distance" - // MPropertyGroupName "Goal Assist" - // MPropertyAttrStateCallback - float m_flGoalAssistDistance; // 0xa4 - // MPropertyFriendlyName "Goal Assist Tolerance" - // MPropertyGroupName "Goal Assist" - // MPropertyAttrStateCallback - float m_flGoalAssistTolerance; // 0xa8 - // MPropertyFriendlyName "Enable Distance Scaling" - // MPropertyGroupName "Distance Scaling" - // MPropertyAttrChangeCallback - bool m_bEnableDistanceScaling; // 0xac -private: - [[maybe_unused]] uint8_t __pad00ad[0x3]; // 0xad -public: - // MPropertyFriendlyName "Outer Stopping Radius" - // MPropertyGroupName "Distance Scaling" - // MPropertyAttrStateCallback - float m_flDistanceScale_OuterRadius; // 0xb0 - // MPropertyFriendlyName "Inner Stopping Radius" - // MPropertyGroupName "Distance Scaling" - // MPropertyAttrStateCallback - float m_flDistanceScale_InnerRadius; // 0xb4 - // MPropertyFriendlyName "Maximum Speed Scale" - // MPropertyGroupName "Distance Scaling" - // MPropertyAttrStateCallback - float m_flDistanceScale_MaxScale; // 0xb8 - // MPropertyFriendlyName "Minimum Speed Scale" - // MPropertyGroupName "Distance Scaling" - // MPropertyAttrStateCallback - float m_flDistanceScale_MinScale; // 0xbc - // MPropertyFriendlyName "Damping" - // MPropertyGroupName "Distance Scaling" - // MPropertyAttrStateCallback - CAnimInputDamping m_distanceScale_Damping; // 0xc0 -}; - -// Alignment: 3 -// Size: 0x48 -class CSetFacingAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Facing Mode" - FacingMode m_facingMode; // 0x40 - // MPropertyFriendlyName "Reset Child" - bool m_bResetChild; // 0x44 -}; - -// Alignment: 6 -// Size: 0x60 -class CStopAtGoalAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Outer Stopping Radius" - float m_flOuterRadius; // 0x40 - // MPropertyFriendlyName "Inner Stopping Radius" - float m_flInnerRadius; // 0x44 - // MPropertyFriendlyName "Maximum Speed Scale" - float m_flMaxScale; // 0x48 - // MPropertyFriendlyName "Minimum Speed Scale" - float m_flMinScale; // 0x4c - // MPropertyFriendlyName "Damping" - CAnimInputDamping m_damping; // 0x50 -}; - -// Alignment: 7 -// Size: 0x30 -class CJiggleBoneItem -{ -public: - // MPropertyFriendlyName "Bone" - // MPropertyAttributeChoiceName "Bone" - CUtlString m_boneName; // 0x0 - // MPropertyFriendlyName "Spring Strength" - float m_flSpringStrength; // 0x8 - // MPropertyFriendlyName "Sim Rate (FPS)" - float m_flSimRateFPS; // 0xc - // MPropertyFriendlyName "Damping" - // MPropertyAttributeRange "0 1" - float m_flDamping; // 0x10 - // MPropertyFriendlyName "Sim Space" - JiggleBoneSimSpace m_eSimSpace; // 0x14 - // MPropertyFriendlyName "Max" - // MPropertyGroupName "Movement Limits" - Vector m_vBoundsMaxLS; // 0x18 - // MPropertyFriendlyName "Min" - // MPropertyGroupName "Movement Limits" - Vector m_vBoundsMinLS; // 0x24 -}; - -// Alignment: 2 -// Size: 0x58 -class CJiggleBoneAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Jiggle Bones" - // MPropertyAutoExpandSelf - CUtlVector< CJiggleBoneItem > m_items; // 0x40 -}; - -// Alignment: 8 -// Size: 0xc8 -class CJumpHelperAnimNode : public CSequenceAnimNode -{ -private: - [[maybe_unused]] uint8_t __pad00a8[0x8]; // 0xa8 -public: - // MPropertyFriendlyName "Target Parameter" - // MPropertyAttributeChoiceName "VectorParameter" - AnimParamID m_targetParamID; // 0xb0 - // MPropertySuppressField - float m_flJumpStartCycle; // 0xb4 - // MPropertySuppressField - float m_flJumpDuration; // 0xb8 - // MPropertyFriendlyName "Translate X" - bool m_bTranslateX; // 0xbc - // MPropertyFriendlyName "Translate Y" - bool m_bTranslateY; // 0xbd - // MPropertyFriendlyName "Translate Z" - bool m_bTranslateZ; // 0xbe - // MPropertyFriendlyName "Apply Speed Scale" - bool m_bScaleSpeed; // 0xbf - // MPropertyFriendlyName "Correction Method" - JumpCorrectionMethod m_eCorrectionMethod; // 0xc0 -}; - -// Alignment: 4 -// Size: 0x78 -class CSingleFrameAnimNode : public CAnimNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x18]; // 0x38 -public: - // MPropertyFriendlyName "Sequence" - // MPropertyAttributeChoiceName "Sequence" - CUtlString m_sequenceName; // 0x50 - // MPropertyFriendlyName "Frame Selection" - // MPropertyAttrChangeCallback - SingleFrameSelection m_eFrameSelection; // 0x58 - // MPropertyFriendlyName "Frame Index" - // MPropertyAttrStateCallback - int32_t m_nFrameIndex; // 0x5c - CUtlVector< CSmartPtr< CAnimActionBase > > m_actions; // 0x60 -}; - -// Alignment: 3 -// Size: 0x58 -class CCommentAnimNode : public CAnimNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 -public: - // MPropertySuppressField - CUtlString m_commentText; // 0x40 - // MPropertySuppressField - Vector2D m_size; // 0x48 - // MPropertyFriendlyName "Color" - Color m_color; // 0x50 -}; - -// Alignment: 3 -// Size: 0x70 -class CContainerAnimNodeBase : public CAnimNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x10]; // 0x38 -public: - // MPropertyHideField - AnimNodeID m_inputNodeID; // 0x48 - // MPropertyHideField - AnimNodeID m_outputNodeID; // 0x4c - // MPropertyHideField - CUtlHashtable< AnimNodeOutputID, CAnimNodeConnection > m_inputConnectionMap; // 0x50 -}; - -// Alignment: 0 -// Size: 0x38 -class CInputStreamAnimNode : public CAnimNodeBase -{ -public: - // No members available -}; - -// Alignment: 3 -// Size: 0x28 -class CFootStepTriggerItem -{ -public: - // MPropertyFriendlyName "Foot" - // MPropertyAttributeChoiceName "Foot" - CUtlString m_footName; // 0x0 - // MPropertyFriendlyName "Trigger Phase" - StepPhase m_triggerPhase; // 0x8 -private: - [[maybe_unused]] uint8_t __pad000c[0x4]; // 0xc -public: - // MPropertyFriendlyName "Tags" - // MPropertyAttributeChoiceName "Tag" - CUtlVector< AnimTagID > m_tags; // 0x10 -}; - -// Alignment: 3 -// Size: 0x60 -class CFootStepTriggerAnimNode : public CAnimNodeBase -{ -public: - // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x38 - // MPropertyFriendlyName "Tolerance" - float m_flTolerance; // 0x40 -private: - [[maybe_unused]] uint8_t __pad0044[0x4]; // 0x44 -public: - // MPropertyFriendlyName "Feet" - // MPropertyAutoExpandSelf - CUtlVector< CFootStepTriggerItem > m_items; // 0x48 -}; - -// Alignment: 2 -// Size: 0xb8 -class CSubGraphAnimNode : public CContainerAnimNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0070[0x8]; // 0x70 -public: - // MPropertyFriendlyName "SubGraph File" - // MPropertyAttributeEditor "AssetBrowse( vsubgrph )" - // MPropertyAttrChangeCallback - CUtlString m_subGraphFilename; // 0x78 - // MPropertyHideField - CUtlHashtable< CUtlString, CUtlString > m_animNameMap; // 0x80 -}; - -// Alignment: 0 -// Size: 0x38 -class CBindPoseAnimNode : public CAnimNodeBase -{ -public: - // No members available -}; - -// Alignment: 0 -// Size: 0x38 -class CZeroPoseAnimNode : public CAnimNodeBase -{ -public: - // No members available -}; - -// Alignment: 2 -// Size: 0x18 -class CStateAction -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 -public: - CSmartPtr< CAnimActionBase > m_pAction; // 0x8 - StateActionBehavior m_eBehavior; // 0x10 -}; - -// Alignment: 8 -// Size: 0x70 -class CAnimState -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x28]; // 0x0 -public: - // MPropertySuppressField - CUtlVector< CSmartPtr< CAnimStateTransition > > m_transitions; // 0x28 - // MPropertyHideField - CUtlVector< CStateAction > m_actions; // 0x40 - // MPropertyFriendlyName "Name" - // MPropertySortPriority "100" - CUtlString m_name; // 0x58 - // MPropertyHideField - AnimStateID m_stateID; // 0x60 - // MPropertyHideField - Vector2D m_position; // 0x64 - // MPropertyFriendlyName "Start State" - bool m_bIsStartState; // 0x6c - // MPropertyFriendlyName "End State" - bool m_bIsEndtState; // 0x6d - // MPropertyFriendlyName "Passthrough" - bool m_bIsPassthrough; // 0x6e -}; - -// Alignment: 1 -// Size: 0x38 -class CConditionContainer -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 -public: - // MPropertySuppressField - CUtlVector< CSmartPtr< CConditionBase > > m_conditions; // 0x10 -}; - -// Alignment: 1 -// Size: 0x28 -class CAnimStateMachine -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 -public: - // MPropertyHideField - CUtlVector< CSmartPtr< CAnimState > > m_states; // 0x8 -}; - -// Alignment: 2 -// Size: 0x10 -class CStateActionUpdater -{ -public: - CSmartPtr< CAnimActionUpdater > m_pAction; // 0x0 - StateActionBehavior m_eBehavior; // 0x8 -}; - -// Alignment: 3 -// Size: 0x3 -class CTransitionUpdateData -{ -public: - uint8_t m_srcStateIndex; // 0x0 - uint8_t m_destStateIndex; // 0x1 - struct - { - uint8_t m_bDisabled: 1; - uint8_t __pad0: 1; - }; // 2 bits -}; - -// Alignment: 8 -// Size: 0x48 -class CStateUpdateData -{ -public: - CUtlString m_name; // 0x0 - AnimScriptHandle m_hScript; // 0x8 -private: - [[maybe_unused]] uint8_t __pad000c[0x4]; // 0xc -public: - CUtlVector< int32 > m_transitionIndices; // 0x10 - CUtlVector< CStateActionUpdater > m_actions; // 0x28 - AnimStateID m_stateID; // 0x40 - struct - { - uint8_t m_bIsStartState: 1; - uint8_t m_bIsEndState: 1; - uint8_t m_bIsPassthrough: 1; - uint8_t __pad1: 3; - }; // 6 bits -}; - -// Alignment: 3 -// Size: 0x58 -class CAnimStateMachineUpdater -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 -public: - CUtlVector< CStateUpdateData > m_states; // 0x8 - CUtlVector< CTransitionUpdateData > m_transitions; // 0x20 -private: - [[maybe_unused]] uint8_t __pad0038[0x18]; // 0x38 -public: - int32_t m_startStateIndex; // 0x50 -}; - -// Alignment: 0 -// Size: 0x28 -class CConditionBase -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x28]; // 0x0 -public: - // No members available -}; - -// Alignment: 4 -// Size: 0x70 -class CAnimStateTransition -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x28]; // 0x0 -public: - // MPropertySuppressField - CConditionContainer m_conditionList; // 0x28 - // MPropertyHideField - AnimStateID m_srcState; // 0x60 - // MPropertyHideField - AnimStateID m_destState; // 0x64 - // MPropertyFriendlyName "Disable" - bool m_bDisabled; // 0x68 -}; - -// Alignment: 5 -// Size: 0x48 -class CCycleCondition : public CConditionBase -{ -public: - Comparison_t m_comparisonOp; // 0x28 -private: - [[maybe_unused]] uint8_t __pad002c[0x4]; // 0x2c -public: - CUtlString m_comparisonString; // 0x30 - float m_comparisonValue; // 0x38 - ComparisonValueType m_comparisonValueType; // 0x3c -private: - [[maybe_unused]] uint8_t __pad003d[0x3]; // 0x3d -public: - AnimParamID m_comparisonParamID; // 0x40 -}; - -// Alignment: 2 -// Size: 0x30 -class CFinishedCondition : public CConditionBase -{ -public: - FinishedConditionOption m_option; // 0x28 - bool m_bIsFinished; // 0x2c -}; - -// Alignment: 0 -// Size: 0x60 -class COrCondition : public CConditionBase -{ -private: - [[maybe_unused]] uint8_t __pad0028[0x10]; // 0x28 -public: - // No members available -}; - -// Alignment: 4 -// Size: 0x50 -class CParameterCondition : public CConditionBase -{ -public: - AnimParamID m_paramID; // 0x28 - Comparison_t m_comparisonOp; // 0x2c - CAnimVariant m_comparisonValue; // 0x30 -private: - [[maybe_unused]] uint8_t __pad0041[0x7]; // 0x41 -public: - CUtlString m_comparisonString; // 0x48 -}; - -// Alignment: 6 -// Size: 0x40 -class CStateStatusCondition : public CConditionBase -{ -public: - StateValue m_sourceValue; // 0x28 - StateComparisonValueType m_comparisonValueType; // 0x2c - float m_comparisonFixedValue; // 0x30 - StateValue m_comparisonStateValue; // 0x34 - AnimParamID m_comparisonParamID; // 0x38 - Comparison_t m_comparisonOp; // 0x3c -}; - -// Alignment: 2 -// Size: 0x30 -class CTagCondition : public CConditionBase -{ -public: - // MPropertyFriendlyName "Tag" - // MPropertyAttributeChoiceName "Tag" - AnimTagID m_tagID; // 0x28 - // MPropertyFriendlyName "Value" - bool m_comparisonValue; // 0x2c -}; - -// Alignment: 2 -// Size: 0x38 -class CTimeCondition : public CConditionBase -{ -public: - Comparison_t m_comparisonOp; // 0x28 -private: - [[maybe_unused]] uint8_t __pad002c[0x4]; // 0x2c -public: - CUtlString m_comparisonString; // 0x30 -}; - -// Alignment: 3 -// Size: 0xc -struct TagSpan_t -{ -public: - int32_t m_tagIndex; // 0x0 - float m_startCycle; // 0x4 - float m_endCycle; // 0x8 -}; - -// Alignment: 3 -// Size: 0x30 -class CAnimTagSpan -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x20]; // 0x0 -public: - AnimTagID m_id; // 0x20 - float m_fStartCycle; // 0x24 - float m_fDuration; // 0x28 -}; - -// Alignment: 1 -// Size: 0x58 -class CAnimTagManager -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 -public: - CUtlVector< CSmartPtr< CAnimTagBase > > m_tags; // 0x18 -}; - -// Alignment: 4 -// Size: 0x38 -class CAnimTagBase -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x20]; // 0x0 -public: - // MPropertyFriendlyName "Name" - // MPropertySortPriority "100" - CUtlString m_name; // 0x20 - // MPropertyHideField - CUtlString m_group; // 0x28 - // MPropertyHideField - AnimTagID m_tagID; // 0x30 - // MPropertyHideField - bool m_bIsReferenced; // 0x34 -}; - -// Alignment: 0 -// Size: 0x40 -class CStringAnimTag : public CAnimTagBase -{ -public: - // No members available -}; - -// Alignment: 1 -// Size: 0x48 -class CFootFallAnimTag : public CAnimTagBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 -public: - // MPropertyFriendlyName "Foot" - FootFallTagFoot_t m_foot; // 0x40 -}; - -// Alignment: 7 -// Size: 0x58 -class CAudioAnimTag : public CAnimTagBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 -public: - // MPropertyFriendlyName "Sound Event" - // MPropertyAttributeEditor "SoundPicker()" - CUtlString m_clipName; // 0x40 - // MPropertyFriendlyName "Attachment" - // MPropertyAttributeChoiceName "Attachment" - CUtlString m_attachmentName; // 0x48 - // MPropertyFriendlyName "Volume" - // MPropertyAttributeRange "0 1" - float m_flVolume; // 0x50 - // MPropertyFriendlyName "Stop on Tag End" - bool m_bStopWhenTagEnds; // 0x54 - // MPropertyFriendlyName "Stop When Graph Destroyed" - bool m_bStopWhenGraphEnds; // 0x55 - // MPropertyFriendlyName "Play on Server" - bool m_bPlayOnServer; // 0x56 - // MPropertyFriendlyName "Play on Client" - bool m_bPlayOnClient; // 0x57 -}; - -// Alignment: 4 -// Size: 0x60 -class CFootstepLandedAnimTag : public CAnimTagBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 -public: - // MPropertyFriendlyName "Footstep Type" - FootstepLandedFootSoundType_t m_FootstepType; // 0x40 -private: - [[maybe_unused]] uint8_t __pad0044[0x4]; // 0x44 -public: - // MPropertyFriendlyName "Override Sound" - // MPropertyAttributeChoiceName "Sound" - CUtlString m_OverrideSoundName; // 0x48 - // MPropertyFriendlyName "Debug Name" - CUtlString m_DebugAnimSourceString; // 0x50 - // MPropertyFriendlyName "Bone Name" - // MPropertyAttributeChoiceName "Bone" - CUtlString m_BoneName; // 0x58 -}; - -// Alignment: 1 -// Size: 0x48 -class CSequenceFinishedAnimTag : public CAnimTagBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 -public: - // MPropertyFriendlyName "Sequence" - // MPropertyAttributeChoiceName "Sequence" - CUtlString m_sequenceName; // 0x40 -}; - -// Alignment: 1 -// Size: 0x50 -class CTaskStatusAnimTag : public CAnimTagBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 -public: - // MPropertyHideField - CUtlString m_identifierString; // 0x40 -}; - -// Alignment: 4 -// Size: 0x58 -class CClothSettingsAnimTag : public CAnimTagBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 -public: - // MPropertyFriendlyName "Stiffness" - // MPropertyAttributeRange "0 1" - float m_flStiffness; // 0x40 - // MPropertyFriendlyName "EaseIn" - // MPropertyAttributeRange "0 1" - float m_flEaseIn; // 0x44 - // MPropertyFriendlyName "EaseOut" - // MPropertyAttributeRange "0 1" - float m_flEaseOut; // 0x48 -private: - [[maybe_unused]] uint8_t __pad004c[0x4]; // 0x4c -public: - // MPropertyFriendlyName "VertexSet" - CUtlString m_nVertexSet; // 0x50 -}; - -// Alignment: 6 -// Size: 0x58 -class CRagdollAnimTag : public CAnimTagBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 -public: - // MPropertyFriendlyName "Pose Control" - AnimPoseControl m_nPoseControl; // 0x40 - // MPropertyFriendlyName "Frequency" - // MPropertyAttributeRange "0 30" - float m_flFrequency; // 0x44 - // MPropertyFriendlyName "Damping Ratio" - // MPropertyAttributeRange "0 2" - float m_flDampingRatio; // 0x48 - // MPropertyFriendlyName "Decay Duration" - // MPropertyAttributeRange "-1 1000" - float m_flDecayDuration; // 0x4c - // MPropertyFriendlyName "Decay Bias" - // MPropertyAttributeRange "0 1" - float m_flDecayBias; // 0x50 - // MPropertyFriendlyName "Destroy" - bool m_bDestroy; // 0x54 -}; - -// Alignment: 10 -// Size: 0x80 -class CParticleAnimTag : public CAnimTagBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 -public: - // MPropertySuppressField - CStrongHandle< InfoForResourceTypeIParticleSystemDefinition > m_hParticleSystem; // 0x40 - // MPropertyAttributeEditor "AssetBrowse( vpcf )" - // MPropertyFriendlyName "Particle System" - CUtlString m_particleSystemName; // 0x48 - // MPropertyFriendlyName "Configuration" - CUtlString m_configName; // 0x50 - // MPropertyFriendlyName "Detach From Owner" - bool m_bDetachFromOwner; // 0x58 - // MPropertyFriendlyName "Stop on Tag End" - // MPropertyGroupName "Ending" - bool m_bStopWhenTagEnds; // 0x59 - // MPropertyFriendlyName "Tag End Stop is Instant" - // MPropertyGroupName "Ending" - bool m_bTagEndStopIsInstant; // 0x5a -private: - [[maybe_unused]] uint8_t __pad005b[0x5]; // 0x5b -public: - // MPropertyFriendlyName "Attachment" - // MPropertyGroupName "Attachments" - // MPropertyAttributeChoiceName "Attachment" - CUtlString m_attachmentName; // 0x60 - // MPropertyFriendlyName "Attachment Type" - // MPropertyGroupName "Attachments" - ParticleAttachment_t m_attachmentType; // 0x68 -private: - [[maybe_unused]] uint8_t __pad006c[0x4]; // 0x6c -public: - // MPropertyFriendlyName "Attachment (Control Point 1)" - // MPropertyGroupName "Attachments" - // MPropertyAttributeChoiceName "Attachment" - CUtlString m_attachmentCP1Name; // 0x70 - // MPropertyFriendlyName "Attachment Type (Control Point 1)" - // MPropertyGroupName "Attachments" - ParticleAttachment_t m_attachmentCP1Type; // 0x78 -}; - -// Alignment: 4 -// Size: 0x58 -class CMaterialAttributeAnimTag : public CAnimTagBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 -public: - // MPropertyFriendlyName "Attribute Name" - CUtlString m_AttributeName; // 0x40 - // MPropertyFriendlyName "Attribute Type" - // MPropertyAttrChangeCallback - MatterialAttributeTagType_t m_AttributeType; // 0x48 - // MPropertyFriendlyName "Value" - // MPropertyAttrStateCallback - float m_flValue; // 0x4c - // MPropertyFriendlyName "Color" - // MPropertyAttrStateCallback - Color m_Color; // 0x50 -}; - -// Alignment: 2 -// Size: 0x10 -class CBodyGroupSetting -{ -public: - // MPropertyFriendlyName "BodyGroup" - // MPropertyAttributeChoiceName "BodyGroup" - // MPropertyAutoRebuildOnChange - CUtlString m_BodyGroupName; // 0x0 - // MPropertyFriendlyName "BodyGroup Option" - // MPropertyAttributeChoiceName "BodyGroupOption" - // MPropertyAttrExtraInfoFn - int32_t m_nBodyGroupOption; // 0x8 -}; - -// Alignment: 2 -// Size: 0x60 -class CBodyGroupAnimTag : public CAnimTagBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 -public: - // MPropertyFriendlyName "Priority" - int32_t m_nPriority; // 0x40 -private: - [[maybe_unused]] uint8_t __pad0044[0x4]; // 0x44 -public: - // MPropertyFriendlyName "Body Group Settings" - CUtlVector< CBodyGroupSetting > m_bodyGroupSettings; // 0x48 -}; - -// Alignment: 0 -// Size: 0x50 -class CMotionNodeManager : public CAnimNodeManager -{ -public: - // No members available -}; - -// Alignment: 1 -// Size: 0x28 -class CMotionParameterManager -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 -public: - CUtlVector< CSmartPtr< CMotionParameter > > m_params; // 0x10 -}; - -// Alignment: 5 -// Size: 0x30 -class CMotionParameter -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 -public: - CUtlString m_name; // 0x18 - AnimParamID m_id; // 0x20 - float m_flMinValue; // 0x24 - float m_flMaxValue; // 0x28 - int32_t m_nSamples; // 0x2c -}; - -// Alignment: 1 -// Size: 0x8 -class SampleCode -{ -public: - uint8_t m_subCode[8]; // 0x0 -}; - -// Alignment: 1 -// Size: 0x4 -class MotionDBIndex -{ -public: - uint32_t m_nIndex; // 0x0 -}; - -// Alignment: 3 -// Size: 0x20 -class CVectorQuantizer -{ -public: - CUtlVector< float32 > m_centroidVectors; // 0x0 - int32_t m_nCentroids; // 0x18 - int32_t m_nDimensions; // 0x1c -}; - -// Alignment: 2 -// Size: 0x20 -class CProductQuantizer -{ -public: - CUtlVector< CVectorQuantizer > m_subQuantizers; // 0x0 - int32_t m_nDimensions; // 0x18 -}; - -// Alignment: 5 -// Size: 0x80 -class CMotionSearchNode -{ -public: - CUtlVector< CMotionSearchNode* > m_children; // 0x0 - CVectorQuantizer m_quantizer; // 0x18 - CUtlVector< CUtlVector< SampleCode > > m_sampleCodes; // 0x38 - CUtlVector< CUtlVector< int32 > > m_sampleIndices; // 0x50 - CUtlVector< int32 > m_selectableSamples; // 0x68 -}; - -// Alignment: 3 -// Size: 0xb8 -class CMotionSearchDB -{ -public: - CMotionSearchNode m_rootNode; // 0x0 - CProductQuantizer m_residualQuantizer; // 0x80 - CUtlVector< MotionDBIndex > m_codeIndices; // 0xa0 -}; - -// Alignment: 3 -// Size: 0x78 -class CMotionItemGroup -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x20]; // 0x0 -public: - // MPropertyHideField - CUtlVector< CSmartPtr< CMotionItem > > m_motions; // 0x20 - // MPropertyFriendlyName "Name" - CUtlString m_name; // 0x38 - CConditionContainer m_conditions; // 0x40 -}; - -// Alignment: 5 -// Size: 0xa8 -class CMotionItem -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x28]; // 0x0 -public: - // MPropertyHideField - CMotionParameterManager m_paramManager; // 0x28 - // MPropertyHideField - CUtlVector< CSmartPtr< CAnimTagSpan > > m_blockSpans; // 0x50 - // MPropertyHideField - CUtlVector< CSmartPtr< CAnimTagSpan > > m_tagSpans; // 0x68 - // MPropertyHideField - CUtlVector< CSmartPtr< CAnimParamSpan > > m_paramSpans; // 0x80 -private: - [[maybe_unused]] uint8_t __pad0098[0x8]; // 0x98 -public: - // MPropertyFriendlyName "Loop" - bool m_bLoop; // 0xa0 -}; - -// Alignment: 1 -// Size: 0xb8 -class CSequenceMotionItem : public CMotionItem -{ -private: - [[maybe_unused]] uint8_t __pad00a8[0x8]; // 0xa8 -public: - // MPropertyFriendlyName "Sequence" - // MPropertyAttributeChoiceName "Sequence" - CUtlString m_sequenceName; // 0xb0 -}; - -// Alignment: 2 -// Size: 0x108 -class CGraphMotionItem : public CMotionItem -{ -private: - [[maybe_unused]] uint8_t __pad00a8[0x8]; // 0xa8 -public: - // MPropertyFriendlyName "Name" - CUtlString m_name; // 0xb0 - // MPropertyHideField - CMotionNodeManager m_nodeManager; // 0xb8 -}; - -// Alignment: 1 -// Size: 0x28 -class CMotionMetricBase -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x20]; // 0x0 -public: - // MPropertyHideField - float m_flWeight; // 0x20 -}; - -// Alignment: 0 -// Size: 0x28 -class CBlockSelectionMetric : public CMotionMetricBase -{ -public: - // No members available -}; - -// Alignment: 1 -// Size: 0x40 -class CFootCycleMetric : public CMotionMetricBase -{ -public: - // MPropertyFriendlyName "Foot" - // MPropertyAttributeChoiceName "Foot" - // MPropertyAutoExpandSelf - CUtlVector< CUtlString > m_feet; // 0x28 -}; - -// Alignment: 0 -// Size: 0x28 -class CCurrentRotationVelocityMetric : public CMotionMetricBase -{ -public: - // No members available -}; - -// Alignment: 0 -// Size: 0x28 -class CCurrentVelocityMetric : public CMotionMetricBase -{ -public: - // No members available -}; - -// Alignment: 4 -// Size: 0x50 -class CPathMetric : public CMotionMetricBase -{ -public: - // MPropertyFriendlyName "Distance" - float m_flDistance; // 0x28 -private: - [[maybe_unused]] uint8_t __pad002c[0x4]; // 0x2c -public: - // MPropertyFriendlyName "Samples Times" - CUtlVector< float32 > m_pathSamples; // 0x30 - // MPropertyFriendlyName "Extrapolate Movement" - // MPropertyAttrChangeCallback - bool m_bExtrapolateMovement; // 0x48 -private: - [[maybe_unused]] uint8_t __pad0049[0x3]; // 0x49 -public: - // MPropertyFriendlyName "Min Extrapolation Speed" - // MPropertyAttrStateCallback - float m_flMinExtrapolationSpeed; // 0x4c -}; - -// Alignment: 2 -// Size: 0x30 -class CFutureFacingMetric : public CMotionMetricBase -{ -public: - // MPropertyFriendlyName "Distance" - float m_flDistance; // 0x28 - // MPropertyFriendlyName "Time" - float m_flTime; // 0x2c -}; - -// Alignment: 5 -// Size: 0x38 -class CFutureVelocityMetric : public CMotionMetricBase -{ -public: - // MPropertyFriendlyName "Distance" - float m_flDistance; // 0x28 - // MPropertyFriendlyName "Stopping Distance" - float m_flStoppingDistance; // 0x2c - // MPropertyFriendlyName "Mode" - // MPropertyAttrChangeCallback - VelocityMetricMode m_eMode; // 0x30 - // MPropertyFriendlyName "Auto-Calculate target speed" - // MPropertyAttrChangeCallback - // MPropertyAttrStateCallback - bool m_bAutoTargetSpeed; // 0x31 -private: - [[maybe_unused]] uint8_t __pad0032[0x2]; // 0x32 -public: - // MPropertyFriendlyName "Target Speed" - // MPropertyAttrStateCallback - float m_flManualTargetSpeed; // 0x34 -}; - -// Alignment: 1 -// Size: 0x30 -class CBonePositionMetric : public CMotionMetricBase -{ -public: - // MPropertyFriendlyName "Bone" - // MPropertyAttributeChoiceName "Bone" - CUtlString m_boneName; // 0x28 -}; - -// Alignment: 1 -// Size: 0x30 -class CBoneVelocityMetric : public CMotionMetricBase -{ -public: - // MPropertyFriendlyName "Bone" - // MPropertyAttributeChoiceName "Bone" - CUtlString m_boneName; // 0x28 -}; - -// Alignment: 7 -// Size: 0x48 -class CDistanceRemainingMetric : public CMotionMetricBase -{ -public: - // MPropertyFriendlyName "Maximum Tracked Distance" - float m_flMaxDistance; // 0x28 - // MPropertyFriendlyName "Filter By Fixed Distance" - // MPropertyAttrChangeCallback - bool m_bFilterFixedMinDistance; // 0x2c -private: - [[maybe_unused]] uint8_t __pad002d[0x3]; // 0x2d -public: - // MPropertyFriendlyName "Min Distance" - // MPropertyAttrStateCallback - float m_flMinDistance; // 0x30 - // MPropertyFriendlyName "Filter By Goal Distance" - // MPropertyAttrChangeCallback - bool m_bFilterGoalDistance; // 0x34 -private: - [[maybe_unused]] uint8_t __pad0035[0x3]; // 0x35 -public: - // MPropertyFriendlyName "Goal Filter Start Distance" - // MPropertyAttrStateCallback - float m_flStartGoalFilterDistance; // 0x38 - // MPropertyFriendlyName "Filter By Goal Overshoot" - // MPropertyAttrChangeCallback - // MPropertyAttrStateCallback - bool m_bFilterGoalOvershoot; // 0x3c -private: - [[maybe_unused]] uint8_t __pad003d[0x3]; // 0x3d -public: - // MPropertyFriendlyName "Max Goal Overshoot Scale" - // MPropertyAttrStateCallback - float m_flMaxGoalOvershootScale; // 0x40 -}; - -// Alignment: 2 -// Size: 0x48 -class CStepsRemainingMetric : public CMotionMetricBase -{ -public: - // MPropertyFriendlyName "Feet" - // MPropertyAttributeChoiceName "Foot" - // MPropertyAutoExpandSelf - CUtlVector< CUtlString > m_feet; // 0x28 - // MPropertyFriendlyName "Min Steps Remaining" - float m_flMinStepsRemaining; // 0x40 -}; - -// Alignment: 4 -// Size: 0x38 -class CTimeRemainingMetric : public CMotionMetricBase -{ -public: - // MPropertyFriendlyName "Match Time Remaining" - // MPropertyGroupName - // MPropertyAttrChangeCallback - bool m_bMatchByTimeRemaining; // 0x28 -private: - [[maybe_unused]] uint8_t __pad0029[0x3]; // 0x29 -public: - // MPropertyFriendlyName "Max Time Remaining" - // MPropertyAttrStateCallback - float m_flMaxTimeRemaining; // 0x2c - // MPropertyFriendlyName "Filter By Time Remaining" - // MPropertyAttrChangeCallback - bool m_bFilterByTimeRemaining; // 0x30 -private: - [[maybe_unused]] uint8_t __pad0031[0x3]; // 0x31 -public: - // MPropertyFriendlyName "Min Time Remaining" - // MPropertyAttrStateCallback - float m_flMinTimeRemaining; // 0x34 -}; - -// Alignment: 2 -// Size: 0x48 -class CFootPositionMetric : public CMotionMetricBase -{ -public: - // MPropertyFriendlyName "Foot" - // MPropertyAttributeChoiceName "Foot" - // MPropertyAutoExpandSelf - CUtlVector< CUtlString > m_feet; // 0x28 - // MPropertyFriendlyName "Ignore Slope" - bool m_bIgnoreSlope; // 0x40 -}; - -// Alignment: 5 -// Size: 0x58 -struct ScriptInfo_t -{ -public: - CUtlString m_code; // 0x0 - CUtlVector< CAnimParamHandle > m_paramsModified; // 0x8 - CUtlVector< int32 > m_proxyReadParams; // 0x20 - CUtlVector< int32 > m_proxyWriteParams; // 0x38 - AnimScriptType m_eScriptType; // 0x50 -}; - -// Alignment: 1 -// Size: 0x110 -class CAnimScriptManager -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 -public: - CUtlVector< ScriptInfo_t > m_scriptInfo; // 0x10 -}; - -// Alignment: 5 -// Size: 0x28 -struct ParamSpan_t -{ -public: - CUtlVector< ParamSpanSample_t > m_samples; // 0x0 - CAnimParamHandle m_hParam; // 0x18 - AnimParamType_t m_eParamType; // 0x1a -private: - [[maybe_unused]] uint8_t __pad001b[0x1]; // 0x1b -public: - float m_flStartCycle; // 0x1c - float m_flEndCycle; // 0x20 -}; - -// Alignment: 5 -// Size: 0x90 -class CAnimReplayFrame -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 -public: - CUtlVector< CUtlBinaryBlock > m_inputDataBlocks; // 0x10 - CUtlBinaryBlock m_instanceData; // 0x28 - CTransform m_startingLocalToWorldTransform; // 0x40 - CTransform m_localToWorldTransform; // 0x60 - float m_timeStamp; // 0x80 -}; - -// Alignment: 5 -// Size: 0x70 -class CAnimGraphDebugReplay -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x40]; // 0x0 -public: - CUtlString m_animGraphFileName; // 0x40 - CUtlVector< CSmartPtr< CAnimReplayFrame > > m_frameList; // 0x48 - int32_t m_startIndex; // 0x60 - int32_t m_writeIndex; // 0x64 - int32_t m_frameCount; // 0x68 -}; - -// Alignment: 1 -// Size: 0x20 -class CAnimParamHandleMap -{ -public: - CUtlHashtable< uint16, int16 > m_list; // 0x0 -}; - -// Alignment: 6 -// Size: 0x100 -class CAnimParameterListUpdater -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 -public: - CUtlVector< CSmartPtr< CAnimParameterBase > > m_parameters; // 0x18 - CUtlHashtable< AnimParamID, int32 > m_idToIndexMap; // 0x30 - CUtlHashtable< CUtlString, int32 > m_nameToIndexMap; // 0x50 - CUtlVector< CAnimParamHandle > m_indexToHandle; // 0x70 - CUtlVector< CUtlPair< CAnimParamHandle, CAnimVariant > > m_autoResetParams; // 0x88 - CUtlHashtable< CAnimParamHandle, int16 > m_autoResetMap; // 0xa0 -}; - -// Alignment: 1 -// Size: 0x38 -class CAnimTagManagerUpdater -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 -public: - CUtlVector< CSmartPtr< CAnimTagBase > > m_tags; // 0x18 -}; - -// Alignment: 4 -// Size: 0x30 -class CAnimComponentUpdater -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 -public: - CUtlString m_name; // 0x18 - AnimComponentID m_id; // 0x20 - AnimNodeNetworkMode m_networkMode; // 0x24 - bool m_bStartEnabled; // 0x28 -}; - -// Alignment: 2 -// Size: 0x10 -class CMovementMode -{ -public: - // MPropertyFriendlyName "Name" - CUtlString m_name; // 0x0 - // MPropertyFriendlyName "Top Speed" - float m_flSpeed; // 0x8 -}; - -// Alignment: 9 -// Size: 0xc0 -class CMovementComponentUpdater : public CAnimComponentUpdater -{ -public: - CUtlVector< CMovementMode > m_movementModes; // 0x30 - CUtlVector< CSmartPtr< CAnimMotorUpdaterBase > > m_motors; // 0x48 - CAnimInputDamping m_facingDamping; // 0x60 - FacingMode m_eDefaultFacingMode; // 0x70 -private: - [[maybe_unused]] uint8_t __pad0074[0x8]; // 0x74 -public: - int32_t m_nDefaultMotorIndex; // 0x7c - bool m_bMoveVarsDisabled; // 0x80 - bool m_bNetworkPath; // 0x81 - bool m_bNetworkFacing; // 0x82 - CAnimParamHandle m_paramHandles[30]; // 0x83 -}; - -// Alignment: 8 -// Size: 0x48 -class CLookComponentUpdater : public CAnimComponentUpdater -{ -private: - [[maybe_unused]] uint8_t __pad0030[0x4]; // 0x30 -public: - CAnimParamHandle m_hLookHeading; // 0x34 - CAnimParamHandle m_hLookHeadingVelocity; // 0x36 - CAnimParamHandle m_hLookPitch; // 0x38 - CAnimParamHandle m_hLookDistance; // 0x3a - CAnimParamHandle m_hLookDirection; // 0x3c - CAnimParamHandle m_hLookTarget; // 0x3e - CAnimParamHandle m_hLookTargetWorldSpace; // 0x40 - bool m_bNetworkLookTarget; // 0x42 -}; - -// Alignment: 7 -// Size: 0x48 -class CSlopeComponentUpdater : public CAnimComponentUpdater -{ -private: - [[maybe_unused]] uint8_t __pad0030[0x4]; // 0x30 -public: - float m_flTraceDistance; // 0x34 - CAnimParamHandle m_hSlopeAngle; // 0x38 - CAnimParamHandle m_hSlopeAngleFront; // 0x3a - CAnimParamHandle m_hSlopeAngleSide; // 0x3c - CAnimParamHandle m_hSlopeHeading; // 0x3e - CAnimParamHandle m_hSlopeNormal; // 0x40 - CAnimParamHandle m_hSlopeNormal_WorldSpace; // 0x42 -}; - -// Alignment: 0 -// Size: 0x18 -class CAnimActionUpdater -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 -public: - // No members available -}; - -// Alignment: 2 -// Size: 0x20 -class CAnimMotorUpdaterBase -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 -public: - CUtlString m_name; // 0x10 - bool m_bDefault; // 0x18 -}; - -// Alignment: 1 -// Size: 0x28 -class CPathAnimMotorUpdaterBase : public CAnimMotorUpdaterBase -{ -public: - bool m_bLockToPath; // 0x20 -}; - -// Alignment: 0 -// Size: 0x28 -class CPathAnimMotorUpdater : public CPathAnimMotorUpdaterBase -{ -public: - // No members available -}; - -// Alignment: 7 -// Size: 0x48 -class CDampedPathAnimMotorUpdater : public CPathAnimMotorUpdaterBase -{ -private: - [[maybe_unused]] uint8_t __pad0028[0x4]; // 0x28 -public: - float m_flAnticipationTime; // 0x2c - float m_flMinSpeedScale; // 0x30 - CAnimParamHandle m_hAnticipationPosParam; // 0x34 - CAnimParamHandle m_hAnticipationHeadingParam; // 0x36 - float m_flSpringConstant; // 0x38 - float m_flMinSpringTension; // 0x3c - float m_flMaxSpringTension; // 0x40 -}; - -// Alignment: 6 -// Size: 0x50 -class CPlayerInputAnimMotorUpdater : public CAnimMotorUpdaterBase -{ -public: - CUtlVector< float32 > m_sampleTimes; // 0x20 -private: - [[maybe_unused]] uint8_t __pad0038[0x4]; // 0x38 -public: - float m_flSpringConstant; // 0x3c - float m_flAnticipationDistance; // 0x40 - CAnimParamHandle m_hAnticipationPosParam; // 0x44 - CAnimParamHandle m_hAnticipationHeadingParam; // 0x46 - bool m_bUseAcceleration; // 0x48 -}; - -// Alignment: 5 -// Size: 0x1c -class CStateNodeTransitionData -{ -public: - CBlendCurve m_curve; // 0x0 - CAnimValue< float32 > m_blendDuration; // 0x8 - CAnimValue< float32 > m_resetCycleValue; // 0x10 - struct - { - uint8_t m_bReset: 1; - uint8_t m_resetCycleOption: 3; - uint8_t __pad2: 4; - }; // 8 bits -}; - -// Alignment: 1 -// Size: 0x10 -class CAnimUpdateNodeRef -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 -public: - int32_t m_nodeIndex; // 0x8 -}; - -// Alignment: 2 -// Size: 0x18 -class CStateNodeStateData -{ -public: - CAnimUpdateNodeRef m_pChild; // 0x0 - struct - { - uint8_t m_bExclusiveRootMotion: 1; - uint8_t __pad3: 1; - }; // 2 bits -}; - -// Alignment: 3 -// Size: 0x58 -class CAnimUpdateNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 -public: - CAnimNodePath m_nodePath; // 0x18 - CUtlString m_name; // 0x48 - AnimNodeNetworkMode m_networkMode; // 0x50 -}; - -// Alignment: 2 -// Size: 0x20 -class CDirectPlaybackTagData -{ -public: - CUtlString m_sequenceName; // 0x0 - CUtlVector< TagSpan_t > m_tags; // 0x8 -}; - -// Alignment: 15 -// Size: 0x160 -struct TwoBoneIKSettings_t -{ -public: - IkEndEffectorType m_endEffectorType; // 0x0 - CAnimAttachment m_endEffectorAttachment; // 0x10 - IkTargetType m_targetType; // 0x90 -private: - [[maybe_unused]] uint8_t __pad0094[0xc]; // 0x94 -public: - CAnimAttachment m_targetAttachment; // 0xa0 -private: - [[maybe_unused]] uint8_t __pad0094[0x8c]; // 0x94 -public: - int32_t m_targetBoneIndex; // 0x120 - CAnimParamHandle m_hPositionParam; // 0x124 - CAnimParamHandle m_hRotationParam; // 0x126 - bool m_bAlwaysUseFallbackHinge; // 0x128 -private: - [[maybe_unused]] uint8_t __pad0129[0x7]; // 0x129 -public: - VectorAligned m_vLsFallbackHingeAxis; // 0x130 - int32_t m_nFixedBoneIndex; // 0x140 - int32_t m_nMiddleBoneIndex; // 0x144 - int32_t m_nEndBoneIndex; // 0x148 - bool m_bMatchTargetOrientation; // 0x14c - bool m_bConstrainTwist; // 0x14d -private: - [[maybe_unused]] uint8_t __pad014e[0x2]; // 0x14e -public: - float m_flMaxTwist; // 0x150 -}; - -// Alignment: 6 -// Size: 0x88 -class CBinaryUpdateNode : public CAnimUpdateNodeBase -{ -public: - CAnimUpdateNodeRef m_pChild1; // 0x58 - CAnimUpdateNodeRef m_pChild2; // 0x68 - BinaryNodeTiming m_timingBehavior; // 0x78 - float m_flTimingBlend; // 0x7c - bool m_bResetChild1; // 0x80 - bool m_bResetChild2; // 0x81 -}; - -// Alignment: 1 -// Size: 0x68 -class CUnaryUpdateNode : public CAnimUpdateNodeBase -{ -public: - CAnimUpdateNodeRef m_pChildNode; // 0x58 -}; - -// Alignment: 0 -// Size: 0x58 -class CLeafUpdateNode : public CAnimUpdateNodeBase -{ -public: - // No members available -}; - -// Alignment: 9 -// Size: 0x48 -struct SkeletalInputOpFixedSettings_t -{ -public: - CUtlVector< WristBone_t > m_wristBones; // 0x0 - CUtlVector< FingerChain_t > m_fingers; // 0x18 - int32_t m_outerKnuckle1; // 0x30 - int32_t m_outerKnuckle2; // 0x34 - AnimVRHand_t m_eHand; // 0x38 - AnimVRHandMotionRange_t m_eMotionRange; // 0x3c - AnimVrBoneTransformSource_t m_eTransformSource; // 0x40 - bool m_bEnableIK; // 0x44 - bool m_bEnableCollision; // 0x45 -}; - -// Alignment: 2 -// Size: 0x10 -struct StanceInfo_t -{ -public: - Vector m_vPosition; // 0x0 - float m_flDirection; // 0xc -}; - -// Alignment: 4 -// Size: 0x98 -class CStanceOverrideUpdateNode : public CUnaryUpdateNode -{ -public: - CUtlVector< StanceInfo_t > m_footStanceInfo; // 0x68 - CAnimUpdateNodeRef m_pStanceSourceNode; // 0x80 - CAnimParamHandle m_hParameter; // 0x90 -private: - [[maybe_unused]] uint8_t __pad0092[0x2]; // 0x92 -public: - StanceOverrideMode m_eMode; // 0x94 -}; - -// Alignment: 1 -// Size: 0x70 -class CStanceScaleUpdateNode : public CUnaryUpdateNode -{ -public: - CAnimParamHandle m_hParam; // 0x68 -}; - -// Alignment: 8 -// Size: 0xa8 -class CSelectorUpdateNode : public CAnimUpdateNodeBase -{ -public: - CUtlVector< CAnimUpdateNodeRef > m_children; // 0x58 - CUtlVector< int8 > m_tags; // 0x70 -private: - [[maybe_unused]] uint8_t __pad0088[0x4]; // 0x88 -public: - CBlendCurve m_blendCurve; // 0x8c - CAnimValue< float32 > m_flBlendTime; // 0x94 - CAnimParamHandle m_hParameter; // 0x9c -private: - [[maybe_unused]] uint8_t __pad009e[0x2]; // 0x9e -public: - SelectorTagBehavior_t m_eTagBehavior; // 0xa0 - bool m_bResetOnChange; // 0xa4 - bool m_bSyncCyclesOnChange; // 0xa5 -}; - -// Alignment: 17 -// Size: 0x44 -struct HitReactFixedSettings_t -{ -public: - int32_t m_nWeightListIndex; // 0x0 - int32_t m_nEffectedBoneCount; // 0x4 - float m_flMaxImpactForce; // 0x8 - float m_flMinImpactForce; // 0xc - float m_flWhipImpactScale; // 0x10 - float m_flCounterRotationScale; // 0x14 - float m_flDistanceFadeScale; // 0x18 - float m_flPropagationScale; // 0x1c - float m_flWhipDelay; // 0x20 - float m_flSpringStrength; // 0x24 - float m_flWhipSpringStrength; // 0x28 - float m_flMaxAngleRadians; // 0x2c - int32_t m_nHipBoneIndex; // 0x30 - float m_flHipBoneTranslationScale; // 0x34 - float m_flHipDipSpringStrength; // 0x38 - float m_flHipDipImpactScale; // 0x3c - float m_flHipDipDelay; // 0x40 -}; - -// Alignment: 6 -// Size: 0x40 -struct BlendItem_t -{ -public: - CUtlVector< TagSpan_t > m_tags; // 0x0 - CAnimUpdateNodeRef m_pChild; // 0x18 - HSequence m_hSequence; // 0x28 - Vector2D m_vPos; // 0x2c - float m_flDuration; // 0x34 - bool m_bUseCustomDuration; // 0x38 -}; - -// Alignment: 15 -// Size: 0xf0 -class CBlend2DUpdateNode : public CAnimUpdateNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0058[0x8]; // 0x58 -public: - CUtlVector< BlendItem_t > m_items; // 0x60 - CUtlVector< TagSpan_t > m_tags; // 0x78 - CParamSpanUpdater m_paramSpans; // 0x90 - CUtlVector< int32 > m_nodeItemIndices; // 0xa8 - CAnimInputDamping m_damping; // 0xc0 - AnimValueSource m_blendSourceX; // 0xd0 - CAnimParamHandle m_paramX; // 0xd4 -private: - [[maybe_unused]] uint8_t __pad00d6[0x2]; // 0xd6 -public: - AnimValueSource m_blendSourceY; // 0xd8 - CAnimParamHandle m_paramY; // 0xdc -private: - [[maybe_unused]] uint8_t __pad00de[0x2]; // 0xde -public: - Blend2DMode m_eBlendMode; // 0xe0 - float m_playbackSpeed; // 0xe4 - bool m_bLoop; // 0xe8 - bool m_bLockBlendOnReset; // 0xe9 - bool m_bLockWhenWaning; // 0xea - bool m_bAnimEventsAndTagsOnMostWeightedOnly; // 0xeb -}; - -// Alignment: 9 -// Size: 0xa8 -class CFootAdjustmentUpdateNode : public CUnaryUpdateNode -{ -private: - [[maybe_unused]] uint8_t __pad0068[0x8]; // 0x68 -public: - CUtlVector< HSequence > m_clips; // 0x70 - CPoseHandle m_hBasePoseCacheHandle; // 0x88 - CAnimParamHandle m_facingTarget; // 0x8c -private: - [[maybe_unused]] uint8_t __pad008e[0x2]; // 0x8e -public: - float m_flTurnTimeMin; // 0x90 - float m_flTurnTimeMax; // 0x94 - float m_flStepHeightMax; // 0x98 - float m_flStepHeightMaxAngle; // 0x9c - bool m_bResetChild; // 0xa0 - bool m_bAnimationDriven; // 0xa1 -}; - -// Alignment: 2 -// Size: 0x8 -struct TraceSettings_t -{ -public: - float m_flTraceHeight; // 0x0 - float m_flTraceRadius; // 0x4 -}; - -// Alignment: 10 -// Size: 0x40 -class FootFixedSettings -{ -public: - TraceSettings_t m_traceSettings; // 0x0 - VectorAligned m_vFootBaseBindPosePositionMS; // 0x10 - float m_flFootBaseLength; // 0x20 - float m_flMaxRotationLeft; // 0x24 - float m_flMaxRotationRight; // 0x28 - int32_t m_footstepLandedTagIndex; // 0x2c - bool m_bEnableTracing; // 0x30 -private: - [[maybe_unused]] uint8_t __pad0031[0x3]; // 0x31 -public: - float m_flTraceAngleBlend; // 0x34 - int32_t m_nDisableTagIndex; // 0x38 - int32_t m_nFootIndex; // 0x3c -}; - -// Alignment: 18 -// Size: 0x60 -class FootLockPoseOpFixedSettings -{ -public: - CUtlVector< FootFixedData_t > m_footInfo; // 0x0 - CAnimInputDamping m_hipDampingSettings; // 0x18 - int32_t m_nHipBoneIndex; // 0x28 - IKSolverType m_ikSolverType; // 0x2c - bool m_bApplyTilt; // 0x30 - bool m_bApplyHipDrop; // 0x31 - bool m_bAlwaysUseFallbackHinge; // 0x32 - bool m_bApplyFootRotationLimits; // 0x33 - bool m_bApplyLegTwistLimits; // 0x34 -private: - [[maybe_unused]] uint8_t __pad0035[0x3]; // 0x35 -public: - float m_flMaxFootHeight; // 0x38 - float m_flExtensionScale; // 0x3c - float m_flMaxLegTwist; // 0x40 - bool m_bEnableLockBreaking; // 0x44 -private: - [[maybe_unused]] uint8_t __pad0045[0x3]; // 0x45 -public: - float m_flLockBreakTolerance; // 0x48 - float m_flLockBlendTime; // 0x4c - bool m_bEnableStretching; // 0x50 -private: - [[maybe_unused]] uint8_t __pad0051[0x3]; // 0x51 -public: - float m_flMaxStretchAmount; // 0x54 - float m_flStretchExtensionScale; // 0x58 -}; - -// Alignment: 7 -// Size: 0x30 -struct FootPinningPoseOpFixedData_t -{ -public: - CUtlVector< FootFixedData_t > m_footInfo; // 0x0 - float m_flBlendTime; // 0x18 - float m_flLockBreakDistance; // 0x1c - float m_flMaxLegTwist; // 0x20 - int32_t m_nHipBoneIndex; // 0x24 - bool m_bApplyLegTwistLimits; // 0x28 - bool m_bApplyFootRotationLimits; // 0x29 -}; - -// Alignment: 13 -// Size: 0xa8 -class CFollowPathUpdateNode : public CUnaryUpdateNode -{ -private: - [[maybe_unused]] uint8_t __pad0068[0x4]; // 0x68 -public: - float m_flBlendOutTime; // 0x6c - bool m_bBlockNonPathMovement; // 0x70 - bool m_bStopFeetAtGoal; // 0x71 - bool m_bScaleSpeed; // 0x72 -private: - [[maybe_unused]] uint8_t __pad0073[0x1]; // 0x73 -public: - float m_flScale; // 0x74 - float m_flMinAngle; // 0x78 - float m_flMaxAngle; // 0x7c - float m_flSpeedScaleBlending; // 0x80 -private: - [[maybe_unused]] uint8_t __pad0084[0x4]; // 0x84 -public: - CAnimInputDamping m_turnDamping; // 0x88 - AnimValueSource m_facingTarget; // 0x98 - CAnimParamHandle m_hParam; // 0x9c -private: - [[maybe_unused]] uint8_t __pad009e[0x2]; // 0x9e -public: - float m_flTurnToFaceOffset; // 0xa0 - bool m_bTurnToFace; // 0xa4 -}; - -// Alignment: 2 -// Size: 0x20 -class CMotionDataSet -{ -public: - CUtlVector< CMotionGraphGroup > m_groups; // 0x0 - int32_t m_nDimensionCount; // 0x18 -}; - -// Alignment: 2 -// Size: 0x70 -class CSetFacingUpdateNode : public CUnaryUpdateNode -{ -public: - FacingMode m_facingMode; // 0x68 - bool m_bResetChild; // 0x6c -}; - -// Alignment: 5 -// Size: 0x90 -class CStopAtGoalUpdateNode : public CUnaryUpdateNode -{ -private: - [[maybe_unused]] uint8_t __pad0068[0x4]; // 0x68 -public: - float m_flOuterRadius; // 0x6c - float m_flInnerRadius; // 0x70 - float m_flMaxScale; // 0x74 - float m_flMinScale; // 0x78 -private: - [[maybe_unused]] uint8_t __pad007c[0x4]; // 0x7c -public: - CAnimInputDamping m_damping; // 0x80 -}; - -// Alignment: 1 -// Size: 0x18 -struct JiggleBoneSettingsList_t -{ -public: - CUtlVector< JiggleBoneSettings_t > m_boneSettings; // 0x0 -}; - -// Alignment: 4 -// Size: 0x80 -class CSingleFrameUpdateNode : public CLeafUpdateNode -{ -public: - CUtlVector< CSmartPtr< CAnimActionUpdater > > m_actions; // 0x58 - CPoseHandle m_hPoseCacheHandle; // 0x70 - HSequence m_hSequence; // 0x74 - float m_flCycle; // 0x78 -}; - -// Alignment: 0 -// Size: 0x60 -class CInputStreamUpdateNode : public CLeafUpdateNode -{ -public: - // No members available -}; - -// Alignment: 3 -// Size: 0x20 -class FootStepTrigger -{ -public: - CUtlVector< int32 > m_tags; // 0x0 - int32_t m_nFootIndex; // 0x18 - StepPhase m_triggerPhase; // 0x1c -}; - -// Alignment: 2 -// Size: 0x88 -class CFootStepTriggerUpdateNode : public CUnaryUpdateNode -{ -public: - CUtlVector< FootStepTrigger > m_triggers; // 0x68 -private: - [[maybe_unused]] uint8_t __pad0080[0x4]; // 0x80 -public: - float m_flTolerance; // 0x84 -}; - -// Alignment: 5 -// Size: 0x108 -class CMotionGraphGroup -{ -public: - CMotionSearchDB m_searchDB; // 0x0 - CUtlVector< CSmartPtr< CMotionGraph > > m_motionGraphs; // 0xb8 - CUtlVector< CMotionGraphConfig > m_motionGraphConfigs; // 0xd0 - CUtlVector< int32 > m_sampleToConfig; // 0xe8 - AnimScriptHandle m_hIsActiveScript; // 0x100 -}; - -// Alignment: 23 -// Size: 0x140 -class CMotionMatchingUpdateNode : public CLeafUpdateNode -{ -public: - CMotionDataSet m_dataSet; // 0x58 - CUtlVector< CSmartPtr< CMotionMetricEvaluator > > m_metrics; // 0x78 - CUtlVector< float32 > m_weights; // 0x90 -private: - [[maybe_unused]] uint8_t __pad00a8[0x38]; // 0xa8 -public: - bool m_bSearchEveryTick; // 0xe0 -private: - [[maybe_unused]] uint8_t __pad00e1[0x3]; // 0xe1 -public: - float m_flSearchInterval; // 0xe4 - bool m_bSearchWhenClipEnds; // 0xe8 - bool m_bSearchWhenGoalChanges; // 0xe9 -private: - [[maybe_unused]] uint8_t __pad00ea[0x2]; // 0xea -public: - CBlendCurve m_blendCurve; // 0xec - float m_flSampleRate; // 0xf4 - float m_flBlendTime; // 0xf8 - bool m_bLockClipWhenWaning; // 0xfc -private: - [[maybe_unused]] uint8_t __pad00fd[0x3]; // 0xfd -public: - float m_flSelectionThreshold; // 0x100 - float m_flReselectionTimeWindow; // 0x104 - bool m_bEnableRotationCorrection; // 0x108 - bool m_bGoalAssist; // 0x109 -private: - [[maybe_unused]] uint8_t __pad010a[0x2]; // 0x10a -public: - float m_flGoalAssistDistance; // 0x10c - float m_flGoalAssistTolerance; // 0x110 -private: - [[maybe_unused]] uint8_t __pad0114[0x4]; // 0x114 -public: - CAnimInputDamping m_distanceScale_Damping; // 0x118 - float m_flDistanceScale_OuterRadius; // 0x128 - float m_flDistanceScale_InnerRadius; // 0x12c - float m_flDistanceScale_MaxScale; // 0x130 - float m_flDistanceScale_MinScale; // 0x134 - bool m_bEnableDistanceScaling; // 0x138 -}; - -// Alignment: 7 -// Size: 0x58 -class CMotionGraph -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 -public: - CParamSpanUpdater m_paramSpans; // 0x10 - CUtlVector< TagSpan_t > m_tags; // 0x28 - CSmartPtr< CMotionNode > m_pRootNode; // 0x40 - int32_t m_nParameterCount; // 0x48 - int32_t m_nConfigStartIndex; // 0x4c - int32_t m_nConfigCount; // 0x50 - bool m_bLoop; // 0x54 -}; - -// Alignment: 0 -// Size: 0x58 -class CEditableMotionGraph : public CMotionGraph -{ -public: - // No members available -}; - -// Alignment: 2 -// Size: 0x28 -class CMotionNode -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 -public: - CUtlString m_name; // 0x18 - AnimNodeID m_id; // 0x20 -}; - -// Alignment: 3 -// Size: 0x48 -class CMotionNodeSequence : public CMotionNode -{ -public: - CUtlVector< TagSpan_t > m_tags; // 0x28 - HSequence m_hSequence; // 0x40 - float m_flPlaybackSpeed; // 0x44 -}; - -// Alignment: 2 -// Size: 0x10 -class MotionBlendItem -{ -public: - CSmartPtr< CMotionNode > m_pChild; // 0x0 - float m_flKeyValue; // 0x8 -}; - -// Alignment: 2 -// Size: 0x48 -class CMotionNodeBlend1D : public CMotionNode -{ -public: - CUtlVector< MotionBlendItem > m_blendItems; // 0x28 - int32_t m_nParamIndex; // 0x40 -}; - -// Alignment: 4 -// Size: 0x50 -class CMotionMetricEvaluator -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 -public: - CUtlVector< float32 > m_means; // 0x18 - CUtlVector< float32 > m_standardDeviations; // 0x30 - float m_flWeight; // 0x48 - int32_t m_nDimensionStartIndex; // 0x4c -}; - -// Alignment: 0 -// Size: 0x50 -class CBlockSelectionMetricEvaluator : public CMotionMetricEvaluator -{ -public: - // No members available -}; - -// Alignment: 1 -// Size: 0x68 -class CFootCycleMetricEvaluator : public CMotionMetricEvaluator -{ -public: - CUtlVector< int32 > m_footIndices; // 0x50 -}; - -// Alignment: 0 -// Size: 0x50 -class CCurrentRotationVelocityMetricEvaluator : public CMotionMetricEvaluator -{ -public: - // No members available -}; - -// Alignment: 0 -// Size: 0x50 -class CCurrentVelocityMetricEvaluator : public CMotionMetricEvaluator -{ -public: - // No members available -}; - -// Alignment: 4 -// Size: 0x78 -class CPathMetricEvaluator : public CMotionMetricEvaluator -{ -public: - CUtlVector< float32 > m_pathTimeSamples; // 0x50 - float m_flDistance; // 0x68 - bool m_bExtrapolateMovement; // 0x6c -private: - [[maybe_unused]] uint8_t __pad006d[0x3]; // 0x6d -public: - float m_flMinExtrapolationSpeed; // 0x70 -}; - -// Alignment: 2 -// Size: 0x58 -class CFutureFacingMetricEvaluator : public CMotionMetricEvaluator -{ -public: - float m_flDistance; // 0x50 - float m_flTime; // 0x54 -}; - -// Alignment: 4 -// Size: 0x60 -class CFutureVelocityMetricEvaluator : public CMotionMetricEvaluator -{ -public: - float m_flDistance; // 0x50 - float m_flStoppingDistance; // 0x54 - float m_flTargetSpeed; // 0x58 - VelocityMetricMode m_eMode; // 0x5c -}; - -// Alignment: 1 -// Size: 0x58 -class CBonePositionMetricEvaluator : public CMotionMetricEvaluator -{ -public: - int32_t m_nBoneIndex; // 0x50 -}; - -// Alignment: 1 -// Size: 0x58 -class CBoneVelocityMetricEvaluator : public CMotionMetricEvaluator -{ -public: - int32_t m_nBoneIndex; // 0x50 -}; - -// Alignment: 7 -// Size: 0x68 -class CDistanceRemainingMetricEvaluator : public CMotionMetricEvaluator -{ -public: - float m_flMaxDistance; // 0x50 - float m_flMinDistance; // 0x54 - float m_flStartGoalFilterDistance; // 0x58 - float m_flMaxGoalOvershootScale; // 0x5c - bool m_bFilterFixedMinDistance; // 0x60 - bool m_bFilterGoalDistance; // 0x61 - bool m_bFilterGoalOvershoot; // 0x62 -}; - -// Alignment: 2 -// Size: 0x70 -class CStepsRemainingMetricEvaluator : public CMotionMetricEvaluator -{ -public: - CUtlVector< int32 > m_footIndices; // 0x50 - float m_flMinStepsRemaining; // 0x68 -}; - -// Alignment: 4 -// Size: 0x60 -class CTimeRemainingMetricEvaluator : public CMotionMetricEvaluator -{ -public: - bool m_bMatchByTimeRemaining; // 0x50 -private: - [[maybe_unused]] uint8_t __pad0051[0x3]; // 0x51 -public: - float m_flMaxTimeRemaining; // 0x54 - bool m_bFilterByTimeRemaining; // 0x58 -private: - [[maybe_unused]] uint8_t __pad0059[0x3]; // 0x59 -public: - float m_flMinTimeRemaining; // 0x5c -}; - -// Alignment: 2 -// Size: 0x70 -class CFootPositionMetricEvaluator : public CMotionMetricEvaluator -{ -public: - CUtlVector< int32 > m_footIndices; // 0x50 - bool m_bIgnoreSlope; // 0x68 -}; - -// Alignment: 8 -// Size: 0xd0 -struct AimMatrixOpFixedSettings_t -{ -public: - CAnimAttachment m_attachment; // 0x0 - CAnimInputDamping m_damping; // 0x80 - CPoseHandle m_poseCacheHandles[10]; // 0x90 - AimMatrixBlendMode m_eBlendMode; // 0xb8 - float m_fAngleIncrement; // 0xbc - int32_t m_nSequenceMaxFrame; // 0xc0 - int32_t m_nBoneMaskIndex; // 0xc4 - bool m_bTargetIsPosition; // 0xc8 -}; - -// Alignment: 2 -// Size: 0x8 -struct LookAtBone_t -{ -public: - int32_t m_index; // 0x0 - float m_weight; // 0x4 -}; - -// Alignment: 11 -// Size: 0xc0 -struct LookAtOpFixedSettings_t -{ -public: - CAnimAttachment m_attachment; // 0x0 - CAnimInputDamping m_damping; // 0x80 - CUtlVector< LookAtBone_t > m_bones; // 0x90 - float m_flYawLimit; // 0xa8 - float m_flPitchLimit; // 0xac - float m_flHysteresisInnerAngle; // 0xb0 - float m_flHysteresisOuterAngle; // 0xb4 - bool m_bRotateYawForward; // 0xb8 - bool m_bMaintainUpDirection; // 0xb9 - bool m_bTargetIsPosition; // 0xba - bool m_bUseHysteresis; // 0xbb -}; - -// Alignment: 4 -// Size: 0x90 -struct FollowAttachmentSettings_t -{ -public: - CAnimAttachment m_attachment; // 0x0 - int32_t m_boneIndex; // 0x80 - bool m_bMatchTranslation; // 0x84 - bool m_bMatchRotation; // 0x85 -}; - -// Alignment: 2 -// Size: 0x8 -struct FingerSource_t -{ -public: - AnimVRFinger_t m_nFingerIndex; // 0x0 - float m_flFingerWeight; // 0x4 -}; - -// Alignment: 7 -// Size: 0x34 -struct FingerBone_t -{ -public: - int32_t m_boneIndex; // 0x0 - Vector m_hingeAxis; // 0x4 - Vector m_vCapsulePos1; // 0x10 - Vector m_vCapsulePos2; // 0x1c - float m_flMinAngle; // 0x28 - float m_flMaxAngle; // 0x2c - float m_flRadius; // 0x30 -}; - -// Alignment: 9 -// Size: 0x60 -struct FingerChain_t -{ -public: - CUtlVector< FingerSource_t > m_targets; // 0x0 - CUtlVector< FingerBone_t > m_bones; // 0x18 - Vector m_vTipOffset; // 0x30 - Vector m_vSplayHingeAxis; // 0x3c - int32_t m_tipParentBoneIndex; // 0x48 - int32_t m_metacarpalBoneIndex; // 0x4c - float m_flSplayMinAngle; // 0x50 - float m_flSplayMaxAngle; // 0x54 - float m_flFingerScaleRatio; // 0x58 -}; - -// Alignment: 2 -// Size: 0x30 -struct WristBone_t -{ -public: - CTransform m_xOffsetTransformMS; // 0x0 - int32_t m_boneIndex; // 0x20 -}; - -// Alignment: 1 -// Size: 0xa8 -class CSkeletalInputUpdateNode : public CLeafUpdateNode -{ -public: - SkeletalInputOpFixedSettings_t m_fixedOpData; // 0x58 -}; - -// Alignment: 8 -// Size: 0xc8 -class CHitReactUpdateNode : public CUnaryUpdateNode -{ -public: - HitReactFixedSettings_t m_opFixedSettings; // 0x68 -private: - [[maybe_unused]] uint8_t __pad00ac[0x8]; // 0xac -public: - CAnimParamHandle m_triggerParam; // 0xb4 - CAnimParamHandle m_hitBoneParam; // 0xb6 - CAnimParamHandle m_hitOffsetParam; // 0xb8 - CAnimParamHandle m_hitDirectionParam; // 0xba - CAnimParamHandle m_hitStrengthParam; // 0xbc -private: - [[maybe_unused]] uint8_t __pad00be[0x2]; // 0xbe -public: - float m_flMinDelayBetweenHits; // 0xc0 - bool m_bResetChild; // 0xc4 -}; - -// Alignment: 20 -// Size: 0x138 -class CFootLockUpdateNode : public CUnaryUpdateNode -{ -public: - FootLockPoseOpFixedSettings m_opFixedSettings; // 0x68 -private: - [[maybe_unused]] uint8_t __pad00c8[0x8]; // 0xc8 -public: - CUtlVector< FootFixedSettings > m_footSettings; // 0xd0 - CAnimInputDamping m_hipShiftDamping; // 0xe8 - CAnimInputDamping m_rootHeightDamping; // 0xf8 - float m_flStrideCurveScale; // 0x108 - float m_flStrideCurveLimitScale; // 0x10c - float m_flStepHeightIncreaseScale; // 0x110 - float m_flStepHeightDecreaseScale; // 0x114 - float m_flHipShiftScale; // 0x118 - float m_flBlendTime; // 0x11c - float m_flMaxRootHeightOffset; // 0x120 - float m_flMinRootHeightOffset; // 0x124 - float m_flTiltPlanePitchSpringStrength; // 0x128 - float m_flTiltPlaneRollSpringStrength; // 0x12c - bool m_bApplyFootRotationLimits; // 0x130 - bool m_bApplyHipShift; // 0x131 - bool m_bModulateStepHeight; // 0x132 - bool m_bResetChild; // 0x133 - bool m_bEnableVerticalCurvedPaths; // 0x134 - bool m_bEnableRootHeightDamping; // 0x135 -}; - -// Alignment: 4 -// Size: 0xc8 -class CFootPinningUpdateNode : public CUnaryUpdateNode -{ -private: - [[maybe_unused]] uint8_t __pad0068[0x8]; // 0x68 -public: - FootPinningPoseOpFixedData_t m_poseOpFixedData; // 0x70 - FootPinningTimingSource m_eTimingSource; // 0xa0 -private: - [[maybe_unused]] uint8_t __pad00a4[0x4]; // 0xa4 -public: - CUtlVector< CAnimParamHandle > m_params; // 0xa8 - bool m_bResetChild; // 0xc0 -}; - -// Alignment: 6 -// Size: 0x50 -struct ChainToSolveData_t -{ -public: - int32_t m_nChainIndex; // 0x0 - IKSolverSettings_t m_SolverSettings; // 0x4 -private: - [[maybe_unused]] uint8_t __pad000c[0x4]; // 0xc -public: - IKTargetSettings_t m_TargetSettings; // 0x10 - SolveIKChainAnimNodeDebugSetting m_DebugSetting; // 0x30 - float m_flDebugNormalizedValue; // 0x34 -private: - [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 -public: - VectorAligned m_vDebugOffset; // 0x40 -}; - -// Alignment: 1 -// Size: 0x18 -struct SolveIKChainPoseOpFixedSettings_t -{ -public: - CUtlVector< ChainToSolveData_t > m_ChainsToSolveData; // 0x0 -}; - -// Alignment: 7 -// Size: 0x2c -struct JiggleBoneSettings_t -{ -public: - int32_t m_nBoneIndex; // 0x0 - float m_flSpringStrength; // 0x4 - float m_flMaxTimeStep; // 0x8 - float m_flDamping; // 0xc - Vector m_vBoundsMaxLS; // 0x10 - Vector m_vBoundsMinLS; // 0x1c - JiggleBoneSimSpace m_eSimSpace; // 0x28 -}; - -// Alignment: 1 -// Size: 0x88 -class CJiggleBoneUpdateNode : public CUnaryUpdateNode -{ -public: - JiggleBoneSettingsList_t m_opFixedData; // 0x68 -}; - // Alignment: 5 // Size: 0x78 struct VPhysics2ShapeDef_t @@ -7046,8 +2025,6 @@ public: // Size: 0x48 class CModelConfigElement { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: CUtlString m_ElementName; // 0x8 CUtlVector< CModelConfigElement* > m_NestedElements; // 0x10 @@ -7291,8 +2268,6 @@ public: // Size: 0x70 class CHitBox { -private: - [[maybe_unused]] uint8_t __pad0000[0x20]; // 0x0 public: Vector m_vMinBounds; // 0x20 Vector m_vMaxBounds; // 0x2c @@ -7339,8 +2314,6 @@ public: // Size: 0x1e0 class CRenderMesh { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: CUtlVectorFixedGrowable< CSceneObjectData > m_sceneObjects; // 0x10 CUtlVector< CBaseConstraint* > m_constraints; // 0xa0 @@ -7351,8 +2324,6 @@ public: // Size: 0x60 class CConstraintTarget { -private: - [[maybe_unused]] uint8_t __pad0000[0x20]; // 0x0 public: Quaternion m_qOffset; // 0x20 Vector m_vOffset; // 0x30 @@ -7384,10 +2355,8 @@ public: // Size: 0x28 class CBoneConstraintBase { -private: - [[maybe_unused]] uint8_t __pad0000[0x28]; // 0x0 public: - // No members available + uint8_t __pad0000[0x28]; // Autoaligned }; // Alignment: 4 @@ -7584,8 +2553,6 @@ public: // Size: 0x98 class CMorphSetData { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: int32_t m_nWidth; // 0x10 int32_t m_nHeight; // 0x14 @@ -7613,8 +2580,6 @@ public: // Size: 0xd0 class CAnimSkeleton { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: CUtlVector< CTransform > m_localSpaceTransforms; // 0x10 CUtlVector< CTransform > m_modelSpaceTransforms; // 0x28 @@ -7690,8 +2655,6 @@ public: Vector m_vOffset; // 0x0 float m_flRotationOffset; // 0xc float m_flProgression; // 0x10 - - // Static fields: static CFootTrajectory &Get_Identity(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("animationsystem.dll")->FindDeclaredClass("CFootTrajectory")->m_static_fields[0]->m_instance);}; }; @@ -7789,131 +2752,273 @@ public: AnimVRHand_t m_eHand; // 0x48 }; -// Alignment: 4 -// Size: 0x150 -class CAnimationGraph : public CAnimationSubGraph +// Alignment: 1 +// Size: 0x8 +struct BoneDemoCaptureSettings_t { +public: + // MPropertyFriendlyName "Bone" + // MPropertyAttributeChoiceName "Bone" + CUtlString m_boneName; // 0x0 +}; + +// Alignment: 5 +// Size: 0x28 +struct IKDemoCaptureSettings_t +{ +public: + // MPropertyFriendlyName "Target Parent" + // MPropertyAttributeChoiceName "Bone" + CUtlString m_parentBoneName; // 0x0 + // MPropertyFriendlyName "Solver Mode" + // MPropertyAttrChangeCallback + IKChannelMode m_eMode; // 0x8 private: - [[maybe_unused]] uint8_t __pad00e0[0x8]; // 0xe0 + [[maybe_unused]] uint8_t __pad000c[0x4]; // 0xc public: - CSmartPtr< CAnimGraphSettingsManager > m_pSettingsManager; // 0xe8 -private: - [[maybe_unused]] uint8_t __pad00f0[0x8]; // 0xf0 + // MPropertyFriendlyName "IK Chain" + // MPropertyAttributeChoiceName "IKChain" + // MPropertyAttrStateCallback + CUtlString m_ikChainName; // 0x10 + // MPropertyFriendlyName "Start Bone" + // MPropertyAttributeChoiceName "Bone" + // MPropertyAttrStateCallback + CUtlString m_oneBoneStart; // 0x18 + // MPropertyFriendlyName "End Bone" + // MPropertyAttributeChoiceName "Bone" + // MPropertyAttrStateCallback + CUtlString m_oneBoneEnd; // 0x20 +}; + +// Alignment: 15 +// Size: 0x68 +class CAnimDemoCaptureSettings +{ public: - CAnimClipDataManager m_clipDataManager; // 0xf8 -private: - [[maybe_unused]] uint8_t __pad0130[0x10]; // 0x130 + // MPropertyFriendlyName "Max Rotation Error" + // MPropertyGroupName "+Spline Settings" + float m_flMaxSplineErrorRotation; // 0x0 + // MPropertyFriendlyName "Max Translation Error" + // MPropertyGroupName "+Spline Settings" + float m_flMaxSplineErrorTranslation; // 0x4 + // MPropertyFriendlyName "Max Scale Error" + // MPropertyGroupName "+Spline Settings" + float m_flMaxSplineErrorScale; // 0x8 + // MPropertyFriendlyName "Max IK Rotation Error" + // MPropertyGroupName "+Spline Settings" + float m_flIkRotation_MaxSplineError; // 0xc + // MPropertyFriendlyName "Max IK Translation Error" + // MPropertyGroupName "+Spline Settings" + float m_flIkTranslation_MaxSplineError; // 0x10 + // MPropertyFriendlyName "Max Rotation Error" + // MPropertyGroupName "+Quantization Settings" + float m_flMaxQuantizationErrorRotation; // 0x14 + // MPropertyFriendlyName "Max Translation Error" + // MPropertyGroupName "+Quantization Settings" + float m_flMaxQuantizationErrorTranslation; // 0x18 + // MPropertyFriendlyName "Max Scale Error" + // MPropertyGroupName "+Quantization Settings" + float m_flMaxQuantizationErrorScale; // 0x1c + // MPropertyFriendlyName "Max IK Rotation Error" + // MPropertyGroupName "+Quantization Settings" + float m_flIkRotation_MaxQuantizationError; // 0x20 + // MPropertyFriendlyName "Max IK Translation Error" + // MPropertyGroupName "+Quantization Settings" + float m_flIkTranslation_MaxQuantizationError; // 0x24 + // MPropertyFriendlyName "Base Sequence" + // MPropertyGroupName "+Base Pose" + // MPropertyAttributeChoiceName "Sequence" + CUtlString m_baseSequence; // 0x28 + // MPropertyFriendlyName "Base Sequence Frame" + // MPropertyGroupName "+Base Pose" + int32_t m_nBaseSequenceFrame; // 0x30 + // MPropertyFriendlyName "Bone Selection Mode" + // MPropertyGroupName "+Bones" + // MPropertyAttrChangeCallback + EDemoBoneSelectionMode m_boneSelectionMode; // 0x34 + // MPropertyFriendlyName "Bones" + // MPropertyGroupName "+Bones" + // MPropertyAttrStateCallback + CUtlVector< BoneDemoCaptureSettings_t > m_bones; // 0x38 + // MPropertyFriendlyName "IK Chains" + CUtlVector< IKDemoCaptureSettings_t > m_ikChains; // 0x50 +}; + +// Alignment: 5 +// Size: 0x90 +class CAnimReplayFrame +{ public: - CUtlString m_modelName; // 0x140 - CUtlString m_previewModelName; // 0x148 + CUtlVector< CUtlBinaryBlock > m_inputDataBlocks; // 0x10 + CUtlBinaryBlock m_instanceData; // 0x28 + CTransform m_startingLocalToWorldTransform; // 0x40 + CTransform m_localToWorldTransform; // 0x60 + float m_timeStamp; // 0x80 +}; + +// Alignment: 5 +// Size: 0x70 +class CAnimGraphDebugReplay +{ +public: + CUtlString m_animGraphFileName; // 0x40 + CUtlVector< CSmartPtr< CAnimReplayFrame > > m_frameList; // 0x48 + int32_t m_startIndex; // 0x60 + int32_t m_writeIndex; // 0x64 + int32_t m_frameCount; // 0x68 +}; + +// Alignment: 2 +// Size: 0x28 +class CAnimGraphModelBinding +{ +public: + CUtlString m_modelName; // 0x8 + CSmartPtr< CAnimUpdateSharedData > m_pSharedData; // 0x10 +}; + +// Alignment: 2 +// Size: 0x10 +class CAnimInputDamping +{ +public: + // MPropertyFriendlyName "Speed Function" + DampingSpeedFunction m_speedFunction; // 0x8 + // MPropertyFriendlyName "Speed Scale" + float m_fSpeedScale; // 0xc +}; + +// Alignment: 2 +// Size: 0x2 +class CAnimParamHandle +{ +public: + AnimParamType_t m_type; // 0x0 + uint8_t m_index; // 0x1 }; // Alignment: 1 -// Size: 0x38 -class CAnimScriptComponentUpdater : public CAnimComponentUpdater +// Size: 0x20 +class CAnimParamHandleMap { public: - AnimScriptHandle m_hScript; // 0x30 -}; - -// Alignment: 1 -// Size: 0x48 -class CActionComponentUpdater : public CAnimComponentUpdater -{ -public: - CUtlVector< CSmartPtr< CAnimActionUpdater > > m_actions; // 0x30 -}; - -// Alignment: 1 -// Size: 0xb8 -class CCPPScriptComponentUpdater : public CAnimComponentUpdater -{ -public: - // MPropertyFriendlyName "Scripts" - CUtlVector< CUtlString > m_scriptsToRun; // 0x30 -}; - -// Alignment: 1 -// Size: 0x48 -class CDampedValueComponentUpdater : public CAnimComponentUpdater -{ -public: - CUtlVector< CDampedValueUpdateItem > m_items; // 0x30 -}; - -// Alignment: 1 -// Size: 0x38 -class CLODComponentUpdater : public CAnimComponentUpdater -{ -public: - int32_t m_nServerLOD; // 0x30 + CUtlHashtable< uint16, int16 > m_list; // 0x0 }; // Alignment: 6 -// Size: 0xa0 -class CRagdollComponentUpdater : public CAnimComponentUpdater +// Size: 0x100 +class CAnimParameterManagerUpdater { public: - CUtlVector< CAnimNodePath > m_ragdollNodePaths; // 0x30 - CUtlVector< int32 > m_boneIndices; // 0x48 - CUtlVector< CUtlString > m_boneNames; // 0x60 - CUtlVector< WeightList > m_weightLists; // 0x78 - float m_flSpringFrequencyMin; // 0x90 - float m_flSpringFrequencyMax; // 0x94 + CUtlVector< CSmartPtr< CAnimParameterBase > > m_parameters; // 0x18 + CUtlHashtable< AnimParamID, int32 > m_idToIndexMap; // 0x30 + CUtlHashtable< CUtlString, int32 > m_nameToIndexMap; // 0x50 + CUtlVector< CAnimParamHandle > m_indexToHandle; // 0x70 + CUtlVector< CUtlPair< CAnimParamHandle, CAnimVariant > > m_autoResetParams; // 0x88 + CUtlHashtable< CAnimParamHandle, int16 > m_autoResetMap; // 0xa0 +}; + +// Alignment: 1 +// Size: 0x30 +class CAnimGraphSettingsManager +{ +public: + CUtlVector< CSmartPtr< CAnimGraphSettingsGroup > > m_settingsGroups; // 0x18 +}; + +// Alignment: 2 +// Size: 0x8 +class CBlendCurve +{ +public: + float m_flControlPoint1; // 0x0 + float m_flControlPoint2; // 0x4 +}; + +// Alignment: 2 +// Size: 0x18 +struct ParamSpanSample_t +{ +public: + CAnimVariant m_value; // 0x0 + float m_flCycle; // 0x14 +}; + +// Alignment: 5 +// Size: 0x28 +struct ParamSpan_t +{ +public: + CUtlVector< ParamSpanSample_t > m_samples; // 0x0 + CAnimParamHandle m_hParam; // 0x18 + AnimParamType_t m_eParamType; // 0x1a +private: + [[maybe_unused]] uint8_t __pad001b[0x1]; // 0x1b +public: + float m_flStartCycle; // 0x1c + float m_flEndCycle; // 0x20 +}; + +// Alignment: 1 +// Size: 0x18 +class CParamSpanUpdater +{ +public: + CUtlVector< ParamSpan_t > m_spans; // 0x0 }; // Alignment: 0 -// Size: 0x70 -class CAnimComponentStateTransition : public CAnimStateTransition +// Size: 0x20 +class CAnimGraphSettingsGroup +{ +public: + uint8_t __pad0000[0x20]; // Autoaligned +}; + +// Alignment: 2 +// Size: 0x30 +class CAnimNodePath +{ +public: + AnimNodeID m_path[11]; // 0x0 + int32_t m_nCount; // 0x2c +}; + +// Alignment: 4 +// Size: 0x40 +class CCachedPose +{ +public: + CUtlVector< CTransform > m_transforms; // 0x8 + CUtlVector< float32 > m_morphWeights; // 0x20 + HSequence m_hSequence; // 0x38 + float m_flCycle; // 0x3c +}; + +// Alignment: 3 +// Size: 0x30 +class CStaticPoseCache +{ +public: + CUtlVector< CCachedPose > m_poses; // 0x10 + int32_t m_nBoneCount; // 0x28 + int32_t m_nMorphCount; // 0x2c +}; + +// Alignment: 0 +// Size: 0x38 +class CStaticPoseCacheBuilder : public CStaticPoseCache { public: // No members available }; // Alignment: 0 -// Size: 0x70 -class CAnimComponentState : public CAnimState +// Size: 0x18 +class CAnimActionUpdater { public: - // No members available -}; - -// Alignment: 1 -// Size: 0x68 -class CStateMachineComponent : public CAnimComponentBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x28]; // 0x38 -public: - // MPropertyFriendlyName "Name" - // MPropertySortPriority "100" - CUtlString m_sName; // 0x60 -}; - -// Alignment: 1 -// Size: 0x88 -class CStateMachineComponentUpdater : public CAnimComponentUpdater -{ -public: - CAnimStateMachineUpdater m_stateMachine; // 0x30 -}; - -// Alignment: 9 -// Size: 0x48 -class CVRInputComponentUpdater : public CAnimComponentUpdater -{ -private: - [[maybe_unused]] uint8_t __pad0030[0x4]; // 0x30 -public: - CAnimParamHandle m_FingerCurl_Thumb; // 0x34 - CAnimParamHandle m_FingerCurl_Index; // 0x36 - CAnimParamHandle m_FingerCurl_Middle; // 0x38 - CAnimParamHandle m_FingerCurl_Ring; // 0x3a - CAnimParamHandle m_FingerCurl_Pinky; // 0x3c - CAnimParamHandle m_FingerSplay_Thumb_Index; // 0x3e - CAnimParamHandle m_FingerSplay_Index_Middle; // 0x40 - CAnimParamHandle m_FingerSplay_Middle_Ring; // 0x42 - CAnimParamHandle m_FingerSplay_Ring_Pinky; // 0x44 + uint8_t __pad0000[0x18]; // Autoaligned }; // Alignment: 2 @@ -7956,145 +3061,1212 @@ public: AnimScriptHandle m_hScript; // 0x1c }; -// Alignment: 5 -// Size: 0xb8 -class CAnimNodeStateTransition : public CAnimStateTransition +// Alignment: 4 +// Size: 0x30 +class CAnimTagBase { -private: - [[maybe_unused]] uint8_t __pad0070[0x8]; // 0x70 public: - // MPropertyFriendlyName "Blend Duration" - CFloatAnimValue m_blendDuration; // 0x78 - // MPropertyFriendlyName "Reset Destination" - bool m_bReset; // 0x90 -private: - [[maybe_unused]] uint8_t __pad0091[0x3]; // 0x91 -public: - // MPropertyFriendlyName "Start Cycle At" - ResetCycleOption m_resetCycleOption; // 0x94 - // MPropertyFriendlyName "Fixed Start Cycle Value" - CFloatAnimValue m_flFixedCycleValue; // 0x98 + // MPropertyFriendlyName "Name" + // MPropertySortPriority "100" + CUtlString m_name; // 0x18 // MPropertyHideField - CBlendCurve m_blendCurve; // 0xb0 -}; - -// Alignment: 2 -// Size: 0x80 -class CAnimNodeState : public CAnimState -{ + CUtlString m_group; // 0x20 + // MPropertyHideField + AnimTagID m_tagID; // 0x28 +private: + [[maybe_unused]] uint8_t __pad0028[0x4]; // 0x28 public: // MPropertyHideField - CAnimNodeConnection m_inputConnection; // 0x70 - // MPropertyFriendlyName "Exclusive Root Motion" - // MPropertySortPriority "0" - bool m_bIsRootMotionExclusive; // 0x78 -}; - -// Alignment: 2 -// Size: 0x68 -class CStateMachineAnimNode : public CAnimNodeBase -{ -private: - [[maybe_unused]] uint8_t __pad0038[0x28]; // 0x38 -public: - // MPropertyFriendlyName "Block Tags from Waning States" - bool m_bBlockWaningTags; // 0x60 - // MPropertyFriendlyName "Lock State when Waning" - bool m_bLockStateWhenWaning; // 0x61 -}; - -// Alignment: 2 -// Size: 0x70 -class CRagdollUpdateNode : public CUnaryUpdateNode -{ -public: - int32_t m_nWeightListIndex; // 0x68 - RagdollPoseControl m_poseControlMethod; // 0x6c + bool m_bIsReferenced; // 0x2c }; // Alignment: 1 -// Size: 0xb8 -class CGroupAnimNode : public CContainerAnimNodeBase +// Size: 0x38 +class CAnimTagManagerUpdater { public: - // MPropertyHideField - CAnimNodeManager m_nodeMgr; // 0x70 + CUtlVector< CSmartPtr< CAnimTagBase > > m_tags; // 0x18 +}; + +// Alignment: 7 +// Size: 0x50 +class CAudioAnimTag : public CAnimTagBase +{ +public: + // MPropertyFriendlyName "Sound Event" + // MPropertyAttributeEditor "SoundPicker()" + CUtlString m_clipName; // 0x38 + // MPropertyFriendlyName "Attachment" + // MPropertyAttributeChoiceName "Attachment" + CUtlString m_attachmentName; // 0x40 + // MPropertyFriendlyName "Volume" + // MPropertyAttributeRange "0 1" + float m_flVolume; // 0x48 + // MPropertyFriendlyName "Stop on Tag End" + bool m_bStopWhenTagEnds; // 0x4c + // MPropertyFriendlyName "Stop When Graph Destroyed" + bool m_bStopWhenGraphEnds; // 0x4d + // MPropertyFriendlyName "Play on Server" + bool m_bPlayOnServer; // 0x4e + // MPropertyFriendlyName "Play on Client" + bool m_bPlayOnClient; // 0x4f +}; + +// Alignment: 2 +// Size: 0x10 +class CBodyGroupSetting +{ +public: + // MPropertyFriendlyName "BodyGroup" + // MPropertyAttributeChoiceName "BodyGroup" + // MPropertyAutoRebuildOnChange + CUtlString m_BodyGroupName; // 0x0 + // MPropertyFriendlyName "BodyGroup Option" + // MPropertyAttributeChoiceName "BodyGroupOption" + // MPropertyAttrExtraInfoFn + int32_t m_nBodyGroupOption; // 0x8 +}; + +// Alignment: 2 +// Size: 0x58 +class CBodyGroupAnimTag : public CAnimTagBase +{ +public: + // MPropertyFriendlyName "Priority" + int32_t m_nPriority; // 0x38 +private: + [[maybe_unused]] uint8_t __pad003c[0x4]; // 0x3c +public: + // MPropertyFriendlyName "Body Group Settings" + CUtlVector< CBodyGroupSetting > m_bodyGroupSettings; // 0x40 +}; + +// Alignment: 4 +// Size: 0x50 +class CClothSettingsAnimTag : public CAnimTagBase +{ +public: + // MPropertyFriendlyName "Stiffness" + // MPropertyAttributeRange "0 1" + float m_flStiffness; // 0x38 + // MPropertyFriendlyName "EaseIn" + // MPropertyAttributeRange "0 1" + float m_flEaseIn; // 0x3c + // MPropertyFriendlyName "EaseOut" + // MPropertyAttributeRange "0 1" + float m_flEaseOut; // 0x40 +private: + [[maybe_unused]] uint8_t __pad0044[0x4]; // 0x44 +public: + // MPropertyFriendlyName "VertexSet" + CUtlString m_nVertexSet; // 0x48 +}; + +// Alignment: 1 +// Size: 0x40 +class CFootFallAnimTag : public CAnimTagBase +{ +public: + // MPropertyFriendlyName "Foot" + FootFallTagFoot_t m_foot; // 0x38 +}; + +// Alignment: 4 +// Size: 0x58 +class CFootstepLandedAnimTag : public CAnimTagBase +{ +public: + // MPropertyFriendlyName "Footstep Type" + FootstepLandedFootSoundType_t m_FootstepType; // 0x38 +private: + [[maybe_unused]] uint8_t __pad003c[0x4]; // 0x3c +public: + // MPropertyFriendlyName "Override Sound" + // MPropertyAttributeChoiceName "Sound" + CUtlString m_OverrideSoundName; // 0x40 + // MPropertyFriendlyName "Debug Name" + CUtlString m_DebugAnimSourceString; // 0x48 + // MPropertyFriendlyName "Bone Name" + // MPropertyAttributeChoiceName "Bone" + CUtlString m_BoneName; // 0x50 +}; + +// Alignment: 4 +// Size: 0x50 +class CMaterialAttributeAnimTag : public CAnimTagBase +{ +public: + // MPropertyFriendlyName "Attribute Name" + CUtlString m_AttributeName; // 0x38 + // MPropertyFriendlyName "Attribute Type" + // MPropertyAttrChangeCallback + MatterialAttributeTagType_t m_AttributeType; // 0x40 + // MPropertyFriendlyName "Value" + // MPropertyAttrStateCallback + float m_flValue; // 0x44 + // MPropertyFriendlyName "Color" + // MPropertyAttrStateCallback + Color m_Color; // 0x48 +}; + +// Alignment: 10 +// Size: 0x78 +class CParticleAnimTag : public CAnimTagBase +{ +public: + // MPropertySuppressField + CStrongHandle< InfoForResourceTypeIParticleSystemDefinition > m_hParticleSystem; // 0x38 + // MPropertyAttributeEditor "AssetBrowse( vpcf )" + // MPropertyFriendlyName "Particle System" + CUtlString m_particleSystemName; // 0x40 + // MPropertyFriendlyName "Configuration" + CUtlString m_configName; // 0x48 + // MPropertyFriendlyName "Detach From Owner" + bool m_bDetachFromOwner; // 0x50 + // MPropertyFriendlyName "Stop on Tag End" + // MPropertyGroupName "Ending" + bool m_bStopWhenTagEnds; // 0x51 + // MPropertyFriendlyName "Tag End Stop is Instant" + // MPropertyGroupName "Ending" + bool m_bTagEndStopIsInstant; // 0x52 +private: + [[maybe_unused]] uint8_t __pad0053[0x5]; // 0x53 +public: + // MPropertyFriendlyName "Attachment" + // MPropertyGroupName "Attachments" + // MPropertyAttributeChoiceName "Attachment" + CUtlString m_attachmentName; // 0x58 + // MPropertyFriendlyName "Attachment Type" + // MPropertyGroupName "Attachments" + ParticleAttachment_t m_attachmentType; // 0x60 +private: + [[maybe_unused]] uint8_t __pad0064[0x4]; // 0x64 +public: + // MPropertyFriendlyName "Attachment (Control Point 1)" + // MPropertyGroupName "Attachments" + // MPropertyAttributeChoiceName "Attachment" + CUtlString m_attachmentCP1Name; // 0x68 + // MPropertyFriendlyName "Attachment Type (Control Point 1)" + // MPropertyGroupName "Attachments" + ParticleAttachment_t m_attachmentCP1Type; // 0x70 +}; + +// Alignment: 6 +// Size: 0x50 +class CRagdollAnimTag : public CAnimTagBase +{ +public: + // MPropertyFriendlyName "Pose Control" + AnimPoseControl m_nPoseControl; // 0x38 + // MPropertyFriendlyName "Frequency" + // MPropertyAttributeRange "0 30" + float m_flFrequency; // 0x3c + // MPropertyFriendlyName "Damping Ratio" + // MPropertyAttributeRange "0 2" + float m_flDampingRatio; // 0x40 + // MPropertyFriendlyName "Decay Duration" + // MPropertyAttributeRange "-1 1000" + float m_flDecayDuration; // 0x44 + // MPropertyFriendlyName "Decay Bias" + // MPropertyAttributeRange "0 1" + float m_flDecayBias; // 0x48 + // MPropertyFriendlyName "Destroy" + bool m_bDestroy; // 0x4c +}; + +// Alignment: 1 +// Size: 0x40 +class CSequenceFinishedAnimTag : public CAnimTagBase +{ +public: + // MPropertyFriendlyName "Sequence" + // MPropertyAttributeChoiceName "Sequence" + CUtlString m_sequenceName; // 0x38 }; // Alignment: 0 -// Size: 0x60 -class CGroupInputAnimNode : public CProxyAnimNodeBase +// Size: 0x38 +class CStringAnimTag : public CAnimTagBase { public: // No members available }; +// Alignment: 1 +// Size: 0x48 +class CTaskStatusAnimTag : public CAnimTagBase +{ +public: + // MPropertyHideField + CUtlString m_identifierString; // 0x38 +}; + +// Alignment: 4 +// Size: 0x30 +class CAnimComponentUpdater +{ +public: + CUtlString m_name; // 0x18 + AnimComponentID m_id; // 0x20 +private: + [[maybe_unused]] uint8_t __pad0020[0x4]; // 0x20 +public: + AnimNodeNetworkMode m_networkMode; // 0x24 + bool m_bStartEnabled; // 0x28 +}; + +// Alignment: 1 +// Size: 0x38 +class CAnimScriptComponentUpdater : public CAnimComponentUpdater +{ +public: + AnimScriptHandle m_hScript; // 0x30 +}; + +// Alignment: 1 +// Size: 0x60 +class CCPPScriptComponentUpdater : public CAnimComponentUpdater +{ +public: + // MPropertyFriendlyName "Scripts" + CUtlVector< CGlobalSymbol > m_scriptsToRun; // 0x30 +}; + +// Alignment: 3 +// Size: 0x20 +class CDampedValueUpdateItem +{ +public: + CAnimInputDamping m_damping; // 0x0 + CAnimParamHandle m_hParamIn; // 0x18 + CAnimParamHandle m_hParamOut; // 0x1a +}; + +// Alignment: 1 +// Size: 0x48 +class CDampedValueComponentUpdater : public CAnimComponentUpdater +{ +public: + CUtlVector< CDampedValueUpdateItem > m_items; // 0x30 +}; + +// Alignment: 1 +// Size: 0x98 +class CDemoSettingsComponentUpdater : public CAnimComponentUpdater +{ +public: + CAnimDemoCaptureSettings m_settings; // 0x30 +}; + +// Alignment: 1 +// Size: 0x38 +class CLODComponentUpdater : public CAnimComponentUpdater +{ +public: + int32_t m_nServerLOD; // 0x30 +}; + +// Alignment: 8 +// Size: 0x48 +class CLookComponentUpdater : public CAnimComponentUpdater +{ +public: + CAnimParamHandle m_hLookHeading; // 0x34 + CAnimParamHandle m_hLookHeadingVelocity; // 0x36 + CAnimParamHandle m_hLookPitch; // 0x38 + CAnimParamHandle m_hLookDistance; // 0x3a + CAnimParamHandle m_hLookDirection; // 0x3c + CAnimParamHandle m_hLookTarget; // 0x3e + CAnimParamHandle m_hLookTargetWorldSpace; // 0x40 + bool m_bNetworkLookTarget; // 0x42 +}; + +// Alignment: 2 +// Size: 0x10 +class CMovementMode +{ +public: + // MPropertyFriendlyName "Name" + CUtlString m_name; // 0x0 + // MPropertyFriendlyName "Top Speed" + float m_flSpeed; // 0x8 +}; + +// Alignment: 9 +// Size: 0xc0 +class CMovementComponentUpdater : public CAnimComponentUpdater +{ +public: + CUtlVector< CMovementMode > m_movementModes; // 0x30 + CUtlVector< CSmartPtr< CAnimMotorUpdaterBase > > m_motors; // 0x48 + CAnimInputDamping m_facingDamping; // 0x60 + FacingMode m_eDefaultFacingMode; // 0x70 +private: + [[maybe_unused]] uint8_t __pad0074[0x8]; // 0x74 +public: + int32_t m_nDefaultMotorIndex; // 0x7c + bool m_bMoveVarsDisabled; // 0x80 + bool m_bNetworkPath; // 0x81 + bool m_bNetworkFacing; // 0x82 + CAnimParamHandle m_paramHandles[30]; // 0x83 +}; + +// Alignment: 2 +// Size: 0x20 +class WeightList +{ +public: + CUtlString m_name; // 0x0 + CUtlVector< float32 > m_weights; // 0x8 +}; + +// Alignment: 6 +// Size: 0xa0 +class CRagdollComponentUpdater : public CAnimComponentUpdater +{ +public: + CUtlVector< CAnimNodePath > m_ragdollNodePaths; // 0x30 + CUtlVector< int32 > m_boneIndices; // 0x48 + CUtlVector< CUtlString > m_boneNames; // 0x60 + CUtlVector< WeightList > m_weightLists; // 0x78 + float m_flSpringFrequencyMin; // 0x90 + float m_flSpringFrequencyMax; // 0x94 +}; + +// Alignment: 7 +// Size: 0x48 +class CSlopeComponentUpdater : public CAnimComponentUpdater +{ +public: + float m_flTraceDistance; // 0x34 + CAnimParamHandle m_hSlopeAngle; // 0x38 + CAnimParamHandle m_hSlopeAngleFront; // 0x3a + CAnimParamHandle m_hSlopeAngleSide; // 0x3c + CAnimParamHandle m_hSlopeHeading; // 0x3e + CAnimParamHandle m_hSlopeNormal; // 0x40 + CAnimParamHandle m_hSlopeNormal_WorldSpace; // 0x42 +}; + +// Alignment: 9 +// Size: 0x48 +class CVRInputComponentUpdater : public CAnimComponentUpdater +{ +public: + CAnimParamHandle m_FingerCurl_Thumb; // 0x34 + CAnimParamHandle m_FingerCurl_Index; // 0x36 + CAnimParamHandle m_FingerCurl_Middle; // 0x38 + CAnimParamHandle m_FingerCurl_Ring; // 0x3a + CAnimParamHandle m_FingerCurl_Pinky; // 0x3c + CAnimParamHandle m_FingerSplay_Thumb_Index; // 0x3e + CAnimParamHandle m_FingerSplay_Index_Middle; // 0x40 + CAnimParamHandle m_FingerSplay_Middle_Ring; // 0x42 + CAnimParamHandle m_FingerSplay_Ring_Pinky; // 0x44 +}; + +// Alignment: 3 +// Size: 0x58 +class CAnimStateMachineUpdater +{ +public: + CUtlVector< CStateUpdateData > m_states; // 0x8 + CUtlVector< CTransitionUpdateData > m_transitions; // 0x20 +private: + [[maybe_unused]] uint8_t __pad0038[0x18]; // 0x38 +public: + int32_t m_startStateIndex; // 0x50 +}; + +// Alignment: 2 +// Size: 0x20 +class CMotionDataSet +{ +public: + CUtlVector< CMotionGraphGroup > m_groups; // 0x0 + int32_t m_nDimensionCount; // 0x18 +}; + +// Alignment: 2 +// Size: 0x20 +class CProductQuantizer +{ +public: + CUtlVector< CVectorQuantizer > m_subQuantizers; // 0x0 + int32_t m_nDimensions; // 0x18 +}; + +// Alignment: 1 +// Size: 0x8 +class SampleCode +{ +public: + uint8_t m_subCode[8]; // 0x0 +}; + +// Alignment: 1 +// Size: 0x4 +class MotionDBIndex +{ +public: + uint32_t m_nIndex; // 0x0 +}; + +// Alignment: 3 +// Size: 0x20 +class CVectorQuantizer +{ +public: + CUtlVector< float32 > m_centroidVectors; // 0x0 + int32_t m_nCentroids; // 0x18 + int32_t m_nDimensions; // 0x1c +}; + +// Alignment: 5 +// Size: 0x80 +class CMotionSearchNode +{ +public: + CUtlVector< CMotionSearchNode* > m_children; // 0x0 + CVectorQuantizer m_quantizer; // 0x18 + CUtlVector< CUtlVector< SampleCode > > m_sampleCodes; // 0x38 + CUtlVector< CUtlVector< int32 > > m_sampleIndices; // 0x50 + CUtlVector< int32 > m_selectableSamples; // 0x68 +}; + +// Alignment: 3 +// Size: 0xb8 +class CMotionSearchDB +{ +public: + CMotionSearchNode m_rootNode; // 0x0 + CProductQuantizer m_residualQuantizer; // 0x80 + CUtlVector< MotionDBIndex > m_codeIndices; // 0xa0 +}; + +// Alignment: 5 +// Size: 0x108 +class CMotionGraphGroup +{ +public: + CMotionSearchDB m_searchDB; // 0x0 + CUtlVector< CSmartPtr< CMotionGraph > > m_motionGraphs; // 0xb8 + CUtlVector< CMotionGraphConfig > m_motionGraphConfigs; // 0xd0 + CUtlVector< int32 > m_sampleToConfig; // 0xe8 + AnimScriptHandle m_hIsActiveScript; // 0x100 +}; + +// Alignment: 7 +// Size: 0x58 +class CMotionGraph +{ +public: + CParamSpanUpdater m_paramSpans; // 0x10 + CUtlVector< TagSpan_t > m_tags; // 0x28 + CSmartPtr< CMotionNode > m_pRootNode; // 0x40 + int32_t m_nParameterCount; // 0x48 + int32_t m_nConfigStartIndex; // 0x4c + int32_t m_nConfigCount; // 0x50 + bool m_bLoop; // 0x54 +}; + // Alignment: 0 // Size: 0x58 -class CGroupOutputAnimNode : public CProxyAnimNodeBase +class CEditableMotionGraph : public CMotionGraph +{ +public: + // No members available +}; + +// Alignment: 2 +// Size: 0x28 +class CMotionNode +{ +public: + CUtlString m_name; // 0x18 + AnimNodeID m_id; // 0x20 +}; + +// Alignment: 3 +// Size: 0x48 +class CMotionNodeSequence : public CMotionNode +{ +public: + CUtlVector< TagSpan_t > m_tags; // 0x28 + HSequence m_hSequence; // 0x40 + float m_flPlaybackSpeed; // 0x44 +}; + +// Alignment: 2 +// Size: 0x10 +class MotionBlendItem +{ +public: + CSmartPtr< CMotionNode > m_pChild; // 0x0 + float m_flKeyValue; // 0x8 +}; + +// Alignment: 2 +// Size: 0x48 +class CMotionNodeBlend1D : public CMotionNode +{ +public: + CUtlVector< MotionBlendItem > m_blendItems; // 0x28 + int32_t m_nParamIndex; // 0x40 +}; + +// Alignment: 4 +// Size: 0x50 +class CMotionMetricEvaluator +{ +public: + CUtlVector< float32 > m_means; // 0x18 + CUtlVector< float32 > m_standardDeviations; // 0x30 + float m_flWeight; // 0x48 + int32_t m_nDimensionStartIndex; // 0x4c +}; + +// Alignment: 0 +// Size: 0x50 +class CBlockSelectionMetricEvaluator : public CMotionMetricEvaluator +{ +public: + // No members available +}; + +// Alignment: 1 +// Size: 0x58 +class CBonePositionMetricEvaluator : public CMotionMetricEvaluator +{ +public: + int32_t m_nBoneIndex; // 0x50 +}; + +// Alignment: 1 +// Size: 0x58 +class CBoneVelocityMetricEvaluator : public CMotionMetricEvaluator +{ +public: + int32_t m_nBoneIndex; // 0x50 +}; + +// Alignment: 0 +// Size: 0x50 +class CCurrentRotationVelocityMetricEvaluator : public CMotionMetricEvaluator { public: // No members available }; // Alignment: 0 -// Size: 0x60 -class CBindPoseUpdateNode : public CLeafUpdateNode +// Size: 0x50 +class CCurrentVelocityMetricEvaluator : public CMotionMetricEvaluator { public: // No members available }; -// Alignment: 0 -// Size: 0x60 -class CZeroPoseUpdateNode : public CLeafUpdateNode -{ -public: - // No members available -}; - -// Alignment: 0 -// Size: 0x60 -class CAndCondition : public CConditionBase -{ -private: - [[maybe_unused]] uint8_t __pad0028[0x10]; // 0x28 -public: - // No members available -}; - -// Alignment: 0 +// Alignment: 7 // Size: 0x68 -class CRootUpdateNode : public CUnaryUpdateNode +class CDistanceRemainingMetricEvaluator : public CMotionMetricEvaluator +{ +public: + float m_flMaxDistance; // 0x50 + float m_flMinDistance; // 0x54 + float m_flStartGoalFilterDistance; // 0x58 + float m_flMaxGoalOvershootScale; // 0x5c + bool m_bFilterFixedMinDistance; // 0x60 + bool m_bFilterGoalDistance; // 0x61 + bool m_bFilterGoalOvershoot; // 0x62 +}; + +// Alignment: 1 +// Size: 0x68 +class CFootCycleMetricEvaluator : public CMotionMetricEvaluator +{ +public: + CUtlVector< int32 > m_footIndices; // 0x50 +}; + +// Alignment: 2 +// Size: 0x70 +class CFootPositionMetricEvaluator : public CMotionMetricEvaluator +{ +public: + CUtlVector< int32 > m_footIndices; // 0x50 + bool m_bIgnoreSlope; // 0x68 +}; + +// Alignment: 2 +// Size: 0x58 +class CFutureFacingMetricEvaluator : public CMotionMetricEvaluator +{ +public: + float m_flDistance; // 0x50 + float m_flTime; // 0x54 +}; + +// Alignment: 4 +// Size: 0x60 +class CFutureVelocityMetricEvaluator : public CMotionMetricEvaluator +{ +public: + float m_flDistance; // 0x50 + float m_flStoppingDistance; // 0x54 + float m_flTargetSpeed; // 0x58 + VelocityMetricMode m_eMode; // 0x5c +}; + +// Alignment: 4 +// Size: 0x78 +class CPathMetricEvaluator : public CMotionMetricEvaluator +{ +public: + CUtlVector< float32 > m_pathTimeSamples; // 0x50 + float m_flDistance; // 0x68 + bool m_bExtrapolateMovement; // 0x6c +private: + [[maybe_unused]] uint8_t __pad006d[0x3]; // 0x6d +public: + float m_flMinExtrapolationSpeed; // 0x70 +}; + +// Alignment: 2 +// Size: 0x70 +class CStepsRemainingMetricEvaluator : public CMotionMetricEvaluator +{ +public: + CUtlVector< int32 > m_footIndices; // 0x50 + float m_flMinStepsRemaining; // 0x68 +}; + +// Alignment: 4 +// Size: 0x60 +class CTimeRemainingMetricEvaluator : public CMotionMetricEvaluator +{ +public: + bool m_bMatchByTimeRemaining; // 0x50 +private: + [[maybe_unused]] uint8_t __pad0051[0x3]; // 0x51 +public: + float m_flMaxTimeRemaining; // 0x54 + bool m_bFilterByTimeRemaining; // 0x58 +private: + [[maybe_unused]] uint8_t __pad0059[0x3]; // 0x59 +public: + float m_flMinTimeRemaining; // 0x5c +}; + +// Alignment: 2 +// Size: 0x20 +class CAnimMotorUpdaterBase +{ +public: + CUtlString m_name; // 0x10 + bool m_bDefault; // 0x18 +}; + +// Alignment: 1 +// Size: 0x28 +class CPathAnimMotorUpdaterBase : public CAnimMotorUpdaterBase +{ +public: + bool m_bLockToPath; // 0x20 +}; + +// Alignment: 7 +// Size: 0x48 +class CDampedPathAnimMotorUpdater : public CPathAnimMotorUpdaterBase +{ +public: + float m_flAnticipationTime; // 0x2c + float m_flMinSpeedScale; // 0x30 + CAnimParamHandle m_hAnticipationPosParam; // 0x34 + CAnimParamHandle m_hAnticipationHeadingParam; // 0x36 + float m_flSpringConstant; // 0x38 + float m_flMinSpringTension; // 0x3c + float m_flMaxSpringTension; // 0x40 +}; + +// Alignment: 0 +// Size: 0x28 +class CPathAnimMotorUpdater : public CPathAnimMotorUpdaterBase { public: // No members available }; // Alignment: 6 -// Size: 0xa8 -class CSequenceUpdateNode : public CLeafUpdateNode +// Size: 0x50 +class CPlayerInputAnimMotorUpdater : public CAnimMotorUpdaterBase { -private: - [[maybe_unused]] uint8_t __pad0058[0x8]; // 0x58 public: - CParamSpanUpdater m_paramSpans; // 0x60 - CUtlVector< TagSpan_t > m_tags; // 0x78 + CUtlVector< float32 > m_sampleTimes; // 0x20 private: - [[maybe_unused]] uint8_t __pad0090[0x4]; // 0x90 + [[maybe_unused]] uint8_t __pad0038[0x4]; // 0x38 public: - HSequence m_hSequence; // 0x94 - float m_playbackSpeed; // 0x98 - float m_duration; // 0x9c - bool m_bLoop; // 0xa0 + float m_flSpringConstant; // 0x3c + float m_flAnticipationDistance; // 0x40 + CAnimParamHandle m_hAnticipationPosParam; // 0x44 + CAnimParamHandle m_hAnticipationHeadingParam; // 0x46 + bool m_bUseAcceleration; // 0x48 +}; + +// Alignment: 8 +// Size: 0xd0 +struct AimMatrixOpFixedSettings_t +{ +public: + CAnimAttachment m_attachment; // 0x0 + CAnimInputDamping m_damping; // 0x80 + CPoseHandle m_poseCacheHandles[10]; // 0x90 + AimMatrixBlendMode m_eBlendMode; // 0xb8 + float m_fAngleIncrement; // 0xbc + int32_t m_nSequenceMaxFrame; // 0xc0 + int32_t m_nBoneMaskIndex; // 0xc4 + bool m_bTargetIsPosition; // 0xc8 +}; + +// Alignment: 4 +// Size: 0x90 +struct FollowAttachmentSettings_t +{ +public: + CAnimAttachment m_attachment; // 0x0 + int32_t m_boneIndex; // 0x80 + bool m_bMatchTranslation; // 0x84 + bool m_bMatchRotation; // 0x85 +}; + +// Alignment: 18 +// Size: 0x60 +class FootLockPoseOpFixedSettings +{ +public: + CUtlVector< FootFixedData_t > m_footInfo; // 0x0 + CAnimInputDamping m_hipDampingSettings; // 0x18 + int32_t m_nHipBoneIndex; // 0x28 + IKSolverType m_ikSolverType; // 0x2c + bool m_bApplyTilt; // 0x30 + bool m_bApplyHipDrop; // 0x31 + bool m_bAlwaysUseFallbackHinge; // 0x32 + bool m_bApplyFootRotationLimits; // 0x33 + bool m_bApplyLegTwistLimits; // 0x34 +private: + [[maybe_unused]] uint8_t __pad0035[0x3]; // 0x35 +public: + float m_flMaxFootHeight; // 0x38 + float m_flExtensionScale; // 0x3c + float m_flMaxLegTwist; // 0x40 + bool m_bEnableLockBreaking; // 0x44 +private: + [[maybe_unused]] uint8_t __pad0045[0x3]; // 0x45 +public: + float m_flLockBreakTolerance; // 0x48 + float m_flLockBlendTime; // 0x4c + bool m_bEnableStretching; // 0x50 +private: + [[maybe_unused]] uint8_t __pad0051[0x3]; // 0x51 +public: + float m_flMaxStretchAmount; // 0x54 + float m_flStretchExtensionScale; // 0x58 +}; + +// Alignment: 7 +// Size: 0x30 +struct FootPinningPoseOpFixedData_t +{ +public: + CUtlVector< FootFixedData_t > m_footInfo; // 0x0 + float m_flBlendTime; // 0x18 + float m_flLockBreakDistance; // 0x1c + float m_flMaxLegTwist; // 0x20 + int32_t m_nHipBoneIndex; // 0x24 + bool m_bApplyLegTwistLimits; // 0x28 + bool m_bApplyFootRotationLimits; // 0x29 +}; + +// Alignment: 17 +// Size: 0x44 +struct HitReactFixedSettings_t +{ +public: + int32_t m_nWeightListIndex; // 0x0 + int32_t m_nEffectedBoneCount; // 0x4 + float m_flMaxImpactForce; // 0x8 + float m_flMinImpactForce; // 0xc + float m_flWhipImpactScale; // 0x10 + float m_flCounterRotationScale; // 0x14 + float m_flDistanceFadeScale; // 0x18 + float m_flPropagationScale; // 0x1c + float m_flWhipDelay; // 0x20 + float m_flSpringStrength; // 0x24 + float m_flWhipSpringStrength; // 0x28 + float m_flMaxAngleRadians; // 0x2c + int32_t m_nHipBoneIndex; // 0x30 + float m_flHipBoneTranslationScale; // 0x34 + float m_flHipDipSpringStrength; // 0x38 + float m_flHipDipImpactScale; // 0x3c + float m_flHipDipDelay; // 0x40 +}; + +// Alignment: 7 +// Size: 0x2c +struct JiggleBoneSettings_t +{ +public: + int32_t m_nBoneIndex; // 0x0 + float m_flSpringStrength; // 0x4 + float m_flMaxTimeStep; // 0x8 + float m_flDamping; // 0xc + Vector m_vBoundsMaxLS; // 0x10 + Vector m_vBoundsMinLS; // 0x1c + JiggleBoneSimSpace m_eSimSpace; // 0x28 +}; + +// Alignment: 1 +// Size: 0x18 +struct JiggleBoneSettingsList_t +{ +public: + CUtlVector< JiggleBoneSettings_t > m_boneSettings; // 0x0 +}; + +// Alignment: 2 +// Size: 0x8 +struct LookAtBone_t +{ +public: + int32_t m_index; // 0x0 + float m_weight; // 0x4 +}; + +// Alignment: 11 +// Size: 0xc0 +struct LookAtOpFixedSettings_t +{ +public: + CAnimAttachment m_attachment; // 0x0 + CAnimInputDamping m_damping; // 0x80 + CUtlVector< LookAtBone_t > m_bones; // 0x90 + float m_flYawLimit; // 0xa8 + float m_flPitchLimit; // 0xac + float m_flHysteresisInnerAngle; // 0xb0 + float m_flHysteresisOuterAngle; // 0xb4 + bool m_bRotateYawForward; // 0xb8 + bool m_bMaintainUpDirection; // 0xb9 + bool m_bTargetIsPosition; // 0xba + bool m_bUseHysteresis; // 0xbb +}; + +// Alignment: 2 +// Size: 0x8 +struct FingerSource_t +{ +public: + AnimVRFinger_t m_nFingerIndex; // 0x0 + float m_flFingerWeight; // 0x4 +}; + +// Alignment: 7 +// Size: 0x34 +struct FingerBone_t +{ +public: + int32_t m_boneIndex; // 0x0 + Vector m_hingeAxis; // 0x4 + Vector m_vCapsulePos1; // 0x10 + Vector m_vCapsulePos2; // 0x1c + float m_flMinAngle; // 0x28 + float m_flMaxAngle; // 0x2c + float m_flRadius; // 0x30 +}; + +// Alignment: 9 +// Size: 0x60 +struct FingerChain_t +{ +public: + CUtlVector< FingerSource_t > m_targets; // 0x0 + CUtlVector< FingerBone_t > m_bones; // 0x18 + Vector m_vTipOffset; // 0x30 + Vector m_vSplayHingeAxis; // 0x3c + int32_t m_tipParentBoneIndex; // 0x48 + int32_t m_metacarpalBoneIndex; // 0x4c + float m_flSplayMinAngle; // 0x50 + float m_flSplayMaxAngle; // 0x54 + float m_flFingerScaleRatio; // 0x58 +}; + +// Alignment: 2 +// Size: 0x30 +struct WristBone_t +{ +public: + CTransform m_xOffsetTransformMS; // 0x0 + int32_t m_boneIndex; // 0x20 +}; + +// Alignment: 9 +// Size: 0x48 +struct SkeletalInputOpFixedSettings_t +{ +public: + CUtlVector< WristBone_t > m_wristBones; // 0x0 + CUtlVector< FingerChain_t > m_fingers; // 0x18 + int32_t m_outerKnuckle1; // 0x30 + int32_t m_outerKnuckle2; // 0x34 + AnimVRHand_t m_eHand; // 0x38 + AnimVRHandMotionRange_t m_eMotionRange; // 0x3c + AnimVrBoneTransformSource_t m_eTransformSource; // 0x40 + bool m_bEnableIK; // 0x44 + bool m_bEnableCollision; // 0x45 +}; + +// Alignment: 2 +// Size: 0x8 +struct IKSolverSettings_t +{ +public: + // MPropertyFriendlyName "Solver Type" + // MPropertyAttrChangeCallback + IKSolverType m_SolverType; // 0x0 + // MPropertyFriendlyName "Num Iterations " + // MPropertyAttrStateCallback + int32_t m_nNumIterations; // 0x4 +}; + +// Alignment: 2 +// Size: 0x20 +struct SolveIKChainPoseOpFixedSettings_t +{ +public: + CUtlVector< ChainToSolveData_t > m_ChainsToSolveData; // 0x0 + bool m_bMatchTargetOrientation; // 0x18 +}; + +// Alignment: 12 +// Size: 0x78 +class CAnimParameterBase +{ +public: + // MPropertyFriendlyName "Name" + // MPropertySortPriority "100" + CAnimGraphSymbolWithStorage m_name; // 0x18 + // MPropertyHideField + CUtlString m_group; // 0x38 + // MPropertyHideField + AnimParamID m_id; // 0x40 +private: + [[maybe_unused]] uint8_t __pad0040[0x18]; // 0x40 +public: + // MPropertyHideField + // MPropertyAttrChangeCallback + CUtlString m_componentName; // 0x58 +private: + [[maybe_unused]] uint8_t __pad0060[0x4]; // 0x60 +public: + // MPropertyFriendlyName "Preview Button" + AnimParamButton_t m_previewButton; // 0x64 + // MPropertyFriendlyName "Force Latest Value" + bool m_bUseMostRecentValue; // 0x68 + // MPropertyFriendlyName "Auto Reset" + bool m_bAutoReset; // 0x69 +private: + [[maybe_unused]] uint8_t __pad006a[0x2]; // 0x6a +public: + // MPropertyFriendlyName "Network" + AnimParamNetworkSetting m_eNetworkSetting; // 0x6c + // MPropertyFriendlyName "Game Writable" + // MPropertyGroupName "+Permissions" + // MPropertyAttrStateCallback + bool m_bGameWritable; // 0x70 + // MPropertyFriendlyName "Graph Writable" + // MPropertyGroupName "+Permissions" + // MPropertyAttrStateCallback + bool m_bGraphWritable; // 0x71 + // MPropertyHideField + bool m_bIsReferenced; // 0x72 + // MPropertyHideField + bool m_bNetworkingRequested; // 0x73 +}; + +// Alignment: 1 +// Size: 0x80 +class CBoolAnimParameter : public CAnimParameterBase +{ +public: + // MPropertyFriendlyName "Default Value" + bool m_bDefaultValue; // 0x78 +}; + +// Alignment: 2 +// Size: 0xd0 +class CEnumAnimParameter : public CAnimParameterBase +{ +public: + // MPropertyFriendlyName "Default Value" + uint8_t m_defaultValue; // 0x80 +private: + [[maybe_unused]] uint8_t __pad0081[0x7]; // 0x81 +public: + // MPropertyFriendlyName "Values" + CUtlVector< CUtlString > m_enumOptions; // 0x88 +}; + +// Alignment: 3 +// Size: 0x88 +class CIntAnimParameter : public CAnimParameterBase +{ +public: + // MPropertyFriendlyName "Default Value" + int32_t m_defaultValue; // 0x78 + // MPropertyFriendlyName "Min Value" + int32_t m_minValue; // 0x7c + // MPropertyFriendlyName "Max Value" + int32_t m_maxValue; // 0x80 +}; + +// Alignment: 4 +// Size: 0x88 +class CFloatAnimParameter : public CAnimParameterBase +{ +public: + // MPropertyFriendlyName "Default Value" + float m_fDefaultValue; // 0x78 + // MPropertyFriendlyName "Min Value" + float m_fMinValue; // 0x7c + // MPropertyFriendlyName "Max Value" + float m_fMaxValue; // 0x80 + // MPropertyFriendlyName "Interpolate" + bool m_bInterpolate; // 0x84 +}; + +// Alignment: 2 +// Size: 0x88 +class CVectorAnimParameter : public CAnimParameterBase +{ +public: + // MPropertyFriendlyName "Default Value" + Vector m_defaultValue; // 0x78 + // MPropertyFriendlyName "Interpolate" + bool m_bInterpolate; // 0x84 +}; + +// Alignment: 2 +// Size: 0xa0 +class CQuaternionAnimParameter : public CAnimParameterBase +{ +public: + // MPropertyFriendlyName "Default Value" + Quaternion m_defaultValue; // 0x80 + // MPropertyFriendlyName "Interpolate" + bool m_bInterpolate; // 0x90 +}; + +// Alignment: 5 +// Size: 0x58 +struct ScriptInfo_t +{ +public: + CUtlString m_code; // 0x0 + CUtlVector< CAnimParamHandle > m_paramsModified; // 0x8 + CUtlVector< int32 > m_proxyReadParams; // 0x20 + CUtlVector< int32 > m_proxyWriteParams; // 0x38 + AnimScriptType m_eScriptType; // 0x50 +}; + +// Alignment: 1 +// Size: 0x1a0 +class CAnimScriptManager +{ +public: + CUtlVector< ScriptInfo_t > m_scriptInfo; // 0x10 +}; + +// Alignment: 2 +// Size: 0x10 +class CStateActionUpdater +{ +public: + CSmartPtr< CAnimActionUpdater > m_pAction; // 0x0 + StateActionBehavior m_eBehavior; // 0x8 +}; + +// Alignment: 3 +// Size: 0x3 +class CTransitionUpdateData +{ +public: + uint8_t m_srcStateIndex; // 0x0 + uint8_t m_destStateIndex; // 0x1 + struct + { + uint8_t m_bDisabled: 1; + uint8_t __pad0: 1; // Autoaligned + }; // 2 bits +}; + +// Alignment: 8 +// Size: 0x48 +class CStateUpdateData +{ +public: + CUtlString m_name; // 0x0 + AnimScriptHandle m_hScript; // 0x8 + CUtlVector< int32 > m_transitionIndices; // 0x10 + CUtlVector< CStateActionUpdater > m_actions; // 0x28 + AnimStateID m_stateID; // 0x40 + struct + { + uint8_t m_bIsStartState: 1; + uint8_t m_bIsEndState: 1; + uint8_t m_bIsPassthrough: 1; + uint8_t __pad1: 3; // Autoaligned + }; // 6 bits +}; + +// Alignment: 1 +// Size: 0x88 +class CStateMachineComponentUpdater : public CAnimComponentUpdater +{ +public: + CAnimStateMachineUpdater m_stateMachine; // 0x30 +}; + +// Alignment: 1 +// Size: 0x10 +class CAnimUpdateNodeRef +{ +public: + int32_t m_nodeIndex; // 0x8 +}; + +// Alignment: 3 +// Size: 0x58 +class CAnimUpdateNodeBase +{ +public: + CAnimNodePath m_nodePath; // 0x18 + CUtlString m_name; // 0x48 + AnimNodeNetworkMode m_networkMode; // 0x50 +}; + +// Alignment: 6 +// Size: 0x88 +class CBinaryUpdateNode : public CAnimUpdateNodeBase +{ +public: + CAnimUpdateNodeRef m_pChild1; // 0x58 + CAnimUpdateNodeRef m_pChild2; // 0x68 + BinaryNodeTiming m_timingBehavior; // 0x78 + float m_flTimingBlend; // 0x7c + bool m_bResetChild1; // 0x80 + bool m_bResetChild2; // 0x81 }; // Alignment: 11 // Size: 0xd0 class CBlendUpdateNode : public CAnimUpdateNodeBase { -private: - [[maybe_unused]] uint8_t __pad0058[0x8]; // 0x58 public: CUtlVector< CAnimUpdateNodeRef > m_children; // 0x60 CUtlVector< uint8 > m_sortedOrder; // 0x78 @@ -8115,21 +4287,62 @@ public: bool m_bLockWhenWaning; // 0xcf }; -// Alignment: 5 -// Size: 0xf8 -class CStateMachineUpdateNode : public CAnimUpdateNodeBase +// Alignment: 6 +// Size: 0x40 +struct BlendItem_t { -private: - [[maybe_unused]] uint8_t __pad0058[0x10]; // 0x58 public: - CAnimStateMachineUpdater m_stateMachine; // 0x68 - CUtlVector< CStateNodeStateData > m_stateData; // 0xc0 - CUtlVector< CStateNodeTransitionData > m_transitionData; // 0xd8 -private: - [[maybe_unused]] uint8_t __pad00f0[0x4]; // 0xf0 + CUtlVector< TagSpan_t > m_tags; // 0x0 + CAnimUpdateNodeRef m_pChild; // 0x18 + HSequence m_hSequence; // 0x28 + Vector2D m_vPos; // 0x2c + float m_flDuration; // 0x34 + bool m_bUseCustomDuration; // 0x38 +}; + +// Alignment: 15 +// Size: 0xf0 +class CBlend2DUpdateNode : public CAnimUpdateNodeBase +{ public: - bool m_bBlockWaningTags; // 0xf4 - bool m_bLockStateWhenWaning; // 0xf5 + CUtlVector< BlendItem_t > m_items; // 0x60 + CUtlVector< TagSpan_t > m_tags; // 0x78 + CParamSpanUpdater m_paramSpans; // 0x90 + CUtlVector< int32 > m_nodeItemIndices; // 0xa8 + CAnimInputDamping m_damping; // 0xc0 + AnimValueSource m_blendSourceX; // 0xd0 + CAnimParamHandle m_paramX; // 0xd4 +private: + [[maybe_unused]] uint8_t __pad00d6[0x2]; // 0xd6 +public: + AnimValueSource m_blendSourceY; // 0xd8 + CAnimParamHandle m_paramY; // 0xdc +private: + [[maybe_unused]] uint8_t __pad00de[0x2]; // 0xde +public: + Blend2DMode m_eBlendMode; // 0xe0 + float m_playbackSpeed; // 0xe4 + bool m_bLoop; // 0xe8 + bool m_bLockBlendOnReset; // 0xe9 + bool m_bLockWhenWaning; // 0xea + bool m_bAnimEventsAndTagsOnMostWeightedOnly; // 0xeb +}; + +// Alignment: 7 +// Size: 0xa8 +class CBoneMaskUpdateNode : public CBinaryUpdateNode +{ +public: + int32_t m_nWeightListIndex; // 0x8c + float m_flRootMotionBlend; // 0x90 + BoneMaskBlendSpace m_blendSpace; // 0x94 + BinaryNodeChildOption m_footMotionTiming; // 0x98 + bool m_bUseBlendScale; // 0x9c +private: + [[maybe_unused]] uint8_t __pad009d[0x3]; // 0x9d +public: + AnimValueSource m_blendValueSource; // 0xa0 + CAnimParamHandle m_hBlendParameter; // 0xa4 }; // Alignment: 10 @@ -8150,221 +4363,83 @@ public: }; // Alignment: 2 -// Size: 0x70 -class CCycleControlUpdateNode : public CUnaryUpdateNode +// Size: 0x20 +class CDirectPlaybackTagData { public: - AnimValueSource m_valueSource; // 0x68 - CAnimParamHandle m_paramIndex; // 0x6c + CUtlString m_sequenceName; // 0x0 + CUtlVector< TagSpan_t > m_tags; // 0x8 }; -// Alignment: 5 -// Size: 0x90 -class CCycleControlClipUpdateNode : public CLeafUpdateNode +// Alignment: 11 +// Size: 0x50 +struct FootFixedData_t { -private: - [[maybe_unused]] uint8_t __pad0058[0x8]; // 0x58 public: - CUtlVector< TagSpan_t > m_tags; // 0x60 -private: - [[maybe_unused]] uint8_t __pad0078[0x4]; // 0x78 -public: - HSequence m_hSequence; // 0x7c - float m_duration; // 0x80 - AnimValueSource m_valueSource; // 0x84 - CAnimParamHandle m_paramIndex; // 0x88 + VectorAligned m_vToeOffset; // 0x0 + VectorAligned m_vHeelOffset; // 0x10 + int32_t m_nTargetBoneIndex; // 0x20 + int32_t m_nAnkleBoneIndex; // 0x24 + int32_t m_nIKAnchorBoneIndex; // 0x28 + int32_t m_ikChainIndex; // 0x2c + float m_flMaxIKLength; // 0x30 + int32_t m_nFootIndex; // 0x34 + int32_t m_nTagIndex; // 0x38 + float m_flMaxRotationLeft; // 0x3c + float m_flMaxRotationRight; // 0x40 }; -// Alignment: 4 -// Size: 0x98 -class CAddUpdateNode : public CBinaryUpdateNode +// Alignment: 2 +// Size: 0x8 +struct TraceSettings_t { -private: - [[maybe_unused]] uint8_t __pad0088[0x4]; // 0x88 public: - BinaryNodeChildOption m_footMotionTiming; // 0x8c - bool m_bApplyToFootMotion; // 0x90 - bool m_bApplyChannelsSeparately; // 0x91 - bool m_bUseModelSpace; // 0x92 + float m_flTraceHeight; // 0x0 + float m_flTraceRadius; // 0x4 }; -// Alignment: 4 -// Size: 0x98 -class CSubtractUpdateNode : public CBinaryUpdateNode -{ -private: - [[maybe_unused]] uint8_t __pad0088[0x4]; // 0x88 -public: - BinaryNodeChildOption m_footMotionTiming; // 0x8c - bool m_bApplyToFootMotion; // 0x90 - bool m_bApplyChannelsSeparately; // 0x91 - bool m_bUseModelSpace; // 0x92 -}; - -// Alignment: 12 -// Size: 0xa0 -class CMoverUpdateNode : public CUnaryUpdateNode -{ -private: - [[maybe_unused]] uint8_t __pad0068[0x8]; // 0x68 -public: - CAnimInputDamping m_damping; // 0x70 - AnimValueSource m_facingTarget; // 0x80 - CAnimParamHandle m_hMoveVecParam; // 0x84 - CAnimParamHandle m_hMoveHeadingParam; // 0x86 - CAnimParamHandle m_hTurnToFaceParam; // 0x88 -private: - [[maybe_unused]] uint8_t __pad008a[0x2]; // 0x8a -public: - float m_flTurnToFaceOffset; // 0x8c - float m_flTurnToFaceLimit; // 0x90 - bool m_bAdditive; // 0x94 - bool m_bApplyMovement; // 0x95 - bool m_bOrientMovement; // 0x96 - bool m_bApplyRotation; // 0x97 - bool m_bLimitOnly; // 0x98 -}; - -// Alignment: 1 -// Size: 0x70 -class CSlowDownOnSlopesUpdateNode : public CUnaryUpdateNode +// Alignment: 10 +// Size: 0x40 +class FootFixedSettings { public: - float m_flSlowDownStrength; // 0x68 -}; - -// Alignment: 6 -// Size: 0x88 -class CTurnHelperUpdateNode : public CUnaryUpdateNode -{ + TraceSettings_t m_traceSettings; // 0x0 + VectorAligned m_vFootBaseBindPosePositionMS; // 0x10 + float m_flFootBaseLength; // 0x20 + float m_flMaxRotationLeft; // 0x24 + float m_flMaxRotationRight; // 0x28 + int32_t m_footstepLandedTagIndex; // 0x2c + bool m_bEnableTracing; // 0x30 private: - [[maybe_unused]] uint8_t __pad0068[0x4]; // 0x68 + [[maybe_unused]] uint8_t __pad0031[0x3]; // 0x31 public: - AnimValueSource m_facingTarget; // 0x6c - float m_turnStartTimeOffset; // 0x70 - float m_turnDuration; // 0x74 - bool m_bMatchChildDuration; // 0x78 -private: - [[maybe_unused]] uint8_t __pad0079[0x3]; // 0x79 -public: - float m_manualTurnOffset; // 0x7c - bool m_bUseManualTurnOffset; // 0x80 -}; - -// Alignment: 6 -// Size: 0x160 -class CAimMatrixUpdateNode : public CUnaryUpdateNode -{ -private: - [[maybe_unused]] uint8_t __pad0068[0x8]; // 0x68 -public: - AimMatrixOpFixedSettings_t m_opFixedSettings; // 0x70 -private: - [[maybe_unused]] uint8_t __pad0140[0x8]; // 0x140 -public: - AnimVectorSource m_target; // 0x148 - CAnimParamHandle m_paramIndex; // 0x14c -private: - [[maybe_unused]] uint8_t __pad014e[0x2]; // 0x14e -public: - HSequence m_hSequence; // 0x150 - bool m_bResetChild; // 0x154 - bool m_bLockWhenWaning; // 0x155 -}; - -// Alignment: 1 -// Size: 0x70 -class CSpeedScaleUpdateNode : public CUnaryUpdateNode -{ -public: - CAnimParamHandle m_paramIndex; // 0x68 -}; - -// Alignment: 8 -// Size: 0xa8 -class CDirectionalBlendUpdateNode : public CLeafUpdateNode -{ -private: - [[maybe_unused]] uint8_t __pad0058[0x4]; // 0x58 -public: - HSequence m_hSequences[8]; // 0x5c -private: - [[maybe_unused]] uint8_t __pad007c[0x4]; // 0x7c -public: - CAnimInputDamping m_damping; // 0x80 - AnimValueSource m_blendValueSource; // 0x90 - CAnimParamHandle m_paramIndex; // 0x94 -private: - [[maybe_unused]] uint8_t __pad0096[0x2]; // 0x96 -public: - float m_playbackSpeed; // 0x98 - float m_duration; // 0x9c - bool m_bLoop; // 0xa0 - bool m_bLockBlendOnReset; // 0xa1 -}; - -// Alignment: 5 -// Size: 0x78 -class CWayPointHelperUpdateNode : public CUnaryUpdateNode -{ -private: - [[maybe_unused]] uint8_t __pad0068[0x4]; // 0x68 -public: - float m_flStartCycle; // 0x6c - float m_flEndCycle; // 0x70 - bool m_bOnlyGoals; // 0x74 - bool m_bPreventOvershoot; // 0x75 - bool m_bPreventUndershoot; // 0x76 -}; - -// Alignment: 7 -// Size: 0xa8 -class CBoneMaskUpdateNode : public CBinaryUpdateNode -{ -private: - [[maybe_unused]] uint8_t __pad0088[0x4]; // 0x88 -public: - int32_t m_nWeightListIndex; // 0x8c - float m_flRootMotionBlend; // 0x90 - BoneMaskBlendSpace m_blendSpace; // 0x94 - BinaryNodeChildOption m_footMotionTiming; // 0x98 - bool m_bUseBlendScale; // 0x9c -private: - [[maybe_unused]] uint8_t __pad009d[0x3]; // 0x9d -public: - AnimValueSource m_blendValueSource; // 0xa0 - CAnimParamHandle m_hBlendParameter; // 0xa4 -}; - -// Alignment: 0 -// Size: 0x70 -class CChoreoUpdateNode : public CUnaryUpdateNode -{ -public: - // No members available + float m_flTraceAngleBlend; // 0x34 + int32_t m_nDisableTagIndex; // 0x38 + int32_t m_nFootIndex; // 0x3c }; // Alignment: 3 -// Size: 0x88 -class CDirectPlaybackUpdateNode : public CUnaryUpdateNode +// Size: 0x20 +class FootStepTrigger { -private: - [[maybe_unused]] uint8_t __pad0068[0x4]; // 0x68 public: - bool m_bFinishEarly; // 0x6c - bool m_bResetOnFinish; // 0x6d -private: - [[maybe_unused]] uint8_t __pad006e[0x2]; // 0x6e + CUtlVector< int32 > m_tags; // 0x0 + int32_t m_nFootIndex; // 0x18 + StepPhase m_triggerPhase; // 0x1c +}; + +// Alignment: 0 +// Size: 0x58 +class CLeafUpdateNode : public CAnimUpdateNodeBase +{ public: - CUtlVector< CDirectPlaybackTagData > m_allTags; // 0x70 + // No members available }; // Alignment: 10 // Size: 0xe8 class CLeanMatrixUpdateNode : public CLeafUpdateNode { -private: - [[maybe_unused]] uint8_t __pad0058[0x4]; // 0x58 public: int32_t m_frameCorners[3][3]; // 0x5c CPoseHandle m_poses[9]; // 0x80 @@ -8385,61 +4460,706 @@ public: }; // Alignment: 1 -// Size: 0x1e0 -class CTwoBoneIKUpdateNode : public CUnaryUpdateNode +// Size: 0x68 +class CMotionGraphUpdateNode : public CLeafUpdateNode { -private: - [[maybe_unused]] uint8_t __pad0068[0x8]; // 0x68 public: - TwoBoneIKSettings_t m_opFixedData; // 0x70 + CSmartPtr< CMotionGraph > m_pMotionGraph; // 0x58 }; -// Alignment: 2 -// Size: 0xa0 -class CSolveIKChainUpdateNode : public CUnaryUpdateNode +// Alignment: 23 +// Size: 0x140 +class CMotionMatchingUpdateNode : public CLeafUpdateNode { public: - CUtlVector< CAnimParamHandle > m_targetHandles; // 0x68 - SolveIKChainPoseOpFixedSettings_t m_opFixedData; // 0x80 + CMotionDataSet m_dataSet; // 0x58 + CUtlVector< CSmartPtr< CMotionMetricEvaluator > > m_metrics; // 0x78 + CUtlVector< float32 > m_weights; // 0x90 +private: + [[maybe_unused]] uint8_t __pad00a8[0x38]; // 0xa8 +public: + bool m_bSearchEveryTick; // 0xe0 +private: + [[maybe_unused]] uint8_t __pad00e1[0x3]; // 0xe1 +public: + float m_flSearchInterval; // 0xe4 + bool m_bSearchWhenClipEnds; // 0xe8 + bool m_bSearchWhenGoalChanges; // 0xe9 +private: + [[maybe_unused]] uint8_t __pad00ea[0x2]; // 0xea +public: + CBlendCurve m_blendCurve; // 0xec + float m_flSampleRate; // 0xf4 + float m_flBlendTime; // 0xf8 + bool m_bLockClipWhenWaning; // 0xfc +private: + [[maybe_unused]] uint8_t __pad00fd[0x3]; // 0xfd +public: + float m_flSelectionThreshold; // 0x100 + float m_flReselectionTimeWindow; // 0x104 + bool m_bEnableRotationCorrection; // 0x108 + bool m_bGoalAssist; // 0x109 +private: + [[maybe_unused]] uint8_t __pad010a[0x2]; // 0x10a +public: + float m_flGoalAssistDistance; // 0x10c + float m_flGoalAssistTolerance; // 0x110 +private: + [[maybe_unused]] uint8_t __pad0114[0x4]; // 0x114 +public: + CAnimInputDamping m_distanceScale_Damping; // 0x118 + float m_flDistanceScale_OuterRadius; // 0x128 + float m_flDistanceScale_InnerRadius; // 0x12c + float m_flDistanceScale_MaxScale; // 0x130 + float m_flDistanceScale_MinScale; // 0x134 + bool m_bEnableDistanceScaling; // 0x138 +}; + +// Alignment: 8 +// Size: 0xa8 +class CSelectorUpdateNode : public CAnimUpdateNodeBase +{ +public: + CUtlVector< CAnimUpdateNodeRef > m_children; // 0x58 + CUtlVector< int8 > m_tags; // 0x70 +private: + [[maybe_unused]] uint8_t __pad0088[0x4]; // 0x88 +public: + CBlendCurve m_blendCurve; // 0x8c + CAnimValue< float32 > m_flBlendTime; // 0x94 + CAnimParamHandle m_hParameter; // 0x9c +private: + [[maybe_unused]] uint8_t __pad009e[0x2]; // 0x9e +public: + SelectorTagBehavior_t m_eTagBehavior; // 0xa0 + bool m_bResetOnChange; // 0xa4 + bool m_bSyncCyclesOnChange; // 0xa5 }; // Alignment: 6 -// Size: 0x150 -class CLookAtUpdateNode : public CUnaryUpdateNode +// Size: 0xa8 +class CSequenceUpdateNode : public CLeafUpdateNode { -private: - [[maybe_unused]] uint8_t __pad0068[0x8]; // 0x68 public: - LookAtOpFixedSettings_t m_opFixedSettings; // 0x70 + CParamSpanUpdater m_paramSpans; // 0x60 + CUtlVector< TagSpan_t > m_tags; // 0x78 private: - [[maybe_unused]] uint8_t __pad0130[0x8]; // 0x130 + [[maybe_unused]] uint8_t __pad0090[0x4]; // 0x90 public: - AnimVectorSource m_target; // 0x138 - CAnimParamHandle m_paramIndex; // 0x13c - CAnimParamHandle m_weightParamIndex; // 0x13e - bool m_bResetChild; // 0x140 - bool m_bLockWhenWaning; // 0x141 + HSequence m_hSequence; // 0x94 + float m_playbackSpeed; // 0x98 + float m_duration; // 0x9c + bool m_bLoop; // 0xa0 +}; + +// Alignment: 2 +// Size: 0x4 +class CPoseHandle +{ +public: + uint16_t m_nIndex; // 0x0 + PoseType_t m_eType; // 0x2 +}; + +// Alignment: 1 +// Size: 0xa8 +class CSkeletalInputUpdateNode : public CLeafUpdateNode +{ +public: + SkeletalInputOpFixedSettings_t m_fixedOpData; // 0x58 +}; + +// Alignment: 2 +// Size: 0x4 +struct CSolveIKTargetHandle_t +{ +public: + CAnimParamHandle m_positionHandle; // 0x0 + CAnimParamHandle m_orientationHandle; // 0x2 +}; + +// Alignment: 2 +// Size: 0x10 +struct StanceInfo_t +{ +public: + Vector m_vPosition; // 0x0 + float m_flDirection; // 0xc +}; + +// Alignment: 5 +// Size: 0x1c +class CStateNodeTransitionData +{ +public: + CBlendCurve m_curve; // 0x0 + CAnimValue< float32 > m_blendDuration; // 0x8 + CAnimValue< float32 > m_resetCycleValue; // 0x10 + struct + { + uint8_t m_bReset: 1; + uint8_t m_resetCycleOption: 3; + uint8_t __pad2: 4; // Autoaligned + }; // 8 bits +}; + +// Alignment: 2 +// Size: 0x18 +class CStateNodeStateData +{ +public: + CAnimUpdateNodeRef m_pChild; // 0x0 + struct + { + uint8_t m_bExclusiveRootMotion: 1; + uint8_t __pad3: 1; // Autoaligned + }; // 2 bits +}; + +// Alignment: 5 +// Size: 0xf8 +class CStateMachineUpdateNode : public CAnimUpdateNodeBase +{ +public: + CAnimStateMachineUpdater m_stateMachine; // 0x68 + CUtlVector< CStateNodeStateData > m_stateData; // 0xc0 + CUtlVector< CStateNodeTransitionData > m_transitionData; // 0xd8 +private: + [[maybe_unused]] uint8_t __pad00f0[0x4]; // 0xf0 +public: + bool m_bBlockWaningTags; // 0xf4 + bool m_bLockStateWhenWaning; // 0xf5 +}; + +// Alignment: 4 +// Size: 0x98 +class CSubtractUpdateNode : public CBinaryUpdateNode +{ +public: + BinaryNodeChildOption m_footMotionTiming; // 0x8c + bool m_bApplyToFootMotion; // 0x90 + bool m_bApplyChannelsSeparately; // 0x91 + bool m_bUseModelSpace; // 0x92 +}; + +// Alignment: 15 +// Size: 0x160 +struct TwoBoneIKSettings_t +{ +public: + IkEndEffectorType m_endEffectorType; // 0x0 + CAnimAttachment m_endEffectorAttachment; // 0x10 + IkTargetType m_targetType; // 0x90 +private: + [[maybe_unused]] uint8_t __pad0094[0xc]; // 0x94 +public: + CAnimAttachment m_targetAttachment; // 0xa0 +private: + [[maybe_unused]] uint8_t __pad0094[0x8c]; // 0x94 +public: + int32_t m_targetBoneIndex; // 0x120 + CAnimParamHandle m_hPositionParam; // 0x124 + CAnimParamHandle m_hRotationParam; // 0x126 + bool m_bAlwaysUseFallbackHinge; // 0x128 +private: + [[maybe_unused]] uint8_t __pad0129[0x7]; // 0x129 +public: + VectorAligned m_vLsFallbackHingeAxis; // 0x130 + int32_t m_nFixedBoneIndex; // 0x140 + int32_t m_nMiddleBoneIndex; // 0x144 + int32_t m_nEndBoneIndex; // 0x148 + bool m_bMatchTargetOrientation; // 0x14c + bool m_bConstrainTwist; // 0x14d +private: + [[maybe_unused]] uint8_t __pad014e[0x2]; // 0x14e +public: + float m_flMaxTwist; // 0x150 +}; + +// Alignment: 1 +// Size: 0x68 +class CUnaryUpdateNode : public CAnimUpdateNodeBase +{ +public: + CAnimUpdateNodeRef m_pChildNode; // 0x58 +}; + +// Alignment: 5 +// Size: 0x78 +class CWayPointHelperUpdateNode : public CUnaryUpdateNode +{ +public: + float m_flStartCycle; // 0x6c + float m_flEndCycle; // 0x70 + bool m_bOnlyGoals; // 0x74 + bool m_bPreventOvershoot; // 0x75 + bool m_bPreventUndershoot; // 0x76 +}; + +// Alignment: 0 +// Size: 0x60 +class CZeroPoseUpdateNode : public CLeafUpdateNode +{ +public: + // No members available +}; + +// Alignment: 3 +// Size: 0xc +struct TagSpan_t +{ +public: + int32_t m_tagIndex; // 0x0 + float m_startCycle; // 0x4 + float m_endCycle; // 0x8 +}; + +// Alignment: 10 +// Size: 0x100 +class CAnimUpdateSharedData +{ +public: + CUtlVector< CSmartPtr< CAnimUpdateNodeBase > > m_nodes; // 0x10 + CUtlHashtable< CAnimNodePath, int32 > m_nodeIndexMap; // 0x28 + CUtlVector< CSmartPtr< CAnimComponentUpdater > > m_components; // 0x48 + CSmartPtr< CAnimParameterManagerUpdater > m_pParamListUpdater; // 0x60 + CSmartPtr< CAnimTagManagerUpdater > m_pTagManagerUpdater; // 0x68 + CSmartPtr< CAnimScriptManager > m_scriptManager; // 0x70 + CAnimGraphSettingsManager m_settings; // 0x78 + CSmartPtr< CStaticPoseCacheBuilder > m_pStaticPoseCache; // 0xa8 + CSmartPtr< CAnimSkeleton > m_pSkeleton; // 0xb0 + CAnimNodePath m_rootNodePath; // 0xb8 +}; + +// Alignment: 2 +// Size: 0x4 +class ConfigIndex +{ +public: + uint16_t m_nGroup; // 0x0 + uint16_t m_nConfig; // 0x2 +}; + +// Alignment: 2 +// Size: 0x4 +class MotionIndex +{ +public: + uint16_t m_nGroup; // 0x0 + uint16_t m_nMotion; // 0x2 +}; + +// Alignment: 5 +// Size: 0x20 +class CMotionGraphConfig +{ +public: + float m_paramValues[4]; // 0x0 + float m_flDuration; // 0x10 + MotionIndex m_nMotionIndex; // 0x14 + int32_t m_nSampleStart; // 0x18 + int32_t m_nSampleCount; // 0x1c +}; + +// Alignment: 4 +// Size: 0x80 +class CSingleFrameUpdateNode : public CLeafUpdateNode +{ +public: + CUtlVector< CSmartPtr< CAnimActionUpdater > > m_actions; // 0x58 + CPoseHandle m_hPoseCacheHandle; // 0x70 + HSequence m_hSequence; // 0x74 + float m_flCycle; // 0x78 +}; + +// Alignment: 3 +// Size: 0x40 +class CAnimationGraphVisualizerPrimitiveBase +{ +public: + CAnimationGraphVisualizerPrimitiveType m_Type; // 0x8 + AnimNodeID m_OwningAnimNodePaths[11]; // 0xc + int32_t m_nOwningAnimNodePathCount; // 0x38 +}; + +// Alignment: 3 +// Size: 0x60 +class CAnimationGraphVisualizerText : public CAnimationGraphVisualizerPrimitiveBase +{ +public: + VectorAligned m_vWsPosition; // 0x40 + Color m_Color; // 0x50 +private: + [[maybe_unused]] uint8_t __pad0054[0x4]; // 0x54 +public: + CUtlString m_Text; // 0x58 +}; + +// Alignment: 3 +// Size: 0x60 +class CAnimationGraphVisualizerSphere : public CAnimationGraphVisualizerPrimitiveBase +{ +public: + VectorAligned m_vWsPosition; // 0x40 + float m_flRadius; // 0x50 + Color m_Color; // 0x54 +}; + +// Alignment: 3 +// Size: 0x70 +class CAnimationGraphVisualizerLine : public CAnimationGraphVisualizerPrimitiveBase +{ +public: + VectorAligned m_vWsPositionStart; // 0x40 + VectorAligned m_vWsPositionEnd; // 0x50 + Color m_Color; // 0x60 +}; + +// Alignment: 4 +// Size: 0x80 +class CAnimationGraphVisualizerPie : public CAnimationGraphVisualizerPrimitiveBase +{ +public: + VectorAligned m_vWsCenter; // 0x40 + VectorAligned m_vWsStart; // 0x50 + VectorAligned m_vWsEnd; // 0x60 + Color m_Color; // 0x70 }; // Alignment: 2 // Size: 0x70 -class CPathHelperUpdateNode : public CUnaryUpdateNode +class CAnimationGraphVisualizerAxis : public CAnimationGraphVisualizerPrimitiveBase { public: - float m_flStoppingRadius; // 0x68 - float m_flStoppingSpeedScale; // 0x6c + CTransform m_xWsTransform; // 0x40 + float m_flAxisSize; // 0x60 +}; + +// Alignment: 1 +// Size: 0x10 +struct IKBoneNameAndIndex_t +{ +public: + // MPropertyAttributeChoiceName "Bone" + CUtlString m_Name; // 0x0 +}; + +// Alignment: 5 +// Size: 0x28 +struct IKTargetSettings_t +{ +public: + // MPropertyFriendlyName "Target Source" + // MPropertyAttrChangeCallback + IKTargetSource m_TargetSource; // 0x0 + // MPropertyFriendlyName "Bone" + // MPropertyAttrStateCallback + IKBoneNameAndIndex_t m_Bone; // 0x8 + // MPropertyFriendlyName "Animgraph Position Parameter" + // MPropertyAttributeChoiceName "VectorParameter" + // MPropertyAttrStateCallback + AnimParamID m_AnimgraphParameterNamePosition; // 0x18 +private: + [[maybe_unused]] uint8_t __pad0018[0x4]; // 0x18 +public: + // MPropertyFriendlyName "Animgraph Orientation Parameter" + // MPropertyAttributeChoiceName "QuaternionParameter" + // MPropertyAttrStateCallback + AnimParamID m_AnimgraphParameterNameOrientation; // 0x1c +private: + [[maybe_unused]] uint8_t __pad0018[0x8]; // 0x18 +public: + // MPropertyFriendlyName "Target Coords" + // MPropertyAttrStateCallback + IKTargetCoordinateSystem m_TargetCoordSystem; // 0x20 +}; + +// Alignment: 6 +// Size: 0x50 +struct ChainToSolveData_t +{ +public: + int32_t m_nChainIndex; // 0x0 + IKSolverSettings_t m_SolverSettings; // 0x4 +private: + [[maybe_unused]] uint8_t __pad000c[0x4]; // 0xc +public: + IKTargetSettings_t m_TargetSettings; // 0x10 + SolveIKChainAnimNodeDebugSetting m_DebugSetting; // 0x38 + float m_flDebugNormalizedValue; // 0x3c + VectorAligned m_vDebugOffset; // 0x40 +}; + +// Alignment: 1 +// Size: 0x28 +class CAnimGraphNetworkSettings : public CAnimGraphSettingsGroup +{ +public: + // MPropertyFriendlyName "Enable Networking" + bool m_bNetworkingEnabled; // 0x20 +}; + +// Alignment: 1 +// Size: 0x48 +class CActionComponentUpdater : public CAnimComponentUpdater +{ +public: + CUtlVector< CSmartPtr< CAnimActionUpdater > > m_actions; // 0x30 +}; + +// Alignment: 4 +// Size: 0x98 +class CAddUpdateNode : public CBinaryUpdateNode +{ +public: + BinaryNodeChildOption m_footMotionTiming; // 0x8c + bool m_bApplyToFootMotion; // 0x90 + bool m_bApplyChannelsSeparately; // 0x91 + bool m_bUseModelSpace; // 0x92 +}; + +// Alignment: 6 +// Size: 0x160 +class CAimMatrixUpdateNode : public CUnaryUpdateNode +{ +public: + AimMatrixOpFixedSettings_t m_opFixedSettings; // 0x70 +private: + [[maybe_unused]] uint8_t __pad0140[0x8]; // 0x140 +public: + AnimVectorSource m_target; // 0x148 + CAnimParamHandle m_paramIndex; // 0x14c +private: + [[maybe_unused]] uint8_t __pad014e[0x2]; // 0x14e +public: + HSequence m_hSequence; // 0x150 + bool m_bResetChild; // 0x154 + bool m_bLockWhenWaning; // 0x155 +}; + +// Alignment: 0 +// Size: 0x60 +class CBindPoseUpdateNode : public CLeafUpdateNode +{ +public: + // No members available +}; + +// Alignment: 0 +// Size: 0x70 +class CChoreoUpdateNode : public CUnaryUpdateNode +{ +public: + // No members available +}; + +// Alignment: 2 +// Size: 0x70 +class CCycleControlUpdateNode : public CUnaryUpdateNode +{ +public: + AnimValueSource m_valueSource; // 0x68 + CAnimParamHandle m_paramIndex; // 0x6c +}; + +// Alignment: 5 +// Size: 0x90 +class CCycleControlClipUpdateNode : public CLeafUpdateNode +{ +public: + CUtlVector< TagSpan_t > m_tags; // 0x60 +private: + [[maybe_unused]] uint8_t __pad0078[0x4]; // 0x78 +public: + HSequence m_hSequence; // 0x7c + float m_duration; // 0x80 + AnimValueSource m_valueSource; // 0x84 + CAnimParamHandle m_paramIndex; // 0x88 +}; + +// Alignment: 8 +// Size: 0xa8 +class CDirectionalBlendUpdateNode : public CLeafUpdateNode +{ +public: + HSequence m_hSequences[8]; // 0x5c +private: + [[maybe_unused]] uint8_t __pad007c[0x4]; // 0x7c +public: + CAnimInputDamping m_damping; // 0x80 + AnimValueSource m_blendValueSource; // 0x90 + CAnimParamHandle m_paramIndex; // 0x94 +private: + [[maybe_unused]] uint8_t __pad0096[0x2]; // 0x96 +public: + float m_playbackSpeed; // 0x98 + float m_duration; // 0x9c + bool m_bLoop; // 0xa0 + bool m_bLockBlendOnReset; // 0xa1 +}; + +// Alignment: 3 +// Size: 0x88 +class CDirectPlaybackUpdateNode : public CUnaryUpdateNode +{ +public: + bool m_bFinishEarly; // 0x6c + bool m_bResetOnFinish; // 0x6d +private: + [[maybe_unused]] uint8_t __pad006e[0x2]; // 0x6e +public: + CUtlVector< CDirectPlaybackTagData > m_allTags; // 0x70 +}; + +// Alignment: 13 +// Size: 0xa8 +class CFollowPathUpdateNode : public CUnaryUpdateNode +{ +public: + float m_flBlendOutTime; // 0x6c + bool m_bBlockNonPathMovement; // 0x70 + bool m_bStopFeetAtGoal; // 0x71 + bool m_bScaleSpeed; // 0x72 +private: + [[maybe_unused]] uint8_t __pad0073[0x1]; // 0x73 +public: + float m_flScale; // 0x74 + float m_flMinAngle; // 0x78 + float m_flMaxAngle; // 0x7c + float m_flSpeedScaleBlending; // 0x80 +private: + [[maybe_unused]] uint8_t __pad0084[0x4]; // 0x84 +public: + CAnimInputDamping m_turnDamping; // 0x88 + AnimValueSource m_facingTarget; // 0x98 + CAnimParamHandle m_hParam; // 0x9c +private: + [[maybe_unused]] uint8_t __pad009e[0x2]; // 0x9e +public: + float m_flTurnToFaceOffset; // 0xa0 + bool m_bTurnToFace; // 0xa4 }; // Alignment: 1 // Size: 0x110 class CFollowAttachmentUpdateNode : public CUnaryUpdateNode { -private: - [[maybe_unused]] uint8_t __pad0068[0x8]; // 0x68 public: FollowAttachmentSettings_t m_opFixedData; // 0x70 }; +// Alignment: 9 +// Size: 0xa8 +class CFootAdjustmentUpdateNode : public CUnaryUpdateNode +{ +public: + CUtlVector< HSequence > m_clips; // 0x70 + CPoseHandle m_hBasePoseCacheHandle; // 0x88 + CAnimParamHandle m_facingTarget; // 0x8c +private: + [[maybe_unused]] uint8_t __pad008e[0x2]; // 0x8e +public: + float m_flTurnTimeMin; // 0x90 + float m_flTurnTimeMax; // 0x94 + float m_flStepHeightMax; // 0x98 + float m_flStepHeightMaxAngle; // 0x9c + bool m_bResetChild; // 0xa0 + bool m_bAnimationDriven; // 0xa1 +}; + +// Alignment: 20 +// Size: 0x138 +class CFootLockUpdateNode : public CUnaryUpdateNode +{ +public: + FootLockPoseOpFixedSettings m_opFixedSettings; // 0x68 +private: + [[maybe_unused]] uint8_t __pad00c8[0x8]; // 0xc8 +public: + CUtlVector< FootFixedSettings > m_footSettings; // 0xd0 + CAnimInputDamping m_hipShiftDamping; // 0xe8 + CAnimInputDamping m_rootHeightDamping; // 0xf8 + float m_flStrideCurveScale; // 0x108 + float m_flStrideCurveLimitScale; // 0x10c + float m_flStepHeightIncreaseScale; // 0x110 + float m_flStepHeightDecreaseScale; // 0x114 + float m_flHipShiftScale; // 0x118 + float m_flBlendTime; // 0x11c + float m_flMaxRootHeightOffset; // 0x120 + float m_flMinRootHeightOffset; // 0x124 + float m_flTiltPlanePitchSpringStrength; // 0x128 + float m_flTiltPlaneRollSpringStrength; // 0x12c + bool m_bApplyFootRotationLimits; // 0x130 + bool m_bApplyHipShift; // 0x131 + bool m_bModulateStepHeight; // 0x132 + bool m_bResetChild; // 0x133 + bool m_bEnableVerticalCurvedPaths; // 0x134 + bool m_bEnableRootHeightDamping; // 0x135 +}; + +// Alignment: 4 +// Size: 0xc8 +class CFootPinningUpdateNode : public CUnaryUpdateNode +{ +public: + FootPinningPoseOpFixedData_t m_poseOpFixedData; // 0x70 + FootPinningTimingSource m_eTimingSource; // 0xa0 +private: + [[maybe_unused]] uint8_t __pad00a4[0x4]; // 0xa4 +public: + CUtlVector< CAnimParamHandle > m_params; // 0xa8 + bool m_bResetChild; // 0xc0 +}; + +// Alignment: 2 +// Size: 0x88 +class CFootStepTriggerUpdateNode : public CUnaryUpdateNode +{ +public: + CUtlVector< FootStepTrigger > m_triggers; // 0x68 +private: + [[maybe_unused]] uint8_t __pad0080[0x4]; // 0x80 +public: + float m_flTolerance; // 0x84 +}; + +// Alignment: 8 +// Size: 0xc8 +class CHitReactUpdateNode : public CUnaryUpdateNode +{ +public: + HitReactFixedSettings_t m_opFixedSettings; // 0x68 +private: + [[maybe_unused]] uint8_t __pad00ac[0x8]; // 0xac +public: + CAnimParamHandle m_triggerParam; // 0xb4 + CAnimParamHandle m_hitBoneParam; // 0xb6 + CAnimParamHandle m_hitOffsetParam; // 0xb8 + CAnimParamHandle m_hitDirectionParam; // 0xba + CAnimParamHandle m_hitStrengthParam; // 0xbc +private: + [[maybe_unused]] uint8_t __pad00be[0x2]; // 0xbe +public: + float m_flMinDelayBetweenHits; // 0xc0 + bool m_bResetChild; // 0xc4 +}; + +// Alignment: 0 +// Size: 0x60 +class CInputStreamUpdateNode : public CLeafUpdateNode +{ +public: + // No members available +}; + +// Alignment: 1 +// Size: 0x88 +class CJiggleBoneUpdateNode : public CUnaryUpdateNode +{ +public: + JiggleBoneSettingsList_t m_opFixedData; // 0x68 +}; + // Alignment: 8 // Size: 0xd0 class CJumpHelperUpdateNode : public CSequenceUpdateNode @@ -8458,3 +5178,162 @@ public: bool m_bScaleSpeed; // 0xcb }; +// Alignment: 6 +// Size: 0x150 +class CLookAtUpdateNode : public CUnaryUpdateNode +{ +public: + LookAtOpFixedSettings_t m_opFixedSettings; // 0x70 +private: + [[maybe_unused]] uint8_t __pad0130[0x8]; // 0x130 +public: + AnimVectorSource m_target; // 0x138 + CAnimParamHandle m_paramIndex; // 0x13c + CAnimParamHandle m_weightParamIndex; // 0x13e + bool m_bResetChild; // 0x140 + bool m_bLockWhenWaning; // 0x141 +}; + +// Alignment: 12 +// Size: 0xa0 +class CMoverUpdateNode : public CUnaryUpdateNode +{ +public: + CAnimInputDamping m_damping; // 0x70 + AnimValueSource m_facingTarget; // 0x80 + CAnimParamHandle m_hMoveVecParam; // 0x84 + CAnimParamHandle m_hMoveHeadingParam; // 0x86 + CAnimParamHandle m_hTurnToFaceParam; // 0x88 +private: + [[maybe_unused]] uint8_t __pad008a[0x2]; // 0x8a +public: + float m_flTurnToFaceOffset; // 0x8c + float m_flTurnToFaceLimit; // 0x90 + bool m_bAdditive; // 0x94 + bool m_bApplyMovement; // 0x95 + bool m_bOrientMovement; // 0x96 + bool m_bApplyRotation; // 0x97 + bool m_bLimitOnly; // 0x98 +}; + +// Alignment: 2 +// Size: 0x70 +class CPathHelperUpdateNode : public CUnaryUpdateNode +{ +public: + float m_flStoppingRadius; // 0x68 + float m_flStoppingSpeedScale; // 0x6c +}; + +// Alignment: 2 +// Size: 0x70 +class CRagdollUpdateNode : public CUnaryUpdateNode +{ +public: + int32_t m_nWeightListIndex; // 0x68 + RagdollPoseControl m_poseControlMethod; // 0x6c +}; + +// Alignment: 0 +// Size: 0x68 +class CRootUpdateNode : public CUnaryUpdateNode +{ +public: + // No members available +}; + +// Alignment: 2 +// Size: 0x70 +class CSetFacingUpdateNode : public CUnaryUpdateNode +{ +public: + FacingMode m_facingMode; // 0x68 + bool m_bResetChild; // 0x6c +}; + +// Alignment: 1 +// Size: 0x70 +class CSlowDownOnSlopesUpdateNode : public CUnaryUpdateNode +{ +public: + float m_flSlowDownStrength; // 0x68 +}; + +// Alignment: 2 +// Size: 0xa8 +class CSolveIKChainUpdateNode : public CUnaryUpdateNode +{ +public: + CUtlVector< CSolveIKTargetHandle_t > m_targetHandles; // 0x68 + SolveIKChainPoseOpFixedSettings_t m_opFixedData; // 0x80 +}; + +// Alignment: 1 +// Size: 0x70 +class CSpeedScaleUpdateNode : public CUnaryUpdateNode +{ +public: + CAnimParamHandle m_paramIndex; // 0x68 +}; + +// Alignment: 4 +// Size: 0x98 +class CStanceOverrideUpdateNode : public CUnaryUpdateNode +{ +public: + CUtlVector< StanceInfo_t > m_footStanceInfo; // 0x68 + CAnimUpdateNodeRef m_pStanceSourceNode; // 0x80 + CAnimParamHandle m_hParameter; // 0x90 +private: + [[maybe_unused]] uint8_t __pad0092[0x2]; // 0x92 +public: + StanceOverrideMode m_eMode; // 0x94 +}; + +// Alignment: 1 +// Size: 0x70 +class CStanceScaleUpdateNode : public CUnaryUpdateNode +{ +public: + CAnimParamHandle m_hParam; // 0x68 +}; + +// Alignment: 5 +// Size: 0x90 +class CStopAtGoalUpdateNode : public CUnaryUpdateNode +{ +public: + float m_flOuterRadius; // 0x6c + float m_flInnerRadius; // 0x70 + float m_flMaxScale; // 0x74 + float m_flMinScale; // 0x78 +private: + [[maybe_unused]] uint8_t __pad007c[0x4]; // 0x7c +public: + CAnimInputDamping m_damping; // 0x80 +}; + +// Alignment: 6 +// Size: 0x88 +class CTurnHelperUpdateNode : public CUnaryUpdateNode +{ +public: + AnimValueSource m_facingTarget; // 0x6c + float m_turnStartTimeOffset; // 0x70 + float m_turnDuration; // 0x74 + bool m_bMatchChildDuration; // 0x78 +private: + [[maybe_unused]] uint8_t __pad0079[0x3]; // 0x79 +public: + float m_manualTurnOffset; // 0x7c + bool m_bUseManualTurnOffset; // 0x80 +}; + +// Alignment: 1 +// Size: 0x1e0 +class CTwoBoneIKUpdateNode : public CUnaryUpdateNode +{ +public: + TwoBoneIKSettings_t m_opFixedData; // 0x70 +}; + diff --git a/sdk/client.hpp b/sdk/client.hpp index a94e3507..0274588f 100644 --- a/sdk/client.hpp +++ b/sdk/client.hpp @@ -4,7 +4,7 @@ // ///////////////////////////////////////////////////////////// // Binary: client.dll -// Classes count: 402 +// Classes count: 407 // Enums count: 8 // Created using source2gen - github.com/neverlosecc/source2gen // ///////////////////////////////////////////////////////////// @@ -144,6 +144,7 @@ struct C_EconItemView; struct C_CSGameRules; struct C_SurvivalGameRules; struct C_RetakeGameRules; +struct WeaponPurchaseTracker_t; struct CSMatchStats_t; struct CompositeMaterialInputLooseVariable_t; struct C_InfoMapRegion; @@ -154,7 +155,6 @@ struct CSkillFloat; struct AmmoIndex_t; struct CNetworkedSequenceOperation; struct CAnimGraphNetworkedVariables; -struct AnimationUpdateListHandle_t; struct CHitboxComponent; struct CGlowProperty; struct CNetworkViewOffsetVector; @@ -163,10 +163,10 @@ struct C_LightGlowOverlay; struct C_FireSmoke; struct ParticleIndex_t; struct C_RopeKeyframe::CPhysicsDelegate; -struct CBuoyancyHelper; struct CPointOffScreenIndicatorUi; struct C_PointClientUIWorldPanel; struct CAttributeList; +struct CBuoyancyHelper; struct CCSPlayerController_InGameMoneyServices; struct CCSPlayerController_InventoryServices; struct CCSPlayerController_ActionTrackingServices; @@ -175,8 +175,9 @@ struct CFiringModeFloat; struct CFiringModeInt; struct CPlayerSprayDecalRenderHelper; struct CLightComponent; -struct PhysicsRagdollPose_t; +struct AnimationUpdateListHandle_t; struct CBaseAnimGraph; +struct PhysicsRagdollPose_t; struct CountdownTimer; struct shard_model_desc_t; struct C_AttributeContainer; @@ -203,8 +204,6 @@ struct CCSPlayer_GlowServices; // Size: 0x78 class CEntityIdentity { -private: - [[maybe_unused]] uint8_t __pad0000[0x14]; // 0x0 public: // MNetworkEnable // MNetworkChangeCallback "entityIdentityNameChanged" @@ -255,12 +254,8 @@ public: // Size: 0x38 class CScriptComponent : public CEntityComponent { -private: - [[maybe_unused]] uint8_t __pad0008[0x28]; // 0x8 public: CUtlSymbolLarge m_scriptClassName; // 0x30 - - // Static fields: static EntComponentInfo_t &Get_s_EntComponentInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("client.dll")->FindDeclaredClass("CScriptComponent")->m_static_fields[0]->m_instance);}; static int32_t &Get_entity_component_error_class_decl_says_contained_but_impl_is_referenced(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("client.dll")->FindDeclaredClass("CScriptComponent")->m_static_fields[1]->m_instance);}; }; @@ -278,8 +273,6 @@ public: // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex CNetworkVarChainer __m_pChainEntity; // 0x20 - - // Static fields: static EntComponentInfo_t &Get_s_EntComponentInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("client.dll")->FindDeclaredClass("CBodyComponent")->m_static_fields[0]->m_instance);}; static int32_t &Get_entity_component_error_class_decl_says_contained_but_impl_is_referenced(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("client.dll")->FindDeclaredClass("CBodyComponent")->m_static_fields[1]->m_instance);}; }; @@ -288,8 +281,6 @@ public: // Size: 0x10 class CGameSceneNodeHandle { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkEnable CEntityHandle m_hOwner; // 0x8 @@ -301,8 +292,6 @@ public: // Size: 0x150 class CGameSceneNode { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: // MNetworkDisable CTransform m_nodeToWorld; // 0x10 @@ -332,6 +321,7 @@ private: [[maybe_unused]] uint8_t __pad00b0[0x8]; // 0xb0 public: // MNetworkEnable + // MNetworkEncoder // MNetworkPriority "32" // MNetworkSerializer "gameSceneNodeStepSimulationAnglesSerializer" // MNetworkChangeCallback "gameSceneNodeLocalAnglesChanged" @@ -405,13 +395,9 @@ public: // Size: 0x28 class CHitboxComponent : public CEntityComponent { -private: - [[maybe_unused]] uint8_t __pad0008[0x1c]; // 0x8 public: // MNetworkEnable uint32_t m_bvDisabledHitGroups[1]; // 0x24 - - // Static fields: static EntComponentInfo_t &Get_s_EntComponentInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("client.dll")->FindDeclaredClass("CHitboxComponent")->m_static_fields[0]->m_instance);}; static int32_t &Get_entity_component_error_class_decl_says_referenced_but_impl_is_contained(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("client.dll")->FindDeclaredClass("CHitboxComponent")->m_static_fields[1]->m_instance);}; }; @@ -420,8 +406,6 @@ public: // Size: 0x1c8 class CLightComponent : public CEntityComponent { -private: - [[maybe_unused]] uint8_t __pad0008[0x40]; // 0x8 public: // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex @@ -545,6 +529,7 @@ public: int32_t m_nShadowCascadeResolution3; // 0x118 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" + // MNetworkAlias "m_bUsesIndexedBakedLighting" bool m_bUsesBakedShadowing; // 0x11c private: [[maybe_unused]] uint8_t __pad011d[0x3]; // 0x11d @@ -631,8 +616,6 @@ public: // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" float m_flMinRoughness; // 0x1b8 - - // Static fields: static EntComponentInfo_t &Get_s_EntComponentInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("client.dll")->FindDeclaredClass("CLightComponent")->m_static_fields[0]->m_instance);}; static int32_t &Get_entity_component_error_class_decl_says_contained_but_impl_is_referenced(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("client.dll")->FindDeclaredClass("CLightComponent")->m_static_fields[1]->m_instance);}; }; @@ -641,8 +624,6 @@ public: // Size: 0xd8 class CRenderComponent : public CEntityComponent { -private: - [[maybe_unused]] uint8_t __pad0008[0x8]; // 0x8 public: // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex @@ -663,18 +644,14 @@ private: [[maybe_unused]] uint8_t __pad0061[0x4f]; // 0x61 public: bool m_bInterpolationReadyToDraw; // 0xb0 - - // Static fields: static EntComponentInfo_t &Get_s_EntComponentInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("client.dll")->FindDeclaredClass("CRenderComponent")->m_static_fields[0]->m_instance);}; static int32_t &Get_entity_component_error_class_decl_says_contained_but_impl_is_referenced(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("client.dll")->FindDeclaredClass("CRenderComponent")->m_static_fields[1]->m_instance);}; }; // Alignment: 2 -// Size: 0x48 +// Size: 0x28 class CBuoyancyHelper { -private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 public: float m_flFluidDensity; // 0x18 float m_flDisplacementFromObjects; // 0x1c @@ -701,8 +678,6 @@ public: // Size: 0x78 struct audioparams_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkEnable // MNetworkEncoder @@ -724,8 +699,6 @@ public: // Size: 0x68 struct fogparams_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkEnable // MNetworkEncoder @@ -808,8 +781,8 @@ public: // No members available }; -// Alignment: 14 -// Size: 0x1b8 +// Alignment: 15 +// Size: 0x1c8 class CPlayer_MovementServices : public CPlayerPawnComponent { public: @@ -831,8 +804,8 @@ public: uint64_t m_nToggleButtonDownMask; // 0x188 // MNetworkEnable // MNetworkBitCount "12" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "2048.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "2048" // MNetworkEncodeFlags float m_flMaxspeed; // 0x190 // MNetworkEnable @@ -840,53 +813,54 @@ public: float m_flForwardMove; // 0x198 float m_flLeftMove; // 0x19c float m_flUpMove; // 0x1a0 - QAngle m_vecOldViewAngles; // 0x1a4 + Vector m_vecLastMovementImpulses; // 0x1a4 + QAngle m_vecOldViewAngles; // 0x1b0 }; // Alignment: 12 -// Size: 0x1f8 +// Size: 0x208 class CPlayer_MovementServices_Humanoid : public CPlayer_MovementServices { public: - float m_flStepSoundTime; // 0x1b8 + float m_flStepSoundTime; // 0x1c8 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" // MNetworkBitCount "17" - // MNetworkMinValue "-4096.000000" - // MNetworkMaxValue "4096.000000" + // MNetworkMinValue "-4096" + // MNetworkMaxValue "4096" // MNetworkEncodeFlags - float m_flFallVelocity; // 0x1bc + float m_flFallVelocity; // 0x1cc // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - bool m_bInCrouch; // 0x1c0 + bool m_bInCrouch; // 0x1d0 private: - [[maybe_unused]] uint8_t __pad01c1[0x3]; // 0x1c1 + [[maybe_unused]] uint8_t __pad01d1[0x3]; // 0x1d1 public: // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - uint32_t m_nCrouchState; // 0x1c4 + uint32_t m_nCrouchState; // 0x1d4 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - GameTime_t m_flCrouchTransitionStartTime; // 0x1c8 + GameTime_t m_flCrouchTransitionStartTime; // 0x1d8 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - bool m_bDucked; // 0x1cc + bool m_bDucked; // 0x1dc // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - bool m_bDucking; // 0x1cd + bool m_bDucking; // 0x1dd // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - bool m_bInDuckJump; // 0x1ce + bool m_bInDuckJump; // 0x1de private: - [[maybe_unused]] uint8_t __pad01cf[0x1]; // 0x1cf + [[maybe_unused]] uint8_t __pad01df[0x1]; // 0x1df public: - Vector m_groundNormal; // 0x1d0 - float m_flSurfaceFriction; // 0x1dc - CUtlStringToken m_surfaceProps; // 0x1e0 + Vector m_groundNormal; // 0x1e0 + float m_flSurfaceFriction; // 0x1ec + CUtlStringToken m_surfaceProps; // 0x1f0 private: - [[maybe_unused]] uint8_t __pad01e4[0xc]; // 0x1e4 + [[maybe_unused]] uint8_t __pad01f4[0xc]; // 0x1f4 public: - int32_t m_nStepside; // 0x1f0 + int32_t m_nStepside; // 0x200 }; // Alignment: 5 @@ -951,8 +925,6 @@ public: // Size: 0x230 class CModelState { -private: - [[maybe_unused]] uint8_t __pad0000[0xa0]; // 0x0 public: // MNetworkEnable // MNetworkChangeCallback "skeletonModelChanged" @@ -986,8 +958,6 @@ public: // Size: 0x48 struct EntityRenderAttribute_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x30]; // 0x0 public: // MNetworkEnable CUtlStringToken m_ID; // 0x30 @@ -999,8 +969,6 @@ public: // Size: 0x68 struct ActiveModelConfig_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x28]; // 0x0 public: // MNetworkEnable ModelConfigHandle_t m_Handle; // 0x28 @@ -1019,8 +987,6 @@ public: // Size: 0x3f0 class CSkeletonInstance : public CGameSceneNode { -private: - [[maybe_unused]] uint8_t __pad0150[0x10]; // 0x150 public: // MNetworkEnable CModelState m_modelState; // 0x160 @@ -1055,8 +1021,6 @@ public: // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex CNetworkVarChainer __m_pChainEntity; // 0x440 - - // Static fields: static EntComponentInfo_t &Get_s_EntComponentInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("client.dll")->FindDeclaredClass("CBodyComponentSkeletonInstance")->m_static_fields[0]->m_instance);}; static int32_t &Get_entity_component_error_class_decl_says_contained_but_impl_is_referenced(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("client.dll")->FindDeclaredClass("CBodyComponentSkeletonInstance")->m_static_fields[1]->m_instance);}; }; @@ -1071,8 +1035,6 @@ public: // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex CNetworkVarChainer __m_pChainEntity; // 0x1a0 - - // Static fields: static EntComponentInfo_t &Get_s_EntComponentInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("client.dll")->FindDeclaredClass("CBodyComponentPoint")->m_static_fields[0]->m_instance);}; static int32_t &Get_entity_component_error_class_decl_says_contained_but_impl_is_referenced(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("client.dll")->FindDeclaredClass("CBodyComponentPoint")->m_static_fields[1]->m_instance);}; }; @@ -1081,8 +1043,6 @@ public: // Size: 0x28 class CNetworkedSequenceOperation { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkEnable // MNetworkSerializer "minusone" @@ -1091,8 +1051,8 @@ public: HSequence m_hSequence; // 0x8 // MNetworkEnable // MNetworkBitCount "15" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "1.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "1" // MNetworkEncodeFlags // MNetworkPriority "32" // MNetworkSendProxyRecipientsFilter @@ -1100,8 +1060,8 @@ public: float m_flPrevCycle; // 0xc // MNetworkEnable // MNetworkBitCount "15" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "1.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "1" // MNetworkEncodeFlags // MNetworkPriority "32" // MNetworkSendProxyRecipientsFilter @@ -1110,8 +1070,8 @@ public: float m_flCycle; // 0x10 // MNetworkEnable // MNetworkBitCount "8" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "1.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "1" // MNetworkEncodeFlags CNetworkedQuantizedFloat m_flWeight; // 0x14 // MNetworkDisable @@ -1135,127 +1095,141 @@ public: // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex CNetworkVarChainer __m_pChainEntity; // 0x470 - - // Static fields: static EntComponentInfo_t &Get_s_EntComponentInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("client.dll")->FindDeclaredClass("CBodyComponentBaseModelEntity")->m_static_fields[0]->m_instance);}; static int32_t &Get_entity_component_error_class_decl_says_contained_but_impl_is_referenced(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("client.dll")->FindDeclaredClass("CBodyComponentBaseModelEntity")->m_static_fields[1]->m_instance);}; }; -// Alignment: 20 -// Size: 0x1138 +// Alignment: 22 +// Size: 0x12e0 class CAnimGraphNetworkedVariables { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkEnable // MNetworkUserGroup "animationgraph" + // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetBoolVarChanged" // MNetworkAlias "m_PredBoolVariables" C_NetworkUtlVectorBase< uint32 > m_PredNetBoolVariables; // 0x8 // MNetworkEnable // MNetworkUserGroup "animationgraph" + // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetByteVarChanged" // MNetworkAlias "m_PredByteVariables" C_NetworkUtlVectorBase< uint8 > m_PredNetByteVariables; // 0x20 // MNetworkEnable // MNetworkUserGroup "animationgraph" + // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetUInt16VarChanged" // MNetworkAlias "m_PredUInt16Variables" C_NetworkUtlVectorBase< uint16 > m_PredNetUInt16Variables; // 0x38 // MNetworkEnable // MNetworkUserGroup "animationgraph" + // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetIntVarChanged" // MNetworkAlias "m_PredIntVariables" C_NetworkUtlVectorBase< int32 > m_PredNetIntVariables; // 0x50 // MNetworkEnable // MNetworkUserGroup "animationgraph" + // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetUInt32VarChanged" // MNetworkAlias "m_PredUInt32Variables" C_NetworkUtlVectorBase< uint32 > m_PredNetUInt32Variables; // 0x68 // MNetworkEnable // MNetworkUserGroup "animationgraph" + // MNetworkSendProxyRecipientsFilter + // MNetworkChangeCallback "OnNetUInt64VarChanged" + // MNetworkAlias "m_PredUInt64Variables" + C_NetworkUtlVectorBase< uint64 > m_PredNetUInt64Variables; // 0x80 + // MNetworkEnable + // MNetworkUserGroup "animationgraph" + // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetFloatVarChanged" // MNetworkAlias "m_PredFloatVariables" - C_NetworkUtlVectorBase< float32 > m_PredNetFloatVariables; // 0x80 + C_NetworkUtlVectorBase< float32 > m_PredNetFloatVariables; // 0x98 // MNetworkEnable // MNetworkUserGroup "animationgraph" + // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetVectorVarChanged" // MNetworkAlias "m_PredVectorVariables" - C_NetworkUtlVectorBase< Vector > m_PredNetVectorVariables; // 0x98 + C_NetworkUtlVectorBase< Vector > m_PredNetVectorVariables; // 0xb0 // MNetworkEnable // MNetworkUserGroup "animationgraph" + // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetQuaternionVarChanged" // MNetworkAlias "m_PredQuaternionVariables" - C_NetworkUtlVectorBase< Quaternion > m_PredNetQuaternionVariables; // 0xb0 + C_NetworkUtlVectorBase< Quaternion > m_PredNetQuaternionVariables; // 0xc8 // MNetworkEnable // MNetworkUserGroup "animationgraph" // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetOOBoolVarChanged" // MNetworkAlias "m_OwnerOnlyPredNetBoolVariables" - C_NetworkUtlVectorBase< uint32 > m_OwnerOnlyPredNetBoolVariables; // 0xc8 + C_NetworkUtlVectorBase< uint32 > m_OwnerOnlyPredNetBoolVariables; // 0xe0 // MNetworkEnable // MNetworkUserGroup "animationgraph" // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetOOByteVarChanged" // MNetworkAlias "m_OwnerOnlyPredNetByteVariables" - C_NetworkUtlVectorBase< uint8 > m_OwnerOnlyPredNetByteVariables; // 0xe0 + C_NetworkUtlVectorBase< uint8 > m_OwnerOnlyPredNetByteVariables; // 0xf8 // MNetworkEnable // MNetworkUserGroup "animationgraph" // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetOOUInt16VarChanged" // MNetworkAlias "m_OwnerOnlyPredNetUInt16Variables" - C_NetworkUtlVectorBase< uint16 > m_OwnerOnlyPredNetUInt16Variables; // 0xf8 + C_NetworkUtlVectorBase< uint16 > m_OwnerOnlyPredNetUInt16Variables; // 0x110 // MNetworkEnable // MNetworkUserGroup "animationgraph" // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetOOIntVarChanged" // MNetworkAlias "m_OwnerOnlyPredNetIntVariables" - C_NetworkUtlVectorBase< int32 > m_OwnerOnlyPredNetIntVariables; // 0x110 + C_NetworkUtlVectorBase< int32 > m_OwnerOnlyPredNetIntVariables; // 0x128 // MNetworkEnable // MNetworkUserGroup "animationgraph" // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetOOUInt32VarChanged" // MNetworkAlias "m_OwnerOnlyPredNetUInt32Variables" - C_NetworkUtlVectorBase< uint32 > m_OwnerOnlyPredNetUInt32Variables; // 0x128 + C_NetworkUtlVectorBase< uint32 > m_OwnerOnlyPredNetUInt32Variables; // 0x140 + // MNetworkEnable + // MNetworkUserGroup "animationgraph" + // MNetworkSendProxyRecipientsFilter + // MNetworkChangeCallback "OnNetOOUInt64VarChanged" + // MNetworkAlias "m_OwnerOnlyPredNetUInt64Variables" + C_NetworkUtlVectorBase< uint64 > m_OwnerOnlyPredNetUInt64Variables; // 0x158 // MNetworkEnable // MNetworkUserGroup "animationgraph" // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetOOFloatVarChanged" // MNetworkAlias "m_OwnerOnlyPredNetFloatVariables" - C_NetworkUtlVectorBase< float32 > m_OwnerOnlyPredNetFloatVariables; // 0x140 + C_NetworkUtlVectorBase< float32 > m_OwnerOnlyPredNetFloatVariables; // 0x170 // MNetworkEnable // MNetworkUserGroup "animationgraph" // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetOOVectorVarChanged" // MNetworkAlias "m_OwnerOnlyPredNetVectorVariables" - C_NetworkUtlVectorBase< Vector > m_OwnerOnlyPredNetVectorVariables; // 0x158 + C_NetworkUtlVectorBase< Vector > m_OwnerOnlyPredNetVectorVariables; // 0x188 // MNetworkEnable // MNetworkUserGroup "animationgraph" // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetOOQuaternionVarChanged" // MNetworkAlias "m_OwnerOnlyPredNetQuaternionVariables" - C_NetworkUtlVectorBase< Quaternion > m_OwnerOnlyPredNetQuaternionVariables; // 0x170 - // MNetworkEnable - int32_t m_nBoolVariablesCount; // 0x188 - // MNetworkEnable - int32_t m_nOwnerOnlyBoolVariablesCount; // 0x18c - // MNetworkEnable - int32_t m_nRandomSeedOffset; // 0x190 -private: - [[maybe_unused]] uint8_t __pad0194[0xf8c]; // 0x194 -public: + C_NetworkUtlVectorBase< Quaternion > m_OwnerOnlyPredNetQuaternionVariables; // 0x1a0 // MNetworkEnable // MNetworkUserGroup "animationgraph" - float m_flLastTeleportTime; // 0x1120 + int32_t m_nBoolVariablesCount; // 0x1b8 + // MNetworkEnable + // MNetworkUserGroup "animationgraph" + int32_t m_nOwnerOnlyBoolVariablesCount; // 0x1bc + // MNetworkEnable + // MNetworkUserGroup "animationgraph" + int32_t m_nRandomSeedOffset; // 0x1c0 + // MNetworkEnable + // MNetworkUserGroup "animationgraph" + float m_flLastTeleportTime; // 0x1c4 }; // Alignment: 2 // Size: 0x10 class IntervalTimer { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkEnable GameTime_t m_timestamp; // 0x8 @@ -1267,8 +1241,6 @@ public: // Size: 0x18 class CountdownTimer { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkEnable float m_duration; // 0x8 @@ -1284,8 +1256,6 @@ public: // Size: 0x18 class EngineCountdownTimer { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkEnable float m_duration; // 0x8 @@ -1316,69 +1286,60 @@ public: bool m_bStopped; // 0x220 }; -// Alignment: 16 -// Size: 0x1298 +// Alignment: 14 +// Size: 0x13a0 class CBaseAnimGraphController : public CSkeletonAnimationController { -private: - [[maybe_unused]] uint8_t __pad0010[0x8]; // 0x10 public: // MNetworkEnable // MNetworkChangeCallback "baseAnimBaseLayerChangedCompat" - CNetworkedSequenceOperation m_baseLayer; // 0x18 + CNetworkedSequenceOperation m_baseLayer; // 0x10 // MNetworkEnable - CAnimGraphNetworkedVariables m_animGraphNetworkedVars; // 0x40 + CAnimGraphNetworkedVariables m_animGraphNetworkedVars; // 0x38 + // MNetworkDisable + bool m_bSequenceFinished; // 0x1318 private: - [[maybe_unused]] uint8_t __pad1178[0x8]; // 0x1178 + [[maybe_unused]] uint8_t __pad1319[0x3]; // 0x1319 public: // MNetworkDisable - bool m_bSequenceFinished; // 0x1180 -private: - [[maybe_unused]] uint8_t __pad1181[0x3]; // 0x1181 -public: - // MNetworkDisable - float m_flLastEventCycle; // 0x1184 - // MNetworkDisable - float m_flLastEventAnimTime; // 0x1188 + float m_flLastEventCycle; // 0x131c // MNetworkEnable // MNetworkBitCount "8" - // MNetworkMinValue "-4.000000" - // MNetworkMaxValue "12.000000" + // MNetworkMinValue "-4" + // MNetworkMaxValue "12" // MNetworkEncodeFlags // MNetworkPriority "32" // MNetworkChangeCallback "playbackRateChangedCompat" - CNetworkedQuantizedFloat m_flPlaybackRate; // 0x118c + CNetworkedQuantizedFloat m_flPlaybackRate; // 0x1320 // MNetworkDisable - float m_flPrevAnimTime; // 0x1194 + float m_flPrevAnimTime; // 0x1328 // MNetworkEnable // MNetworkChangeCallback "clientSideAnimationChangedCompat" - bool m_bClientSideAnimation; // 0x1198 + bool m_bClientSideAnimation; // 0x132c // MNetworkDisable - bool m_bNetworkedAnimationInputsChanged; // 0x1199 + bool m_bNetworkedAnimationInputsChanged; // 0x132d // MNetworkDisable - uint8_t m_nPrevNewSequenceParity; // 0x119a + uint8_t m_nPrevNewSequenceParity; // 0x132e // MNetworkDisable - uint8_t m_nPrevResetEventsParity; // 0x119b + uint8_t m_nPrevResetEventsParity; // 0x132f // MNetworkEnable // MNetworkPriority "32" // MNetworkChangeCallback "clientSideAnimCycleResetCompat" - int32_t m_nNewSequenceParity; // 0x119c + int32_t m_nNewSequenceParity; // 0x1330 // MNetworkEnable // MNetworkPriority "32" - int32_t m_nResetEventsParity; // 0x11a0 + int32_t m_nResetEventsParity; // 0x1334 // MNetworkEnable - AnimLoopMode_t m_nAnimLoopMode; // 0x11a4 + AnimLoopMode_t m_nAnimLoopMode; // 0x1338 private: - [[maybe_unused]] uint8_t __pad11a8[0x94]; // 0x11a8 + [[maybe_unused]] uint8_t __pad133c[0xc]; // 0x133c public: // MNetworkDisable - AnimationUpdateListHandle_t m_hAnimationUpdate; // 0x123c - // MNetworkDisable - HSequence m_hLastAnimEventSequence; // 0x1240 + HSequence m_hLastAnimEventSequence; // 0x1348 }; -// Alignment: 82 -// Size: 0x538 +// Alignment: 78 +// Size: 0x540 class C_BaseEntity : public CEntityInstance { public: @@ -1390,218 +1351,204 @@ public: CBodyComponent* m_CBodyComponent; // 0x30 CNetworkTransmitComponent m_NetworkTransmitComponent; // 0x38 private: - [[maybe_unused]] uint8_t __pad01d8[0x120]; // 0x1d8 + [[maybe_unused]] uint8_t __pad01e8[0x120]; // 0x1e8 public: - GameTick_t m_nLastThinkTick; // 0x2f8 + GameTick_t m_nLastThinkTick; // 0x308 private: - [[maybe_unused]] uint8_t __pad02fc[0x4]; // 0x2fc + [[maybe_unused]] uint8_t __pad030c[0x4]; // 0x30c public: - CGameSceneNode* m_pGameSceneNode; // 0x300 - CRenderComponent* m_pRenderComponent; // 0x308 - CCollisionProperty* m_pCollision; // 0x310 + CGameSceneNode* m_pGameSceneNode; // 0x310 + CRenderComponent* m_pRenderComponent; // 0x318 + CCollisionProperty* m_pCollision; // 0x320 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - int32_t m_iMaxHealth; // 0x318 + int32_t m_iMaxHealth; // 0x328 // MNetworkEnable // MNetworkSerializer "ClampHealth" // MNetworkUserGroup "Player" // MNetworkPriority "32" - int32_t m_iHealth; // 0x31c + int32_t m_iHealth; // 0x32c // MNetworkEnable // MNetworkUserGroup "Player" // MNetworkPriority "32" - uint8_t m_lifeState; // 0x320 + uint8_t m_lifeState; // 0x330 // MNetworkEnable - bool m_bTakesDamage; // 0x321 + bool m_bTakesDamage; // 0x331 private: - [[maybe_unused]] uint8_t __pad0322[0x2]; // 0x322 + [[maybe_unused]] uint8_t __pad0332[0x2]; // 0x332 public: // MNetworkEnable - TakeDamageFlags_t m_nTakeDamageFlags; // 0x324 + TakeDamageFlags_t m_nTakeDamageFlags; // 0x334 // MNetworkEnable // MNetworkChangeCallback "OnInterpolationFrameChanged" - uint8_t m_ubInterpolationFrame; // 0x328 + uint8_t m_ubInterpolationFrame; // 0x338 private: - [[maybe_unused]] uint8_t __pad0329[0x3]; // 0x329 + [[maybe_unused]] uint8_t __pad0339[0x3]; // 0x339 public: - CHandle< C_BaseEntity > m_hSceneObjectController; // 0x32c - int32_t m_nNoInterpolationTick; // 0x330 - int32_t m_nVisibilityNoInterpolationTick; // 0x334 - float m_flProxyRandomValue; // 0x338 - int32_t m_iEFlags; // 0x33c - uint8_t m_nWaterType; // 0x340 - bool m_bInterpolateEvenWithNoModel; // 0x341 - bool m_bPredictionEligible; // 0x342 - bool m_bApplyLayerMatchIDToModel; // 0x343 - CUtlStringToken m_tokLayerMatchID; // 0x344 + CHandle< C_BaseEntity > m_hSceneObjectController; // 0x33c + int32_t m_nNoInterpolationTick; // 0x340 + int32_t m_nVisibilityNoInterpolationTick; // 0x344 + float m_flProxyRandomValue; // 0x348 + int32_t m_iEFlags; // 0x34c + uint8_t m_nWaterType; // 0x350 + bool m_bInterpolateEvenWithNoModel; // 0x351 + bool m_bPredictionEligible; // 0x352 + bool m_bApplyLayerMatchIDToModel; // 0x353 + CUtlStringToken m_tokLayerMatchID; // 0x354 // MNetworkEnable // MNetworkChangeCallback "OnSubclassIDChanged" - CUtlStringToken m_nSubclassID; // 0x348 + CUtlStringToken m_nSubclassID; // 0x358 private: - [[maybe_unused]] uint8_t __pad034c[0xc]; // 0x34c + [[maybe_unused]] uint8_t __pad035c[0xc]; // 0x35c public: - int32_t m_nSimulationTick; // 0x358 - int32_t m_iCurrentThinkContext; // 0x35c - CUtlVector< thinkfunc_t > m_aThinkFunctions; // 0x360 + int32_t m_nSimulationTick; // 0x368 + int32_t m_iCurrentThinkContext; // 0x36c + CUtlVector< thinkfunc_t > m_aThinkFunctions; // 0x370 // MNetworkEnable // MNetworkPriority "0" // MNetworkSerializer "animTimeSerializer" // MNetworkChangeCallback "OnAnimTimeChanged" - float m_flAnimTime; // 0x378 + float m_flAnimTime; // 0x388 // MNetworkEnable // MNetworkPriority "1" // MNetworkSerializer "simulationTimeSerializer" // MNetworkChangeCallback "OnSimulationTimeChanged" - float m_flSimulationTime; // 0x37c - uint8_t m_nSceneObjectOverrideFlags; // 0x380 - bool m_bHasSuccessfullyInterpolated; // 0x381 - bool m_bHasAddedVarsToInterpolation; // 0x382 - bool m_bRenderEvenWhenNotSuccessfullyInterpolated; // 0x383 - int32_t m_nInterpolationLatchDirtyFlags[2]; // 0x384 - uint16_t m_ListEntry[11]; // 0x38c + float m_flSimulationTime; // 0x38c + uint8_t m_nSceneObjectOverrideFlags; // 0x390 + bool m_bHasSuccessfullyInterpolated; // 0x391 + bool m_bHasAddedVarsToInterpolation; // 0x392 + bool m_bRenderEvenWhenNotSuccessfullyInterpolated; // 0x393 + int32_t m_nInterpolationLatchDirtyFlags[2]; // 0x394 + uint16_t m_ListEntry[11]; // 0x39c private: - [[maybe_unused]] uint8_t __pad03a2[0x2]; // 0x3a2 + [[maybe_unused]] uint8_t __pad03b2[0x2]; // 0x3b2 public: // MNetworkEnable - GameTime_t m_flCreateTime; // 0x3a4 - float m_flSpeed; // 0x3a8 - uint16_t m_EntClientFlags; // 0x3ac + GameTime_t m_flCreateTime; // 0x3b4 + float m_flSpeed; // 0x3b8 + uint16_t m_EntClientFlags; // 0x3bc // MNetworkEnable - bool m_bClientSideRagdoll; // 0x3ae + bool m_bClientSideRagdoll; // 0x3be // MNetworkEnable // MNetworkChangeCallback "OnNetVarTeamNumChanged" - uint8_t m_iTeamNum; // 0x3af + uint8_t m_iTeamNum; // 0x3bf // MNetworkEnable - uint32_t m_spawnflags; // 0x3b0 + uint32_t m_spawnflags; // 0x3c0 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - GameTick_t m_nNextThinkTick; // 0x3b4 + GameTick_t m_nNextThinkTick; // 0x3c4 // MNetworkEnable // MNetworkPriority "32" // MNetworkUserGroup "Player" - uint32_t m_fFlags; // 0x3b8 - Vector m_vecAbsVelocity; // 0x3bc + uint32_t m_fFlags; // 0x3c8 + Vector m_vecAbsVelocity; // 0x3cc // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" // MNetworkChangeCallback "OnLocalVelocityChanged" // MNetworkPriority "32" - CNetworkVelocityVector m_vecVelocity; // 0x3c8 + CNetworkVelocityVector m_vecVelocity; // 0x3d8 private: - [[maybe_unused]] uint8_t __pad03f0[0x8]; // 0x3f0 + [[maybe_unused]] uint8_t __pad0400[0x8]; // 0x400 public: // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - Vector m_vecBaseVelocity; // 0x3f8 + Vector m_vecBaseVelocity; // 0x408 // MNetworkEnable - CHandle< C_BaseEntity > m_hEffectEntity; // 0x404 + CHandle< C_BaseEntity > m_hEffectEntity; // 0x414 // MNetworkEnable // MNetworkPriority "32" - CHandle< C_BaseEntity > m_hOwnerEntity; // 0x408 + CHandle< C_BaseEntity > m_hOwnerEntity; // 0x418 // MNetworkEnable - MoveCollide_t m_MoveCollide; // 0x40c + MoveCollide_t m_MoveCollide; // 0x41c // MNetworkEnable // MNetworkChangeCallback "OnMoveTypeChanged" - MoveType_t m_MoveType; // 0x40d + MoveType_t m_MoveType; // 0x41d private: - [[maybe_unused]] uint8_t __pad040e[0x2]; // 0x40e + [[maybe_unused]] uint8_t __pad041e[0x2]; // 0x41e public: // MNetworkEnable // MNetworkUserGroup "Water" // MNetworkChangeCallback "OnWaterLevelChangeNetworked" // MNetworkBitCount "8" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "1.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "1" // MNetworkEncodeFlags - float m_flWaterLevel; // 0x410 + float m_flWaterLevel; // 0x420 // MNetworkEnable // MNetworkChangeCallback "OnEffectsChanged" - uint32_t m_fEffects; // 0x414 + uint32_t m_fEffects; // 0x424 // MNetworkEnable // MNetworkPriority "32" // MNetworkUserGroup "Player" - CHandle< C_BaseEntity > m_hGroundEntity; // 0x418 + CHandle< C_BaseEntity > m_hGroundEntity; // 0x428 // MNetworkEnable // MNetworkBitCount "8" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "4.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "4" // MNetworkEncodeFlags // MNetworkUserGroup "LocalPlayerExclusive" - float m_flFriction; // 0x41c + float m_flFriction; // 0x42c // MNetworkEnable // MNetworkEncoder - float m_flElasticity; // 0x420 + float m_flElasticity; // 0x430 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - float m_flGravityScale; // 0x424 + float m_flGravityScale; // 0x434 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - float m_flTimeScale; // 0x428 + float m_flTimeScale; // 0x438 // MNetworkEnable // MNetworkChangeCallback "OnInterpolationAmountChanged" - bool m_bSimulatedEveryTick; // 0x42c + bool m_bSimulatedEveryTick; // 0x43c // MNetworkEnable // MNetworkChangeCallback "OnInterpolationAmountChanged" - bool m_bAnimatedEveryTick; // 0x42d - // MNetworkEnable - // MNetworkUserGroup "ScalabilityOptions" - uint8_t m_nMinCPULevel; // 0x42e - // MNetworkEnable - // MNetworkUserGroup "ScalabilityOptions" - uint8_t m_nMaxCPULevel; // 0x42f - // MNetworkEnable - // MNetworkUserGroup "ScalabilityOptions" - uint8_t m_nMinGPULevel; // 0x430 - // MNetworkEnable - // MNetworkUserGroup "ScalabilityOptions" - uint8_t m_nMaxGPULevel; // 0x431 + bool m_bAnimatedEveryTick; // 0x43d private: - [[maybe_unused]] uint8_t __pad0432[0x2]; // 0x432 + [[maybe_unused]] uint8_t __pad043e[0x2]; // 0x43e public: // MNetworkEnable // MNetworkChangeCallback "OnNavIgnoreChanged" - GameTime_t m_flNavIgnoreUntilTime; // 0x434 - uint16_t m_hThink; // 0x438 + GameTime_t m_flNavIgnoreUntilTime; // 0x440 + uint16_t m_hThink; // 0x444 private: - [[maybe_unused]] uint8_t __pad043a[0xe]; // 0x43a + [[maybe_unused]] uint8_t __pad0446[0xa]; // 0x446 public: - uint8_t m_fBBoxVisFlags; // 0x448 - bool m_bPredictable; // 0x449 - bool m_bRenderWithViewModels; // 0x44a + uint8_t m_fBBoxVisFlags; // 0x450 + bool m_bPredictable; // 0x451 + bool m_bRenderWithViewModels; // 0x452 private: - [[maybe_unused]] uint8_t __pad044b[0x1]; // 0x44b + [[maybe_unused]] uint8_t __pad0453[0x1]; // 0x453 public: - CSplitScreenSlot m_nSplitUserPlayerPredictionSlot; // 0x44c - int32_t m_nFirstPredictableCommand; // 0x450 - int32_t m_nLastPredictableCommand; // 0x454 - CHandle< C_BaseEntity > m_hOldMoveParent; // 0x458 + CSplitScreenSlot m_nSplitUserPlayerPredictionSlot; // 0x454 + int32_t m_nFirstPredictableCommand; // 0x458 + int32_t m_nLastPredictableCommand; // 0x45c + CHandle< C_BaseEntity > m_hOldMoveParent; // 0x460 private: - [[maybe_unused]] uint8_t __pad045c[0x4]; // 0x45c + [[maybe_unused]] uint8_t __pad0464[0x4]; // 0x464 public: - CParticleProperty m_Particles; // 0x460 - CUtlVector< float32 > m_vecPredictedScriptFloats; // 0x488 - CUtlVector< int32 > m_vecPredictedScriptFloatIDs; // 0x4a0 + CParticleProperty m_Particles; // 0x468 + CUtlVector< float32 > m_vecPredictedScriptFloats; // 0x490 + CUtlVector< int32 > m_vecPredictedScriptFloatIDs; // 0x4a8 private: - [[maybe_unused]] uint8_t __pad04b8[0x18]; // 0x4b8 + [[maybe_unused]] uint8_t __pad04c0[0x18]; // 0x4c0 public: - int32_t m_nNextScriptVarRecordID; // 0x4d0 + int32_t m_nNextScriptVarRecordID; // 0x4d8 private: - [[maybe_unused]] uint8_t __pad04d4[0xc]; // 0x4d4 + [[maybe_unused]] uint8_t __pad04dc[0xc]; // 0x4dc public: - QAngle m_vecAngVelocity; // 0x4e0 - int32_t m_DataChangeEventRef; // 0x4ec - CUtlVector< CEntityHandle > m_dependencies; // 0x4f0 - int32_t m_nCreationTick; // 0x508 + QAngle m_vecAngVelocity; // 0x4e8 + int32_t m_DataChangeEventRef; // 0x4f4 + CUtlVector< CEntityHandle > m_dependencies; // 0x4f8 + int32_t m_nCreationTick; // 0x510 private: - [[maybe_unused]] uint8_t __pad050c[0x15]; // 0x50c + [[maybe_unused]] uint8_t __pad0514[0x15]; // 0x514 public: - bool m_bAnimTimeChanged; // 0x521 - bool m_bSimulationTimeChanged; // 0x522 + bool m_bAnimTimeChanged; // 0x529 + bool m_bSimulationTimeChanged; // 0x52a private: - [[maybe_unused]] uint8_t __pad0523[0xd]; // 0x523 + [[maybe_unused]] uint8_t __pad052b[0xd]; // 0x52b public: - CUtlString m_sUniqueHammerID; // 0x530 - - // Static fields: + CUtlString m_sUniqueHammerID; // 0x538 static bool &Get_sm_bDatadescValidating(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("client.dll")->FindDeclaredClass("C_BaseEntity")->m_static_fields[0]->m_instance);}; static bool &Get_sm_bAccurateTriggerBboxChecks(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("client.dll")->FindDeclaredClass("C_BaseEntity")->m_static_fields[1]->m_instance);}; static bool &Get_sm_bDisableTouchFuncs(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("client.dll")->FindDeclaredClass("C_BaseEntity")->m_static_fields[2]->m_instance);}; @@ -1617,7 +1564,7 @@ public: }; // Alignment: 0 -// Size: 0x538 +// Size: 0x540 class CLogicalEntity : public C_BaseEntity { public: @@ -1637,53 +1584,51 @@ public: }; // Alignment: 18 -// Size: 0x780 +// Size: 0x788 class C_ColorCorrection : public C_BaseEntity { public: - Vector m_vecOrigin; // 0x538 + Vector m_vecOrigin; // 0x540 // MNetworkEnable - float m_MinFalloff; // 0x544 + float m_MinFalloff; // 0x54c // MNetworkEnable - float m_MaxFalloff; // 0x548 + float m_MaxFalloff; // 0x550 // MNetworkEnable - float m_flFadeInDuration; // 0x54c + float m_flFadeInDuration; // 0x554 // MNetworkEnable - float m_flFadeOutDuration; // 0x550 + float m_flFadeOutDuration; // 0x558 // MNetworkEnable - float m_flMaxWeight; // 0x554 + float m_flMaxWeight; // 0x55c // MNetworkEnable - float m_flCurWeight; // 0x558 + float m_flCurWeight; // 0x560 // MNetworkEnable - char m_netlookupFilename[512]; // 0x55c + char m_netlookupFilename[512]; // 0x564 // MNetworkEnable - bool m_bEnabled; // 0x75c + bool m_bEnabled; // 0x764 // MNetworkEnable - bool m_bMaster; // 0x75d + bool m_bMaster; // 0x765 // MNetworkEnable - bool m_bClientSide; // 0x75e + bool m_bClientSide; // 0x766 // MNetworkEnable - bool m_bExclusive; // 0x75f - bool m_bEnabledOnClient[1]; // 0x760 -private: - [[maybe_unused]] uint8_t __pad0761[0x3]; // 0x761 -public: - float m_flCurWeightOnClient[1]; // 0x764 - bool m_bFadingIn[1]; // 0x768 + bool m_bExclusive; // 0x767 + bool m_bEnabledOnClient[1]; // 0x768 private: [[maybe_unused]] uint8_t __pad0769[0x3]; // 0x769 public: - float m_flFadeStartWeight[1]; // 0x76c - float m_flFadeStartTime[1]; // 0x770 - float m_flFadeDuration[1]; // 0x774 + float m_flCurWeightOnClient[1]; // 0x76c + bool m_bFadingIn[1]; // 0x770 +private: + [[maybe_unused]] uint8_t __pad0771[0x3]; // 0x771 +public: + float m_flFadeStartWeight[1]; // 0x774 + float m_flFadeStartTime[1]; // 0x778 + float m_flFadeDuration[1]; // 0x77c }; // Alignment: 29 // Size: 0x208 class C_EnvWindShared { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkEnable GameTime_t m_flStartTime; // 0x8 @@ -1741,26 +1686,24 @@ public: }; // Alignment: 3 -// Size: 0x570 +// Size: 0x578 class C_EntityFlame : public C_BaseEntity { public: // MNetworkEnable - CHandle< C_BaseEntity > m_hEntAttached; // 0x538 + CHandle< C_BaseEntity > m_hEntAttached; // 0x540 private: - [[maybe_unused]] uint8_t __pad053c[0x24]; // 0x53c + [[maybe_unused]] uint8_t __pad0544[0x24]; // 0x544 public: - CHandle< C_BaseEntity > m_hOldAttached; // 0x560 + CHandle< C_BaseEntity > m_hOldAttached; // 0x568 // MNetworkEnable - bool m_bCheapEffect; // 0x564 + bool m_bCheapEffect; // 0x56c }; // Alignment: 30 // Size: 0x2e0 class CProjectedTextureBase { -private: - [[maybe_unused]] uint8_t __pad0000[0xc]; // 0x0 public: // MNetworkEnable CHandle< C_BaseEntity > m_hTargetEntity; // 0xc @@ -1823,14 +1766,14 @@ public: uint32_t m_nShadowQuality; // 0x258 // MNetworkEnable // MNetworkBitCount "16" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "500.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "500" // MNetworkEncodeFlags float m_flNearZ; // 0x25c // MNetworkEnable // MNetworkBitCount "18" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "1500.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "1500" // MNetworkEncodeFlags float m_flFarZ; // 0x260 // MNetworkEnable @@ -1839,24 +1782,22 @@ public: float m_flRotation; // 0x268 // MNetworkEnable bool m_bFlipHorizontal; // 0x26c - - // Static fields: static float &Get_m_flVisibleBBoxMinHeight(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("client.dll")->FindDeclaredClass("CProjectedTextureBase")->m_static_fields[0]->m_instance);}; }; // Alignment: 4 -// Size: 0x548 +// Size: 0x550 class C_BaseFire : public C_BaseEntity { public: // MNetworkEnable - float m_flScale; // 0x538 + float m_flScale; // 0x540 // MNetworkEnable - float m_flStartScale; // 0x53c + float m_flStartScale; // 0x544 // MNetworkEnable - float m_flScaleTime; // 0x540 + float m_flScaleTime; // 0x548 // MNetworkEnable - uint32_t m_nFlags; // 0x544 + uint32_t m_nFlags; // 0x54c }; // Alignment: 2 @@ -1872,8 +1813,6 @@ public: // Size: 0x10 class C_RopeKeyframe::CPhysicsDelegate { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: C_RopeKeyframe* m_pKeyframe; // 0x8 }; @@ -1887,7 +1826,7 @@ public: }; // Alignment: 0 -// Size: 0x550 +// Size: 0x558 class C_TintController : public C_BaseEntity { public: @@ -1895,7 +1834,7 @@ public: }; // Alignment: 0 -// Size: 0x538 +// Size: 0x540 class C_TriggerCamera : public C_BaseEntity { public: @@ -1906,8 +1845,6 @@ public: // Size: 0x2e0 class CFlashlightEffect { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: bool m_bIsOn; // 0x10 private: @@ -1966,8 +1903,6 @@ public: // Size: 0xd0 class CGlowOverlay { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: Vector m_vPos; // 0x8 bool m_bDirectional; // 0x14 @@ -2002,27 +1937,23 @@ public: // Size: 0x8 class IClientAlphaProperty { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: - // No members available + uint8_t __pad0000[0x8]; // Autoaligned }; // Alignment: 2 -// Size: 0x540 +// Size: 0x548 class CSkyboxReference : public C_BaseEntity { public: - WorldGroupId_t m_worldGroupId; // 0x538 - CHandle< C_SkyCamera > m_hSkyCamera; // 0x53c + WorldGroupId_t m_worldGroupId; // 0x540 + CHandle< C_SkyCamera > m_hSkyCamera; // 0x544 }; // Alignment: 6 // Size: 0x90 struct sky3dparams_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkEnable int16_t scale; // 0x8 @@ -2046,39 +1977,37 @@ public: }; // Alignment: 13 -// Size: 0x5b0 +// Size: 0x5b8 class C_FireSmoke : public C_BaseFire { public: // MNetworkEnable - int32_t m_nFlameModelIndex; // 0x548 + int32_t m_nFlameModelIndex; // 0x550 // MNetworkEnable - int32_t m_nFlameFromAboveModelIndex; // 0x54c - float m_flScaleRegister; // 0x550 - float m_flScaleStart; // 0x554 - float m_flScaleEnd; // 0x558 - GameTime_t m_flScaleTimeStart; // 0x55c - GameTime_t m_flScaleTimeEnd; // 0x560 - float m_flChildFlameSpread; // 0x564 + int32_t m_nFlameFromAboveModelIndex; // 0x554 + float m_flScaleRegister; // 0x558 + float m_flScaleStart; // 0x55c + float m_flScaleEnd; // 0x560 + GameTime_t m_flScaleTimeStart; // 0x564 + GameTime_t m_flScaleTimeEnd; // 0x568 + float m_flChildFlameSpread; // 0x56c private: - [[maybe_unused]] uint8_t __pad0568[0x10]; // 0x568 + [[maybe_unused]] uint8_t __pad0570[0x10]; // 0x570 public: - float m_flClipPerc; // 0x578 - bool m_bClipTested; // 0x57c - bool m_bFadingOut; // 0x57d + float m_flClipPerc; // 0x580 + bool m_bClipTested; // 0x584 + bool m_bFadingOut; // 0x585 private: - [[maybe_unused]] uint8_t __pad057e[0x2]; // 0x57e + [[maybe_unused]] uint8_t __pad0586[0x2]; // 0x586 public: - TimedEvent m_tParticleSpawn; // 0x580 - CFireOverlay* m_pFireOverlay; // 0x588 + TimedEvent m_tParticleSpawn; // 0x588 + CFireOverlay* m_pFireOverlay; // 0x590 }; // Alignment: 8 // Size: 0x30 struct VPhysicsCollisionAttribute_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkEnable uint64_t m_nInteractsAs; // 0x8 @@ -2102,8 +2031,6 @@ public: // Size: 0xb0 class CCollisionProperty { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: // MNetworkEnable // MNetworkChangeCallback "CollisionAttributeChanged" @@ -2178,8 +2105,6 @@ public: // Size: 0x70 class CEffectData { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkEnable // MNetworkEncoder @@ -2201,14 +2126,14 @@ public: float m_flScale; // 0x40 // MNetworkEnable // MNetworkBitCount "12" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "1023.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "1023" // MNetworkEncodeFlags float m_flMagnitude; // 0x44 // MNetworkEnable // MNetworkBitCount "10" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "1023.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "1023" // MNetworkEncodeFlags float m_flRadius; // 0x48 // MNetworkEnable @@ -2244,24 +2169,24 @@ public: }; // Alignment: 2 -// Size: 0x540 +// Size: 0x548 class C_EnvDetailController : public C_BaseEntity { public: // MNetworkEnable - float m_flFadeStartDist; // 0x538 + float m_flFadeStartDist; // 0x540 // MNetworkEnable - float m_flFadeEndDist; // 0x53c + float m_flFadeEndDist; // 0x544 }; // Alignment: 1 -// Size: 0x740 +// Size: 0x748 class C_EnvWindClientside : public C_BaseEntity { public: // MNetworkEnable // MNetworkDisable - C_EnvWindShared m_EnvWindShared; // 0x538 + C_EnvWindShared m_EnvWindShared; // 0x540 }; // Alignment: 2 @@ -2283,7 +2208,7 @@ public: }; // Alignment: 0 -// Size: 0x538 +// Size: 0x540 class C_InfoLadderDismount : public C_BaseEntity { public: @@ -2294,8 +2219,6 @@ public: // Size: 0x60 struct shard_model_desc_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkEnable int32_t m_nModelID; // 0x8 @@ -2338,7 +2261,7 @@ public: }; // Alignment: 0 -// Size: 0x538 +// Size: 0x540 class C_GameRulesProxy : public C_BaseEntity { public: @@ -2349,18 +2272,14 @@ public: // Size: 0x8 class C_GameRules { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: - // No members available + uint8_t __pad0000[0x8]; // Autoaligned }; // Alignment: 11 // Size: 0x58 class CGlowProperty { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: Vector m_fGlowColor; // 0x8 private: @@ -2404,8 +2323,6 @@ public: // Size: 0x40 struct C_fogplayerparams_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkEnable // MNetworkUserGroup "PlayerFogController" @@ -2425,8 +2342,8 @@ public: float m_flNewFarZ; // 0x3c }; -// Alignment: 26 -// Size: 0x248 +// Alignment: 25 +// Size: 0x220 class CPlayer_CameraServices : public CPlayerPawnComponent { public: @@ -2440,84 +2357,68 @@ public: // MNetworkUserGroup "LocalPlayerExclusive" float m_flFOVRate; // 0x4c // MNetworkEnable - // MNetworkPriority "32" - // MNetworkBitCount "32" - // MNetworkChangeCallback "OnPunchChanged" - QAngle m_vecPunchAngle; // 0x50 -private: - [[maybe_unused]] uint8_t __pad005c[0xc]; // 0x5c -public: + // MNetworkEncoder + QAngle m_vecCsViewPunchAngle; // 0x50 // MNetworkEnable - // MNetworkBitCount "32" - QAngle m_vecPunchAngleVel; // 0x68 -private: - [[maybe_unused]] uint8_t __pad0074[0xc]; // 0x74 -public: - GameTick_t m_nPunchAngleJoltTickClientSide; // 0x80 + GameTick_t m_nCsViewPunchAngleTick; // 0x5c // MNetworkEnable - // MNetworkChangeCallback "OnPunchJoltChanged" - GameTick_t m_nPunchAngleJoltTick; // 0x84 + float m_flCsViewPunchAngleTickRatio; // 0x60 // MNetworkEnable - CHandle< C_BaseEntity > m_hZoomOwner; // 0x88 -private: - [[maybe_unused]] uint8_t __pad008c[0x4]; // 0x8c -public: + CHandle< C_BaseEntity > m_hZoomOwner; // 0x64 // MNetworkEnable - C_fogplayerparams_t m_PlayerFog; // 0x90 + C_fogplayerparams_t m_PlayerFog; // 0x68 // MNetworkEnable - CHandle< C_ColorCorrection > m_hColorCorrectionCtrl; // 0xd0 + CHandle< C_ColorCorrection > m_hColorCorrectionCtrl; // 0xa8 // MNetworkEnable - CHandle< C_BaseEntity > m_hViewEntity; // 0xd4 + CHandle< C_BaseEntity > m_hViewEntity; // 0xac // MNetworkEnable // MNetworkUserGroup "LocalPlayerAndObserversExclusive" - CHandle< C_TonemapController2 > m_hTonemapController; // 0xd8 + CHandle< C_TonemapController2 > m_hTonemapController; // 0xb0 private: - [[maybe_unused]] uint8_t __pad00dc[0x4]; // 0xdc + [[maybe_unused]] uint8_t __pad00b4[0x4]; // 0xb4 public: // MNetworkEnable // MNetworkUserGroup "LocalPlayerAndObserversExclusive" - audioparams_t m_audio; // 0xe0 + audioparams_t m_audio; // 0xb8 // MNetworkEnable // MNetworkUserGroup "LocalPlayerAndObserversExclusive" - C_NetworkUtlVectorBase< CHandle< C_PostProcessingVolume > > m_PostProcessingVolumes; // 0x158 - float m_flOldPlayerZ; // 0x170 - float m_flOldPlayerViewOffsetZ; // 0x174 - fogparams_t m_CurrentFog; // 0x178 - CHandle< C_FogController > m_hOldFogController; // 0x1e0 - bool m_bOverrideFogColor[5]; // 0x1e4 - Color m_OverrideFogColor[5]; // 0x1e9 - bool m_bOverrideFogStartEnd[5]; // 0x1fd + C_NetworkUtlVectorBase< CHandle< C_PostProcessingVolume > > m_PostProcessingVolumes; // 0x130 + float m_flOldPlayerZ; // 0x148 + float m_flOldPlayerViewOffsetZ; // 0x14c + fogparams_t m_CurrentFog; // 0x150 + CHandle< C_FogController > m_hOldFogController; // 0x1b8 + bool m_bOverrideFogColor[5]; // 0x1bc + Color m_OverrideFogColor[5]; // 0x1c1 + bool m_bOverrideFogStartEnd[5]; // 0x1d5 private: - [[maybe_unused]] uint8_t __pad0202[0x2]; // 0x202 + [[maybe_unused]] uint8_t __pad01da[0x2]; // 0x1da public: - float m_fOverrideFogStart[5]; // 0x204 - float m_fOverrideFogEnd[5]; // 0x218 - CHandle< C_PostProcessingVolume > m_hActivePostProcessingVolume; // 0x22c - QAngle m_angDemoViewAngles; // 0x230 + float m_fOverrideFogStart[5]; // 0x1dc + float m_fOverrideFogEnd[5]; // 0x1f0 + CHandle< C_PostProcessingVolume > m_hActivePostProcessingVolume; // 0x204 + QAngle m_angDemoViewAngles; // 0x208 }; // Alignment: 4 -// Size: 0x5d8 +// Size: 0x5e0 class C_SkyCamera : public C_BaseEntity { public: // MNetworkEnable - sky3dparams_t m_skyboxData; // 0x538 + sky3dparams_t m_skyboxData; // 0x540 // MNetworkEnable - CUtlStringToken m_skyboxSlotToken; // 0x5c8 - bool m_bUseAngles; // 0x5cc + CUtlStringToken m_skyboxSlotToken; // 0x5d0 + bool m_bUseAngles; // 0x5d4 private: - [[maybe_unused]] uint8_t __pad05cd[0x3]; // 0x5cd + [[maybe_unused]] uint8_t __pad05d5[0x3]; // 0x5d5 public: - C_SkyCamera* m_pNext; // 0x5d0 + C_SkyCamera* m_pNext; // 0x5d8 }; // Alignment: 3 // Size: 0x50 struct PhysicsRagdollPose_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex @@ -2537,24 +2438,24 @@ public: }; // Alignment: 5 -// Size: 0x558 +// Size: 0x560 class C_SoundOpvarSetPointBase : public C_BaseEntity { public: // MNetworkEnable - CUtlSymbolLarge m_iszStackName; // 0x538 + CUtlSymbolLarge m_iszStackName; // 0x540 // MNetworkEnable - CUtlSymbolLarge m_iszOperatorName; // 0x540 + CUtlSymbolLarge m_iszOperatorName; // 0x548 // MNetworkEnable - CUtlSymbolLarge m_iszOpvarName; // 0x548 + CUtlSymbolLarge m_iszOpvarName; // 0x550 // MNetworkEnable - int32_t m_iOpvarIndex; // 0x550 + int32_t m_iOpvarIndex; // 0x558 // MNetworkEnable - bool m_bUseAutoCompare; // 0x554 + bool m_bUseAutoCompare; // 0x55c }; // Alignment: 0 -// Size: 0x558 +// Size: 0x560 class C_SoundOpvarSetPointEntity : public C_SoundOpvarSetPointBase { public: @@ -2562,7 +2463,7 @@ public: }; // Alignment: 0 -// Size: 0x558 +// Size: 0x560 class C_SoundOpvarSetAABBEntity : public C_SoundOpvarSetPointEntity { public: @@ -2570,7 +2471,7 @@ public: }; // Alignment: 0 -// Size: 0x558 +// Size: 0x560 class C_SoundOpvarSetOBBEntity : public C_SoundOpvarSetAABBEntity { public: @@ -2578,7 +2479,7 @@ public: }; // Alignment: 0 -// Size: 0x558 +// Size: 0x560 class C_SoundOpvarSetPathCornerEntity : public C_SoundOpvarSetPointEntity { public: @@ -2586,7 +2487,7 @@ public: }; // Alignment: 0 -// Size: 0x558 +// Size: 0x560 class C_SoundOpvarSetOBBWindEntity : public C_SoundOpvarSetPointBase { public: @@ -2602,79 +2503,77 @@ public: }; // Alignment: 30 -// Size: 0x580 +// Size: 0x588 class C_TeamRoundTimer : public C_BaseEntity { public: // MNetworkEnable // MNetworkChangeCallback "OnTimerPaused" - bool m_bTimerPaused; // 0x538 + bool m_bTimerPaused; // 0x540 private: - [[maybe_unused]] uint8_t __pad0539[0x3]; // 0x539 + [[maybe_unused]] uint8_t __pad0541[0x3]; // 0x541 public: // MNetworkEnable - float m_flTimeRemaining; // 0x53c + float m_flTimeRemaining; // 0x544 // MNetworkEnable - GameTime_t m_flTimerEndTime; // 0x540 + GameTime_t m_flTimerEndTime; // 0x548 // MNetworkEnable - bool m_bIsDisabled; // 0x544 + bool m_bIsDisabled; // 0x54c // MNetworkEnable - bool m_bShowInHUD; // 0x545 + bool m_bShowInHUD; // 0x54d private: - [[maybe_unused]] uint8_t __pad0546[0x2]; // 0x546 + [[maybe_unused]] uint8_t __pad054e[0x2]; // 0x54e public: // MNetworkEnable - int32_t m_nTimerLength; // 0x548 + int32_t m_nTimerLength; // 0x550 // MNetworkEnable - int32_t m_nTimerInitialLength; // 0x54c + int32_t m_nTimerInitialLength; // 0x554 // MNetworkEnable - int32_t m_nTimerMaxLength; // 0x550 + int32_t m_nTimerMaxLength; // 0x558 // MNetworkEnable - bool m_bAutoCountdown; // 0x554 + bool m_bAutoCountdown; // 0x55c private: - [[maybe_unused]] uint8_t __pad0555[0x3]; // 0x555 + [[maybe_unused]] uint8_t __pad055d[0x3]; // 0x55d public: // MNetworkEnable - int32_t m_nSetupTimeLength; // 0x558 + int32_t m_nSetupTimeLength; // 0x560 // MNetworkEnable - int32_t m_nState; // 0x55c + int32_t m_nState; // 0x564 // MNetworkEnable - bool m_bStartPaused; // 0x560 + bool m_bStartPaused; // 0x568 // MNetworkEnable - bool m_bInCaptureWatchState; // 0x561 + bool m_bInCaptureWatchState; // 0x569 private: - [[maybe_unused]] uint8_t __pad0562[0x2]; // 0x562 + [[maybe_unused]] uint8_t __pad056a[0x2]; // 0x56a public: // MNetworkEnable - float m_flTotalTime; // 0x564 + float m_flTotalTime; // 0x56c // MNetworkEnable - bool m_bStopWatchTimer; // 0x568 - bool m_bFireFinished; // 0x569 - bool m_bFire5MinRemain; // 0x56a - bool m_bFire4MinRemain; // 0x56b - bool m_bFire3MinRemain; // 0x56c - bool m_bFire2MinRemain; // 0x56d - bool m_bFire1MinRemain; // 0x56e - bool m_bFire30SecRemain; // 0x56f - bool m_bFire10SecRemain; // 0x570 - bool m_bFire5SecRemain; // 0x571 - bool m_bFire4SecRemain; // 0x572 - bool m_bFire3SecRemain; // 0x573 - bool m_bFire2SecRemain; // 0x574 - bool m_bFire1SecRemain; // 0x575 + bool m_bStopWatchTimer; // 0x570 + bool m_bFireFinished; // 0x571 + bool m_bFire5MinRemain; // 0x572 + bool m_bFire4MinRemain; // 0x573 + bool m_bFire3MinRemain; // 0x574 + bool m_bFire2MinRemain; // 0x575 + bool m_bFire1MinRemain; // 0x576 + bool m_bFire30SecRemain; // 0x577 + bool m_bFire10SecRemain; // 0x578 + bool m_bFire5SecRemain; // 0x579 + bool m_bFire4SecRemain; // 0x57a + bool m_bFire3SecRemain; // 0x57b + bool m_bFire2SecRemain; // 0x57c + bool m_bFire1SecRemain; // 0x57d private: - [[maybe_unused]] uint8_t __pad0576[0x2]; // 0x576 + [[maybe_unused]] uint8_t __pad057e[0x2]; // 0x57e public: - int32_t m_nOldTimerLength; // 0x578 - int32_t m_nOldTimerState; // 0x57c + int32_t m_nOldTimerLength; // 0x580 + int32_t m_nOldTimerState; // 0x584 }; // Alignment: 2 // Size: 0x60 class CAttributeList { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkEnable // MNetworkTypeAlias "CUtlVector< CEconItemAttribute >" @@ -2686,8 +2585,6 @@ public: // Size: 0x48 class CEconItemAttribute { -private: - [[maybe_unused]] uint8_t __pad0000[0x30]; // 0x0 public: // MNetworkEnable uint16_t m_iAttributeDefinitionIndex; // 0x30 @@ -2709,8 +2606,6 @@ public: // Size: 0x50 class CAttributeManager { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: CUtlVector< CHandle< C_BaseEntity > > m_Providers; // 0x8 // MNetworkEnable @@ -2740,8 +2635,6 @@ public: // Size: 0x448 class C_EconItemView : public IEconItemInterface { -private: - [[maybe_unused]] uint8_t __pad0008[0x58]; // 0x8 public: bool m_bInventoryImageRgbaRequested; // 0x60 bool m_bInventoryImageTriedCache; // 0x61 @@ -2805,8 +2698,6 @@ private: [[maybe_unused]] uint8_t __pad0412[0x2e]; // 0x412 public: bool m_bInitializedTags; // 0x440 - - // Static fields: static bool &Get_m_sbHasCleanedInventoryImageCacheDir(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("client.dll")->FindDeclaredClass("C_EconItemView")->m_static_fields[0]->m_instance);}; }; @@ -2822,8 +2713,6 @@ public: // Size: 0x18 struct EntitySpottedState_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkEnable // MNetworkChangeCallback "OnIsSpottedChanged" @@ -2837,22 +2726,20 @@ public: }; // Alignment: 1 -// Size: 0x540 +// Size: 0x548 class C_CSGameRulesProxy : public C_GameRulesProxy { public: // MNetworkEnable // MNetworkTypeAlias "CCSGameRules*" // MNetworkPriority "32" - C_CSGameRules* m_pGameRules; // 0x538 + C_CSGameRules* m_pGameRules; // 0x540 }; // Alignment: 5 // Size: 0x118 class C_RetakeGameRules { -private: - [[maybe_unused]] uint8_t __pad0000[0xf8]; // 0x0 public: // MNetworkEnable int32_t m_nMatchSeed; // 0xf8 @@ -2873,8 +2760,6 @@ public: // Size: 0x6c0 class C_SurvivalGameRules { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkEnable Vector m_vecPlayAreaMins; // 0x8 @@ -2920,8 +2805,6 @@ public: // Size: 0x68 struct CSPerRoundStats_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x30]; // 0x0 public: // MNetworkEnable int32_t m_iKills; // 0x30 @@ -2973,25 +2856,25 @@ public: }; // Alignment: 4 -// Size: 0x9d0 +// Size: 0x9d8 class C_CSGO_TeamPreviewCharacterPosition : public C_BaseEntity { public: // MNetworkEnable - int32_t m_nOrdinal; // 0x538 + int32_t m_nOrdinal; // 0x540 private: - [[maybe_unused]] uint8_t __pad053c[0x4]; // 0x53c + [[maybe_unused]] uint8_t __pad0544[0x4]; // 0x544 public: // MNetworkEnable - CUtlString m_sWeaponName; // 0x540 + CUtlString m_sWeaponName; // 0x548 // MNetworkEnable - uint64_t m_xuid; // 0x548 + uint64_t m_xuid; // 0x550 // MNetworkEnable - C_EconItemView m_weaponItem; // 0x550 + C_EconItemView m_weaponItem; // 0x558 }; // Alignment: 0 -// Size: 0x9d0 +// Size: 0x9d8 class C_CSGO_TeamSelectCharacterPosition : public C_CSGO_TeamPreviewCharacterPosition { public: @@ -2999,7 +2882,7 @@ public: }; // Alignment: 0 -// Size: 0x9d0 +// Size: 0x9d8 class C_CSGO_TeamSelectTerroristPosition : public C_CSGO_TeamSelectCharacterPosition { public: @@ -3007,7 +2890,7 @@ public: }; // Alignment: 0 -// Size: 0x9d0 +// Size: 0x9d8 class C_CSGO_TeamSelectCounterTerroristPosition : public C_CSGO_TeamSelectCharacterPosition { public: @@ -3015,7 +2898,7 @@ public: }; // Alignment: 0 -// Size: 0x9d0 +// Size: 0x9d8 class C_CSGO_TeamIntroCharacterPosition : public C_CSGO_TeamPreviewCharacterPosition { public: @@ -3023,7 +2906,7 @@ public: }; // Alignment: 0 -// Size: 0x9d0 +// Size: 0x9d8 class C_CSGO_TeamIntroTerroristPosition : public C_CSGO_TeamIntroCharacterPosition { public: @@ -3031,46 +2914,72 @@ public: }; // Alignment: 0 -// Size: 0x9d0 +// Size: 0x9d8 class C_CSGO_TeamIntroCounterTerroristPosition : public C_CSGO_TeamIntroCharacterPosition { public: // No members available }; +// Alignment: 0 +// Size: 0x540 +class C_CSMinimapBoundary : public C_BaseEntity +{ +public: + // No members available +}; + +// Alignment: 2 +// Size: 0x38 +struct WeaponPurchaseCount_t +{ +public: + // MNetworkEnable + uint16_t m_nItemDefIndex; // 0x30 + // MNetworkEnable + uint16_t m_nCount; // 0x32 +}; + +// Alignment: 1 +// Size: 0x58 +struct WeaponPurchaseTracker_t +{ +public: + // MNetworkEnable + C_UtlVectorEmbeddedNetworkVar< WeaponPurchaseCount_t > m_weaponPurchases; // 0x8 +}; + // Alignment: 3 -// Size: 0x848 +// Size: 0xf8 class CCSPlayer_ActionTrackingServices : public CPlayerPawnComponent { public: // MNetworkEnable bool m_bIsRescuing; // 0x40 private: - [[maybe_unused]] uint8_t __pad0041[0x3]; // 0x41 + [[maybe_unused]] uint8_t __pad0041[0x7]; // 0x41 public: // MNetworkEnable - int32_t m_iWeaponPurchasesThisMatch[256]; // 0x44 + WeaponPurchaseTracker_t m_weaponPurchasesThisMatch; // 0x48 // MNetworkEnable - int32_t m_iWeaponPurchasesThisRound[256]; // 0x444 + WeaponPurchaseTracker_t m_weaponPurchasesThisRound; // 0xa0 }; // Alignment: 5 -// Size: 0x588 +// Size: 0x590 class C_PlayerPing : public C_BaseEntity { -private: - [[maybe_unused]] uint8_t __pad0538[0x30]; // 0x538 public: // MNetworkEnable - CHandle< C_BaseEntity > m_hPlayer; // 0x568 + CHandle< C_BaseEntity > m_hPlayer; // 0x570 // MNetworkEnable - CHandle< C_BaseEntity > m_hPingedEntity; // 0x56c + CHandle< C_BaseEntity > m_hPingedEntity; // 0x574 // MNetworkEnable - int32_t m_iType; // 0x570 + int32_t m_iType; // 0x578 // MNetworkEnable - bool m_bUrgent; // 0x574 + bool m_bUrgent; // 0x57c // MNetworkEnable - char m_szPlaceName[18]; // 0x575 + char m_szPlaceName[18]; // 0x57d }; // Alignment: 1 @@ -3083,29 +2992,29 @@ public: }; // Alignment: 10 -// Size: 0x5d0 +// Size: 0x5d8 class C_CSPlayerResource : public C_BaseEntity { public: // MNetworkEnable - bool m_bHostageAlive[12]; // 0x538 + bool m_bHostageAlive[12]; // 0x540 // MNetworkEnable - bool m_isHostageFollowingSomeone[12]; // 0x544 + bool m_isHostageFollowingSomeone[12]; // 0x54c // MNetworkEnable - CEntityIndex m_iHostageEntityIDs[12]; // 0x550 + CEntityIndex m_iHostageEntityIDs[12]; // 0x558 // MNetworkEnable - Vector m_bombsiteCenterA; // 0x580 + Vector m_bombsiteCenterA; // 0x588 // MNetworkEnable - Vector m_bombsiteCenterB; // 0x58c + Vector m_bombsiteCenterB; // 0x594 // MNetworkEnable - int32_t m_hostageRescueX[4]; // 0x598 + int32_t m_hostageRescueX[4]; // 0x5a0 // MNetworkEnable - int32_t m_hostageRescueY[4]; // 0x5a8 + int32_t m_hostageRescueY[4]; // 0x5b0 // MNetworkEnable - int32_t m_hostageRescueZ[4]; // 0x5b8 + int32_t m_hostageRescueZ[4]; // 0x5c0 // MNetworkEnable - bool m_bEndMatchNextMapAllVoted; // 0x5c8 - bool m_foundGoalPositions; // 0x5c9 + bool m_bEndMatchNextMapAllVoted; // 0x5d0 + bool m_foundGoalPositions; // 0x5d1 }; // Alignment: 1 @@ -3118,12 +3027,12 @@ public: }; // Alignment: 2 -// Size: 0x250 +// Size: 0x228 class CCSPlayer_CameraServices : public CPlayer_CameraServices { public: - float m_flLastShotFOV; // 0x248 - float m_flDeathCamTilt; // 0x24c + float m_flLastShotFOV; // 0x220 + float m_flDeathCamTilt; // 0x224 }; // Alignment: 2 @@ -3137,8 +3046,8 @@ public: CHandle< C_BaseEntity > m_hCarriedHostageProp; // 0x44 }; -// Alignment: 3 -// Size: 0x48 +// Alignment: 8 +// Size: 0x50 class CCSPlayer_ItemServices : public CPlayer_ItemServices { public: @@ -3148,89 +3057,111 @@ public: bool m_bHasHelmet; // 0x41 // MNetworkEnable bool m_bHasHeavyArmor; // 0x42 + // MNetworkEnable + bool m_bKevlarIsRefundable; // 0x43 + // MNetworkEnable + bool m_bAssaultSuitIsRefundable; // 0x44 + // MNetworkEnable + bool m_bDefuserIsRefundable; // 0x45 +private: + [[maybe_unused]] uint8_t __pad0046[0x2]; // 0x46 +public: + // MNetworkEnable + int32_t m_nPrevArmorValue; // 0x48 + // MNetworkEnable + bool m_bPrevHadHelmet; // 0x4c }; -// Alignment: 33 -// Size: 0x13a8 +// Alignment: 36 +// Size: 0x13d0 class CCSPlayer_MovementServices : public CPlayer_MovementServices_Humanoid { public: // MNetworkEnable - float m_flMaxFallVelocity; // 0x1f8 + float m_flMaxFallVelocity; // 0x208 // MNetworkEnable // MNetworkEncoder - Vector m_vecLadderNormal; // 0x1fc + Vector m_vecLadderNormal; // 0x20c // MNetworkEnable - int32_t m_nLadderSurfacePropIndex; // 0x208 + int32_t m_nLadderSurfacePropIndex; // 0x218 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - bool m_bAllowAutoMovement; // 0x20c + bool m_bAllowAutoMovement; // 0x21c private: - [[maybe_unused]] uint8_t __pad020d[0x3]; // 0x20d + [[maybe_unused]] uint8_t __pad021d[0x3]; // 0x21d public: // MNetworkEnable - float m_flDuckAmount; // 0x210 + float m_flDuckAmount; // 0x220 // MNetworkEnable - float m_flDuckSpeed; // 0x214 + float m_flDuckSpeed; // 0x224 // MNetworkEnable - bool m_bDuckOverride; // 0x218 + bool m_bDuckOverride; // 0x228 private: - [[maybe_unused]] uint8_t __pad0219[0x3]; // 0x219 + [[maybe_unused]] uint8_t __pad0229[0x3]; // 0x229 public: - float m_flDuckOffset; // 0x21c + float m_flDuckOffset; // 0x22c // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" // MNetworkPriority "32" - uint32_t m_nDuckTimeMsecs; // 0x220 + uint32_t m_nDuckTimeMsecs; // 0x230 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - uint32_t m_nDuckJumpTimeMsecs; // 0x224 + uint32_t m_nDuckJumpTimeMsecs; // 0x234 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - uint32_t m_nJumpTimeMsecs; // 0x228 + uint32_t m_nJumpTimeMsecs; // 0x238 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - float m_flLastDuckTime; // 0x22c + float m_flLastDuckTime; // 0x23c private: - [[maybe_unused]] uint8_t __pad0230[0x8]; // 0x230 + [[maybe_unused]] uint8_t __pad0240[0x8]; // 0x240 public: - Vector2D m_vecLastPositionAtFullCrouchSpeed; // 0x238 - bool m_duckUntilOnGround; // 0x240 - bool m_bHasWalkMovedSinceLastJump; // 0x241 - bool m_bInStuckTest; // 0x242 + Vector2D m_vecLastPositionAtFullCrouchSpeed; // 0x248 + bool m_duckUntilOnGround; // 0x250 + bool m_bHasWalkMovedSinceLastJump; // 0x251 + bool m_bInStuckTest; // 0x252 private: - [[maybe_unused]] uint8_t __pad0243[0x5]; // 0x243 + [[maybe_unused]] uint8_t __pad0253[0x5]; // 0x253 public: - uint64_t m_CachedGetPointContents[3][64]; // 0x248 - Vector m_CachedGetPointContentsPoint[3][64]; // 0x848 + uint64_t m_CachedGetPointContents[3][64]; // 0x258 + Vector m_CachedGetPointContentsPoint[3][64]; // 0x858 private: - [[maybe_unused]] uint8_t __pad1148[0x8]; // 0x1148 + [[maybe_unused]] uint8_t __pad1158[0x8]; // 0x1158 public: - float m_flStuckCheckTime[2][64]; // 0x1150 - int32_t m_nTraceCount; // 0x1350 - int32_t m_StuckLast; // 0x1354 - bool m_bSpeedCropped; // 0x1358 + float m_flStuckCheckTime[2][64]; // 0x1160 + int32_t m_nTraceCount; // 0x1360 + int32_t m_StuckLast; // 0x1364 + bool m_bSpeedCropped; // 0x1368 private: - [[maybe_unused]] uint8_t __pad1359[0x3]; // 0x1359 + [[maybe_unused]] uint8_t __pad1369[0x3]; // 0x1369 public: - int32_t m_nOldWaterLevel; // 0x135c - float m_flWaterEntryTime; // 0x1360 - Vector m_vecForward; // 0x1364 - Vector m_vecLeft; // 0x1370 - Vector m_vecUp; // 0x137c - Vector m_vecPreviouslyPredictedOrigin; // 0x1388 + int32_t m_nOldWaterLevel; // 0x136c + float m_flWaterEntryTime; // 0x1370 + Vector m_vecForward; // 0x1374 + Vector m_vecLeft; // 0x1380 + Vector m_vecUp; // 0x138c + Vector m_vecPreviouslyPredictedOrigin; // 0x1398 // MNetworkEnable - bool m_bOldJumpPressed; // 0x1394 + bool m_bOldJumpPressed; // 0x13a4 private: - [[maybe_unused]] uint8_t __pad1395[0x3]; // 0x1395 + [[maybe_unused]] uint8_t __pad13a5[0x3]; // 0x13a5 public: // MNetworkEnable - float m_flJumpUntil; // 0x1398 + float m_flJumpUntil; // 0x13a8 // MNetworkEnable - float m_flJumpVel; // 0x139c + float m_flJumpVel; // 0x13ac // MNetworkEnable - GameTime_t m_fStashGrenadeParameterWhen; // 0x13a0 - bool m_bUpdatePredictedOriginAfterDataUpdate; // 0x13a4 + GameTime_t m_fStashGrenadeParameterWhen; // 0x13b0 +private: + [[maybe_unused]] uint8_t __pad13b4[0x4]; // 0x13b4 +public: + // MNetworkEnable + uint64_t m_nButtonDownMaskPrev; // 0x13b8 + // MNetworkEnable + float m_flOffsetTickCompleteTime; // 0x13c0 + // MNetworkEnable + float m_flOffsetTickStashedSpeed; // 0x13c4 + bool m_bUpdatePredictedOriginAfterDataUpdate; // 0x13c8 }; // Alignment: 16 @@ -3322,8 +3253,6 @@ public: // Size: 0x70 class CDamageRecord { -private: - [[maybe_unused]] uint8_t __pad0000[0x28]; // 0x0 public: // MNetworkEnable CHandle< C_CSPlayerPawnBase > m_PlayerDamager; // 0x28 @@ -3417,8 +3346,8 @@ public: C_UtlVectorEmbeddedNetworkVar< C_EconItemView > m_vecCounterTerroristLoadoutCache; // 0xc0 }; -// Alignment: 100 -// Size: 0x18f8 +// Alignment: 108 +// Size: 0x1938 class C_CSGameRules : public C_TeamplayRules { public: @@ -3437,306 +3366,314 @@ public: // MNetworkEnable GameTime_t m_fWarmupPeriodStart; // 0x38 // MNetworkEnable - bool m_bTerroristTimeOutActive; // 0x3c + int32_t m_nTotalPausedTicks; // 0x3c // MNetworkEnable - bool m_bCTTimeOutActive; // 0x3d + int32_t m_nPauseStartTick; // 0x40 + // MNetworkEnable + bool m_bServerPaused; // 0x44 + // MNetworkEnable + bool m_bGamePaused; // 0x45 + // MNetworkEnable + bool m_bTerroristTimeOutActive; // 0x46 + // MNetworkEnable + bool m_bCTTimeOutActive; // 0x47 + // MNetworkEnable + float m_flTerroristTimeOutRemaining; // 0x48 + // MNetworkEnable + float m_flCTTimeOutRemaining; // 0x4c + // MNetworkEnable + int32_t m_nTerroristTimeOuts; // 0x50 + // MNetworkEnable + int32_t m_nCTTimeOuts; // 0x54 + // MNetworkEnable + bool m_bTechnicalTimeOut; // 0x58 + // MNetworkEnable + bool m_bMatchWaitingForResume; // 0x59 private: - [[maybe_unused]] uint8_t __pad003e[0x2]; // 0x3e + [[maybe_unused]] uint8_t __pad005a[0x2]; // 0x5a public: // MNetworkEnable - float m_flTerroristTimeOutRemaining; // 0x40 + int32_t m_iRoundTime; // 0x5c // MNetworkEnable - float m_flCTTimeOutRemaining; // 0x44 + float m_fMatchStartTime; // 0x60 // MNetworkEnable - int32_t m_nTerroristTimeOuts; // 0x48 + GameTime_t m_fRoundStartTime; // 0x64 // MNetworkEnable - int32_t m_nCTTimeOuts; // 0x4c + GameTime_t m_flRestartRoundTime; // 0x68 // MNetworkEnable - bool m_bTechnicalTimeOut; // 0x50 - // MNetworkEnable - bool m_bMatchWaitingForResume; // 0x51 + bool m_bGameRestart; // 0x6c private: - [[maybe_unused]] uint8_t __pad0052[0x2]; // 0x52 + [[maybe_unused]] uint8_t __pad006d[0x3]; // 0x6d public: // MNetworkEnable - int32_t m_iRoundTime; // 0x54 + float m_flGameStartTime; // 0x70 // MNetworkEnable - float m_fMatchStartTime; // 0x58 - // MNetworkEnable - GameTime_t m_fRoundStartTime; // 0x5c - // MNetworkEnable - GameTime_t m_flRestartRoundTime; // 0x60 - // MNetworkEnable - bool m_bGameRestart; // 0x64 -private: - [[maybe_unused]] uint8_t __pad0065[0x3]; // 0x65 -public: - // MNetworkEnable - float m_flGameStartTime; // 0x68 - // MNetworkEnable - float m_timeUntilNextPhaseStarts; // 0x6c + float m_timeUntilNextPhaseStarts; // 0x74 // MNetworkEnable // MNetworkChangeCallback "OnGamePhaseChanged" - int32_t m_gamePhase; // 0x70 + int32_t m_gamePhase; // 0x78 // MNetworkEnable - int32_t m_totalRoundsPlayed; // 0x74 + int32_t m_totalRoundsPlayed; // 0x7c // MNetworkEnable - int32_t m_nRoundsPlayedThisPhase; // 0x78 + int32_t m_nRoundsPlayedThisPhase; // 0x80 // MNetworkEnable - int32_t m_nOvertimePlaying; // 0x7c + int32_t m_nOvertimePlaying; // 0x84 // MNetworkEnable - int32_t m_iHostagesRemaining; // 0x80 + int32_t m_iHostagesRemaining; // 0x88 // MNetworkEnable - bool m_bAnyHostageReached; // 0x84 + bool m_bAnyHostageReached; // 0x8c // MNetworkEnable - bool m_bMapHasBombTarget; // 0x85 + bool m_bMapHasBombTarget; // 0x8d // MNetworkEnable - bool m_bMapHasRescueZone; // 0x86 + bool m_bMapHasRescueZone; // 0x8e // MNetworkEnable - bool m_bMapHasBuyZone; // 0x87 + bool m_bMapHasBuyZone; // 0x8f // MNetworkEnable - bool m_bIsQueuedMatchmaking; // 0x88 + bool m_bIsQueuedMatchmaking; // 0x90 private: - [[maybe_unused]] uint8_t __pad0089[0x3]; // 0x89 + [[maybe_unused]] uint8_t __pad0091[0x3]; // 0x91 public: // MNetworkEnable - int32_t m_nQueuedMatchmakingMode; // 0x8c + int32_t m_nQueuedMatchmakingMode; // 0x94 // MNetworkEnable - bool m_bIsValveDS; // 0x90 + bool m_bIsValveDS; // 0x98 // MNetworkEnable - bool m_bLogoMap; // 0x91 + bool m_bLogoMap; // 0x99 // MNetworkEnable - bool m_bPlayAllStepSoundsOnServer; // 0x92 + bool m_bPlayAllStepSoundsOnServer; // 0x9a private: - [[maybe_unused]] uint8_t __pad0093[0x1]; // 0x93 + [[maybe_unused]] uint8_t __pad009b[0x1]; // 0x9b public: // MNetworkEnable - int32_t m_iNumGunGameProgressiveWeaponsCT; // 0x94 + int32_t m_iNumGunGameProgressiveWeaponsCT; // 0x9c // MNetworkEnable - int32_t m_iNumGunGameProgressiveWeaponsT; // 0x98 + int32_t m_iNumGunGameProgressiveWeaponsT; // 0xa0 // MNetworkEnable - int32_t m_iSpectatorSlotCount; // 0x9c + int32_t m_iSpectatorSlotCount; // 0xa4 // MNetworkEnable - int32_t m_GGProgressiveWeaponOrderCT[60]; // 0xa0 + int32_t m_GGProgressiveWeaponOrderCT[60]; // 0xa8 // MNetworkEnable - int32_t m_GGProgressiveWeaponOrderT[60]; // 0x190 + int32_t m_GGProgressiveWeaponOrderT[60]; // 0x198 // MNetworkEnable - int32_t m_GGProgressiveWeaponKillUpgradeOrderCT[60]; // 0x280 + int32_t m_GGProgressiveWeaponKillUpgradeOrderCT[60]; // 0x288 // MNetworkEnable - int32_t m_GGProgressiveWeaponKillUpgradeOrderT[60]; // 0x370 + int32_t m_GGProgressiveWeaponKillUpgradeOrderT[60]; // 0x378 // MNetworkEnable - int32_t m_MatchDevice; // 0x460 + int32_t m_MatchDevice; // 0x468 // MNetworkEnable - bool m_bHasMatchStarted; // 0x464 + bool m_bHasMatchStarted; // 0x46c private: - [[maybe_unused]] uint8_t __pad0465[0x3]; // 0x465 + [[maybe_unused]] uint8_t __pad046d[0x3]; // 0x46d public: // MNetworkEnable - float m_flDMBonusStartTime; // 0x468 + float m_flDMBonusStartTime; // 0x470 // MNetworkEnable - float m_flDMBonusTimeLength; // 0x46c + float m_flDMBonusTimeLength; // 0x474 // MNetworkEnable - uint16_t m_unDMBonusWeaponLoadoutSlot; // 0x470 + uint16_t m_unDMBonusWeaponItemDefIndex; // 0x478 // MNetworkEnable - bool m_bDMBonusActive; // 0x472 + bool m_bDMBonusActive; // 0x47a private: - [[maybe_unused]] uint8_t __pad0473[0x1]; // 0x473 + [[maybe_unused]] uint8_t __pad047b[0x1]; // 0x47b public: // MNetworkEnable - int32_t m_nNextMapInMapgroup; // 0x474 + int32_t m_nNextMapInMapgroup; // 0x47c // MNetworkEnable - char m_szTournamentEventName[512]; // 0x478 + char m_szTournamentEventName[512]; // 0x480 // MNetworkEnable - char m_szTournamentEventStage[512]; // 0x678 + char m_szTournamentEventStage[512]; // 0x680 // MNetworkEnable - char m_szMatchStatTxt[512]; // 0x878 + char m_szMatchStatTxt[512]; // 0x880 // MNetworkEnable - char m_szTournamentPredictionsTxt[512]; // 0xa78 + char m_szTournamentPredictionsTxt[512]; // 0xa80 // MNetworkEnable - int32_t m_nTournamentPredictionsPct; // 0xc78 + int32_t m_nTournamentPredictionsPct; // 0xc80 // MNetworkEnable - GameTime_t m_flCMMItemDropRevealStartTime; // 0xc7c + GameTime_t m_flCMMItemDropRevealStartTime; // 0xc84 // MNetworkEnable - GameTime_t m_flCMMItemDropRevealEndTime; // 0xc80 + GameTime_t m_flCMMItemDropRevealEndTime; // 0xc88 // MNetworkEnable - bool m_bIsDroppingItems; // 0xc84 + bool m_bIsDroppingItems; // 0xc8c // MNetworkEnable - bool m_bIsQuestEligible; // 0xc85 + bool m_bIsQuestEligible; // 0xc8d private: - [[maybe_unused]] uint8_t __pad0c86[0x2]; // 0xc86 + [[maybe_unused]] uint8_t __pad0c8e[0x2]; // 0xc8e public: // MNetworkEnable - int32_t m_nGuardianModeWaveNumber; // 0xc88 + int32_t m_nGuardianModeWaveNumber; // 0xc90 // MNetworkEnable - int32_t m_nGuardianModeSpecialKillsRemaining; // 0xc8c + int32_t m_nGuardianModeSpecialKillsRemaining; // 0xc94 // MNetworkEnable - int32_t m_nGuardianModeSpecialWeaponNeeded; // 0xc90 - int32_t m_nGuardianGrenadesToGiveBots; // 0xc94 - int32_t m_nNumHeaviesToSpawn; // 0xc98 + int32_t m_nGuardianModeSpecialWeaponNeeded; // 0xc98 + int32_t m_nGuardianGrenadesToGiveBots; // 0xc9c + int32_t m_nNumHeaviesToSpawn; // 0xca0 // MNetworkEnable - uint32_t m_numGlobalGiftsGiven; // 0xc9c + uint32_t m_numGlobalGiftsGiven; // 0xca4 // MNetworkEnable - uint32_t m_numGlobalGifters; // 0xca0 + uint32_t m_numGlobalGifters; // 0xca8 // MNetworkEnable - uint32_t m_numGlobalGiftsPeriodSeconds; // 0xca4 + uint32_t m_numGlobalGiftsPeriodSeconds; // 0xcac // MNetworkEnable - uint32_t m_arrFeaturedGiftersAccounts[4]; // 0xca8 + uint32_t m_arrFeaturedGiftersAccounts[4]; // 0xcb0 // MNetworkEnable - uint32_t m_arrFeaturedGiftersGifts[4]; // 0xcb8 + uint32_t m_arrFeaturedGiftersGifts[4]; // 0xcc0 // MNetworkEnable - uint16_t m_arrProhibitedItemIndices[100]; // 0xcc8 + uint16_t m_arrProhibitedItemIndices[100]; // 0xcd0 // MNetworkEnable - uint32_t m_arrTournamentActiveCasterAccounts[4]; // 0xd90 + uint32_t m_arrTournamentActiveCasterAccounts[4]; // 0xd98 // MNetworkEnable - int32_t m_numBestOfMaps; // 0xda0 + int32_t m_numBestOfMaps; // 0xda8 // MNetworkEnable - int32_t m_nHalloweenMaskListSeed; // 0xda4 + int32_t m_nHalloweenMaskListSeed; // 0xdac // MNetworkEnable - bool m_bBombDropped; // 0xda8 + bool m_bBombDropped; // 0xdb0 // MNetworkEnable - bool m_bBombPlanted; // 0xda9 + bool m_bBombPlanted; // 0xdb1 private: - [[maybe_unused]] uint8_t __pad0daa[0x2]; // 0xdaa + [[maybe_unused]] uint8_t __pad0db2[0x2]; // 0xdb2 public: // MNetworkEnable - int32_t m_iRoundWinStatus; // 0xdac + int32_t m_iRoundWinStatus; // 0xdb4 // MNetworkEnable - int32_t m_eRoundWinReason; // 0xdb0 + int32_t m_eRoundWinReason; // 0xdb8 // MNetworkEnable - bool m_bTCantBuy; // 0xdb4 + bool m_bTCantBuy; // 0xdbc // MNetworkEnable - bool m_bCTCantBuy; // 0xdb5 + bool m_bCTCantBuy; // 0xdbd private: - [[maybe_unused]] uint8_t __pad0db6[0x2]; // 0xdb6 + [[maybe_unused]] uint8_t __pad0dbe[0x2]; // 0xdbe public: // MNetworkEnable - GameTime_t m_flGuardianBuyUntilTime; // 0xdb8 + GameTime_t m_flGuardianBuyUntilTime; // 0xdc0 // MNetworkEnable - int32_t m_iMatchStats_RoundResults[30]; // 0xdbc + int32_t m_iMatchStats_RoundResults[30]; // 0xdc4 // MNetworkEnable - int32_t m_iMatchStats_PlayersAlive_CT[30]; // 0xe34 + int32_t m_iMatchStats_PlayersAlive_CT[30]; // 0xe3c // MNetworkEnable - int32_t m_iMatchStats_PlayersAlive_T[30]; // 0xeac + int32_t m_iMatchStats_PlayersAlive_T[30]; // 0xeb4 // MNetworkEnable - float m_TeamRespawnWaveTimes[32]; // 0xf24 + float m_TeamRespawnWaveTimes[32]; // 0xf2c // MNetworkEnable - GameTime_t m_flNextRespawnWave[32]; // 0xfa4 + GameTime_t m_flNextRespawnWave[32]; // 0xfac // MNetworkEnable - int32_t m_nServerQuestID; // 0x1024 - bool m_bDontIncrementCoopWave; // 0x1028 - bool m_bSpawnedTerrorHuntHeavy; // 0x1029 + int32_t m_nServerQuestID; // 0x102c + // MNetworkEnable + Vector m_vMinimapMins; // 0x1030 + // MNetworkEnable + Vector m_vMinimapMaxs; // 0x103c + // MNetworkEnable + float m_MinimapVerticalSectionHeights[8]; // 0x1048 + bool m_bDontIncrementCoopWave; // 0x1068 + bool m_bSpawnedTerrorHuntHeavy; // 0x1069 private: - [[maybe_unused]] uint8_t __pad102a[0x2]; // 0x102a + [[maybe_unused]] uint8_t __pad106a[0x2]; // 0x106a public: // MNetworkEnable - int32_t m_nEndMatchMapGroupVoteTypes[10]; // 0x102c + int32_t m_nEndMatchMapGroupVoteTypes[10]; // 0x106c // MNetworkEnable - int32_t m_nEndMatchMapGroupVoteOptions[10]; // 0x1054 + int32_t m_nEndMatchMapGroupVoteOptions[10]; // 0x1094 // MNetworkEnable - int32_t m_nEndMatchMapVoteWinner; // 0x107c + int32_t m_nEndMatchMapVoteWinner; // 0x10bc // MNetworkEnable - int32_t m_iNumConsecutiveCTLoses; // 0x1080 + int32_t m_iNumConsecutiveCTLoses; // 0x10c0 // MNetworkEnable - int32_t m_iNumConsecutiveTerroristLoses; // 0x1084 + int32_t m_iNumConsecutiveTerroristLoses; // 0x10c4 private: - [[maybe_unused]] uint8_t __pad1088[0x18]; // 0x1088 + [[maybe_unused]] uint8_t __pad10c8[0x18]; // 0x10c8 public: - bool m_bMarkClientStopRecordAtRoundEnd; // 0x10a0 + bool m_bMarkClientStopRecordAtRoundEnd; // 0x10e0 private: - [[maybe_unused]] uint8_t __pad10a1[0x57]; // 0x10a1 -public: - bool m_bHasTriggeredRoundStartMusic; // 0x10f8 - bool m_bHasTriggeredCoopSpawnReset; // 0x10f9 - bool m_bSwitchingTeamsAtRoundReset; // 0x10fa -private: - [[maybe_unused]] uint8_t __pad10fb[0x1]; // 0x10fb -public: - int32_t m_iMaxGunGameProgressiveWeaponIndex; // 0x10fc -private: - [[maybe_unused]] uint8_t __pad1100[0x18]; // 0x1100 + [[maybe_unused]] uint8_t __pad10e1[0x57]; // 0x10e1 public: // MNetworkEnable - C_SurvivalGameRules m_SurvivalRules; // 0x1118 + bool m_bMatchAbortedDueToPlayerBan; // 0x1138 + bool m_bHasTriggeredRoundStartMusic; // 0x1139 + bool m_bHasTriggeredCoopSpawnReset; // 0x113a + bool m_bSwitchingTeamsAtRoundReset; // 0x113b + int32_t m_iMaxGunGameProgressiveWeaponIndex; // 0x113c +private: + [[maybe_unused]] uint8_t __pad1140[0x18]; // 0x1140 +public: // MNetworkEnable - C_RetakeGameRules m_RetakeRules; // 0x17d8 + C_SurvivalGameRules m_SurvivalRules; // 0x1158 + // MNetworkEnable + C_RetakeGameRules m_RetakeRules; // 0x1818 // MNetworkEnable // MNetworkChangeCallback "OnMatchEndCountChanged" - uint8_t m_nMatchEndCount; // 0x18f0 + uint8_t m_nMatchEndCount; // 0x1930 // MNetworkEnable // MNetworkChangeCallback "OnTeamIntroPeriodChanged" - bool m_bTeamIntroPeriod; // 0x18f1 + bool m_bTeamIntroPeriod; // 0x1931 }; // Alignment: 7 -// Size: 0x560 +// Size: 0x568 class C_DangerZone : public C_BaseEntity { public: // MNetworkEnable - Vector m_vecDangerZoneOriginStartedAt; // 0x538 + Vector m_vecDangerZoneOriginStartedAt; // 0x540 // MNetworkEnable - GameTime_t m_flBombLaunchTime; // 0x544 + GameTime_t m_flBombLaunchTime; // 0x54c // MNetworkEnable - float m_flExtraRadius; // 0x548 + float m_flExtraRadius; // 0x550 // MNetworkEnable - GameTime_t m_flExtraRadiusStartTime; // 0x54c + GameTime_t m_flExtraRadiusStartTime; // 0x554 // MNetworkEnable - float m_flExtraRadiusTotalLerpTime; // 0x550 + float m_flExtraRadiusTotalLerpTime; // 0x558 // MNetworkEnable - int32_t m_nDropOrder; // 0x554 + int32_t m_nDropOrder; // 0x55c // MNetworkEnable - int32_t m_iWave; // 0x558 + int32_t m_iWave; // 0x560 }; // Alignment: 9 -// Size: 0x620 +// Size: 0x628 class C_DangerZoneController : public C_BaseEntity { public: // MNetworkEnable - bool m_bDangerZoneControllerEnabled; // 0x538 + bool m_bDangerZoneControllerEnabled; // 0x540 // MNetworkEnable - bool m_bMissionControlledExplosions; // 0x539 + bool m_bMissionControlledExplosions; // 0x541 private: - [[maybe_unused]] uint8_t __pad053a[0x2]; // 0x53a + [[maybe_unused]] uint8_t __pad0542[0x2]; // 0x542 public: // MNetworkEnable - Vector m_vecEndGameCircleStart; // 0x53c + Vector m_vecEndGameCircleStart; // 0x544 // MNetworkEnable - Vector m_vecEndGameCircleEnd; // 0x548 + Vector m_vecEndGameCircleEnd; // 0x550 // MNetworkEnable - GameTime_t m_flStartTime; // 0x554 + GameTime_t m_flStartTime; // 0x55c // MNetworkEnable - float m_flFinalExpansionTime; // 0x558 + float m_flFinalExpansionTime; // 0x560 // MNetworkEnable - CHandle< C_DangerZone > m_DangerZones[42]; // 0x55c + CHandle< C_DangerZone > m_DangerZones[42]; // 0x564 // MNetworkEnable - GameTime_t m_flWaveEndTimes[5]; // 0x604 + GameTime_t m_flWaveEndTimes[5]; // 0x60c // MNetworkEnable - CHandle< C_DangerZone > m_hTheFinalZone; // 0x618 + CHandle< C_DangerZone > m_hTheFinalZone; // 0x620 }; // Alignment: 4 -// Size: 0x560 +// Size: 0x568 class C_GrassBurn : public C_BaseEntity { public: // MNetworkEnable - float m_flGrassBurnClearTime; // 0x538 - float m_bClientPendingClear; // 0x53c - float m_flGrassBurnClearTimeLocal; // 0x540 + float m_flGrassBurnClearTime; // 0x540 + float m_bClientPendingClear; // 0x544 + float m_flGrassBurnClearTimeLocal; // 0x548 private: - [[maybe_unused]] uint8_t __pad0544[0x4]; // 0x544 + [[maybe_unused]] uint8_t __pad054c[0x4]; // 0x54c public: - CUtlVector< Vector > m_vecGrassBurnPositions; // 0x548 + CUtlVector< Vector > m_vecGrassBurnPositions; // 0x550 }; // Alignment: 13 // Size: 0xb0 class C_IronSightController { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: bool m_bIronSightAvailable; // 0x10 private: @@ -3762,7 +3699,6 @@ struct CompositeMaterialMatchFilter_t { public: // MPropertyFriendlyName "Match Type" - // MPropertyAttributeChoiceEnumName CompositeMaterialMatchFilterType_t m_nCompositeMaterialMatchFilterType; // 0x0 // MPropertyFriendlyName "Name" CUtlString m_strMatchFilter; // 0x8 @@ -3773,7 +3709,7 @@ public: bool m_bPassWhenTrue; // 0x18 }; -// Alignment: 31 +// Alignment: 32 // Size: 0x258 struct CompositeMaterialInputLooseVariable_t { @@ -3793,87 +3729,89 @@ public: // MPropertyFriendlyName "Exposed Friendly Group" // MPropertyAttrStateCallback CUtlString m_strExposedFriendlyGroupName; // 0x18 + // MPropertyFriendlyName "Exposed Fixed Range" + // MPropertyAttrStateCallback + bool m_bExposedVariableIsFixedRange; // 0x20 +private: + [[maybe_unused]] uint8_t __pad0021[0x3]; // 0x21 +public: // MPropertyAutoRebuildOnChange // MPropertyFriendlyName "Type" - // MPropertyAttributeChoiceEnumName - CompositeMaterialInputLooseVariableType_t m_nVariableType; // 0x20 + CompositeMaterialInputLooseVariableType_t m_nVariableType; // 0x24 // MPropertyFriendlyName "Value" // MPropertyAttrStateCallback - bool m_bValueBoolean; // 0x24 + bool m_bValueBoolean; // 0x28 private: - [[maybe_unused]] uint8_t __pad0025[0x3]; // 0x25 + [[maybe_unused]] uint8_t __pad0029[0x3]; // 0x29 public: // MPropertyFriendlyName "X Value" // MPropertyAttrStateCallback // MPropertyAttributeRange "0 255" - int32_t m_nValueIntX; // 0x28 + int32_t m_nValueIntX; // 0x2c // MPropertyFriendlyName "Y Value" // MPropertyAttrStateCallback // MPropertyAttributeRange "0 255" - int32_t m_nValueIntY; // 0x2c + int32_t m_nValueIntY; // 0x30 // MPropertyFriendlyName "Z Value" // MPropertyAttrStateCallback // MPropertyAttributeRange "0 255" - int32_t m_nValueIntZ; // 0x30 + int32_t m_nValueIntZ; // 0x34 // MPropertyFriendlyName "W Value" // MPropertyAttrStateCallback // MPropertyAttributeRange "0 255" - int32_t m_nValueIntW; // 0x34 + int32_t m_nValueIntW; // 0x38 // MPropertyFriendlyName "Specify Min/Max" // MPropertyAttrStateCallback - bool m_bHasFloatBounds; // 0x38 + bool m_bHasFloatBounds; // 0x3c private: - [[maybe_unused]] uint8_t __pad0039[0x3]; // 0x39 + [[maybe_unused]] uint8_t __pad003d[0x3]; // 0x3d public: // MPropertyFriendlyName "X Value" // MPropertyAttrStateCallback // MPropertyAttributeRange "0.0 1.0" - float m_flValueFloatX; // 0x3c + float m_flValueFloatX; // 0x40 // MPropertyFriendlyName "X Min" // MPropertyAttrStateCallback - float m_flValueFloatX_Min; // 0x40 + float m_flValueFloatX_Min; // 0x44 // MPropertyFriendlyName "X Max" // MPropertyAttrStateCallback - float m_flValueFloatX_Max; // 0x44 + float m_flValueFloatX_Max; // 0x48 // MPropertyFriendlyName "Y Value" // MPropertyAttrStateCallback // MPropertyAttributeRange "0.0 1.0" - float m_flValueFloatY; // 0x48 + float m_flValueFloatY; // 0x4c // MPropertyFriendlyName "Y Min" // MPropertyAttrStateCallback - float m_flValueFloatY_Min; // 0x4c + float m_flValueFloatY_Min; // 0x50 // MPropertyFriendlyName "Y Max" // MPropertyAttrStateCallback - float m_flValueFloatY_Max; // 0x50 + float m_flValueFloatY_Max; // 0x54 // MPropertyFriendlyName "Z Value" // MPropertyAttrStateCallback // MPropertyAttributeRange "0.0 1.0" - float m_flValueFloatZ; // 0x54 + float m_flValueFloatZ; // 0x58 // MPropertyFriendlyName "Z Min" // MPropertyAttrStateCallback - float m_flValueFloatZ_Min; // 0x58 + float m_flValueFloatZ_Min; // 0x5c // MPropertyFriendlyName "Z Max" // MPropertyAttrStateCallback - float m_flValueFloatZ_Max; // 0x5c + float m_flValueFloatZ_Max; // 0x60 // MPropertyFriendlyName "W Value" // MPropertyAttrStateCallback // MPropertyAttributeRange "0.0 1.0" - float m_flValueFloatW; // 0x60 + float m_flValueFloatW; // 0x64 // MPropertyFriendlyName "W Min" // MPropertyAttrStateCallback - float m_flValueFloatW_Min; // 0x64 + float m_flValueFloatW_Min; // 0x68 // MPropertyFriendlyName "W Max" // MPropertyAttrStateCallback - float m_flValueFloatW_Max; // 0x68 + float m_flValueFloatW_Max; // 0x6c // MPropertyFriendlyName "Value" // MPropertyAttrStateCallback - Color m_cValueColor4; // 0x6c + Color m_cValueColor4; // 0x70 // MPropertyFriendlyName "Value" // MPropertyAttrStateCallback - CompositeMaterialVarSystemVar_t m_nValueSystemVar; // 0x70 -private: - [[maybe_unused]] uint8_t __pad0074[0x4]; // 0x74 -public: + CompositeMaterialVarSystemVar_t m_nValueSystemVar; // 0x74 // MPropertyFriendlyName "Material" // MPropertyAttributeEditor "AssetBrowse( vmat )" // MPropertyAttrStateCallback @@ -3904,7 +3842,6 @@ struct CompMatMutatorCondition_t public: // MPropertyAutoRebuildOnChange // MPropertyFriendlyName "Condition" - // MPropertyAttributeChoiceEnumName CompMatPropertyMutatorConditionType_t m_nMutatorCondition; // 0x0 // MPropertyFriendlyName "Container Name" // MPropertyAttrStateCallback @@ -3919,8 +3856,8 @@ public: bool m_bPassWhenTrue; // 0x20 }; -// Alignment: 25 -// Size: 0x340 +// Alignment: 27 +// Size: 0x350 struct CompMatPropertyMutator_t { public: @@ -3929,7 +3866,6 @@ public: bool m_bEnabled; // 0x0 // MPropertyAutoRebuildOnChange // MPropertyFriendlyName "Mutator Command" - // MPropertyAttributeChoiceEnumName // MPropertyAttrStateCallback CompMatPropertyMutatorType_t m_nMutatorCommandType; // 0x4 // MPropertyFriendlyName "Container to Init With" @@ -4003,9 +3939,18 @@ public: // MPropertyFriendlyName "Text Position" // MPropertyAttrStateCallback Vector2D m_vecDrawText_Position; // 0x320 + // MPropertyFriendlyName "Text Color" + // MPropertyAttrStateCallback + Color m_colDrawText_Color; // 0x328 +private: + [[maybe_unused]] uint8_t __pad032c[0x4]; // 0x32c +public: + // MPropertyFriendlyName "Font" + // MPropertyAttrStateCallback + CUtlString m_strDrawText_Font; // 0x330 // MPropertyFriendlyName "Conditions" // MPropertyAttrStateCallback - CUtlVector< CompMatMutatorCondition_t > m_vecConditions; // 0x328 + CUtlVector< CompMatMutatorCondition_t > m_vecConditions; // 0x338 }; // Alignment: 8 @@ -4018,7 +3963,6 @@ public: bool m_bEnabled; // 0x0 // MPropertyAutoRebuildOnChange // MPropertyFriendlyName "Input Container Source" - // MPropertyAttributeChoiceEnumName // MPropertyAttrStateCallback CompositeMaterialInputContainerSourceType_t m_nCompositeMaterialInputContainerSourceType; // 0x4 // MPropertyFriendlyName "Specific Material" @@ -4062,8 +4006,6 @@ public: // Size: 0x50 struct GeneratedTextureHandle_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MPropertyFriendlyName "Generated Texture" // MPropertyAttributeEditor "CompositeMaterialTextureViewer" @@ -4074,8 +4016,6 @@ public: // Size: 0x60 struct CompositeMaterial_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MPropertyGroupName "Target Material" // MPropertyAttributeEditor "CompositeMaterialKVInspector" @@ -4136,8 +4076,6 @@ public: // Size: 0x38 class CCompositeMaterialEditorDoc { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: int32_t m_nVersion; // 0x8 private: @@ -4151,8 +4089,6 @@ public: // Size: 0x4c0 class CGlobalLightBase { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: bool m_bSpotLight; // 0x10 private: @@ -4218,53 +4154,49 @@ public: // Size: 0xa30 class C_GlobalLight : public C_BaseEntity { -private: - [[maybe_unused]] uint8_t __pad0538[0x4c8]; // 0x538 public: uint16_t m_WindClothForceHandle; // 0xa00 - - // Static fields: static C_GlobalLight* &Get_sm_pGlobalLight(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("client.dll")->FindDeclaredClass("C_GlobalLight")->m_static_fields[0]->m_instance);}; static CUtlStringToken &Get_sm_pSkyboxSlots(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("client.dll")->FindDeclaredClass("C_GlobalLight")->m_static_fields[1]->m_instance);}; static CUtlVector< C_GlobalLight* > &Get_sm_nonPrimaryGlobalLights(){return *reinterpret_cast*>(interfaces::g_schema->FindTypeScopeForModule("client.dll")->FindDeclaredClass("C_GlobalLight")->m_static_fields[2]->m_instance);}; }; // Alignment: 10 -// Size: 0x588 +// Size: 0x590 class C_CSGO_MapPreviewCameraPathNode : public C_BaseEntity { public: - CUtlSymbolLarge m_szParentPathUniqueID; // 0x538 - int32_t m_nPathIndex; // 0x540 - Vector m_vInTangentLocal; // 0x544 - Vector m_vOutTangentLocal; // 0x550 - float m_flFOV; // 0x55c - float m_flSpeed; // 0x560 - float m_flEaseIn; // 0x564 - float m_flEaseOut; // 0x568 - Vector m_vInTangentWorld; // 0x56c - Vector m_vOutTangentWorld; // 0x578 + CUtlSymbolLarge m_szParentPathUniqueID; // 0x540 + int32_t m_nPathIndex; // 0x548 + Vector m_vInTangentLocal; // 0x54c + Vector m_vOutTangentLocal; // 0x558 + float m_flFOV; // 0x564 + float m_flSpeed; // 0x568 + float m_flEaseIn; // 0x56c + float m_flEaseOut; // 0x570 + Vector m_vInTangentWorld; // 0x574 + Vector m_vOutTangentWorld; // 0x580 }; // Alignment: 8 -// Size: 0x598 +// Size: 0x5a0 class C_CSGO_MapPreviewCameraPath : public C_BaseEntity { public: - float m_flZFar; // 0x538 - float m_flZNear; // 0x53c - bool m_bLoop; // 0x540 - bool m_bVerticalFOV; // 0x541 - bool m_bConstantSpeed; // 0x542 + float m_flZFar; // 0x540 + float m_flZNear; // 0x544 + bool m_bLoop; // 0x548 + bool m_bVerticalFOV; // 0x549 + bool m_bConstantSpeed; // 0x54a private: - [[maybe_unused]] uint8_t __pad0543[0x1]; // 0x543 + [[maybe_unused]] uint8_t __pad054b[0x1]; // 0x54b public: - float m_flDuration; // 0x544 + float m_flDuration; // 0x54c private: - [[maybe_unused]] uint8_t __pad0548[0x40]; // 0x548 + [[maybe_unused]] uint8_t __pad0550[0x40]; // 0x550 public: - float m_flPathLength; // 0x588 - float m_flPathDuration; // 0x58c + float m_flPathLength; // 0x590 + float m_flPathDuration; // 0x594 }; // Alignment: 0 @@ -4276,97 +4208,91 @@ public: }; // Alignment: 7 -// Size: 0x570 +// Size: 0x578 class C_VoteController : public C_BaseEntity { -private: - [[maybe_unused]] uint8_t __pad0538[0x10]; // 0x538 public: // MNetworkEnable // MNetworkChangeCallback "RecvProxy_VoteType" - int32_t m_iActiveIssueIndex; // 0x548 + int32_t m_iActiveIssueIndex; // 0x550 // MNetworkEnable - int32_t m_iOnlyTeamToVote; // 0x54c + int32_t m_iOnlyTeamToVote; // 0x554 // MNetworkEnable // MNetworkChangeCallback "RecvProxy_VoteOption" - int32_t m_nVoteOptionCount[5]; // 0x550 + int32_t m_nVoteOptionCount[5]; // 0x558 // MNetworkEnable - int32_t m_nPotentialVotes; // 0x564 - bool m_bVotesDirty; // 0x568 - bool m_bTypeDirty; // 0x569 + int32_t m_nPotentialVotes; // 0x56c + bool m_bVotesDirty; // 0x570 + bool m_bTypeDirty; // 0x571 // MNetworkEnable - bool m_bIsYesNoVote; // 0x56a + bool m_bIsYesNoVote; // 0x572 }; // Alignment: 17 -// Size: 0xe80 +// Size: 0xe88 class C_MapVetoPickController : public C_BaseEntity { -private: - [[maybe_unused]] uint8_t __pad0538[0x10]; // 0x538 public: // MNetworkEnable - int32_t m_nDraftType; // 0x548 + int32_t m_nDraftType; // 0x550 // MNetworkEnable - int32_t m_nTeamWinningCoinToss; // 0x54c + int32_t m_nTeamWinningCoinToss; // 0x554 // MNetworkEnable - int32_t m_nTeamWithFirstChoice[64]; // 0x550 + int32_t m_nTeamWithFirstChoice[64]; // 0x558 // MNetworkEnable - int32_t m_nVoteMapIdsList[7]; // 0x650 + int32_t m_nVoteMapIdsList[7]; // 0x658 // MNetworkEnable - int32_t m_nAccountIDs[64]; // 0x66c + int32_t m_nAccountIDs[64]; // 0x674 // MNetworkEnable - int32_t m_nMapId0[64]; // 0x76c + int32_t m_nMapId0[64]; // 0x774 // MNetworkEnable - int32_t m_nMapId1[64]; // 0x86c + int32_t m_nMapId1[64]; // 0x874 // MNetworkEnable - int32_t m_nMapId2[64]; // 0x96c + int32_t m_nMapId2[64]; // 0x974 // MNetworkEnable - int32_t m_nMapId3[64]; // 0xa6c + int32_t m_nMapId3[64]; // 0xa74 // MNetworkEnable - int32_t m_nMapId4[64]; // 0xb6c + int32_t m_nMapId4[64]; // 0xb74 // MNetworkEnable - int32_t m_nMapId5[64]; // 0xc6c + int32_t m_nMapId5[64]; // 0xc74 // MNetworkEnable - int32_t m_nStartingSide0[64]; // 0xd6c + int32_t m_nStartingSide0[64]; // 0xd74 // MNetworkEnable - int32_t m_nCurrentPhase; // 0xe6c + int32_t m_nCurrentPhase; // 0xe74 // MNetworkEnable - int32_t m_nPhaseStartTick; // 0xe70 + int32_t m_nPhaseStartTick; // 0xe78 // MNetworkEnable - int32_t m_nPhaseDurationTicks; // 0xe74 - int32_t m_nPostDataUpdateTick; // 0xe78 - bool m_bDisabledHud; // 0xe7c + int32_t m_nPhaseDurationTicks; // 0xe7c + int32_t m_nPostDataUpdateTick; // 0xe80 + bool m_bDisabledHud; // 0xe84 }; // Alignment: 0 // Size: 0x30 class CPlayerSprayDecalRenderHelper { -private: - [[maybe_unused]] uint8_t __pad0000[0x30]; // 0x0 public: - // No members available + uint8_t __pad0000[0x30]; // Autoaligned }; // Alignment: 6 -// Size: 0x5b0 +// Size: 0x5b8 class C_CSGO_TeamPreviewCamera : public C_CSGO_MapPreviewCameraPath { public: - bool m_bDofEnabled; // 0x598 + bool m_bDofEnabled; // 0x5a0 private: - [[maybe_unused]] uint8_t __pad0599[0x3]; // 0x599 + [[maybe_unused]] uint8_t __pad05a1[0x3]; // 0x5a1 public: - float m_flDofNearBlurry; // 0x59c - float m_flDofNearCrisp; // 0x5a0 - float m_flDofFarCrisp; // 0x5a4 - float m_flDofFarBlurry; // 0x5a8 - float m_flDofTiltToGround; // 0x5ac + float m_flDofNearBlurry; // 0x5a4 + float m_flDofNearCrisp; // 0x5a8 + float m_flDofFarCrisp; // 0x5ac + float m_flDofFarBlurry; // 0x5b0 + float m_flDofTiltToGround; // 0x5b4 }; // Alignment: 0 -// Size: 0x5b0 +// Size: 0x5b8 class C_CSGO_TeamSelectCamera : public C_CSGO_TeamPreviewCamera { public: @@ -4374,7 +4300,7 @@ public: }; // Alignment: 0 -// Size: 0x5b0 +// Size: 0x5b8 class C_CSGO_TerroristTeamIntroCamera : public C_CSGO_TeamPreviewCamera { public: @@ -4382,7 +4308,7 @@ public: }; // Alignment: 0 -// Size: 0x5b0 +// Size: 0x5b8 class C_CSGO_CounterTerroristTeamIntroCamera : public C_CSGO_TeamPreviewCamera { public: @@ -4390,7 +4316,7 @@ public: }; // Alignment: 0 -// Size: 0x5b0 +// Size: 0x5b8 class C_CSGO_EndOfMatchCamera : public C_CSGO_TeamPreviewCamera { public: @@ -4398,7 +4324,7 @@ public: }; // Alignment: 0 -// Size: 0x9d0 +// Size: 0x9d8 class C_CSGO_EndOfMatchCharacterPosition : public C_CSGO_TeamPreviewCharacterPosition { public: @@ -4406,7 +4332,7 @@ public: }; // Alignment: 0 -// Size: 0x538 +// Size: 0x540 class C_CSGO_EndOfMatchLineupEndpoint : public C_BaseEntity { public: @@ -4414,7 +4340,7 @@ public: }; // Alignment: 0 -// Size: 0x538 +// Size: 0x540 class C_CSGO_EndOfMatchLineupStart : public C_CSGO_EndOfMatchLineupEndpoint { public: @@ -4422,30 +4348,39 @@ public: }; // Alignment: 0 -// Size: 0x538 +// Size: 0x540 class C_CSGO_EndOfMatchLineupEnd : public C_CSGO_EndOfMatchLineupEndpoint { public: // No members available }; +// Alignment: 2 +// Size: 0x550 +class C_CsmFovOverride : public C_BaseEntity +{ +public: + CUtlString m_cameraName; // 0x540 + float m_flCsmFovOverrideValue; // 0x548 +}; + // Alignment: 3 -// Size: 0x5c8 +// Size: 0x5d0 class C_InfoMapRegion : public C_BaseEntity { public: // MNetworkEnable - float m_flRadius; // 0x538 + float m_flRadius; // 0x540 // MNetworkEnable - char m_szLocToken[128]; // 0x53c + char m_szLocToken[128]; // 0x544 private: - [[maybe_unused]] uint8_t __pad05bc[0x4]; // 0x5bc + [[maybe_unused]] uint8_t __pad05c4[0x4]; // 0x5c4 public: - C_InfoMapRegion* m_pNext; // 0x5c0 + C_InfoMapRegion* m_pNext; // 0x5c8 }; // Alignment: 0 -// Size: 0x538 +// Size: 0x540 class C_PointEntity : public C_BaseEntity { public: @@ -4453,136 +4388,132 @@ public: }; // Alignment: 25 -// Size: 0x16b8 +// Size: 0x16c0 class C_EnvCombinedLightProbeVolume : public C_BaseEntity { -private: - [[maybe_unused]] uint8_t __pad0538[0x10d0]; // 0x538 public: // MNetworkEnable // MNetworkChangeCallback "StateChanged" - Color m_Color; // 0x1608 + Color m_Color; // 0x1610 // MNetworkEnable // MNetworkChangeCallback "StateChanged" - float m_flBrightness; // 0x160c + float m_flBrightness; // 0x1614 // MNetworkEnable - CStrongHandle< InfoForResourceTypeCTextureBase > m_hCubemapTexture; // 0x1610 + CStrongHandle< InfoForResourceTypeCTextureBase > m_hCubemapTexture; // 0x1618 // MNetworkEnable - bool m_bCustomCubemapTexture; // 0x1618 + bool m_bCustomCubemapTexture; // 0x1620 private: - [[maybe_unused]] uint8_t __pad1619[0x7]; // 0x1619 + [[maybe_unused]] uint8_t __pad1621[0x7]; // 0x1621 public: // MNetworkEnable - CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeTexture; // 0x1620 + CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeTexture; // 0x1628 // MNetworkEnable - CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeDirectLightIndicesTexture; // 0x1628 + CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeDirectLightIndicesTexture; // 0x1630 // MNetworkEnable - CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeDirectLightScalarsTexture; // 0x1630 + CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeDirectLightScalarsTexture; // 0x1638 // MNetworkEnable - CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeDirectLightShadowsTexture; // 0x1638 + CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeDirectLightShadowsTexture; // 0x1640 // MNetworkEnable - Vector m_vBoxMins; // 0x1640 + Vector m_vBoxMins; // 0x1648 // MNetworkEnable - Vector m_vBoxMaxs; // 0x164c + Vector m_vBoxMaxs; // 0x1654 // MNetworkEnable - CUtlSymbolLarge m_LightGroups; // 0x1658 + CUtlSymbolLarge m_LightGroups; // 0x1660 // MNetworkEnable - bool m_bMoveable; // 0x1660 + bool m_bMoveable; // 0x1668 private: - [[maybe_unused]] uint8_t __pad1661[0x3]; // 0x1661 + [[maybe_unused]] uint8_t __pad1669[0x3]; // 0x1669 public: // MNetworkEnable - int32_t m_nHandshake; // 0x1664 + int32_t m_nHandshake; // 0x166c // MNetworkEnable - int32_t m_nEnvCubeMapArrayIndex; // 0x1668 + int32_t m_nEnvCubeMapArrayIndex; // 0x1670 // MNetworkEnable - int32_t m_nPriority; // 0x166c + int32_t m_nPriority; // 0x1674 // MNetworkEnable - bool m_bStartDisabled; // 0x1670 + bool m_bStartDisabled; // 0x1678 private: - [[maybe_unused]] uint8_t __pad1671[0x3]; // 0x1671 + [[maybe_unused]] uint8_t __pad1679[0x3]; // 0x1679 public: // MNetworkEnable - float m_flEdgeFadeDist; // 0x1674 + float m_flEdgeFadeDist; // 0x167c // MNetworkEnable - Vector m_vEdgeFadeDists; // 0x1678 + Vector m_vEdgeFadeDists; // 0x1680 // MNetworkEnable - int32_t m_nLightProbeSizeX; // 0x1684 + int32_t m_nLightProbeSizeX; // 0x168c // MNetworkEnable - int32_t m_nLightProbeSizeY; // 0x1688 + int32_t m_nLightProbeSizeY; // 0x1690 // MNetworkEnable - int32_t m_nLightProbeSizeZ; // 0x168c + int32_t m_nLightProbeSizeZ; // 0x1694 // MNetworkEnable - int32_t m_nLightProbeAtlasX; // 0x1690 + int32_t m_nLightProbeAtlasX; // 0x1698 // MNetworkEnable - int32_t m_nLightProbeAtlasY; // 0x1694 + int32_t m_nLightProbeAtlasY; // 0x169c // MNetworkEnable - int32_t m_nLightProbeAtlasZ; // 0x1698 + int32_t m_nLightProbeAtlasZ; // 0x16a0 private: - [[maybe_unused]] uint8_t __pad169c[0x15]; // 0x169c + [[maybe_unused]] uint8_t __pad16a4[0x15]; // 0x16a4 public: // MNetworkEnable - bool m_bEnabled; // 0x16b1 + bool m_bEnabled; // 0x16b9 }; // Alignment: 19 -// Size: 0x698 +// Size: 0x6a0 class C_EnvCubemap : public C_BaseEntity { -private: - [[maybe_unused]] uint8_t __pad0538[0xf0]; // 0x538 public: // MNetworkEnable - CStrongHandle< InfoForResourceTypeCTextureBase > m_hCubemapTexture; // 0x628 + CStrongHandle< InfoForResourceTypeCTextureBase > m_hCubemapTexture; // 0x630 // MNetworkEnable - bool m_bCustomCubemapTexture; // 0x630 + bool m_bCustomCubemapTexture; // 0x638 private: - [[maybe_unused]] uint8_t __pad0631[0x3]; // 0x631 + [[maybe_unused]] uint8_t __pad0639[0x3]; // 0x639 public: // MNetworkEnable - float m_flInfluenceRadius; // 0x634 + float m_flInfluenceRadius; // 0x63c // MNetworkEnable - Vector m_vBoxProjectMins; // 0x638 + Vector m_vBoxProjectMins; // 0x640 // MNetworkEnable - Vector m_vBoxProjectMaxs; // 0x644 + Vector m_vBoxProjectMaxs; // 0x64c // MNetworkEnable - CUtlSymbolLarge m_LightGroups; // 0x650 + CUtlSymbolLarge m_LightGroups; // 0x658 // MNetworkEnable - bool m_bMoveable; // 0x658 + bool m_bMoveable; // 0x660 private: - [[maybe_unused]] uint8_t __pad0659[0x3]; // 0x659 + [[maybe_unused]] uint8_t __pad0661[0x3]; // 0x661 public: // MNetworkEnable - int32_t m_nHandshake; // 0x65c + int32_t m_nHandshake; // 0x664 // MNetworkEnable - int32_t m_nEnvCubeMapArrayIndex; // 0x660 + int32_t m_nEnvCubeMapArrayIndex; // 0x668 // MNetworkEnable - int32_t m_nPriority; // 0x664 + int32_t m_nPriority; // 0x66c // MNetworkEnable - float m_flEdgeFadeDist; // 0x668 + float m_flEdgeFadeDist; // 0x670 // MNetworkEnable - Vector m_vEdgeFadeDists; // 0x66c + Vector m_vEdgeFadeDists; // 0x674 // MNetworkEnable - float m_flDiffuseScale; // 0x678 + float m_flDiffuseScale; // 0x680 // MNetworkEnable - bool m_bStartDisabled; // 0x67c + bool m_bStartDisabled; // 0x684 // MNetworkEnable - bool m_bDefaultEnvMap; // 0x67d + bool m_bDefaultEnvMap; // 0x685 // MNetworkEnable - bool m_bDefaultSpecEnvMap; // 0x67e + bool m_bDefaultSpecEnvMap; // 0x686 // MNetworkEnable - bool m_bIndoorCubeMap; // 0x67f + bool m_bIndoorCubeMap; // 0x687 // MNetworkEnable - bool m_bCopyDiffuseFromDefaultCubemap; // 0x680 + bool m_bCopyDiffuseFromDefaultCubemap; // 0x688 private: - [[maybe_unused]] uint8_t __pad0681[0xf]; // 0x681 + [[maybe_unused]] uint8_t __pad0689[0xf]; // 0x689 public: // MNetworkEnable - bool m_bEnabled; // 0x690 + bool m_bEnabled; // 0x698 }; // Alignment: 0 -// Size: 0x698 +// Size: 0x6a0 class C_EnvCubemapBox : public C_EnvCubemap { public: @@ -4590,297 +4521,293 @@ public: }; // Alignment: 18 -// Size: 0x588 +// Size: 0x590 class C_EnvCubemapFog : public C_BaseEntity { public: // MNetworkEnable - float m_flEndDistance; // 0x538 + float m_flEndDistance; // 0x540 // MNetworkEnable - float m_flStartDistance; // 0x53c + float m_flStartDistance; // 0x544 // MNetworkEnable - float m_flFogFalloffExponent; // 0x540 + float m_flFogFalloffExponent; // 0x548 // MNetworkEnable - bool m_bHeightFogEnabled; // 0x544 + bool m_bHeightFogEnabled; // 0x54c private: - [[maybe_unused]] uint8_t __pad0545[0x3]; // 0x545 + [[maybe_unused]] uint8_t __pad054d[0x3]; // 0x54d public: // MNetworkEnable - float m_flFogHeightWidth; // 0x548 + float m_flFogHeightWidth; // 0x550 // MNetworkEnable - float m_flFogHeightEnd; // 0x54c + float m_flFogHeightEnd; // 0x554 // MNetworkEnable - float m_flFogHeightStart; // 0x550 + float m_flFogHeightStart; // 0x558 // MNetworkEnable - float m_flFogHeightExponent; // 0x554 + float m_flFogHeightExponent; // 0x55c // MNetworkEnable - float m_flLODBias; // 0x558 + float m_flLODBias; // 0x560 // MNetworkEnable - bool m_bActive; // 0x55c + bool m_bActive; // 0x564 // MNetworkEnable - bool m_bStartDisabled; // 0x55d + bool m_bStartDisabled; // 0x565 private: - [[maybe_unused]] uint8_t __pad055e[0x2]; // 0x55e + [[maybe_unused]] uint8_t __pad0566[0x2]; // 0x566 public: // MNetworkEnable - float m_flFogMaxOpacity; // 0x560 + float m_flFogMaxOpacity; // 0x568 // MNetworkEnable - int32_t m_nCubemapSourceType; // 0x564 + int32_t m_nCubemapSourceType; // 0x56c // MNetworkEnable - CStrongHandle< InfoForResourceTypeIMaterial2 > m_hSkyMaterial; // 0x568 + CStrongHandle< InfoForResourceTypeIMaterial2 > m_hSkyMaterial; // 0x570 // MNetworkEnable - CUtlSymbolLarge m_iszSkyEntity; // 0x570 + CUtlSymbolLarge m_iszSkyEntity; // 0x578 // MNetworkEnable - CStrongHandle< InfoForResourceTypeCTextureBase > m_hFogCubemapTexture; // 0x578 + CStrongHandle< InfoForResourceTypeCTextureBase > m_hFogCubemapTexture; // 0x580 // MNetworkEnable - bool m_bHasHeightFogEnd; // 0x580 - bool m_bFirstTime; // 0x581 + bool m_bHasHeightFogEnd; // 0x588 + bool m_bFirstTime; // 0x589 }; // Alignment: 16 -// Size: 0x5d0 +// Size: 0x5d8 class C_GradientFog : public C_BaseEntity { public: // MNetworkEnable - CStrongHandle< InfoForResourceTypeCTextureBase > m_hGradientFogTexture; // 0x538 + CStrongHandle< InfoForResourceTypeCTextureBase > m_hGradientFogTexture; // 0x540 // MNetworkEnable // MNetworkChangeCallback "FogStateChanged" - float m_flFogStartDistance; // 0x540 + float m_flFogStartDistance; // 0x548 // MNetworkEnable // MNetworkChangeCallback "FogStateChanged" - float m_flFogEndDistance; // 0x544 + float m_flFogEndDistance; // 0x54c // MNetworkEnable // MNetworkChangeCallback "FogStateChanged" - bool m_bHeightFogEnabled; // 0x548 + bool m_bHeightFogEnabled; // 0x550 private: - [[maybe_unused]] uint8_t __pad0549[0x3]; // 0x549 + [[maybe_unused]] uint8_t __pad0551[0x3]; // 0x551 public: // MNetworkEnable // MNetworkChangeCallback "FogStateChanged" - float m_flFogStartHeight; // 0x54c + float m_flFogStartHeight; // 0x554 // MNetworkEnable // MNetworkChangeCallback "FogStateChanged" - float m_flFogEndHeight; // 0x550 + float m_flFogEndHeight; // 0x558 // MNetworkEnable // MNetworkChangeCallback "FogStateChanged" - float m_flFarZ; // 0x554 + float m_flFarZ; // 0x55c // MNetworkEnable // MNetworkChangeCallback "FogStateChanged" - float m_flFogMaxOpacity; // 0x558 + float m_flFogMaxOpacity; // 0x560 // MNetworkEnable // MNetworkChangeCallback "FogStateChanged" - float m_flFogFalloffExponent; // 0x55c + float m_flFogFalloffExponent; // 0x564 // MNetworkEnable // MNetworkChangeCallback "FogStateChanged" - float m_flFogVerticalExponent; // 0x560 + float m_flFogVerticalExponent; // 0x568 // MNetworkEnable // MNetworkChangeCallback "FogStateChanged" - Color m_fogColor; // 0x564 + Color m_fogColor; // 0x56c // MNetworkEnable // MNetworkChangeCallback "FogStateChanged" - float m_flFogStrength; // 0x568 + float m_flFogStrength; // 0x570 // MNetworkEnable // MNetworkChangeCallback "FogStateChanged" - float m_flFadeTime; // 0x56c + float m_flFadeTime; // 0x574 // MNetworkEnable - bool m_bStartDisabled; // 0x570 + bool m_bStartDisabled; // 0x578 // MNetworkEnable - bool m_bIsEnabled; // 0x571 - bool m_bGradientFogNeedsTextures; // 0x572 - - // Static fields: + bool m_bIsEnabled; // 0x579 + bool m_bGradientFogNeedsTextures; // 0x57a static C_GradientFog* &Get_sm_pGradientFog(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("client.dll")->FindDeclaredClass("C_GradientFog")->m_static_fields[0]->m_instance);}; }; // Alignment: 18 -// Size: 0x1590 +// Size: 0x1598 class C_EnvLightProbeVolume : public C_BaseEntity { -private: - [[maybe_unused]] uint8_t __pad0538[0xfe0]; // 0x538 public: // MNetworkEnable - CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeTexture; // 0x1518 + CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeTexture; // 0x1520 // MNetworkEnable - CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeDirectLightIndicesTexture; // 0x1520 + CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeDirectLightIndicesTexture; // 0x1528 // MNetworkEnable - CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeDirectLightScalarsTexture; // 0x1528 + CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeDirectLightScalarsTexture; // 0x1530 // MNetworkEnable - CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeDirectLightShadowsTexture; // 0x1530 + CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeDirectLightShadowsTexture; // 0x1538 // MNetworkEnable - Vector m_vBoxMins; // 0x1538 + Vector m_vBoxMins; // 0x1540 // MNetworkEnable - Vector m_vBoxMaxs; // 0x1544 + Vector m_vBoxMaxs; // 0x154c // MNetworkEnable - CUtlSymbolLarge m_LightGroups; // 0x1550 + CUtlSymbolLarge m_LightGroups; // 0x1558 // MNetworkEnable - bool m_bMoveable; // 0x1558 + bool m_bMoveable; // 0x1560 private: - [[maybe_unused]] uint8_t __pad1559[0x3]; // 0x1559 + [[maybe_unused]] uint8_t __pad1561[0x3]; // 0x1561 public: // MNetworkEnable - int32_t m_nHandshake; // 0x155c + int32_t m_nHandshake; // 0x1564 // MNetworkEnable - int32_t m_nPriority; // 0x1560 + int32_t m_nPriority; // 0x1568 // MNetworkEnable - bool m_bStartDisabled; // 0x1564 + bool m_bStartDisabled; // 0x156c private: - [[maybe_unused]] uint8_t __pad1565[0x3]; // 0x1565 + [[maybe_unused]] uint8_t __pad156d[0x3]; // 0x156d public: // MNetworkEnable - int32_t m_nLightProbeSizeX; // 0x1568 + int32_t m_nLightProbeSizeX; // 0x1570 // MNetworkEnable - int32_t m_nLightProbeSizeY; // 0x156c + int32_t m_nLightProbeSizeY; // 0x1574 // MNetworkEnable - int32_t m_nLightProbeSizeZ; // 0x1570 + int32_t m_nLightProbeSizeZ; // 0x1578 // MNetworkEnable - int32_t m_nLightProbeAtlasX; // 0x1574 + int32_t m_nLightProbeAtlasX; // 0x157c // MNetworkEnable - int32_t m_nLightProbeAtlasY; // 0x1578 + int32_t m_nLightProbeAtlasY; // 0x1580 // MNetworkEnable - int32_t m_nLightProbeAtlasZ; // 0x157c + int32_t m_nLightProbeAtlasZ; // 0x1584 private: - [[maybe_unused]] uint8_t __pad1580[0x9]; // 0x1580 + [[maybe_unused]] uint8_t __pad1588[0x9]; // 0x1588 public: // MNetworkEnable - bool m_bEnabled; // 0x1589 + bool m_bEnabled; // 0x1591 }; // Alignment: 8 -// Size: 0x560 +// Size: 0x568 class C_TonemapController2 : public C_BaseEntity { public: // MNetworkEnable - float m_flAutoExposureMin; // 0x538 + float m_flAutoExposureMin; // 0x540 // MNetworkEnable - float m_flAutoExposureMax; // 0x53c + float m_flAutoExposureMax; // 0x544 // MNetworkEnable - float m_flTonemapPercentTarget; // 0x540 + float m_flTonemapPercentTarget; // 0x548 // MNetworkEnable - float m_flTonemapPercentBrightPixels; // 0x544 + float m_flTonemapPercentBrightPixels; // 0x54c // MNetworkEnable - float m_flTonemapMinAvgLum; // 0x548 + float m_flTonemapMinAvgLum; // 0x550 // MNetworkEnable - float m_flExposureAdaptationSpeedUp; // 0x54c + float m_flExposureAdaptationSpeedUp; // 0x554 // MNetworkEnable - float m_flExposureAdaptationSpeedDown; // 0x550 + float m_flExposureAdaptationSpeedDown; // 0x558 // MNetworkEnable - float m_flTonemapEVSmoothingRange; // 0x554 + float m_flTonemapEVSmoothingRange; // 0x55c }; // Alignment: 28 -// Size: 0x5b8 +// Size: 0x5c0 class C_EnvVolumetricFogController : public C_BaseEntity { public: // MNetworkEnable - float m_flScattering; // 0x538 + float m_flScattering; // 0x540 // MNetworkEnable - float m_flAnisotropy; // 0x53c + float m_flAnisotropy; // 0x544 // MNetworkEnable - float m_flFadeSpeed; // 0x540 + float m_flFadeSpeed; // 0x548 // MNetworkEnable - float m_flDrawDistance; // 0x544 + float m_flDrawDistance; // 0x54c // MNetworkEnable - float m_flFadeInStart; // 0x548 + float m_flFadeInStart; // 0x550 // MNetworkEnable - float m_flFadeInEnd; // 0x54c + float m_flFadeInEnd; // 0x554 // MNetworkEnable - float m_flIndirectStrength; // 0x550 + float m_flIndirectStrength; // 0x558 // MNetworkEnable - int32_t m_nIndirectTextureDimX; // 0x554 + int32_t m_nIndirectTextureDimX; // 0x55c // MNetworkEnable - int32_t m_nIndirectTextureDimY; // 0x558 + int32_t m_nIndirectTextureDimY; // 0x560 // MNetworkEnable - int32_t m_nIndirectTextureDimZ; // 0x55c + int32_t m_nIndirectTextureDimZ; // 0x564 // MNetworkEnable - Vector m_vBoxMins; // 0x560 + Vector m_vBoxMins; // 0x568 // MNetworkEnable - Vector m_vBoxMaxs; // 0x56c + Vector m_vBoxMaxs; // 0x574 // MNetworkEnable - bool m_bActive; // 0x578 + bool m_bActive; // 0x580 private: - [[maybe_unused]] uint8_t __pad0579[0x3]; // 0x579 + [[maybe_unused]] uint8_t __pad0581[0x3]; // 0x581 public: // MNetworkEnable - GameTime_t m_flStartAnisoTime; // 0x57c + GameTime_t m_flStartAnisoTime; // 0x584 // MNetworkEnable - GameTime_t m_flStartScatterTime; // 0x580 + GameTime_t m_flStartScatterTime; // 0x588 // MNetworkEnable - GameTime_t m_flStartDrawDistanceTime; // 0x584 + GameTime_t m_flStartDrawDistanceTime; // 0x58c // MNetworkEnable - float m_flStartAnisotropy; // 0x588 + float m_flStartAnisotropy; // 0x590 // MNetworkEnable - float m_flStartScattering; // 0x58c + float m_flStartScattering; // 0x594 // MNetworkEnable - float m_flStartDrawDistance; // 0x590 + float m_flStartDrawDistance; // 0x598 // MNetworkEnable - float m_flDefaultAnisotropy; // 0x594 + float m_flDefaultAnisotropy; // 0x59c // MNetworkEnable - float m_flDefaultScattering; // 0x598 + float m_flDefaultScattering; // 0x5a0 // MNetworkEnable - float m_flDefaultDrawDistance; // 0x59c + float m_flDefaultDrawDistance; // 0x5a4 // MNetworkEnable - bool m_bStartDisabled; // 0x5a0 + bool m_bStartDisabled; // 0x5a8 // MNetworkEnable - bool m_bEnableIndirect; // 0x5a1 + bool m_bEnableIndirect; // 0x5a9 // MNetworkEnable - bool m_bIsMaster; // 0x5a2 + bool m_bIsMaster; // 0x5aa private: - [[maybe_unused]] uint8_t __pad05a3[0x5]; // 0x5a3 + [[maybe_unused]] uint8_t __pad05ab[0x5]; // 0x5ab public: // MNetworkEnable - CStrongHandle< InfoForResourceTypeCTextureBase > m_hFogIndirectTexture; // 0x5a8 + CStrongHandle< InfoForResourceTypeCTextureBase > m_hFogIndirectTexture; // 0x5b0 // MNetworkEnable - int32_t m_nForceRefreshCount; // 0x5b0 - bool m_bFirstTime; // 0x5b4 + int32_t m_nForceRefreshCount; // 0x5b8 + bool m_bFirstTime; // 0x5bc }; // Alignment: 7 -// Size: 0x568 +// Size: 0x570 class C_EnvVolumetricFogVolume : public C_BaseEntity { public: // MNetworkEnable - bool m_bActive; // 0x538 + bool m_bActive; // 0x540 private: - [[maybe_unused]] uint8_t __pad0539[0x3]; // 0x539 + [[maybe_unused]] uint8_t __pad0541[0x3]; // 0x541 public: // MNetworkEnable - Vector m_vBoxMins; // 0x53c + Vector m_vBoxMins; // 0x544 // MNetworkEnable - Vector m_vBoxMaxs; // 0x548 + Vector m_vBoxMaxs; // 0x550 // MNetworkEnable - bool m_bStartDisabled; // 0x554 + bool m_bStartDisabled; // 0x55c private: - [[maybe_unused]] uint8_t __pad0555[0x3]; // 0x555 + [[maybe_unused]] uint8_t __pad055d[0x3]; // 0x55d public: // MNetworkEnable - float m_flStrength; // 0x558 + float m_flStrength; // 0x560 // MNetworkEnable - int32_t m_nFalloffShape; // 0x55c + int32_t m_nFalloffShape; // 0x564 // MNetworkEnable - float m_flFalloffExponent; // 0x560 + float m_flFalloffExponent; // 0x568 }; // Alignment: 3 -// Size: 0x5a8 +// Size: 0x5b0 class C_FogController : public C_BaseEntity { public: // MNetworkEnable - fogparams_t m_fog; // 0x538 - bool m_bUseAngles; // 0x5a0 + fogparams_t m_fog; // 0x540 + bool m_bUseAngles; // 0x5a8 private: - [[maybe_unused]] uint8_t __pad05a1[0x3]; // 0x5a1 + [[maybe_unused]] uint8_t __pad05a9[0x3]; // 0x5a9 public: - int32_t m_iChangedVariables; // 0x5a4 + int32_t m_iChangedVariables; // 0x5ac }; // Alignment: 0 -// Size: 0x538 +// Size: 0x540 class CInfoTarget : public C_PointEntity { public: @@ -4888,7 +4815,7 @@ public: }; // Alignment: 0 -// Size: 0x538 +// Size: 0x540 class CInfoParticleTarget : public C_PointEntity { public: @@ -4896,245 +4823,241 @@ public: }; // Alignment: 3 -// Size: 0x550 +// Size: 0x558 class C_InfoVisibilityBox : public C_BaseEntity { -private: - [[maybe_unused]] uint8_t __pad0538[0x4]; // 0x538 public: // MNetworkEnable - int32_t m_nMode; // 0x53c + int32_t m_nMode; // 0x544 // MNetworkEnable - Vector m_vBoxSize; // 0x540 + Vector m_vBoxSize; // 0x548 // MNetworkEnable - bool m_bEnabled; // 0x54c + bool m_bEnabled; // 0x554 }; // Alignment: 8 -// Size: 0x580 +// Size: 0x588 class CInfoWorldLayer : public C_BaseEntity { public: - CEntityIOOutput m_pOutputOnEntitiesSpawned; // 0x538 + CEntityIOOutput m_pOutputOnEntitiesSpawned; // 0x540 // MNetworkEnable - CUtlSymbolLarge m_worldName; // 0x560 + CUtlSymbolLarge m_worldName; // 0x568 // MNetworkEnable - CUtlSymbolLarge m_layerName; // 0x568 + CUtlSymbolLarge m_layerName; // 0x570 // MNetworkEnable - bool m_bWorldLayerVisible; // 0x570 + bool m_bWorldLayerVisible; // 0x578 // MNetworkEnable - bool m_bEntitiesSpawned; // 0x571 - bool m_bCreateAsChildSpawnGroup; // 0x572 + bool m_bEntitiesSpawned; // 0x579 + bool m_bCreateAsChildSpawnGroup; // 0x57a private: - [[maybe_unused]] uint8_t __pad0573[0x1]; // 0x573 + [[maybe_unused]] uint8_t __pad057b[0x1]; // 0x57b public: - uint32_t m_hLayerSpawnGroup; // 0x574 - bool m_bWorldLayerActuallyVisible; // 0x578 + uint32_t m_hLayerSpawnGroup; // 0x57c + bool m_bWorldLayerActuallyVisible; // 0x580 }; // Alignment: 24 -// Size: 0x598 +// Size: 0x5a0 class C_PointCamera : public C_BaseEntity { public: // MNetworkEnable - float m_FOV; // 0x538 + float m_FOV; // 0x540 // MNetworkEnable - float m_Resolution; // 0x53c + float m_Resolution; // 0x544 // MNetworkEnable - bool m_bFogEnable; // 0x540 + bool m_bFogEnable; // 0x548 // MNetworkEnable - Color m_FogColor; // 0x541 + Color m_FogColor; // 0x549 private: - [[maybe_unused]] uint8_t __pad0545[0x3]; // 0x545 + [[maybe_unused]] uint8_t __pad054d[0x3]; // 0x54d public: // MNetworkEnable - float m_flFogStart; // 0x548 + float m_flFogStart; // 0x550 // MNetworkEnable - float m_flFogEnd; // 0x54c + float m_flFogEnd; // 0x554 // MNetworkEnable - float m_flFogMaxDensity; // 0x550 + float m_flFogMaxDensity; // 0x558 // MNetworkEnable - bool m_bActive; // 0x554 + bool m_bActive; // 0x55c // MNetworkEnable - bool m_bUseScreenAspectRatio; // 0x555 + bool m_bUseScreenAspectRatio; // 0x55d private: - [[maybe_unused]] uint8_t __pad0556[0x2]; // 0x556 + [[maybe_unused]] uint8_t __pad055e[0x2]; // 0x55e public: // MNetworkEnable - float m_flAspectRatio; // 0x558 + float m_flAspectRatio; // 0x560 // MNetworkEnable - bool m_bNoSky; // 0x55c + bool m_bNoSky; // 0x564 private: - [[maybe_unused]] uint8_t __pad055d[0x3]; // 0x55d + [[maybe_unused]] uint8_t __pad0565[0x3]; // 0x565 public: // MNetworkEnable - float m_fBrightness; // 0x560 + float m_fBrightness; // 0x568 // MNetworkEnable - float m_flZFar; // 0x564 + float m_flZFar; // 0x56c // MNetworkEnable - float m_flZNear; // 0x568 + float m_flZNear; // 0x570 // MNetworkEnable - bool m_bDofEnabled; // 0x56c + bool m_bDofEnabled; // 0x574 private: - [[maybe_unused]] uint8_t __pad056d[0x3]; // 0x56d + [[maybe_unused]] uint8_t __pad0575[0x3]; // 0x575 public: // MNetworkEnable - float m_flDofNearBlurry; // 0x570 + float m_flDofNearBlurry; // 0x578 // MNetworkEnable - float m_flDofNearCrisp; // 0x574 + float m_flDofNearCrisp; // 0x57c // MNetworkEnable - float m_flDofFarCrisp; // 0x578 + float m_flDofFarCrisp; // 0x580 // MNetworkEnable - float m_flDofFarBlurry; // 0x57c + float m_flDofFarBlurry; // 0x584 // MNetworkEnable - float m_flDofTiltToGround; // 0x580 - float m_TargetFOV; // 0x584 - float m_DegreesPerSecond; // 0x588 - bool m_bIsOn; // 0x58c + float m_flDofTiltToGround; // 0x588 + float m_TargetFOV; // 0x58c + float m_DegreesPerSecond; // 0x590 + bool m_bIsOn; // 0x594 private: - [[maybe_unused]] uint8_t __pad058d[0x3]; // 0x58d + [[maybe_unused]] uint8_t __pad0595[0x3]; // 0x595 public: - C_PointCamera* m_pNext; // 0x590 + C_PointCamera* m_pNext; // 0x598 }; // Alignment: 1 -// Size: 0x5a0 +// Size: 0x5a8 class C_PointCameraVFOV : public C_PointCamera { public: - float m_flVerticalFOV; // 0x598 + float m_flVerticalFOV; // 0x5a0 }; // Alignment: 12 -// Size: 0x5c8 +// Size: 0x5d0 class CPointTemplate : public CLogicalEntity { public: - CUtlSymbolLarge m_iszWorldName; // 0x538 - CUtlSymbolLarge m_iszSource2EntityLumpName; // 0x540 - CUtlSymbolLarge m_iszEntityFilterName; // 0x548 - float m_flTimeoutInterval; // 0x550 - bool m_bAsynchronouslySpawnEntities; // 0x554 + CUtlSymbolLarge m_iszWorldName; // 0x540 + CUtlSymbolLarge m_iszSource2EntityLumpName; // 0x548 + CUtlSymbolLarge m_iszEntityFilterName; // 0x550 + float m_flTimeoutInterval; // 0x558 + bool m_bAsynchronouslySpawnEntities; // 0x55c private: - [[maybe_unused]] uint8_t __pad0555[0x3]; // 0x555 + [[maybe_unused]] uint8_t __pad055d[0x3]; // 0x55d public: - CEntityIOOutput m_pOutputOnSpawned; // 0x558 - PointTemplateClientOnlyEntityBehavior_t m_clientOnlyEntityBehavior; // 0x580 - PointTemplateOwnerSpawnGroupType_t m_ownerSpawnGroupType; // 0x584 - CUtlVector< uint32 > m_createdSpawnGroupHandles; // 0x588 - CUtlVector< CEntityHandle > m_SpawnedEntityHandles; // 0x5a0 - HSCRIPT m_ScriptSpawnCallback; // 0x5b8 - HSCRIPT m_ScriptCallbackScope; // 0x5c0 + CEntityIOOutput m_pOutputOnSpawned; // 0x560 + PointTemplateClientOnlyEntityBehavior_t m_clientOnlyEntityBehavior; // 0x588 + PointTemplateOwnerSpawnGroupType_t m_ownerSpawnGroupType; // 0x58c + CUtlVector< uint32 > m_createdSpawnGroupHandles; // 0x590 + CUtlVector< CEntityHandle > m_SpawnedEntityHandles; // 0x5a8 + HSCRIPT m_ScriptSpawnCallback; // 0x5c0 + HSCRIPT m_ScriptCallbackScope; // 0x5c8 }; // Alignment: 4 -// Size: 0x560 +// Size: 0x568 class C_SoundAreaEntityBase : public C_BaseEntity { public: // MNetworkEnable - bool m_bDisabled; // 0x538 -private: - [[maybe_unused]] uint8_t __pad0539[0x7]; // 0x539 -public: - bool m_bWasEnabled; // 0x540 + bool m_bDisabled; // 0x540 private: [[maybe_unused]] uint8_t __pad0541[0x7]; // 0x541 +public: + bool m_bWasEnabled; // 0x548 +private: + [[maybe_unused]] uint8_t __pad0549[0x7]; // 0x549 public: // MNetworkEnable - CUtlSymbolLarge m_iszSoundAreaType; // 0x548 + CUtlSymbolLarge m_iszSoundAreaType; // 0x550 // MNetworkEnable - Vector m_vPos; // 0x550 + Vector m_vPos; // 0x558 }; // Alignment: 1 -// Size: 0x568 +// Size: 0x570 class C_SoundAreaEntitySphere : public C_SoundAreaEntityBase { public: // MNetworkEnable - float m_flRadius; // 0x560 + float m_flRadius; // 0x568 }; // Alignment: 2 -// Size: 0x578 +// Size: 0x580 class C_SoundAreaEntityOrientedBox : public C_SoundAreaEntityBase { public: // MNetworkEnable - Vector m_vMin; // 0x560 + Vector m_vMin; // 0x568 // MNetworkEnable - Vector m_vMax; // 0x56c + Vector m_vMax; // 0x574 }; // Alignment: 4 -// Size: 0x5f0 +// Size: 0x5f8 class C_Team : public C_BaseEntity { public: // MNetworkEnable // MNetworkAlias "m_aPlayers" - C_NetworkUtlVectorBase< CHandle< CBasePlayerController > > m_aPlayerControllers; // 0x538 + C_NetworkUtlVectorBase< CHandle< CBasePlayerController > > m_aPlayerControllers; // 0x540 // MNetworkEnable // MNetworkAlias "m_aPawns" - C_NetworkUtlVectorBase< CHandle< C_BasePlayerPawn > > m_aPlayers; // 0x550 + C_NetworkUtlVectorBase< CHandle< C_BasePlayerPawn > > m_aPlayers; // 0x558 // MNetworkEnable - int32_t m_iScore; // 0x568 + int32_t m_iScore; // 0x570 // MNetworkEnable - char m_szTeamname[129]; // 0x56c + char m_szTeamname[129]; // 0x574 }; // Alignment: 15 -// Size: 0x6a0 +// Size: 0x6c0 class CBasePlayerController : public C_BaseEntity { -private: - [[maybe_unused]] uint8_t __pad0538[0x8]; // 0x538 public: - int32_t m_nFinalPredictedTick; // 0x540 + int32_t m_nFinalPredictedTick; // 0x548 private: - [[maybe_unused]] uint8_t __pad0544[0x4]; // 0x544 + [[maybe_unused]] uint8_t __pad054c[0x4]; // 0x54c public: - C_CommandContext m_CommandContext; // 0x548 - uint64_t m_nInButtonsWhichAreToggles; // 0x5c8 + C_CommandContext m_CommandContext; // 0x550 + uint64_t m_nInButtonsWhichAreToggles; // 0x5d0 // MNetworkEnable // MNetworkPriority "1" // MNetworkUserGroup "LocalPlayerExclusive" - uint32_t m_nTickBase; // 0x5d0 + uint32_t m_nTickBase; // 0x5d8 // MNetworkEnable // MNetworkChangeCallback "OnPawnChanged" - CHandle< C_BasePlayerPawn > m_hPawn; // 0x5d4 - CHandle< C_BasePlayerPawn > m_hPredictedPawn; // 0x5d8 - CSplitScreenSlot m_nSplitScreenSlot; // 0x5dc - CHandle< CBasePlayerController > m_hSplitOwner; // 0x5e0 + CHandle< C_BasePlayerPawn > m_hPawn; // 0x5dc + CHandle< C_BasePlayerPawn > m_hPredictedPawn; // 0x5e0 + CSplitScreenSlot m_nSplitScreenSlot; // 0x5e4 + CHandle< CBasePlayerController > m_hSplitOwner; // 0x5e8 private: - [[maybe_unused]] uint8_t __pad05e4[0x4]; // 0x5e4 + [[maybe_unused]] uint8_t __pad05ec[0x4]; // 0x5ec public: - CUtlVector< CHandle< CBasePlayerController > > m_hSplitScreenPlayers; // 0x5e8 - bool m_bIsHLTV; // 0x600 + CUtlVector< CHandle< CBasePlayerController > > m_hSplitScreenPlayers; // 0x5f0 + bool m_bIsHLTV; // 0x608 private: - [[maybe_unused]] uint8_t __pad0601[0x3]; // 0x601 + [[maybe_unused]] uint8_t __pad0609[0x3]; // 0x609 public: // MNetworkEnable // MNetworkChangeCallback "OnConnectionStateChanged" - PlayerConnectedState m_iConnected; // 0x604 + PlayerConnectedState m_iConnected; // 0x60c // MNetworkEnable // MNetworkChangeCallback "OnPlayerControllerNameChanged" - char m_iszPlayerName[128]; // 0x608 + char m_iszPlayerName[128]; // 0x610 private: - [[maybe_unused]] uint8_t __pad0688[0x8]; // 0x688 + [[maybe_unused]] uint8_t __pad0690[0x8]; // 0x690 public: // MNetworkEnable // MNetworkEncoder // MNetworkChangeCallback "OnSteamIDChanged" - uint64_t m_steamID; // 0x690 - bool m_bIsLocalPlayerController; // 0x698 + uint64_t m_steamID; // 0x698 + bool m_bIsLocalPlayerController; // 0x6a0 private: - [[maybe_unused]] uint8_t __pad0699[0x3]; // 0x699 + [[maybe_unused]] uint8_t __pad06a1[0x3]; // 0x6a1 public: // MNetworkEnable - uint32_t m_iDesiredFOV; // 0x69c + uint32_t m_iDesiredFOV; // 0x6a4 }; // Alignment: 14 @@ -5256,7 +5179,7 @@ public: }; // Alignment: 2 -// Size: 0x1730 +// Size: 0x1840 class CBodyComponentBaseAnimGraph : public CBodyComponentSkeletonInstance { public: @@ -5264,116 +5187,112 @@ public: CBaseAnimGraphController m_animationController; // 0x470 // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex - CNetworkVarChainer __m_pChainEntity; // 0x1708 - - // Static fields: + CNetworkVarChainer __m_pChainEntity; // 0x1810 static EntComponentInfo_t &Get_s_EntComponentInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("client.dll")->FindDeclaredClass("CBodyComponentBaseAnimGraph")->m_static_fields[0]->m_instance);}; static int32_t &Get_entity_component_error_class_decl_says_contained_but_impl_is_referenced(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("client.dll")->FindDeclaredClass("CBodyComponentBaseAnimGraph")->m_static_fields[1]->m_instance);}; }; // Alignment: 32 -// Size: 0x838 +// Size: 0xcc0 class C_BaseModelEntity : public C_BaseEntity { -private: - [[maybe_unused]] uint8_t __pad0538[0x50]; // 0x538 public: // MNetworkEnable // MNetworkUserGroup "CRenderComponent" // MNetworkAlias "CRenderComponent" // MNetworkTypeAlias "CRenderComponent" - CRenderComponent* m_CRenderComponent; // 0x588 + CRenderComponent* m_CRenderComponent; // 0xa10 // MNetworkEnable // MNetworkUserGroup "CHitboxComponent" // MNetworkAlias "CHitboxComponent" // MNetworkTypeAlias "CHitboxComponent" - CHitboxComponent m_CHitboxComponent; // 0x590 + CHitboxComponent m_CHitboxComponent; // 0xa18 private: - [[maybe_unused]] uint8_t __pad05b8[0x20]; // 0x5b8 + [[maybe_unused]] uint8_t __pad0a40[0x20]; // 0xa40 public: - bool m_bInitModelEffects; // 0x5d8 - bool m_bIsStaticProp; // 0x5d9 + bool m_bInitModelEffects; // 0xa60 + bool m_bIsStaticProp; // 0xa61 private: - [[maybe_unused]] uint8_t __pad05da[0x2]; // 0x5da + [[maybe_unused]] uint8_t __pad0a62[0x2]; // 0xa62 public: - int32_t m_nLastAddDecal; // 0x5dc - int32_t m_nDecalsAdded; // 0x5e0 - int32_t m_iOldHealth; // 0x5e4 + int32_t m_nLastAddDecal; // 0xa64 + int32_t m_nDecalsAdded; // 0xa68 + int32_t m_iOldHealth; // 0xa6c // MNetworkEnable // MNetworkChangeCallback "OnRenderModeChanged" - RenderMode_t m_nRenderMode; // 0x5e8 + RenderMode_t m_nRenderMode; // 0xa70 // MNetworkEnable - RenderFx_t m_nRenderFX; // 0x5e9 - bool m_bAllowFadeInView; // 0x5ea + RenderFx_t m_nRenderFX; // 0xa71 + bool m_bAllowFadeInView; // 0xa72 // MNetworkEnable // MNetworkChangeCallback "OnColorChanged" - Color m_clrRender; // 0x5eb + Color m_clrRender; // 0xa73 private: - [[maybe_unused]] uint8_t __pad05ef[0x1]; // 0x5ef + [[maybe_unused]] uint8_t __pad0a77[0x1]; // 0xa77 public: // MNetworkEnable // MNetworkChangeCallback "OnRenderAttributesChanged" - C_UtlVectorEmbeddedNetworkVar< EntityRenderAttribute_t > m_vecRenderAttributes; // 0x5f0 + C_UtlVectorEmbeddedNetworkVar< EntityRenderAttribute_t > m_vecRenderAttributes; // 0xa78 private: - [[maybe_unused]] uint8_t __pad0640[0x18]; // 0x640 + [[maybe_unused]] uint8_t __pad0ac8[0x18]; // 0xac8 public: // MNetworkEnable // MNetworkChangeCallback "OnLightGroupChanged" - CUtlStringToken m_LightGroup; // 0x658 + CUtlStringToken m_LightGroup; // 0xae0 // MNetworkEnable - bool m_bRenderToCubemaps; // 0x65c + bool m_bRenderToCubemaps; // 0xae4 private: - [[maybe_unused]] uint8_t __pad065d[0x3]; // 0x65d + [[maybe_unused]] uint8_t __pad0ae5[0x3]; // 0xae5 public: // MNetworkEnable - CCollisionProperty m_Collision; // 0x660 + CCollisionProperty m_Collision; // 0xae8 // MNetworkEnable - CGlowProperty m_Glow; // 0x710 + CGlowProperty m_Glow; // 0xb98 // MNetworkEnable - float m_flGlowBackfaceMult; // 0x768 + float m_flGlowBackfaceMult; // 0xbf0 // MNetworkEnable - float m_fadeMinDist; // 0x76c + float m_fadeMinDist; // 0xbf4 // MNetworkEnable - float m_fadeMaxDist; // 0x770 + float m_fadeMaxDist; // 0xbf8 // MNetworkEnable - float m_flFadeScale; // 0x774 + float m_flFadeScale; // 0xbfc // MNetworkEnable - float m_flShadowStrength; // 0x778 + float m_flShadowStrength; // 0xc00 // MNetworkEnable - uint8_t m_nObjectCulling; // 0x77c + uint8_t m_nObjectCulling; // 0xc04 private: - [[maybe_unused]] uint8_t __pad077d[0x3]; // 0x77d + [[maybe_unused]] uint8_t __pad0c05[0x3]; // 0xc05 public: // MNetworkEnable - int32_t m_nAddDecal; // 0x780 + int32_t m_nAddDecal; // 0xc08 // MNetworkEnable - Vector m_vDecalPosition; // 0x784 + Vector m_vDecalPosition; // 0xc0c // MNetworkEnable - Vector m_vDecalForwardAxis; // 0x790 + Vector m_vDecalForwardAxis; // 0xc18 // MNetworkEnable - float m_flDecalHealBloodRate; // 0x79c + float m_flDecalHealBloodRate; // 0xc24 // MNetworkEnable - float m_flDecalHealHeightRate; // 0x7a0 + float m_flDecalHealHeightRate; // 0xc28 private: - [[maybe_unused]] uint8_t __pad07a4[0x4]; // 0x7a4 + [[maybe_unused]] uint8_t __pad0c2c[0x4]; // 0xc2c public: // MNetworkEnable - C_NetworkUtlVectorBase< CHandle< C_BaseModelEntity > > m_ConfigEntitiesToPropagateMaterialDecalsTo; // 0x7a8 + C_NetworkUtlVectorBase< CHandle< C_BaseModelEntity > > m_ConfigEntitiesToPropagateMaterialDecalsTo; // 0xc30 // MNetworkEnable // MNetworkPriority "32" // MNetworkUserGroup "Player" // MNetworkChangeCallback "OnViewOffsetChanged" - CNetworkViewOffsetVector m_vecViewOffset; // 0x7c0 + CNetworkViewOffsetVector m_vecViewOffset; // 0xc48 private: - [[maybe_unused]] uint8_t __pad07e8[0x8]; // 0x7e8 + [[maybe_unused]] uint8_t __pad0c70[0x8]; // 0xc70 public: - CClientAlphaProperty* m_pClientAlphaProperty; // 0x7f0 - Color m_ClientOverrideTint; // 0x7f8 - bool m_bUseClientOverrideTint; // 0x7fc + CClientAlphaProperty* m_pClientAlphaProperty; // 0xc78 + Color m_ClientOverrideTint; // 0xc80 + bool m_bUseClientOverrideTint; // 0xc84 }; // Alignment: 0 -// Size: 0x838 +// Size: 0xcc0 class CServerOnlyModelEntity : public C_BaseModelEntity { public: @@ -5381,7 +5300,7 @@ public: }; // Alignment: 0 -// Size: 0x838 +// Size: 0xcc0 class C_ModelPointEntity : public C_BaseModelEntity { public: @@ -5389,123 +5308,123 @@ public: }; // Alignment: 7 -// Size: 0x590 +// Size: 0x598 class CLogicRelay : public CLogicalEntity { public: - CEntityIOOutput m_OnTrigger; // 0x538 - CEntityIOOutput m_OnSpawn; // 0x560 - bool m_bDisabled; // 0x588 - bool m_bWaitForRefire; // 0x589 - bool m_bTriggerOnce; // 0x58a - bool m_bFastRetrigger; // 0x58b - bool m_bPassthoughCaller; // 0x58c + CEntityIOOutput m_OnTrigger; // 0x540 + CEntityIOOutput m_OnSpawn; // 0x568 + bool m_bDisabled; // 0x590 + bool m_bWaitForRefire; // 0x591 + bool m_bTriggerOnce; // 0x592 + bool m_bFastRetrigger; // 0x593 + bool m_bPassthoughCaller; // 0x594 }; // Alignment: 23 -// Size: 0xde8 +// Size: 0x1270 class C_ParticleSystem : public C_BaseModelEntity { public: // MNetworkEnable - char m_szSnapshotFileName[512]; // 0x838 + char m_szSnapshotFileName[512]; // 0xcc0 // MNetworkEnable - bool m_bActive; // 0xa38 + bool m_bActive; // 0xec0 // MNetworkEnable - bool m_bFrozen; // 0xa39 + bool m_bFrozen; // 0xec1 private: - [[maybe_unused]] uint8_t __pad0a3a[0x2]; // 0xa3a + [[maybe_unused]] uint8_t __pad0ec2[0x2]; // 0xec2 public: // MNetworkEnable - float m_flFreezeTransitionDuration; // 0xa3c + float m_flFreezeTransitionDuration; // 0xec4 // MNetworkEnable - int32_t m_nStopType; // 0xa40 + int32_t m_nStopType; // 0xec8 // MNetworkEnable - bool m_bAnimateDuringGameplayPause; // 0xa44 + bool m_bAnimateDuringGameplayPause; // 0xecc private: - [[maybe_unused]] uint8_t __pad0a45[0x3]; // 0xa45 + [[maybe_unused]] uint8_t __pad0ecd[0x3]; // 0xecd public: // MNetworkEnable - CStrongHandle< InfoForResourceTypeIParticleSystemDefinition > m_iEffectIndex; // 0xa48 + CStrongHandle< InfoForResourceTypeIParticleSystemDefinition > m_iEffectIndex; // 0xed0 // MNetworkEnable - GameTime_t m_flStartTime; // 0xa50 + GameTime_t m_flStartTime; // 0xed8 // MNetworkEnable - float m_flPreSimTime; // 0xa54 + float m_flPreSimTime; // 0xedc // MNetworkEnable - Vector m_vServerControlPoints[4]; // 0xa58 + Vector m_vServerControlPoints[4]; // 0xee0 // MNetworkEnable - uint8_t m_iServerControlPointAssignments[4]; // 0xa88 + uint8_t m_iServerControlPointAssignments[4]; // 0xf10 // MNetworkEnable - CHandle< C_BaseEntity > m_hControlPointEnts[64]; // 0xa8c + CHandle< C_BaseEntity > m_hControlPointEnts[64]; // 0xf14 // MNetworkEnable - bool m_bNoSave; // 0xb8c + bool m_bNoSave; // 0x1014 // MNetworkEnable - bool m_bNoFreeze; // 0xb8d - bool m_bStartActive; // 0xb8e + bool m_bNoFreeze; // 0x1015 + bool m_bStartActive; // 0x1016 private: - [[maybe_unused]] uint8_t __pad0b8f[0x1]; // 0xb8f + [[maybe_unused]] uint8_t __pad1017[0x1]; // 0x1017 public: - CUtlSymbolLarge m_iszEffectName; // 0xb90 - CUtlSymbolLarge m_iszControlPointNames[64]; // 0xb98 - int32_t m_nDataCP; // 0xd98 - Vector m_vecDataCPValue; // 0xd9c - int32_t m_nTintCP; // 0xda8 - Color m_clrTint; // 0xdac + CUtlSymbolLarge m_iszEffectName; // 0x1018 + CUtlSymbolLarge m_iszControlPointNames[64]; // 0x1020 + int32_t m_nDataCP; // 0x1220 + Vector m_vecDataCPValue; // 0x1224 + int32_t m_nTintCP; // 0x1230 + Color m_clrTint; // 0x1234 private: - [[maybe_unused]] uint8_t __pad0db0[0x20]; // 0xdb0 + [[maybe_unused]] uint8_t __pad1238[0x20]; // 0x1238 public: - bool m_bOldActive; // 0xdd0 - bool m_bOldFrozen; // 0xdd1 + bool m_bOldActive; // 0x1258 + bool m_bOldFrozen; // 0x1259 }; // Alignment: 16 -// Size: 0x640 +// Size: 0x648 class C_PathParticleRope : public C_BaseEntity { public: - bool m_bStartActive; // 0x538 + bool m_bStartActive; // 0x540 private: - [[maybe_unused]] uint8_t __pad0539[0x3]; // 0x539 + [[maybe_unused]] uint8_t __pad0541[0x3]; // 0x541 public: - float m_flMaxSimulationTime; // 0x53c - CUtlSymbolLarge m_iszEffectName; // 0x540 - CUtlVector< CUtlSymbolLarge > m_PathNodes_Name; // 0x548 + float m_flMaxSimulationTime; // 0x544 + CUtlSymbolLarge m_iszEffectName; // 0x548 + CUtlVector< CUtlSymbolLarge > m_PathNodes_Name; // 0x550 // MNetworkEnable - float m_flParticleSpacing; // 0x560 + float m_flParticleSpacing; // 0x568 // MNetworkEnable // MNetworkChangeCallback "parametersChanged" - float m_flSlack; // 0x564 + float m_flSlack; // 0x56c // MNetworkEnable // MNetworkChangeCallback "parametersChanged" - float m_flRadius; // 0x568 + float m_flRadius; // 0x570 // MNetworkEnable // MNetworkChangeCallback "parametersChanged" - Color m_ColorTint; // 0x56c + Color m_ColorTint; // 0x574 // MNetworkEnable // MNetworkChangeCallback "effectStateChanged" - int32_t m_nEffectState; // 0x570 + int32_t m_nEffectState; // 0x578 private: - [[maybe_unused]] uint8_t __pad0574[0x4]; // 0x574 + [[maybe_unused]] uint8_t __pad057c[0x4]; // 0x57c public: // MNetworkEnable - CStrongHandle< InfoForResourceTypeIParticleSystemDefinition > m_iEffectIndex; // 0x578 + CStrongHandle< InfoForResourceTypeIParticleSystemDefinition > m_iEffectIndex; // 0x580 // MNetworkEnable - C_NetworkUtlVectorBase< Vector > m_PathNodes_Position; // 0x580 + C_NetworkUtlVectorBase< Vector > m_PathNodes_Position; // 0x588 // MNetworkEnable - C_NetworkUtlVectorBase< Vector > m_PathNodes_TangentIn; // 0x598 + C_NetworkUtlVectorBase< Vector > m_PathNodes_TangentIn; // 0x5a0 // MNetworkEnable - C_NetworkUtlVectorBase< Vector > m_PathNodes_TangentOut; // 0x5b0 + C_NetworkUtlVectorBase< Vector > m_PathNodes_TangentOut; // 0x5b8 // MNetworkEnable - C_NetworkUtlVectorBase< Vector > m_PathNodes_Color; // 0x5c8 + C_NetworkUtlVectorBase< Vector > m_PathNodes_Color; // 0x5d0 // MNetworkEnable // MNetworkChangeCallback "pinStateChanged" - C_NetworkUtlVectorBase< bool > m_PathNodes_PinEnabled; // 0x5e0 + C_NetworkUtlVectorBase< bool > m_PathNodes_PinEnabled; // 0x5e8 // MNetworkEnable - C_NetworkUtlVectorBase< float32 > m_PathNodes_RadiusScale; // 0x5f8 + C_NetworkUtlVectorBase< float32 > m_PathNodes_RadiusScale; // 0x600 }; // Alignment: 0 -// Size: 0x640 +// Size: 0x648 class C_PathParticleRopeAlias_path_particle_rope_clientside : public C_PathParticleRope { public: @@ -5513,70 +5432,70 @@ public: }; // Alignment: 7 -// Size: 0x860 +// Size: 0xce8 class C_DynamicLight : public C_BaseModelEntity { public: // MNetworkEnable - uint8_t m_Flags; // 0x838 + uint8_t m_Flags; // 0xcc0 // MNetworkEnable - uint8_t m_LightStyle; // 0x839 + uint8_t m_LightStyle; // 0xcc1 private: - [[maybe_unused]] uint8_t __pad083a[0x2]; // 0x83a + [[maybe_unused]] uint8_t __pad0cc2[0x2]; // 0xcc2 public: // MNetworkEnable - float m_Radius; // 0x83c + float m_Radius; // 0xcc4 // MNetworkEnable - int32_t m_Exponent; // 0x840 + int32_t m_Exponent; // 0xcc8 // MNetworkEnable // MNetworkBitCount "8" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "360.000000" - float m_InnerAngle; // 0x844 + // MNetworkMinValue "0" + // MNetworkMaxValue "360" + float m_InnerAngle; // 0xccc // MNetworkEnable // MNetworkBitCount "8" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "360.000000" - float m_OuterAngle; // 0x848 + // MNetworkMinValue "0" + // MNetworkMaxValue "360" + float m_OuterAngle; // 0xcd0 // MNetworkEnable - float m_SpotRadius; // 0x84c + float m_SpotRadius; // 0xcd4 }; // Alignment: 9 -// Size: 0x5c8 +// Size: 0x5d0 class C_EnvScreenOverlay : public C_PointEntity { public: // MNetworkEnable - CUtlSymbolLarge m_iszOverlayNames[10]; // 0x538 + CUtlSymbolLarge m_iszOverlayNames[10]; // 0x540 // MNetworkEnable // MNetworkBitCount "11" - // MNetworkMinValue "-1.000000" - // MNetworkMaxValue "63.000000" - float m_flOverlayTimes[10]; // 0x588 + // MNetworkMinValue "-1" + // MNetworkMaxValue "63" + float m_flOverlayTimes[10]; // 0x590 // MNetworkEnable - GameTime_t m_flStartTime; // 0x5b0 + GameTime_t m_flStartTime; // 0x5b8 // MNetworkEnable - int32_t m_iDesiredOverlay; // 0x5b4 + int32_t m_iDesiredOverlay; // 0x5bc // MNetworkEnable - bool m_bIsActive; // 0x5b8 - bool m_bWasActive; // 0x5b9 + bool m_bIsActive; // 0x5c0 + bool m_bWasActive; // 0x5c1 private: - [[maybe_unused]] uint8_t __pad05ba[0x2]; // 0x5ba + [[maybe_unused]] uint8_t __pad05c2[0x2]; // 0x5c2 public: - int32_t m_iCachedDesiredOverlay; // 0x5bc - int32_t m_iCurrentOverlay; // 0x5c0 - GameTime_t m_flCurrentOverlayTime; // 0x5c4 + int32_t m_iCachedDesiredOverlay; // 0x5c4 + int32_t m_iCurrentOverlay; // 0x5c8 + GameTime_t m_flCurrentOverlayTime; // 0x5cc }; // Alignment: 3 -// Size: 0x848 +// Size: 0xcd0 class C_FuncTrackTrain : public C_BaseModelEntity { public: - int32_t m_nLongAxis; // 0x838 - float m_flRadius; // 0x83c - float m_flLineLength; // 0x840 + int32_t m_nLongAxis; // 0xcc0 + float m_flRadius; // 0xcc4 + float m_flLineLength; // 0xcc8 }; // Alignment: 7 @@ -5594,76 +5513,76 @@ public: }; // Alignment: 8 -// Size: 0x950 +// Size: 0xdd8 class C_LightGlow : public C_BaseModelEntity { public: // MNetworkEnable - uint32_t m_nHorizontalSize; // 0x838 + uint32_t m_nHorizontalSize; // 0xcc0 // MNetworkEnable - uint32_t m_nVerticalSize; // 0x83c + uint32_t m_nVerticalSize; // 0xcc4 // MNetworkEnable - uint32_t m_nMinDist; // 0x840 + uint32_t m_nMinDist; // 0xcc8 // MNetworkEnable - uint32_t m_nMaxDist; // 0x844 + uint32_t m_nMaxDist; // 0xccc // MNetworkEnable - uint32_t m_nOuterMaxDist; // 0x848 + uint32_t m_nOuterMaxDist; // 0xcd0 // MNetworkEnable // MNetworkBitCount "6" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "64.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "64" // MNetworkEncodeFlags - float m_flGlowProxySize; // 0x84c + float m_flGlowProxySize; // 0xcd4 // MNetworkEnable - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "100.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "100" // MNetworkChangeCallback "OnHDRColorScaleChanged" - float m_flHDRColorScale; // 0x850 + float m_flHDRColorScale; // 0xcd8 private: - [[maybe_unused]] uint8_t __pad0854[0x4]; // 0x854 + [[maybe_unused]] uint8_t __pad0cdc[0x4]; // 0xcdc public: - C_LightGlowOverlay m_Glow; // 0x858 + C_LightGlowOverlay m_Glow; // 0xce0 }; // Alignment: 1 -// Size: 0x540 +// Size: 0x548 class C_RagdollManager : public C_BaseEntity { public: // MNetworkEnable - int8_t m_iCurrentMaxRagdollCount; // 0x538 + int8_t m_iCurrentMaxRagdollCount; // 0x540 }; // Alignment: 2 -// Size: 0x848 +// Size: 0xcd0 class C_SpotlightEnd : public C_BaseModelEntity { public: // MNetworkEnable - float m_flLightScale; // 0x838 + float m_flLightScale; // 0xcc0 // MNetworkEnable - float m_Radius; // 0x83c + float m_Radius; // 0xcc4 }; // Alignment: 4 -// Size: 0x548 +// Size: 0x550 class C_PointHMDAnchor : public C_BaseEntity { public: // MNetworkEnable - bool m_bDisabled; // 0x538 + bool m_bDisabled; // 0x540 private: - [[maybe_unused]] uint8_t __pad0539[0x3]; // 0x539 + [[maybe_unused]] uint8_t __pad0541[0x3]; // 0x541 public: // MNetworkEnable - GameTime_t m_flEnableTime; // 0x53c + GameTime_t m_flEnableTime; // 0x544 // MNetworkEnable - int32_t m_nPlayerIndex; // 0x540 - int32_t m_nLastSimulateFrame; // 0x544 + int32_t m_nPlayerIndex; // 0x548 + int32_t m_nLastSimulateFrame; // 0x54c }; // Alignment: 0 -// Size: 0x548 +// Size: 0x550 class C_PointHMDAnchorOverride : public C_PointHMDAnchor { public: @@ -5671,126 +5590,124 @@ public: }; // Alignment: 25 -// Size: 0x5b0 +// Size: 0x5b8 class C_PointValueRemapper : public C_BaseEntity { public: // MNetworkEnable - bool m_bDisabled; // 0x538 - bool m_bDisabledOld; // 0x539 + bool m_bDisabled; // 0x540 + bool m_bDisabledOld; // 0x541 // MNetworkEnable - bool m_bUpdateOnClient; // 0x53a + bool m_bUpdateOnClient; // 0x542 private: - [[maybe_unused]] uint8_t __pad053b[0x1]; // 0x53b + [[maybe_unused]] uint8_t __pad0543[0x1]; // 0x543 public: // MNetworkEnable - ValueRemapperInputType_t m_nInputType; // 0x53c + ValueRemapperInputType_t m_nInputType; // 0x544 // MNetworkEnable - CHandle< C_BaseEntity > m_hRemapLineStart; // 0x540 + CHandle< C_BaseEntity > m_hRemapLineStart; // 0x548 // MNetworkEnable - CHandle< C_BaseEntity > m_hRemapLineEnd; // 0x544 + CHandle< C_BaseEntity > m_hRemapLineEnd; // 0x54c // MNetworkEnable - float m_flMaximumChangePerSecond; // 0x548 + float m_flMaximumChangePerSecond; // 0x550 // MNetworkEnable - float m_flDisengageDistance; // 0x54c + float m_flDisengageDistance; // 0x554 // MNetworkEnable - float m_flEngageDistance; // 0x550 + float m_flEngageDistance; // 0x558 // MNetworkEnable - bool m_bRequiresUseKey; // 0x554 + bool m_bRequiresUseKey; // 0x55c private: - [[maybe_unused]] uint8_t __pad0555[0x3]; // 0x555 + [[maybe_unused]] uint8_t __pad055d[0x3]; // 0x55d public: // MNetworkEnable - ValueRemapperOutputType_t m_nOutputType; // 0x558 + ValueRemapperOutputType_t m_nOutputType; // 0x560 private: - [[maybe_unused]] uint8_t __pad055c[0x4]; // 0x55c + [[maybe_unused]] uint8_t __pad0564[0x4]; // 0x564 public: // MNetworkEnable - C_NetworkUtlVectorBase< CHandle< C_BaseEntity > > m_hOutputEntities; // 0x560 + C_NetworkUtlVectorBase< CHandle< C_BaseEntity > > m_hOutputEntities; // 0x568 // MNetworkEnable - ValueRemapperHapticsType_t m_nHapticsType; // 0x578 + ValueRemapperHapticsType_t m_nHapticsType; // 0x580 // MNetworkEnable - ValueRemapperMomentumType_t m_nMomentumType; // 0x57c + ValueRemapperMomentumType_t m_nMomentumType; // 0x584 // MNetworkEnable - float m_flMomentumModifier; // 0x580 + float m_flMomentumModifier; // 0x588 // MNetworkEnable - float m_flSnapValue; // 0x584 - float m_flCurrentMomentum; // 0x588 + float m_flSnapValue; // 0x58c + float m_flCurrentMomentum; // 0x590 // MNetworkEnable - ValueRemapperRatchetType_t m_nRatchetType; // 0x58c - float m_flRatchetOffset; // 0x590 + ValueRemapperRatchetType_t m_nRatchetType; // 0x594 + float m_flRatchetOffset; // 0x598 // MNetworkEnable - float m_flInputOffset; // 0x594 - bool m_bEngaged; // 0x598 - bool m_bFirstUpdate; // 0x599 + float m_flInputOffset; // 0x59c + bool m_bEngaged; // 0x5a0 + bool m_bFirstUpdate; // 0x5a1 private: - [[maybe_unused]] uint8_t __pad059a[0x2]; // 0x59a + [[maybe_unused]] uint8_t __pad05a2[0x2]; // 0x5a2 public: - float m_flPreviousValue; // 0x59c - GameTime_t m_flPreviousUpdateTickTime; // 0x5a0 - Vector m_vecPreviousTestPoint; // 0x5a4 + float m_flPreviousValue; // 0x5a4 + GameTime_t m_flPreviousUpdateTickTime; // 0x5a8 + Vector m_vecPreviousTestPoint; // 0x5ac }; // Alignment: 12 -// Size: 0xab0 +// Size: 0xf38 class C_PointWorldText : public C_ModelPointEntity { -private: - [[maybe_unused]] uint8_t __pad0838[0x8]; // 0x838 public: - bool m_bForceRecreateNextUpdate; // 0x840 + bool m_bForceRecreateNextUpdate; // 0xcc8 private: - [[maybe_unused]] uint8_t __pad0841[0xf]; // 0x841 + [[maybe_unused]] uint8_t __pad0cc9[0xf]; // 0xcc9 public: // MNetworkEnable - char m_messageText[512]; // 0x850 + char m_messageText[512]; // 0xcd8 // MNetworkEnable - char m_FontName[64]; // 0xa50 + char m_FontName[64]; // 0xed8 // MNetworkEnable - bool m_bEnabled; // 0xa90 + bool m_bEnabled; // 0xf18 // MNetworkEnable - bool m_bFullbright; // 0xa91 + bool m_bFullbright; // 0xf19 private: - [[maybe_unused]] uint8_t __pad0a92[0x2]; // 0xa92 + [[maybe_unused]] uint8_t __pad0f1a[0x2]; // 0xf1a public: // MNetworkEnable - float m_flWorldUnitsPerPx; // 0xa94 + float m_flWorldUnitsPerPx; // 0xf1c // MNetworkEnable - float m_flFontSize; // 0xa98 + float m_flFontSize; // 0xf20 // MNetworkEnable - float m_flDepthOffset; // 0xa9c + float m_flDepthOffset; // 0xf24 // MNetworkEnable - Color m_Color; // 0xaa0 + Color m_Color; // 0xf28 // MNetworkEnable - PointWorldTextJustifyHorizontal_t m_nJustifyHorizontal; // 0xaa4 + PointWorldTextJustifyHorizontal_t m_nJustifyHorizontal; // 0xf2c // MNetworkEnable - PointWorldTextJustifyVertical_t m_nJustifyVertical; // 0xaa8 + PointWorldTextJustifyVertical_t m_nJustifyVertical; // 0xf30 // MNetworkEnable - PointWorldTextReorientMode_t m_nReorientMode; // 0xaac + PointWorldTextReorientMode_t m_nReorientMode; // 0xf34 }; // Alignment: 2 -// Size: 0x540 +// Size: 0x548 class C_HandleTest : public C_BaseEntity { public: // MNetworkEnable - CHandle< C_BaseEntity > m_Handle; // 0x538 + CHandle< C_BaseEntity > m_Handle; // 0x540 // MNetworkEnable - bool m_bSendHandle; // 0x53c + bool m_bSendHandle; // 0x544 }; // Alignment: 1 -// Size: 0x740 +// Size: 0x748 class C_EnvWind : public C_BaseEntity { public: // MNetworkEnable - C_EnvWindShared m_EnvWindShared; // 0x538 + C_EnvWindShared m_EnvWindShared; // 0x540 }; // Alignment: 0 -// Size: 0x838 +// Size: 0xcc0 class C_BaseToggle : public C_BaseModelEntity { public: @@ -5798,23 +5715,23 @@ public: }; // Alignment: 3 -// Size: 0x848 +// Size: 0xcd0 class C_BaseButton : public C_BaseToggle { public: // MNetworkEnable - CHandle< C_BaseModelEntity > m_glowEntity; // 0x838 + CHandle< C_BaseModelEntity > m_glowEntity; // 0xcc0 // MNetworkEnable - bool m_usable; // 0x83c + bool m_usable; // 0xcc4 private: - [[maybe_unused]] uint8_t __pad083d[0x3]; // 0x83d + [[maybe_unused]] uint8_t __pad0cc5[0x3]; // 0xcc5 public: // MNetworkEnable - CUtlSymbolLarge m_szDisplayText; // 0x840 + CUtlSymbolLarge m_szDisplayText; // 0xcc8 }; // Alignment: 0 -// Size: 0x838 +// Size: 0xcc0 class C_PrecipitationBlocker : public C_BaseModelEntity { public: @@ -5822,39 +5739,37 @@ public: }; // Alignment: 13 -// Size: 0x880 +// Size: 0xd08 class C_EntityDissolve : public C_BaseModelEntity { -private: - [[maybe_unused]] uint8_t __pad0838[0x8]; // 0x838 public: // MNetworkEnable - GameTime_t m_flStartTime; // 0x840 + GameTime_t m_flStartTime; // 0xcc8 // MNetworkEnable - float m_flFadeInStart; // 0x844 + float m_flFadeInStart; // 0xccc // MNetworkEnable - float m_flFadeInLength; // 0x848 + float m_flFadeInLength; // 0xcd0 // MNetworkEnable - float m_flFadeOutModelStart; // 0x84c + float m_flFadeOutModelStart; // 0xcd4 // MNetworkEnable - float m_flFadeOutModelLength; // 0x850 + float m_flFadeOutModelLength; // 0xcd8 // MNetworkEnable - float m_flFadeOutStart; // 0x854 + float m_flFadeOutStart; // 0xcdc // MNetworkEnable - float m_flFadeOutLength; // 0x858 - GameTime_t m_flNextSparkTime; // 0x85c + float m_flFadeOutLength; // 0xce0 + GameTime_t m_flNextSparkTime; // 0xce4 // MNetworkEnable - EntityDisolveType_t m_nDissolveType; // 0x860 + EntityDisolveType_t m_nDissolveType; // 0xce8 // MNetworkEnable - Vector m_vDissolverOrigin; // 0x864 + Vector m_vDissolverOrigin; // 0xcec // MNetworkEnable - uint32_t m_nMagnitude; // 0x870 - bool m_bCoreExplode; // 0x874 - bool m_bLinkedToServerEnt; // 0x875 + uint32_t m_nMagnitude; // 0xcf8 + bool m_bCoreExplode; // 0xcfc + bool m_bLinkedToServerEnt; // 0xcfd }; // Alignment: 0 -// Size: 0xb20 +// Size: 0xfa8 class C_EnvProjectedTexture : public C_ModelPointEntity { public: @@ -5862,34 +5777,34 @@ public: }; // Alignment: 9 -// Size: 0x870 +// Size: 0xcf8 class C_EnvDecal : public C_BaseModelEntity { public: // MNetworkEnable - CStrongHandle< InfoForResourceTypeIMaterial2 > m_hDecalMaterial; // 0x838 + CStrongHandle< InfoForResourceTypeIMaterial2 > m_hDecalMaterial; // 0xcc0 // MNetworkEnable // MNetworkChangeCallback "OnDecalDimensionsChanged" - float m_flWidth; // 0x840 + float m_flWidth; // 0xcc8 // MNetworkEnable // MNetworkChangeCallback "OnDecalDimensionsChanged" - float m_flHeight; // 0x844 + float m_flHeight; // 0xccc // MNetworkEnable // MNetworkChangeCallback "OnDecalDimensionsChanged" - float m_flDepth; // 0x848 + float m_flDepth; // 0xcd0 // MNetworkEnable - uint32_t m_nRenderOrder; // 0x84c + uint32_t m_nRenderOrder; // 0xcd4 // MNetworkEnable - bool m_bProjectOnWorld; // 0x850 + bool m_bProjectOnWorld; // 0xcd8 // MNetworkEnable - bool m_bProjectOnCharacters; // 0x851 + bool m_bProjectOnCharacters; // 0xcd9 // MNetworkEnable - bool m_bProjectOnWater; // 0x852 + bool m_bProjectOnWater; // 0xcda private: - [[maybe_unused]] uint8_t __pad0853[0x1]; // 0x853 + [[maybe_unused]] uint8_t __pad0cdb[0x1]; // 0xcdb public: // MNetworkEnable - float m_flDepthSortBias; // 0x854 + float m_flDepthSortBias; // 0xcdc }; // Alignment: 4 @@ -5904,7 +5819,7 @@ public: }; // Alignment: 0 -// Size: 0x838 +// Size: 0xcc0 class C_FuncBrush : public C_BaseModelEntity { public: @@ -5912,22 +5827,22 @@ public: }; // Alignment: 3 -// Size: 0x850 +// Size: 0xcd8 class C_FuncElectrifiedVolume : public C_FuncBrush { public: - ParticleIndex_t m_nAmbientEffect; // 0x838 + ParticleIndex_t m_nAmbientEffect; // 0xcc0 private: - [[maybe_unused]] uint8_t __pad083c[0x4]; // 0x83c + [[maybe_unused]] uint8_t __pad0cc4[0x4]; // 0xcc4 public: // MNetworkEnable - CUtlSymbolLarge m_EffectName; // 0x840 + CUtlSymbolLarge m_EffectName; // 0xcc8 // MNetworkEnable - bool m_bState; // 0x848 + bool m_bState; // 0xcd0 }; // Alignment: 0 -// Size: 0x838 +// Size: 0xcc0 class C_FuncRotating : public C_BaseModelEntity { public: @@ -5935,7 +5850,7 @@ public: }; // Alignment: 0 -// Size: 0x838 +// Size: 0xcc0 class C_Breakable : public C_BaseModelEntity { public: @@ -5943,7 +5858,7 @@ public: }; // Alignment: 0 -// Size: 0x838 +// Size: 0xcc0 class C_PhysBox : public C_Breakable { public: @@ -5951,136 +5866,132 @@ public: }; // Alignment: 41 -// Size: 0xc20 +// Size: 0x10a8 class C_RopeKeyframe : public C_BaseModelEntity { -private: - [[maybe_unused]] uint8_t __pad0838[0x8]; // 0x838 public: - CBitVec< 10 > m_LinksTouchingSomething; // 0x840 - int32_t m_nLinksTouchingSomething; // 0x844 - bool m_bApplyWind; // 0x848 + CBitVec< 10 > m_LinksTouchingSomething; // 0xcc8 + int32_t m_nLinksTouchingSomething; // 0xccc + bool m_bApplyWind; // 0xcd0 private: - [[maybe_unused]] uint8_t __pad0849[0x3]; // 0x849 + [[maybe_unused]] uint8_t __pad0cd1[0x3]; // 0xcd1 public: - int32_t m_fPrevLockedPoints; // 0x84c - int32_t m_iForcePointMoveCounter; // 0x850 - bool m_bPrevEndPointPos[2]; // 0x854 + int32_t m_fPrevLockedPoints; // 0xcd4 + int32_t m_iForcePointMoveCounter; // 0xcd8 + bool m_bPrevEndPointPos[2]; // 0xcdc private: - [[maybe_unused]] uint8_t __pad0856[0x2]; // 0x856 + [[maybe_unused]] uint8_t __pad0cde[0x2]; // 0xcde public: - Vector m_vPrevEndPointPos[2]; // 0x858 - float m_flCurScroll; // 0x870 + Vector m_vPrevEndPointPos[2]; // 0xce0 + float m_flCurScroll; // 0xcf8 // MNetworkEnable - float m_flScrollSpeed; // 0x874 + float m_flScrollSpeed; // 0xcfc // MNetworkEnable - uint16_t m_RopeFlags; // 0x878 + uint16_t m_RopeFlags; // 0xd00 private: - [[maybe_unused]] uint8_t __pad087a[0x6]; // 0x87a + [[maybe_unused]] uint8_t __pad0d02[0x6]; // 0xd02 public: // MNetworkEnable - CStrongHandle< InfoForResourceTypeIMaterial2 > m_iRopeMaterialModelIndex; // 0x880 + CStrongHandle< InfoForResourceTypeIMaterial2 > m_iRopeMaterialModelIndex; // 0xd08 private: - [[maybe_unused]] uint8_t __pad0888[0x270]; // 0x888 + [[maybe_unused]] uint8_t __pad0d10[0x270]; // 0xd10 public: - Vector m_LightValues[10]; // 0xaf8 + Vector m_LightValues[10]; // 0xf80 // MNetworkEnable - uint8_t m_nSegments; // 0xb70 + uint8_t m_nSegments; // 0xff8 private: - [[maybe_unused]] uint8_t __pad0b71[0x3]; // 0xb71 + [[maybe_unused]] uint8_t __pad0ff9[0x3]; // 0xff9 public: // MNetworkEnable - CHandle< C_BaseEntity > m_hStartPoint; // 0xb74 + CHandle< C_BaseEntity > m_hStartPoint; // 0xffc // MNetworkEnable - CHandle< C_BaseEntity > m_hEndPoint; // 0xb78 + CHandle< C_BaseEntity > m_hEndPoint; // 0x1000 // MNetworkEnable - AttachmentHandle_t m_iStartAttachment; // 0xb7c + AttachmentHandle_t m_iStartAttachment; // 0x1004 // MNetworkEnable - AttachmentHandle_t m_iEndAttachment; // 0xb7d + AttachmentHandle_t m_iEndAttachment; // 0x1005 // MNetworkEnable - uint8_t m_Subdiv; // 0xb7e + uint8_t m_Subdiv; // 0x1006 private: - [[maybe_unused]] uint8_t __pad0b7f[0x1]; // 0xb7f + [[maybe_unused]] uint8_t __pad1007[0x1]; // 0x1007 public: // MNetworkEnable // MNetworkChangeCallback "RecomputeSprings" - int16_t m_RopeLength; // 0xb80 + int16_t m_RopeLength; // 0x1008 // MNetworkEnable // MNetworkChangeCallback "RecomputeSprings" - int16_t m_Slack; // 0xb82 + int16_t m_Slack; // 0x100a // MNetworkEnable // MNetworkBitCount "10" - // MNetworkMinValue "0.100000" - // MNetworkMaxValue "10.000000" - float m_TextureScale; // 0xb84 + // MNetworkMinValue "0.1" + // MNetworkMaxValue "10" + float m_TextureScale; // 0x100c // MNetworkEnable - uint8_t m_fLockedPoints; // 0xb88 + uint8_t m_fLockedPoints; // 0x1010 // MNetworkEnable - uint8_t m_nChangeCount; // 0xb89 + uint8_t m_nChangeCount; // 0x1011 private: - [[maybe_unused]] uint8_t __pad0b8a[0x2]; // 0xb8a + [[maybe_unused]] uint8_t __pad1012[0x2]; // 0x1012 public: // MNetworkEnable - float m_Width; // 0xb8c - C_RopeKeyframe::CPhysicsDelegate m_PhysicsDelegate; // 0xb90 - CStrongHandle< InfoForResourceTypeIMaterial2 > m_hMaterial; // 0xba0 - int32_t m_TextureHeight; // 0xba8 - Vector m_vecImpulse; // 0xbac - Vector m_vecPreviousImpulse; // 0xbb8 - float m_flCurrentGustTimer; // 0xbc4 - float m_flCurrentGustLifetime; // 0xbc8 - float m_flTimeToNextGust; // 0xbcc - Vector m_vWindDir; // 0xbd0 - Vector m_vColorMod; // 0xbdc - Vector m_vCachedEndPointAttachmentPos[2]; // 0xbe8 - QAngle m_vCachedEndPointAttachmentAngle[2]; // 0xc00 + float m_Width; // 0x1014 + C_RopeKeyframe::CPhysicsDelegate m_PhysicsDelegate; // 0x1018 + CStrongHandle< InfoForResourceTypeIMaterial2 > m_hMaterial; // 0x1028 + int32_t m_TextureHeight; // 0x1030 + Vector m_vecImpulse; // 0x1034 + Vector m_vecPreviousImpulse; // 0x1040 + float m_flCurrentGustTimer; // 0x104c + float m_flCurrentGustLifetime; // 0x1050 + float m_flTimeToNextGust; // 0x1054 + Vector m_vWindDir; // 0x1058 + Vector m_vColorMod; // 0x1064 + Vector m_vCachedEndPointAttachmentPos[2]; // 0x1070 + QAngle m_vCachedEndPointAttachmentAngle[2]; // 0x1088 // MNetworkEnable - bool m_bConstrainBetweenEndpoints; // 0xc18 + bool m_bConstrainBetweenEndpoints; // 0x10a0 struct { uint8_t m_bEndPointAttachmentPositionsDirty: 1; uint8_t m_bEndPointAttachmentAnglesDirty: 1; uint8_t m_bNewDataThisFrame: 1; uint8_t m_bPhysicsInitted: 1; - uint8_t __pad2: 4; + uint8_t __pad2: 4; // Autoaligned }; // 8 bits }; // Alignment: 12 -// Size: 0x598 +// Size: 0x5a0 class C_SceneEntity : public C_PointEntity { -private: - [[maybe_unused]] uint8_t __pad0538[0x8]; // 0x538 public: // MNetworkEnable - bool m_bIsPlayingBack; // 0x540 + bool m_bIsPlayingBack; // 0x548 // MNetworkEnable - bool m_bPaused; // 0x541 + bool m_bPaused; // 0x549 // MNetworkEnable - bool m_bMultiplayer; // 0x542 + bool m_bMultiplayer; // 0x54a // MNetworkEnable - bool m_bAutogenerated; // 0x543 + bool m_bAutogenerated; // 0x54b // MNetworkEnable // MNetworkChangeCallback "OnResetClientTime" - float m_flForceClientTime; // 0x544 + float m_flForceClientTime; // 0x54c // MNetworkEnable // MNetworkPriority "32" - uint16_t m_nSceneStringIndex; // 0x548 - bool m_bClientOnly; // 0x54a + uint16_t m_nSceneStringIndex; // 0x550 + bool m_bClientOnly; // 0x552 private: - [[maybe_unused]] uint8_t __pad054b[0x1]; // 0x54b + [[maybe_unused]] uint8_t __pad0553[0x1]; // 0x553 public: - CHandle< C_BaseFlex > m_hOwner; // 0x54c + CHandle< C_BaseFlex > m_hOwner; // 0x554 // MNetworkEnable // MNetworkPriority "32" - C_NetworkUtlVectorBase< CHandle< C_BaseFlex > > m_hActorList; // 0x550 - bool m_bWasPlaying; // 0x568 + C_NetworkUtlVectorBase< CHandle< C_BaseFlex > > m_hActorList; // 0x558 + bool m_bWasPlaying; // 0x570 private: - [[maybe_unused]] uint8_t __pad0569[0xf]; // 0x569 + [[maybe_unused]] uint8_t __pad0571[0xf]; // 0x571 public: - CUtlVector< C_SceneEntity::QueuedEvents_t > m_QueuedEvents; // 0x578 - float m_flCurrentTime; // 0x590 + CUtlVector< C_SceneEntity::QueuedEvents_t > m_QueuedEvents; // 0x580 + float m_flCurrentTime; // 0x598 }; // Alignment: 1 @@ -6092,76 +6003,76 @@ public: }; // Alignment: 18 -// Size: 0x898 +// Size: 0xd20 class C_Sun : public C_BaseModelEntity { public: - ParticleIndex_t m_fxSSSunFlareEffectIndex; // 0x838 - ParticleIndex_t m_fxSunFlareEffectIndex; // 0x83c - float m_fdistNormalize; // 0x840 - Vector m_vSunPos; // 0x844 + ParticleIndex_t m_fxSSSunFlareEffectIndex; // 0xcc0 + ParticleIndex_t m_fxSunFlareEffectIndex; // 0xcc4 + float m_fdistNormalize; // 0xcc8 + Vector m_vSunPos; // 0xccc // MNetworkEnable - Vector m_vDirection; // 0x850 + Vector m_vDirection; // 0xcd8 private: - [[maybe_unused]] uint8_t __pad085c[0x4]; // 0x85c + [[maybe_unused]] uint8_t __pad0ce4[0x4]; // 0xce4 public: // MNetworkEnable - CUtlSymbolLarge m_iszEffectName; // 0x860 + CUtlSymbolLarge m_iszEffectName; // 0xce8 // MNetworkEnable - CUtlSymbolLarge m_iszSSEffectName; // 0x868 + CUtlSymbolLarge m_iszSSEffectName; // 0xcf0 // MNetworkEnable - Color m_clrOverlay; // 0x870 + Color m_clrOverlay; // 0xcf8 // MNetworkEnable - bool m_bOn; // 0x874 + bool m_bOn; // 0xcfc // MNetworkEnable - bool m_bmaxColor; // 0x875 + bool m_bmaxColor; // 0xcfd private: - [[maybe_unused]] uint8_t __pad0876[0x2]; // 0x876 + [[maybe_unused]] uint8_t __pad0cfe[0x2]; // 0xcfe public: // MNetworkEnable // MNetworkBitCount "10" - float m_flSize; // 0x878 + float m_flSize; // 0xd00 // MNetworkEnable // MNetworkBitCount "10" - float m_flHazeScale; // 0x87c + float m_flHazeScale; // 0xd04 // MNetworkEnable - // MNetworkMinValue "-360.000000" - // MNetworkMaxValue "360.000000" - float m_flRotation; // 0x880 + // MNetworkMinValue "-360" + // MNetworkMaxValue "360" + float m_flRotation; // 0xd08 // MNetworkEnable // MNetworkChangeCallback "OnHDRScaleChanged" - float m_flHDRColorScale; // 0x884 + float m_flHDRColorScale; // 0xd0c // MNetworkEnable - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "2.000000" - float m_flAlphaHaze; // 0x888 + // MNetworkMinValue "0" + // MNetworkMaxValue "2" + float m_flAlphaHaze; // 0xd10 // MNetworkEnable - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "2.000000" - float m_flAlphaScale; // 0x88c + // MNetworkMinValue "0" + // MNetworkMaxValue "2" + float m_flAlphaScale; // 0xd14 // MNetworkEnable - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "2.000000" - float m_flAlphaHdr; // 0x890 + // MNetworkMinValue "0" + // MNetworkMaxValue "2" + float m_flAlphaHdr; // 0xd18 // MNetworkEnable - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "1.000000" - float m_flFarZScale; // 0x894 + // MNetworkMinValue "0" + // MNetworkMaxValue "1" + float m_flFarZScale; // 0xd1c }; // Alignment: 2 -// Size: 0x840 +// Size: 0xcc8 class C_BaseTrigger : public C_BaseToggle { public: // MNetworkEnable - bool m_bDisabled; // 0x838 + bool m_bDisabled; // 0xcc0 // MNetworkEnable - bool m_bClientSidePredicted; // 0x839 + bool m_bClientSidePredicted; // 0xcc1 }; // Alignment: 0 -// Size: 0x838 +// Size: 0xcc0 class C_TriggerVolume : public C_BaseModelEntity { public: @@ -6169,29 +6080,17 @@ public: }; // Alignment: 0 -// Size: 0x840 +// Size: 0xcc8 class C_TriggerLerpObject : public C_BaseTrigger { public: // No members available }; -// Alignment: 2 -// Size: 0x890 -class C_TriggerBuoyancy : public C_BaseTrigger -{ -public: - CBuoyancyHelper m_BuoyancyHelper; // 0x840 - // MNetworkEnable - float m_flFluidDensity; // 0x888 -}; - // Alignment: 13 // Size: 0x30 class CClientAlphaProperty : public IClientAlphaProperty { -private: - [[maybe_unused]] uint8_t __pad0008[0x8]; // 0x8 public: uint8_t m_nRenderFX; // 0x10 uint8_t m_nRenderMode; // 0x11 @@ -6213,124 +6112,122 @@ public: }; // Alignment: 24 -// Size: 0x8f8 +// Size: 0xd80 class C_Beam : public C_BaseModelEntity { public: // MNetworkEnable // MNetworkBitCount "10" - // MNetworkMinValue "-25.000000" - // MNetworkMaxValue "25.000000" + // MNetworkMinValue "-25" + // MNetworkMaxValue "25" // MNetworkEncodeFlags - float m_flFrameRate; // 0x838 + float m_flFrameRate; // 0xcc0 // MNetworkEnable - float m_flHDRColorScale; // 0x83c - GameTime_t m_flFireTime; // 0x840 - float m_flDamage; // 0x844 + float m_flHDRColorScale; // 0xcc4 + GameTime_t m_flFireTime; // 0xcc8 + float m_flDamage; // 0xccc // MNetworkEnable - uint8_t m_nNumBeamEnts; // 0x848 + uint8_t m_nNumBeamEnts; // 0xcd0 private: - [[maybe_unused]] uint8_t __pad0849[0x3]; // 0x849 + [[maybe_unused]] uint8_t __pad0cd1[0x3]; // 0xcd1 public: - int32_t m_queryHandleHalo; // 0x84c + int32_t m_queryHandleHalo; // 0xcd4 private: - [[maybe_unused]] uint8_t __pad0850[0x20]; // 0x850 + [[maybe_unused]] uint8_t __pad0cd8[0x20]; // 0xcd8 public: // MNetworkEnable - CStrongHandle< InfoForResourceTypeIMaterial2 > m_hBaseMaterial; // 0x870 + CStrongHandle< InfoForResourceTypeIMaterial2 > m_hBaseMaterial; // 0xcf8 // MNetworkEnable - CStrongHandle< InfoForResourceTypeIMaterial2 > m_nHaloIndex; // 0x878 + CStrongHandle< InfoForResourceTypeIMaterial2 > m_nHaloIndex; // 0xd00 // MNetworkEnable - BeamType_t m_nBeamType; // 0x880 + BeamType_t m_nBeamType; // 0xd08 // MNetworkEnable - uint32_t m_nBeamFlags; // 0x884 + uint32_t m_nBeamFlags; // 0xd0c // MNetworkEnable - CHandle< C_BaseEntity > m_hAttachEntity[10]; // 0x888 + CHandle< C_BaseEntity > m_hAttachEntity[10]; // 0xd10 // MNetworkEnable - AttachmentHandle_t m_nAttachIndex[10]; // 0x8b0 + AttachmentHandle_t m_nAttachIndex[10]; // 0xd38 private: - [[maybe_unused]] uint8_t __pad08ba[0x2]; // 0x8ba + [[maybe_unused]] uint8_t __pad0d42[0x2]; // 0xd42 public: // MNetworkEnable // MNetworkBitCount "10" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "102.300003" + // MNetworkMinValue "0" + // MNetworkMaxValue "102.3" // MNetworkEncodeFlags - float m_fWidth; // 0x8bc + float m_fWidth; // 0xd44 // MNetworkEnable // MNetworkBitCount "10" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "102.300003" + // MNetworkMinValue "0" + // MNetworkMaxValue "102.3" // MNetworkEncodeFlags - float m_fEndWidth; // 0x8c0 + float m_fEndWidth; // 0xd48 // MNetworkEnable - float m_fFadeLength; // 0x8c4 + float m_fFadeLength; // 0xd4c // MNetworkEnable - float m_fHaloScale; // 0x8c8 + float m_fHaloScale; // 0xd50 // MNetworkEnable // MNetworkBitCount "8" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "64.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "64" // MNetworkEncodeFlags - float m_fAmplitude; // 0x8cc + float m_fAmplitude; // 0xd54 // MNetworkEnable // MNetworkBitCount "8" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "256.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "256" // MNetworkEncodeFlags - float m_fStartFrame; // 0x8d0 + float m_fStartFrame; // 0xd58 // MNetworkEnable // MNetworkBitCount "8" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "100.000000" - float m_fSpeed; // 0x8d4 + // MNetworkMinValue "0" + // MNetworkMaxValue "100" + float m_fSpeed; // 0xd5c // MNetworkEnable // MNetworkBitCount "20" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "256.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "256" // MNetworkEncodeFlags // MNetworkPriority "32" - float m_flFrame; // 0x8d8 + float m_flFrame; // 0xd60 // MNetworkEnable - BeamClipStyle_t m_nClipStyle; // 0x8dc + BeamClipStyle_t m_nClipStyle; // 0xd64 // MNetworkEnable - bool m_bTurnedOff; // 0x8e0 + bool m_bTurnedOff; // 0xd68 private: - [[maybe_unused]] uint8_t __pad08e1[0x3]; // 0x8e1 + [[maybe_unused]] uint8_t __pad0d69[0x3]; // 0xd69 public: // MNetworkEnable // MNetworkEncoder - Vector m_vecEndPos; // 0x8e4 - CHandle< C_BaseEntity > m_hEndEntity; // 0x8f0 + Vector m_vecEndPos; // 0xd6c + CHandle< C_BaseEntity > m_hEndEntity; // 0xd78 }; // Alignment: 9 -// Size: 0x890 +// Size: 0xd18 class C_FuncLadder : public C_BaseModelEntity { public: // MNetworkEnable // MNetworkEncoder - Vector m_vecLadderDir; // 0x838 + Vector m_vecLadderDir; // 0xcc0 private: - [[maybe_unused]] uint8_t __pad0844[0x4]; // 0x844 + [[maybe_unused]] uint8_t __pad0ccc[0x4]; // 0xccc public: - CUtlVector< CHandle< C_InfoLadderDismount > > m_Dismounts; // 0x848 - Vector m_vecLocalTop; // 0x860 + CUtlVector< CHandle< C_InfoLadderDismount > > m_Dismounts; // 0xcd0 + Vector m_vecLocalTop; // 0xce8 // MNetworkEnable // MNetworkEncoder - Vector m_vecPlayerMountPositionTop; // 0x86c + Vector m_vecPlayerMountPositionTop; // 0xcf4 // MNetworkEnable // MNetworkEncoder - Vector m_vecPlayerMountPositionBottom; // 0x878 + Vector m_vecPlayerMountPositionBottom; // 0xd00 // MNetworkEnable - float m_flAutoRideSpeed; // 0x884 - bool m_bDisabled; // 0x888 + float m_flAutoRideSpeed; // 0xd0c + bool m_bDisabled; // 0xd10 // MNetworkEnable - bool m_bFakeLadder; // 0x889 - bool m_bHasSlack; // 0x88a - - // Static fields: + bool m_bFakeLadder; // 0xd11 + bool m_bHasSlack; // 0xd12 static CUtlVector< C_FuncLadder* > &Get_s_Ladders(){return *reinterpret_cast*>(interfaces::g_schema->FindTypeScopeForModule("client.dll")->FindDeclaredClass("C_FuncLadder")->m_static_fields[0]->m_instance);}; }; @@ -6355,80 +6252,78 @@ public: }; // Alignment: 24 -// Size: 0x968 +// Size: 0xdf0 class C_Sprite : public C_BaseModelEntity { -private: - [[maybe_unused]] uint8_t __pad0838[0x18]; // 0x838 public: // MNetworkEnable - CStrongHandle< InfoForResourceTypeIMaterial2 > m_hSpriteMaterial; // 0x850 + CStrongHandle< InfoForResourceTypeIMaterial2 > m_hSpriteMaterial; // 0xcd8 // MNetworkEnable - CHandle< C_BaseEntity > m_hAttachedToEntity; // 0x858 + CHandle< C_BaseEntity > m_hAttachedToEntity; // 0xce0 // MNetworkEnable - AttachmentHandle_t m_nAttachment; // 0x85c + AttachmentHandle_t m_nAttachment; // 0xce4 private: - [[maybe_unused]] uint8_t __pad085d[0x3]; // 0x85d + [[maybe_unused]] uint8_t __pad0ce5[0x3]; // 0xce5 public: // MNetworkEnable // MNetworkBitCount "8" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "60.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "60" // MNetworkEncodeFlags - float m_flSpriteFramerate; // 0x860 + float m_flSpriteFramerate; // 0xce8 // MNetworkEnable // MNetworkBitCount "20" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "256.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "256" // MNetworkEncodeFlags - float m_flFrame; // 0x864 - GameTime_t m_flDieTime; // 0x868 + float m_flFrame; // 0xcec + GameTime_t m_flDieTime; // 0xcf0 private: - [[maybe_unused]] uint8_t __pad086c[0xc]; // 0x86c + [[maybe_unused]] uint8_t __pad0cf4[0xc]; // 0xcf4 public: // MNetworkEnable - uint32_t m_nBrightness; // 0x878 + uint32_t m_nBrightness; // 0xd00 // MNetworkEnable - float m_flBrightnessDuration; // 0x87c + float m_flBrightnessDuration; // 0xd04 // MNetworkEnable // MNetworkChangeCallback "OnSpriteScaleChanged" - float m_flSpriteScale; // 0x880 + float m_flSpriteScale; // 0xd08 // MNetworkEnable - float m_flScaleDuration; // 0x884 + float m_flScaleDuration; // 0xd0c // MNetworkEnable - bool m_bWorldSpaceScale; // 0x888 + bool m_bWorldSpaceScale; // 0xd10 private: - [[maybe_unused]] uint8_t __pad0889[0x3]; // 0x889 + [[maybe_unused]] uint8_t __pad0d11[0x3]; // 0xd11 public: // MNetworkEnable // MNetworkBitCount "6" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "64.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "64" // MNetworkEncodeFlags - float m_flGlowProxySize; // 0x88c + float m_flGlowProxySize; // 0xd14 // MNetworkEnable - float m_flHDRColorScale; // 0x890 - GameTime_t m_flLastTime; // 0x894 - float m_flMaxFrame; // 0x898 - float m_flStartScale; // 0x89c - float m_flDestScale; // 0x8a0 - GameTime_t m_flScaleTimeStart; // 0x8a4 - int32_t m_nStartBrightness; // 0x8a8 - int32_t m_nDestBrightness; // 0x8ac - GameTime_t m_flBrightnessTimeStart; // 0x8b0 + float m_flHDRColorScale; // 0xd18 + GameTime_t m_flLastTime; // 0xd1c + float m_flMaxFrame; // 0xd20 + float m_flStartScale; // 0xd24 + float m_flDestScale; // 0xd28 + GameTime_t m_flScaleTimeStart; // 0xd2c + int32_t m_nStartBrightness; // 0xd30 + int32_t m_nDestBrightness; // 0xd34 + GameTime_t m_flBrightnessTimeStart; // 0xd38 private: - [[maybe_unused]] uint8_t __pad08b4[0x4]; // 0x8b4 + [[maybe_unused]] uint8_t __pad0d3c[0x4]; // 0xd3c public: - CWeakHandle< InfoForResourceTypeIMaterial2 > m_hOldSpriteMaterial; // 0x8b8 + CWeakHandle< InfoForResourceTypeIMaterial2 > m_hOldSpriteMaterial; // 0xd40 private: - [[maybe_unused]] uint8_t __pad08c0[0xa0]; // 0x8c0 + [[maybe_unused]] uint8_t __pad0d48[0xa0]; // 0xd48 public: - int32_t m_nSpriteWidth; // 0x960 - int32_t m_nSpriteHeight; // 0x964 + int32_t m_nSpriteWidth; // 0xde8 + int32_t m_nSpriteHeight; // 0xdec }; // Alignment: 0 -// Size: 0x968 +// Size: 0xdf0 class C_SpriteOriented : public C_Sprite { public: @@ -6436,240 +6331,232 @@ public: }; // Alignment: 4 -// Size: 0x868 +// Size: 0xcf0 class C_BaseClientUIEntity : public C_BaseModelEntity { -private: - [[maybe_unused]] uint8_t __pad0838[0x8]; // 0x838 public: // MNetworkEnable - bool m_bEnabled; // 0x840 + bool m_bEnabled; // 0xcc8 private: - [[maybe_unused]] uint8_t __pad0841[0x7]; // 0x841 + [[maybe_unused]] uint8_t __pad0cc9[0x7]; // 0xcc9 public: // MNetworkEnable - CUtlSymbolLarge m_DialogXMLName; // 0x848 + CUtlSymbolLarge m_DialogXMLName; // 0xcd0 // MNetworkEnable - CUtlSymbolLarge m_PanelClassName; // 0x850 + CUtlSymbolLarge m_PanelClassName; // 0xcd8 // MNetworkEnable - CUtlSymbolLarge m_PanelID; // 0x858 + CUtlSymbolLarge m_PanelID; // 0xce0 }; // Alignment: 2 -// Size: 0x870 +// Size: 0xcf8 class C_PointClientUIDialog : public C_BaseClientUIEntity { public: // MNetworkEnable // MNetworkChangeCallback "OnDialogActivatorChanged" - CHandle< C_BaseEntity > m_hActivator; // 0x868 - bool m_bStartEnabled; // 0x86c + CHandle< C_BaseEntity > m_hActivator; // 0xcf0 + bool m_bStartEnabled; // 0xcf4 }; // Alignment: 13 -// Size: 0xa40 +// Size: 0xec8 class C_PointClientUIHUD : public C_BaseClientUIEntity { -private: - [[maybe_unused]] uint8_t __pad0868[0x8]; // 0x868 public: - bool m_bCheckCSSClasses; // 0x870 + bool m_bCheckCSSClasses; // 0xcf8 private: - [[maybe_unused]] uint8_t __pad0871[0x187]; // 0x871 + [[maybe_unused]] uint8_t __pad0cf9[0x187]; // 0xcf9 public: // MNetworkEnable - bool m_bIgnoreInput; // 0x9f8 + bool m_bIgnoreInput; // 0xe80 private: - [[maybe_unused]] uint8_t __pad09f9[0x3]; // 0x9f9 + [[maybe_unused]] uint8_t __pad0e81[0x3]; // 0xe81 public: // MNetworkEnable - float m_flWidth; // 0x9fc + float m_flWidth; // 0xe84 // MNetworkEnable - float m_flHeight; // 0xa00 + float m_flHeight; // 0xe88 // MNetworkEnable - float m_flDPI; // 0xa04 + float m_flDPI; // 0xe8c // MNetworkEnable - float m_flInteractDistance; // 0xa08 + float m_flInteractDistance; // 0xe90 // MNetworkEnable - float m_flDepthOffset; // 0xa0c + float m_flDepthOffset; // 0xe94 // MNetworkEnable - uint32_t m_unOwnerContext; // 0xa10 + uint32_t m_unOwnerContext; // 0xe98 // MNetworkEnable - uint32_t m_unHorizontalAlign; // 0xa14 + uint32_t m_unHorizontalAlign; // 0xe9c // MNetworkEnable - uint32_t m_unVerticalAlign; // 0xa18 + uint32_t m_unVerticalAlign; // 0xea0 // MNetworkEnable - uint32_t m_unOrientation; // 0xa1c + uint32_t m_unOrientation; // 0xea4 // MNetworkEnable - bool m_bAllowInteractionFromAllSceneWorlds; // 0xa20 + bool m_bAllowInteractionFromAllSceneWorlds; // 0xea8 private: - [[maybe_unused]] uint8_t __pad0a21[0x7]; // 0xa21 + [[maybe_unused]] uint8_t __pad0ea9[0x7]; // 0xea9 public: // MNetworkEnable - C_NetworkUtlVectorBase< CUtlSymbolLarge > m_vecCSSClasses; // 0xa28 + C_NetworkUtlVectorBase< CUtlSymbolLarge > m_vecCSSClasses; // 0xeb0 }; // Alignment: 28 -// Size: 0xaa0 +// Size: 0xf20 class C_PointClientUIWorldPanel : public C_BaseClientUIEntity { -private: - [[maybe_unused]] uint8_t __pad0868[0x8]; // 0x868 public: - bool m_bForceRecreateNextUpdate; // 0x870 - bool m_bMoveViewToPlayerNextThink; // 0x871 - bool m_bCheckCSSClasses; // 0x872 + bool m_bForceRecreateNextUpdate; // 0xcf8 + bool m_bMoveViewToPlayerNextThink; // 0xcf9 + bool m_bCheckCSSClasses; // 0xcfa private: - [[maybe_unused]] uint8_t __pad0873[0xd]; // 0x873 + [[maybe_unused]] uint8_t __pad0cfb[0x5]; // 0xcfb public: - CTransform m_anchorDeltaTransform; // 0x880 + CTransform m_anchorDeltaTransform; // 0xd00 private: - [[maybe_unused]] uint8_t __pad08a0[0x180]; // 0x8a0 + [[maybe_unused]] uint8_t __pad0d20[0x180]; // 0xd20 public: - CPointOffScreenIndicatorUi* m_pOffScreenIndicator; // 0xa20 + CPointOffScreenIndicatorUi* m_pOffScreenIndicator; // 0xea0 private: - [[maybe_unused]] uint8_t __pad0a28[0x20]; // 0xa28 + [[maybe_unused]] uint8_t __pad0ea8[0x20]; // 0xea8 public: // MNetworkEnable - bool m_bIgnoreInput; // 0xa48 + bool m_bIgnoreInput; // 0xec8 // MNetworkEnable - bool m_bLit; // 0xa49 + bool m_bLit; // 0xec9 // MNetworkEnable - bool m_bFollowPlayerAcrossTeleport; // 0xa4a + bool m_bFollowPlayerAcrossTeleport; // 0xeca private: - [[maybe_unused]] uint8_t __pad0a4b[0x1]; // 0xa4b + [[maybe_unused]] uint8_t __pad0ecb[0x1]; // 0xecb public: // MNetworkEnable - float m_flWidth; // 0xa4c + float m_flWidth; // 0xecc // MNetworkEnable - float m_flHeight; // 0xa50 + float m_flHeight; // 0xed0 // MNetworkEnable - float m_flDPI; // 0xa54 + float m_flDPI; // 0xed4 // MNetworkEnable - float m_flInteractDistance; // 0xa58 + float m_flInteractDistance; // 0xed8 // MNetworkEnable - float m_flDepthOffset; // 0xa5c + float m_flDepthOffset; // 0xedc // MNetworkEnable - uint32_t m_unOwnerContext; // 0xa60 + uint32_t m_unOwnerContext; // 0xee0 // MNetworkEnable - uint32_t m_unHorizontalAlign; // 0xa64 + uint32_t m_unHorizontalAlign; // 0xee4 // MNetworkEnable - uint32_t m_unVerticalAlign; // 0xa68 + uint32_t m_unVerticalAlign; // 0xee8 // MNetworkEnable - uint32_t m_unOrientation; // 0xa6c + uint32_t m_unOrientation; // 0xeec // MNetworkEnable - bool m_bAllowInteractionFromAllSceneWorlds; // 0xa70 + bool m_bAllowInteractionFromAllSceneWorlds; // 0xef0 private: - [[maybe_unused]] uint8_t __pad0a71[0x7]; // 0xa71 + [[maybe_unused]] uint8_t __pad0ef1[0x7]; // 0xef1 public: // MNetworkEnable - C_NetworkUtlVectorBase< CUtlSymbolLarge > m_vecCSSClasses; // 0xa78 + C_NetworkUtlVectorBase< CUtlSymbolLarge > m_vecCSSClasses; // 0xef8 // MNetworkEnable - bool m_bOpaque; // 0xa90 + bool m_bOpaque; // 0xf10 // MNetworkEnable - bool m_bNoDepth; // 0xa91 + bool m_bNoDepth; // 0xf11 // MNetworkEnable - bool m_bRenderBackface; // 0xa92 + bool m_bRenderBackface; // 0xf12 // MNetworkEnable - bool m_bUseOffScreenIndicator; // 0xa93 + bool m_bUseOffScreenIndicator; // 0xf13 // MNetworkEnable - bool m_bExcludeFromSaveGames; // 0xa94 + bool m_bExcludeFromSaveGames; // 0xf14 // MNetworkEnable - bool m_bGrabbable; // 0xa95 + bool m_bGrabbable; // 0xf15 // MNetworkEnable - bool m_bOnlyRenderToTexture; // 0xa96 + bool m_bOnlyRenderToTexture; // 0xf16 // MNetworkEnable - bool m_bDisableMipGen; // 0xa97 + bool m_bDisableMipGen; // 0xf17 // MNetworkEnable - int32_t m_nExplicitImageLayout; // 0xa98 + int32_t m_nExplicitImageLayout; // 0xf18 }; // Alignment: 4 -// Size: 0xab0 +// Size: 0xf30 class CPointOffScreenIndicatorUi : public C_PointClientUIWorldPanel { public: - bool m_bBeenEnabled; // 0xaa0 - bool m_bHide; // 0xaa1 + bool m_bBeenEnabled; // 0xf20 + bool m_bHide; // 0xf21 private: - [[maybe_unused]] uint8_t __pad0aa2[0x2]; // 0xaa2 + [[maybe_unused]] uint8_t __pad0f22[0x2]; // 0xf22 public: - float m_flSeenTargetTime; // 0xaa4 - C_PointClientUIWorldPanel* m_pTargetPanel; // 0xaa8 + float m_flSeenTargetTime; // 0xf24 + C_PointClientUIWorldPanel* m_pTargetPanel; // 0xf28 }; // Alignment: 1 -// Size: 0xca0 +// Size: 0x1120 class C_PointClientUIWorldTextPanel : public C_PointClientUIWorldPanel { public: // MNetworkEnable - char m_messageText[512]; // 0xaa0 + char m_messageText[512]; // 0xf20 }; // Alignment: 14 -// Size: 0xb40 +// Size: 0xfc0 class C_PointHintUi : public C_PointClientUIWorldPanel { -private: - [[maybe_unused]] uint8_t __pad0aa0[0x30]; // 0xaa0 public: - CUtlSymbolLarge m_pszLessonName; // 0xad0 - CUtlSymbolLarge m_pszCaption; // 0xad8 - Vector m_vOffset; // 0xae0 - WorldTextAttachmentType_t m_attachType; // 0xaec - CHandle< C_BaseEntity > m_hIconTarget; // 0xaf0 + CUtlSymbolLarge m_pszLessonName; // 0xf50 + CUtlSymbolLarge m_pszCaption; // 0xf58 + Vector m_vOffset; // 0xf60 + WorldTextAttachmentType_t m_attachType; // 0xf6c + CHandle< C_BaseEntity > m_hIconTarget; // 0xf70 private: - [[maybe_unused]] uint8_t __pad0af4[0x4]; // 0xaf4 + [[maybe_unused]] uint8_t __pad0f74[0x4]; // 0xf74 public: - CUtlSymbolLarge m_szTargetAttachmentName; // 0xaf8 - CUtlSymbolLarge m_pszCustomLayoutFile; // 0xb00 - int32_t m_nTrackedDeviceIndex; // 0xb08 - CHandle< C_PropVRHand > m_hHighlightHand; // 0xb0c - CUtlSymbolLarge m_pszHighlightControllerComponent; // 0xb10 - CUtlSymbolLarge m_pszHighlightControllerAction; // 0xb18 - Vector m_vecLocalHighlightPoint; // 0xb20 + CUtlSymbolLarge m_szTargetAttachmentName; // 0xf78 + CUtlSymbolLarge m_pszCustomLayoutFile; // 0xf80 + int32_t m_nTrackedDeviceIndex; // 0xf88 + CHandle< C_PropVRHand > m_hHighlightHand; // 0xf8c + CUtlSymbolLarge m_pszHighlightControllerComponent; // 0xf90 + CUtlSymbolLarge m_pszHighlightControllerAction; // 0xf98 + Vector m_vecLocalHighlightPoint; // 0xfa0 private: - [[maybe_unused]] uint8_t __pad0b2c[0x4]; // 0xb2c + [[maybe_unused]] uint8_t __pad0fac[0x4]; // 0xfac public: - CUtlSymbolLarge m_pszHighlightOtherEntityName; // 0xb30 - bool m_bUseOffScreenIndicator; // 0xb38 + CUtlSymbolLarge m_pszHighlightOtherEntityName; // 0xfb0 + bool m_bUseOffScreenIndicator; // 0xfb8 }; // Alignment: 9 -// Size: 0x720 +// Size: 0x728 class CInfoOffscreenPanoramaTexture : public C_PointEntity { public: // MNetworkEnable - bool m_bDisabled; // 0x538 + bool m_bDisabled; // 0x540 private: - [[maybe_unused]] uint8_t __pad0539[0x3]; // 0x539 + [[maybe_unused]] uint8_t __pad0541[0x3]; // 0x541 public: // MNetworkEnable - int32_t m_nResolutionX; // 0x53c + int32_t m_nResolutionX; // 0x544 // MNetworkEnable - int32_t m_nResolutionY; // 0x540 + int32_t m_nResolutionY; // 0x548 private: - [[maybe_unused]] uint8_t __pad0544[0x4]; // 0x544 + [[maybe_unused]] uint8_t __pad054c[0x4]; // 0x54c public: // MNetworkEnable - CUtlSymbolLarge m_szLayoutFileName; // 0x548 + CUtlSymbolLarge m_szLayoutFileName; // 0x550 // MNetworkEnable - CUtlSymbolLarge m_RenderAttrName; // 0x550 + CUtlSymbolLarge m_RenderAttrName; // 0x558 // MNetworkEnable - C_NetworkUtlVectorBase< CHandle< C_BaseModelEntity > > m_TargetEntities; // 0x558 + C_NetworkUtlVectorBase< CHandle< C_BaseModelEntity > > m_TargetEntities; // 0x560 // MNetworkEnable - int32_t m_nTargetChangeCount; // 0x570 + int32_t m_nTargetChangeCount; // 0x578 private: - [[maybe_unused]] uint8_t __pad0574[0x4]; // 0x574 + [[maybe_unused]] uint8_t __pad057c[0x4]; // 0x57c public: // MNetworkEnable - C_NetworkUtlVectorBase< CUtlSymbolLarge > m_vecCSSClasses; // 0x578 + C_NetworkUtlVectorBase< CUtlSymbolLarge > m_vecCSSClasses; // 0x580 private: - [[maybe_unused]] uint8_t __pad0590[0x160]; // 0x590 + [[maybe_unused]] uint8_t __pad0598[0x160]; // 0x598 public: - bool m_bCheckCSSClasses; // 0x6f0 + bool m_bCheckCSSClasses; // 0x6f8 }; // Alignment: 3 @@ -6686,161 +6573,175 @@ public: uint64_t m_ullRegisteredAsItemID; // 0x4a0 }; +// Alignment: 2 +// Size: 0xcf8 +class C_TriggerBuoyancy : public C_BaseTrigger +{ +public: + CBuoyancyHelper m_BuoyancyHelper; // 0xcc8 + // MNetworkEnable + float m_flFluidDensity; // 0xcf0 +}; + +// Alignment: 1 +// Size: 0xce8 +class CFuncWater : public C_BaseModelEntity +{ +public: + CBuoyancyHelper m_BuoyancyHelper; // 0xcc0 +}; + // Alignment: 54 -// Size: 0x828 +// Size: 0x848 class CCSPlayerController : public CBasePlayerController { -private: - [[maybe_unused]] uint8_t __pad06a0[0x10]; // 0x6a0 public: // MNetworkEnable - CCSPlayerController_InGameMoneyServices* m_pInGameMoneyServices; // 0x6b0 + CCSPlayerController_InGameMoneyServices* m_pInGameMoneyServices; // 0x6d0 // MNetworkEnable - CCSPlayerController_InventoryServices* m_pInventoryServices; // 0x6b8 + CCSPlayerController_InventoryServices* m_pInventoryServices; // 0x6d8 // MNetworkEnable - CCSPlayerController_ActionTrackingServices* m_pActionTrackingServices; // 0x6c0 + CCSPlayerController_ActionTrackingServices* m_pActionTrackingServices; // 0x6e0 // MNetworkEnable - CCSPlayerController_DamageServices* m_pDamageServices; // 0x6c8 + CCSPlayerController_DamageServices* m_pDamageServices; // 0x6e8 // MNetworkEnable - uint32_t m_iPing; // 0x6d0 + uint32_t m_iPing; // 0x6f0 // MNetworkEnable - bool m_bHasCommunicationAbuseMute; // 0x6d4 + bool m_bHasCommunicationAbuseMute; // 0x6f4 private: - [[maybe_unused]] uint8_t __pad06d5[0x3]; // 0x6d5 + [[maybe_unused]] uint8_t __pad06f5[0x3]; // 0x6f5 public: // MNetworkEnable - CUtlSymbolLarge m_szCrosshairCodes; // 0x6d8 + CUtlSymbolLarge m_szCrosshairCodes; // 0x6f8 // MNetworkEnable - uint8_t m_iPendingTeamNum; // 0x6e0 + uint8_t m_iPendingTeamNum; // 0x700 private: - [[maybe_unused]] uint8_t __pad06e1[0x3]; // 0x6e1 + [[maybe_unused]] uint8_t __pad0701[0x3]; // 0x701 public: // MNetworkEnable - GameTime_t m_flForceTeamTime; // 0x6e4 + GameTime_t m_flForceTeamTime; // 0x704 // MNetworkEnable - int32_t m_iCompTeammateColor; // 0x6e8 + int32_t m_iCompTeammateColor; // 0x708 // MNetworkEnable - bool m_bEverPlayedOnTeam; // 0x6ec + bool m_bEverPlayedOnTeam; // 0x70c private: - [[maybe_unused]] uint8_t __pad06ed[0x3]; // 0x6ed + [[maybe_unused]] uint8_t __pad070d[0x3]; // 0x70d public: - GameTime_t m_flPreviousForceJoinTeamTime; // 0x6f0 + GameTime_t m_flPreviousForceJoinTeamTime; // 0x710 private: - [[maybe_unused]] uint8_t __pad06f4[0x4]; // 0x6f4 + [[maybe_unused]] uint8_t __pad0714[0x4]; // 0x714 public: // MNetworkEnable - CUtlSymbolLarge m_szClan; // 0x6f8 - CUtlString m_sSanitizedPlayerName; // 0x700 + CUtlSymbolLarge m_szClan; // 0x718 + CUtlString m_sSanitizedPlayerName; // 0x720 // MNetworkEnable - int32_t m_iCoachingTeam; // 0x708 + int32_t m_iCoachingTeam; // 0x728 private: - [[maybe_unused]] uint8_t __pad070c[0x4]; // 0x70c + [[maybe_unused]] uint8_t __pad072c[0x4]; // 0x72c public: // MNetworkEnable - uint64_t m_nPlayerDominated; // 0x710 + uint64_t m_nPlayerDominated; // 0x730 // MNetworkEnable - uint64_t m_nPlayerDominatingMe; // 0x718 + uint64_t m_nPlayerDominatingMe; // 0x738 // MNetworkEnable - int32_t m_iCompetitiveRanking; // 0x720 + int32_t m_iCompetitiveRanking; // 0x740 // MNetworkEnable - int32_t m_iCompetitiveWins; // 0x724 + int32_t m_iCompetitiveWins; // 0x744 // MNetworkEnable - int8_t m_iCompetitiveRankType; // 0x728 + int8_t m_iCompetitiveRankType; // 0x748 private: - [[maybe_unused]] uint8_t __pad0729[0x3]; // 0x729 + [[maybe_unused]] uint8_t __pad0749[0x3]; // 0x749 public: // MNetworkEnable - int32_t m_nEndMatchNextMapVote; // 0x72c + int32_t m_nEndMatchNextMapVote; // 0x74c // MNetworkEnable - uint16_t m_unActiveQuestId; // 0x730 + uint16_t m_unActiveQuestId; // 0x750 private: - [[maybe_unused]] uint8_t __pad0732[0x2]; // 0x732 + [[maybe_unused]] uint8_t __pad0752[0x2]; // 0x752 public: // MNetworkEnable - QuestProgress::Reason m_nQuestProgressReason; // 0x734 + QuestProgress::Reason m_nQuestProgressReason; // 0x754 // MNetworkEnable - uint32_t m_unPlayerTvControlFlags; // 0x738 + uint32_t m_unPlayerTvControlFlags; // 0x758 private: - [[maybe_unused]] uint8_t __pad073c[0x6c]; // 0x73c + [[maybe_unused]] uint8_t __pad075c[0x6c]; // 0x75c public: - int32_t m_iDraftIndex; // 0x7a8 - uint32_t m_msQueuedModeDisconnectionTimestamp; // 0x7ac - uint32_t m_uiAbandonRecordedReason; // 0x7b0 - bool m_bEverFullyConnected; // 0x7b4 - bool m_bAbandonAllowsSurrender; // 0x7b5 - bool m_bDisconnection1MinWarningPrinted; // 0x7b6 - bool m_bScoreReported; // 0x7b7 + int32_t m_iDraftIndex; // 0x7c8 + uint32_t m_msQueuedModeDisconnectionTimestamp; // 0x7cc + uint32_t m_uiAbandonRecordedReason; // 0x7d0 + bool m_bEverFullyConnected; // 0x7d4 + bool m_bAbandonAllowsSurrender; // 0x7d5 + bool m_bDisconnection1MinWarningPrinted; // 0x7d6 + bool m_bScoreReported; // 0x7d7 // MNetworkEnable - int32_t m_nDisconnectionTick; // 0x7b8 + int32_t m_nDisconnectionTick; // 0x7d8 private: - [[maybe_unused]] uint8_t __pad07bc[0xc]; // 0x7bc + [[maybe_unused]] uint8_t __pad07dc[0xc]; // 0x7dc public: // MNetworkEnable - bool m_bControllingBot; // 0x7c8 + bool m_bControllingBot; // 0x7e8 // MNetworkEnable - bool m_bHasControlledBotThisRound; // 0x7c9 - bool m_bHasBeenControlledByPlayerThisRound; // 0x7ca + bool m_bHasControlledBotThisRound; // 0x7e9 + bool m_bHasBeenControlledByPlayerThisRound; // 0x7ea private: - [[maybe_unused]] uint8_t __pad07cb[0x1]; // 0x7cb + [[maybe_unused]] uint8_t __pad07eb[0x1]; // 0x7eb public: - int32_t m_nBotsControlledThisRound; // 0x7cc + int32_t m_nBotsControlledThisRound; // 0x7ec // MNetworkEnable - bool m_bCanControlObservedBot; // 0x7d0 + bool m_bCanControlObservedBot; // 0x7f0 private: - [[maybe_unused]] uint8_t __pad07d1[0x3]; // 0x7d1 + [[maybe_unused]] uint8_t __pad07f1[0x3]; // 0x7f1 public: // MNetworkEnable - CHandle< C_CSPlayerPawn > m_hPlayerPawn; // 0x7d4 + CHandle< C_CSPlayerPawn > m_hPlayerPawn; // 0x7f4 // MNetworkEnable - CHandle< C_CSObserverPawn > m_hObserverPawn; // 0x7d8 + CHandle< C_CSObserverPawn > m_hObserverPawn; // 0x7f8 // MNetworkEnable - bool m_bPawnIsAlive; // 0x7dc + bool m_bPawnIsAlive; // 0x7fc private: - [[maybe_unused]] uint8_t __pad07dd[0x3]; // 0x7dd + [[maybe_unused]] uint8_t __pad07fd[0x3]; // 0x7fd public: // MNetworkEnable - uint32_t m_iPawnHealth; // 0x7e0 + uint32_t m_iPawnHealth; // 0x800 // MNetworkEnable - int32_t m_iPawnArmor; // 0x7e4 + int32_t m_iPawnArmor; // 0x804 // MNetworkEnable - bool m_bPawnHasDefuser; // 0x7e8 + bool m_bPawnHasDefuser; // 0x808 // MNetworkEnable - bool m_bPawnHasHelmet; // 0x7e9 + bool m_bPawnHasHelmet; // 0x809 // MNetworkEnable - uint16_t m_nPawnCharacterDefIndex; // 0x7ea + uint16_t m_nPawnCharacterDefIndex; // 0x80a // MNetworkEnable - int32_t m_iPawnLifetimeStart; // 0x7ec + int32_t m_iPawnLifetimeStart; // 0x80c // MNetworkEnable - int32_t m_iPawnLifetimeEnd; // 0x7f0 + int32_t m_iPawnLifetimeEnd; // 0x810 // MNetworkEnable - int32_t m_iPawnGunGameLevel; // 0x7f4 + int32_t m_iPawnGunGameLevel; // 0x814 // MNetworkEnable - int32_t m_iPawnBotDifficulty; // 0x7f8 + int32_t m_iPawnBotDifficulty; // 0x818 // MNetworkEnable - CHandle< CCSPlayerController > m_hOriginalControllerOfCurrentPawn; // 0x7fc + CHandle< CCSPlayerController > m_hOriginalControllerOfCurrentPawn; // 0x81c // MNetworkEnable - int32_t m_iScore; // 0x800 + int32_t m_iScore; // 0x820 private: - [[maybe_unused]] uint8_t __pad0804[0x4]; // 0x804 + [[maybe_unused]] uint8_t __pad0824[0x4]; // 0x824 public: // MNetworkEnable - C_NetworkUtlVectorBase< EKillTypes_t > m_vecKills; // 0x808 + C_NetworkUtlVectorBase< EKillTypes_t > m_vecKills; // 0x828 // MNetworkEnable - int32_t m_iMVPs; // 0x820 - bool m_bIsPlayerNameDirty; // 0x824 + int32_t m_iMVPs; // 0x840 + bool m_bIsPlayerNameDirty; // 0x844 }; // Alignment: 2 -// Size: 0x850 +// Size: 0xcd8 class C_FootstepControl : public C_BaseTrigger { public: // MNetworkEnable - CUtlSymbolLarge m_source; // 0x840 + CUtlSymbolLarge m_source; // 0xcc8 // MNetworkEnable - CUtlSymbolLarge m_destination; // 0x848 - - // Static fields: + CUtlSymbolLarge m_destination; // 0xcd0 static CUtlVector< C_FootstepControl* > &Get_sm_footstepControllers(){return *reinterpret_cast*>(interfaces::g_schema->FindTypeScopeForModule("client.dll")->FindDeclaredClass("C_FootstepControl")->m_static_fields[0]->m_instance);}; }; @@ -6969,7 +6870,7 @@ public: }; // Alignment: 0 -// Size: 0x538 +// Size: 0x540 class C_InfoInstructorHintHostageRescueZone : public C_PointEntity { public: @@ -6977,378 +6878,376 @@ public: }; // Alignment: 16 -// Size: 0x948 +// Size: 0xdd0 class C_PlayerSprayDecal : public C_ModelPointEntity { public: // MNetworkEnable - int32_t m_nUniqueID; // 0x838 + int32_t m_nUniqueID; // 0xcc0 // MNetworkEnable - uint32_t m_unAccountID; // 0x83c + uint32_t m_unAccountID; // 0xcc4 // MNetworkEnable - uint32_t m_unTraceID; // 0x840 + uint32_t m_unTraceID; // 0xcc8 // MNetworkEnable - uint32_t m_rtGcTime; // 0x844 + uint32_t m_rtGcTime; // 0xccc // MNetworkEnable - Vector m_vecEndPos; // 0x848 + Vector m_vecEndPos; // 0xcd0 // MNetworkEnable - Vector m_vecStart; // 0x854 + Vector m_vecStart; // 0xcdc // MNetworkEnable - Vector m_vecLeft; // 0x860 + Vector m_vecLeft; // 0xce8 // MNetworkEnable - Vector m_vecNormal; // 0x86c + Vector m_vecNormal; // 0xcf4 // MNetworkEnable - int32_t m_nPlayer; // 0x878 + int32_t m_nPlayer; // 0xd00 // MNetworkEnable - int32_t m_nEntity; // 0x87c + int32_t m_nEntity; // 0xd04 // MNetworkEnable - int32_t m_nHitbox; // 0x880 + int32_t m_nHitbox; // 0xd08 // MNetworkEnable - float m_flCreationTime; // 0x884 + float m_flCreationTime; // 0xd0c // MNetworkEnable - int32_t m_nTintID; // 0x888 + int32_t m_nTintID; // 0xd10 // MNetworkEnable - uint8_t m_nVersion; // 0x88c + uint8_t m_nVersion; // 0xd14 // MNetworkEnable - uint8_t m_ubSignature[128]; // 0x88d + uint8_t m_ubSignature[128]; // 0xd15 private: - [[maybe_unused]] uint8_t __pad090d[0xb]; // 0x90d + [[maybe_unused]] uint8_t __pad0d95[0xb]; // 0xd95 public: - CPlayerSprayDecalRenderHelper m_SprayRenderHelper; // 0x918 + CPlayerSprayDecalRenderHelper m_SprayRenderHelper; // 0xda0 }; // Alignment: 8 -// Size: 0x880 +// Size: 0xd08 class C_FuncConveyor : public C_BaseModelEntity { -private: - [[maybe_unused]] uint8_t __pad0838[0x8]; // 0x838 public: // MNetworkEnable - Vector m_vecMoveDirEntitySpace; // 0x840 + Vector m_vecMoveDirEntitySpace; // 0xcc8 // MNetworkEnable - float m_flTargetSpeed; // 0x84c + float m_flTargetSpeed; // 0xcd4 // MNetworkEnable - GameTick_t m_nTransitionStartTick; // 0x850 + GameTick_t m_nTransitionStartTick; // 0xcd8 // MNetworkEnable - int32_t m_nTransitionDurationTicks; // 0x854 + int32_t m_nTransitionDurationTicks; // 0xcdc // MNetworkEnable - float m_flTransitionStartSpeed; // 0x858 + float m_flTransitionStartSpeed; // 0xce0 private: - [[maybe_unused]] uint8_t __pad085c[0x4]; // 0x85c + [[maybe_unused]] uint8_t __pad0ce4[0x4]; // 0xce4 public: // MNetworkEnable - C_NetworkUtlVectorBase< CHandle< C_BaseEntity > > m_hConveyorModels; // 0x860 - float m_flCurrentConveyorOffset; // 0x878 - float m_flCurrentConveyorSpeed; // 0x87c + C_NetworkUtlVectorBase< CHandle< C_BaseEntity > > m_hConveyorModels; // 0xce8 + float m_flCurrentConveyorOffset; // 0xd00 + float m_flCurrentConveyorSpeed; // 0xd04 }; // Alignment: 2 -// Size: 0x898 +// Size: 0xd20 class CGrenadeTracer : public C_BaseModelEntity { -private: - [[maybe_unused]] uint8_t __pad0838[0x20]; // 0x838 public: - float m_flTracerDuration; // 0x858 - GrenadeType_t m_nType; // 0x85c - - // Static fields: + float m_flTracerDuration; // 0xce0 + GrenadeType_t m_nType; // 0xce4 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 -// Size: 0x7e20 +// Size: -0x7d60 class C_Inferno : public C_BaseModelEntity { -private: - [[maybe_unused]] uint8_t __pad0838[0x40]; // 0x838 public: - ParticleIndex_t m_nfxFireDamageEffect; // 0x878 + ParticleIndex_t m_nfxFireDamageEffect; // 0xd00 // MNetworkEnable - int32_t m_fireXDelta[64]; // 0x87c + int32_t m_fireXDelta[64]; // 0xd04 // MNetworkEnable - int32_t m_fireYDelta[64]; // 0x97c + int32_t m_fireYDelta[64]; // 0xe04 // MNetworkEnable - int32_t m_fireZDelta[64]; // 0xa7c + int32_t m_fireZDelta[64]; // 0xf04 // MNetworkEnable - int32_t m_fireParentXDelta[64]; // 0xb7c + int32_t m_fireParentXDelta[64]; // 0x1004 // MNetworkEnable - int32_t m_fireParentYDelta[64]; // 0xc7c + int32_t m_fireParentYDelta[64]; // 0x1104 // MNetworkEnable - int32_t m_fireParentZDelta[64]; // 0xd7c + int32_t m_fireParentZDelta[64]; // 0x1204 // MNetworkEnable - bool m_bFireIsBurning[64]; // 0xe7c + bool m_bFireIsBurning[64]; // 0x1304 // MNetworkEnable - Vector m_BurnNormal[64]; // 0xebc + Vector m_BurnNormal[64]; // 0x1344 // MNetworkEnable - int32_t m_fireCount; // 0x11bc + int32_t m_fireCount; // 0x1644 // MNetworkEnable - int32_t m_nInfernoType; // 0x11c0 + int32_t m_nInfernoType; // 0x1648 // MNetworkEnable - float m_nFireLifetime; // 0x11c4 + float m_nFireLifetime; // 0x164c // MNetworkEnable - bool m_bInPostEffectTime; // 0x11c8 + bool m_bInPostEffectTime; // 0x1650 private: - [[maybe_unused]] uint8_t __pad11c9[0x3]; // 0x11c9 + [[maybe_unused]] uint8_t __pad1651[0x3]; // 0x1651 public: - int32_t m_lastFireCount; // 0x11cc + int32_t m_lastFireCount; // 0x1654 // MNetworkEnable - int32_t m_nFireEffectTickBegin; // 0x11d0 + int32_t m_nFireEffectTickBegin; // 0x1658 private: - [[maybe_unused]] uint8_t __pad11d4[0x6c0c]; // 0x11d4 + [[maybe_unused]] uint8_t __pad165c[0x6c04]; // 0x165c public: - int32_t m_drawableCount; // 0x7de0 - bool m_blosCheck; // 0x7de4 + int32_t m_drawableCount; // 0x8260 + bool m_blosCheck; // 0x8264 private: - [[maybe_unused]] uint8_t __pad7de5[0x3]; // 0x7de5 + [[maybe_unused]] uint8_t __pad8265[0x3]; // 0x8265 public: - int32_t m_nlosperiod; // 0x7de8 - float m_maxFireHalfWidth; // 0x7dec - float m_maxFireHeight; // 0x7df0 - Vector m_minBounds; // 0x7df4 - Vector m_maxBounds; // 0x7e00 - float m_flLastGrassBurnThink; // 0x7e0c + int32_t m_nlosperiod; // 0x8268 + float m_maxFireHalfWidth; // 0x826c + float m_maxFireHeight; // 0x8270 + Vector m_minBounds; // 0x8274 + Vector m_maxBounds; // 0x8280 + float m_flLastGrassBurnThink; // 0x828c }; // Alignment: 0 -// Size: 0x7e20 +// Size: -0x7d60 class C_FireCrackerBlast : public C_Inferno { public: // No members available }; -// Alignment: 49 -// Size: 0xa70 +// Alignment: 51 +// Size: 0xf08 class C_BarnLight : public C_BaseModelEntity { public: // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - bool m_bEnabled; // 0x838 + bool m_bEnabled; // 0xcc0 private: - [[maybe_unused]] uint8_t __pad0839[0x3]; // 0x839 + [[maybe_unused]] uint8_t __pad0cc1[0x3]; // 0xcc1 public: // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - int32_t m_nColorMode; // 0x83c + int32_t m_nColorMode; // 0xcc4 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - Color m_Color; // 0x840 + Color m_Color; // 0xcc8 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flColorTemperature; // 0x844 + float m_flColorTemperature; // 0xccc // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flBrightness; // 0x848 + float m_flBrightness; // 0xcd0 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flBrightnessScale; // 0x84c + float m_flBrightnessScale; // 0xcd4 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - int32_t m_nDirectLight; // 0x850 + int32_t m_nDirectLight; // 0xcd8 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - int32_t m_nBakedShadowIndex; // 0x854 + int32_t m_nBakedShadowIndex; // 0xcdc // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - int32_t m_nLuminaireShape; // 0x858 + int32_t m_nLuminaireShape; // 0xce0 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flLuminaireSize; // 0x85c + float m_flLuminaireSize; // 0xce4 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flLuminaireAnisotropy; // 0x860 + float m_flLuminaireAnisotropy; // 0xce8 private: - [[maybe_unused]] uint8_t __pad0864[0x4]; // 0x864 + [[maybe_unused]] uint8_t __pad0cec[0x4]; // 0xcec public: // MNetworkEnable // MNetworkChangeCallback "StyleChanged" - CUtlString m_LightStyleString; // 0x868 + CUtlString m_LightStyleString; // 0xcf0 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - GameTime_t m_flLightStyleStartTime; // 0x870 + GameTime_t m_flLightStyleStartTime; // 0xcf8 private: - [[maybe_unused]] uint8_t __pad0874[0x4]; // 0x874 + [[maybe_unused]] uint8_t __pad0cfc[0x4]; // 0xcfc public: // MNetworkEnable - C_NetworkUtlVectorBase< CUtlString > m_QueuedLightStyleStrings; // 0x878 + C_NetworkUtlVectorBase< CUtlString > m_QueuedLightStyleStrings; // 0xd00 // MNetworkEnable - C_NetworkUtlVectorBase< CUtlString > m_LightStyleEvents; // 0x890 + C_NetworkUtlVectorBase< CUtlString > m_LightStyleEvents; // 0xd18 // MNetworkEnable - C_NetworkUtlVectorBase< CHandle< C_BaseModelEntity > > m_LightStyleTargets; // 0x8a8 - CEntityIOOutput m_StyleEvent[4]; // 0x8c0 + C_NetworkUtlVectorBase< CHandle< C_BaseModelEntity > > m_LightStyleTargets; // 0xd30 + CEntityIOOutput m_StyleEvent[4]; // 0xd48 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightCookie; // 0x960 + CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightCookie; // 0xde8 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flShape; // 0x968 + float m_flShape; // 0xdf0 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flSoftX; // 0x96c + float m_flSoftX; // 0xdf4 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flSoftY; // 0x970 + float m_flSoftY; // 0xdf8 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flSkirt; // 0x974 + float m_flSkirt; // 0xdfc // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flSkirtNear; // 0x978 + float m_flSkirtNear; // 0xe00 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" // MNetworkBitCount "32" - Vector m_vSizeParams; // 0x97c + Vector m_vSizeParams; // 0xe04 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" // MNetworkBitCount "32" - float m_flRange; // 0x988 + float m_flRange; // 0xe10 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" // MNetworkBitCount "32" - Vector m_vShear; // 0x98c + Vector m_vShear; // 0xe14 // MNetworkEnable - int32_t m_nBakeSpecularToCubemaps; // 0x998 + int32_t m_nBakeSpecularToCubemaps; // 0xe20 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" // MNetworkBitCount "32" - Vector m_vBakeSpecularToCubemapsSize; // 0x99c + Vector m_vBakeSpecularToCubemapsSize; // 0xe24 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - int32_t m_nCastShadows; // 0x9a8 + int32_t m_nCastShadows; // 0xe30 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - int32_t m_nShadowMapSize; // 0x9ac + int32_t m_nShadowMapSize; // 0xe34 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - int32_t m_nShadowPriority; // 0x9b0 + int32_t m_nShadowPriority; // 0xe38 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - bool m_bContactShadow; // 0x9b4 + bool m_bContactShadow; // 0xe3c private: - [[maybe_unused]] uint8_t __pad09b5[0x3]; // 0x9b5 + [[maybe_unused]] uint8_t __pad0e3d[0x3]; // 0xe3d public: // MNetworkEnable - int32_t m_nBounceLight; // 0x9b8 + int32_t m_nBounceLight; // 0xe40 // MNetworkEnable - float m_flBounceScale; // 0x9bc + float m_flBounceScale; // 0xe44 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flMinRoughness; // 0x9c0 + float m_flMinRoughness; // 0xe48 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - int32_t m_nFog; // 0x9c4 + Vector m_vAlternateColor; // 0xe4c // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flFogStrength; // 0x9c8 + float m_fAlternateColorBrightness; // 0xe58 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - int32_t m_nFogShadows; // 0x9cc + int32_t m_nFog; // 0xe5c // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flFogScale; // 0x9d0 + float m_flFogStrength; // 0xe60 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flFadeSizeStart; // 0x9d4 + int32_t m_nFogShadows; // 0xe64 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flFadeSizeEnd; // 0x9d8 + float m_flFogScale; // 0xe68 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flShadowFadeSizeStart; // 0x9dc + float m_flFadeSizeStart; // 0xe6c // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flShadowFadeSizeEnd; // 0x9e0 + float m_flFadeSizeEnd; // 0xe70 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - bool m_bPrecomputedFieldsValid; // 0x9e4 + float m_flShadowFadeSizeStart; // 0xe74 + // MNetworkEnable + // MNetworkChangeCallback "RenderingChanged" + float m_flShadowFadeSizeEnd; // 0xe78 + // MNetworkEnable + // MNetworkChangeCallback "RenderingChanged" + bool m_bPrecomputedFieldsValid; // 0xe7c private: - [[maybe_unused]] uint8_t __pad09e5[0x3]; // 0x9e5 + [[maybe_unused]] uint8_t __pad0e7d[0x3]; // 0xe7d public: // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - Vector m_vPrecomputedBoundsMins; // 0x9e8 + Vector m_vPrecomputedBoundsMins; // 0xe80 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - Vector m_vPrecomputedBoundsMaxs; // 0x9f4 + Vector m_vPrecomputedBoundsMaxs; // 0xe8c // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - Vector m_vPrecomputedOBBOrigin; // 0xa00 + Vector m_vPrecomputedOBBOrigin; // 0xe98 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - QAngle m_vPrecomputedOBBAngles; // 0xa0c + QAngle m_vPrecomputedOBBAngles; // 0xea4 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - Vector m_vPrecomputedOBBExtent; // 0xa18 + Vector m_vPrecomputedOBBExtent; // 0xeb0 }; // Alignment: 1 -// Size: 0xa78 +// Size: 0xf10 class C_RectLight : public C_BarnLight { public: // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - bool m_bShowLight; // 0xa70 + bool m_bShowLight; // 0xf08 }; // Alignment: 3 -// Size: 0xa80 +// Size: 0xf18 class C_OmniLight : public C_BarnLight { public: // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flInnerAngle; // 0xa70 + float m_flInnerAngle; // 0xf08 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flOuterAngle; // 0xa74 + float m_flOuterAngle; // 0xf0c // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - bool m_bShowLight; // 0xa78 + bool m_bShowLight; // 0xf10 }; // Alignment: 12 -// Size: 0x8a8 +// Size: 0x8b0 class C_CSTeam : public C_Team { public: // MNetworkEnable - char m_szTeamMatchStat[512]; // 0x5f0 + char m_szTeamMatchStat[512]; // 0x5f8 // MNetworkEnable - int32_t m_numMapVictories; // 0x7f0 + int32_t m_numMapVictories; // 0x7f8 // MNetworkEnable - bool m_bSurrendered; // 0x7f4 + bool m_bSurrendered; // 0x7fc private: - [[maybe_unused]] uint8_t __pad07f5[0x3]; // 0x7f5 + [[maybe_unused]] uint8_t __pad07fd[0x3]; // 0x7fd public: // MNetworkEnable - int32_t m_scoreFirstHalf; // 0x7f8 + int32_t m_scoreFirstHalf; // 0x800 // MNetworkEnable - int32_t m_scoreSecondHalf; // 0x7fc + int32_t m_scoreSecondHalf; // 0x804 // MNetworkEnable - int32_t m_scoreOvertime; // 0x800 + int32_t m_scoreOvertime; // 0x808 // MNetworkEnable - char m_szClanTeamname[129]; // 0x804 + char m_szClanTeamname[129]; // 0x80c private: - [[maybe_unused]] uint8_t __pad0885[0x3]; // 0x885 + [[maybe_unused]] uint8_t __pad088d[0x3]; // 0x88d public: // MNetworkEnable - uint32_t m_iClanID; // 0x888 + uint32_t m_iClanID; // 0x890 // MNetworkEnable - CPlayerSlot m_nGGLeaderSlot_CT; // 0x88c + CPlayerSlot m_nGGLeaderSlot_CT; // 0x894 // MNetworkEnable - CPlayerSlot m_nGGLeaderSlot_T; // 0x890 + CPlayerSlot m_nGGLeaderSlot_T; // 0x898 // MNetworkEnable - char m_szTeamFlagImage[8]; // 0x894 + char m_szTeamFlagImage[8]; // 0x89c // MNetworkEnable - char m_szTeamLogoImage[8]; // 0x89c + char m_szTeamLogoImage[8]; // 0x8a4 }; // Alignment: 0 -// Size: 0xde8 +// Size: 0x1270 class C_MapPreviewParticleSystem : public C_ParticleSystem { public: @@ -7356,74 +7255,72 @@ public: }; // Alignment: 5 -// Size: 0x550 +// Size: 0x558 class CInfoDynamicShadowHint : public C_PointEntity { public: - bool m_bDisabled; // 0x538 + bool m_bDisabled; // 0x540 private: - [[maybe_unused]] uint8_t __pad0539[0x3]; // 0x539 + [[maybe_unused]] uint8_t __pad0541[0x3]; // 0x541 public: - float m_flRange; // 0x53c - int32_t m_nImportance; // 0x540 - int32_t m_nLightChoice; // 0x544 - CHandle< C_BaseEntity > m_hLight; // 0x548 - - // Static fields: + float m_flRange; // 0x544 + int32_t m_nImportance; // 0x548 + int32_t m_nLightChoice; // 0x54c + CHandle< C_BaseEntity > m_hLight; // 0x550 static CUtlVector< CInfoDynamicShadowHint* > &Get_m_AllHints(){return *reinterpret_cast*>(interfaces::g_schema->FindTypeScopeForModule("client.dll")->FindDeclaredClass("CInfoDynamicShadowHint")->m_static_fields[0]->m_instance);}; }; // Alignment: 2 -// Size: 0x568 +// Size: 0x570 class CInfoDynamicShadowHintBox : public CInfoDynamicShadowHint { public: - Vector m_vBoxMins; // 0x550 - Vector m_vBoxMaxs; // 0x55c + Vector m_vBoxMins; // 0x558 + Vector m_vBoxMaxs; // 0x564 }; // Alignment: 10 -// Size: 0x880 +// Size: 0xd08 class C_EnvSky : public C_BaseModelEntity { public: // MNetworkEnable // MNetworkChangeCallback "SkyStateChanged" - CStrongHandle< InfoForResourceTypeIMaterial2 > m_hSkyMaterial; // 0x838 + CStrongHandle< InfoForResourceTypeIMaterial2 > m_hSkyMaterial; // 0xcc0 // MNetworkEnable // MNetworkChangeCallback "SkyStateChanged" - bool m_bStartDisabled; // 0x840 + bool m_bStartDisabled; // 0xcc8 // MNetworkEnable // MNetworkChangeCallback "SkyStateChanged" - Color m_vTintColor; // 0x841 + Color m_vTintColor; // 0xcc9 private: - [[maybe_unused]] uint8_t __pad0845[0x3]; // 0x845 + [[maybe_unused]] uint8_t __pad0ccd[0x3]; // 0xccd public: // MNetworkEnable // MNetworkChangeCallback "SkyStateChanged" - float m_flBrightnessScale; // 0x848 + float m_flBrightnessScale; // 0xcd0 // MNetworkEnable // MNetworkChangeCallback "SkyStateChanged" - int32_t m_nFogType; // 0x84c + int32_t m_nFogType; // 0xcd4 // MNetworkEnable // MNetworkChangeCallback "SkyStateChanged" - float m_flFogMinStart; // 0x850 + float m_flFogMinStart; // 0xcd8 // MNetworkEnable // MNetworkChangeCallback "SkyStateChanged" - float m_flFogMinEnd; // 0x854 + float m_flFogMinEnd; // 0xcdc // MNetworkEnable // MNetworkChangeCallback "SkyStateChanged" - float m_flFogMaxStart; // 0x858 + float m_flFogMaxStart; // 0xce0 // MNetworkEnable // MNetworkChangeCallback "SkyStateChanged" - float m_flFogMaxEnd; // 0x85c + float m_flFogMaxEnd; // 0xce4 // MNetworkEnable // MNetworkChangeCallback "SkyStateChanged" - bool m_bEnabled; // 0x860 + bool m_bEnabled; // 0xce8 }; // Alignment: 0 -// Size: 0x560 +// Size: 0x568 class C_TonemapController2Alias_env_tonemap_controller2 : public C_TonemapController2 { public: @@ -7431,7 +7328,7 @@ public: }; // Alignment: 1 -// Size: 0x840 +// Size: 0xcc8 class C_LightEntity : public C_BaseModelEntity { public: @@ -7439,11 +7336,11 @@ public: // MNetworkUserGroup "CLightComponent" // MNetworkAlias "CLightComponent" // MNetworkTypeAlias "CLightComponent" - CLightComponent* m_CLightComponent; // 0x838 + CLightComponent* m_CLightComponent; // 0xcc0 }; // Alignment: 0 -// Size: 0x840 +// Size: 0xcc8 class C_LightSpotEntity : public C_LightEntity { public: @@ -7451,7 +7348,7 @@ public: }; // Alignment: 0 -// Size: 0x840 +// Size: 0xcc8 class C_LightOrthoEntity : public C_LightEntity { public: @@ -7459,7 +7356,7 @@ public: }; // Alignment: 0 -// Size: 0x840 +// Size: 0xcc8 class C_LightDirectionalEntity : public C_LightEntity { public: @@ -7467,7 +7364,7 @@ public: }; // Alignment: 0 -// Size: 0x840 +// Size: 0xcc8 class C_LightEnvironmentEntity : public C_LightDirectionalEntity { public: @@ -7475,250 +7372,257 @@ public: }; // Alignment: 16 -// Size: 0x890 +// Size: 0xd18 class C_PostProcessingVolume : public C_BaseTrigger { -private: - [[maybe_unused]] uint8_t __pad0840[0x10]; // 0x840 public: // MNetworkEnable - CStrongHandle< InfoForResourceTypeCPostProcessingResource > m_hPostSettings; // 0x850 + CStrongHandle< InfoForResourceTypeCPostProcessingResource > m_hPostSettings; // 0xcd8 // MNetworkEnable - float m_flFadeDuration; // 0x858 + float m_flFadeDuration; // 0xce0 // MNetworkEnable - float m_flMinLogExposure; // 0x85c + float m_flMinLogExposure; // 0xce4 // MNetworkEnable - float m_flMaxLogExposure; // 0x860 + float m_flMaxLogExposure; // 0xce8 // MNetworkEnable - float m_flMinExposure; // 0x864 + float m_flMinExposure; // 0xcec // MNetworkEnable - float m_flMaxExposure; // 0x868 + float m_flMaxExposure; // 0xcf0 // MNetworkEnable - float m_flExposureCompensation; // 0x86c + float m_flExposureCompensation; // 0xcf4 // MNetworkEnable - float m_flExposureFadeSpeedUp; // 0x870 + float m_flExposureFadeSpeedUp; // 0xcf8 // MNetworkEnable - float m_flExposureFadeSpeedDown; // 0x874 + float m_flExposureFadeSpeedDown; // 0xcfc // MNetworkEnable - float m_flTonemapEVSmoothingRange; // 0x878 + float m_flTonemapEVSmoothingRange; // 0xd00 // MNetworkEnable - bool m_bMaster; // 0x87c + bool m_bMaster; // 0xd04 // MNetworkEnable - bool m_bExposureControl; // 0x87d + bool m_bExposureControl; // 0xd05 private: - [[maybe_unused]] uint8_t __pad087e[0x2]; // 0x87e + [[maybe_unused]] uint8_t __pad0d06[0x2]; // 0xd06 public: // MNetworkEnable - float m_flRate; // 0x880 + float m_flRate; // 0xd08 // MNetworkEnable - float m_flTonemapPercentTarget; // 0x884 + float m_flTonemapPercentTarget; // 0xd0c // MNetworkEnable - float m_flTonemapPercentBrightPixels; // 0x888 + float m_flTonemapPercentBrightPixels; // 0xd10 // MNetworkEnable - float m_flTonemapMinAvgLum; // 0x88c + float m_flTonemapMinAvgLum; // 0xd14 }; // Alignment: 5 -// Size: 0xe00 +// Size: 0x1288 class C_EnvParticleGlow : public C_ParticleSystem { public: // MNetworkEnable - float m_flAlphaScale; // 0xde8 + float m_flAlphaScale; // 0x1270 // MNetworkEnable - float m_flRadiusScale; // 0xdec + float m_flRadiusScale; // 0x1274 // MNetworkEnable - float m_flSelfIllumScale; // 0xdf0 + float m_flSelfIllumScale; // 0x1278 // MNetworkEnable - Color m_ColorTint; // 0xdf4 + Color m_ColorTint; // 0x127c // MNetworkEnable - CStrongHandle< InfoForResourceTypeCTextureBase > m_hTextureOverride; // 0xdf8 + CStrongHandle< InfoForResourceTypeCTextureBase > m_hTextureOverride; // 0x1280 }; // Alignment: 8 -// Size: 0x870 +// Size: 0xcf8 class C_TextureBasedAnimatable : public C_BaseModelEntity { public: // MNetworkEnable - bool m_bLoop; // 0x838 + bool m_bLoop; // 0xcc0 private: - [[maybe_unused]] uint8_t __pad0839[0x3]; // 0x839 + [[maybe_unused]] uint8_t __pad0cc1[0x3]; // 0xcc1 public: // MNetworkEnable - float m_flFPS; // 0x83c + float m_flFPS; // 0xcc4 // MNetworkEnable - CStrongHandle< InfoForResourceTypeCTextureBase > m_hPositionKeys; // 0x840 + CStrongHandle< InfoForResourceTypeCTextureBase > m_hPositionKeys; // 0xcc8 // MNetworkEnable - CStrongHandle< InfoForResourceTypeCTextureBase > m_hRotationKeys; // 0x848 + CStrongHandle< InfoForResourceTypeCTextureBase > m_hRotationKeys; // 0xcd0 // MNetworkEnable - Vector m_vAnimationBoundsMin; // 0x850 + Vector m_vAnimationBoundsMin; // 0xcd8 // MNetworkEnable - Vector m_vAnimationBoundsMax; // 0x85c + Vector m_vAnimationBoundsMax; // 0xce4 // MNetworkEnable - float m_flStartTime; // 0x868 + float m_flStartTime; // 0xcf0 // MNetworkEnable - float m_flStartFrame; // 0x86c + float m_flStartFrame; // 0xcf4 }; // Alignment: 0 -// Size: 0x838 +// Size: 0xcc0 class C_World : public C_BaseModelEntity { public: // No members available }; -// Alignment: 13 -// Size: 0x998 +// Alignment: 15 +// Size: 0xf18 class CBaseAnimGraph : public C_BaseModelEntity { -private: - [[maybe_unused]] uint8_t __pad0838[0x10]; // 0x838 public: // MNetworkEnable - PhysicsRagdollPose_t* m_pRagdollPose; // 0x848 + bool m_bInitiallyPopulateInterpHistory; // 0xcc8 + // MNetworkEnable + bool m_bShouldAnimateDuringGameplayPause; // 0xcc9 +private: + [[maybe_unused]] uint8_t __pad0cca[0x1]; // 0xcca +public: + bool m_bSuppressAnimEventSounds; // 0xccb +private: + [[maybe_unused]] uint8_t __pad0ccc[0xc]; // 0xccc +public: + // MNetworkEnable + bool m_bAnimGraphUpdateEnabled; // 0xcd8 +private: + [[maybe_unused]] uint8_t __pad0cd9[0x93]; // 0xcd9 +public: + // MNetworkDisable + float m_flLastEventAnimTime; // 0xd6c +private: + [[maybe_unused]] uint8_t __pad0d70[0x4]; // 0xd70 +public: + // MNetworkDisable + AnimationUpdateListHandle_t m_hAnimationUpdate; // 0xd74 + float m_flMaxSlopeDistance; // 0xd78 + Vector m_vLastSlopeCheckPos; // 0xd7c +private: + [[maybe_unused]] uint8_t __pad0d88[0x4]; // 0xd88 +public: + // MNetworkEnable + Vector m_vecForce; // 0xd8c + // MNetworkEnable + int32_t m_nForceBone; // 0xd98 +private: + [[maybe_unused]] uint8_t __pad0d9c[0x4]; // 0xd9c +public: + CBaseAnimGraph* m_pClientsideRagdoll; // 0xda0 + bool m_bBuiltRagdoll; // 0xda8 +private: + [[maybe_unused]] uint8_t __pad0da9[0x17]; // 0xda9 +public: + // MNetworkEnable + PhysicsRagdollPose_t* m_pRagdollPose; // 0xdc0 // MNetworkEnable // MNetworkChangeCallback "OnClientRagdollChanged" - bool m_bClientRagdoll; // 0x850 -private: - [[maybe_unused]] uint8_t __pad0851[0x3]; // 0x851 -public: - // MNetworkEnable - Vector m_vecForce; // 0x854 - // MNetworkEnable - int32_t m_nForceBone; // 0x860 - // MNetworkEnable - bool m_bShouldAnimateDuringGameplayPause; // 0x864 - // MNetworkEnable - bool m_bAnimGraphUpdateEnabled; // 0x865 - // MNetworkEnable - bool m_bInitiallyPopulateInterpHistory; // 0x866 -private: - [[maybe_unused]] uint8_t __pad0867[0x1]; // 0x867 -public: - float m_flMaxSlopeDistance; // 0x868 - Vector m_vLastSlopeCheckPos; // 0x86c - bool m_bHasAnimatedMaterialAttributes; // 0x878 -private: - [[maybe_unused]] uint8_t __pad0879[0x7]; // 0x879 -public: - CBaseAnimGraph* m_pClientsideRagdoll; // 0x880 - bool m_builtRagdoll; // 0x888 -private: - [[maybe_unused]] uint8_t __pad0889[0xf]; // 0x889 -public: - bool m_bSuppressAnimEventSounds; // 0x898 + bool m_bClientRagdoll; // 0xdc8 + bool m_bHasAnimatedMaterialAttributes; // 0xdc9 }; // Alignment: 4 -// Size: 0x9d8 +// Size: 0xf58 class CBaseProp : public CBaseAnimGraph { public: - bool m_bModelOverrodeBlockLOS; // 0x998 + bool m_bModelOverrodeBlockLOS; // 0xf18 private: - [[maybe_unused]] uint8_t __pad0999[0x3]; // 0x999 + [[maybe_unused]] uint8_t __pad0f19[0x3]; // 0xf19 public: - int32_t m_iShapeType; // 0x99c - bool m_bConformToCollisionBounds; // 0x9a0 + int32_t m_iShapeType; // 0xf1c + bool m_bConformToCollisionBounds; // 0xf20 private: - [[maybe_unused]] uint8_t __pad09a1[0x3]; // 0x9a1 + [[maybe_unused]] uint8_t __pad0f21[0x3]; // 0xf21 public: - matrix3x4_t m_mPreferredCatchTransform; // 0x9a4 + matrix3x4_t m_mPreferredCatchTransform; // 0xf24 }; // Alignment: 30 -// Size: 0xae8 +// Size: 0x1068 class C_BreakableProp : public CBaseProp { -private: - [[maybe_unused]] uint8_t __pad09d8[0x8]; // 0x9d8 public: - CEntityIOOutput m_OnBreak; // 0x9e0 - CEntityOutputTemplate< float32 > m_OnHealthChanged; // 0xa08 - CEntityIOOutput m_OnTakeDamage; // 0xa30 - float m_impactEnergyScale; // 0xa58 - int32_t m_iMinHealthDmg; // 0xa5c - float m_flPressureDelay; // 0xa60 - CHandle< C_BaseEntity > m_hBreaker; // 0xa64 - PerformanceMode_t m_PerformanceMode; // 0xa68 - float m_flDmgModBullet; // 0xa6c - float m_flDmgModClub; // 0xa70 - float m_flDmgModExplosive; // 0xa74 - float m_flDmgModFire; // 0xa78 + CEntityIOOutput m_OnBreak; // 0xf60 + CEntityOutputTemplate< float32 > m_OnHealthChanged; // 0xf88 + CEntityIOOutput m_OnTakeDamage; // 0xfb0 + float m_impactEnergyScale; // 0xfd8 + int32_t m_iMinHealthDmg; // 0xfdc + float m_flPressureDelay; // 0xfe0 + CHandle< C_BaseEntity > m_hBreaker; // 0xfe4 + PerformanceMode_t m_PerformanceMode; // 0xfe8 + float m_flDmgModBullet; // 0xfec + float m_flDmgModClub; // 0xff0 + float m_flDmgModExplosive; // 0xff4 + float m_flDmgModFire; // 0xff8 private: - [[maybe_unused]] uint8_t __pad0a7c[0x4]; // 0xa7c + [[maybe_unused]] uint8_t __pad0ffc[0x4]; // 0xffc public: - CUtlSymbolLarge m_iszPhysicsDamageTableName; // 0xa80 - CUtlSymbolLarge m_iszBasePropData; // 0xa88 - int32_t m_iInteractions; // 0xa90 - GameTime_t m_flPreventDamageBeforeTime; // 0xa94 - bool m_bHasBreakPiecesOrCommands; // 0xa98 + CUtlSymbolLarge m_iszPhysicsDamageTableName; // 0x1000 + CUtlSymbolLarge m_iszBasePropData; // 0x1008 + int32_t m_iInteractions; // 0x1010 + GameTime_t m_flPreventDamageBeforeTime; // 0x1014 + bool m_bHasBreakPiecesOrCommands; // 0x1018 private: - [[maybe_unused]] uint8_t __pad0a99[0x3]; // 0xa99 + [[maybe_unused]] uint8_t __pad1019[0x3]; // 0x1019 public: - float m_explodeDamage; // 0xa9c - float m_explodeRadius; // 0xaa0 + float m_explodeDamage; // 0x101c + float m_explodeRadius; // 0x1020 private: - [[maybe_unused]] uint8_t __pad0aa4[0x4]; // 0xaa4 + [[maybe_unused]] uint8_t __pad1024[0x4]; // 0x1024 public: - float m_explosionDelay; // 0xaa8 + float m_explosionDelay; // 0x1028 private: - [[maybe_unused]] uint8_t __pad0aac[0x4]; // 0xaac + [[maybe_unused]] uint8_t __pad102c[0x4]; // 0x102c public: - CUtlSymbolLarge m_explosionBuildupSound; // 0xab0 - CUtlSymbolLarge m_explosionCustomEffect; // 0xab8 - CUtlSymbolLarge m_explosionCustomSound; // 0xac0 - CUtlSymbolLarge m_explosionModifier; // 0xac8 - CHandle< C_BasePlayerPawn > m_hPhysicsAttacker; // 0xad0 - GameTime_t m_flLastPhysicsInfluenceTime; // 0xad4 - float m_flDefaultFadeScale; // 0xad8 - CHandle< C_BaseEntity > m_hLastAttacker; // 0xadc - CHandle< C_BaseEntity > m_hFlareEnt; // 0xae0 + CUtlSymbolLarge m_explosionBuildupSound; // 0x1030 + CUtlSymbolLarge m_explosionCustomEffect; // 0x1038 + CUtlSymbolLarge m_explosionCustomSound; // 0x1040 + CUtlSymbolLarge m_explosionModifier; // 0x1048 + CHandle< C_BasePlayerPawn > m_hPhysicsAttacker; // 0x1050 + GameTime_t m_flLastPhysicsInfluenceTime; // 0x1054 + float m_flDefaultFadeScale; // 0x1058 + CHandle< C_BaseEntity > m_hLastAttacker; // 0x105c + CHandle< C_BaseEntity > m_hFlareEnt; // 0x1060 // MNetworkEnable - bool m_noGhostCollision; // 0xae4 + bool m_noGhostCollision; // 0x1064 }; // Alignment: 25 -// Size: 0xc00 +// Size: 0x1180 class C_DynamicProp : public C_BreakableProp { public: // MNetworkEnable - bool m_bUseHitboxesForRenderBox; // 0xae8 + bool m_bUseHitboxesForRenderBox; // 0x1068 // MNetworkEnable - bool m_bUseAnimGraph; // 0xae9 + bool m_bUseAnimGraph; // 0x1069 private: - [[maybe_unused]] uint8_t __pad0aea[0x6]; // 0xaea + [[maybe_unused]] uint8_t __pad106a[0x6]; // 0x106a public: - CEntityIOOutput m_pOutputAnimBegun; // 0xaf0 - CEntityIOOutput m_pOutputAnimOver; // 0xb18 - CEntityIOOutput m_pOutputAnimLoopCycleOver; // 0xb40 - CEntityIOOutput m_OnAnimReachedStart; // 0xb68 - CEntityIOOutput m_OnAnimReachedEnd; // 0xb90 - CUtlSymbolLarge m_iszDefaultAnim; // 0xbb8 - AnimLoopMode_t m_nDefaultAnimLoopMode; // 0xbc0 - bool m_bAnimateOnServer; // 0xbc4 - bool m_bRandomizeCycle; // 0xbc5 - bool m_bStartDisabled; // 0xbc6 - bool m_bScriptedMovement; // 0xbc7 - bool m_bFiredStartEndOutput; // 0xbc8 - bool m_bForceNpcExclude; // 0xbc9 - bool m_bCreateNonSolid; // 0xbca - bool m_bIsOverrideProp; // 0xbcb - int32_t m_iInitialGlowState; // 0xbcc - int32_t m_nGlowRange; // 0xbd0 - int32_t m_nGlowRangeMin; // 0xbd4 - Color m_glowColor; // 0xbd8 - int32_t m_nGlowTeam; // 0xbdc - int32_t m_iCachedFrameCount; // 0xbe0 - Vector m_vecCachedRenderMins; // 0xbe4 - Vector m_vecCachedRenderMaxs; // 0xbf0 + CEntityIOOutput m_pOutputAnimBegun; // 0x1070 + CEntityIOOutput m_pOutputAnimOver; // 0x1098 + CEntityIOOutput m_pOutputAnimLoopCycleOver; // 0x10c0 + CEntityIOOutput m_OnAnimReachedStart; // 0x10e8 + CEntityIOOutput m_OnAnimReachedEnd; // 0x1110 + CUtlSymbolLarge m_iszDefaultAnim; // 0x1138 + AnimLoopMode_t m_nDefaultAnimLoopMode; // 0x1140 + bool m_bAnimateOnServer; // 0x1144 + bool m_bRandomizeCycle; // 0x1145 + bool m_bStartDisabled; // 0x1146 + bool m_bScriptedMovement; // 0x1147 + bool m_bFiredStartEndOutput; // 0x1148 + bool m_bForceNpcExclude; // 0x1149 + bool m_bCreateNonSolid; // 0x114a + bool m_bIsOverrideProp; // 0x114b + int32_t m_iInitialGlowState; // 0x114c + int32_t m_nGlowRange; // 0x1150 + int32_t m_nGlowRangeMin; // 0x1154 + Color m_glowColor; // 0x1158 + int32_t m_nGlowTeam; // 0x115c + int32_t m_iCachedFrameCount; // 0x1160 + Vector m_vecCachedRenderMins; // 0x1164 + Vector m_vecCachedRenderMaxs; // 0x1170 }; // Alignment: 0 -// Size: 0xc00 +// Size: 0x1180 class C_DynamicPropAlias_dynamic_prop : public C_DynamicProp { public: @@ -7726,7 +7630,7 @@ public: }; // Alignment: 0 -// Size: 0xc00 +// Size: 0x1180 class C_DynamicPropAlias_prop_dynamic_override : public C_DynamicProp { public: @@ -7734,7 +7638,7 @@ public: }; // Alignment: 0 -// Size: 0xc00 +// Size: 0x1180 class C_DynamicPropAlias_cable_dynamic : public C_DynamicProp { public: @@ -7742,57 +7646,57 @@ public: }; // Alignment: 9 -// Size: 0xa68 +// Size: 0xef0 class C_ColorCorrectionVolume : public C_BaseTrigger { public: - float m_LastEnterWeight; // 0x840 - float m_LastEnterTime; // 0x844 - float m_LastExitWeight; // 0x848 - float m_LastExitTime; // 0x84c + float m_LastEnterWeight; // 0xcc8 + float m_LastEnterTime; // 0xccc + float m_LastExitWeight; // 0xcd0 + float m_LastExitTime; // 0xcd4 // MNetworkEnable - bool m_bEnabled; // 0x850 + bool m_bEnabled; // 0xcd8 private: - [[maybe_unused]] uint8_t __pad0851[0x3]; // 0x851 + [[maybe_unused]] uint8_t __pad0cd9[0x3]; // 0xcd9 public: // MNetworkEnable - float m_MaxWeight; // 0x854 + float m_MaxWeight; // 0xcdc // MNetworkEnable - float m_FadeDuration; // 0x858 + float m_FadeDuration; // 0xce0 // MNetworkEnable - float m_Weight; // 0x85c + float m_Weight; // 0xce4 // MNetworkEnable - char m_lookupFilename[512]; // 0x860 + char m_lookupFilename[512]; // 0xce8 }; // Alignment: 8 -// Size: 0xd00 +// Size: 0x1180 class C_FuncMonitor : public C_FuncBrush { public: // MNetworkEnable - CUtlString m_targetCamera; // 0x838 + CUtlString m_targetCamera; // 0xcc0 // MNetworkEnable - int32_t m_nResolutionEnum; // 0x840 + int32_t m_nResolutionEnum; // 0xcc8 // MNetworkEnable - bool m_bRenderShadows; // 0x844 + bool m_bRenderShadows; // 0xccc // MNetworkEnable - bool m_bUseUniqueColorTarget; // 0x845 + bool m_bUseUniqueColorTarget; // 0xccd private: - [[maybe_unused]] uint8_t __pad0846[0x2]; // 0x846 + [[maybe_unused]] uint8_t __pad0cce[0x2]; // 0xcce public: // MNetworkEnable - CUtlString m_brushModelName; // 0x848 + CUtlString m_brushModelName; // 0xcd0 // MNetworkEnable - CHandle< C_BaseEntity > m_hTargetCamera; // 0x850 + CHandle< C_BaseEntity > m_hTargetCamera; // 0xcd8 // MNetworkEnable - bool m_bEnabled; // 0x854 + bool m_bEnabled; // 0xcdc // MNetworkEnable - bool m_bDraw3DSkybox; // 0x855 + bool m_bDraw3DSkybox; // 0xcdd }; // Alignment: 0 -// Size: 0x838 +// Size: 0xcc0 class C_FuncMoveLinear : public C_BaseToggle { public: @@ -7800,54 +7704,52 @@ public: }; // Alignment: 2 -// Size: 0x9c8 +// Size: 0xf48 class C_PhysMagnet : public CBaseAnimGraph { public: - CUtlVector< int32 > m_aAttachedObjectsFromServer; // 0x998 - CUtlVector< CHandle< C_BaseEntity > > m_aAttachedObjects; // 0x9b0 + CUtlVector< int32 > m_aAttachedObjectsFromServer; // 0xf18 + CUtlVector< CHandle< C_BaseEntity > > m_aAttachedObjects; // 0xf30 }; // Alignment: 13 -// Size: 0x9e8 +// Size: 0xf68 class C_PointCommentaryNode : public CBaseAnimGraph { -private: - [[maybe_unused]] uint8_t __pad0998[0x8]; // 0x998 public: // MNetworkEnable - bool m_bActive; // 0x9a0 - bool m_bWasActive; // 0x9a1 + bool m_bActive; // 0xf20 + bool m_bWasActive; // 0xf21 private: - [[maybe_unused]] uint8_t __pad09a2[0x2]; // 0x9a2 + [[maybe_unused]] uint8_t __pad0f22[0x2]; // 0xf22 public: - GameTime_t m_flEndTime; // 0x9a4 + GameTime_t m_flEndTime; // 0xf24 // MNetworkEnable - GameTime_t m_flStartTime; // 0x9a8 + GameTime_t m_flStartTime; // 0xf28 // MNetworkEnable - float m_flStartTimeInCommentary; // 0x9ac + float m_flStartTimeInCommentary; // 0xf2c // MNetworkEnable - CUtlSymbolLarge m_iszCommentaryFile; // 0x9b0 + CUtlSymbolLarge m_iszCommentaryFile; // 0xf30 // MNetworkEnable - CUtlSymbolLarge m_iszTitle; // 0x9b8 + CUtlSymbolLarge m_iszTitle; // 0xf38 // MNetworkEnable - CUtlSymbolLarge m_iszSpeakers; // 0x9c0 + CUtlSymbolLarge m_iszSpeakers; // 0xf40 // MNetworkEnable - int32_t m_iNodeNumber; // 0x9c8 + int32_t m_iNodeNumber; // 0xf48 // MNetworkEnable - int32_t m_iNodeNumberMax; // 0x9cc + int32_t m_iNodeNumberMax; // 0xf4c // MNetworkEnable - bool m_bListenedTo; // 0x9d0 + bool m_bListenedTo; // 0xf50 private: - [[maybe_unused]] uint8_t __pad09d1[0xf]; // 0x9d1 + [[maybe_unused]] uint8_t __pad0f51[0xf]; // 0xf51 public: // MNetworkEnable - CHandle< C_BaseEntity > m_hViewPosition; // 0x9e0 - bool m_bRestartAfterRestore; // 0x9e4 + CHandle< C_BaseEntity > m_hViewPosition; // 0xf60 + bool m_bRestartAfterRestore; // 0xf64 }; // Alignment: 0 -// Size: 0x998 +// Size: 0xf18 class C_WaterBullet : public CBaseAnimGraph { public: @@ -7855,131 +7757,129 @@ public: }; // Alignment: 1 -// Size: 0x840 +// Size: 0xcc8 class C_BaseDoor : public C_BaseToggle { public: // MNetworkEnable - bool m_bIsUsable; // 0x838 + bool m_bIsUsable; // 0xcc0 }; // Alignment: 19 -// Size: 0xb28 +// Size: 0x10a8 class C_BaseFlex : public CBaseAnimGraph { -private: - [[maybe_unused]] uint8_t __pad0998[0x8]; // 0x998 public: // MNetworkEnable // MNetworkBitCount "12" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "1.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "1" // MNetworkEncodeFlags - C_NetworkUtlVectorBase< float32 > m_flexWeight; // 0x9a0 - // MNetworkEnable - bool m_blinktoggle; // 0x9b8 -private: - [[maybe_unused]] uint8_t __pad09b9[0x7]; // 0x9b9 -public: + C_NetworkUtlVectorBase< float32 > m_flexWeight; // 0xf20 // MNetworkEnable // MNetworkEncoder // MNetworkChangeCallback "OnViewTargetChanged" - Vector m_vLookTargetPosition; // 0x9c0 + Vector m_vLookTargetPosition; // 0xf38 private: - [[maybe_unused]] uint8_t __pad09cc[0x64]; // 0x9cc + [[maybe_unused]] uint8_t __pad0f44[0xc]; // 0xf44 public: - int32_t m_nLastFlexUpdateFrameCount; // 0xa30 - Vector m_CachedViewTarget; // 0xa34 - uint32_t m_nNextSceneEventId; // 0xa40 - int32_t m_iBlink; // 0xa44 - float m_blinktime; // 0xa48 - bool m_prevblinktoggle; // 0xa4c + // MNetworkEnable + bool m_blinktoggle; // 0xf50 private: - [[maybe_unused]] uint8_t __pad0a4d[0x3]; // 0xa4d + [[maybe_unused]] uint8_t __pad0f51[0x5f]; // 0xf51 public: - int32_t m_iJawOpen; // 0xa50 - float m_flJawOpenAmount; // 0xa54 - float m_flBlinkAmount; // 0xa58 - AttachmentHandle_t m_iMouthAttachment; // 0xa5c - AttachmentHandle_t m_iEyeAttachment; // 0xa5d - bool m_bResetFlexWeightsOnModelChange; // 0xa5e + int32_t m_nLastFlexUpdateFrameCount; // 0xfb0 + Vector m_CachedViewTarget; // 0xfb4 + uint32_t m_nNextSceneEventId; // 0xfc0 + int32_t m_iBlink; // 0xfc4 + float m_blinktime; // 0xfc8 + bool m_prevblinktoggle; // 0xfcc private: - [[maybe_unused]] uint8_t __pad0a5f[0x19]; // 0xa5f + [[maybe_unused]] uint8_t __pad0fcd[0x3]; // 0xfcd public: - int32_t m_nEyeOcclusionRendererBone; // 0xa78 - matrix3x4_t m_mEyeOcclusionRendererCameraToBoneTransform; // 0xa7c - Vector m_vEyeOcclusionRendererHalfExtent; // 0xaac + int32_t m_iJawOpen; // 0xfd0 + float m_flJawOpenAmount; // 0xfd4 + float m_flBlinkAmount; // 0xfd8 + AttachmentHandle_t m_iMouthAttachment; // 0xfdc + AttachmentHandle_t m_iEyeAttachment; // 0xfdd + bool m_bResetFlexWeightsOnModelChange; // 0xfde private: - [[maybe_unused]] uint8_t __pad0ab8[0x10]; // 0xab8 + [[maybe_unused]] uint8_t __pad0fdf[0x19]; // 0xfdf public: - C_BaseFlex::Emphasized_Phoneme m_PhonemeClasses[3]; // 0xac8 + int32_t m_nEyeOcclusionRendererBone; // 0xff8 + matrix3x4_t m_mEyeOcclusionRendererCameraToBoneTransform; // 0xffc + Vector m_vEyeOcclusionRendererHalfExtent; // 0x102c +private: + [[maybe_unused]] uint8_t __pad1038[0x10]; // 0x1038 +public: + C_BaseFlex::Emphasized_Phoneme m_PhonemeClasses[3]; // 0x1048 }; // Alignment: 14 -// Size: 0xa30 +// Size: 0xfb0 class C_ClientRagdoll : public CBaseAnimGraph { public: - bool m_bFadeOut; // 0x998 - bool m_bImportant; // 0x999 + bool m_bFadeOut; // 0xf18 + bool m_bImportant; // 0xf19 private: - [[maybe_unused]] uint8_t __pad099a[0x2]; // 0x99a + [[maybe_unused]] uint8_t __pad0f1a[0x2]; // 0xf1a public: - GameTime_t m_flEffectTime; // 0x99c - GameTime_t m_gibDespawnTime; // 0x9a0 - int32_t m_iCurrentFriction; // 0x9a4 - int32_t m_iMinFriction; // 0x9a8 - int32_t m_iMaxFriction; // 0x9ac - int32_t m_iFrictionAnimState; // 0x9b0 - bool m_bReleaseRagdoll; // 0x9b4 - AttachmentHandle_t m_iEyeAttachment; // 0x9b5 - bool m_bFadingOut; // 0x9b6 + GameTime_t m_flEffectTime; // 0xf1c + GameTime_t m_gibDespawnTime; // 0xf20 + int32_t m_iCurrentFriction; // 0xf24 + int32_t m_iMinFriction; // 0xf28 + int32_t m_iMaxFriction; // 0xf2c + int32_t m_iFrictionAnimState; // 0xf30 + bool m_bReleaseRagdoll; // 0xf34 + AttachmentHandle_t m_iEyeAttachment; // 0xf35 + bool m_bFadingOut; // 0xf36 private: - [[maybe_unused]] uint8_t __pad09b7[0x1]; // 0x9b7 + [[maybe_unused]] uint8_t __pad0f37[0x1]; // 0xf37 public: - float m_flScaleEnd[10]; // 0x9b8 - GameTime_t m_flScaleTimeStart[10]; // 0x9e0 - GameTime_t m_flScaleTimeEnd[10]; // 0xa08 + float m_flScaleEnd[10]; // 0xf38 + GameTime_t m_flScaleTimeStart[10]; // 0xf60 + GameTime_t m_flScaleTimeEnd[10]; // 0xf88 }; // Alignment: 8 -// Size: 0x890 +// Size: 0xd18 class C_Precipitation : public C_BaseTrigger { public: - float m_flDensity; // 0x840 + float m_flDensity; // 0xcc8 private: - [[maybe_unused]] uint8_t __pad0844[0xc]; // 0x844 + [[maybe_unused]] uint8_t __pad0ccc[0xc]; // 0xccc public: - float m_flParticleInnerDist; // 0x850 + float m_flParticleInnerDist; // 0xcd8 private: - [[maybe_unused]] uint8_t __pad0854[0x4]; // 0x854 + [[maybe_unused]] uint8_t __pad0cdc[0x4]; // 0xcdc public: - char* m_pParticleDef; // 0x858 + char* m_pParticleDef; // 0xce0 private: - [[maybe_unused]] uint8_t __pad0860[0x20]; // 0x860 + [[maybe_unused]] uint8_t __pad0ce8[0x20]; // 0xce8 public: - TimedEvent m_tParticlePrecipTraceTimer[1]; // 0x880 - bool m_bActiveParticlePrecipEmitter[1]; // 0x888 - bool m_bParticlePrecipInitialized; // 0x889 - bool m_bHasSimulatedSinceLastSceneObjectUpdate; // 0x88a + TimedEvent m_tParticlePrecipTraceTimer[1]; // 0xd08 + bool m_bActiveParticlePrecipEmitter[1]; // 0xd10 + bool m_bParticlePrecipInitialized; // 0xd11 + bool m_bHasSimulatedSinceLastSceneObjectUpdate; // 0xd12 private: - [[maybe_unused]] uint8_t __pad088b[0x1]; // 0x88b + [[maybe_unused]] uint8_t __pad0d13[0x1]; // 0xd13 public: - int32_t m_nAvailableSheetSequencesMaxIndex; // 0x88c + int32_t m_nAvailableSheetSequencesMaxIndex; // 0xd14 }; // Alignment: 2 -// Size: 0x978 +// Size: 0xe00 class C_FireSprite : public C_Sprite { public: - Vector m_vecMoveDir; // 0x968 - bool m_bFadeFromAbove; // 0x974 + Vector m_vecMoveDir; // 0xdf0 + bool m_bFadeFromAbove; // 0xdfc }; // Alignment: 0 -// Size: 0x968 +// Size: 0xdf0 class C_FireFromAboveSprite : public C_Sprite { public: @@ -7987,369 +7887,359 @@ public: }; // Alignment: 23 -// Size: 0xa88 +// Size: 0x1008 class C_Fish : public CBaseAnimGraph { public: - Vector m_pos; // 0x998 - Vector m_vel; // 0x9a4 - QAngle m_angles; // 0x9b0 - int32_t m_localLifeState; // 0x9bc - float m_deathDepth; // 0x9c0 - float m_deathAngle; // 0x9c4 - float m_buoyancy; // 0x9c8 + Vector m_pos; // 0xf18 + Vector m_vel; // 0xf24 + QAngle m_angles; // 0xf30 + int32_t m_localLifeState; // 0xf3c + float m_deathDepth; // 0xf40 + float m_deathAngle; // 0xf44 + float m_buoyancy; // 0xf48 private: - [[maybe_unused]] uint8_t __pad09cc[0x4]; // 0x9cc + [[maybe_unused]] uint8_t __pad0f4c[0x4]; // 0xf4c public: - CountdownTimer m_wiggleTimer; // 0x9d0 - float m_wigglePhase; // 0x9e8 - float m_wiggleRate; // 0x9ec - Vector m_actualPos; // 0x9f0 - QAngle m_actualAngles; // 0x9fc + CountdownTimer m_wiggleTimer; // 0xf50 + float m_wigglePhase; // 0xf68 + float m_wiggleRate; // 0xf6c + Vector m_actualPos; // 0xf70 + QAngle m_actualAngles; // 0xf7c // MNetworkEnable // MNetworkEncoder - Vector m_poolOrigin; // 0xa08 + Vector m_poolOrigin; // 0xf88 // MNetworkEnable - float m_waterLevel; // 0xa14 - bool m_gotUpdate; // 0xa18 + float m_waterLevel; // 0xf94 + bool m_gotUpdate; // 0xf98 private: - [[maybe_unused]] uint8_t __pad0a19[0x3]; // 0xa19 + [[maybe_unused]] uint8_t __pad0f99[0x3]; // 0xf99 public: // MNetworkEnable // MNetworkSerializer "fish_pos_x" // MNetworkChangeCallback "OnPosChanged" - float m_x; // 0xa1c + float m_x; // 0xf9c // MNetworkEnable // MNetworkSerializer "fish_pos_y" // MNetworkChangeCallback "OnPosChanged" - float m_y; // 0xa20 + float m_y; // 0xfa0 // MNetworkEnable // MNetworkSerializer "fish_pos_z" // MNetworkChangeCallback "OnPosChanged" - float m_z; // 0xa24 + float m_z; // 0xfa4 // MNetworkEnable // MNetworkSerializer "angle_normalize_positive" // MNetworkBitCount "7" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "360.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "360" // MNetworkEncodeFlags // MNetworkChangeCallback "OnAngChanged" - float m_angle; // 0xa28 - float m_errorHistory[20]; // 0xa2c - int32_t m_errorHistoryIndex; // 0xa7c - int32_t m_errorHistoryCount; // 0xa80 - float m_averageError; // 0xa84 + float m_angle; // 0xfa8 + float m_errorHistory[20]; // 0xfac + int32_t m_errorHistoryIndex; // 0xffc + int32_t m_errorHistoryCount; // 0x1000 + float m_averageError; // 0x1004 }; // Alignment: 1 -// Size: 0xaf0 +// Size: 0x1070 class C_PhysicsProp : public C_BreakableProp { public: // MNetworkEnable - bool m_bAwake; // 0xae8 + bool m_bAwake; // 0x1068 }; // Alignment: 7 -// Size: 0xc40 +// Size: 0x11c0 class C_BasePropDoor : public C_DynamicProp { -private: - [[maybe_unused]] uint8_t __pad0c00[0x10]; // 0xc00 public: // MNetworkEnable - DoorState_t m_eDoorState; // 0xc10 - bool m_modelChanged; // 0xc14 + DoorState_t m_eDoorState; // 0x1190 + bool m_modelChanged; // 0x1194 // MNetworkEnable - bool m_bLocked; // 0xc15 + bool m_bLocked; // 0x1195 private: - [[maybe_unused]] uint8_t __pad0c16[0x2]; // 0xc16 + [[maybe_unused]] uint8_t __pad1196[0x2]; // 0x1196 public: // MNetworkEnable - Vector m_closedPosition; // 0xc18 + Vector m_closedPosition; // 0x1198 // MNetworkEnable - QAngle m_closedAngles; // 0xc24 + QAngle m_closedAngles; // 0x11a4 // MNetworkEnable - CHandle< C_BasePropDoor > m_hMaster; // 0xc30 - Vector m_vWhereToSetLightingOrigin; // 0xc34 + CHandle< C_BasePropDoor > m_hMaster; // 0x11b0 + Vector m_vWhereToSetLightingOrigin; // 0x11b4 }; -// Alignment: 12 -// Size: 0xb20 +// Alignment: 15 +// Size: 0x10c0 class C_PhysPropClientside : public C_BreakableProp { public: - GameTime_t m_flTouchDelta; // 0xae8 - GameTime_t m_fDeathTime; // 0xaec - float m_impactEnergyScale; // 0xaf0 - float m_inertiaScale; // 0xaf4 - float m_flDmgModBullet; // 0xaf8 - float m_flDmgModClub; // 0xafc - float m_flDmgModExplosive; // 0xb00 - float m_flDmgModFire; // 0xb04 - CUtlSymbolLarge m_iszPhysicsDamageTableName; // 0xb08 - CUtlSymbolLarge m_iszBasePropData; // 0xb10 - int32_t m_iInteractions; // 0xb18 - bool m_bHasBreakPiecesOrCommands; // 0xb1c + GameTime_t m_flTouchDelta; // 0x1068 + GameTime_t m_fDeathTime; // 0x106c + float m_impactEnergyScale; // 0x1070 + float m_inertiaScale; // 0x1074 + float m_flDmgModBullet; // 0x1078 + float m_flDmgModClub; // 0x107c + float m_flDmgModExplosive; // 0x1080 + float m_flDmgModFire; // 0x1084 + CUtlSymbolLarge m_iszPhysicsDamageTableName; // 0x1088 + CUtlSymbolLarge m_iszBasePropData; // 0x1090 + int32_t m_iInteractions; // 0x1098 + bool m_bHasBreakPiecesOrCommands; // 0x109c +private: + [[maybe_unused]] uint8_t __pad109d[0x3]; // 0x109d +public: + Vector m_vecDamagePosition; // 0x10a0 + Vector m_vecDamageDirection; // 0x10ac + int32_t m_nDamageType; // 0x10b8 }; // Alignment: 8 -// Size: 0xa10 +// Size: 0xf90 class C_RagdollProp : public CBaseAnimGraph { -private: - [[maybe_unused]] uint8_t __pad0998[0x8]; // 0x998 public: // MNetworkEnable // MNetworkEncoder // MNetworkChangeCallback "ragAnglesChanged" - C_NetworkUtlVectorBase< Vector > m_ragPos; // 0x9a0 + C_NetworkUtlVectorBase< Vector > m_ragPos; // 0xf20 // MNetworkEnable // MNetworkEncoder // MNetworkBitCount "13" // MNetworkChangeCallback "ragAnglesChanged" - C_NetworkUtlVectorBase< QAngle > m_ragAngles; // 0x9b8 + C_NetworkUtlVectorBase< QAngle > m_ragAngles; // 0xf38 // MNetworkEnable // MNetworkBitCount "8" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "1.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "1" // MNetworkEncodeFlags - float m_flBlendWeight; // 0x9d0 + float m_flBlendWeight; // 0xf50 // MNetworkEnable - CHandle< C_BaseEntity > m_hRagdollSource; // 0x9d4 - AttachmentHandle_t m_iEyeAttachment; // 0x9d8 + CHandle< C_BaseEntity > m_hRagdollSource; // 0xf54 + AttachmentHandle_t m_iEyeAttachment; // 0xf58 private: - [[maybe_unused]] uint8_t __pad09d9[0x3]; // 0x9d9 + [[maybe_unused]] uint8_t __pad0f59[0x3]; // 0xf59 public: - float m_flBlendWeightCurrent; // 0x9dc - CUtlVector< int32 > m_parentPhysicsBoneIndices; // 0x9e0 - CUtlVector< int32 > m_worldSpaceBoneComputationOrder; // 0x9f8 + float m_flBlendWeightCurrent; // 0xf5c + CUtlVector< int32 > m_parentPhysicsBoneIndices; // 0xf60 + CUtlVector< int32 > m_worldSpaceBoneComputationOrder; // 0xf78 }; // Alignment: 25 -// Size: 0xa58 +// Size: 0xfd8 class C_LocalTempEntity : public CBaseAnimGraph { -private: - [[maybe_unused]] uint8_t __pad0998[0x18]; // 0x998 public: - int32_t flags; // 0x9b0 - GameTime_t die; // 0x9b4 - float m_flFrameMax; // 0x9b8 - float x; // 0x9bc - float y; // 0x9c0 - float fadeSpeed; // 0x9c4 - float bounceFactor; // 0x9c8 - int32_t hitSound; // 0x9cc - int32_t priority; // 0x9d0 - Vector tentOffset; // 0x9d4 - QAngle m_vecTempEntAngVelocity; // 0x9e0 - int32_t tempent_renderamt; // 0x9ec - Vector m_vecNormal; // 0x9f0 - float m_flSpriteScale; // 0x9fc - int32_t m_nFlickerFrame; // 0xa00 - float m_flFrameRate; // 0xa04 - float m_flFrame; // 0xa08 + int32_t flags; // 0xf30 + GameTime_t die; // 0xf34 + float m_flFrameMax; // 0xf38 + float x; // 0xf3c + float y; // 0xf40 + float fadeSpeed; // 0xf44 + float bounceFactor; // 0xf48 + int32_t hitSound; // 0xf4c + int32_t priority; // 0xf50 + Vector tentOffset; // 0xf54 + QAngle m_vecTempEntAngVelocity; // 0xf60 + int32_t tempent_renderamt; // 0xf6c + Vector m_vecNormal; // 0xf70 + float m_flSpriteScale; // 0xf7c + int32_t m_nFlickerFrame; // 0xf80 + float m_flFrameRate; // 0xf84 + float m_flFrame; // 0xf88 private: - [[maybe_unused]] uint8_t __pad0a0c[0x4]; // 0xa0c + [[maybe_unused]] uint8_t __pad0f8c[0x4]; // 0xf8c public: - char* m_pszImpactEffect; // 0xa10 - char* m_pszParticleEffect; // 0xa18 - bool m_bParticleCollision; // 0xa20 + char* m_pszImpactEffect; // 0xf90 + char* m_pszParticleEffect; // 0xf98 + bool m_bParticleCollision; // 0xfa0 private: - [[maybe_unused]] uint8_t __pad0a21[0x3]; // 0xa21 + [[maybe_unused]] uint8_t __pad0fa1[0x3]; // 0xfa1 public: - int32_t m_iLastCollisionFrame; // 0xa24 - Vector m_vLastCollisionOrigin; // 0xa28 - Vector m_vecTempEntVelocity; // 0xa34 - Vector m_vecPrevAbsOrigin; // 0xa40 - Vector m_vecTempEntAcceleration; // 0xa4c + int32_t m_iLastCollisionFrame; // 0xfa4 + Vector m_vLastCollisionOrigin; // 0xfa8 + Vector m_vecTempEntVelocity; // 0xfb4 + Vector m_vecPrevAbsOrigin; // 0xfc0 + Vector m_vecTempEntAcceleration; // 0xfcc }; // Alignment: 1 -// Size: 0xb58 +// Size: 0x10d8 class C_ShatterGlassShardPhysics : public C_PhysicsProp { -private: - [[maybe_unused]] uint8_t __pad0af0[0x8]; // 0xaf0 public: // MNetworkEnable - shard_model_desc_t m_ShardDesc; // 0xaf8 + shard_model_desc_t m_ShardDesc; // 0x1078 }; // Alignment: 1 -// Size: 0x9c8 +// Size: 0xf48 class C_PointHintUIButtonHighlightModel : public CBaseAnimGraph { public: - matrix3x4_t m_mComponentTransform; // 0x998 + matrix3x4_t m_mComponentTransform; // 0xf18 }; // Alignment: 1 -// Size: 0x9c8 +// Size: 0xf48 class C_PointHintUIArrowHighlightModel : public CBaseAnimGraph { public: - matrix3x4_t m_mArrowLocalTransform; // 0x998 + matrix3x4_t m_mArrowLocalTransform; // 0xf18 }; // Alignment: 4 -// Size: 0xa30 +// Size: 0xfb0 class C_PointHintUIHighlightModel : public CBaseAnimGraph { -private: - [[maybe_unused]] uint8_t __pad0998[0x30]; // 0x998 public: - CUtlVector< matrix3x4a_t > m_vecRenderModelComponentTransforms; // 0x9c8 - int32_t m_nTrackedDeviceIndex; // 0x9e0 + CUtlVector< matrix3x4a_t > m_vecRenderModelComponentTransforms; // 0xf48 + int32_t m_nTrackedDeviceIndex; // 0xf60 private: - [[maybe_unused]] uint8_t __pad09e4[0x14]; // 0x9e4 + [[maybe_unused]] uint8_t __pad0f64[0x14]; // 0xf64 public: - matrix3x4_t m_matLocalHighlight; // 0x9f8 - bool m_bVisible; // 0xa28 + matrix3x4_t m_matLocalHighlight; // 0xf78 + bool m_bVisible; // 0xfa8 }; // Alignment: 20 -// Size: 0x1070 +// Size: 0x15f0 class C_EconEntity : public C_BaseFlex { -private: - [[maybe_unused]] uint8_t __pad0b28[0x10]; // 0xb28 public: - float m_flFlexDelayTime; // 0xb38 + float m_flFlexDelayTime; // 0x10b8 private: - [[maybe_unused]] uint8_t __pad0b3c[0x4]; // 0xb3c + [[maybe_unused]] uint8_t __pad10bc[0x4]; // 0x10bc public: - float32* m_flFlexDelayedWeight; // 0xb40 - bool m_bAttributesInitialized; // 0xb48 + float32* m_flFlexDelayedWeight; // 0x10c0 + bool m_bAttributesInitialized; // 0x10c8 private: - [[maybe_unused]] uint8_t __pad0b49[0x7]; // 0xb49 + [[maybe_unused]] uint8_t __pad10c9[0x7]; // 0x10c9 public: // MNetworkEnable - C_AttributeContainer m_AttributeManager; // 0xb50 + C_AttributeContainer m_AttributeManager; // 0x10d0 // MNetworkEnable - uint32_t m_OriginalOwnerXuidLow; // 0xff8 + uint32_t m_OriginalOwnerXuidLow; // 0x1578 // MNetworkEnable - uint32_t m_OriginalOwnerXuidHigh; // 0xffc + uint32_t m_OriginalOwnerXuidHigh; // 0x157c // MNetworkEnable - int32_t m_nFallbackPaintKit; // 0x1000 + int32_t m_nFallbackPaintKit; // 0x1580 // MNetworkEnable - int32_t m_nFallbackSeed; // 0x1004 + int32_t m_nFallbackSeed; // 0x1584 // MNetworkEnable - float m_flFallbackWear; // 0x1008 + float m_flFallbackWear; // 0x1588 // MNetworkEnable - int32_t m_nFallbackStatTrak; // 0x100c - bool m_bClientside; // 0x1010 - bool m_bParticleSystemsCreated; // 0x1011 + int32_t m_nFallbackStatTrak; // 0x158c + bool m_bClientside; // 0x1590 + bool m_bParticleSystemsCreated; // 0x1591 private: - [[maybe_unused]] uint8_t __pad1012[0x6]; // 0x1012 + [[maybe_unused]] uint8_t __pad1592[0x6]; // 0x1592 public: - CUtlVector< int32 > m_vecAttachedParticles; // 0x1018 - CHandle< CBaseAnimGraph > m_hViewmodelAttachment; // 0x1030 - int32_t m_iOldTeam; // 0x1034 - bool m_bAttachmentDirty; // 0x1038 + CUtlVector< int32 > m_vecAttachedParticles; // 0x1598 + CHandle< CBaseAnimGraph > m_hViewmodelAttachment; // 0x15b0 + int32_t m_iOldTeam; // 0x15b4 + bool m_bAttachmentDirty; // 0x15b8 private: - [[maybe_unused]] uint8_t __pad1039[0x3]; // 0x1039 + [[maybe_unused]] uint8_t __pad15b9[0x3]; // 0x15b9 public: - int32_t m_nUnloadedModelIndex; // 0x103c - int32_t m_iNumOwnerValidationRetries; // 0x1040 + int32_t m_nUnloadedModelIndex; // 0x15bc + int32_t m_iNumOwnerValidationRetries; // 0x15c0 private: - [[maybe_unused]] uint8_t __pad1044[0xc]; // 0x1044 + [[maybe_unused]] uint8_t __pad15c4[0xc]; // 0x15c4 public: - CHandle< C_BaseEntity > m_hOldProvidee; // 0x1050 + CHandle< C_BaseEntity > m_hOldProvidee; // 0x15d0 private: - [[maybe_unused]] uint8_t __pad1054[0x4]; // 0x1054 + [[maybe_unused]] uint8_t __pad15d4[0x4]; // 0x15d4 public: - CUtlVector< C_EconEntity::AttachedModelData_t > m_vecAttachedModels; // 0x1058 + CUtlVector< C_EconEntity::AttachedModelData_t > m_vecAttachedModels; // 0x15d8 }; // Alignment: 2 -// Size: 0x1078 +// Size: 0x15f8 class C_EconWearable : public C_EconEntity { public: - int32_t m_nForceSkin; // 0x1070 - bool m_bAlwaysAllow; // 0x1074 + int32_t m_nForceSkin; // 0x15f0 + bool m_bAlwaysAllow; // 0x15f4 }; // Alignment: 12 -// Size: 0xb78 +// Size: 0x10f8 class C_BaseGrenade : public C_BaseFlex { public: - bool m_bHasWarnedAI; // 0xb28 - bool m_bIsSmokeGrenade; // 0xb29 + bool m_bHasWarnedAI; // 0x10a8 + bool m_bIsSmokeGrenade; // 0x10a9 // MNetworkEnable - bool m_bIsLive; // 0xb2a + bool m_bIsLive; // 0x10aa private: - [[maybe_unused]] uint8_t __pad0b2b[0x1]; // 0xb2b + [[maybe_unused]] uint8_t __pad10ab[0x1]; // 0x10ab public: // MNetworkEnable // MNetworkBitCount "10" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "1024.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "1024" // MNetworkEncodeFlags - float m_DmgRadius; // 0xb2c + float m_DmgRadius; // 0x10ac // MNetworkEnable - GameTime_t m_flDetonateTime; // 0xb30 - float m_flWarnAITime; // 0xb34 + GameTime_t m_flDetonateTime; // 0x10b0 + float m_flWarnAITime; // 0x10b4 // MNetworkEnable // MNetworkBitCount "10" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "256.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "256" // MNetworkEncodeFlags - float m_flDamage; // 0xb38 + float m_flDamage; // 0x10b8 private: - [[maybe_unused]] uint8_t __pad0b3c[0x4]; // 0xb3c + [[maybe_unused]] uint8_t __pad10bc[0x4]; // 0x10bc public: - CUtlSymbolLarge m_iszBounceSound; // 0xb40 - CUtlString m_ExplosionSound; // 0xb48 + CUtlSymbolLarge m_iszBounceSound; // 0x10c0 + CUtlString m_ExplosionSound; // 0x10c8 private: - [[maybe_unused]] uint8_t __pad0b50[0x4]; // 0xb50 + [[maybe_unused]] uint8_t __pad10d0[0x4]; // 0x10d0 public: // MNetworkEnable - CHandle< C_BaseEntity > m_hThrower; // 0xb54 + CHandle< C_BaseEntity > m_hThrower; // 0x10d4 private: - [[maybe_unused]] uint8_t __pad0b58[0x18]; // 0xb58 + [[maybe_unused]] uint8_t __pad10d8[0x18]; // 0x10d8 public: - GameTime_t m_flNextAttack; // 0xb70 - CHandle< C_BaseEntity > m_hOriginalThrower; // 0xb74 + GameTime_t m_flNextAttack; // 0x10f0 + CHandle< C_BaseEntity > m_hOriginalThrower; // 0x10f4 }; // Alignment: 2 -// Size: 0x9a8 +// Size: 0xf28 class C_BRC4Target : public CBaseAnimGraph { -private: - [[maybe_unused]] uint8_t __pad0998[0x8]; // 0x998 public: // MNetworkEnable - bool m_bBrokenOpen; // 0x9a0 + bool m_bBrokenOpen; // 0xf20 private: - [[maybe_unused]] uint8_t __pad09a1[0x3]; // 0x9a1 + [[maybe_unused]] uint8_t __pad0f21[0x3]; // 0xf21 public: // MNetworkEnable - float m_flRadius; // 0x9a4 + float m_flRadius; // 0xf24 }; // Alignment: 6 -// Size: 0x9c0 +// Size: 0xf40 class C_ParadropChopper : public CBaseAnimGraph { -private: - [[maybe_unused]] uint8_t __pad0998[0x8]; // 0x998 public: - Vector m_vecLastRopeTargetPos; // 0x9a0 - GameTime_t m_flLastRopeTime; // 0x9ac - int32_t m_nRappelABone; // 0x9b0 - int32_t m_nRappelBBone; // 0x9b4 + Vector m_vecLastRopeTargetPos; // 0xf20 + GameTime_t m_flLastRopeTime; // 0xf2c + int32_t m_nRappelABone; // 0xf30 + int32_t m_nRappelBBone; // 0xf34 // MNetworkEnable - CHandle< C_BaseEntity > m_hCallingPlayer; // 0x9b8 - bool m_bCalledByPlayer; // 0x9bc + CHandle< C_BaseEntity > m_hCallingPlayer; // 0xf38 + bool m_bCalledByPlayer; // 0xf3c }; // Alignment: 0 -// Size: 0x998 +// Size: 0xf18 class C_SurvivalSpawnChopper : public CBaseAnimGraph { public: @@ -8357,72 +8247,68 @@ public: }; // Alignment: 12 -// Size: 0x9f0 +// Size: 0xf70 class C_Dronegun : public CBaseAnimGraph { -private: - [[maybe_unused]] uint8_t __pad0998[0x8]; // 0x998 public: // MNetworkEnable - Vector m_vecAttentionTarget; // 0x9a0 + Vector m_vecAttentionTarget; // 0xf20 // MNetworkEnable - Vector m_vecTargetOffset; // 0x9ac + Vector m_vecTargetOffset; // 0xf2c // MNetworkEnable - bool m_bHasTarget; // 0x9b8 + bool m_bHasTarget; // 0xf38 private: - [[maybe_unused]] uint8_t __pad09b9[0x3]; // 0x9b9 + [[maybe_unused]] uint8_t __pad0f39[0x3]; // 0xf39 public: - Vector m_vecAttentionCurrent; // 0x9bc - int32_t m_nPoseParamPitch; // 0x9c8 - int32_t m_nPoseParamYaw; // 0x9cc - bool m_bVarInit; // 0x9d0 - AttachmentHandle_t m_nAttachMuzzle; // 0x9d1 + Vector m_vecAttentionCurrent; // 0xf3c + int32_t m_nPoseParamPitch; // 0xf48 + int32_t m_nPoseParamYaw; // 0xf4c + bool m_bVarInit; // 0xf50 + AttachmentHandle_t m_nAttachMuzzle; // 0xf51 private: - [[maybe_unused]] uint8_t __pad09d2[0x2]; // 0x9d2 + [[maybe_unused]] uint8_t __pad0f52[0x2]; // 0xf52 public: - GameTime_t m_flLastClientThinkTime; // 0x9d4 - GameTime_t m_flNextSpark; // 0x9d8 - int32_t m_nBoneOverrideIndex; // 0x9dc - Vector m_vecLaserTracePos; // 0x9e0 + GameTime_t m_flLastClientThinkTime; // 0xf54 + GameTime_t m_flNextSpark; // 0xf58 + int32_t m_nBoneOverrideIndex; // 0xf5c + Vector m_vecLaserTracePos; // 0xf60 }; // Alignment: 15 -// Size: 0xd50 +// Size: 0x12d0 class C_Drone : public C_PhysicsProp { -private: - [[maybe_unused]] uint8_t __pad0af0[0x10]; // 0xaf0 public: - CUtlVector< Vector > m_vecClientSideTrailPositions; // 0xb00 + CUtlVector< Vector > m_vecClientSideTrailPositions; // 0x1080 // MNetworkEnable - CEntityHandle m_hMoveToThisEntity; // 0xb18 + CHandle< C_BaseEntity > m_hMoveToThisEntity; // 0x1098 // MNetworkEnable - CEntityHandle m_hDeliveryCargo; // 0xb1c + CHandle< C_BaseEntity > m_hDeliveryCargo; // 0x109c // MNetworkEnable - CEntityHandle m_hRecentCargo; // 0xb20 + CHandle< C_BaseEntity > m_hRecentCargo; // 0x10a0 // MNetworkEnable - bool m_bPilotTakeoverAllowed; // 0xb24 + bool m_bPilotTakeoverAllowed; // 0x10a4 private: - [[maybe_unused]] uint8_t __pad0b25[0x3]; // 0xb25 + [[maybe_unused]] uint8_t __pad10a5[0x3]; // 0x10a5 public: // MNetworkEnable - CEntityHandle m_hPotentialCargo; // 0xb28 + CHandle< C_BaseEntity > m_hPotentialCargo; // 0x10a8 // MNetworkEnable - CEntityHandle m_hCurrentPilot; // 0xb2c + CHandle< C_BaseEntity > m_hCurrentPilot; // 0x10ac // MNetworkEnable - Vector m_vecTagPositions[24]; // 0xb30 + Vector m_vecTagPositions[24]; // 0x10b0 // MNetworkEnable - int32_t m_vecTagIncrements[24]; // 0xc50 - GameTime_t m_flLastTimeCargoWasAttached; // 0xcb0 - Vector m_vecLastKnownCargoAttachPositions[4]; // 0xcb4 - Vector m_vecThrusterLastPos; // 0xce4 - Vector m_vecThrusterSmoothVel; // 0xcf0 - Vector m_vecThrusterSmoothAccel; // 0xcfc - float m_flJammedEffectAmount; // 0xd08 + int32_t m_vecTagIncrements[24]; // 0x11d0 + GameTime_t m_flLastTimeCargoWasAttached; // 0x1230 + Vector m_vecLastKnownCargoAttachPositions[4]; // 0x1234 + Vector m_vecThrusterLastPos; // 0x1264 + Vector m_vecThrusterSmoothVel; // 0x1270 + Vector m_vecThrusterSmoothAccel; // 0x127c + float m_flJammedEffectAmount; // 0x1288 }; // Alignment: 0 -// Size: 0xaf0 +// Size: 0x1070 class C_CSPropExplodingBarrel : public C_PhysicsProp { public: @@ -8430,137 +8316,135 @@ public: }; // Alignment: 1 -// Size: 0xaf8 +// Size: 0x1078 class C_CSPropExplodingBarrelTop : public C_PhysicsProp { public: // MNetworkEnable - float m_flOverrideAlpha; // 0xaf0 + float m_flOverrideAlpha; // 0x1070 }; // Alignment: 24 -// Size: 0xaa8 +// Size: 0x1028 class C_EnvGasCanister : public CBaseAnimGraph { public: // MNetworkEnable - bool m_bLanded; // 0x998 + bool m_bLanded; // 0xf18 private: - [[maybe_unused]] uint8_t __pad0999[0x67]; // 0x999 + [[maybe_unused]] uint8_t __pad0f19[0x67]; // 0xf19 public: - bool m_bSpawnedSkyboxParticles; // 0xa00 + bool m_bSpawnedSkyboxParticles; // 0xf80 private: - [[maybe_unused]] uint8_t __pad0a01[0x3]; // 0xa01 + [[maybe_unused]] uint8_t __pad0f81[0x3]; // 0xf81 public: - GameTime_t m_flKillImpactParticlesTime; // 0xa04 + GameTime_t m_flKillImpactParticlesTime; // 0xf84 // MNetworkEnable - Vector m_vecImpactPosition; // 0xa08 + Vector m_vecImpactPosition; // 0xf88 // MNetworkEnable - Vector m_vecStartPosition; // 0xa14 + Vector m_vecStartPosition; // 0xf94 // MNetworkEnable - Vector m_vecEnterWorldPosition; // 0xa20 + Vector m_vecEnterWorldPosition; // 0xfa0 // MNetworkEnable - Vector m_vecDirection; // 0xa2c + Vector m_vecDirection; // 0xfac // MNetworkEnable - QAngle m_vecStartAngles; // 0xa38 + QAngle m_vecStartAngles; // 0xfb8 // MNetworkEnable - float m_flFlightTime; // 0xa44 + float m_flFlightTime; // 0xfc4 // MNetworkEnable - float m_flFlightSpeed; // 0xa48 + float m_flFlightSpeed; // 0xfc8 // MNetworkEnable - GameTime_t m_flLaunchTime; // 0xa4c + GameTime_t m_flLaunchTime; // 0xfcc // MNetworkEnable - float m_flInitialZSpeed; // 0xa50 + float m_flInitialZSpeed; // 0xfd0 // MNetworkEnable - float m_flZAcceleration; // 0xa54 + float m_flZAcceleration; // 0xfd4 // MNetworkEnable - float m_flHorizSpeed; // 0xa58 + float m_flHorizSpeed; // 0xfd8 // MNetworkEnable - bool m_bLaunchedFromWithinWorld; // 0xa5c + bool m_bLaunchedFromWithinWorld; // 0xfdc private: - [[maybe_unused]] uint8_t __pad0a5d[0x3]; // 0xa5d + [[maybe_unused]] uint8_t __pad0fdd[0x3]; // 0xfdd public: // MNetworkEnable - Vector m_vecParabolaDirection; // 0xa60 + Vector m_vecParabolaDirection; // 0xfe0 // MNetworkEnable - float m_flWorldEnterTime; // 0xa6c + float m_flWorldEnterTime; // 0xfec // MNetworkEnable - Vector m_vecSkyboxOrigin; // 0xa70 + Vector m_vecSkyboxOrigin; // 0xff0 // MNetworkEnable - float m_flSkyboxScale; // 0xa7c + float m_flSkyboxScale; // 0xffc // MNetworkEnable - bool m_bInSkybox; // 0xa80 + bool m_bInSkybox; // 0x1000 // MNetworkEnable - bool m_bDoImpactEffects; // 0xa81 + bool m_bDoImpactEffects; // 0x1001 private: - [[maybe_unused]] uint8_t __pad0a82[0x2]; // 0xa82 + [[maybe_unused]] uint8_t __pad1002[0x2]; // 0x1002 public: // MNetworkEnable - int32_t m_nMyZoneIndex; // 0xa84 + int32_t m_nMyZoneIndex; // 0x1004 // MNetworkEnable - CHandle< C_BaseEntity > m_hSkyboxCopy; // 0xa88 - float m_flLaunchHeight; // 0xa8c + CHandle< C_BaseEntity > m_hSkyboxCopy; // 0x1008 + float m_flLaunchHeight; // 0x100c }; // Alignment: 4 -// Size: 0x9c0 +// Size: 0xf40 class C_PropCounter : public CBaseAnimGraph { public: // MNetworkEnable - float m_flDisplayValue; // 0x998 - float m_flDisplayValueLocal; // 0x99c - float m_flTimeOfLastValueChange; // 0x9a0 - float m_flPreviousValue; // 0x9a4 + float m_flDisplayValue; // 0xf18 + float m_flDisplayValueLocal; // 0xf1c + float m_flTimeOfLastValueChange; // 0xf20 + float m_flPreviousValue; // 0xf24 }; // Alignment: 1 -// Size: 0x9a0 +// Size: 0xf20 class C_ViewmodelWeapon : public CBaseAnimGraph { public: - char* m_worldModel; // 0x998 + char* m_worldModel; // 0xf18 }; // Alignment: 17 -// Size: 0xa00 +// Size: 0xf80 class C_BaseViewModel : public CBaseAnimGraph { -private: - [[maybe_unused]] uint8_t __pad0998[0x8]; // 0x998 public: - Vector m_vecLastFacing; // 0x9a0 + Vector m_vecLastFacing; // 0xf20 // MNetworkEnable - uint32_t m_nViewModelIndex; // 0x9ac + uint32_t m_nViewModelIndex; // 0xf2c // MNetworkEnable - uint32_t m_nAnimationParity; // 0x9b0 + uint32_t m_nAnimationParity; // 0xf30 // MNetworkEnable - float m_flAnimationStartTime; // 0x9b4 + float m_flAnimationStartTime; // 0xf34 // MNetworkEnable - CHandle< C_BasePlayerWeapon > m_hWeapon; // 0x9b8 + CHandle< C_BasePlayerWeapon > m_hWeapon; // 0xf38 private: - [[maybe_unused]] uint8_t __pad09bc[0x4]; // 0x9bc + [[maybe_unused]] uint8_t __pad0f3c[0x4]; // 0xf3c public: - CUtlSymbolLarge m_sVMName; // 0x9c0 - CUtlSymbolLarge m_sAnimationPrefix; // 0x9c8 - CHandle< C_ViewmodelWeapon > m_hWeaponModel; // 0x9d0 - AttachmentHandle_t m_iCameraAttachment; // 0x9d4 + CUtlSymbolLarge m_sVMName; // 0xf40 + CUtlSymbolLarge m_sAnimationPrefix; // 0xf48 + CHandle< C_ViewmodelWeapon > m_hWeaponModel; // 0xf50 + AttachmentHandle_t m_iCameraAttachment; // 0xf54 private: - [[maybe_unused]] uint8_t __pad09d5[0x3]; // 0x9d5 + [[maybe_unused]] uint8_t __pad0f55[0x3]; // 0xf55 public: - QAngle m_vecLastCameraAngles; // 0x9d8 - float m_previousElapsedDuration; // 0x9e4 - float m_previousCycle; // 0x9e8 - int32_t m_nOldAnimationParity; // 0x9ec - HSequence m_hOldLayerSequence; // 0x9f0 - int32_t m_oldLayer; // 0x9f4 - float m_oldLayerStartTime; // 0x9f8 + QAngle m_vecLastCameraAngles; // 0xf58 + float m_previousElapsedDuration; // 0xf64 + float m_previousCycle; // 0xf68 + int32_t m_nOldAnimationParity; // 0xf6c + HSequence m_hOldLayerSequence; // 0xf70 + int32_t m_oldLayer; // 0xf74 + float m_oldLayerStartTime; // 0xf78 // MNetworkEnable - CEntityHandle m_hControlPanel; // 0x9fc + CHandle< C_BaseEntity > m_hControlPanel; // 0xf7c }; // Alignment: 0 -// Size: 0x998 +// Size: 0xf18 class C_ViewmodelAttachmentModel : public CBaseAnimGraph { public: @@ -8568,19 +8452,19 @@ public: }; // Alignment: 2 -// Size: 0xa28 +// Size: 0xfa8 class C_PredictedViewModel : public C_BaseViewModel { public: - QAngle m_LagAnglesHistory; // 0xa00 + QAngle m_LagAnglesHistory; // 0xf80 private: - [[maybe_unused]] uint8_t __pad0a0c[0xc]; // 0xa0c + [[maybe_unused]] uint8_t __pad0f8c[0xc]; // 0xf8c public: - Vector m_vPredictedOffset; // 0xa18 + Vector m_vPredictedOffset; // 0xf98 }; // Alignment: 0 -// Size: 0x998 +// Size: 0xf18 class C_WorldModelStattrak : public CBaseAnimGraph { public: @@ -8588,7 +8472,7 @@ public: }; // Alignment: 0 -// Size: 0x998 +// Size: 0xf18 class C_WorldModelNametag : public CBaseAnimGraph { public: @@ -8596,97 +8480,95 @@ public: }; // Alignment: 15 -// Size: 0xc00 +// Size: 0x1180 class C_BaseCSGrenadeProjectile : public C_BaseGrenade { public: // MNetworkEnable - Vector m_vInitialVelocity; // 0xb78 + Vector m_vInitialVelocity; // 0x10f8 // MNetworkEnable - int32_t m_nBounces; // 0xb84 + int32_t m_nBounces; // 0x1104 // MNetworkEnable - CStrongHandle< InfoForResourceTypeIParticleSystemDefinition > m_nExplodeEffectIndex; // 0xb88 + CStrongHandle< InfoForResourceTypeIParticleSystemDefinition > m_nExplodeEffectIndex; // 0x1108 // MNetworkEnable - int32_t m_nExplodeEffectTickBegin; // 0xb90 + int32_t m_nExplodeEffectTickBegin; // 0x1110 // MNetworkEnable - Vector m_vecExplodeEffectOrigin; // 0xb94 - GameTime_t m_flSpawnTime; // 0xba0 - Vector vecLastTrailLinePos; // 0xba4 - GameTime_t flNextTrailLineTime; // 0xbb0 - bool m_bExplodeEffectBegan; // 0xbb4 - bool m_bCanCreateGrenadeTrail; // 0xbb5 + Vector m_vecExplodeEffectOrigin; // 0x1114 + GameTime_t m_flSpawnTime; // 0x1120 + Vector vecLastTrailLinePos; // 0x1124 + GameTime_t flNextTrailLineTime; // 0x1130 + bool m_bExplodeEffectBegan; // 0x1134 + bool m_bCanCreateGrenadeTrail; // 0x1135 private: - [[maybe_unused]] uint8_t __pad0bb6[0x2]; // 0xbb6 + [[maybe_unused]] uint8_t __pad1136[0x2]; // 0x1136 public: - ParticleIndex_t m_nSnapshotTrajectoryEffectIndex; // 0xbb8 + ParticleIndex_t m_nSnapshotTrajectoryEffectIndex; // 0x1138 private: - [[maybe_unused]] uint8_t __pad0bbc[0x4]; // 0xbbc + [[maybe_unused]] uint8_t __pad113c[0x4]; // 0x113c public: - CStrongHandle< InfoForResourceTypeIParticleSnapshot > m_hSnapshotTrajectoryParticleSnapshot; // 0xbc0 - CUtlVector< Vector > m_arrTrajectoryTrailPoints; // 0xbc8 - CUtlVector< float32 > m_arrTrajectoryTrailPointCreationTimes; // 0xbe0 - float m_flTrajectoryTrailEffectCreationTime; // 0xbf8 - - // Static fields: + CStrongHandle< InfoForResourceTypeIParticleSnapshot > m_hSnapshotTrajectoryParticleSnapshot; // 0x1140 + CUtlVector< Vector > m_arrTrajectoryTrailPoints; // 0x1148 + CUtlVector< float32 > m_arrTrajectoryTrailPointCreationTimes; // 0x1160 + float m_flTrajectoryTrailEffectCreationTime; // 0x1178 static float &Get_s_flThinkInterval(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("client.dll")->FindDeclaredClass("C_BaseCSGrenadeProjectile")->m_static_fields[0]->m_instance);}; }; // Alignment: 4 -// Size: 0xb90 +// Size: 0x1110 class C_BreachChargeProjectile : public C_BaseGrenade { public: // MNetworkEnable - bool m_bShouldExplode; // 0xb78 + bool m_bShouldExplode; // 0x10f8 private: - [[maybe_unused]] uint8_t __pad0b79[0x3]; // 0xb79 + [[maybe_unused]] uint8_t __pad10f9[0x3]; // 0x10f9 public: // MNetworkEnable - CHandle< C_BaseEntity > m_weaponThatThrewMe; // 0xb7c + CHandle< C_BaseEntity > m_weaponThatThrewMe; // 0x10fc // MNetworkEnable - int32_t m_nParentBoneIndex; // 0xb80 + int32_t m_nParentBoneIndex; // 0x1100 // MNetworkEnable - Vector m_vecParentBonePos; // 0xb84 + Vector m_vecParentBonePos; // 0x1104 }; // Alignment: 4 -// Size: 0xbb0 +// Size: 0x1130 class C_BumpMineProjectile : public C_BaseGrenade { public: - bool m_bShouldExplode; // 0xb78 + bool m_bShouldExplode; // 0x10f8 private: - [[maybe_unused]] uint8_t __pad0b79[0x3]; // 0xb79 + [[maybe_unused]] uint8_t __pad10f9[0x3]; // 0x10f9 public: // MNetworkEnable - int32_t m_nParentBoneIndex; // 0xb7c + int32_t m_nParentBoneIndex; // 0x10fc // MNetworkEnable - Vector m_vecParentBonePos; // 0xb80 + Vector m_vecParentBonePos; // 0x1100 // MNetworkEnable - bool m_bArmed; // 0xb8c + bool m_bArmed; // 0x110c }; // Alignment: 6 -// Size: 0xc10 +// Size: 0x1190 class C_TripWireFireProjectile : public C_BaseGrenade { public: // MNetworkEnable - GameTime_t m_flAttachTime; // 0xb78 + GameTime_t m_flAttachTime; // 0x10f8 // MNetworkEnable - Vector m_vecTripWireEndPositions[10]; // 0xb7c + Vector m_vecTripWireEndPositions[10]; // 0x10fc // MNetworkEnable - bool m_bTripWireEndPositionsUsed[10]; // 0xbf4 + bool m_bTripWireEndPositionsUsed[10]; // 0x1174 private: - [[maybe_unused]] uint8_t __pad0bfe[0x2]; // 0xbfe + [[maybe_unused]] uint8_t __pad117e[0x2]; // 0x117e public: - int32_t m_nTripWireStartIndex0; // 0xc00 - int32_t m_nTripWireEndIndex0; // 0xc04 - int32_t m_nTripWireCenterIndex0; // 0xc08 + int32_t m_nTripWireStartIndex0; // 0x1180 + int32_t m_nTripWireEndIndex0; // 0x1184 + int32_t m_nTripWireCenterIndex0; // 0x1188 }; // Alignment: 0 -// Size: 0xaf0 +// Size: 0x1070 class C_PhysicsPropMultiplayer : public C_PhysicsProp { public: @@ -8694,27 +8576,25 @@ public: }; // Alignment: 4 -// Size: 0xb08 +// Size: 0x1088 class C_PhysPropLootCrate : public C_PhysicsPropMultiplayer { -private: - [[maybe_unused]] uint8_t __pad0af0[0x8]; // 0xaf0 public: // MNetworkEnable - bool m_bRenderInPSPM; // 0xaf8 + bool m_bRenderInPSPM; // 0x1078 // MNetworkEnable - bool m_bRenderInTablet; // 0xaf9 + bool m_bRenderInTablet; // 0x1079 private: - [[maybe_unused]] uint8_t __pad0afa[0x2]; // 0xafa + [[maybe_unused]] uint8_t __pad107a[0x2]; // 0x107a public: // MNetworkEnable - int32_t m_iMaxHealth; // 0xafc + int32_t m_iMaxHealth; // 0x107c // MNetworkEnable - int32_t m_iHealth; // 0xb00 + int32_t m_iHealth; // 0x1080 }; // Alignment: 0 -// Size: 0xaf0 +// Size: 0x1070 class C_PhysPropAmmoBox : public C_PhysicsPropMultiplayer { public: @@ -8722,7 +8602,7 @@ public: }; // Alignment: 0 -// Size: 0xaf0 +// Size: 0x1070 class C_PhysPropWeaponUpgrade : public C_PhysicsPropMultiplayer { public: @@ -8730,7 +8610,7 @@ public: }; // Alignment: 0 -// Size: 0xaf8 +// Size: 0x1078 class C_PhysPropRadarJammer : public C_PhysicsPropMultiplayer { public: @@ -8738,7 +8618,7 @@ public: }; // Alignment: 0 -// Size: 0xc20 +// Size: 0x11a0 class C_SensorGrenadeProjectile : public C_BaseCSGrenadeProjectile { public: @@ -8746,19 +8626,19 @@ public: }; // Alignment: 5 -// Size: 0xbf0 +// Size: 0x1170 class C_CSGO_PreviewModel : public C_BaseFlex { public: - CUtlString m_animgraph; // 0xb28 - CUtlString m_animgraphCharacterModeString; // 0xb30 - CUtlString m_defaultAnim; // 0xb38 - AnimLoopMode_t m_nDefaultAnimLoopMode; // 0xb40 - float m_flInitialModelScale; // 0xb44 + CUtlString m_animgraph; // 0x10a8 + CUtlString m_animgraphCharacterModeString; // 0x10b0 + CUtlString m_defaultAnim; // 0x10b8 + AnimLoopMode_t m_nDefaultAnimLoopMode; // 0x10c0 + float m_flInitialModelScale; // 0x10c4 }; // Alignment: 0 -// Size: 0xbf0 +// Size: 0x1170 class C_CSGO_PreviewModelAlias_csgo_item_previewmodel : public C_CSGO_PreviewModel { public: @@ -8766,39 +8646,39 @@ public: }; // Alignment: 6 -// Size: 0x9e8 +// Size: 0xf68 class C_BulletHitModel : public CBaseAnimGraph { public: - matrix3x4_t m_matLocal; // 0x998 - int32_t m_iBoneIndex; // 0x9c8 - CHandle< C_BaseEntity > m_hPlayerParent; // 0x9cc - bool m_bIsHit; // 0x9d0 + matrix3x4_t m_matLocal; // 0xf18 + int32_t m_iBoneIndex; // 0xf48 + CHandle< C_BaseEntity > m_hPlayerParent; // 0xf4c + bool m_bIsHit; // 0xf50 private: - [[maybe_unused]] uint8_t __pad09d1[0x3]; // 0x9d1 + [[maybe_unused]] uint8_t __pad0f51[0x3]; // 0xf51 public: - float m_flTimeCreated; // 0x9d4 - Vector m_vecStartPos; // 0x9d8 + float m_flTimeCreated; // 0xf54 + Vector m_vecStartPos; // 0xf58 }; // Alignment: 6 -// Size: 0x9d0 +// Size: 0xf50 class C_PickUpModelSlerper : public CBaseAnimGraph { public: - CHandle< C_BaseEntity > m_hPlayerParent; // 0x998 - CHandle< C_BaseEntity > m_hItem; // 0x99c - float m_flTimePickedUp; // 0x9a0 - QAngle m_angOriginal; // 0x9a4 - Vector m_vecPosOriginal; // 0x9b0 + CHandle< C_BaseEntity > m_hPlayerParent; // 0xf18 + CHandle< C_BaseEntity > m_hItem; // 0xf1c + float m_flTimePickedUp; // 0xf20 + QAngle m_angOriginal; // 0xf24 + Vector m_vecPosOriginal; // 0xf30 private: - [[maybe_unused]] uint8_t __pad09bc[0x4]; // 0x9bc + [[maybe_unused]] uint8_t __pad0f3c[0x4]; // 0xf3c public: - QAngle m_angRandom; // 0x9c0 + QAngle m_angRandom; // 0xf40 }; // Alignment: 0 -// Size: 0x998 +// Size: 0xf18 class C_WorldModelGloves : public CBaseAnimGraph { public: @@ -8806,7 +8686,7 @@ public: }; // Alignment: 0 -// Size: 0x9a0 +// Size: 0xf20 class C_HostageCarriableProp : public CBaseAnimGraph { public: @@ -8814,474 +8694,466 @@ public: }; // Alignment: 1 -// Size: 0x9a8 +// Size: 0xf28 class C_Multimeter : public CBaseAnimGraph { -private: - [[maybe_unused]] uint8_t __pad0998[0x8]; // 0x998 public: - CHandle< C_PlantedC4 > m_hTargetC4; // 0x9a0 + CHandle< C_PlantedC4 > m_hTargetC4; // 0xf20 }; // Alignment: 21 -// Size: 0xa08 +// Size: 0xf88 class C_PlantedC4 : public CBaseAnimGraph { public: // MNetworkEnable - bool m_bBombTicking; // 0x998 + bool m_bBombTicking; // 0xf18 private: - [[maybe_unused]] uint8_t __pad0999[0x3]; // 0x999 + [[maybe_unused]] uint8_t __pad0f19[0x3]; // 0xf19 public: // MNetworkEnable - int32_t m_nBombSite; // 0x99c + int32_t m_nBombSite; // 0xf1c // MNetworkEnable - int32_t m_nSourceSoundscapeHash; // 0x9a0 + int32_t m_nSourceSoundscapeHash; // 0xf20 private: - [[maybe_unused]] uint8_t __pad09a4[0x4]; // 0x9a4 + [[maybe_unused]] uint8_t __pad0f24[0x4]; // 0xf24 public: // MNetworkEnable - EntitySpottedState_t m_entitySpottedState; // 0x9a8 - GameTime_t m_flNextGlow; // 0x9c0 - GameTime_t m_flNextBeep; // 0x9c4 + EntitySpottedState_t m_entitySpottedState; // 0xf28 + GameTime_t m_flNextGlow; // 0xf40 + GameTime_t m_flNextBeep; // 0xf44 // MNetworkEnable - GameTime_t m_flC4Blow; // 0x9c8 + GameTime_t m_flC4Blow; // 0xf48 // MNetworkEnable - float m_flTimerLength; // 0x9cc - float m_bTenSecWarning; // 0x9d0 - float m_bTriggerWarning; // 0x9d4 - float m_bExplodeWarning; // 0x9d8 - bool m_bLocalBRMusicPlayed; // 0x9dc + float m_flTimerLength; // 0xf4c + float m_bTenSecWarning; // 0xf50 + float m_bTriggerWarning; // 0xf54 + float m_bExplodeWarning; // 0xf58 + bool m_bLocalBRMusicPlayed; // 0xf5c private: - [[maybe_unused]] uint8_t __pad09dd[0x3]; // 0x9dd + [[maybe_unused]] uint8_t __pad0f5d[0x3]; // 0xf5d public: // MNetworkEnable - float m_flDefuseLength; // 0x9e0 + float m_flDefuseLength; // 0xf60 // MNetworkEnable - GameTime_t m_flDefuseCountDown; // 0x9e4 + GameTime_t m_flDefuseCountDown; // 0xf64 // MNetworkEnable - bool m_bBombDefused; // 0x9e8 + bool m_bBombDefused; // 0xf68 private: - [[maybe_unused]] uint8_t __pad09e9[0x3]; // 0x9e9 + [[maybe_unused]] uint8_t __pad0f69[0x3]; // 0xf69 public: // MNetworkEnable - CHandle< C_CSPlayerPawnBase > m_hBombDefuser; // 0x9ec + CHandle< C_CSPlayerPawnBase > m_hBombDefuser; // 0xf6c // MNetworkEnable - CEntityHandle m_hControlPanel; // 0x9f0 - CHandle< C_Multimeter > m_hDefuserMultimeter; // 0x9f4 - GameTime_t m_flNextRadarFlashTime; // 0x9f8 - bool m_bRadarFlash; // 0x9fc + CHandle< C_BaseEntity > m_hControlPanel; // 0xf70 + CHandle< C_Multimeter > m_hDefuserMultimeter; // 0xf74 + GameTime_t m_flNextRadarFlashTime; // 0xf78 + bool m_bRadarFlash; // 0xf7c private: - [[maybe_unused]] uint8_t __pad09fd[0x3]; // 0x9fd + [[maybe_unused]] uint8_t __pad0f7d[0x3]; // 0xf7d public: - CHandle< C_CSPlayerPawnBase > m_hLocalDefusingPlayerHandle; // 0xa00 + CHandle< C_CSPlayerPawnBase > m_hLocalDefusingPlayerHandle; // 0xf80 }; // Alignment: 2 -// Size: 0x1178 +// Size: 0x16f8 class C_Item : public C_EconEntity { public: // MNetworkEnable - bool m_bShouldGlow; // 0x1070 - char m_pReticleHintTextName[256]; // 0x1071 + bool m_bShouldGlow; // 0x15f0 + char m_pReticleHintTextName[256]; // 0x15f1 }; // Alignment: 7 -// Size: 0x10d0 +// Size: 0x1650 class C_Chicken : public C_DynamicProp { -private: - [[maybe_unused]] uint8_t __pad0c00[0x8]; // 0xc00 public: - CHandle< CBaseAnimGraph > m_hHolidayHatAddon; // 0xc08 + CHandle< CBaseAnimGraph > m_hHolidayHatAddon; // 0x1188 // MNetworkEnable // MNetworkChangeCallback "OnJumpedChanged" - bool m_jumpedThisFrame; // 0xc0c + bool m_jumpedThisFrame; // 0x118c private: - [[maybe_unused]] uint8_t __pad0c0d[0x3]; // 0xc0d + [[maybe_unused]] uint8_t __pad118d[0x3]; // 0x118d public: // MNetworkEnable - CHandle< C_CSPlayerPawnBase > m_leader; // 0xc10 + CHandle< C_CSPlayerPawnBase > m_leader; // 0x1190 private: - [[maybe_unused]] uint8_t __pad0c14[0x4]; // 0xc14 + [[maybe_unused]] uint8_t __pad1194[0x4]; // 0x1194 public: // MNetworkEnable - C_AttributeContainer m_AttributeManager; // 0xc18 + C_AttributeContainer m_AttributeManager; // 0x1198 // MNetworkEnable - uint32_t m_OriginalOwnerXuidLow; // 0x10c0 + uint32_t m_OriginalOwnerXuidLow; // 0x1640 // MNetworkEnable - uint32_t m_OriginalOwnerXuidHigh; // 0x10c4 - bool m_bAttributesInitialized; // 0x10c8 + uint32_t m_OriginalOwnerXuidHigh; // 0x1644 + bool m_bAttributesInitialized; // 0x1648 }; // Alignment: 10 -// Size: 0x10a0 +// Size: 0x1638 class C_BasePlayerWeapon : public C_EconEntity { public: // MNetworkEnable // MNetworkChangeCallback "OnWeaponStateChanged" - WeaponState_t m_iState; // 0x1070 - WeaponState_t m_iOldState; // 0x1074 - bool m_bRemoveable; // 0x1078 + WeaponState_t m_iState; // 0x15f0 + WeaponState_t m_iOldState; // 0x15f4 + bool m_bRemoveable; // 0x15f8 private: - [[maybe_unused]] uint8_t __pad1079[0x3]; // 0x1079 + [[maybe_unused]] uint8_t __pad15f9[0x3]; // 0x15f9 public: // MNetworkEnable // MNetworkUserGroup "LocalWeaponExclusive" - GameTick_t m_nNextPrimaryAttackTick; // 0x107c + GameTick_t m_nNextPrimaryAttackTick; // 0x15fc // MNetworkEnable // MNetworkUserGroup "LocalWeaponExclusive" - float m_flNextPrimaryAttackTickRatio; // 0x1080 + float m_flNextPrimaryAttackTickRatio; // 0x1600 // MNetworkEnable // MNetworkUserGroup "LocalWeaponExclusive" - GameTick_t m_nNextSecondaryAttackTick; // 0x1084 + GameTick_t m_nNextSecondaryAttackTick; // 0x1604 // MNetworkEnable // MNetworkUserGroup "LocalWeaponExclusive" - float m_flNextSecondaryAttackTickRatio; // 0x1088 + float m_flNextSecondaryAttackTickRatio; // 0x1608 // MNetworkEnable // MNetworkSerializer "minusone" // MNetworkPriority "32" - int32_t m_iClip1; // 0x108c + int32_t m_iClip1; // 0x160c // MNetworkEnable // MNetworkSerializer "minusone" // MNetworkUserGroup "LocalWeaponExclusive" - int32_t m_iClip2; // 0x1090 + int32_t m_iClip2; // 0x1610 // MNetworkEnable // MNetworkUserGroup "LocalWeaponExclusive" - int32_t m_pReserveAmmo[2]; // 0x1094 + int32_t m_pReserveAmmo[2]; // 0x1614 }; // Alignment: 7 -// Size: 0xa48 +// Size: 0xfc8 class C_RagdollPropAttached : public C_RagdollProp { public: // MNetworkEnable - uint32_t m_boneIndexAttached; // 0xa10 + uint32_t m_boneIndexAttached; // 0xf90 // MNetworkEnable - uint32_t m_ragdollAttachedObjectIndex; // 0xa14 + uint32_t m_ragdollAttachedObjectIndex; // 0xf94 // MNetworkEnable // MNetworkEncoder - Vector m_attachmentPointBoneSpace; // 0xa18 + Vector m_attachmentPointBoneSpace; // 0xf98 // MNetworkEnable // MNetworkEncoder - Vector m_attachmentPointRagdollSpace; // 0xa24 - Vector m_vecOffset; // 0xa30 - float m_parentTime; // 0xa3c - bool m_bHasParent; // 0xa40 + Vector m_attachmentPointRagdollSpace; // 0xfa4 + Vector m_vecOffset; // 0xfb0 + float m_parentTime; // 0xfbc + bool m_bHasParent; // 0xfc0 }; // Alignment: 8 -// Size: 0xbb8 +// Size: 0x1138 class C_BaseCombatCharacter : public C_BaseFlex { public: // MNetworkEnable // MNetworkChangeCallback "OnWearablesChanged" - C_NetworkUtlVectorBase< CHandle< C_EconWearable > > m_hMyWearables; // 0xb28 - int32_t m_bloodColor; // 0xb40 - AttachmentHandle_t m_leftFootAttachment; // 0xb44 - AttachmentHandle_t m_rightFootAttachment; // 0xb45 + C_NetworkUtlVectorBase< CHandle< C_EconWearable > > m_hMyWearables; // 0x10a8 + int32_t m_bloodColor; // 0x10c0 + AttachmentHandle_t m_leftFootAttachment; // 0x10c4 + AttachmentHandle_t m_rightFootAttachment; // 0x10c5 private: - [[maybe_unused]] uint8_t __pad0b46[0x2]; // 0xb46 + [[maybe_unused]] uint8_t __pad10c6[0x2]; // 0x10c6 public: - C_BaseCombatCharacter::WaterWakeMode_t m_nWaterWakeMode; // 0xb48 - float m_flWaterWorldZ; // 0xb4c - float m_flWaterNextTraceTime; // 0xb50 + C_BaseCombatCharacter::WaterWakeMode_t m_nWaterWakeMode; // 0x10c8 + float m_flWaterWorldZ; // 0x10cc + float m_flWaterNextTraceTime; // 0x10d0 // MNetworkEnable - float m_flFieldOfView; // 0xb54 + float m_flFieldOfView; // 0x10d4 }; // Alignment: 26 -// Size: 0xd00 +// Size: 0x1280 class C_BasePlayerPawn : public C_BaseCombatCharacter { public: // MNetworkEnable - CPlayer_WeaponServices* m_pWeaponServices; // 0xbb8 + CPlayer_WeaponServices* m_pWeaponServices; // 0x1138 // MNetworkEnable - CPlayer_ItemServices* m_pItemServices; // 0xbc0 + CPlayer_ItemServices* m_pItemServices; // 0x1140 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - CPlayer_AutoaimServices* m_pAutoaimServices; // 0xbc8 + CPlayer_AutoaimServices* m_pAutoaimServices; // 0x1148 // MNetworkEnable - CPlayer_ObserverServices* m_pObserverServices; // 0xbd0 + CPlayer_ObserverServices* m_pObserverServices; // 0x1150 // MNetworkEnable - CPlayer_WaterServices* m_pWaterServices; // 0xbd8 + CPlayer_WaterServices* m_pWaterServices; // 0x1158 // MNetworkEnable - CPlayer_UseServices* m_pUseServices; // 0xbe0 + CPlayer_UseServices* m_pUseServices; // 0x1160 // MNetworkEnable - CPlayer_FlashlightServices* m_pFlashlightServices; // 0xbe8 + CPlayer_FlashlightServices* m_pFlashlightServices; // 0x1168 // MNetworkEnable - CPlayer_CameraServices* m_pCameraServices; // 0xbf0 + CPlayer_CameraServices* m_pCameraServices; // 0x1170 // MNetworkEnable - CPlayer_MovementServices* m_pMovementServices; // 0xbf8 + CPlayer_MovementServices* m_pMovementServices; // 0x1178 private: - [[maybe_unused]] uint8_t __pad0c00[0x8]; // 0xc00 + [[maybe_unused]] uint8_t __pad1180[0x8]; // 0x1180 public: // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - FixAngleSet_t m_fixAngleChangeType; // 0xc08 + FixAngleSet_t m_fixAngleChangeType; // 0x1188 private: - [[maybe_unused]] uint8_t __pad0c09[0x3]; // 0xc09 + [[maybe_unused]] uint8_t __pad1189[0x3]; // 0x1189 public: // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - QAngle m_fixAngleChangeAngle; // 0xc0c + QAngle m_fixAngleChangeAngle; // 0x118c // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" // MNetworkChangeCallback "OnServerAngleChange" - int32_t m_fixAngleChangeTick; // 0xc18 - QAngle v_angle; // 0xc1c + int32_t m_fixAngleChangeTick; // 0x1198 + QAngle v_angle; // 0x119c // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - uint32_t m_iHideHUD; // 0xc28 + uint32_t m_iHideHUD; // 0x11a8 private: - [[maybe_unused]] uint8_t __pad0c2c[0x4]; // 0xc2c + [[maybe_unused]] uint8_t __pad11ac[0x4]; // 0x11ac public: // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - sky3dparams_t m_skybox3d; // 0xc30 + sky3dparams_t m_skybox3d; // 0x11b0 // MNetworkEnable - GameTime_t m_flDeathTime; // 0xcc0 - Vector m_vecPredictionError; // 0xcc4 - GameTime_t m_flPredictionErrorTime; // 0xcd0 - float m_flFOVSensitivityAdjust; // 0xcd4 - float m_flMouseSensitivity; // 0xcd8 - Vector m_vOldOrigin; // 0xcdc - float m_flOldSimulationTime; // 0xce8 - int32_t m_nLastExecutedCommandNumber; // 0xcec - int32_t m_nLastExecutedCommandTick; // 0xcf0 + GameTime_t m_flDeathTime; // 0x1240 + Vector m_vecPredictionError; // 0x1244 + GameTime_t m_flPredictionErrorTime; // 0x1250 + float m_flFOVSensitivityAdjust; // 0x1254 + float m_flMouseSensitivity; // 0x1258 + Vector m_vOldOrigin; // 0x125c + float m_flOldSimulationTime; // 0x1268 + int32_t m_nLastExecutedCommandNumber; // 0x126c + int32_t m_nLastExecutedCommandTick; // 0x1270 // MNetworkEnable // MNetworkChangeCallback "OnControllerChanged" - CHandle< CBasePlayerController > m_hController; // 0xcf4 - bool m_bIsSwappingToPredictableController; // 0xcf8 + CHandle< CBasePlayerController > m_hController; // 0x1274 + bool m_bIsSwappingToPredictableController; // 0x1278 }; // Alignment: 0 -// Size: 0x1178 +// Size: 0x16f8 class C_ItemCash : public C_Item { public: // No members available }; -// Alignment: 10 -// Size: 0xaa8 +// Alignment: 6 +// Size: 0x1008 class C_CSGOViewModel : public C_PredictedViewModel { public: // MNetworkEnable - bool m_bShouldIgnoreOffsetAndAccuracy; // 0xa28 + bool m_bShouldIgnoreOffsetAndAccuracy; // 0xfa8 private: - [[maybe_unused]] uint8_t __pad0a29[0x3]; // 0xa29 + [[maybe_unused]] uint8_t __pad0fa9[0x3]; // 0xfa9 public: - Vector m_vecCamDriverLastPos; // 0xa2c - QAngle m_angCamDriverLastAng; // 0xa38 - float m_flCamDriverAppliedTime; // 0xa44 - float m_flCamDriverWeight; // 0xa48 // MNetworkEnable - uint32_t m_nWeaponParity; // 0xa4c - uint32_t m_nOldWeaponParity; // 0xa50 - CEntityIndex m_nLastKnownAssociatedWeaponEntIndex; // 0xa54 - bool m_bNeedToQueueHighResComposite; // 0xa58 + uint32_t m_nWeaponParity; // 0xfac + uint32_t m_nOldWeaponParity; // 0xfb0 + CEntityIndex m_nLastKnownAssociatedWeaponEntIndex; // 0xfb4 + bool m_bNeedToQueueHighResComposite; // 0xfb8 private: - [[maybe_unused]] uint8_t __pad0a59[0x43]; // 0xa59 + [[maybe_unused]] uint8_t __pad0fb9[0x43]; // 0xfb9 public: - QAngle m_vLoweredWeaponOffset; // 0xa9c + QAngle m_vLoweredWeaponOffset; // 0xffc }; -// Alignment: 58 -// Size: 0x13d0 +// Alignment: 59 +// Size: 0x1950 class C_WeaponCSBase : public C_BasePlayerWeapon { -private: - [[maybe_unused]] uint8_t __pad10a0[0x38]; // 0x10a0 public: // MNetworkEnable - float m_flFireSequenceStartTime; // 0x10d8 + float m_flFireSequenceStartTime; // 0x1670 // MNetworkEnable - int32_t m_nFireSequenceStartTimeChange; // 0x10dc - int32_t m_nFireSequenceStartTimeAck; // 0x10e0 + int32_t m_nFireSequenceStartTimeChange; // 0x1674 + int32_t m_nFireSequenceStartTimeAck; // 0x1678 // MNetworkEnable - bool m_bPlayerFireEventIsPrimary; // 0x10e4 + bool m_bPlayerFireEventIsPrimary; // 0x167c private: - [[maybe_unused]] uint8_t __pad10e5[0x3]; // 0x10e5 + [[maybe_unused]] uint8_t __pad167d[0x3]; // 0x167d public: - HSequence m_seqIdle; // 0x10e8 - HSequence m_seqFirePrimary; // 0x10ec - HSequence m_seqFireSecondary; // 0x10f0 + HSequence m_seqIdle; // 0x1680 + HSequence m_seqFirePrimary; // 0x1684 + HSequence m_seqFireSecondary; // 0x1688 + // MNetworkEnable + int32_t m_nRefundable; // 0x168c private: - [[maybe_unused]] uint8_t __pad10f4[0x14]; // 0x10f4 + [[maybe_unused]] uint8_t __pad1690[0x10]; // 0x1690 public: - float m_flCrosshairDistance; // 0x1108 - int32_t m_iAmmoLastCheck; // 0x110c - int32_t m_iAlpha; // 0x1110 - int32_t m_iScopeTextureID; // 0x1114 - int32_t m_iCrosshairTextureID; // 0x1118 - float m_flGunAccuracyPosition; // 0x111c + float m_flCrosshairDistance; // 0x16a0 + int32_t m_iAmmoLastCheck; // 0x16a4 + int32_t m_iAlpha; // 0x16a8 + int32_t m_iScopeTextureID; // 0x16ac + int32_t m_iCrosshairTextureID; // 0x16b0 + float m_flGunAccuracyPosition; // 0x16b4 // MNetworkEnable // MNetworkUserGroup "LocalWeaponExclusive" - uint32_t m_nViewModelIndex; // 0x1120 - bool m_bReloadsWithClips; // 0x1124 + uint32_t m_nViewModelIndex; // 0x16b8 + bool m_bReloadsWithClips; // 0x16bc private: - [[maybe_unused]] uint8_t __pad1125[0x3]; // 0x1125 + [[maybe_unused]] uint8_t __pad16bd[0x3]; // 0x16bd public: // MNetworkEnable // MNetworkUserGroup "LocalWeaponExclusive" // MNetworkPriority "32" - GameTime_t m_flTimeWeaponIdle; // 0x1128 - bool m_bFireOnEmpty; // 0x112c + GameTime_t m_flTimeWeaponIdle; // 0x16c0 + bool m_bFireOnEmpty; // 0x16c4 private: - [[maybe_unused]] uint8_t __pad112d[0x3]; // 0x112d + [[maybe_unused]] uint8_t __pad16c5[0x3]; // 0x16c5 public: - CEntityIOOutput m_OnPlayerPickup; // 0x1130 + CEntityIOOutput m_OnPlayerPickup; // 0x16c8 // MNetworkEnable - CSWeaponMode m_weaponMode; // 0x1158 - float m_flTurningInaccuracyDelta; // 0x115c - Vector m_vecTurningInaccuracyEyeDirLast; // 0x1160 - float m_flTurningInaccuracy; // 0x116c + CSWeaponMode m_weaponMode; // 0x16f0 + float m_flTurningInaccuracyDelta; // 0x16f4 + Vector m_vecTurningInaccuracyEyeDirLast; // 0x16f8 + float m_flTurningInaccuracy; // 0x1704 // MNetworkEnable - float m_fAccuracyPenalty; // 0x1170 - GameTime_t m_flLastAccuracyUpdateTime; // 0x1174 - float m_fAccuracySmoothedForZoom; // 0x1178 - GameTime_t m_fScopeZoomEndTime; // 0x117c + float m_fAccuracyPenalty; // 0x1708 + GameTime_t m_flLastAccuracyUpdateTime; // 0x170c + float m_fAccuracySmoothedForZoom; // 0x1710 + GameTime_t m_fScopeZoomEndTime; // 0x1714 // MNetworkEnable - int32_t m_iRecoilIndex; // 0x1180 + int32_t m_iRecoilIndex; // 0x1718 // MNetworkEnable - float m_flRecoilIndex; // 0x1184 + float m_flRecoilIndex; // 0x171c // MNetworkEnable - bool m_bBurstMode; // 0x1188 + bool m_bBurstMode; // 0x1720 private: - [[maybe_unused]] uint8_t __pad1189[0x3]; // 0x1189 + [[maybe_unused]] uint8_t __pad1721[0x3]; // 0x1721 public: // MNetworkEnable - GameTime_t m_flPostponeFireReadyTime; // 0x118c + GameTime_t m_flPostponeFireReadyTime; // 0x1724 // MNetworkEnable - bool m_bInReload; // 0x1190 + bool m_bInReload; // 0x1728 // MNetworkEnable - bool m_bReloadVisuallyComplete; // 0x1191 + bool m_bReloadVisuallyComplete; // 0x1729 private: - [[maybe_unused]] uint8_t __pad1192[0x2]; // 0x1192 + [[maybe_unused]] uint8_t __pad172a[0x2]; // 0x172a public: // MNetworkEnable - GameTime_t m_flDroppedAtTime; // 0x1194 + GameTime_t m_flDroppedAtTime; // 0x172c // MNetworkEnable - bool m_bIsHauledBack; // 0x1198 + bool m_bIsHauledBack; // 0x1730 // MNetworkEnable - bool m_bSilencerOn; // 0x1199 + bool m_bSilencerOn; // 0x1731 private: - [[maybe_unused]] uint8_t __pad119a[0x2]; // 0x119a + [[maybe_unused]] uint8_t __pad1732[0x2]; // 0x1732 public: // MNetworkEnable - GameTime_t m_flTimeSilencerSwitchComplete; // 0x119c + GameTime_t m_flTimeSilencerSwitchComplete; // 0x1734 // MNetworkEnable - int32_t m_iOriginalTeamNumber; // 0x11a0 - float m_flNextAttackRenderTimeOffset; // 0x11a4 + int32_t m_iOriginalTeamNumber; // 0x1738 + float m_flNextAttackRenderTimeOffset; // 0x173c private: - [[maybe_unused]] uint8_t __pad11a8[0x88]; // 0x11a8 + [[maybe_unused]] uint8_t __pad1740[0x78]; // 0x1740 public: - bool m_bVisualsDataSet; // 0x1230 - bool m_bOldFirstPersonSpectatedState; // 0x1231 + bool m_bVisualsDataSet; // 0x17b8 + bool m_bOldFirstPersonSpectatedState; // 0x17b9 private: - [[maybe_unused]] uint8_t __pad1232[0x2]; // 0x1232 + [[maybe_unused]] uint8_t __pad17ba[0x2]; // 0x17ba public: - CHandle< C_BaseEntity > m_hOurPing; // 0x1234 - CEntityIndex m_nOurPingIndex; // 0x1238 - Vector m_vecOurPingPos; // 0x123c - bool m_bGlowForPing; // 0x1248 - bool m_bUIWeapon; // 0x1249 + CHandle< C_BaseEntity > m_hOurPing; // 0x17bc + CEntityIndex m_nOurPingIndex; // 0x17c0 + Vector m_vecOurPingPos; // 0x17c4 + bool m_bGlowForPing; // 0x17d0 + bool m_bUIWeapon; // 0x17d1 private: - [[maybe_unused]] uint8_t __pad124a[0xe]; // 0x124a + [[maybe_unused]] uint8_t __pad17d2[0xe]; // 0x17d2 public: // MNetworkEnable - CHandle< C_CSPlayerPawnBase > m_hPrevOwner; // 0x1258 + CHandle< C_CSPlayerPawnBase > m_hPrevOwner; // 0x17e0 private: - [[maybe_unused]] uint8_t __pad125c[0x20]; // 0x125c + [[maybe_unused]] uint8_t __pad17e4[0x20]; // 0x17e4 public: - bool m_donated; // 0x127c + bool m_donated; // 0x1804 private: - [[maybe_unused]] uint8_t __pad127d[0x3]; // 0x127d + [[maybe_unused]] uint8_t __pad1805[0x3]; // 0x1805 public: // MNetworkEnable - GameTime_t m_fLastShotTime; // 0x1280 - bool m_bWasOwnedByCT; // 0x1284 - bool m_bWasOwnedByTerrorist; // 0x1285 + GameTime_t m_fLastShotTime; // 0x1808 + bool m_bWasOwnedByCT; // 0x180c + bool m_bWasOwnedByTerrorist; // 0x180d private: - [[maybe_unused]] uint8_t __pad1286[0x2]; // 0x1286 + [[maybe_unused]] uint8_t __pad180e[0x2]; // 0x180e public: - float m_gunHeat; // 0x1288 - uint32_t m_smokeAttachments; // 0x128c - GameTime_t m_lastSmokeTime; // 0x1290 - float m_flLastClientFireBulletTime; // 0x1294 + float m_gunHeat; // 0x1810 + uint32_t m_smokeAttachments; // 0x1814 + GameTime_t m_lastSmokeTime; // 0x1818 + float m_flLastClientFireBulletTime; // 0x181c private: - [[maybe_unused]] uint8_t __pad1298[0x58]; // 0x1298 + [[maybe_unused]] uint8_t __pad1820[0x50]; // 0x1820 public: - C_IronSightController m_IronSightController; // 0x12f0 + C_IronSightController m_IronSightController; // 0x1870 // MNetworkEnable - int32_t m_iIronSightMode; // 0x13a0 + int32_t m_iIronSightMode; // 0x1920 private: - [[maybe_unused]] uint8_t __pad13a4[0xc]; // 0x13a4 + [[maybe_unused]] uint8_t __pad1924[0xc]; // 0x1924 public: - GameTime_t m_flLastLOSTraceFailureTime; // 0x13b0 + GameTime_t m_flLastLOSTraceFailureTime; // 0x1930 // MNetworkEnable - int32_t m_iNumEmptyAttacks; // 0x13b4 + int32_t m_iNumEmptyAttacks; // 0x1934 }; // Alignment: 6 -// Size: 0x13f0 +// Size: 0x1970 class C_WeaponCSBaseGun : public C_WeaponCSBase { public: // MNetworkEnable - int32_t m_zoomLevel; // 0x13d0 + int32_t m_zoomLevel; // 0x1950 // MNetworkEnable - int32_t m_iBurstShotsRemaining; // 0x13d4 - int32_t m_iSilencerBodygroup; // 0x13d8 + int32_t m_iBurstShotsRemaining; // 0x1954 + int32_t m_iSilencerBodygroup; // 0x1958 private: - [[maybe_unused]] uint8_t __pad13dc[0xc]; // 0x13dc + [[maybe_unused]] uint8_t __pad195c[0xc]; // 0x195c public: - int32_t m_silencedModelIndex; // 0x13e8 - bool m_inPrecache; // 0x13ec + int32_t m_silencedModelIndex; // 0x1968 + bool m_inPrecache; // 0x196c // MNetworkEnable - bool m_bNeedsBoltAction; // 0x13ed + bool m_bNeedsBoltAction; // 0x196d }; // Alignment: 12 -// Size: 0x1430 +// Size: 0x19b0 class C_C4 : public C_WeaponCSBase { public: - char m_szScreenText[32]; // 0x13d0 - ParticleIndex_t m_bombdroppedlightParticleIndex; // 0x13f0 + char m_szScreenText[32]; // 0x1950 + ParticleIndex_t m_bombdroppedlightParticleIndex; // 0x1970 // MNetworkEnable - bool m_bStartedArming; // 0x13f4 + bool m_bStartedArming; // 0x1974 private: - [[maybe_unused]] uint8_t __pad13f5[0x3]; // 0x13f5 + [[maybe_unused]] uint8_t __pad1975[0x3]; // 0x1975 public: // MNetworkEnable - GameTime_t m_fArmedTime; // 0x13f8 + GameTime_t m_fArmedTime; // 0x1978 // MNetworkEnable - bool m_bBombPlacedAnimation; // 0x13fc + bool m_bBombPlacedAnimation; // 0x197c // MNetworkEnable - bool m_bShowC4LED; // 0x13fd + bool m_bShowC4LED; // 0x197d // MNetworkEnable - bool m_bIsPlantingViaUse; // 0x13fe + bool m_bIsPlantingViaUse; // 0x197e private: - [[maybe_unused]] uint8_t __pad13ff[0x1]; // 0x13ff + [[maybe_unused]] uint8_t __pad197f[0x1]; // 0x197f public: // MNetworkEnable - EntitySpottedState_t m_entitySpottedState; // 0x1400 - int32_t m_nSpotRules; // 0x1418 - bool m_bPlayedArmingBeeps[7]; // 0x141c - bool m_bBombPlanted; // 0x1423 - bool m_bDroppedFromDeath; // 0x1424 + EntitySpottedState_t m_entitySpottedState; // 0x1980 + int32_t m_nSpotRules; // 0x1998 + bool m_bPlayedArmingBeeps[7]; // 0x199c + bool m_bBombPlanted; // 0x19a3 + bool m_bDroppedFromDeath; // 0x19a4 }; // Alignment: 0 -// Size: 0x13f0 +// Size: 0x1970 class C_DEagle : public C_WeaponCSBaseGun { public: @@ -9289,7 +9161,7 @@ public: }; // Alignment: 0 -// Size: 0x13f0 +// Size: 0x1970 class C_WeaponElite : public C_WeaponCSBaseGun { public: @@ -9297,7 +9169,7 @@ public: }; // Alignment: 0 -// Size: 0x13d0 +// Size: 0x1950 class C_WeaponNOVA : public C_WeaponCSBase { public: @@ -9305,7 +9177,7 @@ public: }; // Alignment: 0 -// Size: 0x13d0 +// Size: 0x1950 class C_WeaponSawedoff : public C_WeaponCSBase { public: @@ -9313,16 +9185,16 @@ public: }; // Alignment: 1 -// Size: 0x1400 +// Size: 0x1980 class C_WeaponTaser : public C_WeaponCSBaseGun { public: // MNetworkEnable - GameTime_t m_fFireTime; // 0x13f0 + GameTime_t m_fFireTime; // 0x1970 }; // Alignment: 0 -// Size: 0x13d0 +// Size: 0x1950 class C_WeaponXM1014 : public C_WeaponCSBase { public: @@ -9330,7 +9202,7 @@ public: }; // Alignment: 0 -// Size: 0x13d0 +// Size: 0x1950 class C_Knife : public C_WeaponCSBase { public: @@ -9338,7 +9210,7 @@ public: }; // Alignment: 0 -// Size: 0x13d0 +// Size: 0x1950 class C_KnifeGG : public C_Knife { public: @@ -9346,133 +9218,127 @@ public: }; // Alignment: 1 -// Size: 0x13e0 +// Size: 0x1960 class C_Melee : public C_WeaponCSBase { public: // MNetworkEnable - GameTime_t m_flThrowAt; // 0x13d0 + GameTime_t m_flThrowAt; // 0x1950 }; // Alignment: 2 -// Size: 0x1400 +// Size: 0x1980 class C_WeaponZoneRepulsor : public C_WeaponCSBaseGun { public: - float m_flPitchLocal; // 0x13f0 - GameTime_t m_flLastTimeNotIdle; // 0x13f4 + float m_flPitchLocal; // 0x1970 + GameTime_t m_flLastTimeNotIdle; // 0x1974 }; // Alignment: 1 -// Size: 0x1400 +// Size: 0x1980 class C_WeaponShield : public C_WeaponCSBaseGun { public: // MNetworkEnable - float m_flDisplayHealth; // 0x13f0 + float m_flDisplayHealth; // 0x1970 }; // Alignment: 1 -// Size: 0xc28 +// Size: 0x11a8 class C_MolotovProjectile : public C_BaseCSGrenadeProjectile { public: // MNetworkEnable - bool m_bIsIncGrenade; // 0xc00 + bool m_bIsIncGrenade; // 0x1180 }; // Alignment: 1 -// Size: 0xc28 +// Size: 0x11a8 class C_DecoyProjectile : public C_BaseCSGrenadeProjectile { -private: - [[maybe_unused]] uint8_t __pad0c00[0x20]; // 0xc00 public: - GameTime_t m_flTimeParticleEffectSpawn; // 0xc20 + GameTime_t m_flTimeParticleEffectSpawn; // 0x11a0 }; // Alignment: 8 -// Size: 0xd90 +// Size: 0x1310 class C_SmokeGrenadeProjectile : public C_BaseCSGrenadeProjectile { -private: - [[maybe_unused]] uint8_t __pad0c00[0x8]; // 0xc00 public: // MNetworkEnable - int32_t m_nSmokeEffectTickBegin; // 0xc08 + int32_t m_nSmokeEffectTickBegin; // 0x1188 // MNetworkEnable - bool m_bDidSmokeEffect; // 0xc0c + bool m_bDidSmokeEffect; // 0x118c private: - [[maybe_unused]] uint8_t __pad0c0d[0x3]; // 0xc0d + [[maybe_unused]] uint8_t __pad118d[0x3]; // 0x118d public: // MNetworkEnable - int32_t m_nRandomSeed; // 0xc10 + int32_t m_nRandomSeed; // 0x1190 // MNetworkEnable - Vector m_vSmokeColor; // 0xc14 + Vector m_vSmokeColor; // 0x1194 // MNetworkEnable - Vector m_vSmokeDetonationPos; // 0xc20 + Vector m_vSmokeDetonationPos; // 0x11a0 private: - [[maybe_unused]] uint8_t __pad0c2c[0x4]; // 0xc2c + [[maybe_unused]] uint8_t __pad11ac[0x4]; // 0x11ac public: // MNetworkEnable // MNetworkChangeCallback "OnSimulationChanged" - CUtlVector< uint8 > m_VoxelFrameData; // 0xc30 - bool m_bSmokeVolumeDataReceived; // 0xc48 - bool m_bSmokeEffectSpawned; // 0xc49 + CUtlVector< uint8 > m_VoxelFrameData; // 0x11b0 + bool m_bSmokeVolumeDataReceived; // 0x11c8 + bool m_bSmokeEffectSpawned; // 0x11c9 }; // Alignment: 8 -// Size: 0x1410 +// Size: 0x1990 class C_BaseCSGrenade : public C_WeaponCSBase { -private: - [[maybe_unused]] uint8_t __pad13d0[0x20]; // 0x13d0 public: // MNetworkEnable - bool m_bRedraw; // 0x13f0 + bool m_bRedraw; // 0x1970 // MNetworkEnable - bool m_bIsHeldByPlayer; // 0x13f1 + bool m_bIsHeldByPlayer; // 0x1971 // MNetworkEnable - bool m_bPinPulled; // 0x13f2 + bool m_bPinPulled; // 0x1972 private: - [[maybe_unused]] uint8_t __pad13f3[0x1]; // 0x13f3 + [[maybe_unused]] uint8_t __pad1973[0x1]; // 0x1973 public: // MNetworkEnable - EGrenadeThrowState m_eThrowStatus; // 0x13f4 + EGrenadeThrowState m_eThrowStatus; // 0x1974 // MNetworkEnable - GameTime_t m_fThrowTime; // 0x13f8 + GameTime_t m_fThrowTime; // 0x1978 // MNetworkEnable - float m_flThrowStrength; // 0x13fc + float m_flThrowStrength; // 0x197c // MNetworkEnable - float m_flThrowStrengthApproach; // 0x1400 + float m_flThrowStrengthApproach; // 0x1980 // MNetworkEnable - GameTime_t m_fDropTime; // 0x1404 + GameTime_t m_fDropTime; // 0x1984 }; // Alignment: 2 -// Size: 0x13f0 +// Size: 0x1970 class C_WeaponBaseItem : public C_WeaponCSBase { public: // MNetworkEnable - CountdownTimer m_SequenceCompleteTimer; // 0x13d0 + CountdownTimer m_SequenceCompleteTimer; // 0x1950 // MNetworkEnable - bool m_bRedraw; // 0x13e8 + bool m_bRedraw; // 0x1968 }; // Alignment: 2 -// Size: 0x1180 +// Size: 0x1700 class C_ItemDogtags : public C_Item { public: // MNetworkEnable - CHandle< C_CSPlayerPawnBase > m_OwningPlayer; // 0x1178 + CHandle< C_CSPlayerPawnBase > m_OwningPlayer; // 0x16f8 // MNetworkEnable - CHandle< C_CSPlayerPawnBase > m_KillingPlayer; // 0x117c + CHandle< C_CSPlayerPawnBase > m_KillingPlayer; // 0x16fc }; // Alignment: 0 -// Size: 0x13f0 +// Size: 0x1970 class C_Item_Healthshot : public C_WeaponBaseItem { public: @@ -9480,81 +9346,79 @@ public: }; // Alignment: 2 -// Size: 0x13e0 +// Size: 0x1960 class C_Fists : public C_WeaponCSBase { public: // MNetworkEnable - bool m_bPlayingUninterruptableAct; // 0x13d0 + bool m_bPlayingUninterruptableAct; // 0x1950 private: - [[maybe_unused]] uint8_t __pad13d1[0x3]; // 0x13d1 + [[maybe_unused]] uint8_t __pad1951[0x3]; // 0x1951 public: // MNetworkEnable // MNetworkChangeCallback "OnUninterruptChanged" - PlayerAnimEvent_t m_nUninterruptableActivity; // 0x13d4 + PlayerAnimEvent_t m_nUninterruptableActivity; // 0x1954 }; // Alignment: 27 -// Size: 0x1b30 +// Size: 0x20b0 class C_Tablet : public C_WeaponCSBase { -private: - [[maybe_unused]] uint8_t __pad13d0[0x8]; // 0x13d0 public: // MNetworkEnable - GameTime_t m_flUpgradeExpirationTime[4]; // 0x13d8 + GameTime_t m_flUpgradeExpirationTime[4]; // 0x1958 // MNetworkEnable - int32_t m_vecLocalHexFlags[42]; // 0x13e8 + int32_t m_vecLocalHexFlags[42]; // 0x1968 // MNetworkEnable - int32_t m_nContractKillGridIndex; // 0x1490 + int32_t m_nContractKillGridIndex; // 0x1a10 // MNetworkEnable - int32_t m_nContractKillGridHighResIndex; // 0x1494 + int32_t m_nContractKillGridHighResIndex; // 0x1a14 // MNetworkEnable - bool m_bTabletReceptionIsBlocked; // 0x1498 + bool m_bTabletReceptionIsBlocked; // 0x1a18 private: - [[maybe_unused]] uint8_t __pad1499[0x3]; // 0x1499 + [[maybe_unused]] uint8_t __pad1a19[0x3]; // 0x1a19 public: // MNetworkEnable - float m_flScanProgress; // 0x149c + float m_flScanProgress; // 0x1a1c // MNetworkEnable - GameTime_t m_flBootTime; // 0x14a0 + GameTime_t m_flBootTime; // 0x1a20 // MNetworkEnable - GameTime_t m_flShowMapTime; // 0x14a4 + GameTime_t m_flShowMapTime; // 0x1a24 // MNetworkEnable - Vector m_vecNearestMetalCratePos; // 0x14a8 + Vector m_vecNearestMetalCratePos; // 0x1a28 // MNetworkEnable - tablet_skin_state_t m_skinState; // 0x14b4 + tablet_skin_state_t m_skinState; // 0x1a34 private: - [[maybe_unused]] uint8_t __pad14b5[0x3]; // 0x14b5 + [[maybe_unused]] uint8_t __pad1a35[0x3]; // 0x1a35 public: // MNetworkEnable - int32_t m_vecNotificationIds[8]; // 0x14b8 + int32_t m_vecNotificationIds[8]; // 0x1a38 // MNetworkEnable - GameTime_t m_vecNotificationTimestamps[8]; // 0x14d8 + GameTime_t m_vecNotificationTimestamps[8]; // 0x1a58 // MNetworkEnable - int32_t m_nLastPurchaseIndex; // 0x14f8 + int32_t m_nLastPurchaseIndex; // 0x1a78 // MNetworkEnable - Vector m_vecPlayerPositionHistory[24]; // 0x14fc - int32_t m_vecLocalHexFlagsClientCopy[42]; // 0x161c - GameTime_t m_vecLastHexPlayerOccupancyChange[42][6]; // 0x16c4 + Vector m_vecPlayerPositionHistory[24]; // 0x1a7c + int32_t m_vecLocalHexFlagsClientCopy[42]; // 0x1b9c + GameTime_t m_vecLastHexPlayerOccupancyChange[42][6]; // 0x1c44 private: - [[maybe_unused]] uint8_t __pad1ab4[0x34]; // 0x1ab4 + [[maybe_unused]] uint8_t __pad2034[0x34]; // 0x2034 public: - CStrongHandle< InfoForResourceTypeIMaterial2 > m_radarMaterial; // 0x1ae8 - CStrongHandle< InfoForResourceTypeIMaterial2 > m_buildingMaterial; // 0x1af0 - CStrongHandle< InfoForResourceTypeIMaterial2 > m_hZoneOverlayMaterial; // 0x1af8 - float m_flNoiseFadeAlpha; // 0x1b00 - Color m_WorkingColor; // 0x1b04 - Vector m_vecLastCameraPos; // 0x1b08 - QAngle m_angLastCameraAng; // 0x1b14 - int32_t m_nDrawElementCount; // 0x1b20 - float m_flPrevScanProgress; // 0x1b24 - int32_t m_nRenderTargetRes; // 0x1b28 - float m_flLastClosePoseParamVal; // 0x1b2c + CStrongHandle< InfoForResourceTypeIMaterial2 > m_radarMaterial; // 0x2068 + CStrongHandle< InfoForResourceTypeIMaterial2 > m_buildingMaterial; // 0x2070 + CStrongHandle< InfoForResourceTypeIMaterial2 > m_hZoneOverlayMaterial; // 0x2078 + float m_flNoiseFadeAlpha; // 0x2080 + Color m_WorkingColor; // 0x2084 + Vector m_vecLastCameraPos; // 0x2088 + QAngle m_angLastCameraAng; // 0x2094 + int32_t m_nDrawElementCount; // 0x20a0 + float m_flPrevScanProgress; // 0x20a4 + int32_t m_nRenderTargetRes; // 0x20a8 + float m_flLastClosePoseParamVal; // 0x20ac }; // Alignment: 0 -// Size: 0x13e0 +// Size: 0x1960 class C_BreachCharge : public C_WeaponCSBase { public: @@ -9562,7 +9426,7 @@ public: }; // Alignment: 0 -// Size: 0x13d0 +// Size: 0x1950 class C_BumpMine : public C_WeaponCSBase { public: @@ -9570,7 +9434,7 @@ public: }; // Alignment: 0 -// Size: 0x1410 +// Size: 0x1990 class C_TripWireFire : public C_BaseCSGrenade { public: @@ -9578,7 +9442,7 @@ public: }; // Alignment: 0 -// Size: 0xa08 +// Size: 0xf88 class C_PlantedC4Survival : public C_PlantedC4 { public: @@ -9586,567 +9450,559 @@ public: }; // Alignment: 0 -// Size: 0x1410 +// Size: 0x1990 class C_SensorGrenade : public C_BaseCSGrenade { public: // No members available }; -// Alignment: 189 -// Size: 0x12b8 +// Alignment: 184 +// Size: 0x1828 class C_CSPlayerPawnBase : public C_BasePlayerPawn { -private: - [[maybe_unused]] uint8_t __pad0d00[0x18]; // 0xd00 public: // MNetworkEnable - CCSPlayer_ActionTrackingServices* m_pActionTrackingServices; // 0xd18 + CCSPlayer_ActionTrackingServices* m_pActionTrackingServices; // 0x1298 // MNetworkEnable - CCSPlayer_PingServices* m_pPingServices; // 0xd20 + CCSPlayer_PingServices* m_pPingServices; // 0x12a0 // MNetworkEnable - CCSPlayer_ViewModelServices* m_pViewModelServices; // 0xd28 - float m_fRenderingClipPlane[4]; // 0xd30 - int32_t m_nLastClipPlaneSetupFrame; // 0xd40 - Vector m_vecLastClipCameraPos; // 0xd44 - Vector m_vecLastClipCameraForward; // 0xd50 - bool m_bClipHitStaticWorld; // 0xd5c - bool m_bCachedPlaneIsValid; // 0xd5d + CCSPlayer_ViewModelServices* m_pViewModelServices; // 0x12a8 + float m_fRenderingClipPlane[4]; // 0x12b0 + int32_t m_nLastClipPlaneSetupFrame; // 0x12c0 + Vector m_vecLastClipCameraPos; // 0x12c4 + Vector m_vecLastClipCameraForward; // 0x12d0 + bool m_bClipHitStaticWorld; // 0x12dc + bool m_bCachedPlaneIsValid; // 0x12dd private: - [[maybe_unused]] uint8_t __pad0d5e[0x2]; // 0xd5e + [[maybe_unused]] uint8_t __pad12de[0x2]; // 0x12de public: - C_WeaponCSBase* m_pClippingWeapon; // 0xd60 + C_WeaponCSBase* m_pClippingWeapon; // 0x12e0 // MNetworkEnable - bool m_bHasFemaleVoice; // 0xd68 + bool m_bHasFemaleVoice; // 0x12e8 private: - [[maybe_unused]] uint8_t __pad0d69[0x3]; // 0xd69 + [[maybe_unused]] uint8_t __pad12e9[0x3]; // 0x12e9 public: - CSPlayerState m_previousPlayerState; // 0xd6c - float m_flLastCollisionCeiling; // 0xd70 - float m_flLastCollisionCeilingChangeTime; // 0xd74 + CSPlayerState m_previousPlayerState; // 0x12ec + float m_flLastCollisionCeiling; // 0x12f0 + float m_flLastCollisionCeilingChangeTime; // 0x12f4 private: - [[maybe_unused]] uint8_t __pad0d78[0x58]; // 0xd78 + [[maybe_unused]] uint8_t __pad12f8[0x58]; // 0x12f8 public: - bool m_bInLanding; // 0xdd0 + bool m_bInLanding; // 0x1350 private: - [[maybe_unused]] uint8_t __pad0dd1[0x3]; // 0xdd1 + [[maybe_unused]] uint8_t __pad1351[0x3]; // 0x1351 public: - float m_flLandingTime; // 0xdd4 - GameTime_t m_grenadeParameterStashTime; // 0xdd8 - bool m_bGrenadeParametersStashed; // 0xddc + float m_flLandingTime; // 0x1354 + GameTime_t m_grenadeParameterStashTime; // 0x1358 + bool m_bGrenadeParametersStashed; // 0x135c private: - [[maybe_unused]] uint8_t __pad0ddd[0x3]; // 0xddd + [[maybe_unused]] uint8_t __pad135d[0x3]; // 0x135d public: - QAngle m_angStashedShootAngles; // 0xde0 - Vector m_vecStashedGrenadeThrowPosition; // 0xdec - Vector m_vecStashedVelocity; // 0xdf8 - QAngle m_angShootAngleHistory[2]; // 0xe04 - Vector m_vecThrowPositionHistory[2]; // 0xe1c - Vector m_vecVelocityHistory[2]; // 0xe34 + QAngle m_angStashedShootAngles; // 0x1360 + Vector m_vecStashedGrenadeThrowPosition; // 0x136c + Vector m_vecStashedVelocity; // 0x1378 + QAngle m_angShootAngleHistory[2]; // 0x1384 + Vector m_vecThrowPositionHistory[2]; // 0x139c + Vector m_vecVelocityHistory[2]; // 0x13b4 private: - [[maybe_unused]] uint8_t __pad0e4c[0x4]; // 0xe4c + [[maybe_unused]] uint8_t __pad13cc[0x4]; // 0x13cc public: // MNetworkEnable - // MNetworkBitCount "32" // MNetworkEncoder // MNetworkChangeCallback "OnThirdPersonHeadingChanged" // MNetworkPriority "32" - QAngle m_thirdPersonHeading; // 0xe50 + QAngle m_thirdPersonHeading; // 0x13d0 private: - [[maybe_unused]] uint8_t __pad0e5c[0xc]; // 0xe5c + [[maybe_unused]] uint8_t __pad13dc[0xc]; // 0x13dc public: // MNetworkEnable // MNetworkChangeCallback "OnSlopeDropOffsetChanged" // MNetworkPriority "32" - float m_flSlopeDropOffset; // 0xe68 + float m_flSlopeDropOffset; // 0x13e8 private: - [[maybe_unused]] uint8_t __pad0e6c[0xc]; // 0xe6c + [[maybe_unused]] uint8_t __pad13ec[0xc]; // 0x13ec public: // MNetworkEnable // MNetworkChangeCallback "OnSlopeDropHeightChanged" // MNetworkPriority "32" - float m_flSlopeDropHeight; // 0xe78 + float m_flSlopeDropHeight; // 0x13f8 private: - [[maybe_unused]] uint8_t __pad0e7c[0xc]; // 0xe7c + [[maybe_unused]] uint8_t __pad13fc[0xc]; // 0x13fc public: // MNetworkEnable // MNetworkChangeCallback "OnHeadConstraintChanged" // MNetworkPriority "32" - Vector m_vHeadConstraintOffset; // 0xe88 + Vector m_vHeadConstraintOffset; // 0x1408 private: - [[maybe_unused]] uint8_t __pad0e94[0xc]; // 0xe94 + [[maybe_unused]] uint8_t __pad1414[0xc]; // 0x1414 public: - bool m_bClientTransparentImmunityAlphaEffectEnabled; // 0xea0 - bool m_bClientDeferDrawToImmunityAlphaPass; // 0xea1 + bool m_bClientTransparentImmunityAlphaEffectEnabled; // 0x1420 + bool m_bClientDeferDrawToImmunityAlphaPass; // 0x1421 // MNetworkEnable - bool m_bIsScoped; // 0xea2 + bool m_bIsScoped; // 0x1422 // MNetworkEnable - bool m_bIsWalking; // 0xea3 + bool m_bIsWalking; // 0x1423 // MNetworkEnable - bool m_bResumeZoom; // 0xea4 + bool m_bResumeZoom; // 0x1424 private: - [[maybe_unused]] uint8_t __pad0ea5[0x3]; // 0xea5 + [[maybe_unused]] uint8_t __pad1425[0x3]; // 0x1425 public: // MNetworkEnable - CSPlayerState m_iPlayerState; // 0xea8 + CSPlayerState m_iPlayerState; // 0x1428 // MNetworkEnable - bool m_bIsDefusing; // 0xeac + bool m_bIsDefusing; // 0x142c // MNetworkEnable - bool m_bIsGrabbingHostage; // 0xead + bool m_bIsGrabbingHostage; // 0x142d private: - [[maybe_unused]] uint8_t __pad0eae[0x2]; // 0xeae + [[maybe_unused]] uint8_t __pad142e[0x2]; // 0x142e public: // MNetworkEnable - CSPlayerBlockingUseAction_t m_iBlockingUseActionInProgress; // 0xeb0 + CSPlayerBlockingUseAction_t m_iBlockingUseActionInProgress; // 0x1430 // MNetworkEnable - bool m_bIsRescuing; // 0xeb4 + bool m_bIsRescuing; // 0x1434 private: - [[maybe_unused]] uint8_t __pad0eb5[0x3]; // 0xeb5 + [[maybe_unused]] uint8_t __pad1435[0x3]; // 0x1435 public: // MNetworkEnable - GameTime_t m_fImmuneToGunGameDamageTime; // 0xeb8 - GameTime_t m_fImmuneToGunGameDamageTimeLast; // 0xebc + GameTime_t m_fImmuneToGunGameDamageTime; // 0x1438 + GameTime_t m_fImmuneToGunGameDamageTimeLast; // 0x143c // MNetworkEnable - bool m_bGunGameImmunity; // 0xec0 + bool m_bGunGameImmunity; // 0x1440 // MNetworkEnable - bool m_bHasMovedSinceSpawn; // 0xec1 + bool m_bHasMovedSinceSpawn; // 0x1441 // MNetworkEnable - bool m_bMadeFinalGunGameProgressiveKill; // 0xec2 + bool m_bMadeFinalGunGameProgressiveKill; // 0x1442 private: - [[maybe_unused]] uint8_t __pad0ec3[0x1]; // 0xec3 + [[maybe_unused]] uint8_t __pad1443[0x1]; // 0x1443 public: // MNetworkEnable - int32_t m_iGunGameProgressiveWeaponIndex; // 0xec4 + int32_t m_iGunGameProgressiveWeaponIndex; // 0x1444 // MNetworkEnable - int32_t m_iNumGunGameTRKillPoints; // 0xec8 + int32_t m_iNumGunGameTRKillPoints; // 0x1448 // MNetworkEnable - int32_t m_iNumGunGameKillsWithCurrentWeapon; // 0xecc + int32_t m_iNumGunGameKillsWithCurrentWeapon; // 0x144c // MNetworkEnable - uint32_t m_unTotalRoundDamageDealt; // 0xed0 + uint32_t m_unTotalRoundDamageDealt; // 0x1450 // MNetworkEnable - float m_fMolotovUseTime; // 0xed4 + float m_fMolotovUseTime; // 0x1454 // MNetworkEnable - float m_fMolotovDamageTime; // 0xed8 + float m_fMolotovDamageTime; // 0x1458 // MNetworkEnable - bool m_bInBombZone; // 0xedc + bool m_bInBombZone; // 0x145c private: - [[maybe_unused]] uint8_t __pad0edd[0x3]; // 0xedd + [[maybe_unused]] uint8_t __pad145d[0x3]; // 0x145d public: // MNetworkEnable - int32_t m_nWhichBombZone; // 0xee0 + int32_t m_nWhichBombZone; // 0x1460 // MNetworkEnable - bool m_bInBuyZone; // 0xee4 + bool m_bInBuyZone; // 0x1464 // MNetworkEnable - bool m_bInNoDefuseArea; // 0xee5 + bool m_bInNoDefuseArea; // 0x1465 private: - [[maybe_unused]] uint8_t __pad0ee6[0x2]; // 0xee6 + [[maybe_unused]] uint8_t __pad1466[0x2]; // 0x1466 public: // MNetworkEnable - int32_t m_iThrowGrenadeCounter; // 0xee8 + int32_t m_iThrowGrenadeCounter; // 0x1468 // MNetworkEnable - bool m_bWaitForNoAttack; // 0xeec + bool m_bWaitForNoAttack; // 0x146c // MNetworkEnable - bool m_bIsRespawningForDMBonus; // 0xeed + bool m_bIsRespawningForDMBonus; // 0x146d private: - [[maybe_unused]] uint8_t __pad0eee[0x2]; // 0xeee + [[maybe_unused]] uint8_t __pad146e[0x2]; // 0x146e public: // MNetworkEnable - float m_flGuardianTooFarDistFrac; // 0xef0 + float m_flGuardianTooFarDistFrac; // 0x1470 // MNetworkEnable - GameTime_t m_flDetectedByEnemySensorTime; // 0xef4 - float m_flNextGuardianTooFarWarning; // 0xef8 - bool m_bSuppressGuardianTooFarWarningAudio; // 0xefc + GameTime_t m_flDetectedByEnemySensorTime; // 0x1474 + float m_flNextGuardianTooFarWarning; // 0x1478 + bool m_bSuppressGuardianTooFarWarningAudio; // 0x147c // MNetworkEnable - bool m_bKilledByTaser; // 0xefd + bool m_bKilledByTaser; // 0x147d private: - [[maybe_unused]] uint8_t __pad0efe[0x2]; // 0xefe + [[maybe_unused]] uint8_t __pad147e[0x2]; // 0x147e public: // MNetworkEnable - int32_t m_iMoveState; // 0xf00 + int32_t m_iMoveState; // 0x1480 // MNetworkEnable - bool m_bCanMoveDuringFreezePeriod; // 0xf04 + bool m_bCanMoveDuringFreezePeriod; // 0x1484 // MNetworkEnable - bool m_isCurrentGunGameLeader; // 0xf05 + bool m_isCurrentGunGameLeader; // 0x1485 // MNetworkEnable - bool m_isCurrentGunGameTeamLeader; // 0xf06 + bool m_isCurrentGunGameTeamLeader; // 0x1486 private: - [[maybe_unused]] uint8_t __pad0f07[0x1]; // 0xf07 + [[maybe_unused]] uint8_t __pad1487[0x1]; // 0x1487 public: // MNetworkEnable - float m_flLowerBodyYawTarget; // 0xf08 + float m_flLowerBodyYawTarget; // 0x1488 // MNetworkEnable - bool m_bStrafing; // 0xf0c + bool m_bStrafing; // 0x148c // MNetworkEnable - char m_szLastPlaceName[18]; // 0xf0d + char m_szLastPlaceName[18]; // 0x148d private: - [[maybe_unused]] uint8_t __pad0f1f[0x1]; // 0xf1f + [[maybe_unused]] uint8_t __pad149f[0x1]; // 0x149f public: + GameTime_t m_flLastSpawnTimeIndex; // 0x14a0 // MNetworkEnable - float m_flLastExoJumpTime; // 0xf20 -private: - [[maybe_unused]] uint8_t __pad0f24[0xc]; // 0xf24 -public: - GameTime_t m_flLastSpawnTimeIndex; // 0xf30 + GameTime_t m_flEmitSoundTime; // 0x14a4 // MNetworkEnable - GameTime_t m_flEmitSoundTime; // 0xf34 + int32_t m_iAddonBits; // 0x14a8 // MNetworkEnable - int32_t m_iAddonBits; // 0xf38 + int32_t m_iPrimaryAddon; // 0x14ac // MNetworkEnable - int32_t m_iPrimaryAddon; // 0xf3c + int32_t m_iSecondaryAddon; // 0x14b0 // MNetworkEnable - int32_t m_iSecondaryAddon; // 0xf40 + int32_t m_iProgressBarDuration; // 0x14b4 // MNetworkEnable - int32_t m_iProgressBarDuration; // 0xf44 + float m_flProgressBarStartTime; // 0x14b8 // MNetworkEnable - float m_flProgressBarStartTime; // 0xf48 + float m_flStamina; // 0x14bc // MNetworkEnable - float m_flStamina; // 0xf4c + int32_t m_iDirection; // 0x14c0 // MNetworkEnable - int32_t m_iDirection; // 0xf50 - // MNetworkEnable - int32_t m_iShotsFired; // 0xf54 + int32_t m_iShotsFired; // 0x14c4 // MNetworkEnable // MNetworkChangeCallback "OnNightVisionChanged" - bool m_bNightVisionOn; // 0xf58 + bool m_bNightVisionOn; // 0x14c8 // MNetworkEnable - bool m_bHasNightVision; // 0xf59 + bool m_bHasNightVision; // 0x14c9 private: - [[maybe_unused]] uint8_t __pad0f5a[0x2]; // 0xf5a + [[maybe_unused]] uint8_t __pad14ca[0x2]; // 0x14ca public: // MNetworkEnable - float m_flVelocityModifier; // 0xf5c + float m_flVelocityModifier; // 0x14cc // MNetworkEnable - float m_flGroundAccelLinearFracLastTime; // 0xf60 + int32_t m_iStartAccount; // 0x14d0 // MNetworkEnable - int32_t m_iStartAccount; // 0xf64 - // MNetworkEnable - bool m_bIsSpawnRappelling; // 0xf68 + bool m_bIsSpawnRappelling; // 0x14d4 private: - [[maybe_unused]] uint8_t __pad0f69[0x3]; // 0xf69 + [[maybe_unused]] uint8_t __pad14d5[0x3]; // 0x14d5 public: // MNetworkEnable - Vector m_vecSpawnRappellingRopeOrigin; // 0xf6c - float m_flSpawnRappellingFadeOutForClientViewOffset; // 0xf78 + Vector m_vecSpawnRappellingRopeOrigin; // 0x14d8 + float m_flSpawnRappellingFadeOutForClientViewOffset; // 0x14e4 // MNetworkEnable - int32_t m_nSurvivalTeam; // 0xf7c + int32_t m_nSurvivalTeam; // 0x14e8 // MNetworkEnable - CHandle< C_CSPlayerPawnBase > m_hSurvivalAssassinationTarget; // 0xf80 + CHandle< C_CSPlayerPawnBase > m_hSurvivalAssassinationTarget; // 0x14ec // MNetworkEnable - float m_flHealthShotBoostExpirationTime; // 0xf84 - float m_flLastKnownParachuteScreenEffectAmount; // 0xf88 - Vector m_vecIntroStartEyePosition; // 0xf8c - Vector m_vecIntroStartPlayerForward; // 0xf98 - float m_flClientDeathTime; // 0xfa4 + float m_flHealthShotBoostExpirationTime; // 0x14f0 + float m_flLastKnownParachuteScreenEffectAmount; // 0x14f4 + Vector m_vecIntroStartEyePosition; // 0x14f8 + Vector m_vecIntroStartPlayerForward; // 0x1504 + float m_flClientDeathTime; // 0x1510 private: - [[maybe_unused]] uint8_t __pad0fa8[0x8]; // 0xfa8 + [[maybe_unused]] uint8_t __pad1514[0x8]; // 0x1514 public: - float m_flNightVisionAlpha; // 0xfb0 - bool m_bScreenTearFrameCaptured; // 0xfb4 + float m_flNightVisionAlpha; // 0x151c + bool m_bScreenTearFrameCaptured; // 0x1520 private: - [[maybe_unused]] uint8_t __pad0fb5[0x3]; // 0xfb5 + [[maybe_unused]] uint8_t __pad1521[0x3]; // 0x1521 public: - float m_flFlashBangTime; // 0xfb8 - float m_flFlashScreenshotAlpha; // 0xfbc - float m_flFlashOverlayAlpha; // 0xfc0 - bool m_bFlashBuildUp; // 0xfc4 - bool m_bFlashDspHasBeenCleared; // 0xfc5 - bool m_bFlashScreenshotHasBeenGrabbed; // 0xfc6 + float m_flFlashBangTime; // 0x1524 + float m_flFlashScreenshotAlpha; // 0x1528 + float m_flFlashOverlayAlpha; // 0x152c + bool m_bFlashBuildUp; // 0x1530 + bool m_bFlashDspHasBeenCleared; // 0x1531 + bool m_bFlashScreenshotHasBeenGrabbed; // 0x1532 private: - [[maybe_unused]] uint8_t __pad0fc7[0x1]; // 0xfc7 + [[maybe_unused]] uint8_t __pad1533[0x1]; // 0x1533 public: // MNetworkEnable // MNetworkChangeCallback "OnFlashMaxAlphaChanged" - float m_flFlashMaxAlpha; // 0xfc8 + float m_flFlashMaxAlpha; // 0x1534 // MNetworkEnable // MNetworkChangeCallback "OnFlashDurationChanged" - float m_flFlashDuration; // 0xfcc - float m_flLastFiredWeaponTime; // 0xfd0 - Vector m_lastStandingPos; // 0xfd4 - Vector m_vecLastMuzzleFlashPos; // 0xfe0 - QAngle m_angLastMuzzleFlashAngle; // 0xfec - CHandle< C_BaseEntity > m_hMuzzleFlashShape; // 0xff8 - int32_t m_iHealthBarRenderMaskIndex; // 0xffc - float m_flHealthFadeValue; // 0x1000 - float m_flHealthFadeAlpha; // 0x1004 - int32_t m_nMyCollisionGroup; // 0x1008 - float m_ignoreLadderJumpTime; // 0x100c - CountdownTimer m_ladderSurpressionTimer; // 0x1010 - Vector m_lastLadderNormal; // 0x1028 - Vector m_lastLadderPos; // 0x1034 + float m_flFlashDuration; // 0x1538 + float m_flLastFiredWeaponTime; // 0x153c + Vector m_lastStandingPos; // 0x1540 + Vector m_vecLastMuzzleFlashPos; // 0x154c + QAngle m_angLastMuzzleFlashAngle; // 0x1558 + CHandle< C_BaseEntity > m_hMuzzleFlashShape; // 0x1564 + int32_t m_iHealthBarRenderMaskIndex; // 0x1568 + float m_flHealthFadeValue; // 0x156c + float m_flHealthFadeAlpha; // 0x1570 + int32_t m_nMyCollisionGroup; // 0x1574 + float m_ignoreLadderJumpTime; // 0x1578 private: - [[maybe_unused]] uint8_t __pad1040[0x8]; // 0x1040 + [[maybe_unused]] uint8_t __pad157c[0x4]; // 0x157c public: - float m_flDeathCCWeight; // 0x1048 - bool m_bOldIsScoped; // 0x104c + CountdownTimer m_ladderSurpressionTimer; // 0x1580 + Vector m_lastLadderNormal; // 0x1598 + Vector m_lastLadderPos; // 0x15a4 private: - [[maybe_unused]] uint8_t __pad104d[0x3]; // 0x104d + [[maybe_unused]] uint8_t __pad15b0[0x8]; // 0x15b0 public: - float m_flPrevRoundEndTime; // 0x1050 - float m_flPrevMatchEndTime; // 0x1054 - // MNetworkEnable - uint16_t m_unCurrentEquipmentValue; // 0x1058 - // MNetworkEnable - uint16_t m_unRoundStartEquipmentValue; // 0x105a - // MNetworkEnable - uint16_t m_unFreezetimeEndEquipmentValue; // 0x105c - // MNetworkEnable - bool m_passiveItems[4]; // 0x105e + float m_flDeathCCWeight; // 0x15b8 + bool m_bOldIsScoped; // 0x15bc private: - [[maybe_unused]] uint8_t __pad1062[0x2]; // 0x1062 + [[maybe_unused]] uint8_t __pad15bd[0x3]; // 0x15bd public: - Vector m_vecThirdPersonViewPositionOverride; // 0x1064 + float m_flPrevRoundEndTime; // 0x15c0 + float m_flPrevMatchEndTime; // 0x15c4 // MNetworkEnable - int32_t m_nHeavyAssaultSuitCooldownRemaining; // 0x1070 + uint16_t m_unCurrentEquipmentValue; // 0x15c8 // MNetworkEnable - int32_t m_ArmorValue; // 0x1074 + uint16_t m_unRoundStartEquipmentValue; // 0x15ca + // MNetworkEnable + uint16_t m_unFreezetimeEndEquipmentValue; // 0x15cc + // MNetworkEnable + bool m_passiveItems[4]; // 0x15ce +private: + [[maybe_unused]] uint8_t __pad15d2[0x2]; // 0x15d2 +public: + Vector m_vecThirdPersonViewPositionOverride; // 0x15d4 + // MNetworkEnable + int32_t m_nHeavyAssaultSuitCooldownRemaining; // 0x15e0 + // MNetworkEnable + int32_t m_ArmorValue; // 0x15e4 // MNetworkEnable // MNetworkEncoder - // MNetworkBitCount "32" // MNetworkChangeCallback "playerEyeAnglesChanged" // MNetworkPriority "32" - QAngle m_angEyeAngles; // 0x1078 + QAngle m_angEyeAngles; // 0x15e8 private: - [[maybe_unused]] uint8_t __pad1084[0xc]; // 0x1084 + [[maybe_unused]] uint8_t __pad15f4[0xc]; // 0x15f4 public: // MNetworkEnable - bool m_bInHostageRescueZone; // 0x1090 + bool m_bInHostageRescueZone; // 0x1600 private: - [[maybe_unused]] uint8_t __pad1091[0x3]; // 0x1091 + [[maybe_unused]] uint8_t __pad1601[0x3]; // 0x1601 public: - float m_fNextThinkPushAway; // 0x1094 - bool m_bShouldAutobuyDMWeapons; // 0x1098 - bool m_bShouldAutobuyNow; // 0x1099 + float m_fNextThinkPushAway; // 0x1604 + bool m_bShouldAutobuyDMWeapons; // 0x1608 + bool m_bShouldAutobuyNow; // 0x1609 // MNetworkEnable - bool m_bHud_MiniScoreHidden; // 0x109a + bool m_bHud_MiniScoreHidden; // 0x160a // MNetworkEnable - bool m_bHud_RadarHidden; // 0x109b + bool m_bHud_RadarHidden; // 0x160b // MNetworkEnable - CEntityIndex m_nLastKillerIndex; // 0x109c + CEntityIndex m_nLastKillerIndex; // 0x160c // MNetworkEnable - int32_t m_nLastConcurrentKilled; // 0x10a0 + int32_t m_nLastConcurrentKilled; // 0x1610 // MNetworkEnable - int32_t m_nDeathCamMusic; // 0x10a4 - CEntityIndex m_iIDEntIndex; // 0x10a8 + int32_t m_nDeathCamMusic; // 0x1614 + CEntityIndex m_iIDEntIndex; // 0x1618 private: - [[maybe_unused]] uint8_t __pad10ac[0x4]; // 0x10ac + [[maybe_unused]] uint8_t __pad161c[0x4]; // 0x161c public: - CountdownTimer m_delayTargetIDTimer; // 0x10b0 - CEntityIndex m_iTargetedWeaponEntIndex; // 0x10c8 - CEntityIndex m_iOldIDEntIndex; // 0x10cc - CountdownTimer m_holdTargetIDTimer; // 0x10d0 + CountdownTimer m_delayTargetIDTimer; // 0x1620 + CEntityIndex m_iTargetedWeaponEntIndex; // 0x1638 + CEntityIndex m_iOldIDEntIndex; // 0x163c + CountdownTimer m_holdTargetIDTimer; // 0x1640 private: - [[maybe_unused]] uint8_t __pad10e8[0x4c]; // 0x10e8 + [[maybe_unused]] uint8_t __pad1658[0x4c]; // 0x1658 public: - float m_flCurrentMusicStartTime; // 0x1134 - float m_flMusicRoundStartTime; // 0x1138 + float m_flCurrentMusicStartTime; // 0x16a4 + float m_flMusicRoundStartTime; // 0x16a8 // MNetworkEnable - int32_t m_cycleLatch; // 0x113c - float m_serverIntendedCycle; // 0x1140 + int32_t m_cycleLatch; // 0x16ac + float m_serverIntendedCycle; // 0x16b0 // MNetworkEnable // MNetworkChangeCallback "RecvProxy_PatchEconIndices" - uint32_t m_vecPlayerPatchEconIndices[5]; // 0x1144 - bool m_bClientEconPatchesNeedUpdate; // 0x1158 - // MNetworkEnable - bool m_bHideTargetID; // 0x1159 + uint32_t m_vecPlayerPatchEconIndices[5]; // 0x16b4 private: - [[maybe_unused]] uint8_t __pad115a[0x2]; // 0x115a -public: - float m_nextTaserShakeTime; // 0x115c - float m_firstTaserShakeTime; // 0x1160 - float m_flLastSmokeOverlayAlpha; // 0x1164 - Vector m_vLastSmokeOverlayColor; // 0x1168 - ParticleIndex_t m_nPlayerSmokedFx; // 0x1174 - float m_flLastKnownAccumulatedWeaponEncumbrance; // 0x1178 - float m_flLastTimeComputedAccumulatedWeaponEncumbrance; // 0x117c - float m_flNextMagDropTime; // 0x1180 - int32_t m_nLastMagDropAttachmentIndex; // 0x1184 - CUtlVector< C_BulletHitModel* > m_vecBulletHitModels; // 0x1188 - CUtlVector< C_PickUpModelSlerper* > m_vecPickupModelSlerpers; // 0x11a0 - Vector m_vecLastAliveLocalVelocity; // 0x11b8 - float m_flLastNearbyItemHighlightCheck; // 0x11c4 - bool m_bInSurvivalDangerZone; // 0x11c8 - bool m_bNearDangerZone; // 0x11c9 -private: - [[maybe_unused]] uint8_t __pad11ca[0x36]; // 0x11ca + [[maybe_unused]] uint8_t __pad16c8[0x8]; // 0x16c8 public: // MNetworkEnable - EntitySpottedState_t m_entitySpottedState; // 0x1200 + bool m_bHideTargetID; // 0x16d0 +private: + [[maybe_unused]] uint8_t __pad16d1[0x3]; // 0x16d1 +public: + float m_nextTaserShakeTime; // 0x16d4 + float m_firstTaserShakeTime; // 0x16d8 + float m_flLastSmokeOverlayAlpha; // 0x16dc + Vector m_vLastSmokeOverlayColor; // 0x16e0 + ParticleIndex_t m_nPlayerSmokedFx; // 0x16ec + float m_flNextMagDropTime; // 0x16f0 + int32_t m_nLastMagDropAttachmentIndex; // 0x16f4 + CUtlVector< C_BulletHitModel* > m_vecBulletHitModels; // 0x16f8 + CUtlVector< C_PickUpModelSlerper* > m_vecPickupModelSlerpers; // 0x1710 + Vector m_vecLastAliveLocalVelocity; // 0x1728 + float m_flLastNearbyItemHighlightCheck; // 0x1734 + bool m_bInSurvivalDangerZone; // 0x1738 + bool m_bNearDangerZone; // 0x1739 +private: + [[maybe_unused]] uint8_t __pad173a[0x36]; // 0x173a +public: // MNetworkEnable - float m_flTimeOfLastInjury; // 0x1218 + EntitySpottedState_t m_entitySpottedState; // 0x1770 // MNetworkEnable - RelativeDamagedDirection_t m_nRelativeDirectionOfLastInjury; // 0x121c + float m_flTimeOfLastInjury; // 0x1788 // MNetworkEnable - int32_t m_nSurvivalTeamNumber; // 0x1220 + RelativeDamagedDirection_t m_nRelativeDirectionOfLastInjury; // 0x178c + // MNetworkEnable + int32_t m_nSurvivalTeamNumber; // 0x1790 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - float m_flNextSprayDecalTime; // 0x1224 - bool m_bPreviouslyInBuyZone; // 0x1228 + float m_flNextSprayDecalTime; // 0x1794 + bool m_bPreviouslyInBuyZone; // 0x1798 private: - [[maybe_unused]] uint8_t __pad1229[0x3]; // 0x1229 + [[maybe_unused]] uint8_t __pad1799[0x3]; // 0x1799 public: - uint32_t m_unPreviousWeaponHash; // 0x122c - uint32_t m_unWeaponHash; // 0x1230 - bool m_bPrevDefuser; // 0x1234 - bool m_bPrevHelmet; // 0x1235 + uint32_t m_unPreviousWeaponHash; // 0x179c + uint32_t m_unWeaponHash; // 0x17a0 + bool m_bPrevDefuser; // 0x17a4 + bool m_bPrevHelmet; // 0x17a5 private: - [[maybe_unused]] uint8_t __pad1236[0x2]; // 0x1236 + [[maybe_unused]] uint8_t __pad17a6[0x2]; // 0x17a6 public: - int32_t m_nPrevArmorVal; // 0x1238 - bool m_bGuardianShouldSprayCustomXMark; // 0x123c + int32_t m_nPrevArmorVal; // 0x17a8 + bool m_bGuardianShouldSprayCustomXMark; // 0x17ac private: - [[maybe_unused]] uint8_t __pad123d[0x3]; // 0x123d + [[maybe_unused]] uint8_t __pad17ad[0x3]; // 0x17ad public: // MNetworkEnable - // MNetworkBitCount "32" - QAngle m_aimPunchAngle; // 0x1240 + // MNetworkEncoder + QAngle m_aimPunchAngle; // 0x17b0 // MNetworkEnable - // MNetworkBitCount "32" - QAngle m_aimPunchAngleVel; // 0x124c + // MNetworkEncoder + QAngle m_aimPunchAngleVel; // 0x17bc // MNetworkEnable - int32_t m_aimPunchTickBase; // 0x1258 + int32_t m_aimPunchTickBase; // 0x17c8 // MNetworkEnable - float m_aimPunchTickFraction; // 0x125c - CUtlVector< QAngle > m_aimPunchCache; // 0x1260 + float m_aimPunchTickFraction; // 0x17cc + CUtlVector< QAngle > m_aimPunchCache; // 0x17d0 private: - [[maybe_unused]] uint8_t __pad1278[0x8]; // 0x1278 + [[maybe_unused]] uint8_t __pad17e8[0x8]; // 0x17e8 public: - float m_flOldFallVelocity; // 0x1280 - bool m_bHasDeathInfo; // 0x1284 + float m_flOldFallVelocity; // 0x17f0 + bool m_bHasDeathInfo; // 0x17f4 private: - [[maybe_unused]] uint8_t __pad1285[0x3]; // 0x1285 + [[maybe_unused]] uint8_t __pad17f5[0x3]; // 0x17f5 public: - float m_flDeathInfoTime; // 0x1288 - Vector m_vecDeathInfoOrigin; // 0x128c + float m_flDeathInfoTime; // 0x17f8 + Vector m_vecDeathInfoOrigin; // 0x17fc // MNetworkEnable - bool m_bKilledByHeadshot; // 0x1298 + bool m_bKilledByHeadshot; // 0x1808 private: - [[maybe_unused]] uint8_t __pad1299[0x3]; // 0x1299 + [[maybe_unused]] uint8_t __pad1809[0x3]; // 0x1809 public: // MNetworkEnable - CHandle< CCSPlayerController > m_hOriginalController; // 0x129c + CHandle< CCSPlayerController > m_hOriginalController; // 0x180c private: - [[maybe_unused]] uint8_t __pad12a0[0x10]; // 0x12a0 + [[maybe_unused]] uint8_t __pad1810[0x10]; // 0x1810 public: - float m_flLandseconds; // 0x12b0 + float m_flLandseconds; // 0x1820 }; // Alignment: 1 -// Size: 0x12c0 +// Size: 0x1830 class C_CSObserverPawn : public C_CSPlayerPawnBase { public: - CEntityHandle m_hDetectParentChange; // 0x12b8 + CEntityHandle m_hDetectParentChange; // 0x1828 }; // Alignment: 20 -// Size: 0x19c0 +// Size: 0x1f30 class C_CSPlayerPawn : public C_CSPlayerPawnBase { public: // MNetworkEnable - CCSPlayer_BulletServices* m_pBulletServices; // 0x12b8 + CCSPlayer_BulletServices* m_pBulletServices; // 0x1828 // MNetworkEnable - CCSPlayer_HostageServices* m_pHostageServices; // 0x12c0 + CCSPlayer_HostageServices* m_pHostageServices; // 0x1830 // MNetworkEnable - CCSPlayer_GlowServices* m_pGlowServices; // 0x12c8 + CCSPlayer_GlowServices* m_pGlowServices; // 0x1838 // MNetworkEnable - bool m_bIsBuyMenuOpen; // 0x12d0 + bool m_bIsBuyMenuOpen; // 0x1840 private: - [[maybe_unused]] uint8_t __pad12d1[0xcf]; // 0x12d1 + [[maybe_unused]] uint8_t __pad1841[0xbf]; // 0x1841 public: // MNetworkEnable // MNetworkChangeCallback "OnRetakesOfferingChanged" - int32_t m_iRetakesOffering; // 0x13a0 + int32_t m_iRetakesOffering; // 0x1900 // MNetworkEnable // MNetworkChangeCallback "OnRetakesOfferingCardChanged" - int32_t m_iRetakesOfferingCard; // 0x13a4 + int32_t m_iRetakesOfferingCard; // 0x1904 // MNetworkEnable - bool m_bRetakesHasDefuseKit; // 0x13a8 + bool m_bRetakesHasDefuseKit; // 0x1908 // MNetworkEnable - bool m_bRetakesMVPLastRound; // 0x13a9 + bool m_bRetakesMVPLastRound; // 0x1909 private: - [[maybe_unused]] uint8_t __pad13aa[0x2]; // 0x13aa + [[maybe_unused]] uint8_t __pad190a[0x2]; // 0x190a public: // MNetworkEnable - int32_t m_iRetakesMVPBoostItem; // 0x13ac + int32_t m_iRetakesMVPBoostItem; // 0x190c // MNetworkEnable - loadout_positions_t m_RetakesMVPBoostExtraUtility; // 0x13b0 + loadout_positions_t m_RetakesMVPBoostExtraUtility; // 0x1910 private: - [[maybe_unused]] uint8_t __pad13b4[0x10]; // 0x13b4 + [[maybe_unused]] uint8_t __pad1914[0x1c]; // 0x1914 public: - bool m_bNeedToReApplyGloves; // 0x13c4 + bool m_bNeedToReApplyGloves; // 0x1930 private: - [[maybe_unused]] uint8_t __pad13c5[0x3]; // 0x13c5 + [[maybe_unused]] uint8_t __pad1931[0x7]; // 0x1931 public: // MNetworkEnable - C_EconItemView m_EconGloves; // 0x13c8 - bool m_bMustSyncRagdollState; // 0x1810 + C_EconItemView m_EconGloves; // 0x1938 + bool m_bMustSyncRagdollState; // 0x1d80 private: - [[maybe_unused]] uint8_t __pad1811[0x3]; // 0x1811 + [[maybe_unused]] uint8_t __pad1d81[0x3]; // 0x1d81 public: // MNetworkEnable - int32_t m_nRagdollDamageBone; // 0x1814 + int32_t m_nRagdollDamageBone; // 0x1d84 // MNetworkEnable - Vector m_vRagdollDamageForce; // 0x1818 + Vector m_vRagdollDamageForce; // 0x1d88 // MNetworkEnable - Vector m_vRagdollDamagePosition; // 0x1824 + Vector m_vRagdollDamagePosition; // 0x1d94 // MNetworkEnable - char m_szRagdollDamageWeaponName[64]; // 0x1830 + char m_szRagdollDamageWeaponName[64]; // 0x1da0 // MNetworkEnable - bool m_bRagdollDamageHeadshot; // 0x1870 + bool m_bRagdollDamageHeadshot; // 0x1de0 private: - [[maybe_unused]] uint8_t __pad1871[0x127]; // 0x1871 + [[maybe_unused]] uint8_t __pad1de1[0x127]; // 0x1de1 public: - bool m_bLastHeadBoneTransformIsValid; // 0x1998 + bool m_bLastHeadBoneTransformIsValid; // 0x1f08 private: - [[maybe_unused]] uint8_t __pad1999[0x1b]; // 0x1999 + [[maybe_unused]] uint8_t __pad1f09[0x1b]; // 0x1f09 public: // MNetworkEnable - QAngle m_qDeathEyeAngles; // 0x19b4 + QAngle m_qDeathEyeAngles; // 0x1f24 }; // Alignment: 16 -// Size: 0xc40 +// Size: 0x11c0 class C_Hostage : public C_BaseCombatCharacter { public: // MNetworkEnable - EntitySpottedState_t m_entitySpottedState; // 0xbb8 + EntitySpottedState_t m_entitySpottedState; // 0x1138 // MNetworkEnable - CHandle< C_BaseEntity > m_leader; // 0xbd0 + CHandle< C_BaseEntity > m_leader; // 0x1150 // MNetworkEnable - Vector m_vel; // 0xbd4 + Vector m_vel; // 0x1154 // MNetworkEnable // MNetworkChangeCallback "RecvProxy_Rescued" - bool m_isRescued; // 0xbe0 + bool m_isRescued; // 0x1160 // MNetworkEnable // MNetworkChangeCallback "RecvProxy_Jumped" - bool m_jumpedThisFrame; // 0xbe1 + bool m_jumpedThisFrame; // 0x1161 private: - [[maybe_unused]] uint8_t __pad0be2[0x2]; // 0xbe2 + [[maybe_unused]] uint8_t __pad1162[0x2]; // 0x1162 public: // MNetworkEnable - int32_t m_nHostageState; // 0xbe4 + int32_t m_nHostageState; // 0x1164 // MNetworkEnable - GameTime_t m_flRescueStartTime; // 0xbe8 + GameTime_t m_flRescueStartTime; // 0x1168 // MNetworkEnable - GameTime_t m_flGrabSuccessTime; // 0xbec + GameTime_t m_flGrabSuccessTime; // 0x116c // MNetworkEnable - GameTime_t m_flDropStartTime; // 0xbf0 - GameTime_t m_flDeadOrRescuedTime; // 0xbf4 - CountdownTimer m_blinkTimer; // 0xbf8 - Vector m_lookAt; // 0xc10 + GameTime_t m_flDropStartTime; // 0x1170 + GameTime_t m_flDeadOrRescuedTime; // 0x1174 + CountdownTimer m_blinkTimer; // 0x1178 + Vector m_lookAt; // 0x1190 private: - [[maybe_unused]] uint8_t __pad0c1c[0x4]; // 0xc1c + [[maybe_unused]] uint8_t __pad119c[0x4]; // 0x119c public: - CountdownTimer m_lookAroundTimer; // 0xc20 - bool m_isInit; // 0xc38 - AttachmentHandle_t m_eyeAttachment; // 0xc39 - AttachmentHandle_t m_chestAttachment; // 0xc3a + CountdownTimer m_lookAroundTimer; // 0x11a0 + bool m_isInit; // 0x11b8 + AttachmentHandle_t m_eyeAttachment; // 0x11b9 + AttachmentHandle_t m_chestAttachment; // 0x11ba }; // Alignment: 0 -// Size: 0xbb8 +// Size: 0x1138 class C_NetTestBaseCombatCharacter : public C_BaseCombatCharacter { public: @@ -10154,7 +10010,7 @@ public: }; // Alignment: 0 -// Size: 0x13f0 +// Size: 0x1970 class C_AK47 : public C_WeaponCSBaseGun { public: @@ -10162,7 +10018,7 @@ public: }; // Alignment: 0 -// Size: 0x13f0 +// Size: 0x1970 class C_WeaponAug : public C_WeaponCSBaseGun { public: @@ -10170,7 +10026,7 @@ public: }; // Alignment: 0 -// Size: 0x13f0 +// Size: 0x1970 class C_WeaponAWP : public C_WeaponCSBaseGun { public: @@ -10178,7 +10034,7 @@ public: }; // Alignment: 0 -// Size: 0x13f0 +// Size: 0x1970 class C_WeaponBizon : public C_WeaponCSBaseGun { public: @@ -10186,7 +10042,7 @@ public: }; // Alignment: 0 -// Size: 0x13f0 +// Size: 0x1970 class C_WeaponFamas : public C_WeaponCSBaseGun { public: @@ -10194,7 +10050,7 @@ public: }; // Alignment: 0 -// Size: 0x13f0 +// Size: 0x1970 class C_WeaponFiveSeven : public C_WeaponCSBaseGun { public: @@ -10202,7 +10058,7 @@ public: }; // Alignment: 0 -// Size: 0x13f0 +// Size: 0x1970 class C_WeaponG3SG1 : public C_WeaponCSBaseGun { public: @@ -10210,7 +10066,7 @@ public: }; // Alignment: 0 -// Size: 0x13f0 +// Size: 0x1970 class C_WeaponGalilAR : public C_WeaponCSBaseGun { public: @@ -10218,7 +10074,7 @@ public: }; // Alignment: 0 -// Size: 0x13f0 +// Size: 0x1970 class C_WeaponGlock : public C_WeaponCSBaseGun { public: @@ -10226,7 +10082,7 @@ public: }; // Alignment: 0 -// Size: 0x13f0 +// Size: 0x1970 class C_WeaponHKP2000 : public C_WeaponCSBaseGun { public: @@ -10234,7 +10090,7 @@ public: }; // Alignment: 0 -// Size: 0x13f0 +// Size: 0x1970 class C_WeaponM4A1 : public C_WeaponCSBaseGun { public: @@ -10242,7 +10098,7 @@ public: }; // Alignment: 0 -// Size: 0x13f0 +// Size: 0x1970 class C_WeaponMAC10 : public C_WeaponCSBaseGun { public: @@ -10250,7 +10106,7 @@ public: }; // Alignment: 0 -// Size: 0x13f0 +// Size: 0x1970 class C_WeaponMag7 : public C_WeaponCSBaseGun { public: @@ -10258,7 +10114,7 @@ public: }; // Alignment: 0 -// Size: 0x13f0 +// Size: 0x1970 class C_WeaponMP7 : public C_WeaponCSBaseGun { public: @@ -10266,7 +10122,7 @@ public: }; // Alignment: 0 -// Size: 0x13f0 +// Size: 0x1970 class C_WeaponMP9 : public C_WeaponCSBaseGun { public: @@ -10274,7 +10130,7 @@ public: }; // Alignment: 0 -// Size: 0x13f0 +// Size: 0x1970 class C_WeaponNegev : public C_WeaponCSBaseGun { public: @@ -10282,7 +10138,7 @@ public: }; // Alignment: 0 -// Size: 0x13f0 +// Size: 0x1970 class C_WeaponP250 : public C_WeaponCSBaseGun { public: @@ -10290,7 +10146,7 @@ public: }; // Alignment: 0 -// Size: 0x13f0 +// Size: 0x1970 class C_WeaponP90 : public C_WeaponCSBaseGun { public: @@ -10298,7 +10154,7 @@ public: }; // Alignment: 0 -// Size: 0x13f0 +// Size: 0x1970 class C_WeaponSCAR20 : public C_WeaponCSBaseGun { public: @@ -10306,7 +10162,7 @@ public: }; // Alignment: 0 -// Size: 0x13f0 +// Size: 0x1970 class C_WeaponSG556 : public C_WeaponCSBaseGun { public: @@ -10314,7 +10170,7 @@ public: }; // Alignment: 0 -// Size: 0x13f0 +// Size: 0x1970 class C_WeaponSSG08 : public C_WeaponCSBaseGun { public: @@ -10322,7 +10178,7 @@ public: }; // Alignment: 0 -// Size: 0x13f0 +// Size: 0x1970 class C_WeaponTec9 : public C_WeaponCSBaseGun { public: @@ -10330,7 +10186,7 @@ public: }; // Alignment: 0 -// Size: 0x13f0 +// Size: 0x1970 class C_WeaponUMP45 : public C_WeaponCSBaseGun { public: @@ -10338,7 +10194,7 @@ public: }; // Alignment: 0 -// Size: 0x13f0 +// Size: 0x1970 class C_WeaponM249 : public C_WeaponCSBaseGun { public: @@ -10346,7 +10202,7 @@ public: }; // Alignment: 0 -// Size: 0x1430 +// Size: 0x19b0 class C_MolotovGrenade : public C_BaseCSGrenade { public: @@ -10354,7 +10210,7 @@ public: }; // Alignment: 0 -// Size: 0x1430 +// Size: 0x19b0 class C_IncendiaryGrenade : public C_MolotovGrenade { public: @@ -10362,7 +10218,7 @@ public: }; // Alignment: 0 -// Size: 0x1410 +// Size: 0x1990 class C_DecoyGrenade : public C_BaseCSGrenade { public: @@ -10370,7 +10226,7 @@ public: }; // Alignment: 0 -// Size: 0x1410 +// Size: 0x1990 class C_Flashbang : public C_BaseCSGrenade { public: @@ -10378,7 +10234,7 @@ public: }; // Alignment: 0 -// Size: 0x1410 +// Size: 0x1990 class C_HEGrenade : public C_BaseCSGrenade { public: @@ -10386,7 +10242,7 @@ public: }; // Alignment: 0 -// Size: 0x1410 +// Size: 0x1990 class C_SmokeGrenade : public C_BaseCSGrenade { public: @@ -10394,17 +10250,17 @@ public: }; // Alignment: 3 -// Size: 0x1a48 +// Size: 0x1fc0 class C_CSGO_PreviewPlayer : public C_CSPlayerPawn { public: - CUtlString m_animgraph; // 0x19c0 - CUtlString m_animgraphCharacterModeString; // 0x19c8 - float m_flInitialModelScale; // 0x19d0 + CUtlString m_animgraph; // 0x1f30 + CUtlString m_animgraphCharacterModeString; // 0x1f38 + float m_flInitialModelScale; // 0x1f40 }; // Alignment: 0 -// Size: 0x1a48 +// Size: 0x1fc0 class C_CSGO_PreviewPlayerAlias_csgo_player_previewmodel : public C_CSGO_PreviewPlayer { public: @@ -10412,7 +10268,7 @@ public: }; // Alignment: 0 -// Size: 0x1a48 +// Size: 0x1fc0 class C_CSGO_TeamPreviewModel : public C_CSGO_PreviewPlayer { public: diff --git a/sdk/engine2.hpp b/sdk/engine2.hpp index f91e9d85..2849e477 100644 --- a/sdk/engine2.hpp +++ b/sdk/engine2.hpp @@ -59,8 +59,6 @@ struct CScriptComponent; // Size: 0x28 struct EngineLoopState_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 public: int32_t m_nPlatWindowWidth; // 0x18 int32_t m_nPlatWindowHeight; // 0x1c @@ -72,10 +70,8 @@ public: // Size: 0x1 struct EventModInitialized_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 1 @@ -98,10 +94,8 @@ public: // Size: 0x1 struct EventSplitScreenStateChanged_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 8 @@ -292,10 +286,8 @@ public: // Size: 0x1 struct EventClientPredictionPostNetupdate_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 1 @@ -310,10 +302,8 @@ public: // Size: 0x1 struct EventClientProcessNetworking_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 @@ -408,18 +398,14 @@ public: // Size: 0x8 class IHandleEntity { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: - // No members available + uint8_t __pad0000[0x8]; // Autoaligned }; // Alignment: 1 // Size: 0x28 class CNetworkVarChainer { -private: - [[maybe_unused]] uint8_t __pad0000[0x20]; // 0x0 public: // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex @@ -430,20 +416,16 @@ public: // Size: 0x1 class CVariantDefaultAllocator { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x10 struct EntOutput_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: - // No members available + uint8_t __pad0000[0x10]; // Autoaligned }; // Alignment: 7 @@ -467,28 +449,22 @@ public: // Size: 0x8 class CEntityComponent { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: - // No members available + uint8_t __pad0000[0x8]; // Autoaligned }; // Alignment: 0 // Size: 0x30 struct EntInput_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x30]; // 0x0 public: - // No members available + uint8_t __pad0000[0x30]; // Autoaligned }; // Alignment: 4 // Size: 0x28 class CEntityComponentHelper { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: uint32_t m_flags; // 0x8 private: @@ -506,8 +482,6 @@ public: // Size: 0x78 class CEntityIdentity { -private: - [[maybe_unused]] uint8_t __pad0000[0x14]; // 0x0 public: // MNetworkEnable // MNetworkChangeCallback "entityIdentityNameChanged" @@ -540,10 +514,8 @@ public: // Size: 0x8 class CEmptyEntityInstance { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: - // No members available + uint8_t __pad0000[0x8]; // Autoaligned }; // Alignment: 3 @@ -568,8 +540,6 @@ public: // Size: 0x28 class CEntityIOOutput { -private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 public: CVariantBase< CVariantDefaultAllocator > m_Value; // 0x18 }; @@ -578,12 +548,8 @@ public: // Size: 0x38 class CScriptComponent : public CEntityComponent { -private: - [[maybe_unused]] uint8_t __pad0008[0x28]; // 0x8 public: CUtlSymbolLarge m_scriptClassName; // 0x30 - - // Static fields: static EntComponentInfo_t &Get_s_EntComponentInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("engine2.dll")->FindDeclaredClass("CScriptComponent")->m_static_fields[0]->m_instance);}; static int32_t &Get_entity_component_error_class_decl_says_contained_but_impl_is_referenced(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("engine2.dll")->FindDeclaredClass("CScriptComponent")->m_static_fields[1]->m_instance);}; }; diff --git a/sdk/host.hpp b/sdk/host.hpp new file mode 100644 index 00000000..cdc64f20 --- /dev/null +++ b/sdk/host.hpp @@ -0,0 +1,27 @@ +#pragma once +#include +#include "!GlobalTypes.hpp" + +// ///////////////////////////////////////////////////////////// +// Binary: host.dll +// Classes count: 2 +// Enums count: 0 +// Created using source2gen - github.com/neverlosecc/source2gen +// ///////////////////////////////////////////////////////////// + +// Alignment: 1 +// Size: 0x10 +class CAnimScriptBase +{ +public: + bool m_bIsValid; // 0x8 +}; + +// Alignment: 1 +// Size: 0x38 +class EmptyTestScript : public CAnimScriptBase +{ +public: + CAnimScriptParam< float32 > m_hTest; // 0x10 +}; + diff --git a/sdk/particles.hpp b/sdk/particles.hpp index a9fb7d70..562aaaf0 100644 --- a/sdk/particles.hpp +++ b/sdk/particles.hpp @@ -4,8 +4,8 @@ // ///////////////////////////////////////////////////////////// // Binary: particles.dll -// Classes count: 490 -// Enums count: 70 +// Classes count: 428 +// Enums count: 68 // Created using source2gen - github.com/neverlosecc/source2gen // ///////////////////////////////////////////////////////////// @@ -253,7 +253,7 @@ enum class ParticleSelection_t : uint32_t }; // Alignment: 4 -// Size: 0xb +// Size: 0xc enum class ParticlePinDistance_t : uint32_t { PARTICLE_PIN_DISTANCE_NONE = 0xffffffffffffffff, @@ -267,6 +267,7 @@ enum class ParticlePinDistance_t : uint32_t PARTICLE_PIN_DISTANCE_CP_PAIR_BOTH = 0x8, PARTICLE_PIN_SPEED = 0x9, PARTICLE_PIN_COLLECTION_AGE = 0xa, + PARTICLE_PIN_FLOAT_VALUE = 0xb, }; // Alignment: 4 @@ -404,6 +405,15 @@ enum class MaterialProxyType_t : uint32_t MATERIAL_PROXY_TINT = 0x1, }; +// Alignment: 4 +// Size: 0x3 +enum class BBoxVolumeType_t : uint32_t +{ + BBOX_VOLUME = 0x0, + BBOX_DIMENSIONS = 0x1, + BBOX_MINS_MAXS = 0x2, +}; + // Alignment: 4 // Size: 0x6 enum class ParticleOrientationChoiceList_t : uint32_t @@ -608,76 +618,6 @@ enum class TextureRepetitionMode_t : uint32_t TEXTURE_REPETITION_PATH = 0x1, }; -// Alignment: 2 -// Size: 0x24 -enum class PulseInstructionCode_t : uint16_t -{ - INVALID = 0x0, - IMMEDIATE_HALT = 0x1, - RETURN_VOID = 0x2, - RETURN_VALUE = 0x3, - NOP = 0x4, - JUMP = 0x5, - LEAP = 0x6, - COND_JUMP = 0x7, - COND_LEAP = 0x8, - PULSE_CALL = 0x9, - LANDING_PAD = 0xa, - CELL_INVOKE = 0xb, - LIBRARY_INVOKE = 0xc, - SET_VAR_REG_BOOL = 0xd, - SET_VAR_REG_INT = 0xe, - SET_VAR_REG_FLOAT = 0xf, - SET_VAR_REG_STR = 0x10, - SET_VAR_REG_EHANDLE = 0x11, - SET_VAR_REG_SNDEVT_GUID = 0x12, - SET_VAR_REG_VEC3 = 0x13, - GET_VAR_REG_BOOL = 0x14, - GET_VAR_REG_INT = 0x15, - GET_VAR_REG_FLOAT = 0x16, - GET_VAR_REG_STR = 0x17, - GET_VAR_REG_EHANDLE = 0x18, - GET_VAR_REG_SNDEVT_GUID = 0x19, - GET_VAR_REG_VEC3 = 0x1a, - SET_REGISTER_LIT_BOOL = 0x1b, - SET_REGISTER_LIT_INT = 0x1c, - SET_REGISTER_LIT_FLOAT = 0x1d, - SET_REGISTER_LIT_STR = 0x1e, - SET_REGISTER_LIT_INVAL_EHANDLE = 0x1f, - SET_REGISTER_LIT_INVAL_SNDEVT_GUID = 0x20, - SET_REGISTER_LIT_VEC3 = 0x21, - SET_REGISTER_DOMAIN_VALUE = 0x22, - COUNT = 0x23, -}; - -// Alignment: 4 -// Size: 0xd -enum class PulseValueType_t : uint32_t -{ - PVAL_INVALID = 0xffffffffffffffff, - PVAL_BOOL = 0x0, - PVAL_INT = 0x1, - PVAL_FLOAT = 0x2, - PVAL_STRING = 0x3, - PVAL_VEC3 = 0x4, - PVAL_TRANSFORM = 0x5, - PVAL_EHANDLE = 0x6, - PVAL_RESOURCE = 0x7, - PVAL_SNDEVT_GUID = 0x8, - PVAL_CURSOR_FLOW = 0x9, - PVAL_ANY = 0xa, - PVAL_COUNT = 0xb, -}; - -// Alignment: 4 -// Size: 0x3 -enum class PulseCursorFlow_t : uint32_t -{ - INVALID = 0xffffffffffffffff, - TERMINATE = 0x0, - JUMP_OR_LEAP = 0x1, -}; - // Alignment: 4 // Size: 0x16 enum class ParticleFloatType_t : uint32_t @@ -806,7 +746,7 @@ enum class ParticleModelType_t : uint32_t }; // Alignment: 4 -// Size: 0x11 +// Size: 0x12 enum class ParticleVecType_t : uint32_t { PVEC_TYPE_INVALID = 0xffffffffffffffff, @@ -825,7 +765,8 @@ enum class ParticleVecType_t : uint32_t PVEC_TYPE_FLOAT_INTERP_GRADIENT = 0xc, PVEC_TYPE_RANDOM_UNIFORM = 0xd, PVEC_TYPE_RANDOM_UNIFORM_OFFSET = 0xe, - PVEC_TYPE_COUNT = 0xf, + PVEC_TYPE_CP_DELTA = 0xf, + PVEC_TYPE_COUNT = 0x10, }; struct ParticleAttributeIndex_t; @@ -837,18 +778,8 @@ struct TextureControls_t; struct CParticleCollectionRendererVecInput; struct CParticleCollectionVecInput; struct CParticleTransformInput; -struct PulseRuntimeRegisterIndex_t; -struct PulseRegisterMap_t; -struct PulseRuntimeCellIndex_t; -struct PulseDocNodeID_t; -struct PulseRuntimeChunkIndex_t; -struct PulseRuntimeVarIndex_t; -struct PulseRuntimeInvokeIndex_t; -struct PulseRuntimeLandingPadIndex_t; -struct PulseRuntimeOutputIndex_t; -struct CPulse_ResumePoint; -struct CPulse_OutflowConnection; struct CParticleFloatInput; +struct ParticleNamedValueConfiguration_t; struct CNewParticleEffect; struct IParticleCollection; struct PARTICLE_EHANDLE__; @@ -856,10 +787,11 @@ struct CParticleProperty; struct CPerParticleFloatInput; struct CPathParameters; struct CPerParticleVecInput; +struct CParticleModelInput; struct CRandomNumberGeneratorParameters; struct CParticleRemapFloatInput; struct ControlPointReference_t; -struct CParticleModelInput; +struct CParticleVariableRef; // Alignment: 2 // Size: 0x8 @@ -956,30 +888,24 @@ public: // Size: 0x10 class IParticleCollection { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: - // No members available + uint8_t __pad0000[0x10]; // Autoaligned }; // Alignment: 0 // Size: 0x8 class IControlPointEditorData { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: - // No members available + uint8_t __pad0000[0x8]; // Autoaligned }; // Alignment: 0 // Size: 0x8 class IParticleSystemDefinition { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: - // No members available + uint8_t __pad0000[0x8]; // Autoaligned }; // Alignment: 18 @@ -1159,17 +1085,6 @@ public: float m_flTimeDuration; // 0x14 }; -// Alignment: 3 -// Size: 0x10 -struct ParticleNamedValueSource_t -{ -public: - CUtlString m_Name; // 0x0 - // MPropertyAttributeChoiceName "particlefield_namedvaluetype" - PulseValueType_t m_Type; // 0x8 - bool m_IsPublic; // 0xc -}; - // Alignment: 63 // Size: 0x3e0 class CParticleSystemDefinition : public IParticleSystemDefinition @@ -1236,9 +1151,8 @@ public: // MPropertyAutoRebuildOnChange // MPropertySuppressExpr "!m_bEnableNamedValues" CUtlString m_NamedValueDomain; // 0x240 - // MPropertyFriendlyName "Variables" - // MPropertySuppressExpr "!m_bEnableNamedValues" - CUtlVector< ParticleNamedValueSource_t > m_NamedValueLocals; // 0x248 + // MPropertySuppressField + CUtlVector< ParticleNamedValueSource_t* > m_NamedValueLocals; // 0x248 // MPropertyStartGroup "+Base Properties" // MPropertyFriendlyName "color" // MPropertyColorPlusAlpha @@ -1355,77 +1269,85 @@ public: CUtlVector< ParticleControlPointConfiguration_t > m_controlPointConfigurations; // 0x368 }; -// Alignment: 44 -// Size: 0x140 -class CParticleFloatInput +// Alignment: 0 +// Size: 0x10 +class CParticleInput { public: - ParticleFloatType_t m_nType; // 0x0 - ParticleFloatMapType_t m_nMapType; // 0x4 - float m_flLiteralValue; // 0x8 -private: - [[maybe_unused]] uint8_t __pad000c[0x4]; // 0xc + uint8_t __pad0000[0x10]; // Autoaligned +}; + +// Alignment: 44 +// Size: 0x150 +class CParticleFloatInput : public CParticleInput +{ public: - CKV3MemberNameWithStorage m_NamedValue; // 0x10 - int32_t m_nControlPoint; // 0x48 - ParticleAttributeIndex_t m_nScalarAttribute; // 0x4c - ParticleAttributeIndex_t m_nVectorAttribute; // 0x50 - int32_t m_nVectorComponent; // 0x54 - float m_flRandomMin; // 0x58 - float m_flRandomMax; // 0x5c - bool m_bHasRandomSignFlip; // 0x60 + ParticleFloatType_t m_nType; // 0x10 + ParticleFloatMapType_t m_nMapType; // 0x14 + float m_flLiteralValue; // 0x18 private: - [[maybe_unused]] uint8_t __pad0061[0x3]; // 0x61 + [[maybe_unused]] uint8_t __pad001c[0x4]; // 0x1c public: - ParticleFloatRandomMode_t m_nRandomMode; // 0x64 + CParticleNamedValueRef m_NamedValue; // 0x20 + int32_t m_nControlPoint; // 0x60 + ParticleAttributeIndex_t m_nScalarAttribute; // 0x64 + ParticleAttributeIndex_t m_nVectorAttribute; // 0x68 + int32_t m_nVectorComponent; // 0x6c + float m_flRandomMin; // 0x70 + float m_flRandomMax; // 0x74 + bool m_bHasRandomSignFlip; // 0x78 private: - [[maybe_unused]] uint8_t __pad0068[0x4]; // 0x68 + [[maybe_unused]] uint8_t __pad0079[0x3]; // 0x79 public: - float m_flLOD0; // 0x6c - float m_flLOD1; // 0x70 - float m_flLOD2; // 0x74 - float m_flLOD3; // 0x78 - ParticleAttributeIndex_t m_nNoiseInputVectorAttribute; // 0x7c - float m_flNoiseOutputMin; // 0x80 - float m_flNoiseOutputMax; // 0x84 - float m_flNoiseScale; // 0x88 - Vector m_vecNoiseOffsetRate; // 0x8c - float m_flNoiseOffset; // 0x98 - int32_t m_nNoiseOctaves; // 0x9c - PFNoiseTurbulence_t m_nNoiseTurbulence; // 0xa0 - PFNoiseType_t m_nNoiseType; // 0xa4 - PFNoiseModifier_t m_nNoiseModifier; // 0xa8 - float m_flNoiseTurbulenceScale; // 0xac - float m_flNoiseTurbulenceMix; // 0xb0 - float m_flNoiseImgPreviewScale; // 0xb4 - bool m_bNoiseImgPreviewLive; // 0xb8 + ParticleFloatRandomMode_t m_nRandomMode; // 0x7c private: - [[maybe_unused]] uint8_t __pad00b9[0x8]; // 0xb9 + [[maybe_unused]] uint8_t __pad0080[0x4]; // 0x80 public: - bool m_bUseBoundsCenter; // 0xc1 + float m_flLOD0; // 0x84 + float m_flLOD1; // 0x88 + float m_flLOD2; // 0x8c + float m_flLOD3; // 0x90 + ParticleAttributeIndex_t m_nNoiseInputVectorAttribute; // 0x94 + float m_flNoiseOutputMin; // 0x98 + float m_flNoiseOutputMax; // 0x9c + float m_flNoiseScale; // 0xa0 + Vector m_vecNoiseOffsetRate; // 0xa4 + float m_flNoiseOffset; // 0xb0 + int32_t m_nNoiseOctaves; // 0xb4 + PFNoiseTurbulence_t m_nNoiseTurbulence; // 0xb8 + PFNoiseType_t m_nNoiseType; // 0xbc + PFNoiseModifier_t m_nNoiseModifier; // 0xc0 + float m_flNoiseTurbulenceScale; // 0xc4 + float m_flNoiseTurbulenceMix; // 0xc8 + float m_flNoiseImgPreviewScale; // 0xcc + bool m_bNoiseImgPreviewLive; // 0xd0 private: - [[maybe_unused]] uint8_t __pad00c2[0x2]; // 0xc2 + [[maybe_unused]] uint8_t __pad00d1[0x8]; // 0xd1 public: - ParticleFloatInputMode_t m_nInputMode; // 0xc4 - float m_flMultFactor; // 0xc8 - float m_flInput0; // 0xcc - float m_flInput1; // 0xd0 - float m_flOutput0; // 0xd4 - float m_flOutput1; // 0xd8 - float m_flNotchedRangeMin; // 0xdc - float m_flNotchedRangeMax; // 0xe0 - float m_flNotchedOutputOutside; // 0xe4 - float m_flNotchedOutputInside; // 0xe8 - ParticleFloatBiasType_t m_nBiasType; // 0xec - float m_flBiasParameter; // 0xf0 + bool m_bUseBoundsCenter; // 0xd9 private: - [[maybe_unused]] uint8_t __pad00f4[0x4]; // 0xf4 + [[maybe_unused]] uint8_t __pad00da[0x2]; // 0xda public: - CPiecewiseCurve m_Curve; // 0xf8 + ParticleFloatInputMode_t m_nInputMode; // 0xdc + float m_flMultFactor; // 0xe0 + float m_flInput0; // 0xe4 + float m_flInput1; // 0xe8 + float m_flOutput0; // 0xec + float m_flOutput1; // 0xf0 + float m_flNotchedRangeMin; // 0xf4 + float m_flNotchedRangeMax; // 0xf8 + float m_flNotchedOutputOutside; // 0xfc + float m_flNotchedOutputInside; // 0x100 + ParticleFloatBiasType_t m_nBiasType; // 0x104 + float m_flBiasParameter; // 0x108 +private: + [[maybe_unused]] uint8_t __pad010c[0x4]; // 0x10c +public: + CPiecewiseCurve m_Curve; // 0x110 }; // Alignment: 0 -// Size: 0x140 +// Size: 0x150 class CParticleCollectionFloatInput : public CParticleFloatInput { public: @@ -1433,98 +1355,88 @@ public: }; // Alignment: 16 -// Size: 0x210 +// Size: 0x1b0 class CParticleFunction { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MPropertyFriendlyName "operator strength" // MPropertySortPriority "-100" CParticleCollectionFloatInput m_flOpStrength; // 0x8 // MPropertyFriendlyName "operator end cap state" // MPropertySortPriority "-100" - ParticleEndcapMode_t m_nOpEndCapState; // 0x148 + ParticleEndcapMode_t m_nOpEndCapState; // 0x158 // MPropertyStartGroup "Operator Fade" // MPropertyFriendlyName "operator start fadein" // MParticleAdvancedField // MPropertySortPriority "-100" - float m_flOpStartFadeInTime; // 0x14c + float m_flOpStartFadeInTime; // 0x15c // MPropertyFriendlyName "operator end fadein" // MParticleAdvancedField // MPropertySortPriority "-100" - float m_flOpEndFadeInTime; // 0x150 + float m_flOpEndFadeInTime; // 0x160 // MPropertyFriendlyName "operator start fadeout" // MParticleAdvancedField // MPropertySortPriority "-100" - float m_flOpStartFadeOutTime; // 0x154 + float m_flOpStartFadeOutTime; // 0x164 // MPropertyFriendlyName "operator end fadeout" // MParticleAdvancedField // MPropertySortPriority "-100" - float m_flOpEndFadeOutTime; // 0x158 + float m_flOpEndFadeOutTime; // 0x168 // MPropertyFriendlyName "operator fade oscillate" // MParticleAdvancedField // MPropertySortPriority "-100" - float m_flOpFadeOscillatePeriod; // 0x15c + float m_flOpFadeOscillatePeriod; // 0x16c // MPropertyFriendlyName "normalize fade times to endcap" // MParticleAdvancedField // MPropertySortPriority "-100" - bool m_bNormalizeToStopTime; // 0x160 + bool m_bNormalizeToStopTime; // 0x170 private: - [[maybe_unused]] uint8_t __pad0161[0x3]; // 0x161 + [[maybe_unused]] uint8_t __pad0171[0x3]; // 0x171 public: // MPropertyStartGroup "Operator Fade Time Offset" // MPropertyFriendlyName "operator fade time offset min" // MParticleAdvancedField // MPropertySortPriority "-100" - float m_flOpTimeOffsetMin; // 0x164 + float m_flOpTimeOffsetMin; // 0x174 // MPropertyFriendlyName "operator fade time offset max" // MParticleAdvancedField // MPropertySortPriority "-100" - float m_flOpTimeOffsetMax; // 0x168 + float m_flOpTimeOffsetMax; // 0x178 // MPropertyFriendlyName "operator fade time offset seed" // MParticleAdvancedField // MPropertySortPriority "-100" - int32_t m_nOpTimeOffsetSeed; // 0x16c + int32_t m_nOpTimeOffsetSeed; // 0x17c // MPropertyStartGroup "Operator Fade Timescale Modifiers" // MPropertyFriendlyName "operator fade time scale seed" // MParticleAdvancedField // MPropertySortPriority "-100" - int32_t m_nOpTimeScaleSeed; // 0x170 + int32_t m_nOpTimeScaleSeed; // 0x180 // MPropertyFriendlyName "operator fade time scale min" // MParticleAdvancedField // MPropertySortPriority "-100" - float m_flOpTimeScaleMin; // 0x174 + float m_flOpTimeScaleMin; // 0x184 // MPropertyFriendlyName "operator fade time scale max" // MParticleAdvancedField // MPropertySortPriority "-100" - float m_flOpTimeScaleMax; // 0x178 + float m_flOpTimeScaleMax; // 0x188 private: - [[maybe_unused]] uint8_t __pad017c[0x1]; // 0x17c + [[maybe_unused]] uint8_t __pad018c[0x1]; // 0x18c public: // MPropertyStartGroup // MPropertySuppressField - bool m_bDisableOperator; // 0x17d + bool m_bDisableOperator; // 0x18d private: - [[maybe_unused]] uint8_t __pad017e[0x2]; // 0x17e + [[maybe_unused]] uint8_t __pad018e[0x2]; // 0x18e public: // MPropertyFriendlyName "operator help and notes" // MParticleHelpField // MParticleAdvancedField // MPropertySortPriority "-100" - CUtlString m_Notes; // 0x180 + CUtlString m_Notes; // 0x190 }; // Alignment: 0 -// Size: 0x210 -class CParticleFunctionConstraint : public CParticleFunction -{ -public: - // No members available -}; - -// Alignment: 0 -// Size: 0x210 +// Size: 0x1b0 class CParticleFunctionForce : public CParticleFunction { public: @@ -1532,7 +1444,7 @@ public: }; // Alignment: 0 -// Size: 0x210 +// Size: 0x1b0 class CParticleFunctionOperator : public CParticleFunction { public: @@ -1540,32 +1452,32 @@ public: }; // Alignment: 1 -// Size: 0x220 +// Size: 0x1c0 class CParticleFunctionPreEmission : public CParticleFunctionOperator { public: // MPropertyFriendlyName "Run Only Once" - bool m_bRunOnce; // 0x210 + bool m_bRunOnce; // 0x1b0 }; // Alignment: 3 -// Size: 0x260 +// Size: 0x200 class CParticleFunctionRenderer : public CParticleFunction { public: // MPropertySortPriority "-1" - CParticleVisibilityInputs VisibilityInputs; // 0x210 + CParticleVisibilityInputs VisibilityInputs; // 0x1b0 // MPropertyStartGroup "Rendering filter" // MPropertyFriendlyName "I cannot be refracted through refracting objects like water" // MPropertySortPriority "-1" - bool m_bCannotBeRefracted; // 0x254 + bool m_bCannotBeRefracted; // 0x1f4 // MPropertyFriendlyName "Skip rendering on mobile" // MPropertySortPriority "-1" - bool m_bSkipRenderingOnMobile; // 0x255 + bool m_bSkipRenderingOnMobile; // 0x1f5 }; // Alignment: 0 -// Size: 0x140 +// Size: 0x150 class CParticleCollectionRendererFloatInput : public CParticleCollectionFloatInput { public: @@ -1573,87 +1485,85 @@ public: }; // Alignment: 16 -// Size: 0x8e0 +// Size: 0x950 struct TextureControls_t { public: // MPropertyFriendlyName "horizontal texture scale" CParticleCollectionRendererFloatInput m_flFinalTextureScaleU; // 0x0 // MPropertyFriendlyName "vertical texture scale" - CParticleCollectionRendererFloatInput m_flFinalTextureScaleV; // 0x140 + CParticleCollectionRendererFloatInput m_flFinalTextureScaleV; // 0x150 // MPropertyFriendlyName "horizontal texture offset" - CParticleCollectionRendererFloatInput m_flFinalTextureOffsetU; // 0x280 + CParticleCollectionRendererFloatInput m_flFinalTextureOffsetU; // 0x2a0 // MPropertyFriendlyName "vertical texture offset" - CParticleCollectionRendererFloatInput m_flFinalTextureOffsetV; // 0x3c0 + CParticleCollectionRendererFloatInput m_flFinalTextureOffsetV; // 0x3f0 // MPropertyFriendlyName "texture rotation / animation rate scale" - CParticleCollectionRendererFloatInput m_flFinalTextureUVRotation; // 0x500 + CParticleCollectionRendererFloatInput m_flFinalTextureUVRotation; // 0x540 // MPropertyFriendlyName "Infinite Zoom Scale" - CParticleCollectionRendererFloatInput m_flZoomScale; // 0x640 + CParticleCollectionRendererFloatInput m_flZoomScale; // 0x690 // MPropertyFriendlyName "Distortion Amount" - CParticleCollectionRendererFloatInput m_flDistortion; // 0x780 + CParticleCollectionRendererFloatInput m_flDistortion; // 0x7e0 // MPropertyFriendlyName "Randomize Initial Offset" - bool m_bRandomizeOffsets; // 0x8c0 + bool m_bRandomizeOffsets; // 0x930 // MPropertyFriendlyName "Clamp UVs" - bool m_bClampUVs; // 0x8c1 + bool m_bClampUVs; // 0x931 private: - [[maybe_unused]] uint8_t __pad08c2[0x2]; // 0x8c2 + [[maybe_unused]] uint8_t __pad0932[0x2]; // 0x932 public: // MPropertyFriendlyName "per-particle scalar for blend" - SpriteCardPerParticleScale_t m_nPerParticleBlend; // 0x8c4 + SpriteCardPerParticleScale_t m_nPerParticleBlend; // 0x934 // MPropertyFriendlyName "per-particle scalar for scale" - SpriteCardPerParticleScale_t m_nPerParticleScale; // 0x8c8 + SpriteCardPerParticleScale_t m_nPerParticleScale; // 0x938 // MPropertyFriendlyName "per-particle scalar for horizontal offset" - SpriteCardPerParticleScale_t m_nPerParticleOffsetU; // 0x8cc + SpriteCardPerParticleScale_t m_nPerParticleOffsetU; // 0x93c // MPropertyFriendlyName "per-particle scalar for vertical offset" - SpriteCardPerParticleScale_t m_nPerParticleOffsetV; // 0x8d0 + SpriteCardPerParticleScale_t m_nPerParticleOffsetV; // 0x940 // MPropertyFriendlyName "per-particle scalar for rotation" - SpriteCardPerParticleScale_t m_nPerParticleRotation; // 0x8d4 + SpriteCardPerParticleScale_t m_nPerParticleRotation; // 0x944 // MPropertyFriendlyName "per-particle scalar for zoom" - SpriteCardPerParticleScale_t m_nPerParticleZoom; // 0x8d8 + SpriteCardPerParticleScale_t m_nPerParticleZoom; // 0x948 // MPropertyFriendlyName "per-particle scalar for distortion" - SpriteCardPerParticleScale_t m_nPerParticleDistortion; // 0x8dc + SpriteCardPerParticleScale_t m_nPerParticleDistortion; // 0x94c }; -// Alignment: 22 -// Size: 0x5e8 -class CParticleVecInput +// Alignment: 23 +// Size: 0x638 +class CParticleVecInput : public CParticleInput { public: - ParticleVecType_t m_nType; // 0x0 - Vector m_vLiteralValue; // 0x4 - Color m_LiteralColor; // 0x10 + ParticleVecType_t m_nType; // 0x10 + Vector m_vLiteralValue; // 0x14 + Color m_LiteralColor; // 0x20 private: - [[maybe_unused]] uint8_t __pad0014[0x4]; // 0x14 + [[maybe_unused]] uint8_t __pad0024[0x4]; // 0x24 public: - CKV3MemberNameWithStorage m_NamedValue; // 0x18 - bool m_bFollowNamedValue; // 0x50 + CParticleNamedValueRef m_NamedValue; // 0x28 + bool m_bFollowNamedValue; // 0x68 private: - [[maybe_unused]] uint8_t __pad0051[0x3]; // 0x51 + [[maybe_unused]] uint8_t __pad0069[0x3]; // 0x69 public: - ParticleAttributeIndex_t m_nVectorAttribute; // 0x54 - Vector m_vVectorAttributeScale; // 0x58 - int32_t m_nControlPoint; // 0x64 - Vector m_vCPValueScale; // 0x68 - Vector m_vCPRelativePosition; // 0x74 - Vector m_vCPRelativeDir; // 0x80 -private: - [[maybe_unused]] uint8_t __pad008c[0x4]; // 0x8c -public: - CParticleFloatInput m_FloatComponentX; // 0x90 - CParticleFloatInput m_FloatComponentY; // 0x1d0 - CParticleFloatInput m_FloatComponentZ; // 0x310 - CParticleFloatInput m_FloatInterp; // 0x450 - float m_flInterpInput0; // 0x590 - float m_flInterpInput1; // 0x594 - Vector m_vInterpOutput0; // 0x598 - Vector m_vInterpOutput1; // 0x5a4 - CColorGradient m_Gradient; // 0x5b0 - Vector m_vRandomMin; // 0x5c8 - Vector m_vRandomMax; // 0x5d4 + ParticleAttributeIndex_t m_nVectorAttribute; // 0x6c + Vector m_vVectorAttributeScale; // 0x70 + int32_t m_nControlPoint; // 0x7c + int32_t m_nDeltaControlPoint; // 0x80 + Vector m_vCPValueScale; // 0x84 + Vector m_vCPRelativePosition; // 0x90 + Vector m_vCPRelativeDir; // 0x9c + CParticleFloatInput m_FloatComponentX; // 0xa8 + CParticleFloatInput m_FloatComponentY; // 0x1f8 + CParticleFloatInput m_FloatComponentZ; // 0x348 + CParticleFloatInput m_FloatInterp; // 0x498 + float m_flInterpInput0; // 0x5e8 + float m_flInterpInput1; // 0x5ec + Vector m_vInterpOutput0; // 0x5f0 + Vector m_vInterpOutput1; // 0x5fc + CColorGradient m_Gradient; // 0x608 + Vector m_vRandomMin; // 0x620 + Vector m_vRandomMax; // 0x62c }; // Alignment: 0 -// Size: 0x5e8 +// Size: 0x638 class CParticleCollectionVecInput : public CParticleVecInput { public: @@ -1661,7 +1571,7 @@ public: }; // Alignment: 2 -// Size: 0x148 +// Size: 0x158 struct FloatInputMaterialVariable_t { public: @@ -1672,687 +1582,53 @@ public: }; // Alignment: 0 -// Size: 0x5e8 +// Size: 0x638 class CParticleCollectionRendererVecInput : public CParticleCollectionVecInput { public: // No members available }; +// Alignment: 0 +// Size: 0x1b0 +class CParticleFunctionConstraint : public CParticleFunction +{ +public: + // No members available +}; + // Alignment: 8 -// Size: 0x50 -class CParticleTransformInput -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x4]; // 0x0 -public: - ParticleTransformType_t m_nType; // 0x4 - CKV3MemberNameWithStorage m_NamedValue; // 0x8 - bool m_bFollowNamedValue; // 0x40 - bool m_bSupportsDisabled; // 0x41 - bool m_bUseOrientation; // 0x42 -private: - [[maybe_unused]] uint8_t __pad0043[0x1]; // 0x43 -public: - int32_t m_nControlPoint; // 0x44 - int32_t m_nControlPointRangeMax; // 0x48 - float m_flEndCPGrowthTime; // 0x4c -}; - -// Alignment: 1 -// Size: 0x2 -struct PulseRuntimeRegisterIndex_t -{ -public: - int16_t m_Value; // 0x0 -}; - -// Alignment: 3 -// Size: 0x60 -class CPulse_Chunk -{ -public: - CUtlLeanVector< PGDInstruction_t > m_Instructions; // 0x0 - CUtlLeanVector< CPulse_RegisterInfo > m_Registers; // 0x10 - CUtlLeanVector< PulseDocNodeID_t > m_InstructionEditorIDs; // 0x20 -}; - -// Alignment: 5 -// Size: 0x38 -class CPulse_Variable -{ -public: - CUtlSymbolLarge m_Name; // 0x0 - CUtlString m_Description; // 0x8 - CPulseValueFullType m_Type; // 0x10 - KeyValues3 m_DefaultValue; // 0x20 -private: - [[maybe_unused]] uint8_t __pad0030[0x2]; // 0x30 -public: - bool m_bIsPublic; // 0x32 -}; - -// Alignment: 2 -// Size: 0x10 -class CPulse_PublicOutput -{ -public: - CUtlSymbolLarge m_Name; // 0x0 - CUtlString m_Description; // 0x8 -}; - -// Alignment: 4 -// Size: 0x20 -class CPulse_OutputConnection -{ -public: - CUtlSymbolLarge m_SourceOutput; // 0x0 - CUtlSymbolLarge m_TargetEntity; // 0x8 - CUtlSymbolLarge m_TargetInput; // 0x10 - CUtlSymbolLarge m_Param; // 0x18 -}; - -// Alignment: 1 -// Size: 0x4 -struct PulseRuntimeCellIndex_t -{ -public: - int32_t m_Value; // 0x0 -}; - -// Alignment: 1 -// Size: 0x4 -struct PulseRuntimeChunkIndex_t -{ -public: - int32_t m_Value; // 0x0 -}; - -// Alignment: 9 -// Size: 0xf8 -class CPulseGraphDef -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 -public: - CUtlSymbolLarge m_DomainIdentifier; // 0x8 - CUtlSymbolLarge m_ParentMapName; // 0x10 - CUtlVector< CPulse_Chunk* > m_Chunks; // 0x18 - CUtlVector< CPulseCell_Base* > m_Cells; // 0x30 - CUtlVector< CPulse_Variable > m_Vars; // 0x48 - CUtlVector< CPulse_PublicOutput > m_PublicOutputs; // 0x60 - CUtlVector< CPulse_InvokeBinding* > m_InvokeBindings; // 0x78 - CUtlVector< CPulse_LandingPadInfo* > m_LandingPads; // 0x90 - CUtlVector< CPulse_OutputConnection* > m_OutputConnections; // 0xa8 -}; - -// Alignment: 0 -// Size: 0xd0 -class CBasePulseGraphInstance -{ -private: - [[maybe_unused]] uint8_t __pad0000[0xd0]; // 0x0 -public: - // No members available -}; - -// Alignment: 1 -// Size: 0x4 -struct PulseDocNodeID_t -{ -public: - int32_t m_Value; // 0x0 -}; - -// Alignment: 1 -// Size: 0x4 -struct PulseRuntimeLandingPadIndex_t -{ -public: - int32_t m_Value; // 0x0 -}; - -// Alignment: 1 -// Size: 0x4 -struct PulseRuntimeVarIndex_t -{ -public: - int32_t m_Value; // 0x0 -}; - -// Alignment: 1 -// Size: 0x4 -struct PulseRuntimeOutputIndex_t -{ -public: - int32_t m_Value; // 0x0 -}; - -// Alignment: 1 -// Size: 0x2 -struct PulseRuntimeStateOffset_t -{ -public: - uint16_t m_Value; // 0x0 -}; - -// Alignment: 5 -// Size: 0x58 -class CPulse_RegisterInfo -{ -public: - PulseRuntimeRegisterIndex_t m_nReg; // 0x0 - CPulseValueFullType m_Type; // 0x8 - CKV3MemberNameWithStorage m_OriginName; // 0x18 - int32_t m_nWrittenByInstruction; // 0x50 - int32_t m_nLastReadByInstruction; // 0x54 -}; - -// Alignment: 2 -// Size: 0x20 -struct PulseRegisterMap_t -{ -public: - KeyValues3 m_Inparams; // 0x0 - KeyValues3 m_Outparams; // 0x10 -}; - -// Alignment: 1 -// Size: 0x4 -struct PulseRuntimeInvokeIndex_t -{ -public: - int32_t m_Value; // 0x0 -}; - -// Alignment: 4 -// Size: 0x18 -class CPulse_LandingPadInfo -{ -public: - CUtlSymbolLarge m_PortName; // 0x0 - PulseDocNodeID_t m_nEditorNodeID; // 0x8 - PulseRuntimeChunkIndex_t m_nAssociatedChunk; // 0xc - int32_t m_nAssociatedInstruction; // 0x10 -}; - -// Alignment: 1 -// Size: 0x4 -struct PulseRuntimeEntrypointIndex_t -{ -public: - int32_t m_Value; // 0x0 -}; - -// Alignment: 3 -// Size: 0x30 -class CPulse_InvokeBinding -{ -public: - PulseRegisterMap_t m_RegisterMap; // 0x0 - CUtlSymbolLarge m_FuncName; // 0x20 - PulseRuntimeCellIndex_t m_nCellIndex; // 0x28 -}; - -// Alignment: 16 // Size: 0x68 -struct PGDInstruction_t +class CParticleTransformInput : public CParticleInput { public: - PulseInstructionCode_t m_nCode; // 0x0 - PulseRuntimeVarIndex_t m_nVar; // 0x4 - PulseRuntimeRegisterIndex_t m_nReg0; // 0x8 - PulseRuntimeRegisterIndex_t m_nReg1; // 0xa - PulseRuntimeRegisterIndex_t m_nReg2; // 0xc + ParticleTransformType_t m_nType; // 0x10 private: - [[maybe_unused]] uint8_t __pad000e[0x2]; // 0xe + [[maybe_unused]] uint8_t __pad0014[0x4]; // 0x14 public: - PulseRuntimeInvokeIndex_t m_nInvokeBindingIndex; // 0x10 - PulseRuntimeChunkIndex_t m_nChunk; // 0x14 - int32_t m_nDestInstruction; // 0x18 - PulseRuntimeLandingPadIndex_t m_nLandingPadIndex; // 0x1c - CUtlSymbolLarge m_Arg0Name; // 0x20 - CUtlSymbolLarge m_Arg1Name; // 0x28 - bool m_bLiteralBool; // 0x30 + CParticleNamedValueRef m_NamedValue; // 0x18 + bool m_bFollowNamedValue; // 0x58 + bool m_bSupportsDisabled; // 0x59 + bool m_bUseOrientation; // 0x5a private: - [[maybe_unused]] uint8_t __pad0031[0x3]; // 0x31 + [[maybe_unused]] uint8_t __pad005b[0x1]; // 0x5b public: - int32_t m_nLiteralInt; // 0x34 - float m_flLiteralFloat; // 0x38 -private: - [[maybe_unused]] uint8_t __pad003c[0x4]; // 0x3c -public: - CBufferString m_LiteralString; // 0x40 - Vector m_vLiteralVec3; // 0x50 -}; - -// Alignment: 4 -// Size: 0x18 -class CPulse_OutflowConnection -{ -public: - CUtlSymbolLarge m_SourceOutflowName; // 0x0 - PulseRuntimeChunkIndex_t m_nDestChunk; // 0x8 - PulseCursorFlow_t m_nJumpType; // 0xc - int32_t m_nInstruction; // 0x10 -}; - -// Alignment: 0 -// Size: 0x18 -class CPulse_ResumePoint : public CPulse_OutflowConnection -{ -public: - // No members available + int32_t m_nControlPoint; // 0x5c + int32_t m_nControlPointRangeMax; // 0x60 + float m_flEndCPGrowthTime; // 0x64 }; // Alignment: 1 -// Size: 0x48 -class CPulseCell_Base -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 -public: - // MFgdFromSchemaCompletelySkipField - PulseDocNodeID_t m_nEditorNodeID; // 0x8 -}; - -// Alignment: 0 -// Size: 0x48 -class CPulseCell_BaseFlow : public CPulseCell_Base -{ -public: - // No members available -}; - -// Alignment: 2 -// Size: 0x70 -class CPulseCell_Inflow_BaseEntrypoint : public CPulseCell_BaseFlow -{ -public: - PulseRuntimeChunkIndex_t m_EntryChunk; // 0x48 -private: - [[maybe_unused]] uint8_t __pad004c[0x4]; // 0x4c -public: - PulseRegisterMap_t m_RegisterMap; // 0x50 -}; - -// Alignment: 10 -// Size: 0x138 -class CPulseCell_Inflow_Method : public CPulseCell_Inflow_BaseEntrypoint -{ -public: - CUtlSymbolLarge m_MethodName; // 0x70 - CUtlString m_Description; // 0x78 - bool m_bIsPublic; // 0x80 -private: - [[maybe_unused]] uint8_t __pad0081[0x7]; // 0x81 -public: - // MFgdFromSchemaCompletelySkipField - CPulseValueFullType m_ReturnType; // 0x88 - CKV3MemberNameWithStorage m_Arg0Name; // 0x98 - CUtlString m_Arg0Description; // 0xd0 - // MFgdFromSchemaCompletelySkipField - CPulseValueFullType m_Arg0Type; // 0xd8 - CKV3MemberNameWithStorage m_Arg1Name; // 0xe8 - CUtlString m_Arg1Description; // 0x120 - // MFgdFromSchemaCompletelySkipField - CPulseValueFullType m_Arg1Type; // 0x128 -}; - -// Alignment: 1 -// Size: 0x78 -class CPulseCell_Inflow_EventHandler : public CPulseCell_Inflow_BaseEntrypoint -{ -public: - CUtlSymbolLarge m_EventName; // 0x70 -}; - -// Alignment: 1 -// Size: 0x78 -class CPulseCell_Inflow_GraphHook : public CPulseCell_Inflow_BaseEntrypoint -{ -public: - CUtlSymbolLarge m_HookName; // 0x70 -}; - -// Alignment: 4 -// Size: 0x98 -class CPulseCell_Inflow_EntOutputHandler : public CPulseCell_Inflow_BaseEntrypoint -{ -public: - // MFgdFromSchemaCompletelySkipField - CUtlSymbolLarge m_SourceEntity; // 0x70 - // MFgdFromSchemaCompletelySkipField - CUtlSymbolLarge m_SourceOutput; // 0x78 - // MFgdFromSchemaCompletelySkipField - CUtlSymbolLarge m_TargetInput; // 0x80 - // MFgdFromSchemaCompletelySkipField - CPulseValueFullType m_ExpectedParamType; // 0x88 -}; - -// Alignment: 0 -// Size: 0x48 -class CPulseCell_BaseYieldingInflow : public CPulseCell_BaseFlow -{ -public: - // No members available -}; - -// Alignment: 0 -// Size: 0x48 -class CPulseCell_BaseValue : public CPulseCell_Base -{ -public: - // No members available -}; - -// Alignment: 0 -// Size: 0x68 -class CPulseCell_Value_Expression : public CPulseCell_BaseValue -{ -public: - // No members available -}; - -// Alignment: 1 -// Size: 0x50 -class CPulseCell_Step_PublicOutput : public CPulseCell_BaseFlow -{ -public: - PulseRuntimeOutputIndex_t m_OutputIndex; // 0x48 -}; - -// Alignment: 1 -// Size: 0x60 -class CPulseCell_Inflow_Yield : public CPulseCell_BaseYieldingInflow -{ -public: - CPulse_ResumePoint m_UnyieldResume; // 0x48 -}; - -// Alignment: 1 -// Size: 0x60 -class CPulseCell_Inflow_Wait : public CPulseCell_BaseYieldingInflow -{ -public: - CPulse_ResumePoint m_WakeResume; // 0x48 -}; - -// Alignment: 2 -// Size: 0x78 -class CPulseCell_Outflow_StringSwitch : public CPulseCell_BaseFlow -{ -public: - CPulse_OutflowConnection m_DefaultCaseOutflow; // 0x48 - CUtlVector< CPulse_OutflowConnection > m_CaseOutflows; // 0x60 -}; - -// Alignment: 2 -// Size: 0x78 -class CPulseCell_Outflow_IntSwitch : public CPulseCell_BaseFlow -{ -public: - CPulse_OutflowConnection m_DefaultCaseOutflow; // 0x48 - CUtlVector< CPulse_OutflowConnection > m_CaseOutflows; // 0x60 -}; - -// Alignment: 1 -// Size: 0x60 -class CPulseCell_Outflow_CycleOrdered : public CPulseCell_BaseFlow -{ -public: - CUtlVector< CPulse_OutflowConnection > m_Outputs; // 0x48 -}; - -// Alignment: 1 -// Size: 0x4 -struct CPulseCell_Outflow_CycleOrdered__InstanceState_t -{ -public: - int32_t m_nNextIndex; // 0x0 -}; - -// Alignment: 1 -// Size: 0x60 -class CPulseCell_Outflow_CycleRandom : public CPulseCell_BaseFlow -{ -public: - CUtlVector< CPulse_OutflowConnection > m_Outputs; // 0x48 -}; - -// Alignment: 1 -// Size: 0x60 -class CPulseCell_Outflow_CycleShuffled : public CPulseCell_BaseFlow -{ -public: - CUtlVector< CPulse_OutflowConnection > m_Outputs; // 0x48 -}; - -// Alignment: 2 -// Size: 0x28 -struct CPulseCell_Outflow_CycleShuffled__InstanceState_t -{ -public: - CUtlVectorFixedGrowable< uint8 > m_Shuffle; // 0x0 - int32_t m_nNextShuffle; // 0x20 -}; - -// Alignment: 1 -// Size: 0x60 -class CPulseCell_Outflow_SimultaneousParallel : public CPulseCell_BaseFlow -{ -public: - CUtlVector< CPulse_OutflowConnection > m_Outputs; // 0x48 -}; - -// Alignment: 2 -// Size: 0x78 -class CPulseCell_Outflow_TestRandomYesNo : public CPulseCell_BaseFlow -{ -public: - // MPropertyFriendlyName "Yes" - // MPropertyDescription "Randomly taken half of the time" - CPulse_OutflowConnection m_Yes; // 0x48 - // MPropertyFriendlyName "No" - // MPropertyDescription "Randomly taken half of the time" - CPulse_OutflowConnection m_No; // 0x60 -}; - -// Alignment: 0 -// Size: 0x48 -class CPulseCell_Value_TestValue50 : public CPulseCell_BaseValue -{ -public: - // No members available -}; - -// Alignment: 0 -// Size: 0x48 -class CPulseCell_Value_RandomInt : public CPulseCell_BaseValue -{ -public: - // No members available -}; - -// Alignment: 0 -// Size: 0x48 -class CPulseCell_Step_DebugLog : public CPulseCell_BaseFlow -{ -public: - // No members available -}; - -// Alignment: 3 -// Size: 0xc0 -class CPulseCell_Step_BaseCallMethod : public CPulseCell_BaseFlow -{ -public: - CUtlSymbolLarge m_MethodName; // 0x48 - CKV3MemberNameWithStorage m_Arg0Name; // 0x50 - CKV3MemberNameWithStorage m_Arg1Name; // 0x88 -}; - -// Alignment: 0 -// Size: 0xc0 -class CPulseCell_Step_CallMethod : public CPulseCell_Step_BaseCallMethod -{ -public: - // No members available -}; - -// Alignment: 0 -// Size: 0xc0 -class CPulseCell_Step_CallExternalMethod : public CPulseCell_Step_BaseCallMethod -{ -public: - // No members available -}; - -// Alignment: 1 -// Size: 0x4 -struct PulseTestEHandle_t -{ -public: - int32_t m_Value; // 0x0 -}; - -// Alignment: 5 -// Size: 0x108 -class CPulseGraphInstance_TestDomain : public CBasePulseGraphInstance -{ -public: - bool m_bIsRunningUnitTests; // 0xd0 - bool m_bExplicitTimeStepping; // 0xd1 - bool m_bExpectingToDestroyWithYieldedCursors; // 0xd2 -private: - [[maybe_unused]] uint8_t __pad00d3[0x1]; // 0xd3 -public: - int32_t m_nNextValidateIndex; // 0xd4 - CUtlVector< CUtlString > m_Tracepoints; // 0xd8 - - // Static fields: - static double &Get_s_flExplicitCurTime(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("particles.dll")->FindDeclaredClass("CPulseGraphInstance_TestDomain")->m_static_fields[0]->m_instance);}; -}; - -// Alignment: 0 -// Size: 0x48 -class CPulseCell_Step_TestDomainTracepoint : public CPulseCell_BaseFlow -{ -public: - // No members available -}; - -// Alignment: 0 -// Size: 0x48 -class CPulseCell_Step_TestDomainCreateFakeEntity : public CPulseCell_BaseFlow -{ -public: - // No members available -}; - -// Alignment: 0 -// Size: 0x48 -class CPulseCell_Step_TestDomainDestroyFakeEntity : public CPulseCell_BaseFlow -{ -public: - // No members available -}; - -// Alignment: 1 -// Size: 0x50 -class CPulseCell_Step_TestDomainEntFire : public CPulseCell_BaseFlow -{ -public: - CUtlString m_Input; // 0x48 -}; - -// Alignment: 0 -// Size: 0x48 -class CPulseCell_Val_TestDomainGetEntityName : public CPulseCell_BaseValue -{ -public: - // No members available -}; - -// Alignment: 0 -// Size: 0x48 -class CPulseCell_Val_TestDomainFindEntityByName : public CPulseCell_BaseValue -{ -public: - // No members available -}; - -// Alignment: 0 -// Size: 0x108 -class CPulseGraphInstance_TestDomain_Derived : public CPulseGraphInstance_TestDomain -{ -public: - // No members available -}; - -// Alignment: 0 -// Size: 0x1 -class CPulseTestFuncs_DerivedDomain -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 -public: - // No members available -}; - -// Alignment: 0 -// Size: 0x48 -class CPulseCell_Test_NoInflow : public CPulseCell_BaseFlow -{ -public: - // No members available -}; - -// Alignment: 0 -// Size: 0x48 -class CPulseCell_Test_MultiInflow_WithDefault : public CPulseCell_BaseFlow -{ -public: - // No members available -}; - -// Alignment: 0 -// Size: 0x48 -class CPulseCell_Test_MultiInflow_NoDefault : public CPulseCell_BaseFlow -{ -public: - // No members available -}; - -// Alignment: 0 -// Size: 0xf0 -class CPulseGraphInstance_TurtleGraphics : public CBasePulseGraphInstance -{ -public: - // No members available -}; - -// Alignment: 0 -// Size: 0x1 -class CPulseTurtleGraphicsLib -{ -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 -public: - // No members available -}; - -// Alignment: 1 -// Size: 0x220 +// Size: 0x1c0 class CParticleFunctionEmitter : public CParticleFunction { public: // MPropertyFriendlyName "Emitter Index" - int32_t m_nEmitterIndex; // 0x210 + int32_t m_nEmitterIndex; // 0x1b0 }; // Alignment: 0 -// Size: 0x140 +// Size: 0x150 class CPerParticleFloatInput : public CParticleFloatInput { public: @@ -2360,16 +1636,16 @@ public: }; // Alignment: 1 -// Size: 0x220 +// Size: 0x1c0 class CParticleFunctionInitializer : public CParticleFunction { public: // MPropertyFriendlyName "Associated emitter Index" - int32_t m_nAssociatedEmitterIndex; // 0x210 + int32_t m_nAssociatedEmitterIndex; // 0x1b0 }; // Alignment: 9 -// Size: 0xa58 +// Size: 0xad8 struct TextureGroup_t { public: @@ -2404,11 +1680,11 @@ public: CParticleCollectionRendererFloatInput m_flTextureBlend; // 0x38 // MPropertyFriendlyName "Texture Controls" // MPropertySuppressExpr "( m_nTextureType == SPRITECARD_TEXTURE_NORMALMAP || m_nTextureType == SPRITECARD_TEXTURE_ANIMMOTIONVEC || m_nTextureType == SPRITECARD_TEXTURE_6POINT_XYZ_A || m_nTextureType == SPRITECARD_TEXTURE_6POINT_NEGXYZ_E )" - TextureControls_t m_TextureControls; // 0x178 + TextureControls_t m_TextureControls; // 0x188 }; // Alignment: 0 -// Size: 0x140 +// Size: 0x150 class CParticleRemapFloatInput : public CParticleFloatInput { public: @@ -2416,336 +1692,337 @@ public: }; // Alignment: 61 -// Size: 0x2270 +// Size: 0x2390 class CBaseRendererSource2 : public CParticleFunctionRenderer { public: // MPropertyStartGroup "+Renderer Modifiers" // MPropertyFriendlyName "radius scale" // MPropertySortPriority "700" - CParticleCollectionRendererFloatInput m_flRadiusScale; // 0x260 + CParticleCollectionRendererFloatInput m_flRadiusScale; // 0x200 // MPropertyFriendlyName "alpha scale" // MPropertySortPriority "700" - CParticleCollectionRendererFloatInput m_flAlphaScale; // 0x3a0 + CParticleCollectionRendererFloatInput m_flAlphaScale; // 0x350 // MPropertyFriendlyName "rotation roll scale" // MPropertySortPriority "700" - CParticleCollectionRendererFloatInput m_flRollScale; // 0x4e0 + CParticleCollectionRendererFloatInput m_flRollScale; // 0x4a0 // MPropertyFriendlyName "per-particle alpha scale attribute" // MPropertyAttributeChoiceName "particlefield_scalar" // MPropertySortPriority "700" - ParticleAttributeIndex_t m_nAlpha2Field; // 0x620 + ParticleAttributeIndex_t m_nAlpha2Field; // 0x5f0 private: - [[maybe_unused]] uint8_t __pad0624[0x4]; // 0x624 + [[maybe_unused]] uint8_t __pad05f4[0x4]; // 0x5f4 public: // MPropertyFriendlyName "color blend" // MPropertySortPriority "700" - CParticleCollectionRendererVecInput m_vecColorScale; // 0x628 + CParticleCollectionRendererVecInput m_vecColorScale; // 0x5f8 // MPropertyFriendlyName "color blend type" // MPropertySortPriority "700" - ParticleColorBlendType_t m_nColorBlendType; // 0xc10 + ParticleColorBlendType_t m_nColorBlendType; // 0xc30 // MPropertyStartGroup "+Material" // MPropertyFriendlyName "Shader" // MPropertySortPriority "600" - SpriteCardShaderType_t m_nShaderType; // 0xc14 + SpriteCardShaderType_t m_nShaderType; // 0xc34 // MPropertyFriendlyName "Custom Shader" // MPropertySuppressExpr "m_nShaderType != SPRITECARD_SHADER_CUSTOM" // MPropertySortPriority "600" - CUtlString m_strShaderOverride; // 0xc18 + CUtlString m_strShaderOverride; // 0xc38 // MPropertyFriendlyName "X offset of center point" // MPropertySortPriority "600" - CParticleCollectionRendererFloatInput m_flCenterXOffset; // 0xc20 + CParticleCollectionRendererFloatInput m_flCenterXOffset; // 0xc40 // MPropertyFriendlyName "Y offset of center point" // MPropertySortPriority "600" - CParticleCollectionRendererFloatInput m_flCenterYOffset; // 0xd60 + CParticleCollectionRendererFloatInput m_flCenterYOffset; // 0xd90 // MPropertyFriendlyName "Bump Strength" // MPropertySortPriority "600" - float m_flBumpStrength; // 0xea0 + float m_flBumpStrength; // 0xee0 // MPropertyFriendlyName "Sheet Crop Behavior" // MPropertySortPriority "600" - ParticleSequenceCropOverride_t m_nCropTextureOverride; // 0xea4 + ParticleSequenceCropOverride_t m_nCropTextureOverride; // 0xee4 // MPropertyFriendlyName "Textures" // MParticleRequireDefaultArrayEntry // MPropertyAutoExpandSelf // MPropertySortPriority "600" - CUtlVector< TextureGroup_t > m_vecTexturesInput; // 0xea8 + CUtlVector< TextureGroup_t > m_vecTexturesInput; // 0xee8 // MPropertyStartGroup "Animation" // MPropertyFriendlyName "animation rate" // MPropertyAttributeRange "0 5" // MPropertySortPriority "500" - float m_flAnimationRate; // 0xec0 + float m_flAnimationRate; // 0xf00 // MPropertyFriendlyName "animation type" // MPropertySortPriority "500" - AnimationType_t m_nAnimationType; // 0xec4 + AnimationType_t m_nAnimationType; // 0xf04 // MPropertyFriendlyName "set animation value in FPS" // MPropertySortPriority "500" - bool m_bAnimateInFPS; // 0xec8 + bool m_bAnimateInFPS; // 0xf08 private: - [[maybe_unused]] uint8_t __pad0ec9[0x7]; // 0xec9 + [[maybe_unused]] uint8_t __pad0f09[0x7]; // 0xf09 public: // MPropertyStartGroup "Lighting and Shadows" // MPropertyFriendlyName "self illum amount" // MPropertyAttributeRange "0 2" // MPropertySortPriority "400" - CParticleCollectionRendererFloatInput m_flSelfIllumAmount; // 0xed0 + CParticleCollectionRendererFloatInput m_flSelfIllumAmount; // 0xf10 // MPropertyFriendlyName "diffuse lighting amount" // MPropertyAttributeRange "0 1" // MPropertySortPriority "400" - CParticleCollectionRendererFloatInput m_flDiffuseAmount; // 0x1010 + CParticleCollectionRendererFloatInput m_flDiffuseAmount; // 0x1060 // MPropertyFriendlyName "diffuse lighting origin Control Point" // MPropertySortPriority "400" - int32_t m_nLightingControlPoint; // 0x1150 + int32_t m_nLightingControlPoint; // 0x11b0 // MPropertyFriendlyName "self illum per-particle" // MPropertyAttributeChoiceName "particlefield_scalar" // MPropertySortPriority "400" - ParticleAttributeIndex_t m_nSelfIllumPerParticle; // 0x1154 + ParticleAttributeIndex_t m_nSelfIllumPerParticle; // 0x11b4 // MPropertyStartGroup "+Color and alpha adjustments" // MPropertyFriendlyName "output blend mode" // MPropertySortPriority "300" - ParticleOutputBlendMode_t m_nOutputBlendMode; // 0x1158 + ParticleOutputBlendMode_t m_nOutputBlendMode; // 0x11b8 // MPropertyFriendlyName "Gamma-correct vertex colors" // MPropertySortPriority "300" - bool m_bGammaCorrectVertexColors; // 0x115c + bool m_bGammaCorrectVertexColors; // 0x11bc // MPropertyFriendlyName "Saturate color pre alphablend" // MPropertySortPriority "300" // MPropertySuppressExpr "mod!=dota" - bool m_bSaturateColorPreAlphaBlend; // 0x115d + bool m_bSaturateColorPreAlphaBlend; // 0x11bd private: - [[maybe_unused]] uint8_t __pad115e[0x2]; // 0x115e + [[maybe_unused]] uint8_t __pad11be[0x2]; // 0x11be public: // MPropertyFriendlyName "add self amount over alphablend" // MPropertySortPriority "300" - CParticleCollectionRendererFloatInput m_flAddSelfAmount; // 0x1160 + CParticleCollectionRendererFloatInput m_flAddSelfAmount; // 0x11c0 // MPropertyFriendlyName "desaturation amount" // MPropertyAttributeRange "0 1" // MPropertySortPriority "300" - CParticleCollectionRendererFloatInput m_flDesaturation; // 0x12a0 + CParticleCollectionRendererFloatInput m_flDesaturation; // 0x1310 // MPropertyFriendlyName "overbright factor" // MPropertySortPriority "300" - CParticleCollectionRendererFloatInput m_flOverbrightFactor; // 0x13e0 + CParticleCollectionRendererFloatInput m_flOverbrightFactor; // 0x1460 // MPropertyFriendlyName "HSV Shift Control Point" // MPropertySortPriority "300" - int32_t m_nHSVShiftControlPoint; // 0x1520 + int32_t m_nHSVShiftControlPoint; // 0x15b0 // MPropertyFriendlyName "Apply fog to particle" // MPropertySortPriority "300" - ParticleFogType_t m_nFogType; // 0x1524 + ParticleFogType_t m_nFogType; // 0x15b4 // MPropertyFriendlyName "Fog Scale" // MPropertySortPriority "300" // MPropertySuppressExpr "mod != hlx" - CParticleCollectionRendererFloatInput m_flFogAmount; // 0x1528 + CParticleCollectionRendererFloatInput m_flFogAmount; // 0x15b8 // MPropertyFriendlyName "Apply fog of war to color" // MPropertySortPriority "300" // MPropertySuppressExpr "mod != dota" - bool m_bTintByFOW; // 0x1668 + bool m_bTintByFOW; // 0x1708 // MPropertyFriendlyName "Apply global light to color" // MPropertySortPriority "300" // MPropertySuppressExpr "mod != dota" - bool m_bTintByGlobalLight; // 0x1669 + bool m_bTintByGlobalLight; // 0x1709 private: - [[maybe_unused]] uint8_t __pad166a[0x2]; // 0x166a + [[maybe_unused]] uint8_t __pad170a[0x2]; // 0x170a public: // MPropertyStartGroup "Color and alpha adjustments/Alpha Reference" // MPropertyFriendlyName "alpha reference" // MPropertySortPriority "300" - SpriteCardPerParticleScale_t m_nPerParticleAlphaReference; // 0x166c + SpriteCardPerParticleScale_t m_nPerParticleAlphaReference; // 0x170c // MPropertyFriendlyName "alpha reference window size" // MPropertySortPriority "300" - SpriteCardPerParticleScale_t m_nPerParticleAlphaRefWindow; // 0x1670 + SpriteCardPerParticleScale_t m_nPerParticleAlphaRefWindow; // 0x1710 // MPropertyFriendlyName "alpha reference type" // MPropertySortPriority "300" - ParticleAlphaReferenceType_t m_nAlphaReferenceType; // 0x1674 + ParticleAlphaReferenceType_t m_nAlphaReferenceType; // 0x1714 // MPropertyFriendlyName "alpha reference softness" // MPropertyAttributeRange "0 1" // MPropertySortPriority "300" - CParticleCollectionRendererFloatInput m_flAlphaReferenceSoftness; // 0x1678 + CParticleCollectionRendererFloatInput m_flAlphaReferenceSoftness; // 0x1718 // MPropertyFriendlyName "source alpha value to map to alpha of zero" // MPropertyAttributeRange "0 1" // MPropertySortPriority "300" - CParticleCollectionRendererFloatInput m_flSourceAlphaValueToMapToZero; // 0x17b8 + CParticleCollectionRendererFloatInput m_flSourceAlphaValueToMapToZero; // 0x1868 // MPropertyFriendlyName "source alpha value to map to alpha of 1" // MPropertyAttributeRange "0 1" // MPropertySortPriority "300" - CParticleCollectionRendererFloatInput m_flSourceAlphaValueToMapToOne; // 0x18f8 + CParticleCollectionRendererFloatInput m_flSourceAlphaValueToMapToOne; // 0x19b8 // MPropertyStartGroup "Refraction" // MPropertyFriendlyName "refract background" // MPropertySortPriority "200" - bool m_bRefract; // 0x1a38 + bool m_bRefract; // 0x1b08 // MPropertyFriendlyName "refract draws opaque - alpha scales refraction" // MPropertySortPriority "200" // MPropertySuppressExpr "!m_bRefract" - bool m_bRefractSolid; // 0x1a39 + bool m_bRefractSolid; // 0x1b09 private: - [[maybe_unused]] uint8_t __pad1a3a[0x6]; // 0x1a3a + [[maybe_unused]] uint8_t __pad1b0a[0x6]; // 0x1b0a public: // MPropertyFriendlyName "refract amount" // MPropertyAttributeRange "-2 2" // MPropertySortPriority "200" // MPropertySuppressExpr "!m_bRefract" - CParticleCollectionRendererFloatInput m_flRefractAmount; // 0x1a40 + CParticleCollectionRendererFloatInput m_flRefractAmount; // 0x1b10 // MPropertyFriendlyName "refract blur radius" // MPropertySortPriority "200" // MPropertySuppressExpr "!m_bRefract" - int32_t m_nRefractBlurRadius; // 0x1b80 + int32_t m_nRefractBlurRadius; // 0x1c60 // MPropertyFriendlyName "refract blur type" // MPropertySortPriority "200" // MPropertySuppressExpr "!m_bRefract" - BlurFilterType_t m_nRefractBlurType; // 0x1b84 + BlurFilterType_t m_nRefractBlurType; // 0x1c64 // MPropertyStartGroup // MPropertyFriendlyName "Only Render in effects bloom pass" // MPropertySortPriority "1100" - bool m_bOnlyRenderInEffectsBloomPass; // 0x1b88 + bool m_bOnlyRenderInEffectsBloomPass; // 0x1c68 // MPropertyFriendlyName "Only Render in effects water pass" // MPropertySortPriority "1050" // MPropertySuppressExpr "mod != csgo" - bool m_bOnlyRenderInEffectsWaterPass; // 0x1b89 + bool m_bOnlyRenderInEffectsWaterPass; // 0x1c69 // MPropertyFriendlyName "Use Mixed Resolution Rendering" // MPropertySortPriority "1200" - bool m_bUseMixedResolutionRendering; // 0x1b8a + bool m_bUseMixedResolutionRendering; // 0x1c6a // MPropertyFriendlyName "Only Render in effects game overlay pass" // MPropertySortPriority "1210" // MPropertySuppressExpr "mod != csgo" - bool m_bOnlyRenderInEffecsGameOverlay; // 0x1b8b + bool m_bOnlyRenderInEffecsGameOverlay; // 0x1c6b // MPropertyStartGroup "Stencil" // MPropertyFriendlyName "stencil test ID" // MPropertySortPriority "0" - char m_stencilTestID[128]; // 0x1b8c + char m_stencilTestID[128]; // 0x1c6c // MPropertyFriendlyName "only write where stencil is NOT stencil test ID" // MPropertySortPriority "0" - bool m_bStencilTestExclude; // 0x1c0c + bool m_bStencilTestExclude; // 0x1cec // MPropertyFriendlyName "stencil write ID" // MPropertySortPriority "0" - char m_stencilWriteID[128]; // 0x1c0d + char m_stencilWriteID[128]; // 0x1ced // MPropertyFriendlyName "write stencil on z-buffer test success" // MPropertySortPriority "0" - bool m_bWriteStencilOnDepthPass; // 0x1c8d + bool m_bWriteStencilOnDepthPass; // 0x1d6d // MPropertyFriendlyName "write stencil on z-buffer test failure" // MPropertySortPriority "0" - bool m_bWriteStencilOnDepthFail; // 0x1c8e + bool m_bWriteStencilOnDepthFail; // 0x1d6e // MPropertyStartGroup "Depth buffer control and effects" // MPropertyFriendlyName "reverse z-buffer test" // MPropertySortPriority "900" - bool m_bReverseZBuffering; // 0x1c8f + bool m_bReverseZBuffering; // 0x1d6f // MPropertyFriendlyName "disable z-buffer test" // MPropertySortPriority "900" - bool m_bDisableZBuffering; // 0x1c90 + bool m_bDisableZBuffering; // 0x1d70 private: - [[maybe_unused]] uint8_t __pad1c91[0x3]; // 0x1c91 + [[maybe_unused]] uint8_t __pad1d71[0x3]; // 0x1d71 public: // MPropertyFriendlyName "Depth feathering mode" // MPropertySortPriority "900" - ParticleDepthFeatheringMode_t m_nFeatheringMode; // 0x1c94 + ParticleDepthFeatheringMode_t m_nFeatheringMode; // 0x1d74 // MPropertyFriendlyName "particle feathering closest distance to surface" // MPropertySortPriority "900" - CParticleCollectionRendererFloatInput m_flFeatheringMinDist; // 0x1c98 + CParticleCollectionRendererFloatInput m_flFeatheringMinDist; // 0x1d78 // MPropertyFriendlyName "particle feathering farthest distance to surface" // MPropertySortPriority "900" - CParticleCollectionRendererFloatInput m_flFeatheringMaxDist; // 0x1dd8 + CParticleCollectionRendererFloatInput m_flFeatheringMaxDist; // 0x1ec8 // MPropertyFriendlyName "particle feathering filter" // MPropertySortPriority "900" - CParticleCollectionRendererFloatInput m_flFeatheringFilter; // 0x1f18 + CParticleCollectionRendererFloatInput m_flFeatheringFilter; // 0x2018 // MPropertyFriendlyName "depth comparison bias" // MPropertySortPriority "900" - float m_flDepthBias; // 0x2058 + float m_flDepthBias; // 0x2168 // MPropertyFriendlyName "Sort Method" // MPropertySortPriority "900" - ParticleSortingChoiceList_t m_nSortMethod; // 0x205c + ParticleSortingChoiceList_t m_nSortMethod; // 0x216c // MPropertyStartGroup "Animation" // MPropertyFriendlyName "blend sequence animation frames" // MPropertySortPriority "500" - bool m_bBlendFramesSeq0; // 0x2060 + bool m_bBlendFramesSeq0; // 0x2170 // MPropertyFriendlyName "use max-luminance blending for sequence" // MPropertySortPriority "500" // MPropertySuppressExpr "!m_bBlendFramesSeq0" - bool m_bMaxLuminanceBlendingSequence0; // 0x2061 + bool m_bMaxLuminanceBlendingSequence0; // 0x2171 }; // Alignment: 3 -// Size: 0x48 -class CParticleModelInput +// Size: 0x60 +class CParticleModelInput : public CParticleInput { -private: - [[maybe_unused]] uint8_t __pad0000[0x4]; // 0x0 public: - ParticleModelType_t m_nType; // 0x4 - CKV3MemberNameWithStorage m_NamedValue; // 0x8 - int32_t m_nControlPoint; // 0x40 + ParticleModelType_t m_nType; // 0x10 +private: + [[maybe_unused]] uint8_t __pad0014[0x4]; // 0x14 +public: + CParticleNamedValueRef m_NamedValue; // 0x18 + int32_t m_nControlPoint; // 0x58 }; // Alignment: 22 -// Size: 0x1330 +// Size: 0x13c0 class C_OP_RenderCables : public CParticleFunctionRenderer { public: // MPropertyStartGroup "Renderer Modifiers" // MPropertyFriendlyName "Radius Scale" // MPropertySortPriority "700" - CParticleCollectionFloatInput m_flRadiusScale; // 0x260 + CParticleCollectionFloatInput m_flRadiusScale; // 0x200 // MPropertyFriendlyName "alpha scale" // MPropertySortPriority "700" - CParticleCollectionFloatInput m_flAlphaScale; // 0x3a0 + CParticleCollectionFloatInput m_flAlphaScale; // 0x350 // MPropertyFriendlyName "color blend" // MPropertySortPriority "700" - CParticleCollectionVecInput m_vecColorScale; // 0x4e0 + CParticleCollectionVecInput m_vecColorScale; // 0x4a0 // MPropertyFriendlyName "color blend type" // MPropertySortPriority "700" - ParticleColorBlendType_t m_nColorBlendType; // 0xac8 -private: - [[maybe_unused]] uint8_t __pad0acc[0x4]; // 0xacc -public: - // MPropertyStartGroup - CStrongHandle< InfoForResourceTypeIMaterial2 > m_hMaterial; // 0xad0 - // MPropertyFriendlyName "texture repetition mode" - TextureRepetitionMode_t m_nTextureRepetitionMode; // 0xad8 + ParticleColorBlendType_t m_nColorBlendType; // 0xad8 private: [[maybe_unused]] uint8_t __pad0adc[0x4]; // 0xadc public: - // MPropertyFriendlyName "texture repetitions" - CParticleCollectionFloatInput m_flTextureRepeatsPerSegment; // 0xae0 - // MPropertyFriendlyName "texture repetitions around cable" - CParticleCollectionFloatInput m_flTextureRepeatsCircumference; // 0xc20 - // MPropertyFriendlyName "color map offset along path" - CParticleCollectionFloatInput m_flColorMapOffsetV; // 0xd60 - // MPropertyFriendlyName "color map offset around cable" - CParticleCollectionFloatInput m_flColorMapOffsetU; // 0xea0 - // MPropertyFriendlyName "normal map offset along path" - CParticleCollectionFloatInput m_flNormalMapOffsetV; // 0xfe0 - // MPropertyFriendlyName "normal map offset around cable" - CParticleCollectionFloatInput m_flNormalMapOffsetU; // 0x1120 - // MPropertyFriendlyName "draw caps at each end of the cable" - bool m_bDrawCableCaps; // 0x1260 + // MPropertyStartGroup + CStrongHandle< InfoForResourceTypeIMaterial2 > m_hMaterial; // 0xae0 + // MPropertyFriendlyName "texture repetition mode" + TextureRepetitionMode_t m_nTextureRepetitionMode; // 0xae8 private: - [[maybe_unused]] uint8_t __pad1261[0x3]; // 0x1261 + [[maybe_unused]] uint8_t __pad0aec[0x4]; // 0xaec +public: + // MPropertyFriendlyName "texture repetitions" + CParticleCollectionFloatInput m_flTextureRepeatsPerSegment; // 0xaf0 + // MPropertyFriendlyName "texture repetitions around cable" + CParticleCollectionFloatInput m_flTextureRepeatsCircumference; // 0xc40 + // MPropertyFriendlyName "color map offset along path" + CParticleCollectionFloatInput m_flColorMapOffsetV; // 0xd90 + // MPropertyFriendlyName "color map offset around cable" + CParticleCollectionFloatInput m_flColorMapOffsetU; // 0xee0 + // MPropertyFriendlyName "normal map offset along path" + CParticleCollectionFloatInput m_flNormalMapOffsetV; // 0x1030 + // MPropertyFriendlyName "normal map offset around cable" + CParticleCollectionFloatInput m_flNormalMapOffsetU; // 0x1180 + // MPropertyFriendlyName "draw caps at each end of the cable" + bool m_bDrawCableCaps; // 0x12d0 +private: + [[maybe_unused]] uint8_t __pad12d1[0x3]; // 0x12d1 public: // MPropertyFriendlyName "cable end cap shape factor" // MPropertyAttributeRange "0 2" - float m_flCapRoundness; // 0x1264 + float m_flCapRoundness; // 0x12d4 // MPropertyFriendlyName "cable end cap offset amount" // MPropertyAttributeRange "0 2" - float m_flCapOffsetAmount; // 0x1268 + float m_flCapOffsetAmount; // 0x12d8 // MPropertyFriendlyName "tessellation scale factor" - float m_flTessScale; // 0x126c + float m_flTessScale; // 0x12dc // MPropertyFriendlyName "minimum steps between particles" - int32_t m_nMinTesselation; // 0x1270 + int32_t m_nMinTesselation; // 0x12e0 // MPropertyFriendlyName "maximum steps between particles" - int32_t m_nMaxTesselation; // 0x1274 + int32_t m_nMaxTesselation; // 0x12e4 // MPropertyFriendlyName "roundness factor" - int32_t m_nRoundness; // 0x1278 + int32_t m_nRoundness; // 0x12e8 private: - [[maybe_unused]] uint8_t __pad127c[0x4]; // 0x127c + [[maybe_unused]] uint8_t __pad12ec[0x4]; // 0x12ec public: // MPropertyFriendlyName "diffuse lighting origin" - // MParticleTransformInputOptional - CParticleTransformInput m_LightingTransform; // 0x1280 + // MParticleInputOptional + CParticleTransformInput m_LightingTransform; // 0x12f0 // MPropertyFriendlyName "material float variables" - CUtlVector< FloatInputMaterialVariable_t > m_MaterialFloatVars; // 0x12d0 + CUtlVector< FloatInputMaterialVariable_t > m_MaterialFloatVars; // 0x1358 private: - [[maybe_unused]] uint8_t __pad12e8[0x18]; // 0x12e8 + [[maybe_unused]] uint8_t __pad1370[0x18]; // 0x1370 public: // MPropertyFriendlyName "material vector variables" - CUtlVector< VecInputMaterialVariable_t > m_MaterialVecVars; // 0x1300 + CUtlVector< VecInputMaterialVariable_t > m_MaterialVecVars; // 0x1388 }; // Alignment: 0 -// Size: 0x5e8 +// Size: 0x638 class CPerParticleVecInput : public CParticleVecInput { public: @@ -2753,7 +2030,7 @@ public: }; // Alignment: 2 -// Size: 0x5f0 +// Size: 0x640 struct VecInputMaterialVariable_t { public: @@ -2764,129 +2041,129 @@ public: }; // Alignment: 27 -// Size: 0x2910 +// Size: 0x2a80 class C_OP_RenderSprites : public CBaseRendererSource2 { public: // MPropertyStartGroup "Animation" // MPropertyFriendlyName "sequence id override" // MPropertySortPriority "500" - CParticleCollectionRendererFloatInput m_nSequenceOverride; // 0x2270 + CParticleCollectionRendererFloatInput m_nSequenceOverride; // 0x2390 // MPropertyStartGroup "Orientation" // MPropertyFriendlyName "orientation type" // MPropertySortPriority "750" - ParticleOrientationChoiceList_t m_nOrientationType; // 0x23b0 + ParticleOrientationChoiceList_t m_nOrientationType; // 0x24e0 // MPropertyFriendlyName "orientation control point" // MPropertySortPriority "750" // MPropertySuppressExpr "m_nOrientationType != PARTICLE_ORIENTATION_ALIGN_TO_PARTICLE_NORMAL && m_nOrientationType != PARTICLE_ORIENTATION_SCREENALIGN_TO_PARTICLE_NORMAL" - int32_t m_nOrientationControlPoint; // 0x23b4 + int32_t m_nOrientationControlPoint; // 0x24e4 // MPropertyFriendlyName "enable yaw for particles aligned to normals" // MPropertySortPriority "750" // MPropertySuppressExpr "m_nOrientationType != PARTICLE_ORIENTATION_ALIGN_TO_PARTICLE_NORMAL && m_nOrientationType != PARTICLE_ORIENTATION_SCREENALIGN_TO_PARTICLE_NORMAL" - bool m_bUseYawWithNormalAligned; // 0x23b8 + bool m_bUseYawWithNormalAligned; // 0x24e8 private: - [[maybe_unused]] uint8_t __pad23b9[0x3]; // 0x23b9 + [[maybe_unused]] uint8_t __pad24e9[0x3]; // 0x24e9 public: // MPropertyStartGroup "Fading and culling" // MPropertyFriendlyName "minimum visual screen size" // MPropertySortPriority "1000" - float m_flMinSize; // 0x23bc + float m_flMinSize; // 0x24ec // MPropertyFriendlyName "maximum visual screen size" // MPropertySortPriority "1000" - float m_flMaxSize; // 0x23c0 + float m_flMaxSize; // 0x24f0 // MPropertyFriendlyName "Factor to map size adjustment to alpha" // MPropertySortPriority "1000" - float m_flAlphaAdjustWithSizeAdjust; // 0x23c4 + float m_flAlphaAdjustWithSizeAdjust; // 0x24f4 // MPropertyFriendlyName "screen size to start fading" // MPropertySortPriority "1000" - CParticleCollectionRendererFloatInput m_flStartFadeSize; // 0x23c8 + CParticleCollectionRendererFloatInput m_flStartFadeSize; // 0x24f8 // MPropertyFriendlyName "screen size to fade away" // MPropertySortPriority "1000" - CParticleCollectionRendererFloatInput m_flEndFadeSize; // 0x2508 + CParticleCollectionRendererFloatInput m_flEndFadeSize; // 0x2648 // MPropertyFriendlyName "start fade dot product of normal vs view" // MPropertySortPriority "1000" - float m_flStartFadeDot; // 0x2648 + float m_flStartFadeDot; // 0x2798 // MPropertyFriendlyName "end fade dot product of normal vs view" // MPropertySortPriority "1000" - float m_flEndFadeDot; // 0x264c + float m_flEndFadeDot; // 0x279c // MPropertyStartGroup "Distance to alpha coding" // MPropertyFriendlyName "distance alpha" // MPropertySortPriority "0" - bool m_bDistanceAlpha; // 0x2650 + bool m_bDistanceAlpha; // 0x27a0 // MPropertyFriendlyName "use soft edges for distance alpha" // MPropertySortPriority "0" // MPropertySuppressExpr "!m_bDistanceAlpha" - bool m_bSoftEdges; // 0x2651 + bool m_bSoftEdges; // 0x27a1 private: - [[maybe_unused]] uint8_t __pad2652[0x2]; // 0x2652 + [[maybe_unused]] uint8_t __pad27a2[0x2]; // 0x27a2 public: // MPropertyFriendlyName "start value for soft edges for distance alpha" // MPropertySortPriority "0" // MPropertySuppressExpr "!m_bDistanceAlpha" - float m_flEdgeSoftnessStart; // 0x2654 + float m_flEdgeSoftnessStart; // 0x27a4 // MPropertyFriendlyName "end value for soft edges for distance alpha" // MPropertySortPriority "0" // MPropertySuppressExpr "!m_bDistanceAlpha" - float m_flEdgeSoftnessEnd; // 0x2658 + float m_flEdgeSoftnessEnd; // 0x27a8 // MPropertyStartGroup "Outlining" // MPropertyFriendlyName "enable particle outlining" // MPropertySortPriority "0" - bool m_bOutline; // 0x265c + bool m_bOutline; // 0x27ac // MPropertyFriendlyName "outline color" // MPropertySortPriority "0" // MPropertySuppressExpr "!m_bOutline" - Color m_OutlineColor; // 0x265d + Color m_OutlineColor; // 0x27ad private: - [[maybe_unused]] uint8_t __pad2661[0x3]; // 0x2661 + [[maybe_unused]] uint8_t __pad27b1[0x3]; // 0x27b1 public: // MPropertyFriendlyName "outline alpha" // MPropertyAttributeRange "0 255" // MPropertySortPriority "0" // MPropertySuppressExpr "!m_bOutline" - int32_t m_nOutlineAlpha; // 0x2664 + int32_t m_nOutlineAlpha; // 0x27b4 // MPropertyFriendlyName "outline start 0" // MPropertySortPriority "0" // MPropertySuppressExpr "!m_bOutline" - float m_flOutlineStart0; // 0x2668 + float m_flOutlineStart0; // 0x27b8 // MPropertyFriendlyName "outline start 1" // MPropertySortPriority "0" // MPropertySuppressExpr "!m_bOutline" - float m_flOutlineStart1; // 0x266c + float m_flOutlineStart1; // 0x27bc // MPropertyFriendlyName "outline end 0" // MPropertySortPriority "0" // MPropertySuppressExpr "!m_bOutline" - float m_flOutlineEnd0; // 0x2670 + float m_flOutlineEnd0; // 0x27c0 // MPropertyFriendlyName "outline end 1" // MPropertySortPriority "0" // MPropertySuppressExpr "!m_bOutline" - float m_flOutlineEnd1; // 0x2674 + float m_flOutlineEnd1; // 0x27c4 // MPropertyStartGroup "Lighting and Shadows" // MPropertyFriendlyName "lighting mode" // MPropertySortPriority "400" // MPropertySuppressExpr "mod != hlx" - ParticleLightingQuality_t m_nLightingMode; // 0x2678 + ParticleLightingQuality_t m_nLightingMode; // 0x27c8 private: - [[maybe_unused]] uint8_t __pad267c[0x4]; // 0x267c + [[maybe_unused]] uint8_t __pad27cc[0x4]; // 0x27cc public: // MPropertyFriendlyName "vertex lighting tessellation (0-5)" // MPropertyAttributeRange "0 5" // MPropertySortPriority "400" // MPropertySuppressExpr "mod != hlx || m_nLightingMode != PARTICLE_LIGHTING_PER_VERTEX" - CParticleCollectionRendererFloatInput m_flLightingTessellation; // 0x2680 + CParticleCollectionRendererFloatInput m_flLightingTessellation; // 0x27d0 // MPropertyFriendlyName "lighting directionality" // MPropertySortPriority "400" // MPropertySuppressExpr "mod != hlx" - CParticleCollectionRendererFloatInput m_flLightingDirectionality; // 0x27c0 + CParticleCollectionRendererFloatInput m_flLightingDirectionality; // 0x2920 // MPropertyFriendlyName "Particle Shadows" // MPropertySortPriority "400" - bool m_bParticleShadows; // 0x2900 + bool m_bParticleShadows; // 0x2a70 private: - [[maybe_unused]] uint8_t __pad2901[0x3]; // 0x2901 + [[maybe_unused]] uint8_t __pad2a71[0x3]; // 0x2a71 public: // MPropertyFriendlyName "Shadow Density" // MPropertySortPriority "400" // MPropertySuppressExpr "!m_bParticleShadows" - float m_flShadowDensity; // 0x2904 + float m_flShadowDensity; // 0x2a74 }; // Alignment: 1 @@ -2909,36 +2186,73 @@ public: // Size: 0x8 class IParticleEffect { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: - // No members available + uint8_t __pad0000[0x8]; // Autoaligned }; // Alignment: 0 -// Size: 0x108 +// Size: 0x110 class CParticleCollectionBindingInstance : public CBasePulseGraphInstance { public: // No members available }; +// Alignment: 6 +// Size: 0x38 +struct ParticleNamedValueConfiguration_t +{ +public: + CUtlString m_ConfigName; // 0x0 + KeyValues3 m_ConfigValue; // 0x8 + ParticleAttachment_t m_iAttachType; // 0x18 +private: + [[maybe_unused]] uint8_t __pad001c[0x4]; // 0x1c +public: + CUtlString m_BoundEntityPath; // 0x20 + CUtlString m_strEntityScope; // 0x28 + CUtlString m_strAttachmentName; // 0x30 +}; + +// Alignment: 5 +// Size: 0x60 +struct ParticleNamedValueSource_t +{ +public: + CUtlString m_Name; // 0x0 + bool m_IsPublic; // 0x8 +private: + [[maybe_unused]] uint8_t __pad0009[0x3]; // 0x9 +public: + // MPropertySuppressField + PulseValueType_t m_ValueType; // 0xc + // MPropertySuppressField + ParticleNamedValueConfiguration_t m_DefaultConfig; // 0x10 + // MPropertySuppressField + CUtlVector< ParticleNamedValueConfiguration_t > m_NamedConfigs; // 0x48 +}; + +// Alignment: 2 +// Size: 0x40 +class CParticleVariableRef +{ +public: + CKV3MemberNameWithStorage m_variableName; // 0x0 + PulseValueType_t m_variableType; // 0x38 +}; + // Alignment: 0 // Size: 0x28 class CParticleProperty { -private: - [[maybe_unused]] uint8_t __pad0000[0x28]; // 0x0 public: - // No members available + uint8_t __pad0000[0x28]; // Autoaligned }; // Alignment: 32 // Size: 0xc8 class CNewParticleEffect : public IParticleEffect { -private: - [[maybe_unused]] uint8_t __pad0008[0x8]; // 0x8 public: CNewParticleEffect* m_pNext; // 0x10 CNewParticleEffect* m_pPrev; // 0x18 @@ -2988,116 +2302,116 @@ public: }; // Alignment: 5 -// Size: 0x4b0 +// Size: 0x470 class C_OP_ConstrainDistance : public CParticleFunctionConstraint { public: // MPropertyFriendlyName "minimum distance" - CParticleCollectionFloatInput m_fMinDistance; // 0x210 + CParticleCollectionFloatInput m_fMinDistance; // 0x1b0 // MPropertyFriendlyName "maximum distance" - CParticleCollectionFloatInput m_fMaxDistance; // 0x350 + CParticleCollectionFloatInput m_fMaxDistance; // 0x300 // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x490 + int32_t m_nControlPointNumber; // 0x450 // MPropertyFriendlyName "offset of center" // MVectorIsCoordinate - Vector m_CenterOffset; // 0x494 + Vector m_CenterOffset; // 0x454 // MPropertyFriendlyName "global center point" - bool m_bGlobalCenter; // 0x4a0 + bool m_bGlobalCenter; // 0x460 }; // Alignment: 2 -// Size: 0x490 +// Size: 0x450 class C_OP_CollideWithSelf : public CParticleFunctionConstraint { public: // MPropertyFriendlyName "particle radius scale" - CPerParticleFloatInput m_flRadiusScale; // 0x210 + CPerParticleFloatInput m_flRadiusScale; // 0x1b0 // MPropertyFriendlyName "minimum speed for check" - CPerParticleFloatInput m_flMinimumSpeed; // 0x350 + CPerParticleFloatInput m_flMinimumSpeed; // 0x300 }; // Alignment: 2 -// Size: 0x490 +// Size: 0x450 class C_OP_CollideWithParentParticles : public CParticleFunctionConstraint { public: // MPropertyFriendlyName "parent particle radius scale" - CPerParticleFloatInput m_flParentRadiusScale; // 0x210 + CPerParticleFloatInput m_flParentRadiusScale; // 0x1b0 // MPropertyFriendlyName "particle radius scale" - CPerParticleFloatInput m_flRadiusScale; // 0x350 + CPerParticleFloatInput m_flRadiusScale; // 0x300 }; // Alignment: 8 -// Size: 0x270 +// Size: 0x210 class C_OP_ConstrainDistanceToPath : public CParticleFunctionConstraint { public: // MPropertyFriendlyName "minimum distance" - float m_fMinDistance; // 0x210 + float m_fMinDistance; // 0x1b0 // MPropertyFriendlyName "maximum distance" - float m_flMaxDistance0; // 0x214 + float m_flMaxDistance0; // 0x1b4 // MPropertyFriendlyName "maximum distance middle" - float m_flMaxDistanceMid; // 0x218 + float m_flMaxDistanceMid; // 0x1b8 // MPropertyFriendlyName "maximum distance end" - float m_flMaxDistance1; // 0x21c - CPathParameters m_PathParameters; // 0x220 + float m_flMaxDistance1; // 0x1bc + CPathParameters m_PathParameters; // 0x1c0 // MPropertyFriendlyName "travel time" - float m_flTravelTime; // 0x260 + float m_flTravelTime; // 0x200 // MPropertyFriendlyName "travel time scale field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldScale; // 0x264 + ParticleAttributeIndex_t m_nFieldScale; // 0x204 // MPropertyFriendlyName "manual time placement field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nManualTField; // 0x268 + ParticleAttributeIndex_t m_nManualTField; // 0x208 }; // Alignment: 5 -// Size: 0x240 +// Size: 0x1e0 class C_OP_ConstrainDistanceToUserSpecifiedPath : public CParticleFunctionConstraint { public: // MPropertyFriendlyName "minimum distance" - float m_fMinDistance; // 0x210 + float m_fMinDistance; // 0x1b0 // MPropertyFriendlyName "maximum distance" - float m_flMaxDistance; // 0x214 + float m_flMaxDistance; // 0x1b4 // MPropertyFriendlyName "Time scale" - float m_flTimeScale; // 0x218 + float m_flTimeScale; // 0x1b8 // MPropertyFriendlyName "Treat path as a loop" - bool m_bLoopedPath; // 0x21c + bool m_bLoopedPath; // 0x1bc private: - [[maybe_unused]] uint8_t __pad021d[0x3]; // 0x21d + [[maybe_unused]] uint8_t __pad01bd[0x3]; // 0x1bd public: // MPropertyFriendlyName "path points" - CUtlVector< PointDefinitionWithTimeValues_t > m_pointList; // 0x220 + CUtlVector< PointDefinitionWithTimeValues_t > m_pointList; // 0x1c0 }; // Alignment: 7 -// Size: 0x4b0 +// Size: 0x470 class C_OP_PlanarConstraint : public CParticleFunctionConstraint { public: // MPropertyFriendlyName "plane point" // MVectorIsCoordinate - Vector m_PointOnPlane; // 0x210 + Vector m_PointOnPlane; // 0x1b0 // MPropertyFriendlyName "plane normal" - Vector m_PlaneNormal; // 0x21c + Vector m_PlaneNormal; // 0x1bc // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x228 + int32_t m_nControlPointNumber; // 0x1c8 // MPropertyFriendlyName "global origin" - bool m_bGlobalOrigin; // 0x22c + bool m_bGlobalOrigin; // 0x1cc // MPropertyFriendlyName "global normal" - bool m_bGlobalNormal; // 0x22d + bool m_bGlobalNormal; // 0x1cd private: - [[maybe_unused]] uint8_t __pad022e[0x2]; // 0x22e + [[maybe_unused]] uint8_t __pad01ce[0x2]; // 0x1ce public: // MPropertyFriendlyName "radius scale" - CPerParticleFloatInput m_flRadiusScale; // 0x230 + CPerParticleFloatInput m_flRadiusScale; // 0x1d0 // MPropertyFriendlyName "falloff distance from control point" - CParticleCollectionFloatInput m_flMaximumDistanceToCP; // 0x370 + CParticleCollectionFloatInput m_flMaximumDistanceToCP; // 0x320 }; // Alignment: 0 -// Size: 0x210 +// Size: 0x1b0 class C_OP_WorldCollideConstraint : public CParticleFunctionConstraint { public: @@ -3105,194 +2419,194 @@ public: }; // Alignment: 26 -// Size: 0x920 +// Size: 0x910 class C_OP_WorldTraceConstraint : public CParticleFunctionConstraint { public: // MPropertyFriendlyName "control point for fast collision tests" - int32_t m_nCP; // 0x210 + int32_t m_nCP; // 0x1b0 // MPropertyFriendlyName "control point offset for fast collisions" // MVectorIsCoordinate - Vector m_vecCpOffset; // 0x214 + Vector m_vecCpOffset; // 0x1b4 // MPropertyFriendlyName "collision mode" - ParticleCollisionMode_t m_nCollisionMode; // 0x220 + ParticleCollisionMode_t m_nCollisionMode; // 0x1c0 // MPropertyFriendlyName "minimum detail collision mode" - ParticleCollisionMode_t m_nCollisionModeMin; // 0x224 + ParticleCollisionMode_t m_nCollisionModeMin; // 0x1c4 // MPropertyStartGroup "Collision Options" // MPropertyFriendlyName "Trace Set" - ParticleTraceSet_t m_nTraceSet; // 0x228 + ParticleTraceSet_t m_nTraceSet; // 0x1c8 // MPropertyFriendlyName "collision group" - char m_CollisionGroupName[128]; // 0x22c + char m_CollisionGroupName[128]; // 0x1cc // MPropertyFriendlyName "World Only" - bool m_bWorldOnly; // 0x2ac + bool m_bWorldOnly; // 0x24c // MPropertyFriendlyName "brush only" - bool m_bBrushOnly; // 0x2ad + bool m_bBrushOnly; // 0x24d // MPropertyFriendlyName "include water" - bool m_bIncludeWater; // 0x2ae + bool m_bIncludeWater; // 0x24e private: - [[maybe_unused]] uint8_t __pad02af[0x1]; // 0x2af + [[maybe_unused]] uint8_t __pad024f[0x1]; // 0x24f public: // MPropertyFriendlyName "CP Entity to Ignore for Collisions" - int32_t m_nIgnoreCP; // 0x2b0 + int32_t m_nIgnoreCP; // 0x250 // MPropertyFriendlyName "control point movement distance tolerance" // MPropertySuppressExpr "m_nCollisionMode == COLLISION_MODE_PER_PARTICLE_TRACE" - float m_flCpMovementTolerance; // 0x2b4 + float m_flCpMovementTolerance; // 0x254 // MPropertyFriendlyName "plane cache retest rate" // MPropertySuppressExpr "m_nCollisionMode != COLLISION_MODE_PER_FRAME_PLANESET" - float m_flRetestRate; // 0x2b8 + float m_flRetestRate; // 0x258 // MPropertyFriendlyName "trace accuracy tolerance" // MPropertySuppressExpr "m_nCollisionMode != COLLISION_MODE_USE_NEAREST_TRACE" - float m_flTraceTolerance; // 0x2bc + float m_flTraceTolerance; // 0x25c // MPropertyFriendlyName "Confirm Collision Speed Threshold" // MPropertySuppressExpr "m_nCollisionMode == COLLISION_MODE_PER_PARTICLE_TRACE" - float m_flCollisionConfirmationSpeed; // 0x2c0 + float m_flCollisionConfirmationSpeed; // 0x260 // MPropertyFriendlyName "Max Confirmation Traces Per Fame" // MPropertySuppressExpr "m_nCollisionMode == COLLISION_MODE_PER_PARTICLE_TRACE" - float m_nMaxTracesPerFrame; // 0x2c4 + float m_nMaxTracesPerFrame; // 0x264 // MPropertyStartGroup "Impact Options" // MPropertyFriendlyName "radius scale" - CPerParticleFloatInput m_flRadiusScale; // 0x2c8 + CPerParticleFloatInput m_flRadiusScale; // 0x268 // MPropertyFriendlyName "amount of bounce" - CPerParticleFloatInput m_flBounceAmount; // 0x408 + CPerParticleFloatInput m_flBounceAmount; // 0x3b8 // MPropertyFriendlyName "amount of slide" - CPerParticleFloatInput m_flSlideAmount; // 0x548 + CPerParticleFloatInput m_flSlideAmount; // 0x508 // MPropertyFriendlyName "Random Direction scale" - CPerParticleFloatInput m_flRandomDirScale; // 0x688 + CPerParticleFloatInput m_flRandomDirScale; // 0x658 // MPropertyFriendlyName "Add Decay to Bounce" - bool m_bDecayBounce; // 0x7c8 + bool m_bDecayBounce; // 0x7a8 // MPropertyFriendlyName "kill particle on collision" - bool m_bKillonContact; // 0x7c9 + bool m_bKillonContact; // 0x7a9 private: - [[maybe_unused]] uint8_t __pad07ca[0x2]; // 0x7ca + [[maybe_unused]] uint8_t __pad07aa[0x2]; // 0x7aa public: // MPropertyFriendlyName "minimum speed to kill on collision" - float m_flMinSpeed; // 0x7cc + float m_flMinSpeed; // 0x7ac // MPropertyFriendlyName "Set Normal" - bool m_bSetNormal; // 0x7d0 + bool m_bSetNormal; // 0x7b0 private: - [[maybe_unused]] uint8_t __pad07d1[0x3]; // 0x7d1 + [[maybe_unused]] uint8_t __pad07b1[0x3]; // 0x7b1 public: // MPropertyFriendlyName "Stick On Collision Cache Field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nStickOnCollisionField; // 0x7d4 + ParticleAttributeIndex_t m_nStickOnCollisionField; // 0x7b4 // MPropertyFriendlyName "Speed to stop when sticking" - CPerParticleFloatInput m_flStopSpeed; // 0x7d8 + CPerParticleFloatInput m_flStopSpeed; // 0x7b8 // MPropertyFriendlyName "Entity Hitbox Cache Field (Requires Stick on Collision)" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nEntityStickDataField; // 0x918 + ParticleAttributeIndex_t m_nEntityStickDataField; // 0x908 }; // Alignment: 4 -// Size: 0x230 +// Size: 0xe30 class C_OP_BoxConstraint : public CParticleFunctionConstraint { public: // MPropertyFriendlyName "min coords" - Vector m_vecMin; // 0x210 + CParticleCollectionVecInput m_vecMin; // 0x1b0 // MPropertyFriendlyName "max coords" - Vector m_vecMax; // 0x21c + CParticleCollectionVecInput m_vecMax; // 0x7e8 // MPropertyFriendlyName "control point" - int32_t m_nCP; // 0x228 + int32_t m_nCP; // 0xe20 // MPropertyFriendlyName "use local space" - bool m_bLocalSpace; // 0x22c + bool m_bLocalSpace; // 0xe24 }; // Alignment: 5 -// Size: 0x720 +// Size: 0x700 class C_OP_RopeSpringConstraint : public CParticleFunctionConstraint { public: // MPropertyFriendlyName "slack" - CParticleCollectionFloatInput m_flRestLength; // 0x210 + CParticleCollectionFloatInput m_flRestLength; // 0x1b0 // MPropertyFriendlyName "minimum segment length %" - CParticleCollectionFloatInput m_flMinDistance; // 0x350 + CParticleCollectionFloatInput m_flMinDistance; // 0x300 // MPropertyFriendlyName "maximum segment length %" - CParticleCollectionFloatInput m_flMaxDistance; // 0x490 + CParticleCollectionFloatInput m_flMaxDistance; // 0x450 // MPropertyFriendlyName "scale factor for spring correction" - float m_flAdjustmentScale; // 0x5d0 + float m_flAdjustmentScale; // 0x5a0 private: - [[maybe_unused]] uint8_t __pad05d4[0x4]; // 0x5d4 + [[maybe_unused]] uint8_t __pad05a4[0x4]; // 0x5a4 public: // MPropertyFriendlyName "manual resting spacing" - CParticleCollectionFloatInput m_flInitialRestingLength; // 0x5d8 + CParticleCollectionFloatInput m_flInitialRestingLength; // 0x5a8 }; // Alignment: 5 -// Size: 0xd00 +// Size: 0xd30 class C_OP_SpringToVectorConstraint : public CParticleFunctionConstraint { public: // MPropertyFriendlyName "slack" - CPerParticleFloatInput m_flRestLength; // 0x210 + CPerParticleFloatInput m_flRestLength; // 0x1b0 // MPropertyFriendlyName "minimum segment length %" - CPerParticleFloatInput m_flMinDistance; // 0x350 + CPerParticleFloatInput m_flMinDistance; // 0x300 // MPropertyFriendlyName "maximum segment length %" - CPerParticleFloatInput m_flMaxDistance; // 0x490 + CPerParticleFloatInput m_flMaxDistance; // 0x450 // MPropertyFriendlyName "resting spacing" - CPerParticleFloatInput m_flRestingLength; // 0x5d0 + CPerParticleFloatInput m_flRestingLength; // 0x5a0 // MPropertyFriendlyName "anchor vector" - CPerParticleVecInput m_vecAnchorVector; // 0x710 + CPerParticleVecInput m_vecAnchorVector; // 0x6f0 }; // Alignment: 2 -// Size: 0x220 +// Size: 0x1c0 class C_OP_ConstrainLineLength : public CParticleFunctionConstraint { public: // MPropertyFriendlyName "minimum length" - float m_flMinDistance; // 0x210 + float m_flMinDistance; // 0x1b0 // MPropertyFriendlyName "maximum length" - float m_flMaxDistance; // 0x214 + float m_flMaxDistance; // 0x1b4 }; // Alignment: 11 -// Size: 0xc80 +// Size: 0xcb0 class C_INIT_RingWave : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "input transform" - CParticleTransformInput m_TransformInput; // 0x220 + CParticleTransformInput m_TransformInput; // 0x1c0 // MPropertyFriendlyName "even distribution count" - CParticleCollectionFloatInput m_flParticlesPerOrbit; // 0x270 + CParticleCollectionFloatInput m_flParticlesPerOrbit; // 0x228 // MPropertyFriendlyName "initial radius" - CPerParticleFloatInput m_flInitialRadius; // 0x3b0 + CPerParticleFloatInput m_flInitialRadius; // 0x378 // MPropertyFriendlyName "thickness" - CPerParticleFloatInput m_flThickness; // 0x4f0 + CPerParticleFloatInput m_flThickness; // 0x4c8 // MPropertyFriendlyName "min initial speed" - CPerParticleFloatInput m_flInitialSpeedMin; // 0x630 + CPerParticleFloatInput m_flInitialSpeedMin; // 0x618 // MPropertyFriendlyName "max initial speed" - CPerParticleFloatInput m_flInitialSpeedMax; // 0x770 + CPerParticleFloatInput m_flInitialSpeedMax; // 0x768 // MPropertyFriendlyName "roll" - CPerParticleFloatInput m_flRoll; // 0x8b0 + CPerParticleFloatInput m_flRoll; // 0x8b8 // MPropertyFriendlyName "pitch" - CPerParticleFloatInput m_flPitch; // 0x9f0 + CPerParticleFloatInput m_flPitch; // 0xa08 // MPropertyFriendlyName "yaw" - CPerParticleFloatInput m_flYaw; // 0xb30 + CPerParticleFloatInput m_flYaw; // 0xb58 // MPropertyFriendlyName "even distribution" - bool m_bEvenDistribution; // 0xc70 + bool m_bEvenDistribution; // 0xca8 // MPropertyFriendlyName "XY velocity only" - bool m_bXYVelocityOnly; // 0xc71 + bool m_bXYVelocityOnly; // 0xca9 }; // Alignment: 7 -// Size: 0x240 +// Size: 0x1e0 class C_INIT_CreateSpiralSphere : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x220 + int32_t m_nControlPointNumber; // 0x1c0 // MPropertyFriendlyName "override CP (X/Y/Z *= radius/density/speed)" - int32_t m_nOverrideCP; // 0x224 + int32_t m_nOverrideCP; // 0x1c4 // MPropertyFriendlyName "density" - int32_t m_nDensity; // 0x228 + int32_t m_nDensity; // 0x1c8 // MPropertyFriendlyName "initial radius" - float m_flInitialRadius; // 0x22c + float m_flInitialRadius; // 0x1cc // MPropertyFriendlyName "min initial speed" - float m_flInitialSpeedMin; // 0x230 + float m_flInitialSpeedMin; // 0x1d0 // MPropertyFriendlyName "max initial speed" - float m_flInitialSpeedMax; // 0x234 + float m_flInitialSpeedMax; // 0x1d4 // MPropertyFriendlyName "use particle count as density scale" - bool m_bUseParticleCount; // 0x238 + bool m_bUseParticleCount; // 0x1d8 }; // Alignment: 10 @@ -3302,142 +2616,148 @@ class C_INIT_CreateInEpitrochoid : public CParticleFunctionInitializer public: // MPropertyFriendlyName "first dimension 0-2 (-1 disables)" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nComponent1; // 0x220 + int32_t m_nComponent1; // 0x1c0 // MPropertyFriendlyName "second dimension 0-2 (-1 disables)" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nComponent2; // 0x224 + int32_t m_nComponent2; // 0x1c4 // MPropertyFriendlyName "input transform" - CParticleTransformInput m_TransformInput; // 0x228 + CParticleTransformInput m_TransformInput; // 0x1c8 // MPropertyFriendlyName "particle density" - CPerParticleFloatInput m_flParticleDensity; // 0x278 + CPerParticleFloatInput m_flParticleDensity; // 0x230 // MPropertyFriendlyName "point offset" - CPerParticleFloatInput m_flOffset; // 0x3b8 + CPerParticleFloatInput m_flOffset; // 0x380 // MPropertyFriendlyName "radius 1" - CPerParticleFloatInput m_flRadius1; // 0x4f8 + CPerParticleFloatInput m_flRadius1; // 0x4d0 // MPropertyFriendlyName "radius 2" - CPerParticleFloatInput m_flRadius2; // 0x638 + CPerParticleFloatInput m_flRadius2; // 0x620 // MPropertyFriendlyName "use particle count instead of creation time" - bool m_bUseCount; // 0x778 + bool m_bUseCount; // 0x770 // MPropertyFriendlyName "local space" - bool m_bUseLocalCoords; // 0x779 + bool m_bUseLocalCoords; // 0x771 // MPropertyFriendlyName "offset from existing position" - bool m_bOffsetExistingPos; // 0x77a + bool m_bOffsetExistingPos; // 0x772 }; // Alignment: 14 -// Size: 0x250 +// Size: 0x1f0 class C_INIT_CreatePhyllotaxis : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x220 + int32_t m_nControlPointNumber; // 0x1c0 // MPropertyFriendlyName "scale size multiplier from CP" - int32_t m_nScaleCP; // 0x224 + int32_t m_nScaleCP; // 0x1c4 // MPropertyFriendlyName "scale CP component 0/1/2 X/Y/Z" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nComponent; // 0x228 + int32_t m_nComponent; // 0x1c8 // MPropertyFriendlyName "center core radius" - float m_fRadCentCore; // 0x22c + float m_fRadCentCore; // 0x1cc // MPropertyFriendlyName "radius multiplier" - float m_fRadPerPoint; // 0x230 + float m_fRadPerPoint; // 0x1d0 // MPropertyFriendlyName "radius max (-1 procedural growth)" - float m_fRadPerPointTo; // 0x234 + float m_fRadPerPointTo; // 0x1d4 // MPropertyFriendlyName "golden angle (is 137.508)" - float m_fpointAngle; // 0x238 + float m_fpointAngle; // 0x1d8 // MPropertyFriendlyName "overall size multiplier (-1 count based distribution)" - float m_fsizeOverall; // 0x23c + float m_fsizeOverall; // 0x1dc // MPropertyFriendlyName "radius bias" - float m_fRadBias; // 0x240 + float m_fRadBias; // 0x1e0 // MPropertyFriendlyName "radius min " - float m_fMinRad; // 0x244 + float m_fMinRad; // 0x1e4 // MPropertyFriendlyName "distribution bias" - float m_fDistBias; // 0x248 + float m_fDistBias; // 0x1e8 // MPropertyFriendlyName "local space" - bool m_bUseLocalCoords; // 0x24c + bool m_bUseLocalCoords; // 0x1ec // MPropertyFriendlyName "use continuous emission" - bool m_bUseWithContEmit; // 0x24d + bool m_bUseWithContEmit; // 0x1ed // MPropertyFriendlyName "scale radius from initial value" - bool m_bUseOrigRadius; // 0x24e + bool m_bUseOrigRadius; // 0x1ee }; -// Alignment: 12 -// Size: 0xfd0 +// Alignment: 13 +// Size: 0x10f0 class C_INIT_CreateOnModel : public CParticleFunctionInitializer { public: - // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x220 + // MPropertyFriendlyName "input model" + CParticleModelInput m_modelInput; // 0x1c0 + // MPropertyFriendlyName "input transform for transforming local space bias vector" + // MParticleInputOptional + CParticleTransformInput m_transformInput; // 0x220 // MPropertyFriendlyName "force to be inside model" - int32_t m_nForceInModel; // 0x224 + int32_t m_nForceInModel; // 0x288 // MPropertyFriendlyName "desired hitbox" - int32_t m_nDesiredHitbox; // 0x228 + int32_t m_nDesiredHitbox; // 0x28c // MPropertyFriendlyName "Control Point Providing Hitbox index" - int32_t m_nHitboxValueFromControlPointIndex; // 0x22c + int32_t m_nHitboxValueFromControlPointIndex; // 0x290 +private: + [[maybe_unused]] uint8_t __pad0294[0x4]; // 0x294 +public: // MPropertyFriendlyName "hitbox scale" - CParticleCollectionVecInput m_vecHitBoxScale; // 0x230 + CParticleCollectionVecInput m_vecHitBoxScale; // 0x298 // MPropertyFriendlyName "inherited velocity scale" - float m_flBoneVelocity; // 0x818 + float m_flBoneVelocity; // 0x8d0 // MPropertyFriendlyName "maximum inherited velocity" - float m_flMaxBoneVelocity; // 0x81c + float m_flMaxBoneVelocity; // 0x8d4 // MPropertyFriendlyName "direction bias" // MVectorIsCoordinate - CParticleCollectionVecInput m_vecDirectionBias; // 0x820 + CParticleCollectionVecInput m_vecDirectionBias; // 0x8d8 // MPropertyFriendlyName "hitbox set" - char m_HitboxSetName[128]; // 0xe08 + char m_HitboxSetName[128]; // 0xf10 // MPropertyFriendlyName "bias in local space" - bool m_bLocalCoords; // 0xe88 + bool m_bLocalCoords; // 0xf90 // MPropertyFriendlyName "use bones instead of hitboxes" - bool m_bUseBones; // 0xe89 + bool m_bUseBones; // 0xf91 private: - [[maybe_unused]] uint8_t __pad0e8a[0x6]; // 0xe8a + [[maybe_unused]] uint8_t __pad0f92[0x6]; // 0xf92 public: // MPropertyFriendlyName "hitbox shell thickness" - CParticleCollectionFloatInput m_flShellSize; // 0xe90 + CParticleCollectionFloatInput m_flShellSize; // 0xf98 }; // Alignment: 14 -// Size: 0x1250 +// Size: 0x12c0 class C_INIT_CreateOnModelAtHeight : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "use bones instead of hitboxes" - bool m_bUseBones; // 0x220 + bool m_bUseBones; // 0x1c0 // MPropertyFriendlyName "force creation height to desired height" - bool m_bForceZ; // 0x221 + bool m_bForceZ; // 0x1c1 private: - [[maybe_unused]] uint8_t __pad0222[0x2]; // 0x222 + [[maybe_unused]] uint8_t __pad01c2[0x2]; // 0x1c2 public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x224 + int32_t m_nControlPointNumber; // 0x1c4 // MPropertyFriendlyName "height override control point number" - int32_t m_nHeightCP; // 0x228 + int32_t m_nHeightCP; // 0x1c8 // MPropertyFriendlyName "desired height is relative to water" - bool m_bUseWaterHeight; // 0x22c + bool m_bUseWaterHeight; // 0x1cc private: - [[maybe_unused]] uint8_t __pad022d[0x3]; // 0x22d + [[maybe_unused]] uint8_t __pad01cd[0x3]; // 0x1cd public: // MPropertyFriendlyName "relative desired height" - CParticleCollectionFloatInput m_flDesiredHeight; // 0x230 + CParticleCollectionFloatInput m_flDesiredHeight; // 0x1d0 // MPropertyFriendlyName "model hitbox scale" - CParticleCollectionVecInput m_vecHitBoxScale; // 0x370 + CParticleCollectionVecInput m_vecHitBoxScale; // 0x320 // MPropertyFriendlyName "direction bias" // MVectorIsCoordinate CParticleCollectionVecInput m_vecDirectionBias; // 0x958 // MPropertyFriendlyName "bias type" - ParticleHitboxBiasType_t m_nBiasType; // 0xf40 + ParticleHitboxBiasType_t m_nBiasType; // 0xf90 // MPropertyFriendlyName "bias in local space" - bool m_bLocalCoords; // 0xf44 + bool m_bLocalCoords; // 0xf94 // MPropertyFriendlyName "bias prefers moving hitboxes" - bool m_bPreferMovingBoxes; // 0xf45 + bool m_bPreferMovingBoxes; // 0xf95 // MPropertyFriendlyName "hitbox set" - char m_HitboxSetName[128]; // 0xf46 + char m_HitboxSetName[128]; // 0xf96 private: - [[maybe_unused]] uint8_t __pad0fc6[0x2]; // 0xfc6 + [[maybe_unused]] uint8_t __pad1016[0x2]; // 0x1016 public: // MPropertyFriendlyName "hitbox velocity inherited scale" - CParticleCollectionFloatInput m_flHitboxVelocityScale; // 0xfc8 + CParticleCollectionFloatInput m_flHitboxVelocityScale; // 0x1018 // MPropertyFriendlyName "max hitbox velocity" - CParticleCollectionFloatInput m_flMaxBoneVelocity; // 0x1108 + CParticleCollectionFloatInput m_flMaxBoneVelocity; // 0x1168 }; // Alignment: 9 @@ -3446,24 +2766,24 @@ class C_INIT_SetHitboxToClosest : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x220 + int32_t m_nControlPointNumber; // 0x1c0 // MPropertyFriendlyName "desired hitbox" - int32_t m_nDesiredHitbox; // 0x224 + int32_t m_nDesiredHitbox; // 0x1c4 // MPropertyFriendlyName "model hitbox scale" - CParticleCollectionVecInput m_vecHitBoxScale; // 0x228 + CParticleCollectionVecInput m_vecHitBoxScale; // 0x1c8 // MPropertyFriendlyName "hitbox set" - char m_HitboxSetName[128]; // 0x810 + char m_HitboxSetName[128]; // 0x800 // MPropertyFriendlyName "use bones instead of hitboxes" - bool m_bUseBones; // 0x890 + bool m_bUseBones; // 0x880 // MPropertyFriendlyName "get closest point on closest hitbox" - bool m_bUseClosestPointOnHitbox; // 0x891 + bool m_bUseClosestPointOnHitbox; // 0x881 private: - [[maybe_unused]] uint8_t __pad0892[0x2]; // 0x892 + [[maybe_unused]] uint8_t __pad0882[0x2]; // 0x882 public: // MPropertyFriendlyName "closest point test type" - ClosestPointTestType_t m_nTestType; // 0x894 + ClosestPointTestType_t m_nTestType; // 0x884 // MPropertyFriendlyName "hybrid ratio" - CParticleCollectionFloatInput m_flHybridRatio; // 0x898 + CParticleCollectionFloatInput m_flHybridRatio; // 0x888 // MPropertyFriendlyName "set initial position" bool m_bUpdatePosition; // 0x9d8 }; @@ -3474,102 +2794,102 @@ class C_INIT_SetHitboxToModel : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x220 + int32_t m_nControlPointNumber; // 0x1c0 // MPropertyFriendlyName "force to be inside model" - int32_t m_nForceInModel; // 0x224 + int32_t m_nForceInModel; // 0x1c4 // MPropertyFriendlyName "desired hitbox" - int32_t m_nDesiredHitbox; // 0x228 + int32_t m_nDesiredHitbox; // 0x1c8 private: - [[maybe_unused]] uint8_t __pad022c[0x4]; // 0x22c + [[maybe_unused]] uint8_t __pad01cc[0x4]; // 0x1cc public: // MPropertyFriendlyName "model hitbox scale" - CParticleCollectionVecInput m_vecHitBoxScale; // 0x230 + CParticleCollectionVecInput m_vecHitBoxScale; // 0x1d0 // MPropertyFriendlyName "direction bias" // MVectorIsCoordinate - Vector m_vecDirectionBias; // 0x818 + Vector m_vecDirectionBias; // 0x808 // MPropertyFriendlyName "maintain existing hitbox" - bool m_bMaintainHitbox; // 0x824 + bool m_bMaintainHitbox; // 0x814 // MPropertyFriendlyName "use bones instead of hitboxes" - bool m_bUseBones; // 0x825 + bool m_bUseBones; // 0x815 // MPropertyFriendlyName "hitbox set" - char m_HitboxSetName[128]; // 0x826 + char m_HitboxSetName[128]; // 0x816 private: - [[maybe_unused]] uint8_t __pad08a6[0x2]; // 0x8a6 + [[maybe_unused]] uint8_t __pad0896[0x2]; // 0x896 public: // MPropertyFriendlyName "hitbox shell thickness" - CParticleCollectionFloatInput m_flShellSize; // 0x8a8 + CParticleCollectionFloatInput m_flShellSize; // 0x898 }; // Alignment: 14 -// Size: 0x1950 +// Size: 0x1a40 class C_INIT_CreateWithinSphereTransform : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "distance min" - CPerParticleFloatInput m_fRadiusMin; // 0x220 + CPerParticleFloatInput m_fRadiusMin; // 0x1c0 // MPropertyFriendlyName "distance max" - CPerParticleFloatInput m_fRadiusMax; // 0x360 + CPerParticleFloatInput m_fRadiusMax; // 0x310 // MPropertyFriendlyName "distance bias" // MVectorIsCoordinate - CPerParticleVecInput m_vecDistanceBias; // 0x4a0 + CPerParticleVecInput m_vecDistanceBias; // 0x460 // MPropertyFriendlyName "distance bias absolute value" // MVectorIsCoordinate - Vector m_vecDistanceBiasAbs; // 0xa88 + Vector m_vecDistanceBiasAbs; // 0xa98 private: - [[maybe_unused]] uint8_t __pad0a94[0x4]; // 0xa94 + [[maybe_unused]] uint8_t __pad0aa4[0x4]; // 0xaa4 public: // MPropertyFriendlyName "input position transform" - CParticleTransformInput m_TransformInput; // 0xa98 + CParticleTransformInput m_TransformInput; // 0xaa8 // MPropertyFriendlyName "speed min" - CPerParticleFloatInput m_fSpeedMin; // 0xae8 + CPerParticleFloatInput m_fSpeedMin; // 0xb10 // MPropertyFriendlyName "speed max" - CPerParticleFloatInput m_fSpeedMax; // 0xc28 + CPerParticleFloatInput m_fSpeedMax; // 0xc60 // MPropertyFriendlyName "speed random exponent" - float m_fSpeedRandExp; // 0xd68 + float m_fSpeedRandExp; // 0xdb0 // MPropertyFriendlyName "bias in local system" - bool m_bLocalCoords; // 0xd6c + bool m_bLocalCoords; // 0xdb4 private: - [[maybe_unused]] uint8_t __pad0d6d[0x3]; // 0xd6d + [[maybe_unused]] uint8_t __pad0db5[0x3]; // 0xdb5 public: // MPropertyFriendlyName "randomly distribution growth time" - float m_flEndCPGrowthTime; // 0xd70 + float m_flEndCPGrowthTime; // 0xdb8 private: - [[maybe_unused]] uint8_t __pad0d74[0x4]; // 0xd74 + [[maybe_unused]] uint8_t __pad0dbc[0x4]; // 0xdbc public: // MPropertyFriendlyName "speed in local coordinate system min" // MVectorIsCoordinate - CPerParticleVecInput m_LocalCoordinateSystemSpeedMin; // 0xd78 + CPerParticleVecInput m_LocalCoordinateSystemSpeedMin; // 0xdc0 // MPropertyFriendlyName "speed in local coordinate system max" // MVectorIsCoordinate - CPerParticleVecInput m_LocalCoordinateSystemSpeedMax; // 0x1360 + CPerParticleVecInput m_LocalCoordinateSystemSpeedMax; // 0x13f8 // MPropertyFriendlyName "Output vector" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x1948 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1a30 // MPropertyFriendlyName "Velocity vector" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldVelocity; // 0x194c + ParticleAttributeIndex_t m_nFieldVelocity; // 0x1a34 }; // Alignment: 5 -// Size: 0xe00 +// Size: 0xe40 class C_INIT_CreateWithinBox : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "min" // MVectorIsCoordinate - CPerParticleVecInput m_vecMin; // 0x220 + CPerParticleVecInput m_vecMin; // 0x1c0 // MPropertyFriendlyName "max" // MVectorIsCoordinate - CPerParticleVecInput m_vecMax; // 0x808 + CPerParticleVecInput m_vecMax; // 0x7f8 // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0xdf0 + int32_t m_nControlPointNumber; // 0xe30 // MPropertyFriendlyName "use local space" - bool m_bLocalSpace; // 0xdf4 + bool m_bLocalSpace; // 0xe34 private: - [[maybe_unused]] uint8_t __pad0df5[0x3]; // 0xdf5 + [[maybe_unused]] uint8_t __pad0e35[0x3]; // 0xe35 public: // MPropertyFriendlyName "Random number generator controls" - CRandomNumberGeneratorParameters m_randomnessParameters; // 0xdf8 + CRandomNumberGeneratorParameters m_randomnessParameters; // 0xe38 }; // Alignment: 10 @@ -3578,17 +2898,17 @@ class C_INIT_CreateOnGrid : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "X Dimension Count" - CParticleCollectionFloatInput m_nXCount; // 0x220 + CParticleCollectionFloatInput m_nXCount; // 0x1c0 // MPropertyFriendlyName "Y Dimension Count" - CParticleCollectionFloatInput m_nYCount; // 0x360 + CParticleCollectionFloatInput m_nYCount; // 0x310 // MPropertyFriendlyName "Z Dimension Count" - CParticleCollectionFloatInput m_nZCount; // 0x4a0 + CParticleCollectionFloatInput m_nZCount; // 0x460 // MPropertyFriendlyName "X Dimension Spacing" - CParticleCollectionFloatInput m_nXSpacing; // 0x5e0 + CParticleCollectionFloatInput m_nXSpacing; // 0x5b0 // MPropertyFriendlyName "Y Dimension Spacing" - CParticleCollectionFloatInput m_nYSpacing; // 0x720 + CParticleCollectionFloatInput m_nYSpacing; // 0x700 // MPropertyFriendlyName "Z Dimension Spacing" - CParticleCollectionFloatInput m_nZSpacing; // 0x860 + CParticleCollectionFloatInput m_nZSpacing; // 0x850 // MPropertyFriendlyName "control point number" int32_t m_nControlPointNumber; // 0x9a0 // MPropertyFriendlyName "use local space" @@ -3600,351 +2920,351 @@ public: }; // Alignment: 6 -// Size: 0xe50 +// Size: 0xeb0 class C_INIT_PositionOffset : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "offset min" // MVectorIsCoordinate - CPerParticleVecInput m_OffsetMin; // 0x220 + CPerParticleVecInput m_OffsetMin; // 0x1c0 // MPropertyFriendlyName "offset max" // MVectorIsCoordinate - CPerParticleVecInput m_OffsetMax; // 0x808 + CPerParticleVecInput m_OffsetMax; // 0x7f8 // MPropertyFriendlyName "transform input" - CParticleTransformInput m_TransformInput; // 0xdf0 + CParticleTransformInput m_TransformInput; // 0xe30 // MPropertyFriendlyName "offset in local space 0/1" - bool m_bLocalCoords; // 0xe40 + bool m_bLocalCoords; // 0xe98 // MPropertyFriendlyName "offset proportional to radius 0/1" - bool m_bProportional; // 0xe41 + bool m_bProportional; // 0xe99 private: - [[maybe_unused]] uint8_t __pad0e42[0x2]; // 0xe42 + [[maybe_unused]] uint8_t __pad0e9a[0x2]; // 0xe9a public: // MPropertyFriendlyName "Random number generator controls" - CRandomNumberGeneratorParameters m_randomnessParameters; // 0xe44 + CRandomNumberGeneratorParameters m_randomnessParameters; // 0xe9c }; // Alignment: 3 -// Size: 0x230 +// Size: 0x1d0 class C_INIT_PositionOffsetToCP : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "creation control point number" - int32_t m_nControlPointNumberStart; // 0x220 + int32_t m_nControlPointNumberStart; // 0x1c0 // MPropertyFriendlyName "offset control point number" - int32_t m_nControlPointNumberEnd; // 0x224 + int32_t m_nControlPointNumberEnd; // 0x1c4 // MPropertyFriendlyName "offset in local space 0/1" - bool m_bLocalCoords; // 0x228 + bool m_bLocalCoords; // 0x1c8 }; // Alignment: 13 -// Size: 0x550 +// Size: 0x510 class C_INIT_PositionPlaceOnGround : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "offset" - CPerParticleFloatInput m_flOffset; // 0x220 + CPerParticleFloatInput m_flOffset; // 0x1c0 // MPropertyFriendlyName "max trace length" - CPerParticleFloatInput m_flMaxTraceLength; // 0x360 + CPerParticleFloatInput m_flMaxTraceLength; // 0x310 // MPropertyFriendlyName "collision group" - char m_CollisionGroupName[128]; // 0x4a0 + char m_CollisionGroupName[128]; // 0x460 // MPropertyFriendlyName "Trace Set" - ParticleTraceSet_t m_nTraceSet; // 0x520 + ParticleTraceSet_t m_nTraceSet; // 0x4e0 private: - [[maybe_unused]] uint8_t __pad0524[0xc]; // 0x524 + [[maybe_unused]] uint8_t __pad04e4[0xc]; // 0x4e4 public: // MPropertyFriendlyName "No Collision Behavior" - ParticleTraceMissBehavior_t m_nTraceMissBehavior; // 0x530 + ParticleTraceMissBehavior_t m_nTraceMissBehavior; // 0x4f0 // MPropertyFriendlyName "include water" - bool m_bIncludeWater; // 0x534 + bool m_bIncludeWater; // 0x4f4 // MPropertyFriendlyName "set normal" - bool m_bSetNormal; // 0x535 + bool m_bSetNormal; // 0x4f5 // MPropertyFriendlyName "set Previous XYZ only" - bool m_bSetPXYZOnly; // 0x536 + bool m_bSetPXYZOnly; // 0x4f6 // MPropertyFriendlyName "Trace along particle normal" - bool m_bTraceAlongNormal; // 0x537 + bool m_bTraceAlongNormal; // 0x4f7 // MPropertyFriendlyName "Offset only if trace hit" - bool m_bOffsetonColOnly; // 0x538 + bool m_bOffsetonColOnly; // 0x4f8 private: - [[maybe_unused]] uint8_t __pad0539[0x3]; // 0x539 + [[maybe_unused]] uint8_t __pad04f9[0x3]; // 0x4f9 public: // MPropertyFriendlyName "offset final position by this fraction of the particle radius" - float m_flOffsetByRadiusFactor; // 0x53c + float m_flOffsetByRadiusFactor; // 0x4fc // MPropertyFriendlyName "preserve initial Z-offset relative to cp" - int32_t m_nPreserveOffsetCP; // 0x540 + int32_t m_nPreserveOffsetCP; // 0x500 // MPropertyFriendlyName "CP Entity to Ignore for Collisions" - int32_t m_nIgnoreCP; // 0x544 + int32_t m_nIgnoreCP; // 0x504 }; // Alignment: 3 -// Size: 0x230 +// Size: 0x1d0 class C_INIT_VelocityFromNormal : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "random speed min" - float m_fSpeedMin; // 0x220 + float m_fSpeedMin; // 0x1c0 // MPropertyFriendlyName "random speed max" - float m_fSpeedMax; // 0x224 + float m_fSpeedMax; // 0x1c4 // MPropertyFriendlyName "ignore delta time" - bool m_bIgnoreDt; // 0x228 + bool m_bIgnoreDt; // 0x1c8 }; // Alignment: 7 -// Size: 0x1090 +// Size: 0x10f0 class C_INIT_VelocityRandom : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x220 + int32_t m_nControlPointNumber; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0224[0x4]; // 0x224 + [[maybe_unused]] uint8_t __pad01c4[0x4]; // 0x1c4 public: // MPropertyFriendlyName "random speed min" - CPerParticleFloatInput m_fSpeedMin; // 0x228 + CPerParticleFloatInput m_fSpeedMin; // 0x1c8 // MPropertyFriendlyName "random speed max" - CPerParticleFloatInput m_fSpeedMax; // 0x368 + CPerParticleFloatInput m_fSpeedMax; // 0x318 // MPropertyFriendlyName "speed in local coordinate system min" // MVectorIsCoordinate - CPerParticleVecInput m_LocalCoordinateSystemSpeedMin; // 0x4a8 + CPerParticleVecInput m_LocalCoordinateSystemSpeedMin; // 0x468 // MPropertyFriendlyName "speed in local coordinate system max" // MVectorIsCoordinate - CPerParticleVecInput m_LocalCoordinateSystemSpeedMax; // 0xa90 + CPerParticleVecInput m_LocalCoordinateSystemSpeedMax; // 0xaa0 // MPropertyFriendlyName "Ignore delta time (RenderTrails)" - bool m_bIgnoreDT; // 0x1078 + bool m_bIgnoreDT; // 0x10d8 private: - [[maybe_unused]] uint8_t __pad1079[0x3]; // 0x1079 + [[maybe_unused]] uint8_t __pad10d9[0x3]; // 0x10d9 public: // MPropertyFriendlyName "Random number generator controls" - CRandomNumberGeneratorParameters m_randomnessParameters; // 0x107c + CRandomNumberGeneratorParameters m_randomnessParameters; // 0x10dc }; // Alignment: 10 -// Size: 0x1810 +// Size: 0x18e0 class C_INIT_InitialVelocityNoise : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "absolute value" // MVectorIsCoordinate - Vector m_vecAbsVal; // 0x220 + Vector m_vecAbsVal; // 0x1c0 // MPropertyFriendlyName "invert abs value" // MVectorIsCoordinate - Vector m_vecAbsValInv; // 0x22c + Vector m_vecAbsValInv; // 0x1cc // MPropertyFriendlyName "spatial coordinate offset" // MVectorIsCoordinate - CPerParticleVecInput m_vecOffsetLoc; // 0x238 + CPerParticleVecInput m_vecOffsetLoc; // 0x1d8 // MPropertyFriendlyName "time coordinate offset" - CPerParticleFloatInput m_flOffset; // 0x820 + CPerParticleFloatInput m_flOffset; // 0x810 // MPropertyFriendlyName "output minimum" CPerParticleVecInput m_vecOutputMin; // 0x960 // MPropertyFriendlyName "output maximum" - CPerParticleVecInput m_vecOutputMax; // 0xf48 + CPerParticleVecInput m_vecOutputMax; // 0xf98 // MPropertyFriendlyName "time noise coordinate scale" - CPerParticleFloatInput m_flNoiseScale; // 0x1530 + CPerParticleFloatInput m_flNoiseScale; // 0x15d0 // MPropertyFriendlyName "spatial noise coordinate scale" - CPerParticleFloatInput m_flNoiseScaleLoc; // 0x1670 + CPerParticleFloatInput m_flNoiseScaleLoc; // 0x1720 // MPropertyFriendlyName "input local space velocity (optional)" - // MParticleTransformInputOptional - CParticleTransformInput m_TransformInput; // 0x17b0 + // MParticleInputOptional + CParticleTransformInput m_TransformInput; // 0x1870 // MPropertyFriendlyName "ignore delta time" - bool m_bIgnoreDt; // 0x1800 + bool m_bIgnoreDt; // 0x18d8 }; // Alignment: 5 -// Size: 0x2b0 +// Size: 0x250 class C_INIT_InitialVelocityFromHitbox : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "velocity minimum" - float m_flVelocityMin; // 0x220 + float m_flVelocityMin; // 0x1c0 // MPropertyFriendlyName "velocity maximum" - float m_flVelocityMax; // 0x224 + float m_flVelocityMax; // 0x1c4 // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x228 + int32_t m_nControlPointNumber; // 0x1c8 // MPropertyFriendlyName "hitbox set" - char m_HitboxSetName[128]; // 0x22c + char m_HitboxSetName[128]; // 0x1cc // MPropertyFriendlyName "use bones instead of hitboxes" - bool m_bUseBones; // 0x2ac + bool m_bUseBones; // 0x24c }; // Alignment: 5 -// Size: 0x240 +// Size: 0x1e0 class C_INIT_VelocityRadialRandom : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x220 + int32_t m_nControlPointNumber; // 0x1c0 // MPropertyFriendlyName "random speed min" - float m_fSpeedMin; // 0x224 + float m_fSpeedMin; // 0x1c4 // MPropertyFriendlyName "random speed max" - float m_fSpeedMax; // 0x228 + float m_fSpeedMax; // 0x1c8 // MPropertyFriendlyName "local space scale" - Vector m_vecLocalCoordinateSystemSpeedScale; // 0x22c + Vector m_vecLocalCoordinateSystemSpeedScale; // 0x1cc private: - [[maybe_unused]] uint8_t __pad0238[0x1]; // 0x238 + [[maybe_unused]] uint8_t __pad01d8[0x1]; // 0x1d8 public: // MPropertyFriendlyName "ignore delta time" - bool m_bIgnoreDelta; // 0x239 + bool m_bIgnoreDelta; // 0x1d9 }; // Alignment: 3 -// Size: 0x230 +// Size: 0x1d0 class C_INIT_RandomLifeTime : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "lifetime min" // MPropertyAttributeRange "0 20" - float m_fLifetimeMin; // 0x220 + float m_fLifetimeMin; // 0x1c0 // MPropertyFriendlyName "lifetime max" // MPropertyAttributeRange "0 20" - float m_fLifetimeMax; // 0x224 + float m_fLifetimeMax; // 0x1c4 // MPropertyFriendlyName "lifetime random exponent" - float m_fLifetimeRandExponent; // 0x228 + float m_fLifetimeRandExponent; // 0x1c8 }; // Alignment: 4 -// Size: 0x230 +// Size: 0x1d0 class C_INIT_RandomScalar : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "min" - float m_flMin; // 0x220 + float m_flMin; // 0x1c0 // MPropertyFriendlyName "max" - float m_flMax; // 0x224 + float m_flMax; // 0x1c4 // MPropertyFriendlyName "exponent" - float m_flExponent; // 0x228 + float m_flExponent; // 0x1c8 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x22c + ParticleAttributeIndex_t m_nFieldOutput; // 0x1cc }; // Alignment: 4 -// Size: 0x250 +// Size: 0x1f0 class C_INIT_RandomVector : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "min" // MVectorIsSometimesCoordinate - Vector m_vecMin; // 0x220 + Vector m_vecMin; // 0x1c0 // MPropertyFriendlyName "max" // MVectorIsSometimesCoordinate - Vector m_vecMax; // 0x22c + Vector m_vecMax; // 0x1cc // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x238 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1d8 // MPropertyFriendlyName "Random number generator controls" - CRandomNumberGeneratorParameters m_randomnessParameters; // 0x23c + CRandomNumberGeneratorParameters m_randomnessParameters; // 0x1dc }; // Alignment: 4 -// Size: 0x230 +// Size: 0x1d0 class C_INIT_RandomVectorComponent : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "min" - float m_flMin; // 0x220 + float m_flMin; // 0x1c0 // MPropertyFriendlyName "max" - float m_flMax; // 0x224 + float m_flMax; // 0x1c4 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x228 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c8 // MPropertyFriendlyName "component 0/1/2 X/Y/Z" // MPropertyAttributeChoiceName "vector_component" // MVectorIsSometimesCoordinate - int32_t m_nComponent; // 0x22c + int32_t m_nComponent; // 0x1cc }; // Alignment: 6 -// Size: 0x260 +// Size: 0x200 class C_INIT_AddVectorToVector : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "component scale factor" - Vector m_vecScale; // 0x220 + Vector m_vecScale; // 0x1c0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x22c + ParticleAttributeIndex_t m_nFieldOutput; // 0x1cc // MPropertyFriendlyName "input field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldInput; // 0x230 + ParticleAttributeIndex_t m_nFieldInput; // 0x1d0 // MPropertyFriendlyName "random offset min" - Vector m_vOffsetMin; // 0x234 + Vector m_vOffsetMin; // 0x1d4 // MPropertyFriendlyName "random offset max" - Vector m_vOffsetMax; // 0x240 + Vector m_vOffsetMax; // 0x1e0 // MPropertyFriendlyName "Random number generator controls" - CRandomNumberGeneratorParameters m_randomnessParameters; // 0x24c + CRandomNumberGeneratorParameters m_randomnessParameters; // 0x1ec }; // Alignment: 3 -// Size: 0x230 +// Size: 0x1d0 class C_INIT_RandomAlphaWindowThreshold : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "min" - float m_flMin; // 0x220 + float m_flMin; // 0x1c0 // MPropertyFriendlyName "max" - float m_flMax; // 0x224 + float m_flMax; // 0x1c4 // MPropertyFriendlyName "exponent" - float m_flExponent; // 0x228 + float m_flExponent; // 0x1c8 }; // Alignment: 3 -// Size: 0x230 +// Size: 0x1d0 class C_INIT_RandomRadius : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "radius min" // MPropertyAttributeRange "biased 0 500" - float m_flRadiusMin; // 0x220 + float m_flRadiusMin; // 0x1c0 // MPropertyFriendlyName "radius max" // MPropertyAttributeRange "biased 0 500" - float m_flRadiusMax; // 0x224 + float m_flRadiusMax; // 0x1c4 // MPropertyFriendlyName "radius random exponent" // MPropertyAttributeRange "-2 2" - float m_flRadiusRandExponent; // 0x228 + float m_flRadiusRandExponent; // 0x1c8 }; // Alignment: 4 -// Size: 0x240 +// Size: 0x1e0 class C_INIT_RandomAlpha : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "alpha field" // MPropertyAttributeChoiceName "particlefield_alpha" - ParticleAttributeIndex_t m_nFieldOutput; // 0x220 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c0 // MPropertyFriendlyName "alpha min" // MPropertyAttributeRange "0 255" - int32_t m_nAlphaMin; // 0x224 + int32_t m_nAlphaMin; // 0x1c4 // MPropertyFriendlyName "alpha max" // MPropertyAttributeRange "0 255" - int32_t m_nAlphaMax; // 0x228 + int32_t m_nAlphaMax; // 0x1c8 private: - [[maybe_unused]] uint8_t __pad022c[0x8]; // 0x22c + [[maybe_unused]] uint8_t __pad01cc[0x8]; // 0x1cc public: // MPropertyFriendlyName "alpha random exponent" - float m_flAlphaRandExponent; // 0x234 + float m_flAlphaRandExponent; // 0x1d4 }; // Alignment: 6 -// Size: 0x240 +// Size: 0x1e0 class CGeneralRandomRotation : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "rotation field" // MPropertyAttributeChoiceName "particlefield_rotation" - ParticleAttributeIndex_t m_nFieldOutput; // 0x220 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c0 // MPropertyFriendlyName "rotation initial" - float m_flDegrees; // 0x224 + float m_flDegrees; // 0x1c4 // MPropertyFriendlyName "rotation offset from initial min" - float m_flDegreesMin; // 0x228 + float m_flDegreesMin; // 0x1c8 // MPropertyFriendlyName "rotation offset from initial max" - float m_flDegreesMax; // 0x22c + float m_flDegreesMax; // 0x1cc // MPropertyFriendlyName "rotation offset exponent" - float m_flRotationRandExponent; // 0x230 + float m_flRotationRandExponent; // 0x1d0 // MPropertyFriendlyName "randomly flip direction" - bool m_bRandomlyFlipDirection; // 0x234 + bool m_bRandomlyFlipDirection; // 0x1d4 }; // Alignment: 0 -// Size: 0x240 +// Size: 0x1e0 class C_INIT_RandomRotation : public CGeneralRandomRotation { public: @@ -3952,21 +3272,21 @@ public: }; // Alignment: 3 -// Size: 0x230 +// Size: 0x1d0 class C_INIT_Orient2DRelToCP : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "control point" - int32_t m_nCP; // 0x220 + int32_t m_nCP; // 0x1c0 // MPropertyFriendlyName "rotation field" // MPropertyAttributeChoiceName "particlefield_rotation" - ParticleAttributeIndex_t m_nFieldOutput; // 0x224 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c4 // MPropertyFriendlyName "rotation offset" - float m_flRotOffset; // 0x228 + float m_flRotOffset; // 0x1c8 }; // Alignment: 0 -// Size: 0x240 +// Size: 0x1e0 class C_INIT_RandomRotationSpeed : public CGeneralRandomRotation { public: @@ -3974,7 +3294,7 @@ public: }; // Alignment: 0 -// Size: 0x240 +// Size: 0x1e0 class C_INIT_RandomYaw : public CGeneralRandomRotation { public: @@ -3982,349 +3302,345 @@ public: }; // Alignment: 10 -// Size: 0x270 +// Size: 0x210 class C_INIT_RandomColor : public CParticleFunctionInitializer { -private: - [[maybe_unused]] uint8_t __pad0220[0x1c]; // 0x220 public: // MPropertyFriendlyName "color1" - Color m_ColorMin; // 0x23c + Color m_ColorMin; // 0x1dc // MPropertyFriendlyName "color2" - Color m_ColorMax; // 0x240 + Color m_ColorMax; // 0x1e0 // MPropertyFriendlyName "tint clamp min" - Color m_TintMin; // 0x244 + Color m_TintMin; // 0x1e4 // MPropertyFriendlyName "tint clamp max" - Color m_TintMax; // 0x248 + Color m_TintMax; // 0x1e8 // MPropertyFriendlyName "tint perc" - float m_flTintPerc; // 0x24c + float m_flTintPerc; // 0x1ec // MPropertyFriendlyName "tint update movement threshold" - float m_flUpdateThreshold; // 0x250 + float m_flUpdateThreshold; // 0x1f0 // MPropertyFriendlyName "tint control point" - int32_t m_nTintCP; // 0x254 + int32_t m_nTintCP; // 0x1f4 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x258 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1f8 // MPropertyFriendlyName "tint blend mode" - ParticleColorBlendMode_t m_nTintBlendMode; // 0x25c + ParticleColorBlendMode_t m_nTintBlendMode; // 0x1fc // MPropertyFriendlyName "light amplification amount" - float m_flLightAmplification; // 0x260 + float m_flLightAmplification; // 0x200 }; // Alignment: 7 -// Size: 0x260 +// Size: 0x200 class C_INIT_ColorLitPerParticle : public CParticleFunctionInitializer { -private: - [[maybe_unused]] uint8_t __pad0220[0x18]; // 0x220 public: // MPropertyFriendlyName "color1" - Color m_ColorMin; // 0x238 + Color m_ColorMin; // 0x1d8 // MPropertyFriendlyName "color2" - Color m_ColorMax; // 0x23c + Color m_ColorMax; // 0x1dc // MPropertyFriendlyName "tint clamp min" - Color m_TintMin; // 0x240 + Color m_TintMin; // 0x1e0 // MPropertyFriendlyName "tint clamp max" - Color m_TintMax; // 0x244 + Color m_TintMax; // 0x1e4 // MPropertyFriendlyName "light bias" - float m_flTintPerc; // 0x248 + float m_flTintPerc; // 0x1e8 // MPropertyFriendlyName "tint blend mode" - ParticleColorBlendMode_t m_nTintBlendMode; // 0x24c + ParticleColorBlendMode_t m_nTintBlendMode; // 0x1ec // MPropertyFriendlyName "light amplification amount" - float m_flLightAmplification; // 0x250 + float m_flLightAmplification; // 0x1f0 }; // Alignment: 3 -// Size: 0x230 +// Size: 0x1d0 class C_INIT_RandomTrailLength : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "length min" - float m_flMinLength; // 0x220 + float m_flMinLength; // 0x1c0 // MPropertyFriendlyName "length max" - float m_flMaxLength; // 0x224 + float m_flMaxLength; // 0x1c4 // MPropertyFriendlyName "length random exponent" - float m_flLengthRandExponent; // 0x228 + float m_flLengthRandExponent; // 0x1c8 }; // Alignment: 5 -// Size: 0x250 +// Size: 0x1f0 class C_INIT_RandomSequence : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "sequence min" // MPropertyAttributeEditor "SequencePicker( 1 )" - int32_t m_nSequenceMin; // 0x220 + int32_t m_nSequenceMin; // 0x1c0 // MPropertyFriendlyName "sequence max" // MPropertyAttributeEditor "SequencePicker( 1 )" - int32_t m_nSequenceMax; // 0x224 + int32_t m_nSequenceMax; // 0x1c4 // MPropertyFriendlyName "shuffle" - bool m_bShuffle; // 0x228 + bool m_bShuffle; // 0x1c8 // MPropertyFriendlyName "linear" - bool m_bLinear; // 0x229 + bool m_bLinear; // 0x1c9 private: - [[maybe_unused]] uint8_t __pad022a[0x6]; // 0x22a + [[maybe_unused]] uint8_t __pad01ca[0x6]; // 0x1ca public: // MPropertyFriendlyName "weighted list" - CUtlVector< SequenceWeightedList_t > m_WeightedList; // 0x230 + CUtlVector< SequenceWeightedList_t > m_WeightedList; // 0x1d0 }; // Alignment: 4 -// Size: 0x240 +// Size: 0x1e0 class C_INIT_SequenceFromCP : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "kill unused" - bool m_bKillUnused; // 0x220 + bool m_bKillUnused; // 0x1c0 // MPropertyFriendlyName "offset propotional to radius" - bool m_bRadiusScale; // 0x221 + bool m_bRadiusScale; // 0x1c1 private: - [[maybe_unused]] uint8_t __pad0222[0x2]; // 0x222 + [[maybe_unused]] uint8_t __pad01c2[0x2]; // 0x1c2 public: // MPropertyFriendlyName "control point" - int32_t m_nCP; // 0x224 + int32_t m_nCP; // 0x1c4 // MPropertyFriendlyName "per particle spatial offset" // MVectorIsCoordinate - Vector m_vecOffset; // 0x228 + Vector m_vecOffset; // 0x1c8 }; // Alignment: 3 -// Size: 0x430 +// Size: 0x3d0 class C_INIT_RandomModelSequence : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "activity" // MPropertySuppressExpr "mod != dota" - char m_ActivityName[256]; // 0x220 + char m_ActivityName[256]; // 0x1c0 // MPropertyFriendlyName "sequence" // MPropertySuppressExpr "mod == dota" - char m_SequenceName[256]; // 0x320 + char m_SequenceName[256]; // 0x2c0 // MPropertyFriendlyName "model" - CStrongHandle< InfoForResourceTypeCModel > m_hModel; // 0x420 + CStrongHandle< InfoForResourceTypeCModel > m_hModel; // 0x3c0 }; // Alignment: 1 -// Size: 0x810 +// Size: 0x800 class C_INIT_ScaleVelocity : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "velocity scale" // MVectorIsCoordinate - CParticleCollectionVecInput m_vecScale; // 0x220 + CParticleCollectionVecInput m_vecScale; // 0x1c0 }; // Alignment: 10 -// Size: 0xe10 +// Size: 0xe50 class C_INIT_PositionWarp : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "warp min" // MVectorIsCoordinate - CParticleCollectionVecInput m_vecWarpMin; // 0x220 + CParticleCollectionVecInput m_vecWarpMin; // 0x1c0 // MPropertyFriendlyName "warp max" // MVectorIsCoordinate - CParticleCollectionVecInput m_vecWarpMax; // 0x808 + CParticleCollectionVecInput m_vecWarpMax; // 0x7f8 // MPropertyFriendlyName "warp scale control point number" - int32_t m_nScaleControlPointNumber; // 0xdf0 + int32_t m_nScaleControlPointNumber; // 0xe30 // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0xdf4 + int32_t m_nControlPointNumber; // 0xe34 // MPropertyFriendlyName "radius scale component" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nRadiusComponent; // 0xdf8 + int32_t m_nRadiusComponent; // 0xe38 // MPropertyFriendlyName "warp transition time (treats min/max as start/end sizes)" - float m_flWarpTime; // 0xdfc + float m_flWarpTime; // 0xe3c // MPropertyFriendlyName "warp transition start time" - float m_flWarpStartTime; // 0xe00 + float m_flWarpStartTime; // 0xe40 // MPropertyFriendlyName "previous position sacale" - float m_flPrevPosScale; // 0xe04 + float m_flPrevPosScale; // 0xe44 // MPropertyFriendlyName "reverse warp (0/1)" - bool m_bInvertWarp; // 0xe08 + bool m_bInvertWarp; // 0xe48 // MPropertyFriendlyName "use particle count instead of time" - bool m_bUseCount; // 0xe09 + bool m_bUseCount; // 0xe49 }; // Alignment: 6 -// Size: 0x390 +// Size: 0x340 class C_INIT_PositionWarpScalar : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "warp min" // MVectorIsCoordinate - Vector m_vecWarpMin; // 0x220 + Vector m_vecWarpMin; // 0x1c0 // MPropertyFriendlyName "warp max" // MVectorIsCoordinate - Vector m_vecWarpMax; // 0x22c + Vector m_vecWarpMax; // 0x1cc // MPropertyFriendlyName "warp amount" - CPerParticleFloatInput m_InputValue; // 0x238 + CPerParticleFloatInput m_InputValue; // 0x1d8 // MPropertyFriendlyName "previous position scale" - float m_flPrevPosScale; // 0x378 + float m_flPrevPosScale; // 0x328 // MPropertyFriendlyName "warp scale control point number" - int32_t m_nScaleControlPointNumber; // 0x37c + int32_t m_nScaleControlPointNumber; // 0x32c // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x380 + int32_t m_nControlPointNumber; // 0x330 }; // Alignment: 10 -// Size: 0x250 +// Size: 0x1f0 class C_INIT_CreationNoise : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x220 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c0 // MPropertyFriendlyName "absolute value" - bool m_bAbsVal; // 0x224 + bool m_bAbsVal; // 0x1c4 // MPropertyFriendlyName "invert absolute value" - bool m_bAbsValInv; // 0x225 + bool m_bAbsValInv; // 0x1c5 private: - [[maybe_unused]] uint8_t __pad0226[0x2]; // 0x226 + [[maybe_unused]] uint8_t __pad01c6[0x2]; // 0x1c6 public: // MPropertyFriendlyName "time coordinate offset" - float m_flOffset; // 0x228 + float m_flOffset; // 0x1c8 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x22c + float m_flOutputMin; // 0x1cc // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x230 + float m_flOutputMax; // 0x1d0 // MPropertyFriendlyName "time noise coordinate scale" - float m_flNoiseScale; // 0x234 + float m_flNoiseScale; // 0x1d4 // MPropertyFriendlyName "spatial noise coordinate scale" - float m_flNoiseScaleLoc; // 0x238 + float m_flNoiseScaleLoc; // 0x1d8 // MPropertyFriendlyName "spatial coordinate offset" // MVectorIsCoordinate - Vector m_vecOffsetLoc; // 0x23c + Vector m_vecOffsetLoc; // 0x1dc // MPropertyFriendlyName "world time noise coordinate scale" - float m_flWorldTimeScale; // 0x248 + float m_flWorldTimeScale; // 0x1e8 }; // Alignment: 5 -// Size: 0x290 +// Size: 0x230 class C_INIT_CreateAlongPath : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "maximum distance" - float m_fMaxDistance; // 0x220 + float m_fMaxDistance; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0224[0xc]; // 0x224 + [[maybe_unused]] uint8_t __pad01c4[0xc]; // 0x1c4 public: - CPathParameters m_PathParams; // 0x230 + CPathParameters m_PathParams; // 0x1d0 // MPropertyFriendlyName "randomly select sequential CP pairs between start and end points" - bool m_bUseRandomCPs; // 0x270 + bool m_bUseRandomCPs; // 0x210 private: - [[maybe_unused]] uint8_t __pad0271[0x3]; // 0x271 + [[maybe_unused]] uint8_t __pad0211[0x3]; // 0x211 public: // MPropertyFriendlyName "Offset from control point for path end" // MVectorIsCoordinate - Vector m_vEndOffset; // 0x274 + Vector m_vEndOffset; // 0x214 // MPropertyFriendlyName "save offset" - bool m_bSaveOffset; // 0x280 + bool m_bSaveOffset; // 0x220 }; // Alignment: 7 -// Size: 0x870 +// Size: 0x860 class C_INIT_MoveBetweenPoints : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "minimum speed" - CPerParticleFloatInput m_flSpeedMin; // 0x220 + CPerParticleFloatInput m_flSpeedMin; // 0x1c0 // MPropertyFriendlyName "maximum speed" - CPerParticleFloatInput m_flSpeedMax; // 0x360 + CPerParticleFloatInput m_flSpeedMax; // 0x310 // MPropertyFriendlyName "end spread" - CPerParticleFloatInput m_flEndSpread; // 0x4a0 + CPerParticleFloatInput m_flEndSpread; // 0x460 // MPropertyFriendlyName "start offset" - CPerParticleFloatInput m_flStartOffset; // 0x5e0 + CPerParticleFloatInput m_flStartOffset; // 0x5b0 // MPropertyFriendlyName "end offset" - CPerParticleFloatInput m_flEndOffset; // 0x720 + CPerParticleFloatInput m_flEndOffset; // 0x700 // MPropertyFriendlyName "end control point" - int32_t m_nEndControlPointNumber; // 0x860 + int32_t m_nEndControlPointNumber; // 0x850 // MPropertyFriendlyName "bias lifetime by trail length" - bool m_bTrailBias; // 0x864 + bool m_bTrailBias; // 0x854 }; // Alignment: 11 -// Size: 0x250 +// Size: 0x1f0 class C_INIT_RemapScalar : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "input field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldInput; // 0x220 + ParticleAttributeIndex_t m_nFieldInput; // 0x1c0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x224 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c4 // MPropertyFriendlyName "input minimum" - float m_flInputMin; // 0x228 + float m_flInputMin; // 0x1c8 // MPropertyFriendlyName "input maximum" - float m_flInputMax; // 0x22c + float m_flInputMax; // 0x1cc // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x230 + float m_flOutputMin; // 0x1d0 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x234 + float m_flOutputMax; // 0x1d4 // MPropertyFriendlyName "emitter lifetime start time (seconds)" - float m_flStartTime; // 0x238 + float m_flStartTime; // 0x1d8 // MPropertyFriendlyName "emitter lifetime end time (seconds)" - float m_flEndTime; // 0x23c + float m_flEndTime; // 0x1dc // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x240 + ParticleSetMethod_t m_nSetMethod; // 0x1e0 // MPropertyFriendlyName "only active within specified input range" - bool m_bActiveRange; // 0x244 + bool m_bActiveRange; // 0x1e4 private: - [[maybe_unused]] uint8_t __pad0245[0x3]; // 0x245 + [[maybe_unused]] uint8_t __pad01e5[0x3]; // 0x1e5 public: // MPropertyFriendlyName "remap bias" - float m_flRemapBias; // 0x248 + float m_flRemapBias; // 0x1e8 }; // Alignment: 12 -// Size: 0x250 +// Size: 0x1f0 class C_INIT_RemapParticleCountToScalar : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x220 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c0 // MPropertyFriendlyName "input minimum" - int32_t m_nInputMin; // 0x224 + int32_t m_nInputMin; // 0x1c4 // MPropertyFriendlyName "input maximum" - int32_t m_nInputMax; // 0x228 + int32_t m_nInputMax; // 0x1c8 // MPropertyFriendlyName "input scale control point" - int32_t m_nScaleControlPoint; // 0x22c + int32_t m_nScaleControlPoint; // 0x1cc // MPropertyFriendlyName "input scale control point field" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nScaleControlPointField; // 0x230 + int32_t m_nScaleControlPointField; // 0x1d0 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x234 + float m_flOutputMin; // 0x1d4 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x238 + float m_flOutputMax; // 0x1d8 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x23c + ParticleSetMethod_t m_nSetMethod; // 0x1dc // MPropertyFriendlyName "only active within specified input range" - bool m_bActiveRange; // 0x240 + bool m_bActiveRange; // 0x1e0 // MPropertyFriendlyName "invert input from total particle count" - bool m_bInvert; // 0x241 + bool m_bInvert; // 0x1e1 // MPropertyFriendlyName "wrap input" - bool m_bWrap; // 0x242 + bool m_bWrap; // 0x1e2 private: - [[maybe_unused]] uint8_t __pad0243[0x1]; // 0x243 + [[maybe_unused]] uint8_t __pad01e3[0x1]; // 0x1e3 public: // MPropertyFriendlyName "remap bias" - float m_flRemapBias; // 0x244 + float m_flRemapBias; // 0x1e4 }; // Alignment: 4 -// Size: 0x270 +// Size: 0x210 class C_INIT_RemapParticleCountToNamedModelElementScalar : public C_INIT_RemapParticleCountToScalar { public: - CStrongHandle< InfoForResourceTypeCModel > m_hModel; // 0x250 + CStrongHandle< InfoForResourceTypeCModel > m_hModel; // 0x1f0 // MPropertyFriendlyName "output min name" - CUtlString m_outputMinName; // 0x258 + CUtlString m_outputMinName; // 0x1f8 // MPropertyFriendlyName "output max name" - CUtlString m_outputMaxName; // 0x260 - bool m_bModelFromRenderer; // 0x268 + CUtlString m_outputMaxName; // 0x200 + bool m_bModelFromRenderer; // 0x208 }; // Alignment: 0 -// Size: 0x270 +// Size: 0x210 class C_INIT_RemapParticleCountToNamedModelSequenceScalar : public C_INIT_RemapParticleCountToNamedModelElementScalar { public: @@ -4332,7 +3648,7 @@ public: }; // Alignment: 0 -// Size: 0x270 +// Size: 0x210 class C_INIT_RemapParticleCountToNamedModelBodyPartScalar : public C_INIT_RemapParticleCountToNamedModelElementScalar { public: @@ -4340,7 +3656,7 @@ public: }; // Alignment: 0 -// Size: 0x270 +// Size: 0x210 class C_INIT_RemapParticleCountToNamedModelMeshGroupScalar : public C_INIT_RemapParticleCountToNamedModelElementScalar { public: @@ -4348,577 +3664,576 @@ public: }; // Alignment: 2 -// Size: 0x230 +// Size: 0x1d0 class C_INIT_InheritVelocity : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x220 + int32_t m_nControlPointNumber; // 0x1c0 // MPropertyFriendlyName "velocity scale" - float m_flVelocityScale; // 0x224 + float m_flVelocityScale; // 0x1c4 }; -// Alignment: 5 -// Size: 0x240 +// Alignment: 4 +// Size: 0x870 class C_INIT_VelocityFromCP : public CParticleFunctionInitializer { public: - // MPropertyFriendlyName "control point number" - int32_t m_nControlPoint; // 0x220 - // MPropertyFriendlyName "comparison control point number" - int32_t m_nControlPointCompare; // 0x224 - // MPropertyFriendlyName "local space control point number" - int32_t m_nControlPointLocal; // 0x228 + // MPropertyFriendlyName "velocity" + CParticleCollectionVecInput m_velocityInput; // 0x1c0 + // MPropertyFriendlyName "local space" + // MParticleInputOptional + CParticleTransformInput m_transformInput; // 0x7f8 // MPropertyFriendlyName "velocity scale" - float m_flVelocityScale; // 0x22c + float m_flVelocityScale; // 0x860 // MPropertyFriendlyName "direction only" - bool m_bDirectionOnly; // 0x230 + bool m_bDirectionOnly; // 0x864 }; // Alignment: 8 -// Size: 0x250 +// Size: 0x1f0 class C_INIT_AgeNoise : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "absolute value" - bool m_bAbsVal; // 0x220 + bool m_bAbsVal; // 0x1c0 // MPropertyFriendlyName "invert absolute value" - bool m_bAbsValInv; // 0x221 + bool m_bAbsValInv; // 0x1c1 private: - [[maybe_unused]] uint8_t __pad0222[0x2]; // 0x222 + [[maybe_unused]] uint8_t __pad01c2[0x2]; // 0x1c2 public: // MPropertyFriendlyName "time coordinate offset" - float m_flOffset; // 0x224 + float m_flOffset; // 0x1c4 // MPropertyFriendlyName "start age minimum" - float m_flAgeMin; // 0x228 + float m_flAgeMin; // 0x1c8 // MPropertyFriendlyName "start age maximum" - float m_flAgeMax; // 0x22c + float m_flAgeMax; // 0x1cc // MPropertyFriendlyName "time noise coordinate scale" - float m_flNoiseScale; // 0x230 + float m_flNoiseScale; // 0x1d0 // MPropertyFriendlyName "spatial noise coordinate scale" - float m_flNoiseScaleLoc; // 0x234 + float m_flNoiseScaleLoc; // 0x1d4 // MPropertyFriendlyName "spatial coordinate offset" // MVectorIsCoordinate - Vector m_vecOffsetLoc; // 0x238 + Vector m_vecOffsetLoc; // 0x1d8 }; // Alignment: 1 -// Size: 0x230 +// Size: 0x1d0 class C_INIT_SequenceLifeTime : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "frames per second" - float m_flFramerate; // 0x220 + float m_flFramerate; // 0x1c0 }; // Alignment: 12 -// Size: 0x270 +// Size: 0x210 class C_INIT_RemapScalarToVector : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "input field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldInput; // 0x220 + ParticleAttributeIndex_t m_nFieldInput; // 0x1c0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x224 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c4 // MPropertyFriendlyName "input minimum" - float m_flInputMin; // 0x228 + float m_flInputMin; // 0x1c8 // MPropertyFriendlyName "input maximum" - float m_flInputMax; // 0x22c + float m_flInputMax; // 0x1cc // MPropertyFriendlyName "output minimum" // MVectorIsSometimesCoordinate - Vector m_vecOutputMin; // 0x230 + Vector m_vecOutputMin; // 0x1d0 // MPropertyFriendlyName "output maximum" // MVectorIsSometimesCoordinate - Vector m_vecOutputMax; // 0x23c + Vector m_vecOutputMax; // 0x1dc // MPropertyFriendlyName "emitter lifetime start time (seconds)" - float m_flStartTime; // 0x248 + float m_flStartTime; // 0x1e8 // MPropertyFriendlyName "emitter lifetime end time (seconds)" - float m_flEndTime; // 0x24c + float m_flEndTime; // 0x1ec // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x250 + ParticleSetMethod_t m_nSetMethod; // 0x1f0 // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x254 + int32_t m_nControlPointNumber; // 0x1f4 // MPropertyFriendlyName "use local system" - bool m_bLocalCoords; // 0x258 + bool m_bLocalCoords; // 0x1f8 private: - [[maybe_unused]] uint8_t __pad0259[0x3]; // 0x259 + [[maybe_unused]] uint8_t __pad01f9[0x3]; // 0x1f9 public: // MPropertyFriendlyName "remap bias" - float m_flRemapBias; // 0x25c + float m_flRemapBias; // 0x1fc }; // Alignment: 5 -// Size: 0x250 +// Size: 0x1f0 class C_INIT_OffsetVectorToVector : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "input field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldInput; // 0x220 + ParticleAttributeIndex_t m_nFieldInput; // 0x1c0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x224 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c4 // MPropertyFriendlyName "output offset minimum" // MVectorIsSometimesCoordinate - Vector m_vecOutputMin; // 0x228 + Vector m_vecOutputMin; // 0x1c8 // MPropertyFriendlyName "output offset maximum" // MVectorIsSometimesCoordinate - Vector m_vecOutputMax; // 0x234 + Vector m_vecOutputMax; // 0x1d4 // MPropertyFriendlyName "Random number generator controls" - CRandomNumberGeneratorParameters m_randomnessParameters; // 0x240 + CRandomNumberGeneratorParameters m_randomnessParameters; // 0x1e0 }; // Alignment: 6 -// Size: 0x500 +// Size: 0x4c0 class C_INIT_CreateSequentialPathV2 : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "maximum distance" - CPerParticleFloatInput m_fMaxDistance; // 0x220 + CPerParticleFloatInput m_fMaxDistance; // 0x1c0 // MPropertyFriendlyName "particles to map from start to end" - CParticleCollectionFloatInput m_flNumToAssign; // 0x360 + CParticleCollectionFloatInput m_flNumToAssign; // 0x310 // MPropertyFriendlyName "restart behavior (0 = bounce, 1 = loop )" - bool m_bLoop; // 0x4a0 + bool m_bLoop; // 0x460 // MPropertyFriendlyName "use sequential CP pairs between start and end point" - bool m_bCPPairs; // 0x4a1 + bool m_bCPPairs; // 0x461 // MPropertyFriendlyName "save offset" - bool m_bSaveOffset; // 0x4a2 + bool m_bSaveOffset; // 0x462 private: - [[maybe_unused]] uint8_t __pad04a3[0xd]; // 0x4a3 + [[maybe_unused]] uint8_t __pad0463[0xd]; // 0x463 public: - CPathParameters m_PathParams; // 0x4b0 + CPathParameters m_PathParams; // 0x470 }; // Alignment: 6 -// Size: 0x270 +// Size: 0x210 class C_INIT_CreateSequentialPath : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "maximum distance" - float m_fMaxDistance; // 0x220 + float m_fMaxDistance; // 0x1c0 // MPropertyFriendlyName "particles to map from start to end" - float m_flNumToAssign; // 0x224 + float m_flNumToAssign; // 0x1c4 // MPropertyFriendlyName "restart behavior (0 = bounce, 1 = loop )" - bool m_bLoop; // 0x228 + bool m_bLoop; // 0x1c8 // MPropertyFriendlyName "use sequential CP pairs between start and end point" - bool m_bCPPairs; // 0x229 + bool m_bCPPairs; // 0x1c9 // MPropertyFriendlyName "save offset" - bool m_bSaveOffset; // 0x22a + bool m_bSaveOffset; // 0x1ca private: - [[maybe_unused]] uint8_t __pad022b[0x5]; // 0x22b + [[maybe_unused]] uint8_t __pad01cb[0x5]; // 0x1cb public: - CPathParameters m_PathParams; // 0x230 + CPathParameters m_PathParams; // 0x1d0 }; // Alignment: 13 -// Size: 0x2e0 +// Size: 0x280 class C_INIT_InitialRepulsionVelocity : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "collision group" - char m_CollisionGroupName[128]; // 0x220 + char m_CollisionGroupName[128]; // 0x1c0 // MPropertyFriendlyName "Trace Set" - ParticleTraceSet_t m_nTraceSet; // 0x2a0 + ParticleTraceSet_t m_nTraceSet; // 0x240 // MPropertyFriendlyName "minimum velocity" // MVectorIsCoordinate - Vector m_vecOutputMin; // 0x2a4 + Vector m_vecOutputMin; // 0x244 // MPropertyFriendlyName "maximum velocity" // MVectorIsCoordinate - Vector m_vecOutputMax; // 0x2b0 + Vector m_vecOutputMax; // 0x250 // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x2bc + int32_t m_nControlPointNumber; // 0x25c // MPropertyFriendlyName "per particle world collision tests" - bool m_bPerParticle; // 0x2c0 + bool m_bPerParticle; // 0x260 // MPropertyFriendlyName "offset instead of accelerate" - bool m_bTranslate; // 0x2c1 + bool m_bTranslate; // 0x261 // MPropertyFriendlyName "offset proportional to radius 0/1" - bool m_bProportional; // 0x2c2 + bool m_bProportional; // 0x262 private: - [[maybe_unused]] uint8_t __pad02c3[0x1]; // 0x2c3 + [[maybe_unused]] uint8_t __pad0263[0x1]; // 0x263 public: // MPropertyFriendlyName "trace length" - float m_flTraceLength; // 0x2c4 + float m_flTraceLength; // 0x264 // MPropertyFriendlyName "use radius for per particle trace length" - bool m_bPerParticleTR; // 0x2c8 + bool m_bPerParticleTR; // 0x268 // MPropertyFriendlyName "inherit from parent" - bool m_bInherit; // 0x2c9 + bool m_bInherit; // 0x269 private: - [[maybe_unused]] uint8_t __pad02ca[0x2]; // 0x2ca + [[maybe_unused]] uint8_t __pad026a[0x2]; // 0x26a public: // MPropertyFriendlyName "control points to broadcast to children (n + 1)" - int32_t m_nChildCP; // 0x2cc + int32_t m_nChildCP; // 0x26c // MPropertyFriendlyName "child group ID to affect" - int32_t m_nChildGroupID; // 0x2d0 + int32_t m_nChildGroupID; // 0x270 }; // Alignment: 1 -// Size: 0x230 +// Size: 0x1d0 class C_INIT_RandomYawFlip : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "flip percentage" - float m_flPercent; // 0x220 + float m_flPercent; // 0x1c0 }; // Alignment: 2 -// Size: 0x230 +// Size: 0x1d0 class C_INIT_RandomSecondSequence : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "sequence min" // MPropertyAttributeEditor "SequencePicker( 2 )" - int32_t m_nSequenceMin; // 0x220 + int32_t m_nSequenceMin; // 0x1c0 // MPropertyFriendlyName "sequence max" // MPropertyAttributeEditor "SequencePicker( 2 )" - int32_t m_nSequenceMax; // 0x224 + int32_t m_nSequenceMax; // 0x1c4 }; // Alignment: 11 -// Size: 0x250 +// Size: 0x1f0 class C_INIT_RemapCPtoScalar : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "input control point number" - int32_t m_nCPInput; // 0x220 + int32_t m_nCPInput; // 0x1c0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x224 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c4 // MPropertyFriendlyName "input field 0-2 X/Y/Z" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nField; // 0x228 + int32_t m_nField; // 0x1c8 // MPropertyFriendlyName "input minimum" - float m_flInputMin; // 0x22c + float m_flInputMin; // 0x1cc // MPropertyFriendlyName "input maximum" - float m_flInputMax; // 0x230 + float m_flInputMax; // 0x1d0 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x234 + float m_flOutputMin; // 0x1d4 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x238 + float m_flOutputMax; // 0x1d8 // MPropertyFriendlyName "emitter lifetime start time (seconds)" - float m_flStartTime; // 0x23c + float m_flStartTime; // 0x1dc // MPropertyFriendlyName "emitter lifetime end time (seconds)" - float m_flEndTime; // 0x240 + float m_flEndTime; // 0x1e0 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x244 + ParticleSetMethod_t m_nSetMethod; // 0x1e4 // MPropertyFriendlyName "remap bias" - float m_flRemapBias; // 0x248 + float m_flRemapBias; // 0x1e8 }; // Alignment: 13 -// Size: 0x310 +// Size: 0x2e0 class C_INIT_RemapTransformToVector : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x220 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c0 // MPropertyFriendlyName "input minimum" // MVectorIsSometimesCoordinate - Vector m_vInputMin; // 0x224 + Vector m_vInputMin; // 0x1c4 // MPropertyFriendlyName "input maximum" // MVectorIsSometimesCoordinate - Vector m_vInputMax; // 0x230 + Vector m_vInputMax; // 0x1d0 // MPropertyFriendlyName "output minimum" // MVectorIsSometimesCoordinate - Vector m_vOutputMin; // 0x23c + Vector m_vOutputMin; // 0x1dc // MPropertyFriendlyName "output maximum" // MVectorIsSometimesCoordinate - Vector m_vOutputMax; // 0x248 + Vector m_vOutputMax; // 0x1e8 private: - [[maybe_unused]] uint8_t __pad0254[0x4]; // 0x254 + [[maybe_unused]] uint8_t __pad01f4[0x4]; // 0x1f4 public: // MPropertyFriendlyName "transform input" - CParticleTransformInput m_TransformInput; // 0x258 + CParticleTransformInput m_TransformInput; // 0x1f8 // MPropertyFriendlyName "local space transform" - // MParticleTransformInputOptional - CParticleTransformInput m_LocalSpaceTransform; // 0x2a8 + // MParticleInputOptional + CParticleTransformInput m_LocalSpaceTransform; // 0x260 // MPropertyFriendlyName "emitter lifetime start time (seconds)" - float m_flStartTime; // 0x2f8 + float m_flStartTime; // 0x2c8 // MPropertyFriendlyName "emitter lifetime end time (seconds)" - float m_flEndTime; // 0x2fc + float m_flEndTime; // 0x2cc // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x300 + ParticleSetMethod_t m_nSetMethod; // 0x2d0 // MPropertyFriendlyName "offset position" - bool m_bOffset; // 0x304 + bool m_bOffset; // 0x2d4 // MPropertyFriendlyName "accelerate position" - bool m_bAccelerate; // 0x305 + bool m_bAccelerate; // 0x2d5 private: - [[maybe_unused]] uint8_t __pad0306[0x2]; // 0x306 + [[maybe_unused]] uint8_t __pad02d6[0x2]; // 0x2d6 public: // MPropertyFriendlyName "remap bias" - float m_flRemapBias; // 0x308 + float m_flRemapBias; // 0x2d8 }; // Alignment: 9 -// Size: 0x250 +// Size: 0x1f0 class C_INIT_ChaoticAttractor : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "pickover A parameter" - float m_flAParm; // 0x220 + float m_flAParm; // 0x1c0 // MPropertyFriendlyName "pickover B parameter" - float m_flBParm; // 0x224 + float m_flBParm; // 0x1c4 // MPropertyFriendlyName "pickover C parameter" - float m_flCParm; // 0x228 + float m_flCParm; // 0x1c8 // MPropertyFriendlyName "pickover D parameter" - float m_flDParm; // 0x22c + float m_flDParm; // 0x1cc // MPropertyFriendlyName "scale" - float m_flScale; // 0x230 + float m_flScale; // 0x1d0 // MPropertyFriendlyName "speed min" - float m_flSpeedMin; // 0x234 + float m_flSpeedMin; // 0x1d4 // MPropertyFriendlyName "speed max" - float m_flSpeedMax; // 0x238 + float m_flSpeedMax; // 0x1d8 // MPropertyFriendlyName "relative control point number" - int32_t m_nBaseCP; // 0x23c + int32_t m_nBaseCP; // 0x1dc // MPropertyFriendlyName "uniform speed" - bool m_bUniformSpeed; // 0x240 + bool m_bUniformSpeed; // 0x1e0 }; // Alignment: 5 -// Size: 0x240 +// Size: 0x1e0 class C_INIT_CreateFromParentParticles : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "inherited velocity scale" - float m_flVelocityScale; // 0x220 + float m_flVelocityScale; // 0x1c0 // MPropertyFriendlyName "particle increment amount" - float m_flIncrement; // 0x224 + float m_flIncrement; // 0x1c4 // MPropertyFriendlyName "random parent particle distribution" - bool m_bRandomDistribution; // 0x228 + bool m_bRandomDistribution; // 0x1c8 private: - [[maybe_unused]] uint8_t __pad0229[0x3]; // 0x229 + [[maybe_unused]] uint8_t __pad01c9[0x3]; // 0x1c9 public: // MPropertyFriendlyName "random seed" - int32_t m_nRandomSeed; // 0x22c + int32_t m_nRandomSeed; // 0x1cc // MPropertyFriendlyName "sub frame interpolation" - bool m_bSubFrame; // 0x230 + bool m_bSubFrame; // 0x1d0 }; // Alignment: 5 -// Size: 0x240 +// Size: 0x1e0 class C_INIT_InheritFromParentParticles : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "scale" - float m_flScale; // 0x220 + float m_flScale; // 0x1c0 // MPropertyFriendlyName "inherited field" // MPropertyAttributeChoiceName "particlefield" - ParticleAttributeIndex_t m_nFieldOutput; // 0x224 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c4 // MPropertyFriendlyName "particle increment amount" - int32_t m_nIncrement; // 0x228 + int32_t m_nIncrement; // 0x1c8 // MPropertyFriendlyName "random parent particle distribution" - bool m_bRandomDistribution; // 0x22c + bool m_bRandomDistribution; // 0x1cc private: - [[maybe_unused]] uint8_t __pad022d[0x3]; // 0x22d + [[maybe_unused]] uint8_t __pad01cd[0x3]; // 0x1cd public: // MPropertyFriendlyName "random seed" - int32_t m_nRandomSeed; // 0x230 + int32_t m_nRandomSeed; // 0x1d0 }; // Alignment: 4 -// Size: 0x370 +// Size: 0x320 class C_INIT_CreateFromCPs : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "control point increment amount" - int32_t m_nIncrement; // 0x220 + int32_t m_nIncrement; // 0x1c0 // MPropertyFriendlyName "starting control point" - int32_t m_nMinCP; // 0x224 + int32_t m_nMinCP; // 0x1c4 // MPropertyFriendlyName "ending control point" // MParticleMinVersion - int32_t m_nMaxCP; // 0x228 + int32_t m_nMaxCP; // 0x1c8 private: - [[maybe_unused]] uint8_t __pad022c[0x4]; // 0x22c + [[maybe_unused]] uint8_t __pad01cc[0x4]; // 0x1cc public: // MPropertyFriendlyName "dynamic control point count" - CParticleCollectionFloatInput m_nDynamicCPCount; // 0x230 + CParticleCollectionFloatInput m_nDynamicCPCount; // 0x1d0 }; // Alignment: 15 -// Size: 0x920 +// Size: 0x910 class C_INIT_DistanceToCPInit : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x220 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0224[0x4]; // 0x224 + [[maybe_unused]] uint8_t __pad01c4[0x4]; // 0x1c4 public: // MPropertyFriendlyName "distance minimum" - CPerParticleFloatInput m_flInputMin; // 0x228 + CPerParticleFloatInput m_flInputMin; // 0x1c8 // MPropertyFriendlyName "distance maximum" - CPerParticleFloatInput m_flInputMax; // 0x368 + CPerParticleFloatInput m_flInputMax; // 0x318 // MPropertyFriendlyName "output minimum" - CPerParticleFloatInput m_flOutputMin; // 0x4a8 + CPerParticleFloatInput m_flOutputMin; // 0x468 // MPropertyFriendlyName "output maximum" - CPerParticleFloatInput m_flOutputMax; // 0x5e8 + CPerParticleFloatInput m_flOutputMax; // 0x5b8 // MPropertyFriendlyName "control point" - int32_t m_nStartCP; // 0x728 + int32_t m_nStartCP; // 0x708 // MPropertyFriendlyName "ensure line of sight" - bool m_bLOS; // 0x72c + bool m_bLOS; // 0x70c // MPropertyFriendlyName "LOS collision group" - char m_CollisionGroupName[128]; // 0x72d + char m_CollisionGroupName[128]; // 0x70d private: - [[maybe_unused]] uint8_t __pad07ad[0x3]; // 0x7ad + [[maybe_unused]] uint8_t __pad078d[0x3]; // 0x78d public: // MPropertyFriendlyName "Trace Set" - ParticleTraceSet_t m_nTraceSet; // 0x7b0 + ParticleTraceSet_t m_nTraceSet; // 0x790 private: - [[maybe_unused]] uint8_t __pad07b4[0x4]; // 0x7b4 + [[maybe_unused]] uint8_t __pad0794[0x4]; // 0x794 public: // MPropertyFriendlyName "Maximum Trace Length" - CPerParticleFloatInput m_flMaxTraceLength; // 0x7b8 + CPerParticleFloatInput m_flMaxTraceLength; // 0x798 // MPropertyFriendlyName "LOS Failure Scalar" - float m_flLOSScale; // 0x8f8 + float m_flLOSScale; // 0x8e8 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x8fc + ParticleSetMethod_t m_nSetMethod; // 0x8ec // MPropertyFriendlyName "only active within specified distance" - bool m_bActiveRange; // 0x900 + bool m_bActiveRange; // 0x8f0 private: - [[maybe_unused]] uint8_t __pad0901[0x3]; // 0x901 + [[maybe_unused]] uint8_t __pad08f1[0x3]; // 0x8f1 public: // MPropertyFriendlyName "distance component scale" - Vector m_vecDistanceScale; // 0x904 + Vector m_vecDistanceScale; // 0x8f4 // MPropertyFriendlyName "remap bias" - float m_flRemapBias; // 0x910 + float m_flRemapBias; // 0x900 }; // Alignment: 8 -// Size: 0x2e0 +// Size: 0x280 class C_INIT_LifespanFromVelocity : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "bias distance" // MVectorIsCoordinate - Vector m_vecComponentScale; // 0x220 + Vector m_vecComponentScale; // 0x1c0 // MPropertyFriendlyName "trace offset" - float m_flTraceOffset; // 0x22c + float m_flTraceOffset; // 0x1cc // MPropertyFriendlyName "maximum trace length" - float m_flMaxTraceLength; // 0x230 + float m_flMaxTraceLength; // 0x1d0 // MPropertyFriendlyName "trace recycle tolerance" - float m_flTraceTolerance; // 0x234 + float m_flTraceTolerance; // 0x1d4 // MPropertyFriendlyName "maximum points to cache" - int32_t m_nMaxPlanes; // 0x238 + int32_t m_nMaxPlanes; // 0x1d8 private: - [[maybe_unused]] uint8_t __pad023c[0x4]; // 0x23c + [[maybe_unused]] uint8_t __pad01dc[0x4]; // 0x1dc public: // MPropertyFriendlyName "trace collision group" - char m_CollisionGroupName[128]; // 0x240 + char m_CollisionGroupName[128]; // 0x1e0 // MPropertyFriendlyName "Trace Set" - ParticleTraceSet_t m_nTraceSet; // 0x2c0 + ParticleTraceSet_t m_nTraceSet; // 0x260 private: - [[maybe_unused]] uint8_t __pad02c4[0xc]; // 0x2c4 + [[maybe_unused]] uint8_t __pad0264[0xc]; // 0x264 public: // MPropertyFriendlyName "collide with water" - bool m_bIncludeWater; // 0x2d0 + bool m_bIncludeWater; // 0x270 }; // Alignment: 3 -// Size: 0x240 +// Size: 0x1e0 class C_INIT_CreateFromPlaneCache : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "local offset min" // MVectorIsCoordinate - Vector m_vecOffsetMin; // 0x220 + Vector m_vecOffsetMin; // 0x1c0 // MPropertyFriendlyName "local offset max" // MVectorIsCoordinate - Vector m_vecOffsetMax; // 0x22c + Vector m_vecOffsetMax; // 0x1cc private: - [[maybe_unused]] uint8_t __pad0238[0x1]; // 0x238 + [[maybe_unused]] uint8_t __pad01d8[0x1]; // 0x1d8 public: // MPropertyFriendlyName "set normal" - bool m_bUseNormal; // 0x239 + bool m_bUseNormal; // 0x1d9 }; // Alignment: 5 -// Size: 0x2b0 +// Size: 0x250 class C_INIT_ModelCull : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x220 + int32_t m_nControlPointNumber; // 0x1c0 // MPropertyFriendlyName "use only bounding box" - bool m_bBoundBox; // 0x224 + bool m_bBoundBox; // 0x1c4 // MPropertyFriendlyName "cull outside instead of inside" - bool m_bCullOutside; // 0x225 + bool m_bCullOutside; // 0x1c5 // MPropertyFriendlyName "use bones instead of hitboxes" - bool m_bUseBones; // 0x226 + bool m_bUseBones; // 0x1c6 // MPropertyFriendlyName "hitbox set" - char m_HitboxSetName[128]; // 0x227 + char m_HitboxSetName[128]; // 0x1c7 }; // Alignment: 3 -// Size: 0x370 +// Size: 0x320 class C_INIT_DistanceCull : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "control point" - int32_t m_nControlPoint; // 0x220 + int32_t m_nControlPoint; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0224[0x4]; // 0x224 + [[maybe_unused]] uint8_t __pad01c4[0x4]; // 0x1c4 public: // MPropertyFriendlyName "cull distance" - CParticleCollectionFloatInput m_flDistance; // 0x228 + CParticleCollectionFloatInput m_flDistance; // 0x1c8 // MPropertyFriendlyName "cull inside instead of outside" - bool m_bCullInside; // 0x368 + bool m_bCullInside; // 0x318 }; // Alignment: 3 -// Size: 0x370 +// Size: 0x320 class C_INIT_PlaneCull : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "control point of plane" - int32_t m_nControlPoint; // 0x220 + int32_t m_nControlPoint; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0224[0x4]; // 0x224 + [[maybe_unused]] uint8_t __pad01c4[0x4]; // 0x1c4 public: // MPropertyFriendlyName "cull offset" - CParticleCollectionFloatInput m_flDistance; // 0x228 + CParticleCollectionFloatInput m_flDistance; // 0x1c8 // MPropertyFriendlyName "flip cull normal" - bool m_bCullInside; // 0x368 + bool m_bCullInside; // 0x318 }; // Alignment: 1 -// Size: 0x360 +// Size: 0x310 class C_INIT_DistanceToNeighborCull : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "cull distance" - CPerParticleFloatInput m_flDistance; // 0x220 + CPerParticleFloatInput m_flDistance; // 0x1c0 }; // Alignment: 8 -// Size: 0x2d0 +// Size: 0x270 class C_INIT_RtEnvCull : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "test direction" // MVectorIsCoordinate - Vector m_vecTestDir; // 0x220 + Vector m_vecTestDir; // 0x1c0 // MPropertyFriendlyName "cull normal" // MVectorIsCoordinate - Vector m_vecTestNormal; // 0x22c + Vector m_vecTestNormal; // 0x1cc // MPropertyFriendlyName "use velocity for test direction" - bool m_bUseVelocity; // 0x238 + bool m_bUseVelocity; // 0x1d8 // MPropertyFriendlyName "cull on miss" - bool m_bCullOnMiss; // 0x239 + bool m_bCullOnMiss; // 0x1d9 // MPropertyFriendlyName "velocity test adjust lifespan" - bool m_bLifeAdjust; // 0x23a + bool m_bLifeAdjust; // 0x1da // MPropertyFriendlyName "ray trace environment name" - char m_RtEnvName[128]; // 0x23b + char m_RtEnvName[128]; // 0x1db private: - [[maybe_unused]] uint8_t __pad02bb[0x1]; // 0x2bb + [[maybe_unused]] uint8_t __pad025b[0x1]; // 0x25b public: // MPropertyFriendlyName "ray trace environment cp" - int32_t m_nRTEnvCP; // 0x2bc + int32_t m_nRTEnvCP; // 0x25c // MPropertyFriendlyName "rt env control point component" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nComponent; // 0x2c0 + int32_t m_nComponent; // 0x260 }; // Alignment: 2 @@ -4926,367 +4241,365 @@ public: class C_INIT_NormalAlignToCP : public CParticleFunctionInitializer { public: - // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x220 + // MPropertyFriendlyName "input" + CParticleTransformInput m_transformInput; // 0x1c0 // MPropertyFriendlyName "control point axis" - ParticleControlPointAxis_t m_nControlPointAxis; // 0x224 + ParticleControlPointAxis_t m_nControlPointAxis; // 0x228 }; // Alignment: 5 -// Size: 0x240 +// Size: 0x1e0 class C_INIT_NormalOffset : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "offset min" // MVectorIsCoordinate - Vector m_OffsetMin; // 0x220 + Vector m_OffsetMin; // 0x1c0 // MPropertyFriendlyName "offset max" // MVectorIsCoordinate - Vector m_OffsetMax; // 0x22c + Vector m_OffsetMax; // 0x1cc // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x238 + int32_t m_nControlPointNumber; // 0x1d8 // MPropertyFriendlyName "offset in local space 0/1" - bool m_bLocalCoords; // 0x23c + bool m_bLocalCoords; // 0x1dc // MPropertyFriendlyName "normalize output 0/1" - bool m_bNormalize; // 0x23d + bool m_bNormalize; // 0x1dd }; // Alignment: 10 -// Size: 0x250 +// Size: 0x1f0 class C_INIT_RemapSpeedToScalar : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x220 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c0 // MPropertyFriendlyName "control point number (ignored if per particle)" - int32_t m_nControlPointNumber; // 0x224 + int32_t m_nControlPointNumber; // 0x1c4 // MPropertyFriendlyName "emitter lifetime start time (seconds)" - float m_flStartTime; // 0x228 + float m_flStartTime; // 0x1c8 // MPropertyFriendlyName "emitter lifetime end time (seconds)" - float m_flEndTime; // 0x22c + float m_flEndTime; // 0x1cc // MPropertyFriendlyName "input minimum" - float m_flInputMin; // 0x230 + float m_flInputMin; // 0x1d0 // MPropertyFriendlyName "input maximum" - float m_flInputMax; // 0x234 + float m_flInputMax; // 0x1d4 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x238 + float m_flOutputMin; // 0x1d8 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x23c + float m_flOutputMax; // 0x1dc // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x240 + ParticleSetMethod_t m_nSetMethod; // 0x1e0 // MPropertyFriendlyName "per particle" - bool m_bPerParticle; // 0x244 + bool m_bPerParticle; // 0x1e4 }; // Alignment: 9 -// Size: 0x380 +// Size: 0x330 class C_INIT_InitFromCPSnapshot : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "snapshot control point number" - int32_t m_nControlPointNumber; // 0x220 + int32_t m_nControlPointNumber; // 0x1c0 // MPropertyFriendlyName "field to read" // MPropertyAttributeChoiceName "particlefield" - ParticleAttributeIndex_t m_nAttributeToRead; // 0x224 + ParticleAttributeIndex_t m_nAttributeToRead; // 0x1c4 // MPropertyFriendlyName "field to write" // MPropertyAttributeChoiceName "particlefield" - ParticleAttributeIndex_t m_nAttributeToWrite; // 0x228 + ParticleAttributeIndex_t m_nAttributeToWrite; // 0x1c8 // MPropertyFriendlyName "local space control point number" - int32_t m_nLocalSpaceCP; // 0x22c + int32_t m_nLocalSpaceCP; // 0x1cc // MPropertyFriendlyName "random order" - bool m_bRandom; // 0x230 + bool m_bRandom; // 0x1d0 // MPropertyFriendlyName "reverse order" - bool m_bReverse; // 0x231 + bool m_bReverse; // 0x1d1 private: - [[maybe_unused]] uint8_t __pad0232[0x6]; // 0x232 + [[maybe_unused]] uint8_t __pad01d2[0x6]; // 0x1d2 public: // MPropertyFriendlyName "Snapshot increment amount" - CParticleCollectionFloatInput m_nSnapShotIncrement; // 0x238 + CParticleCollectionFloatInput m_nSnapShotIncrement; // 0x1d8 // MPropertyFriendlyName "random seed" - int32_t m_nRandomSeed; // 0x378 + int32_t m_nRandomSeed; // 0x328 // MPropertyFriendlyName "local space angles" - bool m_bLocalSpaceAngles; // 0x37c + bool m_bLocalSpaceAngles; // 0x32c }; // Alignment: 17 -// Size: 0x260 +// Size: 0x200 class C_INIT_InitSkinnedPositionFromCPSnapshot : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "snapshot control point number" - int32_t m_nSnapshotControlPointNumber; // 0x220 + int32_t m_nSnapshotControlPointNumber; // 0x1c0 // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x224 + int32_t m_nControlPointNumber; // 0x1c4 // MPropertyFriendlyName "random order" - bool m_bRandom; // 0x228 + bool m_bRandom; // 0x1c8 private: - [[maybe_unused]] uint8_t __pad0229[0x3]; // 0x229 + [[maybe_unused]] uint8_t __pad01c9[0x3]; // 0x1c9 public: // MPropertyFriendlyName "random seed" - int32_t m_nRandomSeed; // 0x22c + int32_t m_nRandomSeed; // 0x1cc // MPropertyFriendlyName "prepare for rigid lock" - bool m_bRigid; // 0x230 + bool m_bRigid; // 0x1d0 // MPropertyFriendlyName "set normal" - bool m_bSetNormal; // 0x231 + bool m_bSetNormal; // 0x1d1 // MPropertyFriendlyName "normal velocity ignore delta time" - bool m_bIgnoreDt; // 0x232 + bool m_bIgnoreDt; // 0x1d2 private: - [[maybe_unused]] uint8_t __pad0233[0x1]; // 0x233 + [[maybe_unused]] uint8_t __pad01d3[0x1]; // 0x1d3 public: // MPropertyFriendlyName "normal velocity min" - float m_flMinNormalVelocity; // 0x234 + float m_flMinNormalVelocity; // 0x1d4 // MPropertyFriendlyName "normal velocity max" - float m_flMaxNormalVelocity; // 0x238 + float m_flMaxNormalVelocity; // 0x1d8 // MPropertyFriendlyName "particle increment amount" - float m_flIncrement; // 0x23c + float m_flIncrement; // 0x1dc // MPropertyFriendlyName "Full Loop Increment Amount" - int32_t m_nFullLoopIncrement; // 0x240 + int32_t m_nFullLoopIncrement; // 0x1e0 // MPropertyFriendlyName "Snapshot start point" - int32_t m_nSnapShotStartPoint; // 0x244 + int32_t m_nSnapShotStartPoint; // 0x1e4 // MPropertyFriendlyName "inherited bone velocity" - float m_flBoneVelocity; // 0x248 + float m_flBoneVelocity; // 0x1e8 // MPropertyFriendlyName "max inherited bone velocity" - float m_flBoneVelocityMax; // 0x24c + float m_flBoneVelocityMax; // 0x1ec // MPropertyFriendlyName "Set Color" - bool m_bCopyColor; // 0x250 + bool m_bCopyColor; // 0x1f0 // MPropertyFriendlyName "Set Alpha" - bool m_bCopyAlpha; // 0x251 + bool m_bCopyAlpha; // 0x1f1 // MPropertyFriendlyName "Set Radius" - bool m_bSetRadius; // 0x252 + bool m_bSetRadius; // 0x1f2 }; // Alignment: 1 -// Size: 0x2b0 +// Size: 0x250 class C_INIT_InitFromParentKilled : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "field to init" // MPropertyAttributeChoiceName "particlefield" - ParticleAttributeIndex_t m_nAttributeToCopy; // 0x220 + ParticleAttributeIndex_t m_nAttributeToCopy; // 0x1c0 }; // Alignment: 5 -// Size: 0x820 +// Size: 0x810 class C_INIT_InitFromVectorFieldSnapshot : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "snapshot control point number" - int32_t m_nControlPointNumber; // 0x220 + int32_t m_nControlPointNumber; // 0x1c0 // MPropertyFriendlyName "local space control point number" - int32_t m_nLocalSpaceCP; // 0x224 + int32_t m_nLocalSpaceCP; // 0x1c4 // MPropertyFriendlyName "weight update control point" - int32_t m_nWeightUpdateCP; // 0x228 + int32_t m_nWeightUpdateCP; // 0x1c8 // MPropertyFriendlyName "use vertical velocity for weighting" - bool m_bUseVerticalVelocity; // 0x22c + bool m_bUseVerticalVelocity; // 0x1cc private: - [[maybe_unused]] uint8_t __pad022d[0x3]; // 0x22d + [[maybe_unused]] uint8_t __pad01cd[0x3]; // 0x1cd public: // MPropertyFriendlyName "Component Scale" - CPerParticleVecInput m_vecScale; // 0x230 + CPerParticleVecInput m_vecScale; // 0x1d0 }; // Alignment: 6 -// Size: 0x290 +// Size: 0x250 class C_INIT_RemapInitialDirectionToTransformToVector : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "transform input" - CParticleTransformInput m_TransformInput; // 0x220 + CParticleTransformInput m_TransformInput; // 0x1c0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x270 + ParticleAttributeIndex_t m_nFieldOutput; // 0x228 // MPropertyFriendlyName "scale factor" - float m_flScale; // 0x274 + float m_flScale; // 0x22c // MPropertyFriendlyName "offset rotation" - float m_flOffsetRot; // 0x278 + float m_flOffsetRot; // 0x230 // MPropertyFriendlyName "offset axis" // MVectorIsCoordinate - Vector m_vecOffsetAxis; // 0x27c + Vector m_vecOffsetAxis; // 0x234 // MPropertyFriendlyName "normalize" - bool m_bNormalize; // 0x288 + bool m_bNormalize; // 0x240 }; // Alignment: 4 -// Size: 0x280 +// Size: 0x240 class C_INIT_RemapInitialTransformDirectionToRotation : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "transform input" - CParticleTransformInput m_TransformInput; // 0x220 + CParticleTransformInput m_TransformInput; // 0x1c0 // MPropertyFriendlyName "rotation field" // MPropertyAttributeChoiceName "particlefield_rotation" - ParticleAttributeIndex_t m_nFieldOutput; // 0x270 + ParticleAttributeIndex_t m_nFieldOutput; // 0x228 // MPropertyFriendlyName "offset rotation" - float m_flOffsetRot; // 0x274 + float m_flOffsetRot; // 0x22c // MPropertyFriendlyName "control point axis" // MPropertyAttributeChoiceName "vector_component" // MVectorIsSometimesCoordinate - int32_t m_nComponent; // 0x278 + int32_t m_nComponent; // 0x230 }; // Alignment: 1 -// Size: 0x270 +// Size: 0x230 class C_INIT_RemapQAnglesToRotation : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "transform input" - CParticleTransformInput m_TransformInput; // 0x220 + CParticleTransformInput m_TransformInput; // 0x1c0 }; // Alignment: 4 -// Size: 0x280 +// Size: 0x240 class C_INIT_RemapTransformOrientationToRotations : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "transform input" - CParticleTransformInput m_TransformInput; // 0x220 + CParticleTransformInput m_TransformInput; // 0x1c0 // MPropertyFriendlyName "offset pitch/yaw/roll" - Vector m_vecRotation; // 0x270 + Vector m_vecRotation; // 0x228 // MPropertyFriendlyName "Use Quaternians Internally" - bool m_bUseQuat; // 0x27c + bool m_bUseQuat; // 0x234 // MPropertyFriendlyName "Write normal instead of rotation" - bool m_bWriteNormal; // 0x27d + bool m_bWriteNormal; // 0x235 }; // Alignment: 4 -// Size: 0x230 +// Size: 0x1d0 class C_INIT_SetRigidAttachment : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x220 + int32_t m_nControlPointNumber; // 0x1c0 // MPropertyFriendlyName "attribute to read from" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldInput; // 0x224 + ParticleAttributeIndex_t m_nFieldInput; // 0x1c4 // MPropertyFriendlyName "attribute to cache to" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x228 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c8 // MPropertyFriendlyName "local space" - bool m_bLocalSpace; // 0x22c + bool m_bLocalSpace; // 0x1cc }; // Alignment: 5 -// Size: 0x240 +// Size: 0x1e0 class C_INIT_RemapInitialVisibilityScalar : public CParticleFunctionInitializer { -private: - [[maybe_unused]] uint8_t __pad0220[0x4]; // 0x220 public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x224 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c4 // MPropertyFriendlyName "visibility minimum" - float m_flInputMin; // 0x228 + float m_flInputMin; // 0x1c8 // MPropertyFriendlyName "visibility maximum" - float m_flInputMax; // 0x22c + float m_flInputMax; // 0x1cc // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x230 + float m_flOutputMin; // 0x1d0 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x234 + float m_flOutputMax; // 0x1d4 }; // Alignment: 1 -// Size: 0x230 +// Size: 0x1d0 class C_INIT_RadiusFromCPObject : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "control point" - int32_t m_nControlPoint; // 0x220 + int32_t m_nControlPoint; // 0x1c0 }; // Alignment: 8 -// Size: 0x240 +// Size: 0x1e0 class C_INIT_InitialSequenceFromModel : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x220 + int32_t m_nControlPointNumber; // 0x1c0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x224 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c4 // MPropertyFriendlyName "current anim time output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutputAnim; // 0x228 + ParticleAttributeIndex_t m_nFieldOutputAnim; // 0x1c8 // MPropertyFriendlyName "input minimum" - float m_flInputMin; // 0x22c + float m_flInputMin; // 0x1cc // MPropertyFriendlyName "input maximum" - float m_flInputMax; // 0x230 + float m_flInputMax; // 0x1d0 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x234 + float m_flOutputMin; // 0x1d4 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x238 + float m_flOutputMax; // 0x1d8 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x23c + ParticleSetMethod_t m_nSetMethod; // 0x1dc }; // Alignment: 6 -// Size: 0x230 +// Size: 0x1d0 class C_INIT_GlobalScale : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "scale amount" - float m_flScale; // 0x220 + float m_flScale; // 0x1c0 // MPropertyFriendlyName "scale control point number" - int32_t m_nScaleControlPointNumber; // 0x224 + int32_t m_nScaleControlPointNumber; // 0x1c4 // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x228 + int32_t m_nControlPointNumber; // 0x1c8 // MPropertyFriendlyName "scale radius" - bool m_bScaleRadius; // 0x22c + bool m_bScaleRadius; // 0x1cc // MPropertyFriendlyName "scale position" - bool m_bScalePosition; // 0x22d + bool m_bScalePosition; // 0x1cd // MPropertyFriendlyName "scale velocity" - bool m_bScaleVelocity; // 0x22e + bool m_bScaleVelocity; // 0x1ce }; // Alignment: 5 -// Size: 0x250 +// Size: 0x1f0 class C_INIT_PointList : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x220 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0224[0x4]; // 0x224 + [[maybe_unused]] uint8_t __pad01c4[0x4]; // 0x1c4 public: // MPropertyFriendlyName "point list" - CUtlVector< PointDefinition_t > m_pointList; // 0x228 + CUtlVector< PointDefinition_t > m_pointList; // 0x1c8 // MPropertyFriendlyName "space points along path" - bool m_bPlaceAlongPath; // 0x240 + bool m_bPlaceAlongPath; // 0x1e0 // MPropertyFriendlyName "Treat path as a loop" - bool m_bClosedLoop; // 0x241 + bool m_bClosedLoop; // 0x1e1 private: - [[maybe_unused]] uint8_t __pad0242[0x2]; // 0x242 + [[maybe_unused]] uint8_t __pad01e2[0x2]; // 0x1e2 public: // MPropertyFriendlyName "Numer of points along path" - int32_t m_nNumPointsAlongPath; // 0x244 + int32_t m_nNumPointsAlongPath; // 0x1e4 }; // Alignment: 6 -// Size: 0x250 +// Size: 0x1f0 class C_INIT_RandomNamedModelElement : public CParticleFunctionInitializer { public: - CStrongHandle< InfoForResourceTypeCModel > m_hModel; // 0x220 + CStrongHandle< InfoForResourceTypeCModel > m_hModel; // 0x1c0 // MPropertyFriendlyName "names" - CUtlVector< CUtlString > m_names; // 0x228 + CUtlVector< CUtlString > m_names; // 0x1c8 // MPropertyFriendlyName "shuffle" - bool m_bShuffle; // 0x240 + bool m_bShuffle; // 0x1e0 // MPropertyFriendlyName "linear" - bool m_bLinear; // 0x241 + bool m_bLinear; // 0x1e1 // MPropertyFriendlyName "model from renderer" - bool m_bModelFromRenderer; // 0x242 + bool m_bModelFromRenderer; // 0x1e2 private: - [[maybe_unused]] uint8_t __pad0243[0x1]; // 0x243 + [[maybe_unused]] uint8_t __pad01e3[0x1]; // 0x1e3 public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x244 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1e4 }; // Alignment: 0 -// Size: 0x250 +// Size: 0x1f0 class C_INIT_RandomNamedModelSequence : public C_INIT_RandomNamedModelElement { public: @@ -5294,7 +4607,7 @@ public: }; // Alignment: 0 -// Size: 0x250 +// Size: 0x1f0 class C_INIT_RandomNamedModelBodyPart : public C_INIT_RandomNamedModelElement { public: @@ -5302,7 +4615,7 @@ public: }; // Alignment: 0 -// Size: 0x250 +// Size: 0x1f0 class C_INIT_RandomNamedModelMeshGroup : public C_INIT_RandomNamedModelElement { public: @@ -5310,29 +4623,29 @@ public: }; // Alignment: 7 -// Size: 0x270 +// Size: 0x210 class C_INIT_RemapNamedModelElementToScalar : public CParticleFunctionInitializer { public: - CStrongHandle< InfoForResourceTypeCModel > m_hModel; // 0x220 + CStrongHandle< InfoForResourceTypeCModel > m_hModel; // 0x1c0 // MPropertyFriendlyName "names" - CUtlVector< CUtlString > m_names; // 0x228 + CUtlVector< CUtlString > m_names; // 0x1c8 // MPropertyFriendlyName "remap values for names" - CUtlVector< float32 > m_values; // 0x240 + CUtlVector< float32 > m_values; // 0x1e0 // MPropertyFriendlyName "input field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldInput; // 0x258 + ParticleAttributeIndex_t m_nFieldInput; // 0x1f8 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x25c + ParticleAttributeIndex_t m_nFieldOutput; // 0x1fc // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x260 + ParticleSetMethod_t m_nSetMethod; // 0x200 // MPropertyFriendlyName "model from renderer" - bool m_bModelFromRenderer; // 0x264 + bool m_bModelFromRenderer; // 0x204 }; // Alignment: 0 -// Size: 0x270 +// Size: 0x210 class C_INIT_RemapNamedModelSequenceToScalar : public C_INIT_RemapNamedModelElementToScalar { public: @@ -5340,7 +4653,7 @@ public: }; // Alignment: 0 -// Size: 0x270 +// Size: 0x210 class C_INIT_RemapNamedModelBodyPartToScalar : public C_INIT_RemapNamedModelElementToScalar { public: @@ -5348,7 +4661,7 @@ public: }; // Alignment: 0 -// Size: 0x270 +// Size: 0x210 class C_INIT_RemapNamedModelMeshGroupToScalar : public C_INIT_RemapNamedModelElementToScalar { public: @@ -5356,502 +4669,505 @@ public: }; // Alignment: 18 -// Size: 0x280 +// Size: 0x220 class C_INIT_StatusEffect : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "D_DETAIL_2" - Detail2Combo_t m_nDetail2Combo; // 0x220 + Detail2Combo_t m_nDetail2Combo; // 0x1c0 // MPropertyFriendlyName "$DETAIL2ROTATION" - float m_flDetail2Rotation; // 0x224 + float m_flDetail2Rotation; // 0x1c4 // MPropertyFriendlyName "$DETAIL2SCALE" - float m_flDetail2Scale; // 0x228 + float m_flDetail2Scale; // 0x1c8 // MPropertyFriendlyName "$DETAIL2BLENDFACTOR" - float m_flDetail2BlendFactor; // 0x22c + float m_flDetail2BlendFactor; // 0x1cc // MPropertyFriendlyName "$COLORWARPINTENSITY" - float m_flColorWarpIntensity; // 0x230 + float m_flColorWarpIntensity; // 0x1d0 // MPropertyFriendlyName "$DIFFUSEWARPBLENDTOFULL" - float m_flDiffuseWarpBlendToFull; // 0x234 + float m_flDiffuseWarpBlendToFull; // 0x1d4 // MPropertyFriendlyName "$ENVMAPINTENSITY" - float m_flEnvMapIntensity; // 0x238 + float m_flEnvMapIntensity; // 0x1d8 // MPropertyFriendlyName "$AMBIENTSCALE" - float m_flAmbientScale; // 0x23c + float m_flAmbientScale; // 0x1dc // MPropertyFriendlyName "$SPECULARCOLOR" - Color m_specularColor; // 0x240 + Color m_specularColor; // 0x1e0 // MPropertyFriendlyName "$SPECULARSCALE" - float m_flSpecularScale; // 0x244 + float m_flSpecularScale; // 0x1e4 // MPropertyFriendlyName "$SPECULAREXPONENT" - float m_flSpecularExponent; // 0x248 + float m_flSpecularExponent; // 0x1e8 // MPropertyFriendlyName "$SPECULAREXPONENTBLENDTOFULL" - float m_flSpecularExponentBlendToFull; // 0x24c + float m_flSpecularExponentBlendToFull; // 0x1ec // MPropertyFriendlyName "$SPECULARBLENDTOFULL" - float m_flSpecularBlendToFull; // 0x250 + float m_flSpecularBlendToFull; // 0x1f0 // MPropertyFriendlyName "$RIMLIGHTCOLOR" - Color m_rimLightColor; // 0x254 + Color m_rimLightColor; // 0x1f4 // MPropertyFriendlyName "$RIMLIGHTSCALE" - float m_flRimLightScale; // 0x258 + float m_flRimLightScale; // 0x1f8 // MPropertyFriendlyName "$REFLECTIONSTINTBYBASEBLENDTONONE" - float m_flReflectionsTintByBaseBlendToNone; // 0x25c + float m_flReflectionsTintByBaseBlendToNone; // 0x1fc // MPropertyFriendlyName "$METALNESSBLENDTOFULL" - float m_flMetalnessBlendToFull; // 0x260 + float m_flMetalnessBlendToFull; // 0x200 // MPropertyFriendlyName "$SELFILLUMBLENDTOFULL" - float m_flSelfIllumBlendToFull; // 0x264 + float m_flSelfIllumBlendToFull; // 0x204 }; // Alignment: 19 -// Size: 0x270 +// Size: 0x210 class C_INIT_StatusEffectCitadel : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "$SFXColorWarpAmount" - float m_flSFXColorWarpAmount; // 0x220 + float m_flSFXColorWarpAmount; // 0x1c0 // MPropertyFriendlyName "$SFXNormalAmount" - float m_flSFXNormalAmount; // 0x224 + float m_flSFXNormalAmount; // 0x1c4 // MPropertyFriendlyName "$SFXMetalnessAmount" - float m_flSFXMetalnessAmount; // 0x228 + float m_flSFXMetalnessAmount; // 0x1c8 // MPropertyFriendlyName "$SFXRoughnessAmount" - float m_flSFXRoughnessAmount; // 0x22c + float m_flSFXRoughnessAmount; // 0x1cc // MPropertyFriendlyName "$SFXSelfIllumAmount" - float m_flSFXSelfIllumAmount; // 0x230 + float m_flSFXSelfIllumAmount; // 0x1d0 // MPropertyFriendlyName "$SFXTextureScale" - float m_flSFXSScale; // 0x234 + float m_flSFXSScale; // 0x1d4 // MPropertyFriendlyName "$SFXTextureScrollX" - float m_flSFXSScrollX; // 0x238 + float m_flSFXSScrollX; // 0x1d8 // MPropertyFriendlyName "$SFXTextureScrollY" - float m_flSFXSScrollY; // 0x23c + float m_flSFXSScrollY; // 0x1dc // MPropertyFriendlyName "$SFXTextureScrollZ" - float m_flSFXSScrollZ; // 0x240 + float m_flSFXSScrollZ; // 0x1e0 // MPropertyFriendlyName "$SFXTextureOffsetX" - float m_flSFXSOffsetX; // 0x244 + float m_flSFXSOffsetX; // 0x1e4 // MPropertyFriendlyName "$SFXTextureOffsetY" - float m_flSFXSOffsetY; // 0x248 + float m_flSFXSOffsetY; // 0x1e8 // MPropertyFriendlyName "$SFXTextureOffsetZ" - float m_flSFXSOffsetZ; // 0x24c + float m_flSFXSOffsetZ; // 0x1ec // MPropertyFriendlyName "D_DETAIL" - DetailCombo_t m_nDetailCombo; // 0x250 + DetailCombo_t m_nDetailCombo; // 0x1f0 // MPropertyFriendlyName "$SFXDetailAmount" - float m_flSFXSDetailAmount; // 0x254 + float m_flSFXSDetailAmount; // 0x1f4 // MPropertyFriendlyName "$SFXDetailTextureScale" - float m_flSFXSDetailScale; // 0x258 + float m_flSFXSDetailScale; // 0x1f8 // MPropertyFriendlyName "$SFXDetailTextureScrollX" - float m_flSFXSDetailScrollX; // 0x25c + float m_flSFXSDetailScrollX; // 0x1fc // MPropertyFriendlyName "$SFXDetailTextureScrollY" - float m_flSFXSDetailScrollY; // 0x260 + float m_flSFXSDetailScrollY; // 0x200 // MPropertyFriendlyName "$SFXDetailTextureScrollZ" - float m_flSFXSDetailScrollZ; // 0x264 + float m_flSFXSDetailScrollZ; // 0x204 // MPropertyFriendlyName "$SFXUseModelUVs" - float m_flSFXSUseModelUVs; // 0x268 + float m_flSFXSUseModelUVs; // 0x208 }; // Alignment: 5 -// Size: 0x5f0 +// Size: 0x5c0 class C_INIT_CreateParticleImpulse : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "radius" - CPerParticleFloatInput m_InputRadius; // 0x220 + CPerParticleFloatInput m_InputRadius; // 0x1c0 // MPropertyFriendlyName "magnitude" - CPerParticleFloatInput m_InputMagnitude; // 0x360 + CPerParticleFloatInput m_InputMagnitude; // 0x310 // MPropertyFriendlyName "force falloff function" - ParticleFalloffFunction_t m_nFalloffFunction; // 0x4a0 + ParticleFalloffFunction_t m_nFalloffFunction; // 0x460 private: - [[maybe_unused]] uint8_t __pad04a4[0x4]; // 0x4a4 + [[maybe_unused]] uint8_t __pad0464[0x4]; // 0x464 public: // MPropertyFriendlyName "exponential falloff exponent" - CPerParticleFloatInput m_InputFalloffExp; // 0x4a8 + CPerParticleFloatInput m_InputFalloffExp; // 0x468 // MPropertyFriendlyName "impulse type" - ParticleImpulseType_t m_nImpulseType; // 0x5e8 + ParticleImpulseType_t m_nImpulseType; // 0x5b8 }; // Alignment: 2 -// Size: 0x370 +// Size: 0x320 class C_INIT_QuantizeFloat : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "interval to snap to" - CPerParticleFloatInput m_InputValue; // 0x220 + CPerParticleFloatInput m_InputValue; // 0x1c0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nOutputField; // 0x360 + ParticleAttributeIndex_t m_nOutputField; // 0x310 }; // Alignment: 6 -// Size: 0xe70 +// Size: 0xeb0 class C_INIT_SetVectorAttributeToVectorExpression : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "expression" - VectorExpressionType_t m_nExpression; // 0x220 + VectorExpressionType_t m_nExpression; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0224[0x4]; // 0x224 + [[maybe_unused]] uint8_t __pad01c4[0x4]; // 0x1c4 public: // MPropertyFriendlyName "input 1" - CPerParticleVecInput m_vInput1; // 0x228 + CPerParticleVecInput m_vInput1; // 0x1c8 // MPropertyFriendlyName "input 2" - CPerParticleVecInput m_vInput2; // 0x810 + CPerParticleVecInput m_vInput2; // 0x800 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nOutputField; // 0xdf8 + ParticleAttributeIndex_t m_nOutputField; // 0xe38 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0xdfc + ParticleSetMethod_t m_nSetMethod; // 0xe3c // MPropertyFriendlyName "normalize result" - bool m_bNormalizedOutput; // 0xe00 + bool m_bNormalizedOutput; // 0xe40 }; // Alignment: 2 -// Size: 0x370 +// Size: 0x320 class C_INIT_InitFloatCollection : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "value" - CParticleCollectionFloatInput m_InputValue; // 0x220 + CParticleCollectionFloatInput m_InputValue; // 0x1c0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nOutputField; // 0x360 + ParticleAttributeIndex_t m_nOutputField; // 0x310 }; // Alignment: 4 -// Size: 0x4b0 +// Size: 0x470 class C_INIT_InitFloat : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "value" - CPerParticleFloatInput m_InputValue; // 0x220 + CPerParticleFloatInput m_InputValue; // 0x1c0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nOutputField; // 0x360 + ParticleAttributeIndex_t m_nOutputField; // 0x310 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x364 + ParticleSetMethod_t m_nSetMethod; // 0x314 // MPropertyFriendlyName "per-particle strength" - CPerParticleFloatInput m_InputStrength; // 0x368 + CPerParticleFloatInput m_InputStrength; // 0x318 }; // Alignment: 2 -// Size: 0x810 +// Size: 0x800 class C_INIT_InitVecCollection : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "value" - CParticleCollectionVecInput m_InputValue; // 0x220 + CParticleCollectionVecInput m_InputValue; // 0x1c0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nOutputField; // 0x808 + ParticleAttributeIndex_t m_nOutputField; // 0x7f8 }; // Alignment: 5 -// Size: 0x820 +// Size: 0x810 class C_INIT_InitVec : public CParticleFunctionInitializer { public: // MPropertyFriendlyName "value" - CPerParticleVecInput m_InputValue; // 0x220 + CPerParticleVecInput m_InputValue; // 0x1c0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nOutputField; // 0x808 + ParticleAttributeIndex_t m_nOutputField; // 0x7f8 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x80c + ParticleSetMethod_t m_nSetMethod; // 0x7fc // MPropertyFriendlyName "normalize result" - bool m_bNormalizedOutput; // 0x810 + bool m_bNormalizedOutput; // 0x800 // MPropertyFriendlyName "set previous position" // MPropertySuppressExpr "m_nOutputField != PARTICLE_ATTRIBUTE_XYZ" - bool m_bWritePreviousPosition; // 0x811 + bool m_bWritePreviousPosition; // 0x801 }; // Alignment: 5 -// Size: 0x4b0 +// Size: 0x470 class C_OP_InstantaneousEmitter : public CParticleFunctionEmitter { public: // MPropertyFriendlyName "num to emit" // MPropertyAttributeRange "1 1000" - CParticleCollectionFloatInput m_nParticlesToEmit; // 0x220 + CParticleCollectionFloatInput m_nParticlesToEmit; // 0x1c0 // MPropertyFriendlyName "emission start time" - CParticleCollectionFloatInput m_flStartTime; // 0x360 + CParticleCollectionFloatInput m_flStartTime; // 0x310 // MPropertyFriendlyName "emission scale from killed parent particles" - float m_flInitFromKilledParentParticles; // 0x4a0 + float m_flInitFromKilledParentParticles; // 0x460 // MPropertyFriendlyName "maximum emission per frame" - int32_t m_nMaxEmittedPerFrame; // 0x4a4 + int32_t m_nMaxEmittedPerFrame; // 0x464 // MPropertyFriendlyName "control point with snapshot data" - int32_t m_nSnapshotControlPoint; // 0x4a8 + int32_t m_nSnapshotControlPoint; // 0x468 }; // Alignment: 10 -// Size: 0x600 +// Size: 0x5d0 class C_OP_ContinuousEmitter : public CParticleFunctionEmitter { public: // MPropertyFriendlyName "emission duration" - CParticleCollectionFloatInput m_flEmissionDuration; // 0x220 + CParticleCollectionFloatInput m_flEmissionDuration; // 0x1c0 // MPropertyFriendlyName "emission start time" - CParticleCollectionFloatInput m_flStartTime; // 0x360 + CParticleCollectionFloatInput m_flStartTime; // 0x310 // MPropertyFriendlyName "emission rate" - CParticleCollectionFloatInput m_flEmitRate; // 0x4a0 + CParticleCollectionFloatInput m_flEmitRate; // 0x460 // MPropertyFriendlyName "scale emission to used control points" // MParticleMaxVersion - float m_flEmissionScale; // 0x5e0 + float m_flEmissionScale; // 0x5b0 // MPropertyFriendlyName "scale emission by parent particle count" - float m_flScalePerParentParticle; // 0x5e4 + float m_flScalePerParentParticle; // 0x5b4 // MPropertyFriendlyName "emit particles for killed parent particles" - bool m_bInitFromKilledParentParticles; // 0x5e8 + bool m_bInitFromKilledParentParticles; // 0x5b8 private: - [[maybe_unused]] uint8_t __pad05e9[0x3]; // 0x5e9 + [[maybe_unused]] uint8_t __pad05b9[0x3]; // 0x5b9 public: // MPropertyFriendlyName "control point with snapshot data" - int32_t m_nSnapshotControlPoint; // 0x5ec + int32_t m_nSnapshotControlPoint; // 0x5bc // MPropertyFriendlyName "limit per update" - int32_t m_nLimitPerUpdate; // 0x5f0 + int32_t m_nLimitPerUpdate; // 0x5c0 // MPropertyFriendlyName "force emit on first update" - bool m_bForceEmitOnFirstUpdate; // 0x5f4 + bool m_bForceEmitOnFirstUpdate; // 0x5c4 // MPropertyFriendlyName "force emit on last update" - bool m_bForceEmitOnLastUpdate; // 0x5f5 + bool m_bForceEmitOnLastUpdate; // 0x5c5 }; // Alignment: 15 -// Size: 0x260 +// Size: 0x200 class C_OP_NoiseEmitter : public CParticleFunctionEmitter { public: // MPropertyFriendlyName "emission duration" - float m_flEmissionDuration; // 0x220 + float m_flEmissionDuration; // 0x1c0 // MPropertyFriendlyName "emission start time" - float m_flStartTime; // 0x224 + float m_flStartTime; // 0x1c4 // MPropertyFriendlyName "scale emission to used control points" // MParticleMaxVersion - float m_flEmissionScale; // 0x228 + float m_flEmissionScale; // 0x1c8 // MPropertyFriendlyName "emission count scale control point" - int32_t m_nScaleControlPoint; // 0x22c + int32_t m_nScaleControlPoint; // 0x1cc // MPropertyFriendlyName "emission count scale control point field" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nScaleControlPointField; // 0x230 + int32_t m_nScaleControlPointField; // 0x1d0 // MPropertyFriendlyName "world noise scale control point" - int32_t m_nWorldNoisePoint; // 0x234 + int32_t m_nWorldNoisePoint; // 0x1d4 // MPropertyFriendlyName "absolute value" - bool m_bAbsVal; // 0x238 + bool m_bAbsVal; // 0x1d8 // MPropertyFriendlyName "invert absolute value" - bool m_bAbsValInv; // 0x239 + bool m_bAbsValInv; // 0x1d9 private: - [[maybe_unused]] uint8_t __pad023a[0x2]; // 0x23a + [[maybe_unused]] uint8_t __pad01da[0x2]; // 0x1da public: // MPropertyFriendlyName "time coordinate offset" - float m_flOffset; // 0x23c + float m_flOffset; // 0x1dc // MPropertyFriendlyName "emission minimum" - float m_flOutputMin; // 0x240 + float m_flOutputMin; // 0x1e0 // MPropertyFriendlyName "emission maximum" - float m_flOutputMax; // 0x244 + float m_flOutputMax; // 0x1e4 // MPropertyFriendlyName "time noise coordinate scale" - float m_flNoiseScale; // 0x248 + float m_flNoiseScale; // 0x1e8 // MPropertyFriendlyName "world spatial noise coordinate scale" - float m_flWorldNoiseScale; // 0x24c + float m_flWorldNoiseScale; // 0x1ec // MPropertyFriendlyName "spatial coordinate offset" // MVectorIsCoordinate - Vector m_vecOffsetLoc; // 0x250 + Vector m_vecOffsetLoc; // 0x1f0 // MPropertyFriendlyName "world time noise coordinate scale" - float m_flWorldTimeScale; // 0x25c + float m_flWorldTimeScale; // 0x1fc }; // Alignment: 8 -// Size: 0x4c0 +// Size: 0x5d0 class C_OP_MaintainEmitter : public CParticleFunctionEmitter { public: // MPropertyFriendlyName "count to maintain" - int32_t m_nParticlesToMaintain; // 0x220 + CParticleCollectionFloatInput m_nParticlesToMaintain; // 0x1c0 // MPropertyFriendlyName "emission start time" - float m_flStartTime; // 0x224 - // MPropertyFriendlyName "emission duration" - CParticleCollectionFloatInput m_flEmissionDuration; // 0x228 - // MPropertyFriendlyName "emission rate" - float m_flEmissionRate; // 0x368 - // MPropertyFriendlyName "control point with snapshot data" - int32_t m_nSnapshotControlPoint; // 0x36c - // MPropertyFriendlyName "group emission times for new particles" - bool m_bEmitInstantaneously; // 0x370 - // MPropertyFriendlyName "perform final emit on stop" - bool m_bFinalEmitOnStop; // 0x371 + float m_flStartTime; // 0x310 private: - [[maybe_unused]] uint8_t __pad0372[0x6]; // 0x372 + [[maybe_unused]] uint8_t __pad0314[0x4]; // 0x314 +public: + // MPropertyFriendlyName "emission duration" + CParticleCollectionFloatInput m_flEmissionDuration; // 0x318 + // MPropertyFriendlyName "emission rate" + float m_flEmissionRate; // 0x468 + // MPropertyFriendlyName "control point with snapshot data" + int32_t m_nSnapshotControlPoint; // 0x46c + // MPropertyFriendlyName "group emission times for new particles" + bool m_bEmitInstantaneously; // 0x470 + // MPropertyFriendlyName "perform final emit on stop" + bool m_bFinalEmitOnStop; // 0x471 +private: + [[maybe_unused]] uint8_t __pad0472[0x6]; // 0x472 public: // MPropertyFriendlyName "total count scale" - CParticleCollectionFloatInput m_flScale; // 0x378 + CParticleCollectionFloatInput m_flScale; // 0x478 }; // Alignment: 2 -// Size: 0x230 +// Size: 0x1d0 class C_OP_RandomForce : public CParticleFunctionForce { public: // MPropertyFriendlyName "min force" // MVectorIsCoordinate - Vector m_MinForce; // 0x210 + Vector m_MinForce; // 0x1b0 // MPropertyFriendlyName "max force" // MVectorIsCoordinate - Vector m_MaxForce; // 0x21c + Vector m_MaxForce; // 0x1bc }; // Alignment: 2 -// Size: 0x360 +// Size: 0x310 class C_OP_CPVelocityForce : public CParticleFunctionForce { public: // MPropertyFriendlyName "control point" - int32_t m_nControlPointNumber; // 0x210 + int32_t m_nControlPointNumber; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "velocity scale" - CPerParticleFloatInput m_flScale; // 0x218 + CPerParticleFloatInput m_flScale; // 0x1b8 }; // Alignment: 3 -// Size: 0x230 +// Size: 0x1d0 class C_OP_ParentVortices : public CParticleFunctionForce { public: // MPropertyFriendlyName "amount of force" - float m_flForceScale; // 0x210 + float m_flForceScale; // 0x1b0 // MPropertyFriendlyName "twist axis" // MVectorIsCoordinate - Vector m_vecTwistAxis; // 0x214 + Vector m_vecTwistAxis; // 0x1b4 // MPropertyFriendlyName "flip twist axis with yaw" - bool m_bFlipBasedOnYaw; // 0x220 + bool m_bFlipBasedOnYaw; // 0x1c0 }; // Alignment: 4 -// Size: 0x230 +// Size: 0x1d0 class C_OP_TwistAroundAxis : public CParticleFunctionForce { public: // MPropertyFriendlyName "amount of force" - float m_fForceAmount; // 0x210 + float m_fForceAmount; // 0x1b0 // MPropertyFriendlyName "twist axis" // MVectorIsCoordinate - Vector m_TwistAxis; // 0x214 + Vector m_TwistAxis; // 0x1b4 // MPropertyFriendlyName "object local space axis 0/1" - bool m_bLocalSpace; // 0x220 + bool m_bLocalSpace; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0221[0x3]; // 0x221 + [[maybe_unused]] uint8_t __pad01c1[0x3]; // 0x1c1 public: // MPropertyFriendlyName "control point" - int32_t m_nControlPointNumber; // 0x224 + int32_t m_nControlPointNumber; // 0x1c4 }; // Alignment: 6 -// Size: 0x500 +// Size: 0x4e0 class C_OP_AttractToControlPoint : public CParticleFunctionForce { public: // MPropertyFriendlyName "component scale" // MVectorIsCoordinate - Vector m_vecComponentScale; // 0x210 + Vector m_vecComponentScale; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad021c[0x4]; // 0x21c + [[maybe_unused]] uint8_t __pad01bc[0x4]; // 0x1bc public: // MPropertyFriendlyName "amount of force (or Max Force)" - CPerParticleFloatInput m_fForceAmount; // 0x220 + CPerParticleFloatInput m_fForceAmount; // 0x1c0 // MPropertyFriendlyName "falloff power" - float m_fFalloffPower; // 0x360 + float m_fFalloffPower; // 0x310 private: - [[maybe_unused]] uint8_t __pad0364[0x4]; // 0x364 + [[maybe_unused]] uint8_t __pad0314[0x4]; // 0x314 public: // MPropertyFriendlyName "input position transform" - CParticleTransformInput m_TransformInput; // 0x368 + CParticleTransformInput m_TransformInput; // 0x318 // MPropertyFriendlyName "Min Pullforce" - CPerParticleFloatInput m_fForceAmountMin; // 0x3b8 + CPerParticleFloatInput m_fForceAmountMin; // 0x380 // MPropertyFriendlyName "Apply Min Pullforce" - bool m_bApplyMinForce; // 0x4f8 + bool m_bApplyMinForce; // 0x4d0 }; // Alignment: 7 -// Size: 0x250 +// Size: 0x1f0 class C_OP_ForceBasedOnDistanceToPlane : public CParticleFunctionForce { public: // MPropertyFriendlyName "min distance from plane" - float m_flMinDist; // 0x210 + float m_flMinDist; // 0x1b0 // MPropertyFriendlyName "force at min distance" // MVectorIsCoordinate - Vector m_vecForceAtMinDist; // 0x214 + Vector m_vecForceAtMinDist; // 0x1b4 // MPropertyFriendlyName "max distance from plane" - float m_flMaxDist; // 0x220 + float m_flMaxDist; // 0x1c0 // MPropertyFriendlyName "force at max distance" // MVectorIsCoordinate - Vector m_vecForceAtMaxDist; // 0x224 + Vector m_vecForceAtMaxDist; // 0x1c4 // MPropertyFriendlyName "plane normal" // MVectorIsCoordinate - Vector m_vecPlaneNormal; // 0x230 + Vector m_vecPlaneNormal; // 0x1d0 // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x23c + int32_t m_nControlPointNumber; // 0x1dc // MPropertyFriendlyName "exponent" - float m_flExponent; // 0x240 + float m_flExponent; // 0x1e0 }; // Alignment: 4 -// Size: 0x230 +// Size: 0x1d0 class C_OP_TimeVaryingForce : public CParticleFunctionForce { public: // MPropertyFriendlyName "time to start transition" - float m_flStartLerpTime; // 0x210 + float m_flStartLerpTime; // 0x1b0 // MPropertyFriendlyName "starting force" // MVectorIsCoordinate - Vector m_StartingForce; // 0x214 + Vector m_StartingForce; // 0x1b4 // MPropertyFriendlyName "time to end transition" - float m_flEndLerpTime; // 0x220 + float m_flEndLerpTime; // 0x1c0 // MPropertyFriendlyName "ending force" // MVectorIsCoordinate - Vector m_EndingForce; // 0x224 + Vector m_EndingForce; // 0x1c4 }; // Alignment: 8 -// Size: 0x250 +// Size: 0x1f0 class C_OP_TurbulenceForce : public CParticleFunctionForce { public: // MPropertyFriendlyName "noise scale 0" - float m_flNoiseCoordScale0; // 0x210 + float m_flNoiseCoordScale0; // 0x1b0 // MPropertyFriendlyName "noise scale 1" - float m_flNoiseCoordScale1; // 0x214 + float m_flNoiseCoordScale1; // 0x1b4 // MPropertyFriendlyName "noise scale 2" - float m_flNoiseCoordScale2; // 0x218 + float m_flNoiseCoordScale2; // 0x1b8 // MPropertyFriendlyName "noise scale 3" - float m_flNoiseCoordScale3; // 0x21c + float m_flNoiseCoordScale3; // 0x1bc // MPropertyFriendlyName "noise amount 0" // MVectorIsCoordinate - Vector m_vecNoiseAmount0; // 0x220 + Vector m_vecNoiseAmount0; // 0x1c0 // MPropertyFriendlyName "noise amount 1" // MVectorIsCoordinate - Vector m_vecNoiseAmount1; // 0x22c + Vector m_vecNoiseAmount1; // 0x1cc // MPropertyFriendlyName "noise amount 2" // MVectorIsCoordinate - Vector m_vecNoiseAmount2; // 0x238 + Vector m_vecNoiseAmount2; // 0x1d8 // MPropertyFriendlyName "noise amount 3" // MVectorIsCoordinate - Vector m_vecNoiseAmount3; // 0x244 + Vector m_vecNoiseAmount3; // 0x1e4 }; // Alignment: 6 -// Size: 0x1650 +// Size: 0x1700 class C_OP_CurlNoiseForce : public CParticleFunctionForce { public: // MPropertyFriendlyName "noise type" - ParticleDirectionNoiseType_t m_nNoiseType; // 0x210 + ParticleDirectionNoiseType_t m_nNoiseType; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "noise frequency" // MVectorIsCoordinate - CPerParticleVecInput m_vecNoiseFreq; // 0x218 + CPerParticleVecInput m_vecNoiseFreq; // 0x1b8 // MPropertyFriendlyName "noise amplitude" // MVectorIsCoordinate - CPerParticleVecInput m_vecNoiseScale; // 0x800 + CPerParticleVecInput m_vecNoiseScale; // 0x7f0 // MPropertyFriendlyName "offset rate" // MVectorIsCoordinate - CPerParticleVecInput m_vecOffsetRate; // 0xde8 + CPerParticleVecInput m_vecOffsetRate; // 0xe28 // MPropertyFriendlyName "worley seed" - CPerParticleFloatInput m_flWorleySeed; // 0x13d0 + CPerParticleFloatInput m_flWorleySeed; // 0x1460 // MPropertyFriendlyName "worley jitter" - CPerParticleFloatInput m_flWorleyJitter; // 0x1510 + CPerParticleFloatInput m_flWorleyJitter; // 0x15b0 }; // Alignment: 3 @@ -5860,995 +5176,969 @@ class C_OP_PerParticleForce : public CParticleFunctionForce { public: // MPropertyFriendlyName "force scale" - CPerParticleFloatInput m_flForceScale; // 0x210 + CPerParticleFloatInput m_flForceScale; // 0x1b0 // MPropertyFriendlyName "force to apply" // MVectorIsCoordinate - CPerParticleVecInput m_vForce; // 0x350 + CPerParticleVecInput m_vForce; // 0x300 // MPropertyFriendlyName "local space control point" int32_t m_nCP; // 0x938 }; // Alignment: 1 -// Size: 0x220 +// Size: 0x1c0 class C_OP_WindForce : public CParticleFunctionForce { public: // MPropertyFriendlyName "force to apply" // MVectorIsCoordinate - Vector m_vForce; // 0x210 + Vector m_vForce; // 0x1b0 }; // Alignment: 4 -// Size: 0xdf0 +// Size: 0xe30 class C_OP_ExternalWindForce : public CParticleFunctionForce { public: // MPropertyFriendlyName "sample position" - CPerParticleVecInput m_vecSamplePosition; // 0x210 + CPerParticleVecInput m_vecSamplePosition; // 0x1b0 // MPropertyFriendlyName "force scale" - CPerParticleVecInput m_vecScale; // 0x7f8 + CPerParticleVecInput m_vecScale; // 0x7e8 // MPropertyFriendlyName "sample wind" - bool m_bSampleWind; // 0xde0 + bool m_bSampleWind; // 0xe20 // MPropertyFriendlyName "sample water current" - bool m_bSampleWater; // 0xde1 + bool m_bSampleWater; // 0xe21 }; // Alignment: 5 -// Size: 0x360 +// Size: 0x310 class C_OP_ExternalGameImpulseForce : public CParticleFunctionForce { public: // MPropertyFriendlyName "force scale" - CPerParticleFloatInput m_flForceScale; // 0x210 + CPerParticleFloatInput m_flForceScale; // 0x1b0 // MPropertyFriendlyName "rope shake" - bool m_bRopes; // 0x350 + bool m_bRopes; // 0x300 // MPropertyFriendlyName "limit rope impulses to Z" - bool m_bRopesZOnly; // 0x351 + bool m_bRopesZOnly; // 0x301 // MPropertyFriendlyName "explosions" - bool m_bExplosions; // 0x352 + bool m_bExplosions; // 0x302 // MPropertyFriendlyName "particle systems" - bool m_bParticles; // 0x353 + bool m_bParticles; // 0x303 }; // Alignment: 3 -// Size: 0x800 +// Size: 0x7f0 class C_OP_LocalAccelerationForce : public CParticleFunctionForce { public: // MPropertyFriendlyName "local space control point" - int32_t m_nCP; // 0x210 + int32_t m_nCP; // 0x1b0 // MPropertyFriendlyName "scale control point" - int32_t m_nScaleCP; // 0x214 + int32_t m_nScaleCP; // 0x1b4 // MPropertyFriendlyName "local space acceleration" - CParticleCollectionVecInput m_vecAccel; // 0x218 -}; - -// Alignment: 1 -// Size: 0x220 -class C_OP_ScreenForceFromPlayerView : public CParticleFunctionForce -{ -public: - // MPropertyFriendlyName "Acceleration" - float m_flAccel; // 0x210 -}; - -// Alignment: 5 -// Size: 0x230 -class C_OP_ExternalGenericForce : public CParticleFunctionForce -{ -public: - // MPropertyFriendlyName "strength" - float m_flStrength; // 0x210 - // MPropertyFriendlyName "curl strength" - float m_flCurlStrength; // 0x214 - // MPropertyFriendlyName "linear strength" - float m_flLinearStrength; // 0x218 - // MPropertyFriendlyName "radial strength" - float m_flRadialStrength; // 0x21c - // MPropertyFriendlyName "rotation strength" - float m_flRotationStrength; // 0x220 + CParticleCollectionVecInput m_vecAccel; // 0x1b8 }; // Alignment: 2 -// Size: 0x220 +// Size: 0x1c0 class C_OP_DensityForce : public CParticleFunctionForce { public: // MPropertyFriendlyName "Radius scale for particle influence" - float m_flRadiusScale; // 0x210 + float m_flRadiusScale; // 0x1b0 // MPropertyFriendlyName "Scale of force" - float m_flForceScale; // 0x214 + float m_flForceScale; // 0x1b4 }; // Alignment: 3 -// Size: 0x230 +// Size: 0x940 class C_OP_BasicMovement : public CParticleFunctionOperator { public: // MPropertyFriendlyName "gravity" // MVectorIsCoordinate - Vector m_Gravity; // 0x210 + CParticleCollectionVecInput m_Gravity; // 0x1b0 // MPropertyFriendlyName "drag" // MPropertyAttributeRange "-1 1" - float m_fDrag; // 0x21c + CParticleCollectionFloatInput m_fDrag; // 0x7e8 // MPropertyFriendlyName "max constraint passes" - int32_t m_nMaxConstraintPasses; // 0x220 + int32_t m_nMaxConstraintPasses; // 0x938 }; // Alignment: 7 -// Size: 0x230 +// Size: 0x1d0 class C_OP_FadeAndKill : public CParticleFunctionOperator { public: // MPropertyFriendlyName "start fade in time" - float m_flStartFadeInTime; // 0x210 + float m_flStartFadeInTime; // 0x1b0 // MPropertyFriendlyName "end fade in time" - float m_flEndFadeInTime; // 0x214 + float m_flEndFadeInTime; // 0x1b4 // MPropertyFriendlyName "start fade out time" - float m_flStartFadeOutTime; // 0x218 + float m_flStartFadeOutTime; // 0x1b8 // MPropertyFriendlyName "end fade out time" - float m_flEndFadeOutTime; // 0x21c + float m_flEndFadeOutTime; // 0x1bc // MPropertyFriendlyName "start alpha" - float m_flStartAlpha; // 0x220 + float m_flStartAlpha; // 0x1c0 // MPropertyFriendlyName "end alpha" - float m_flEndAlpha; // 0x224 + float m_flEndAlpha; // 0x1c4 // MPropertyFriendlyName "force preserving particle order" - bool m_bForcePreserveParticleOrder; // 0x228 + bool m_bForcePreserveParticleOrder; // 0x1c8 }; // Alignment: 6 -// Size: 0x230 +// Size: 0x1d0 class C_OP_FadeAndKillForTracers : public CParticleFunctionOperator { public: // MPropertyFriendlyName "start fade in time" - float m_flStartFadeInTime; // 0x210 + float m_flStartFadeInTime; // 0x1b0 // MPropertyFriendlyName "end fade in time" - float m_flEndFadeInTime; // 0x214 + float m_flEndFadeInTime; // 0x1b4 // MPropertyFriendlyName "start fade out time" - float m_flStartFadeOutTime; // 0x218 + float m_flStartFadeOutTime; // 0x1b8 // MPropertyFriendlyName "end fade out time" - float m_flEndFadeOutTime; // 0x21c + float m_flEndFadeOutTime; // 0x1bc // MPropertyFriendlyName "start alpha" - float m_flStartAlpha; // 0x220 + float m_flStartAlpha; // 0x1c0 // MPropertyFriendlyName "end alpha" - float m_flEndAlpha; // 0x224 + float m_flEndAlpha; // 0x1c4 }; // Alignment: 4 -// Size: 0x220 +// Size: 0x1c0 class C_OP_FadeIn : public CParticleFunctionOperator { public: // MPropertyFriendlyName "fade in time min" - float m_flFadeInTimeMin; // 0x210 + float m_flFadeInTimeMin; // 0x1b0 // MPropertyFriendlyName "fade in time max" - float m_flFadeInTimeMax; // 0x214 + float m_flFadeInTimeMax; // 0x1b4 // MPropertyFriendlyName "fade in time exponent" - float m_flFadeInTimeExp; // 0x218 + float m_flFadeInTimeExp; // 0x1b8 // MPropertyFriendlyName "proportional 0/1" - bool m_bProportional; // 0x21c + bool m_bProportional; // 0x1bc }; // Alignment: 6 -// Size: 0x260 +// Size: 0x200 class C_OP_FadeOut : public CParticleFunctionOperator { public: // MPropertyFriendlyName "fade out time min" - float m_flFadeOutTimeMin; // 0x210 + float m_flFadeOutTimeMin; // 0x1b0 // MPropertyFriendlyName "fade out time max" - float m_flFadeOutTimeMax; // 0x214 + float m_flFadeOutTimeMax; // 0x1b4 // MPropertyFriendlyName "fade out time exponent" - float m_flFadeOutTimeExp; // 0x218 + float m_flFadeOutTimeExp; // 0x1b8 // MPropertyFriendlyName "fade bias" - float m_flFadeBias; // 0x21c + float m_flFadeBias; // 0x1bc private: - [[maybe_unused]] uint8_t __pad0220[0x30]; // 0x220 + [[maybe_unused]] uint8_t __pad01c0[0x30]; // 0x1c0 public: // MPropertyFriendlyName "proportional 0/1" - bool m_bProportional; // 0x250 + bool m_bProportional; // 0x1f0 // MPropertyFriendlyName "ease in and out" - bool m_bEaseInAndOut; // 0x251 + bool m_bEaseInAndOut; // 0x1f1 }; // Alignment: 2 -// Size: 0x220 +// Size: 0x1c0 class C_OP_FadeInSimple : public CParticleFunctionOperator { public: // MPropertyFriendlyName "proportional fade in time" - float m_flFadeInTime; // 0x210 + float m_flFadeInTime; // 0x1b0 // MPropertyFriendlyName "alpha field" // MPropertyAttributeChoiceName "particlefield_alpha" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 }; // Alignment: 2 -// Size: 0x220 +// Size: 0x1c0 class C_OP_FadeOutSimple : public CParticleFunctionOperator { public: // MPropertyFriendlyName "proportional fade out time" - float m_flFadeOutTime; // 0x210 + float m_flFadeOutTime; // 0x1b0 // MPropertyFriendlyName "alpha field" // MPropertyAttributeChoiceName "particlefield_alpha" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 }; // Alignment: 3 -// Size: 0x4a0 +// Size: 0x460 class C_OP_ClampScalar : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "output minimum" - CPerParticleFloatInput m_flOutputMin; // 0x218 + CPerParticleFloatInput m_flOutputMin; // 0x1b8 // MPropertyFriendlyName "output maximum" - CPerParticleFloatInput m_flOutputMax; // 0x358 + CPerParticleFloatInput m_flOutputMax; // 0x308 }; // Alignment: 3 -// Size: 0xdf0 +// Size: 0xe30 class C_OP_ClampVector : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "output minimum" // MVectorIsSometimesCoordinate - CPerParticleVecInput m_vecOutputMin; // 0x218 + CPerParticleVecInput m_vecOutputMin; // 0x1b8 // MPropertyFriendlyName "output maximum" // MVectorIsSometimesCoordinate - CPerParticleVecInput m_vecOutputMax; // 0x800 + CPerParticleVecInput m_vecOutputMax; // 0x7f0 }; // Alignment: 13 -// Size: 0x240 +// Size: 0x1e0 class C_OP_OscillateScalar : public CParticleFunctionOperator { public: // MPropertyFriendlyName "oscillation rate min" - float m_RateMin; // 0x210 + float m_RateMin; // 0x1b0 // MPropertyFriendlyName "oscillation rate max" - float m_RateMax; // 0x214 + float m_RateMax; // 0x1b4 // MPropertyFriendlyName "oscillation frequency min" - float m_FrequencyMin; // 0x218 + float m_FrequencyMin; // 0x1b8 // MPropertyFriendlyName "oscillation frequency max" - float m_FrequencyMax; // 0x21c + float m_FrequencyMax; // 0x1bc // MPropertyFriendlyName "oscillation field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nField; // 0x220 + ParticleAttributeIndex_t m_nField; // 0x1c0 // MPropertyFriendlyName "proportional 0/1" - bool m_bProportional; // 0x224 + bool m_bProportional; // 0x1c4 // MPropertyFriendlyName "start/end proportional" - bool m_bProportionalOp; // 0x225 + bool m_bProportionalOp; // 0x1c5 private: - [[maybe_unused]] uint8_t __pad0226[0x2]; // 0x226 + [[maybe_unused]] uint8_t __pad01c6[0x2]; // 0x1c6 public: // MPropertyFriendlyName "start time min" - float m_flStartTime_min; // 0x228 + float m_flStartTime_min; // 0x1c8 // MPropertyFriendlyName "start time max" - float m_flStartTime_max; // 0x22c + float m_flStartTime_max; // 0x1cc // MPropertyFriendlyName "end time min" - float m_flEndTime_min; // 0x230 + float m_flEndTime_min; // 0x1d0 // MPropertyFriendlyName "end time max" - float m_flEndTime_max; // 0x234 + float m_flEndTime_max; // 0x1d4 // MPropertyFriendlyName "oscillation multiplier" - float m_flOscMult; // 0x238 + float m_flOscMult; // 0x1d8 // MPropertyFriendlyName "oscillation start phase" - float m_flOscAdd; // 0x23c + float m_flOscAdd; // 0x1dc }; // Alignment: 5 -// Size: 0x250 +// Size: 0x1f0 class C_OP_OscillateScalarSimple : public CParticleFunctionOperator { public: // MPropertyFriendlyName "oscillation rate" - float m_Rate; // 0x210 + float m_Rate; // 0x1b0 // MPropertyFriendlyName "oscillation frequency" - float m_Frequency; // 0x214 + float m_Frequency; // 0x1b4 // MPropertyFriendlyName "oscillation field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nField; // 0x218 + ParticleAttributeIndex_t m_nField; // 0x1b8 // MPropertyFriendlyName "oscillation multiplier" - float m_flOscMult; // 0x21c + float m_flOscMult; // 0x1bc // MPropertyFriendlyName "oscillation start phase" - float m_flOscAdd; // 0x220 + float m_flOscAdd; // 0x1c0 }; // Alignment: 15 -// Size: 0x620 +// Size: 0x5f0 class C_OP_OscillateVector : public CParticleFunctionOperator { public: // MPropertyFriendlyName "oscillation rate min" // MVectorIsSometimesCoordinate - Vector m_RateMin; // 0x210 + Vector m_RateMin; // 0x1b0 // MPropertyFriendlyName "oscillation rate max" // MVectorIsSometimesCoordinate - Vector m_RateMax; // 0x21c + Vector m_RateMax; // 0x1bc // MPropertyFriendlyName "oscillation frequency min" // MVectorIsSometimesCoordinate - Vector m_FrequencyMin; // 0x228 + Vector m_FrequencyMin; // 0x1c8 // MPropertyFriendlyName "oscillation frequency max" // MVectorIsSometimesCoordinate - Vector m_FrequencyMax; // 0x234 + Vector m_FrequencyMax; // 0x1d4 // MPropertyFriendlyName "oscillation field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nField; // 0x240 + ParticleAttributeIndex_t m_nField; // 0x1e0 // MPropertyFriendlyName "proportional 0/1" - bool m_bProportional; // 0x244 + bool m_bProportional; // 0x1e4 // MPropertyFriendlyName "start/end proportional" - bool m_bProportionalOp; // 0x245 + bool m_bProportionalOp; // 0x1e5 // MPropertyFriendlyName "offset instead of accelerate position" - bool m_bOffset; // 0x246 + bool m_bOffset; // 0x1e6 private: - [[maybe_unused]] uint8_t __pad0247[0x1]; // 0x247 + [[maybe_unused]] uint8_t __pad01e7[0x1]; // 0x1e7 public: // MPropertyFriendlyName "start time min" - float m_flStartTime_min; // 0x248 + float m_flStartTime_min; // 0x1e8 // MPropertyFriendlyName "start time max" - float m_flStartTime_max; // 0x24c + float m_flStartTime_max; // 0x1ec // MPropertyFriendlyName "end time min" - float m_flEndTime_min; // 0x250 + float m_flEndTime_min; // 0x1f0 // MPropertyFriendlyName "end time max" - float m_flEndTime_max; // 0x254 + float m_flEndTime_max; // 0x1f4 // MPropertyFriendlyName "oscillation multiplier" - CPerParticleFloatInput m_flOscMult; // 0x258 + CPerParticleFloatInput m_flOscMult; // 0x1f8 // MPropertyFriendlyName "oscillation start phase" - CPerParticleFloatInput m_flOscAdd; // 0x398 + CPerParticleFloatInput m_flOscAdd; // 0x348 // MPropertyFriendlyName "rate scale" - CPerParticleFloatInput m_flRateScale; // 0x4d8 + CPerParticleFloatInput m_flRateScale; // 0x498 }; // Alignment: 6 -// Size: 0x240 +// Size: 0x1e0 class C_OP_OscillateVectorSimple : public CParticleFunctionOperator { public: // MPropertyFriendlyName "oscillation rate" // MVectorIsSometimesCoordinate - Vector m_Rate; // 0x210 + Vector m_Rate; // 0x1b0 // MPropertyFriendlyName "oscillation frequency" - Vector m_Frequency; // 0x21c + Vector m_Frequency; // 0x1bc // MPropertyFriendlyName "oscillation field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nField; // 0x228 + ParticleAttributeIndex_t m_nField; // 0x1c8 // MPropertyFriendlyName "oscillation multiplier" - float m_flOscMult; // 0x22c + float m_flOscMult; // 0x1cc // MPropertyFriendlyName "oscillation start phase" - float m_flOscAdd; // 0x230 + float m_flOscAdd; // 0x1d0 // MPropertyFriendlyName "offset instead of accelerate position" - bool m_bOffset; // 0x234 + bool m_bOffset; // 0x1d4 }; // Alignment: 9 -// Size: 0x230 +// Size: 0x1d0 class C_OP_DifferencePreviousParticle : public CParticleFunctionOperator { public: // MPropertyFriendlyName "input field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldInput; // 0x210 + ParticleAttributeIndex_t m_nFieldInput; // 0x1b0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 // MPropertyFriendlyName "difference minimum" - float m_flInputMin; // 0x218 + float m_flInputMin; // 0x1b8 // MPropertyFriendlyName "difference maximum" - float m_flInputMax; // 0x21c + float m_flInputMax; // 0x1bc // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x220 + float m_flOutputMin; // 0x1c0 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x224 + float m_flOutputMax; // 0x1c4 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x228 + ParticleSetMethod_t m_nSetMethod; // 0x1c8 // MPropertyFriendlyName "only active within specified difference" - bool m_bActiveRange; // 0x22c + bool m_bActiveRange; // 0x1cc // MPropertyFriendlyName "also set ouput to previous particle" - bool m_bSetPreviousParticle; // 0x22d + bool m_bSetPreviousParticle; // 0x1cd }; // Alignment: 2 -// Size: 0x360 +// Size: 0x310 class C_OP_PointVectorAtNextParticle : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "Interpolation" - CPerParticleFloatInput m_flInterpolation; // 0x218 + CPerParticleFloatInput m_flInterpolation; // 0x1b8 }; // Alignment: 6 -// Size: 0x230 +// Size: 0x1d0 class C_OP_RemapScalar : public CParticleFunctionOperator { public: // MPropertyFriendlyName "input field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldInput; // 0x210 + ParticleAttributeIndex_t m_nFieldInput; // 0x1b0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 // MPropertyFriendlyName "input minimum" - float m_flInputMin; // 0x218 + float m_flInputMin; // 0x1b8 // MPropertyFriendlyName "input maximum" - float m_flInputMax; // 0x21c + float m_flInputMax; // 0x1bc // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x220 + float m_flOutputMin; // 0x1c0 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x224 + float m_flOutputMax; // 0x1c4 }; // Alignment: 6 -// Size: 0x240 +// Size: 0x1e0 class C_OP_RemapDensityToVector : public CParticleFunctionOperator { public: // MPropertyFriendlyName "Radius scale for particle influence" - float m_flRadiusScale; // 0x210 + float m_flRadiusScale; // 0x1b0 // MPropertyFriendlyName "Output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 // MPropertyFriendlyName "Density value to map to min value" - float m_flDensityMin; // 0x218 + float m_flDensityMin; // 0x1b8 // MPropertyFriendlyName "Density value to map to max value" - float m_flDensityMax; // 0x21c + float m_flDensityMax; // 0x1bc // MPropertyFriendlyName "Output minimum" - Vector m_vecOutputMin; // 0x220 + Vector m_vecOutputMin; // 0x1c0 // MPropertyFriendlyName "Output maximum" - Vector m_vecOutputMax; // 0x22c + Vector m_vecOutputMax; // 0x1cc }; // Alignment: 6 -// Size: 0x230 +// Size: 0x1d0 class C_OP_RemapScalarEndCap : public CParticleFunctionOperator { public: // MPropertyFriendlyName "input field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldInput; // 0x210 + ParticleAttributeIndex_t m_nFieldInput; // 0x1b0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 // MPropertyFriendlyName "input minimum" - float m_flInputMin; // 0x218 + float m_flInputMin; // 0x1b8 // MPropertyFriendlyName "input maximum" - float m_flInputMax; // 0x21c + float m_flInputMax; // 0x1bc // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x220 + float m_flOutputMin; // 0x1c0 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x224 + float m_flOutputMax; // 0x1c4 }; // Alignment: 3 -// Size: 0x220 +// Size: 0x1c0 class C_OP_ReinitializeScalarEndCap : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 // MPropertyFriendlyName "minimum" - float m_flOutputMin; // 0x214 + float m_flOutputMin; // 0x1b4 // MPropertyFriendlyName "maximum" - float m_flOutputMax; // 0x218 + float m_flOutputMax; // 0x1b8 }; // Alignment: 8 -// Size: 0x230 +// Size: 0x1d0 class C_OP_RemapScalarOnceTimed : public CParticleFunctionOperator { public: // MPropertyFriendlyName "remap time proportional" - bool m_bProportional; // 0x210 + bool m_bProportional; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0211[0x3]; // 0x211 + [[maybe_unused]] uint8_t __pad01b1[0x3]; // 0x1b1 public: // MPropertyFriendlyName "input field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldInput; // 0x214 + ParticleAttributeIndex_t m_nFieldInput; // 0x1b4 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x218 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b8 // MPropertyFriendlyName "input minimum" - float m_flInputMin; // 0x21c + float m_flInputMin; // 0x1bc // MPropertyFriendlyName "input maximum" - float m_flInputMax; // 0x220 + float m_flInputMax; // 0x1c0 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x224 + float m_flOutputMin; // 0x1c4 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x228 + float m_flOutputMax; // 0x1c8 // MPropertyFriendlyName "remap time" - float m_flRemapTime; // 0x22c + float m_flRemapTime; // 0x1cc }; // Alignment: 7 -// Size: 0x230 +// Size: 0x1d0 class C_OP_RemapParticleCountOnScalarEndCap : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 // MPropertyFriendlyName "input minimum" - int32_t m_nInputMin; // 0x214 + int32_t m_nInputMin; // 0x1b4 // MPropertyFriendlyName "input maximum" - int32_t m_nInputMax; // 0x218 + int32_t m_nInputMax; // 0x1b8 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x21c + float m_flOutputMin; // 0x1bc // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x220 + float m_flOutputMax; // 0x1c0 // MPropertyFriendlyName "count back from last particle" - bool m_bBackwards; // 0x224 + bool m_bBackwards; // 0x1c4 private: - [[maybe_unused]] uint8_t __pad0225[0x3]; // 0x225 + [[maybe_unused]] uint8_t __pad01c5[0x3]; // 0x1c5 public: // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x228 + ParticleSetMethod_t m_nSetMethod; // 0x1c8 }; // Alignment: 7 -// Size: 0x720 +// Size: 0x700 class C_OP_RemapParticleCountToScalar : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "input minimum" - CParticleCollectionFloatInput m_nInputMin; // 0x218 + CParticleCollectionFloatInput m_nInputMin; // 0x1b8 // MPropertyFriendlyName "input maximum" - CParticleCollectionFloatInput m_nInputMax; // 0x358 + CParticleCollectionFloatInput m_nInputMax; // 0x308 // MPropertyFriendlyName "output minimum" - CParticleCollectionFloatInput m_flOutputMin; // 0x498 + CParticleCollectionFloatInput m_flOutputMin; // 0x458 // MPropertyFriendlyName "output maximum" - CParticleCollectionFloatInput m_flOutputMax; // 0x5d8 + CParticleCollectionFloatInput m_flOutputMax; // 0x5a8 // MPropertyFriendlyName - bool m_bActiveRange; // 0x718 + bool m_bActiveRange; // 0x6f8 private: - [[maybe_unused]] uint8_t __pad0719[0x3]; // 0x719 + [[maybe_unused]] uint8_t __pad06f9[0x3]; // 0x6f9 public: // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x71c + ParticleSetMethod_t m_nSetMethod; // 0x6fc }; // Alignment: 7 -// Size: 0x230 +// Size: 0x1d0 class C_OP_RemapVisibilityScalar : public CParticleFunctionOperator { public: // MPropertyFriendlyName "input field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldInput; // 0x210 + ParticleAttributeIndex_t m_nFieldInput; // 0x1b0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 // MPropertyFriendlyName "visibility minimum" - float m_flInputMin; // 0x218 + float m_flInputMin; // 0x1b8 // MPropertyFriendlyName "visibility maximum" - float m_flInputMax; // 0x21c + float m_flInputMax; // 0x1bc // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x220 + float m_flOutputMin; // 0x1c0 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x224 + float m_flOutputMax; // 0x1c4 // MPropertyFriendlyName "radius scale" - float m_flRadiusScale; // 0x228 + float m_flRadiusScale; // 0x1c8 }; // Alignment: 8 -// Size: 0x280 +// Size: 0x240 class C_OP_RemapTransformVisibilityToScalar : public CParticleFunctionOperator { public: // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x210 + ParticleSetMethod_t m_nSetMethod; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "transform input" - CParticleTransformInput m_TransformInput; // 0x218 + CParticleTransformInput m_TransformInput; // 0x1b8 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x268 + ParticleAttributeIndex_t m_nFieldOutput; // 0x220 // MPropertyFriendlyName "CP visibility minimum" - float m_flInputMin; // 0x26c + float m_flInputMin; // 0x224 // MPropertyFriendlyName "CP visibility maximum" - float m_flInputMax; // 0x270 + float m_flInputMax; // 0x228 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x274 + float m_flOutputMin; // 0x22c // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x278 + float m_flOutputMax; // 0x230 // MPropertyFriendlyName "visibility radius" - float m_flRadius; // 0x27c + float m_flRadius; // 0x234 }; // Alignment: 8 -// Size: 0x290 +// Size: 0x250 class C_OP_RemapTransformVisibilityToVector : public CParticleFunctionOperator { public: // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x210 + ParticleSetMethod_t m_nSetMethod; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "transform input" - CParticleTransformInput m_TransformInput; // 0x218 + CParticleTransformInput m_TransformInput; // 0x1b8 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x268 + ParticleAttributeIndex_t m_nFieldOutput; // 0x220 // MPropertyFriendlyName "CP visibility minimum" - float m_flInputMin; // 0x26c + float m_flInputMin; // 0x224 // MPropertyFriendlyName "CP visibility maximum" - float m_flInputMax; // 0x270 + float m_flInputMax; // 0x228 // MPropertyFriendlyName "output minimum" - Vector m_vecOutputMin; // 0x274 + Vector m_vecOutputMin; // 0x22c // MPropertyFriendlyName "output maximum" - Vector m_vecOutputMax; // 0x280 + Vector m_vecOutputMax; // 0x238 // MPropertyFriendlyName "visibility radius" - float m_flRadius; // 0x28c + float m_flRadius; // 0x244 }; // Alignment: 4 -// Size: 0x360 +// Size: 0x310 class C_OP_LerpScalar : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "value to lerp to" - CPerParticleFloatInput m_flOutput; // 0x218 + CPerParticleFloatInput m_flOutput; // 0x1b8 // MPropertyFriendlyName "start time" - float m_flStartTime; // 0x358 + float m_flStartTime; // 0x308 // MPropertyFriendlyName "end time" - float m_flEndTime; // 0x35c + float m_flEndTime; // 0x30c }; // Alignment: 3 -// Size: 0x220 +// Size: 0x1c0 class C_OP_LerpEndCapScalar : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 // MPropertyFriendlyName "value to lerp to" - float m_flOutput; // 0x214 + float m_flOutput; // 0x1b4 // MPropertyFriendlyName "lerp time" - float m_flLerpTime; // 0x218 + float m_flLerpTime; // 0x1b8 }; // Alignment: 3 -// Size: 0x230 +// Size: 0x1d0 class C_OP_LerpEndCapVector : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 // MPropertyFriendlyName "value to lerp to" // MVectorIsSometimesCoordinate - Vector m_vecOutput; // 0x214 + Vector m_vecOutput; // 0x1b4 // MPropertyFriendlyName "lerp time" - float m_flLerpTime; // 0x220 + float m_flLerpTime; // 0x1c0 }; // Alignment: 5 -// Size: 0x230 +// Size: 0x1d0 class C_OP_LerpVector : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 // MPropertyFriendlyName "value to lerp to" // MVectorIsSometimesCoordinate - Vector m_vecOutput; // 0x214 + Vector m_vecOutput; // 0x1b4 // MPropertyFriendlyName "start time" - float m_flStartTime; // 0x220 + float m_flStartTime; // 0x1c0 // MPropertyFriendlyName "end time" - float m_flEndTime; // 0x224 + float m_flEndTime; // 0x1c4 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x228 + ParticleSetMethod_t m_nSetMethod; // 0x1c8 }; // Alignment: 4 -// Size: 0x380 +// Size: 0x330 class C_OP_LerpToOtherAttribute : public CParticleFunctionOperator { public: // MPropertyFriendlyName "Interpolation" - CPerParticleFloatInput m_flInterpolation; // 0x210 + CPerParticleFloatInput m_flInterpolation; // 0x1b0 // MPropertyFriendlyName "input attribute from" // MPropertyAttributeChoiceName "particlefield" - ParticleAttributeIndex_t m_nFieldInputFrom; // 0x350 + ParticleAttributeIndex_t m_nFieldInputFrom; // 0x300 // MPropertyFriendlyName "input attribute to" // MPropertyAttributeChoiceName "particlefield" - ParticleAttributeIndex_t m_nFieldInput; // 0x354 + ParticleAttributeIndex_t m_nFieldInput; // 0x304 // MPropertyFriendlyName "output attribute" // MPropertyAttributeChoiceName "particlefield" - ParticleAttributeIndex_t m_nFieldOutput; // 0x358 + ParticleAttributeIndex_t m_nFieldOutput; // 0x308 }; // Alignment: 7 -// Size: 0x230 +// Size: 0x1d0 class C_OP_RemapSpeed : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 // MPropertyFriendlyName "input minimum" - float m_flInputMin; // 0x214 + float m_flInputMin; // 0x1b4 // MPropertyFriendlyName "input maximum" - float m_flInputMax; // 0x218 + float m_flInputMax; // 0x1b8 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x21c + float m_flOutputMin; // 0x1bc // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x220 + float m_flOutputMax; // 0x1c0 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x224 + ParticleSetMethod_t m_nSetMethod; // 0x1c4 // MPropertyFriendlyName "ignore delta time" - bool m_bIgnoreDelta; // 0x228 + bool m_bIgnoreDelta; // 0x1c8 }; // Alignment: 3 -// Size: 0x220 +// Size: 0x1c0 class C_OP_RemapVectortoCP : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output control point" - int32_t m_nOutControlPointNumber; // 0x210 + int32_t m_nOutControlPointNumber; // 0x1b0 // MPropertyFriendlyName "input field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldInput; // 0x214 + ParticleAttributeIndex_t m_nFieldInput; // 0x1b4 // MPropertyFriendlyName "particle number to read" - int32_t m_nParticleNumber; // 0x218 + int32_t m_nParticleNumber; // 0x1b8 }; // Alignment: 8 -// Size: 0x260 +// Size: 0x200 class C_OP_RampScalarLinear : public CParticleFunctionOperator { public: // MPropertyFriendlyName "ramp rate min" - float m_RateMin; // 0x210 + float m_RateMin; // 0x1b0 // MPropertyFriendlyName "ramp rate max" - float m_RateMax; // 0x214 + float m_RateMax; // 0x1b4 // MPropertyFriendlyName "start time min" - float m_flStartTime_min; // 0x218 + float m_flStartTime_min; // 0x1b8 // MPropertyFriendlyName "start time max" - float m_flStartTime_max; // 0x21c + float m_flStartTime_max; // 0x1bc // MPropertyFriendlyName "end time min" - float m_flEndTime_min; // 0x220 + float m_flEndTime_min; // 0x1c0 // MPropertyFriendlyName "end time max" - float m_flEndTime_max; // 0x224 + float m_flEndTime_max; // 0x1c4 private: - [[maybe_unused]] uint8_t __pad0228[0x28]; // 0x228 + [[maybe_unused]] uint8_t __pad01c8[0x28]; // 0x1c8 public: // MPropertyFriendlyName "ramp field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nField; // 0x250 + ParticleAttributeIndex_t m_nField; // 0x1f0 // MPropertyFriendlyName "start/end proportional" - bool m_bProportionalOp; // 0x254 + bool m_bProportionalOp; // 0x1f4 }; // Alignment: 10 -// Size: 0x260 +// Size: 0x200 class C_OP_RampScalarSpline : public CParticleFunctionOperator { public: // MPropertyFriendlyName "ramp rate min" - float m_RateMin; // 0x210 + float m_RateMin; // 0x1b0 // MPropertyFriendlyName "ramp rate max" - float m_RateMax; // 0x214 + float m_RateMax; // 0x1b4 // MPropertyFriendlyName "start time min" - float m_flStartTime_min; // 0x218 + float m_flStartTime_min; // 0x1b8 // MPropertyFriendlyName "start time max" - float m_flStartTime_max; // 0x21c + float m_flStartTime_max; // 0x1bc // MPropertyFriendlyName "end time min" - float m_flEndTime_min; // 0x220 + float m_flEndTime_min; // 0x1c0 // MPropertyFriendlyName "end time max" - float m_flEndTime_max; // 0x224 + float m_flEndTime_max; // 0x1c4 // MPropertyFriendlyName "bias" - float m_flBias; // 0x228 + float m_flBias; // 0x1c8 private: - [[maybe_unused]] uint8_t __pad022c[0x24]; // 0x22c + [[maybe_unused]] uint8_t __pad01cc[0x24]; // 0x1cc public: // MPropertyFriendlyName "ramp field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nField; // 0x250 + ParticleAttributeIndex_t m_nField; // 0x1f0 // MPropertyFriendlyName "start/end proportional" - bool m_bProportionalOp; // 0x254 + bool m_bProportionalOp; // 0x1f4 // MPropertyFriendlyName "ease out" - bool m_bEaseOut; // 0x255 + bool m_bEaseOut; // 0x1f5 }; // Alignment: 4 -// Size: 0x250 +// Size: 0x1f0 class C_OP_RampScalarLinearSimple : public CParticleFunctionOperator { public: // MPropertyFriendlyName "ramp rate" - float m_Rate; // 0x210 + float m_Rate; // 0x1b0 // MPropertyFriendlyName "start time" - float m_flStartTime; // 0x214 + float m_flStartTime; // 0x1b4 // MPropertyFriendlyName "end time" - float m_flEndTime; // 0x218 + float m_flEndTime; // 0x1b8 private: - [[maybe_unused]] uint8_t __pad021c[0x24]; // 0x21c + [[maybe_unused]] uint8_t __pad01bc[0x24]; // 0x1bc public: // MPropertyFriendlyName "ramp field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nField; // 0x240 + ParticleAttributeIndex_t m_nField; // 0x1e0 }; // Alignment: 5 -// Size: 0x250 +// Size: 0x1f0 class C_OP_RampScalarSplineSimple : public CParticleFunctionOperator { public: // MPropertyFriendlyName "ramp rate" - float m_Rate; // 0x210 + float m_Rate; // 0x1b0 // MPropertyFriendlyName "start time" - float m_flStartTime; // 0x214 + float m_flStartTime; // 0x1b4 // MPropertyFriendlyName "end time" - float m_flEndTime; // 0x218 + float m_flEndTime; // 0x1b8 private: - [[maybe_unused]] uint8_t __pad021c[0x24]; // 0x21c + [[maybe_unused]] uint8_t __pad01bc[0x24]; // 0x1bc public: // MPropertyFriendlyName "ramp field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nField; // 0x240 + ParticleAttributeIndex_t m_nField; // 0x1e0 // MPropertyFriendlyName "ease out" - bool m_bEaseOut; // 0x244 + bool m_bEaseOut; // 0x1e4 }; // Alignment: 10 -// Size: 0x1300 +// Size: 0x1380 class C_OP_ChladniWave : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "wave minimum" - CPerParticleFloatInput m_flInputMin; // 0x218 + CPerParticleFloatInput m_flInputMin; // 0x1b8 // MPropertyFriendlyName "wave maximum" - CPerParticleFloatInput m_flInputMax; // 0x358 + CPerParticleFloatInput m_flInputMax; // 0x308 // MPropertyFriendlyName "output minimum" - CPerParticleFloatInput m_flOutputMin; // 0x498 + CPerParticleFloatInput m_flOutputMin; // 0x458 // MPropertyFriendlyName "output maximum" - CPerParticleFloatInput m_flOutputMax; // 0x5d8 + CPerParticleFloatInput m_flOutputMax; // 0x5a8 // MPropertyFriendlyName "wave length" - CPerParticleVecInput m_vecWaveLength; // 0x718 + CPerParticleVecInput m_vecWaveLength; // 0x6f8 // MPropertyFriendlyName "harmonics" - CPerParticleVecInput m_vecHarmonics; // 0xd00 + CPerParticleVecInput m_vecHarmonics; // 0xd30 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x12e8 + ParticleSetMethod_t m_nSetMethod; // 0x1368 // MPropertyFriendlyName "local space control point" - int32_t m_nLocalSpaceControlPoint; // 0x12ec + int32_t m_nLocalSpaceControlPoint; // 0x136c // MPropertyFriendlyName "3D" - bool m_b3D; // 0x12f0 + bool m_b3D; // 0x1370 }; // Alignment: 6 -// Size: 0x230 +// Size: 0x1d0 class C_OP_Noise : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x214 + float m_flOutputMin; // 0x1b4 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x218 + float m_flOutputMax; // 0x1b8 // MPropertyFriendlyName "noise coordinate scale" - float m_fl4NoiseScale; // 0x21c + float m_fl4NoiseScale; // 0x1bc // MPropertyFriendlyName "additive" - bool m_bAdditive; // 0x220 + bool m_bAdditive; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0221[0x3]; // 0x221 + [[maybe_unused]] uint8_t __pad01c1[0x3]; // 0x1c1 public: // MPropertyFriendlyName "Noise animation time scale" - float m_flNoiseAnimationTimeScale; // 0x224 + float m_flNoiseAnimationTimeScale; // 0x1c4 }; // Alignment: 7 -// Size: 0x240 +// Size: 0x1e0 class C_OP_VectorNoise : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 // MPropertyFriendlyName "output minimum" // MVectorIsSometimesCoordinate - Vector m_vecOutputMin; // 0x214 + Vector m_vecOutputMin; // 0x1b4 // MPropertyFriendlyName "output maximum" // MVectorIsSometimesCoordinate - Vector m_vecOutputMax; // 0x220 + Vector m_vecOutputMax; // 0x1c0 // MPropertyFriendlyName "noise coordinate scale" - float m_fl4NoiseScale; // 0x22c + float m_fl4NoiseScale; // 0x1cc // MPropertyFriendlyName "additive" - bool m_bAdditive; // 0x230 + bool m_bAdditive; // 0x1d0 // MPropertyFriendlyName "offset instead of accelerate position" - bool m_bOffset; // 0x231 + bool m_bOffset; // 0x1d1 private: - [[maybe_unused]] uint8_t __pad0232[0x2]; // 0x232 + [[maybe_unused]] uint8_t __pad01d2[0x2]; // 0x1d2 public: // MPropertyFriendlyName "Noise animation time scale" - float m_flNoiseAnimationTimeScale; // 0x234 + float m_flNoiseAnimationTimeScale; // 0x1d4 }; // Alignment: 2 -// Size: 0x220 +// Size: 0x1c0 class C_OP_Decay : public CParticleFunctionOperator { public: // MPropertyFriendlyName "Reduce rope popping on decay" - bool m_bRopeDecay; // 0x210 + bool m_bRopeDecay; // 0x1b0 // MPropertyFriendlyName "force preserving particle order" - bool m_bForcePreserveParticleOrder; // 0x211 + bool m_bForcePreserveParticleOrder; // 0x1b1 }; // Alignment: 1 -// Size: 0x350 +// Size: 0x300 class C_OP_DecayOffscreen : public CParticleFunctionOperator { public: // MPropertyFriendlyName "Offscreen Time Before Decay" - CParticleCollectionFloatInput m_flOffscreenTime; // 0x210 + CParticleCollectionFloatInput m_flOffscreenTime; // 0x1b0 }; // Alignment: 1 -// Size: 0x350 +// Size: 0x300 class C_OP_EndCapTimedFreeze : public CParticleFunctionOperator { public: // MPropertyFriendlyName "freeze time" - CParticleCollectionFloatInput m_flFreezeTime; // 0x210 + CParticleCollectionFloatInput m_flFreezeTime; // 0x1b0 }; // Alignment: 1 -// Size: 0x220 +// Size: 0x1c0 class C_OP_EndCapTimedDecay : public CParticleFunctionOperator { public: // MPropertyFriendlyName "decay time" - float m_flDecayTime; // 0x210 + float m_flDecayTime; // 0x1b0 }; // Alignment: 0 -// Size: 0x210 +// Size: 0x1b0 class C_OP_EndCapDecay : public CParticleFunctionOperator { public: @@ -6856,96 +6146,96 @@ public: }; // Alignment: 1 -// Size: 0x220 +// Size: 0x1c0 class C_OP_VelocityDecay : public CParticleFunctionOperator { public: // MPropertyFriendlyName "minimum velocity" - float m_flMinVelocity; // 0x210 + float m_flMinVelocity; // 0x1b0 }; // Alignment: 1 -// Size: 0x220 +// Size: 0x1c0 class C_OP_AlphaDecay : public CParticleFunctionOperator { public: // MPropertyFriendlyName "minimum alpha" - float m_flMinAlpha; // 0x210 + float m_flMinAlpha; // 0x1b0 }; // Alignment: 1 -// Size: 0x220 +// Size: 0x1c0 class C_OP_RadiusDecay : public CParticleFunctionOperator { public: // MPropertyFriendlyName "minimum radius" - float m_flMinRadius; // 0x210 + float m_flMinRadius; // 0x1b0 }; // Alignment: 6 -// Size: 0x370 +// Size: 0x320 class C_OP_DecayMaintainCount : public CParticleFunctionOperator { public: // MPropertyFriendlyName "count to maintain" - int32_t m_nParticlesToMaintain; // 0x210 + int32_t m_nParticlesToMaintain; // 0x1b0 // MPropertyFriendlyName "decay delay" - float m_flDecayDelay; // 0x214 + float m_flDecayDelay; // 0x1b4 // MPropertyFriendlyName "snapshot control point for count" - int32_t m_nSnapshotControlPoint; // 0x218 + int32_t m_nSnapshotControlPoint; // 0x1b8 // MPropertyFriendlyName "decay on lifespan" - bool m_bLifespanDecay; // 0x21c + bool m_bLifespanDecay; // 0x1bc private: - [[maybe_unused]] uint8_t __pad021d[0x3]; // 0x21d + [[maybe_unused]] uint8_t __pad01bd[0x3]; // 0x1bd public: // MPropertyFriendlyName "total count scale" - CParticleCollectionFloatInput m_flScale; // 0x220 + CParticleCollectionFloatInput m_flScale; // 0x1c0 // MPropertyFriendlyName "kill newest instead of oldest" - bool m_bKillNewest; // 0x360 + bool m_bKillNewest; // 0x310 }; // Alignment: 1 -// Size: 0x350 +// Size: 0x300 class C_OP_DecayClampCount : public CParticleFunctionOperator { public: // MPropertyFriendlyName "Maximum Count" - CParticleCollectionFloatInput m_nCount; // 0x210 + CParticleCollectionFloatInput m_nCount; // 0x1b0 }; // Alignment: 4 -// Size: 0x220 +// Size: 0x1c0 class C_OP_Cull : public CParticleFunctionOperator { public: // MPropertyFriendlyName "cull percentage" - float m_flCullPerc; // 0x210 + float m_flCullPerc; // 0x1b0 // MPropertyFriendlyName "cull start time" - float m_flCullStart; // 0x214 + float m_flCullStart; // 0x1b4 // MPropertyFriendlyName "cull end time" - float m_flCullEnd; // 0x218 + float m_flCullEnd; // 0x1b8 // MPropertyFriendlyName "cull time exponent" - float m_flCullExp; // 0x21c + float m_flCullExp; // 0x1bc }; // Alignment: 3 -// Size: 0x230 +// Size: 0x1d0 class CGeneralSpin : public CParticleFunctionOperator { public: // MPropertyFriendlyName "spin rate degrees" - int32_t m_nSpinRateDegrees; // 0x210 + int32_t m_nSpinRateDegrees; // 0x1b0 // MPropertyFriendlyName "spin rate min" - int32_t m_nSpinRateMinDegrees; // 0x214 + int32_t m_nSpinRateMinDegrees; // 0x1b4 private: - [[maybe_unused]] uint8_t __pad0218[0x4]; // 0x218 + [[maybe_unused]] uint8_t __pad01b8[0x4]; // 0x1b8 public: // MPropertyFriendlyName "spin stop time" - float m_fSpinRateStopTime; // 0x21c + float m_fSpinRateStopTime; // 0x1bc }; // Alignment: 0 -// Size: 0x210 +// Size: 0x1b0 class CSpinUpdateBase : public CParticleFunctionOperator { public: @@ -6953,7 +6243,7 @@ public: }; // Alignment: 0 -// Size: 0x230 +// Size: 0x1d0 class C_OP_Spin : public CGeneralSpin { public: @@ -6961,7 +6251,7 @@ public: }; // Alignment: 0 -// Size: 0x210 +// Size: 0x1b0 class C_OP_SpinUpdate : public CSpinUpdateBase { public: @@ -6969,7 +6259,7 @@ public: }; // Alignment: 0 -// Size: 0x230 +// Size: 0x1d0 class C_OP_SpinYaw : public CGeneralSpin { public: @@ -6977,397 +6267,399 @@ public: }; // Alignment: 6 -// Size: 0x260 +// Size: 0x200 class C_OP_InterpolateRadius : public CParticleFunctionOperator { public: // MPropertyFriendlyName "start time" - float m_flStartTime; // 0x210 + float m_flStartTime; // 0x1b0 // MPropertyFriendlyName "end time" - float m_flEndTime; // 0x214 + float m_flEndTime; // 0x1b4 // MPropertyFriendlyName "radius start scale" - float m_flStartScale; // 0x218 + float m_flStartScale; // 0x1b8 // MPropertyFriendlyName "radius end scale" - float m_flEndScale; // 0x21c + float m_flEndScale; // 0x1bc // MPropertyFriendlyName "ease in and out" - bool m_bEaseInAndOut; // 0x220 + bool m_bEaseInAndOut; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0221[0x3]; // 0x221 + [[maybe_unused]] uint8_t __pad01c1[0x3]; // 0x1c1 public: // MPropertyFriendlyName "scale bias" - float m_flBias; // 0x224 + float m_flBias; // 0x1c4 }; // Alignment: 5 -// Size: 0x230 +// Size: 0x1d0 class C_OP_ColorInterpolate : public CParticleFunctionOperator { public: // MPropertyFriendlyName "color fade" - Color m_ColorFade; // 0x210 + Color m_ColorFade; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0xc]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0xc]; // 0x1b4 public: // MPropertyFriendlyName "fade start time" - float m_flFadeStartTime; // 0x220 + float m_flFadeStartTime; // 0x1c0 // MPropertyFriendlyName "fade end time" - float m_flFadeEndTime; // 0x224 + float m_flFadeEndTime; // 0x1c4 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x228 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c8 // MPropertyFriendlyName "ease in and out" - bool m_bEaseInOut; // 0x22c + bool m_bEaseInOut; // 0x1cc }; // Alignment: 6 -// Size: 0x250 +// Size: 0x1f0 class C_OP_ColorInterpolateRandom : public CParticleFunctionOperator { public: // MPropertyFriendlyName "color fade min" - Color m_ColorFadeMin; // 0x210 + Color m_ColorFadeMin; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x18]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x18]; // 0x1b4 public: // MPropertyFriendlyName "color fade max" - Color m_ColorFadeMax; // 0x22c + Color m_ColorFadeMax; // 0x1cc private: - [[maybe_unused]] uint8_t __pad0230[0xc]; // 0x230 + [[maybe_unused]] uint8_t __pad01d0[0xc]; // 0x1d0 public: // MPropertyFriendlyName "fade start time" - float m_flFadeStartTime; // 0x23c + float m_flFadeStartTime; // 0x1dc // MPropertyFriendlyName "fade end time" - float m_flFadeEndTime; // 0x240 + float m_flFadeEndTime; // 0x1e0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x244 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1e4 // MPropertyFriendlyName "ease in and out" - bool m_bEaseInOut; // 0x248 + bool m_bEaseInOut; // 0x1e8 }; // Alignment: 15 -// Size: 0x9c0 +// Size: 0x9e0 class C_OP_PositionLock : public CParticleFunctionOperator { public: // MPropertyFriendlyName "transform input" - CParticleTransformInput m_TransformInput; // 0x210 + CParticleTransformInput m_TransformInput; // 0x1b0 // MPropertyFriendlyName "start fadeout min" - float m_flStartTime_min; // 0x260 + float m_flStartTime_min; // 0x218 // MPropertyFriendlyName "start fadeout max" - float m_flStartTime_max; // 0x264 + float m_flStartTime_max; // 0x21c // MPropertyFriendlyName "start fadeout exponent" - float m_flStartTime_exp; // 0x268 + float m_flStartTime_exp; // 0x220 // MPropertyFriendlyName "end fadeout min" - float m_flEndTime_min; // 0x26c + float m_flEndTime_min; // 0x224 // MPropertyFriendlyName "end fadeout max" - float m_flEndTime_max; // 0x270 + float m_flEndTime_max; // 0x228 // MPropertyFriendlyName "end fadeout exponent" - float m_flEndTime_exp; // 0x274 + float m_flEndTime_exp; // 0x22c // MPropertyFriendlyName "distance fade range" - float m_flRange; // 0x278 + float m_flRange; // 0x230 private: - [[maybe_unused]] uint8_t __pad027c[0x4]; // 0x27c + [[maybe_unused]] uint8_t __pad0234[0x4]; // 0x234 public: // MPropertyFriendlyName "distance fade bias" - CParticleCollectionFloatInput m_flRangeBias; // 0x280 + CParticleCollectionFloatInput m_flRangeBias; // 0x238 // MPropertyFriendlyName "instant jump threshold" - float m_flJumpThreshold; // 0x3c0 + float m_flJumpThreshold; // 0x388 // MPropertyFriendlyName "previous position scale" - float m_flPrevPosScale; // 0x3c4 + float m_flPrevPosScale; // 0x38c // MPropertyFriendlyName "lock rotation" - bool m_bLockRot; // 0x3c8 + bool m_bLockRot; // 0x390 private: - [[maybe_unused]] uint8_t __pad03c9[0x7]; // 0x3c9 + [[maybe_unused]] uint8_t __pad0391[0x7]; // 0x391 public: // MPropertyFriendlyName "component scale" - CParticleCollectionVecInput m_vecScale; // 0x3d0 + CParticleCollectionVecInput m_vecScale; // 0x398 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x9b8 + ParticleAttributeIndex_t m_nFieldOutput; // 0x9d0 // MPropertyFriendlyName "output field prev" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutputPrev; // 0x9bc + ParticleAttributeIndex_t m_nFieldOutputPrev; // 0x9d4 }; // Alignment: 33 -// Size: 0x760 +// Size: 0x700 class C_OP_ControlpointLight : public CParticleFunctionOperator { public: // MPropertyFriendlyName "initial color bias" - float m_flScale; // 0x210 + float m_flScale; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4cc]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4cc]; // 0x1b4 public: // MPropertyFriendlyName "light 1 control point" - int32_t m_nControlPoint1; // 0x6e0 + int32_t m_nControlPoint1; // 0x680 // MPropertyFriendlyName "light 2 control point" - int32_t m_nControlPoint2; // 0x6e4 + int32_t m_nControlPoint2; // 0x684 // MPropertyFriendlyName "light 3 control point" - int32_t m_nControlPoint3; // 0x6e8 + int32_t m_nControlPoint3; // 0x688 // MPropertyFriendlyName "light 4 control point" - int32_t m_nControlPoint4; // 0x6ec + int32_t m_nControlPoint4; // 0x68c // MPropertyFriendlyName "light 1 control point offset" - Vector m_vecCPOffset1; // 0x6f0 + Vector m_vecCPOffset1; // 0x690 // MPropertyFriendlyName "light 2 control point offset" - Vector m_vecCPOffset2; // 0x6fc + Vector m_vecCPOffset2; // 0x69c // MPropertyFriendlyName "light 3 control point offset" - Vector m_vecCPOffset3; // 0x708 + Vector m_vecCPOffset3; // 0x6a8 // MPropertyFriendlyName "light 4 control point offset" - Vector m_vecCPOffset4; // 0x714 + Vector m_vecCPOffset4; // 0x6b4 // MPropertyFriendlyName "light 1 50% distance" - float m_LightFiftyDist1; // 0x720 + float m_LightFiftyDist1; // 0x6c0 // MPropertyFriendlyName "light 1 0% distance" - float m_LightZeroDist1; // 0x724 + float m_LightZeroDist1; // 0x6c4 // MPropertyFriendlyName "light 2 50% distance" - float m_LightFiftyDist2; // 0x728 + float m_LightFiftyDist2; // 0x6c8 // MPropertyFriendlyName "light 2 0% distance" - float m_LightZeroDist2; // 0x72c + float m_LightZeroDist2; // 0x6cc // MPropertyFriendlyName "light 3 50% distance" - float m_LightFiftyDist3; // 0x730 + float m_LightFiftyDist3; // 0x6d0 // MPropertyFriendlyName "light 3 0% distance" - float m_LightZeroDist3; // 0x734 + float m_LightZeroDist3; // 0x6d4 // MPropertyFriendlyName "light 4 50% distance" - float m_LightFiftyDist4; // 0x738 + float m_LightFiftyDist4; // 0x6d8 // MPropertyFriendlyName "light 4 0% distance" - float m_LightZeroDist4; // 0x73c + float m_LightZeroDist4; // 0x6dc // MPropertyFriendlyName "light 1 color" - Color m_LightColor1; // 0x740 + Color m_LightColor1; // 0x6e0 // MPropertyFriendlyName "light 2 color" - Color m_LightColor2; // 0x744 + Color m_LightColor2; // 0x6e4 // MPropertyFriendlyName "light 3 color" - Color m_LightColor3; // 0x748 + Color m_LightColor3; // 0x6e8 // MPropertyFriendlyName "light 4 color" - Color m_LightColor4; // 0x74c + Color m_LightColor4; // 0x6ec // MPropertyFriendlyName "light 1 type 0=point 1=spot" - bool m_bLightType1; // 0x750 + bool m_bLightType1; // 0x6f0 // MPropertyFriendlyName "light 2 type 0=point 1=spot" - bool m_bLightType2; // 0x751 + bool m_bLightType2; // 0x6f1 // MPropertyFriendlyName "light 3 type 0=point 1=spot" - bool m_bLightType3; // 0x752 + bool m_bLightType3; // 0x6f2 // MPropertyFriendlyName "light 4 type 0=point 1=spot" - bool m_bLightType4; // 0x753 + bool m_bLightType4; // 0x6f3 // MPropertyFriendlyName "light 1 dynamic light" - bool m_bLightDynamic1; // 0x754 + bool m_bLightDynamic1; // 0x6f4 // MPropertyFriendlyName "light 2 dynamic light" - bool m_bLightDynamic2; // 0x755 + bool m_bLightDynamic2; // 0x6f5 // MPropertyFriendlyName "light 3 dynamic light" - bool m_bLightDynamic3; // 0x756 + bool m_bLightDynamic3; // 0x6f6 // MPropertyFriendlyName "light 4 dynamic light" - bool m_bLightDynamic4; // 0x757 + bool m_bLightDynamic4; // 0x6f7 // MPropertyFriendlyName "compute normals from control points" - bool m_bUseNormal; // 0x758 + bool m_bUseNormal; // 0x6f8 // MPropertyFriendlyName "half-lambert normals" - bool m_bUseHLambert; // 0x759 + bool m_bUseHLambert; // 0x6f9 private: - [[maybe_unused]] uint8_t __pad075a[0x4]; // 0x75a + [[maybe_unused]] uint8_t __pad06fa[0x4]; // 0x6fa public: // MPropertyFriendlyName "clamp minimum light value to initial color" - bool m_bClampLowerRange; // 0x75e + bool m_bClampLowerRange; // 0x6fe // MPropertyFriendlyName "clamp maximum light value to initial color" - bool m_bClampUpperRange; // 0x75f + bool m_bClampUpperRange; // 0x6ff }; // Alignment: 3 -// Size: 0x220 +// Size: 0x1c0 class C_OP_GlobalLight : public CParticleFunctionOperator { public: // MPropertyFriendlyName "initial color bias" - float m_flScale; // 0x210 + float m_flScale; // 0x1b0 // MPropertyFriendlyName "clamp minimum light value to initial color" - bool m_bClampLowerRange; // 0x214 + bool m_bClampLowerRange; // 0x1b4 // MPropertyFriendlyName "clamp maximum light value to initial color" - bool m_bClampUpperRange; // 0x215 + bool m_bClampUpperRange; // 0x1b5 }; -// Alignment: 5 -// Size: 0x370 +// Alignment: 6 +// Size: 0x320 class C_OP_SetChildControlPoints : public CParticleFunctionOperator { public: // MPropertyFriendlyName "group ID to affect" - int32_t m_nChildGroupID; // 0x210 + int32_t m_nChildGroupID; // 0x1b0 // MPropertyFriendlyName "first control point to set" - int32_t m_nFirstControlPoint; // 0x214 + int32_t m_nFirstControlPoint; // 0x1b4 // MPropertyFriendlyName "# of control points to set" - int32_t m_nNumControlPoints; // 0x218 + int32_t m_nNumControlPoints; // 0x1b8 private: - [[maybe_unused]] uint8_t __pad021c[0x4]; // 0x21c + [[maybe_unused]] uint8_t __pad01bc[0x4]; // 0x1bc public: // MPropertyFriendlyName "first particle to copy" - CParticleCollectionFloatInput m_nFirstSourcePoint; // 0x220 + CParticleCollectionFloatInput m_nFirstSourcePoint; // 0x1c0 + // MPropertyFriendlyName "start as last particle" + bool m_bReverse; // 0x310 // MPropertyFriendlyName "set orientation" - bool m_bSetOrientation; // 0x360 + bool m_bSetOrientation; // 0x311 }; // Alignment: 7 -// Size: 0x230 +// Size: 0x1d0 class C_OP_SetControlPointsToParticle : public CParticleFunctionOperator { public: // MPropertyFriendlyName "group ID to affect" - int32_t m_nChildGroupID; // 0x210 + int32_t m_nChildGroupID; // 0x1b0 // MPropertyFriendlyName "first control point to set" - int32_t m_nFirstControlPoint; // 0x214 + int32_t m_nFirstControlPoint; // 0x1b4 // MPropertyFriendlyName "# of control points to set" - int32_t m_nNumControlPoints; // 0x218 + int32_t m_nNumControlPoints; // 0x1b8 // MPropertyFriendlyName "first particle to copy" - int32_t m_nFirstSourcePoint; // 0x21c + int32_t m_nFirstSourcePoint; // 0x1bc // MPropertyFriendlyName "set orientation" - bool m_bSetOrientation; // 0x220 + bool m_bSetOrientation; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0221[0x3]; // 0x221 + [[maybe_unused]] uint8_t __pad01c1[0x3]; // 0x1c1 public: // MPropertyFriendlyName "orientation style" - ParticleOrientationSetMode_t m_nOrientationMode; // 0x224 + ParticleOrientationSetMode_t m_nOrientationMode; // 0x1c4 // MPropertyFriendlyName "set parent" - ParticleParentSetMode_t m_nSetParent; // 0x228 + ParticleParentSetMode_t m_nSetParent; // 0x1c8 }; // Alignment: 7 -// Size: 0x320 +// Size: 0x2c0 class C_OP_SetControlPointsToModelParticles : public CParticleFunctionOperator { public: // MPropertyFriendlyName "hitbox set" - char m_HitboxSetName[128]; // 0x210 + char m_HitboxSetName[128]; // 0x1b0 // MPropertyFriendlyName "attachment to follow" - char m_AttachmentName[128]; // 0x290 + char m_AttachmentName[128]; // 0x230 // MPropertyFriendlyName "First control point to set" - int32_t m_nFirstControlPoint; // 0x310 + int32_t m_nFirstControlPoint; // 0x2b0 // MPropertyFriendlyName "# of control points to set" - int32_t m_nNumControlPoints; // 0x314 + int32_t m_nNumControlPoints; // 0x2b4 // MPropertyFriendlyName "first particle to copy" - int32_t m_nFirstSourcePoint; // 0x318 + int32_t m_nFirstSourcePoint; // 0x2b8 // MPropertyFriendlyName "use skinning instead of hitboxes" - bool m_bSkin; // 0x31c + bool m_bSkin; // 0x2bc // MPropertyFriendlyName "follow attachment" - bool m_bAttachment; // 0x31d + bool m_bAttachment; // 0x2bd }; // Alignment: 8 -// Size: 0x4b0 +// Size: 0x470 class C_OP_SetPerChildControlPoint : public CParticleFunctionOperator { public: // MPropertyFriendlyName "group ID to affect" - int32_t m_nChildGroupID; // 0x210 + int32_t m_nChildGroupID; // 0x1b0 // MPropertyFriendlyName "control point to set" - int32_t m_nFirstControlPoint; // 0x214 + int32_t m_nFirstControlPoint; // 0x1b4 // MPropertyFriendlyName "# of children to set" - int32_t m_nNumControlPoints; // 0x218 + int32_t m_nNumControlPoints; // 0x1b8 private: - [[maybe_unused]] uint8_t __pad021c[0x4]; // 0x21c + [[maybe_unused]] uint8_t __pad01bc[0x4]; // 0x1bc public: // MPropertyFriendlyName "particle increment amount" - CParticleCollectionFloatInput m_nParticleIncrement; // 0x220 + CParticleCollectionFloatInput m_nParticleIncrement; // 0x1c0 // MPropertyFriendlyName "first particle to copy" - CParticleCollectionFloatInput m_nFirstSourcePoint; // 0x360 + CParticleCollectionFloatInput m_nFirstSourcePoint; // 0x310 // MPropertyFriendlyName "set orientation from velocity" - bool m_bSetOrientation; // 0x4a0 + bool m_bSetOrientation; // 0x460 private: - [[maybe_unused]] uint8_t __pad04a1[0x3]; // 0x4a1 + [[maybe_unused]] uint8_t __pad0461[0x3]; // 0x461 public: // MPropertyFriendlyName "orientation vector" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nOrientationField; // 0x4a4 + ParticleAttributeIndex_t m_nOrientationField; // 0x464 // MPropertyFriendlyName "set number of children based on particle count" - bool m_bNumBasedOnParticleCount; // 0x4a8 + bool m_bNumBasedOnParticleCount; // 0x468 }; // Alignment: 8 -// Size: 0x230 +// Size: 0x1d0 class C_OP_SetPerChildControlPointFromAttribute : public CParticleFunctionOperator { public: // MPropertyFriendlyName "group ID to affect" - int32_t m_nChildGroupID; // 0x210 + int32_t m_nChildGroupID; // 0x1b0 // MPropertyFriendlyName "control point to set" - int32_t m_nFirstControlPoint; // 0x214 + int32_t m_nFirstControlPoint; // 0x1b4 // MPropertyFriendlyName "# of children to set" - int32_t m_nNumControlPoints; // 0x218 + int32_t m_nNumControlPoints; // 0x1b8 // MPropertyFriendlyName "particle increment amount" - int32_t m_nParticleIncrement; // 0x21c + int32_t m_nParticleIncrement; // 0x1bc // MPropertyFriendlyName "first particle to copy" - int32_t m_nFirstSourcePoint; // 0x220 + int32_t m_nFirstSourcePoint; // 0x1c0 // MPropertyFriendlyName "set number of children based on particle count" - bool m_bNumBasedOnParticleCount; // 0x224 + bool m_bNumBasedOnParticleCount; // 0x1c4 private: - [[maybe_unused]] uint8_t __pad0225[0x3]; // 0x225 + [[maybe_unused]] uint8_t __pad01c5[0x3]; // 0x1c5 public: // MPropertyFriendlyName "field to read" // MPropertyAttributeChoiceName "particlefield" - ParticleAttributeIndex_t m_nAttributeToRead; // 0x228 + ParticleAttributeIndex_t m_nAttributeToRead; // 0x1c8 // MPropertyFriendlyName "control point field for scalars" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nCPField; // 0x22c + int32_t m_nCPField; // 0x1cc }; // Alignment: 4 -// Size: 0x270 +// Size: 0x230 class C_OP_RemapTransformOrientationToYaw : public CParticleFunctionOperator { public: // MPropertyFriendlyName "transform input" - CParticleTransformInput m_TransformInput; // 0x210 + CParticleTransformInput m_TransformInput; // 0x1b0 // MPropertyFriendlyName "rotation field" // MPropertyAttributeChoiceName "particlefield_rotation" - ParticleAttributeIndex_t m_nFieldOutput; // 0x260 + ParticleAttributeIndex_t m_nFieldOutput; // 0x218 // MPropertyFriendlyName "rotation offset" - float m_flRotOffset; // 0x264 + float m_flRotOffset; // 0x21c // MPropertyFriendlyName "spin strength" - float m_flSpinStrength; // 0x268 + float m_flSpinStrength; // 0x220 }; // Alignment: 3 -// Size: 0x220 +// Size: 0x1c0 class C_OP_DampenToCP : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x210 + int32_t m_nControlPointNumber; // 0x1b0 // MPropertyFriendlyName "falloff range" - float m_flRange; // 0x214 + float m_flRange; // 0x1b4 // MPropertyFriendlyName "dampen scale" - float m_flScale; // 0x218 + float m_flScale; // 0x1b8 }; // Alignment: 3 -// Size: 0x230 +// Size: 0x1d0 class C_OP_SetToCP : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x210 + int32_t m_nControlPointNumber; // 0x1b0 // MPropertyFriendlyName "offset" - Vector m_vecOffset; // 0x214 + Vector m_vecOffset; // 0x1b4 // MPropertyFriendlyName "offset in local space" - bool m_bOffsetLocal; // 0x220 + bool m_bOffsetLocal; // 0x1c0 }; -// Alignment: 12 -// Size: 0xe60 +// Alignment: 13 +// Size: 0xff0 class C_OP_PinParticleToCP : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x210 + int32_t m_nControlPointNumber; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "offset" - CParticleCollectionVecInput m_vecOffset; // 0x218 + CParticleCollectionVecInput m_vecOffset; // 0x1b8 // MPropertyFriendlyName "offset in local space" - bool m_bOffsetLocal; // 0x800 + bool m_bOffsetLocal; // 0x7f0 private: - [[maybe_unused]] uint8_t __pad0801[0x3]; // 0x801 + [[maybe_unused]] uint8_t __pad07f1[0x3]; // 0x7f1 public: // MPropertyFriendlyName "particle to use" - ParticleSelection_t m_nParticleSelection; // 0x804 - // MPropertyFriendlyName "particle number" - CParticleCollectionFloatInput m_nParticleNumber; // 0x808 + ParticleSelection_t m_nParticleSelection; // 0x7f4 + // MPropertyFriendlyName "particle number/offset" + CParticleCollectionFloatInput m_nParticleNumber; // 0x7f8 // MPropertyFriendlyName "pin break type" ParticlePinDistance_t m_nPinBreakType; // 0x948 private: @@ -7376,353 +6668,355 @@ public: // MPropertyFriendlyName "break length %" CParticleCollectionFloatInput m_flBreakDistance; // 0x950 // MPropertyFriendlyName "break speed" - CParticleCollectionFloatInput m_flBreakSpeed; // 0xa90 + CParticleCollectionFloatInput m_flBreakSpeed; // 0xaa0 // MPropertyFriendlyName "break age" - CParticleCollectionFloatInput m_flAge; // 0xbd0 + CParticleCollectionFloatInput m_flAge; // 0xbf0 // MPropertyFriendlyName "break comparison control point 1" - int32_t m_nBreakControlPointNumber; // 0xd10 + int32_t m_nBreakControlPointNumber; // 0xd40 // MPropertyFriendlyName "break comparison control point 2" - int32_t m_nBreakControlPointNumber2; // 0xd14 + int32_t m_nBreakControlPointNumber2; // 0xd44 + // MPropertyFriendlyName "break value" + CParticleCollectionFloatInput m_flBreakValue; // 0xd48 // MPropertyFriendlyName "Interpolation" - CPerParticleFloatInput m_flInterpolation; // 0xd18 + CPerParticleFloatInput m_flInterpolation; // 0xe98 }; // Alignment: 6 -// Size: 0x230 +// Size: 0x1d0 class C_OP_MovementRigidAttachToCP : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x210 + int32_t m_nControlPointNumber; // 0x1b0 // MPropertyFriendlyName "scale control point number" - int32_t m_nScaleControlPoint; // 0x214 + int32_t m_nScaleControlPoint; // 0x1b4 // MPropertyFriendlyName "scale control point field" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nScaleCPField; // 0x218 + int32_t m_nScaleCPField; // 0x1b8 // MPropertyFriendlyName "cache attribute to read from" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldInput; // 0x21c + ParticleAttributeIndex_t m_nFieldInput; // 0x1bc // MPropertyFriendlyName "attribute to write to" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x220 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1c0 // MPropertyFriendlyName "local space" - bool m_bOffsetLocal; // 0x224 + bool m_bOffsetLocal; // 0x1c4 }; // Alignment: 5 -// Size: 0xa90 +// Size: 0xaa0 class C_OP_LerpToInitialPosition : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x210 + int32_t m_nControlPointNumber; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "Interpolation" - CPerParticleFloatInput m_flInterpolation; // 0x218 + CPerParticleFloatInput m_flInterpolation; // 0x1b8 // MPropertyFriendlyName "position cache attribute" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nCacheField; // 0x358 + ParticleAttributeIndex_t m_nCacheField; // 0x308 private: - [[maybe_unused]] uint8_t __pad035c[0x4]; // 0x35c + [[maybe_unused]] uint8_t __pad030c[0x4]; // 0x30c public: // MPropertyFriendlyName "scale" - CParticleCollectionFloatInput m_flScale; // 0x360 + CParticleCollectionFloatInput m_flScale; // 0x310 // MPropertyFriendlyName "component scale" - CParticleCollectionVecInput m_vecScale; // 0x4a0 + CParticleCollectionVecInput m_vecScale; // 0x460 }; // Alignment: 13 -// Size: 0x850 +// Size: 0x860 class C_OP_DistanceBetweenTransforms : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "strarting transform" - CParticleTransformInput m_TransformStart; // 0x218 + CParticleTransformInput m_TransformStart; // 0x1b8 // MPropertyFriendlyName "end transform" - CParticleTransformInput m_TransformEnd; // 0x268 + CParticleTransformInput m_TransformEnd; // 0x220 // MPropertyFriendlyName "distance minimum" - CPerParticleFloatInput m_flInputMin; // 0x2b8 + CPerParticleFloatInput m_flInputMin; // 0x288 // MPropertyFriendlyName "distance maximum" - CPerParticleFloatInput m_flInputMax; // 0x3f8 + CPerParticleFloatInput m_flInputMax; // 0x3d8 // MPropertyFriendlyName "output minimum" - CPerParticleFloatInput m_flOutputMin; // 0x538 + CPerParticleFloatInput m_flOutputMin; // 0x528 // MPropertyFriendlyName "output maximum" CPerParticleFloatInput m_flOutputMax; // 0x678 // MPropertyFriendlyName "maximum trace length" - float m_flMaxTraceLength; // 0x7b8 + float m_flMaxTraceLength; // 0x7c8 // MPropertyFriendlyName "LOS Failure Scalar" - float m_flLOSScale; // 0x7bc + float m_flLOSScale; // 0x7cc // MPropertyFriendlyName "LOS collision group" - char m_CollisionGroupName[128]; // 0x7c0 + char m_CollisionGroupName[128]; // 0x7d0 // MPropertyFriendlyName "Trace Set" - ParticleTraceSet_t m_nTraceSet; // 0x840 + ParticleTraceSet_t m_nTraceSet; // 0x850 // MPropertyFriendlyName "ensure line of sight" - bool m_bLOS; // 0x844 + bool m_bLOS; // 0x854 private: - [[maybe_unused]] uint8_t __pad0845[0x3]; // 0x845 + [[maybe_unused]] uint8_t __pad0855[0x3]; // 0x855 public: // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x848 + ParticleSetMethod_t m_nSetMethod; // 0x858 }; // Alignment: 10 -// Size: 0x2d0 +// Size: 0x2a0 class C_OP_PercentageBetweenTransforms : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 // MPropertyFriendlyName "percentage minimum" - float m_flInputMin; // 0x214 + float m_flInputMin; // 0x1b4 // MPropertyFriendlyName "percentage maximum" - float m_flInputMax; // 0x218 + float m_flInputMax; // 0x1b8 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x21c + float m_flOutputMin; // 0x1bc // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x220 + float m_flOutputMax; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0224[0x4]; // 0x224 + [[maybe_unused]] uint8_t __pad01c4[0x4]; // 0x1c4 public: // MPropertyFriendlyName "strarting transform" - CParticleTransformInput m_TransformStart; // 0x228 + CParticleTransformInput m_TransformStart; // 0x1c8 // MPropertyFriendlyName "end transform" - CParticleTransformInput m_TransformEnd; // 0x278 + CParticleTransformInput m_TransformEnd; // 0x230 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x2c8 + ParticleSetMethod_t m_nSetMethod; // 0x298 // MPropertyFriendlyName "only active within input range" - bool m_bActiveRange; // 0x2cc + bool m_bActiveRange; // 0x29c // MPropertyFriendlyName "treat distance between points as radius" - bool m_bRadialCheck; // 0x2cd + bool m_bRadialCheck; // 0x29d }; // Alignment: 10 -// Size: 0x2e0 +// Size: 0x2b0 class C_OP_PercentageBetweenTransformsVector : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 // MPropertyFriendlyName "percentage minimum" - float m_flInputMin; // 0x214 + float m_flInputMin; // 0x1b4 // MPropertyFriendlyName "percentage maximum" - float m_flInputMax; // 0x218 + float m_flInputMax; // 0x1b8 // MPropertyFriendlyName "output minimum" // MVectorIsSometimesCoordinate - Vector m_vecOutputMin; // 0x21c + Vector m_vecOutputMin; // 0x1bc // MPropertyFriendlyName "output maximum" // MVectorIsSometimesCoordinate - Vector m_vecOutputMax; // 0x228 + Vector m_vecOutputMax; // 0x1c8 private: - [[maybe_unused]] uint8_t __pad0234[0x4]; // 0x234 + [[maybe_unused]] uint8_t __pad01d4[0x4]; // 0x1d4 public: // MPropertyFriendlyName "strarting transform" - CParticleTransformInput m_TransformStart; // 0x238 + CParticleTransformInput m_TransformStart; // 0x1d8 // MPropertyFriendlyName "end transform" - CParticleTransformInput m_TransformEnd; // 0x288 + CParticleTransformInput m_TransformEnd; // 0x240 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x2d8 + ParticleSetMethod_t m_nSetMethod; // 0x2a8 // MPropertyFriendlyName "only active within input range" - bool m_bActiveRange; // 0x2dc + bool m_bActiveRange; // 0x2ac // MPropertyFriendlyName "treat distance between points as radius" - bool m_bRadialCheck; // 0x2dd + bool m_bRadialCheck; // 0x2ad }; // Alignment: 12 -// Size: 0x2e0 +// Size: 0x2b0 class C_OP_PercentageBetweenTransformLerpCPs : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 // MPropertyFriendlyName "percentage minimum" - float m_flInputMin; // 0x214 + float m_flInputMin; // 0x1b4 // MPropertyFriendlyName "percentage maximum" - float m_flInputMax; // 0x218 + float m_flInputMax; // 0x1b8 private: - [[maybe_unused]] uint8_t __pad021c[0x4]; // 0x21c + [[maybe_unused]] uint8_t __pad01bc[0x4]; // 0x1bc public: // MPropertyFriendlyName "strarting transform" - CParticleTransformInput m_TransformStart; // 0x220 + CParticleTransformInput m_TransformStart; // 0x1c0 // MPropertyFriendlyName "end transform" - CParticleTransformInput m_TransformEnd; // 0x270 + CParticleTransformInput m_TransformEnd; // 0x228 // MPropertyFriendlyName "output starting control point number" - int32_t m_nOutputStartCP; // 0x2c0 + int32_t m_nOutputStartCP; // 0x290 // MPropertyFriendlyName "output starting control point field 0-2 X/Y/Z" - int32_t m_nOutputStartField; // 0x2c4 + int32_t m_nOutputStartField; // 0x294 // MPropertyFriendlyName "output ending control point number" - int32_t m_nOutputEndCP; // 0x2c8 + int32_t m_nOutputEndCP; // 0x298 // MPropertyFriendlyName "output ending control point field 0-2 X/Y/Z" - int32_t m_nOutputEndField; // 0x2cc + int32_t m_nOutputEndField; // 0x29c // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x2d0 + ParticleSetMethod_t m_nSetMethod; // 0x2a0 // MPropertyFriendlyName "only active within input range" - bool m_bActiveRange; // 0x2d4 + bool m_bActiveRange; // 0x2a4 // MPropertyFriendlyName "treat distance between points as radius" - bool m_bRadialCheck; // 0x2d5 + bool m_bRadialCheck; // 0x2a5 }; // Alignment: 9 -// Size: 0x12f0 +// Size: 0x1370 class C_OP_DistanceBetweenVecs : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "first vector" - CPerParticleVecInput m_vecPoint1; // 0x218 + CPerParticleVecInput m_vecPoint1; // 0x1b8 // MPropertyFriendlyName "second vector" - CPerParticleVecInput m_vecPoint2; // 0x800 + CPerParticleVecInput m_vecPoint2; // 0x7f0 // MPropertyFriendlyName "distance minimum" - CPerParticleFloatInput m_flInputMin; // 0xde8 + CPerParticleFloatInput m_flInputMin; // 0xe28 // MPropertyFriendlyName "distance maximum" - CPerParticleFloatInput m_flInputMax; // 0xf28 + CPerParticleFloatInput m_flInputMax; // 0xf78 // MPropertyFriendlyName "output minimum" - CPerParticleFloatInput m_flOutputMin; // 0x1068 + CPerParticleFloatInput m_flOutputMin; // 0x10c8 // MPropertyFriendlyName "output maximum" - CPerParticleFloatInput m_flOutputMax; // 0x11a8 + CPerParticleFloatInput m_flOutputMax; // 0x1218 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x12e8 + ParticleSetMethod_t m_nSetMethod; // 0x1368 // MPropertyFriendlyName "divide by deltatime (for comparing motion since last simulation)" - bool m_bDeltaTime; // 0x12ec + bool m_bDeltaTime; // 0x136c }; // Alignment: 3 -// Size: 0xdf0 +// Size: 0xe30 class C_OP_DirectionBetweenVecsToVec : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "first vector" - CPerParticleVecInput m_vecPoint1; // 0x218 + CPerParticleVecInput m_vecPoint1; // 0x1b8 // MPropertyFriendlyName "second vector" - CPerParticleVecInput m_vecPoint2; // 0x800 + CPerParticleVecInput m_vecPoint2; // 0x7f0 }; // Alignment: 15 -// Size: 0xdf0 +// Size: 0xe30 class C_OP_DistanceToTransform : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "distance minimum" - CPerParticleFloatInput m_flInputMin; // 0x218 + CPerParticleFloatInput m_flInputMin; // 0x1b8 // MPropertyFriendlyName "distance maximum" - CPerParticleFloatInput m_flInputMax; // 0x358 + CPerParticleFloatInput m_flInputMax; // 0x308 // MPropertyFriendlyName "output minimum" - CPerParticleFloatInput m_flOutputMin; // 0x498 + CPerParticleFloatInput m_flOutputMin; // 0x458 // MPropertyFriendlyName "output maximum" - CPerParticleFloatInput m_flOutputMax; // 0x5d8 + CPerParticleFloatInput m_flOutputMax; // 0x5a8 // MPropertyFriendlyName "transform input" - CParticleTransformInput m_TransformStart; // 0x718 + CParticleTransformInput m_TransformStart; // 0x6f8 // MPropertyFriendlyName "ensure line of sight" - bool m_bLOS; // 0x768 + bool m_bLOS; // 0x760 // MPropertyFriendlyName "LOS collision group" - char m_CollisionGroupName[128]; // 0x769 + char m_CollisionGroupName[128]; // 0x761 private: - [[maybe_unused]] uint8_t __pad07e9[0x3]; // 0x7e9 + [[maybe_unused]] uint8_t __pad07e1[0x3]; // 0x7e1 public: // MPropertyFriendlyName "Trace Set" - ParticleTraceSet_t m_nTraceSet; // 0x7ec + ParticleTraceSet_t m_nTraceSet; // 0x7e4 // MPropertyFriendlyName "maximum trace length" - float m_flMaxTraceLength; // 0x7f0 + float m_flMaxTraceLength; // 0x7e8 // MPropertyFriendlyName "LOS Failure Scalar" - float m_flLOSScale; // 0x7f4 + float m_flLOSScale; // 0x7ec // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x7f8 + ParticleSetMethod_t m_nSetMethod; // 0x7f0 // MPropertyFriendlyName "only active within specified distance" - bool m_bActiveRange; // 0x7fc + bool m_bActiveRange; // 0x7f4 // MPropertyFriendlyName "output is additive" - bool m_bAdditive; // 0x7fd + bool m_bAdditive; // 0x7f5 private: - [[maybe_unused]] uint8_t __pad07fe[0x2]; // 0x7fe + [[maybe_unused]] uint8_t __pad07f6[0x2]; // 0x7f6 public: // MPropertyFriendlyName "component scale" - CPerParticleVecInput m_vecComponentScale; // 0x800 + CPerParticleVecInput m_vecComponentScale; // 0x7f8 }; // Alignment: 11 -// Size: 0x7c0 +// Size: 0x7d0 class C_OP_CylindricalDistanceToTransform : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "cylinder inner radius" - CPerParticleFloatInput m_flInputMin; // 0x218 + CPerParticleFloatInput m_flInputMin; // 0x1b8 // MPropertyFriendlyName "cylinder outer radius" - CPerParticleFloatInput m_flInputMax; // 0x358 + CPerParticleFloatInput m_flInputMax; // 0x308 // MPropertyFriendlyName "cylinder inner output" - CPerParticleFloatInput m_flOutputMin; // 0x498 + CPerParticleFloatInput m_flOutputMin; // 0x458 // MPropertyFriendlyName "cylinder outer output" - CPerParticleFloatInput m_flOutputMax; // 0x5d8 + CPerParticleFloatInput m_flOutputMax; // 0x5a8 // MPropertyFriendlyName "cylindrical top transform" - CParticleTransformInput m_TransformStart; // 0x718 + CParticleTransformInput m_TransformStart; // 0x6f8 // MPropertyFriendlyName "cylindrical bottom transform" - CParticleTransformInput m_TransformEnd; // 0x768 + CParticleTransformInput m_TransformEnd; // 0x760 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x7b8 + ParticleSetMethod_t m_nSetMethod; // 0x7c8 // MPropertyFriendlyName "only active within specified distance" - bool m_bActiveRange; // 0x7bc + bool m_bActiveRange; // 0x7cc // MPropertyFriendlyName "output is additive" - bool m_bAdditive; // 0x7bd + bool m_bAdditive; // 0x7cd // MPropertyFriendlyName "apply radius to ends (capsule)" - bool m_bCapsule; // 0x7be + bool m_bCapsule; // 0x7ce }; // Alignment: 7 -// Size: 0x2c0 +// Size: 0x260 class C_OP_RtEnvCull : public CParticleFunctionOperator { public: // MPropertyFriendlyName "test direction" // MVectorIsCoordinate - Vector m_vecTestDir; // 0x210 + Vector m_vecTestDir; // 0x1b0 // MPropertyFriendlyName "cull normal" // MVectorIsCoordinate - Vector m_vecTestNormal; // 0x21c + Vector m_vecTestNormal; // 0x1bc // MPropertyFriendlyName "cull on miss" - bool m_bCullOnMiss; // 0x228 + bool m_bCullOnMiss; // 0x1c8 // MPropertyFriendlyName "stick instead of cull" - bool m_bStickInsteadOfCull; // 0x229 + bool m_bStickInsteadOfCull; // 0x1c9 // MPropertyFriendlyName "ray trace environment name" - char m_RtEnvName[128]; // 0x22a + char m_RtEnvName[128]; // 0x1ca private: - [[maybe_unused]] uint8_t __pad02aa[0x2]; // 0x2aa + [[maybe_unused]] uint8_t __pad024a[0x2]; // 0x24a public: // MPropertyFriendlyName "ray trace environment cp" - int32_t m_nRTEnvCP; // 0x2ac + int32_t m_nRTEnvCP; // 0x24c // MPropertyFriendlyName "rt env control point component" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nComponent; // 0x2b0 + int32_t m_nComponent; // 0x250 }; // Alignment: 4 @@ -7731,978 +7025,977 @@ class C_OP_MovementLoopInsideSphere : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point" - int32_t m_nCP; // 0x210 + int32_t m_nCP; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "distance maximum" - CParticleCollectionFloatInput m_flDistance; // 0x218 + CParticleCollectionFloatInput m_flDistance; // 0x1b8 // MPropertyFriendlyName "component scale" - CParticleCollectionVecInput m_vecScale; // 0x358 + CParticleCollectionVecInput m_vecScale; // 0x308 // MPropertyFriendlyName "distance squared output attribute" // MPropertyAttributeChoiceName "particlefield_scalar" ParticleAttributeIndex_t m_nDistSqrAttr; // 0x940 }; -// Alignment: 8 -// Size: 0x3f0 +// Alignment: 9 +// Size: 0x460 class C_OP_MoveToHitbox : public CParticleFunctionOperator { public: - // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x210 + // MPropertyFriendlyName "model input" + CParticleModelInput m_modelInput; // 0x1b0 + // MPropertyFriendlyName "transform input" + CParticleTransformInput m_transformInput; // 0x210 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad0278[0x4]; // 0x278 public: // MPropertyFriendlyName "lifetime lerp start" - float m_flLifeTimeLerpStart; // 0x218 + float m_flLifeTimeLerpStart; // 0x27c // MPropertyFriendlyName "lifetime lerp end" - float m_flLifeTimeLerpEnd; // 0x21c + float m_flLifeTimeLerpEnd; // 0x280 // MPropertyFriendlyName "previous position scale" - float m_flPrevPosScale; // 0x220 + float m_flPrevPosScale; // 0x284 // MPropertyFriendlyName "hitbox set" - char m_HitboxSetName[128]; // 0x224 + char m_HitboxSetName[128]; // 0x288 // MPropertyFriendlyName "use bones instead of hitboxes" - bool m_bUseBones; // 0x2a4 + bool m_bUseBones; // 0x308 private: - [[maybe_unused]] uint8_t __pad02a5[0x3]; // 0x2a5 + [[maybe_unused]] uint8_t __pad0309[0x3]; // 0x309 public: // MPropertyFriendlyName "lerp type" - HitboxLerpType_t m_nLerpType; // 0x2a8 -private: - [[maybe_unused]] uint8_t __pad02ac[0x4]; // 0x2ac -public: + HitboxLerpType_t m_nLerpType; // 0x30c // MPropertyFriendlyName "Constant Interpolation" - CPerParticleFloatInput m_flInterpolation; // 0x2b0 + CPerParticleFloatInput m_flInterpolation; // 0x310 }; -// Alignment: 14 -// Size: 0x9e0 +// Alignment: 15 +// Size: 0xab0 class C_OP_LockToBone : public CParticleFunctionOperator { public: - // MPropertyFriendlyName "control_point_number" - int32_t m_nControlPointNumber; // 0x210 + // MPropertyFriendlyName "model input" + CParticleModelInput m_modelInput; // 0x1b0 + // MPropertyFriendlyName "transform input" + CParticleTransformInput m_transformInput; // 0x210 // MPropertyFriendlyName "lifetime fade start" - float m_flLifeTimeFadeStart; // 0x214 + float m_flLifeTimeFadeStart; // 0x278 // MPropertyFriendlyName "lifetime fade end" - float m_flLifeTimeFadeEnd; // 0x218 + float m_flLifeTimeFadeEnd; // 0x27c // MPropertyFriendlyName "instant jump threshold" - float m_flJumpThreshold; // 0x21c + float m_flJumpThreshold; // 0x280 // MPropertyFriendlyName "previous position scale" - float m_flPrevPosScale; // 0x220 + float m_flPrevPosScale; // 0x284 // MPropertyFriendlyName "hitbox set" - char m_HitboxSetName[128]; // 0x224 + char m_HitboxSetName[128]; // 0x288 // MPropertyFriendlyName "rigid lock" - bool m_bRigid; // 0x2a4 + bool m_bRigid; // 0x308 // MPropertyFriendlyName "use bones instead of hitboxes" - bool m_bUseBones; // 0x2a5 + bool m_bUseBones; // 0x309 private: - [[maybe_unused]] uint8_t __pad02a6[0x2]; // 0x2a6 + [[maybe_unused]] uint8_t __pad030a[0x2]; // 0x30a public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x2a8 + ParticleAttributeIndex_t m_nFieldOutput; // 0x30c // MPropertyFriendlyName "output field prev" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutputPrev; // 0x2ac + ParticleAttributeIndex_t m_nFieldOutputPrev; // 0x310 // MPropertyStartGroup "Set Rotations to Bones" // MPropertyFriendlyName "lock rotations to bone orientation" - ParticleRotationLockType_t m_nRotationSetType; // 0x2b0 + ParticleRotationLockType_t m_nRotationSetType; // 0x314 // MPropertyFriendlyName "rigid set rotation from bones" - bool m_bRigidRotationLock; // 0x2b4 + bool m_bRigidRotationLock; // 0x318 private: - [[maybe_unused]] uint8_t __pad02b5[0x3]; // 0x2b5 + [[maybe_unused]] uint8_t __pad0319[0x7]; // 0x319 public: // MPropertyFriendlyName "rigid rotation offset pitch/yaw/roll" - CPerParticleVecInput m_vecRotation; // 0x2b8 + CPerParticleVecInput m_vecRotation; // 0x320 // MPropertyFriendlyName "rigid rotation interpolation" - CPerParticleFloatInput m_flRotLerp; // 0x8a0 + CPerParticleFloatInput m_flRotLerp; // 0x958 }; // Alignment: 3 -// Size: 0x220 +// Size: 0x1c0 class C_OP_SnapshotRigidSkinToBones : public CParticleFunctionOperator { public: // MPropertyFriendlyName "rotate normals" - bool m_bTransformNormals; // 0x210 + bool m_bTransformNormals; // 0x1b0 // MPropertyFriendlyName "scale radii" - bool m_bTransformRadii; // 0x211 + bool m_bTransformRadii; // 0x1b1 private: - [[maybe_unused]] uint8_t __pad0212[0x2]; // 0x212 + [[maybe_unused]] uint8_t __pad01b2[0x2]; // 0x1b2 public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x214 + int32_t m_nControlPointNumber; // 0x1b4 }; // Alignment: 7 -// Size: 0x230 +// Size: 0x1d0 class C_OP_SnapshotSkinToBones : public CParticleFunctionOperator { public: // MPropertyFriendlyName "rotate normals" - bool m_bTransformNormals; // 0x210 + bool m_bTransformNormals; // 0x1b0 // MPropertyFriendlyName "scale radii" - bool m_bTransformRadii; // 0x211 + bool m_bTransformRadii; // 0x1b1 private: - [[maybe_unused]] uint8_t __pad0212[0x2]; // 0x212 + [[maybe_unused]] uint8_t __pad01b2[0x2]; // 0x1b2 public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x214 + int32_t m_nControlPointNumber; // 0x1b4 // MPropertyFriendlyName "lifetime fade start" - float m_flLifeTimeFadeStart; // 0x218 + float m_flLifeTimeFadeStart; // 0x1b8 // MPropertyFriendlyName "lifetime fade end" - float m_flLifeTimeFadeEnd; // 0x21c + float m_flLifeTimeFadeEnd; // 0x1bc // MPropertyFriendlyName "instant jump threshold" - float m_flJumpThreshold; // 0x220 + float m_flJumpThreshold; // 0x1c0 // MPropertyFriendlyName "previous position scale" - float m_flPrevPosScale; // 0x224 + float m_flPrevPosScale; // 0x1c4 }; // Alignment: 11 -// Size: 0x240 +// Size: 0x1e0 class C_OP_CPOffsetToPercentageBetweenCPs : public CParticleFunctionOperator { public: // MPropertyFriendlyName "percentage minimum" - float m_flInputMin; // 0x210 + float m_flInputMin; // 0x1b0 // MPropertyFriendlyName "percentage maximum" - float m_flInputMax; // 0x214 + float m_flInputMax; // 0x1b4 // MPropertyFriendlyName "percentage bias" - float m_flInputBias; // 0x218 + float m_flInputBias; // 0x1b8 // MPropertyFriendlyName "starting control point" - int32_t m_nStartCP; // 0x21c + int32_t m_nStartCP; // 0x1bc // MPropertyFriendlyName "ending control point" - int32_t m_nEndCP; // 0x220 + int32_t m_nEndCP; // 0x1c0 // MPropertyFriendlyName "offset control point" - int32_t m_nOffsetCP; // 0x224 + int32_t m_nOffsetCP; // 0x1c4 // MPropertyFriendlyName "output control point" - int32_t m_nOuputCP; // 0x228 + int32_t m_nOuputCP; // 0x1c8 // MPropertyFriendlyName "input control point" - int32_t m_nInputCP; // 0x22c + int32_t m_nInputCP; // 0x1cc // MPropertyFriendlyName "treat distance between points as radius" - bool m_bRadialCheck; // 0x230 + bool m_bRadialCheck; // 0x1d0 // MPropertyFriendlyName "treat offset as scale of total distance" - bool m_bScaleOffset; // 0x231 + bool m_bScaleOffset; // 0x1d1 private: - [[maybe_unused]] uint8_t __pad0232[0x2]; // 0x232 + [[maybe_unused]] uint8_t __pad01d2[0x2]; // 0x1d2 public: // MPropertyFriendlyName "offset amount" // MVectorIsCoordinate - Vector m_vecOffset; // 0x234 + Vector m_vecOffset; // 0x1d4 }; // Alignment: 4 -// Size: 0x230 +// Size: 0x1d0 class C_OP_PlaneCull : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point for point on plane" - int32_t m_nPlaneControlPoint; // 0x210 + int32_t m_nPlaneControlPoint; // 0x1b0 // MPropertyFriendlyName "plane normal" // MVectorIsCoordinate - Vector m_vecPlaneDirection; // 0x214 + Vector m_vecPlaneDirection; // 0x1b4 // MPropertyFriendlyName "use local space" - bool m_bLocalSpace; // 0x220 + bool m_bLocalSpace; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0221[0x3]; // 0x221 + [[maybe_unused]] uint8_t __pad01c1[0x3]; // 0x1c1 public: // MPropertyFriendlyName "cull plane offset" - float m_flPlaneOffset; // 0x224 + float m_flPlaneOffset; // 0x1c4 }; // Alignment: 4 -// Size: 0x230 +// Size: 0x1d0 class C_OP_DistanceCull : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point" - int32_t m_nControlPoint; // 0x210 + int32_t m_nControlPoint; // 0x1b0 // MPropertyFriendlyName "control point offset" // MVectorIsCoordinate - Vector m_vecPointOffset; // 0x214 + Vector m_vecPointOffset; // 0x1b4 // MPropertyFriendlyName "cull distance" - float m_flDistance; // 0x220 + float m_flDistance; // 0x1c0 // MPropertyFriendlyName "cull inside instead of outside" - bool m_bCullInside; // 0x224 + bool m_bCullInside; // 0x1c4 }; // Alignment: 5 -// Size: 0x2a0 +// Size: 0x240 class C_OP_ModelCull : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x210 + int32_t m_nControlPointNumber; // 0x1b0 // MPropertyFriendlyName "use only bounding box" - bool m_bBoundBox; // 0x214 + bool m_bBoundBox; // 0x1b4 // MPropertyFriendlyName "cull outside instead of inside" - bool m_bCullOutside; // 0x215 + bool m_bCullOutside; // 0x1b5 // MPropertyFriendlyName "use bones instead of hitboxes" - bool m_bUseBones; // 0x216 + bool m_bUseBones; // 0x1b6 // MPropertyFriendlyName "hitbox set" - char m_HitboxSetName[128]; // 0x217 + char m_HitboxSetName[128]; // 0x1b7 }; // Alignment: 7 -// Size: 0x890 +// Size: 0x880 class C_OP_ModelDampenMovement : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x210 + int32_t m_nControlPointNumber; // 0x1b0 // MPropertyFriendlyName "use only bounding box" - bool m_bBoundBox; // 0x214 + bool m_bBoundBox; // 0x1b4 // MPropertyFriendlyName "dampen outside instead of inside" - bool m_bOutside; // 0x215 + bool m_bOutside; // 0x1b5 // MPropertyFriendlyName "use bones instead of hitboxes" - bool m_bUseBones; // 0x216 + bool m_bUseBones; // 0x1b6 // MPropertyFriendlyName "hitbox set" - char m_HitboxSetName[128]; // 0x217 + char m_HitboxSetName[128]; // 0x1b7 private: - [[maybe_unused]] uint8_t __pad0297[0x1]; // 0x297 + [[maybe_unused]] uint8_t __pad0237[0x1]; // 0x237 public: // MPropertyFriendlyName "test position offset" // MVectorIsCoordinate - CPerParticleVecInput m_vecPosOffset; // 0x298 + CPerParticleVecInput m_vecPosOffset; // 0x238 // MPropertyFriendlyName "drag" // MPropertyAttributeRange "-1 1" - float m_fDrag; // 0x880 + float m_fDrag; // 0x870 }; // Alignment: 8 -// Size: 0x230 +// Size: 0x1d0 class C_OP_SequenceFromModel : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x210 + int32_t m_nControlPointNumber; // 0x1b0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 // MPropertyFriendlyName "current anim time output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutputAnim; // 0x218 + ParticleAttributeIndex_t m_nFieldOutputAnim; // 0x1b8 // MPropertyFriendlyName "input minimum" - float m_flInputMin; // 0x21c + float m_flInputMin; // 0x1bc // MPropertyFriendlyName "input maximum" - float m_flInputMax; // 0x220 + float m_flInputMax; // 0x1c0 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x224 + float m_flOutputMin; // 0x1c4 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x228 + float m_flOutputMax; // 0x1c8 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x22c + ParticleSetMethod_t m_nSetMethod; // 0x1cc }; // Alignment: 3 -// Size: 0x220 +// Size: 0x1c0 class C_OP_VelocityMatchingForce : public CParticleFunctionOperator { public: // MPropertyFriendlyName "direction matching strength" - float m_flDirScale; // 0x210 + float m_flDirScale; // 0x1b0 // MPropertyFriendlyName "speed matching strength" - float m_flSpdScale; // 0x214 + float m_flSpdScale; // 0x1b4 // MPropertyFriendlyName "control point to broadcast speed and direction to" - int32_t m_nCPBroadcast; // 0x218 + int32_t m_nCPBroadcast; // 0x1b8 }; // Alignment: 3 -// Size: 0x230 +// Size: 0x1d0 class C_OP_MovementMaintainOffset : public CParticleFunctionOperator { public: // MPropertyFriendlyName "desired offset" // MVectorIsCoordinate - Vector m_vecOffset; // 0x210 + Vector m_vecOffset; // 0x1b0 // MPropertyFriendlyName "local space CP" - int32_t m_nCP; // 0x21c + int32_t m_nCP; // 0x1bc // MPropertyFriendlyName "scale by radius" - bool m_bRadiusScale; // 0x220 + bool m_bRadiusScale; // 0x1c0 }; // Alignment: 17 -// Size: 0x410 +// Size: 0x3c0 class C_OP_MovementPlaceOnGround : public CParticleFunctionOperator { public: // MPropertyFriendlyName "offset" - CPerParticleFloatInput m_flOffset; // 0x210 + CPerParticleFloatInput m_flOffset; // 0x1b0 // MPropertyFriendlyName "max trace length" - float m_flMaxTraceLength; // 0x350 + float m_flMaxTraceLength; // 0x300 // MPropertyFriendlyName "CP movement tolerance" - float m_flTolerance; // 0x354 + float m_flTolerance; // 0x304 // MPropertyFriendlyName "trace offset" - float m_flTraceOffset; // 0x358 + float m_flTraceOffset; // 0x308 // MPropertyFriendlyName "interpolation rate" - float m_flLerpRate; // 0x35c + float m_flLerpRate; // 0x30c // MPropertyFriendlyName "collision group" - char m_CollisionGroupName[128]; // 0x360 + char m_CollisionGroupName[128]; // 0x310 // MPropertyFriendlyName "Trace Set" - ParticleTraceSet_t m_nTraceSet; // 0x3e0 + ParticleTraceSet_t m_nTraceSet; // 0x390 // MPropertyFriendlyName "reference CP 1" - int32_t m_nRefCP1; // 0x3e4 + int32_t m_nRefCP1; // 0x394 // MPropertyFriendlyName "reference CP 2" - int32_t m_nRefCP2; // 0x3e8 + int32_t m_nRefCP2; // 0x398 // MPropertyFriendlyName "interploation distance tolerance cp" - int32_t m_nLerpCP; // 0x3ec + int32_t m_nLerpCP; // 0x39c private: - [[maybe_unused]] uint8_t __pad03f0[0x8]; // 0x3f0 + [[maybe_unused]] uint8_t __pad03a0[0x8]; // 0x3a0 public: // MPropertyFriendlyName "No Collision Behavior" - ParticleTraceMissBehavior_t m_nTraceMissBehavior; // 0x3f8 + ParticleTraceMissBehavior_t m_nTraceMissBehavior; // 0x3a8 // MPropertyFriendlyName "include default contents trace hulls" - bool m_bIncludeShotHull; // 0x3fc + bool m_bIncludeShotHull; // 0x3ac // MPropertyFriendlyName "include water" - bool m_bIncludeWater; // 0x3fd + bool m_bIncludeWater; // 0x3ad private: - [[maybe_unused]] uint8_t __pad03fe[0x2]; // 0x3fe + [[maybe_unused]] uint8_t __pad03ae[0x2]; // 0x3ae public: // MPropertyFriendlyName "set normal" - bool m_bSetNormal; // 0x400 + bool m_bSetNormal; // 0x3b0 // MPropertyFriendlyName "treat offset as scalar of particle radius" - bool m_bScaleOffset; // 0x401 + bool m_bScaleOffset; // 0x3b1 private: - [[maybe_unused]] uint8_t __pad0402[0x2]; // 0x402 + [[maybe_unused]] uint8_t __pad03b2[0x2]; // 0x3b2 public: // MPropertyFriendlyName "preserve initial Z-offset relative to cp" - int32_t m_nPreserveOffsetCP; // 0x404 + int32_t m_nPreserveOffsetCP; // 0x3b4 // MPropertyFriendlyName "CP Entity to Ignore for Collisions" - int32_t m_nIgnoreCP; // 0x408 + int32_t m_nIgnoreCP; // 0x3b8 }; // Alignment: 4 -// Size: 0x220 +// Size: 0x1c0 class C_OP_InheritFromParentParticles : public CParticleFunctionOperator { public: // MPropertyFriendlyName "scale" - float m_flScale; // 0x210 + float m_flScale; // 0x1b0 // MPropertyFriendlyName "inherited field" // MPropertyAttributeChoiceName "particlefield" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 // MPropertyFriendlyName "particle increment amount" - int32_t m_nIncrement; // 0x218 + int32_t m_nIncrement; // 0x1b8 // MPropertyFriendlyName "random parent particle distribution" - bool m_bRandomDistribution; // 0x21c + bool m_bRandomDistribution; // 0x1bc }; // Alignment: 5 -// Size: 0x230 +// Size: 0x1d0 class C_OP_InheritFromParentParticlesV2 : public CParticleFunctionOperator { public: // MPropertyFriendlyName "scale" - float m_flScale; // 0x210 + float m_flScale; // 0x1b0 // MPropertyFriendlyName "inherited field" // MPropertyAttributeChoiceName "particlefield" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 // MPropertyFriendlyName "particle increment amount" - int32_t m_nIncrement; // 0x218 + int32_t m_nIncrement; // 0x1b8 // MPropertyFriendlyName "random parent particle distribution" - bool m_bRandomDistribution; // 0x21c + bool m_bRandomDistribution; // 0x1bc private: - [[maybe_unused]] uint8_t __pad021d[0x3]; // 0x21d + [[maybe_unused]] uint8_t __pad01bd[0x3]; // 0x1bd public: // MPropertyFriendlyName "behavior if parent particle dies" - MissingParentInheritBehavior_t m_nMissingParentBehavior; // 0x220 + MissingParentInheritBehavior_t m_nMissingParentBehavior; // 0x1c0 }; // Alignment: 5 -// Size: 0x4a0 +// Size: 0x460 class C_OP_ReadFromNeighboringParticle : public CParticleFunctionOperator { public: // MPropertyFriendlyName "read field" // MPropertyAttributeChoiceName "particlefield" - ParticleAttributeIndex_t m_nFieldInput; // 0x210 + ParticleAttributeIndex_t m_nFieldInput; // 0x1b0 // MPropertyFriendlyName "written field" // MPropertyAttributeChoiceName "particlefield" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 // MPropertyFriendlyName "particle increment amount" - int32_t m_nIncrement; // 0x218 + int32_t m_nIncrement; // 0x1b8 private: - [[maybe_unused]] uint8_t __pad021c[0x4]; // 0x21c + [[maybe_unused]] uint8_t __pad01bc[0x4]; // 0x1bc public: // MPropertyFriendlyName "maximum distance" - CPerParticleFloatInput m_DistanceCheck; // 0x220 + CPerParticleFloatInput m_DistanceCheck; // 0x1c0 // MPropertyFriendlyName "Interpolation" - CPerParticleFloatInput m_flInterpolation; // 0x360 + CPerParticleFloatInput m_flInterpolation; // 0x310 }; // Alignment: 4 -// Size: 0x220 +// Size: 0x1c0 class C_OP_InheritFromPeerSystem : public CParticleFunctionOperator { public: // MPropertyFriendlyName "read field" // MPropertyAttributeChoiceName "particlefield" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 // MPropertyFriendlyName "written field" // MPropertyAttributeChoiceName "particlefield" - ParticleAttributeIndex_t m_nFieldInput; // 0x214 + ParticleAttributeIndex_t m_nFieldInput; // 0x1b4 // MPropertyFriendlyName "particle neighbor increment amount" - int32_t m_nIncrement; // 0x218 + int32_t m_nIncrement; // 0x1b8 // MPropertyFriendlyName "group id" - int32_t m_nGroupID; // 0x21c + int32_t m_nGroupID; // 0x1bc }; // Alignment: 3 -// Size: 0x220 +// Size: 0x1c0 class C_OP_RemapVectorComponentToScalar : public CParticleFunctionOperator { public: // MPropertyFriendlyName "Input Vector" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldInput; // 0x210 + ParticleAttributeIndex_t m_nFieldInput; // 0x1b0 // MPropertyFriendlyName "Output Scalar" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 // MPropertyFriendlyName "Vector Component" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nComponent; // 0x218 + int32_t m_nComponent; // 0x1b8 }; // Alignment: 3 -// Size: 0x220 +// Size: 0x1c0 class C_OP_OrientTo2dDirection : public CParticleFunctionOperator { public: // MPropertyFriendlyName "rotation offset" - float m_flRotOffset; // 0x210 + float m_flRotOffset; // 0x1b0 // MPropertyFriendlyName "spin strength" - float m_flSpinStrength; // 0x214 + float m_flSpinStrength; // 0x1b4 // MPropertyFriendlyName "rotation field" // MPropertyAttributeChoiceName "particlefield_rotation" - ParticleAttributeIndex_t m_nFieldOutput; // 0x218 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b8 }; // Alignment: 6 -// Size: 0x230 +// Size: 0x1d0 class C_OP_RestartAfterDuration : public CParticleFunctionOperator { public: // MPropertyFriendlyName "minimum restart time" - float m_flDurationMin; // 0x210 + float m_flDurationMin; // 0x1b0 // MPropertyFriendlyName "maximum restart time" - float m_flDurationMax; // 0x214 + float m_flDurationMax; // 0x1b4 // MPropertyFriendlyName "control point to scale duration" - int32_t m_nCP; // 0x218 + int32_t m_nCP; // 0x1b8 // MPropertyFriendlyName "control point field X/Y/Z" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nCPField; // 0x21c + int32_t m_nCPField; // 0x1bc // MPropertyFriendlyName "child group ID" - int32_t m_nChildGroupID; // 0x220 + int32_t m_nChildGroupID; // 0x1c0 // MPropertyFriendlyName "only restart children" - bool m_bOnlyChildren; // 0x224 + bool m_bOnlyChildren; // 0x1c4 }; // Alignment: 4 -// Size: 0x220 +// Size: 0x1c0 class C_OP_Orient2DRelToCP : public CParticleFunctionOperator { public: // MPropertyFriendlyName "rotation offset" - float m_flRotOffset; // 0x210 + float m_flRotOffset; // 0x1b0 // MPropertyFriendlyName "spin strength" - float m_flSpinStrength; // 0x214 + float m_flSpinStrength; // 0x1b4 // MPropertyFriendlyName "control point" - int32_t m_nCP; // 0x218 + int32_t m_nCP; // 0x1b8 // MPropertyFriendlyName "rotation field" // MPropertyAttributeChoiceName "particlefield_rotation" - ParticleAttributeIndex_t m_nFieldOutput; // 0x21c + ParticleAttributeIndex_t m_nFieldOutput; // 0x1bc }; // Alignment: 4 -// Size: 0x990 +// Size: 0x9b0 class C_OP_MovementRotateParticleAroundAxis : public CParticleFunctionOperator { public: // MPropertyFriendlyName "rotation axis" // MVectorIsCoordinate - CParticleCollectionVecInput m_vecRotAxis; // 0x210 + CParticleCollectionVecInput m_vecRotAxis; // 0x1b0 // MPropertyFriendlyName "rotation rate" - CParticleCollectionFloatInput m_flRotRate; // 0x7f8 + CParticleCollectionFloatInput m_flRotRate; // 0x7e8 // MPropertyFriendlyName "transform input" CParticleTransformInput m_TransformInput; // 0x938 // MPropertyFriendlyName "use local space" - bool m_bLocalSpace; // 0x988 + bool m_bLocalSpace; // 0x9a0 }; // Alignment: 7 -// Size: 0x380 +// Size: 0x330 class C_OP_RotateVector : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 // MPropertyFriendlyName "rotation axis min" // MVectorIsCoordinate - Vector m_vecRotAxisMin; // 0x214 + Vector m_vecRotAxisMin; // 0x1b4 // MPropertyFriendlyName "rotation axis max" // MVectorIsCoordinate - Vector m_vecRotAxisMax; // 0x220 + Vector m_vecRotAxisMax; // 0x1c0 // MPropertyFriendlyName "rotation rate min" - float m_flRotRateMin; // 0x22c + float m_flRotRateMin; // 0x1cc // MPropertyFriendlyName "rotation rate max" - float m_flRotRateMax; // 0x230 + float m_flRotRateMax; // 0x1d0 // MPropertyFriendlyName "normalize output" - bool m_bNormalize; // 0x234 + bool m_bNormalize; // 0x1d4 private: - [[maybe_unused]] uint8_t __pad0235[0x3]; // 0x235 + [[maybe_unused]] uint8_t __pad01d5[0x3]; // 0x1d5 public: // MPropertyFriendlyName "per particle scale" - CPerParticleFloatInput m_flScale; // 0x238 + CPerParticleFloatInput m_flScale; // 0x1d8 }; // Alignment: 3 -// Size: 0x220 +// Size: 0x1c0 class C_OP_MaxVelocity : public CParticleFunctionOperator { public: // MPropertyFriendlyName "maximum velocity" - float m_flMaxVelocity; // 0x210 + float m_flMaxVelocity; // 0x1b0 // MPropertyFriendlyName "override max velocity from this CP" - int32_t m_nOverrideCP; // 0x214 + int32_t m_nOverrideCP; // 0x1b4 // MPropertyFriendlyName "override CP field" - int32_t m_nOverrideCPField; // 0x218 + int32_t m_nOverrideCPField; // 0x1b8 }; // Alignment: 4 -// Size: 0x220 +// Size: 0x1c0 class C_OP_LagCompensation : public CParticleFunctionOperator { public: // MPropertyFriendlyName "desired velocity CP" - int32_t m_nDesiredVelocityCP; // 0x210 + int32_t m_nDesiredVelocityCP; // 0x1b0 // MPropertyFriendlyName "latency CP" - int32_t m_nLatencyCP; // 0x214 + int32_t m_nLatencyCP; // 0x1b4 // MPropertyFriendlyName "latency CP field" - int32_t m_nLatencyCPField; // 0x218 + int32_t m_nLatencyCPField; // 0x1b8 // MPropertyFriendlyName "desired velocity CP field override(for speed only)" - int32_t m_nDesiredVelocityCPField; // 0x21c + int32_t m_nDesiredVelocityCPField; // 0x1bc }; // Alignment: 7 -// Size: 0x270 +// Size: 0x210 class C_OP_MaintainSequentialPath : public CParticleFunctionOperator { public: // MPropertyFriendlyName "maximum distance" - float m_fMaxDistance; // 0x210 + float m_fMaxDistance; // 0x1b0 // MPropertyFriendlyName "particles to map from start to end" - float m_flNumToAssign; // 0x214 + float m_flNumToAssign; // 0x1b4 // MPropertyFriendlyName "cohesion strength" - float m_flCohesionStrength; // 0x218 + float m_flCohesionStrength; // 0x1b8 // MPropertyFriendlyName "control point movement tolerance" - float m_flTolerance; // 0x21c + float m_flTolerance; // 0x1bc // MPropertyFriendlyName "restart behavior (0 = bounce, 1 = loop )" - bool m_bLoop; // 0x220 + bool m_bLoop; // 0x1c0 // MPropertyFriendlyName "use existing particle count" - bool m_bUseParticleCount; // 0x221 + bool m_bUseParticleCount; // 0x1c1 private: - [[maybe_unused]] uint8_t __pad0222[0xe]; // 0x222 + [[maybe_unused]] uint8_t __pad01c2[0xe]; // 0x1c2 public: - CPathParameters m_PathParams; // 0x230 + CPathParameters m_PathParams; // 0x1d0 }; // Alignment: 4 -// Size: 0x260 +// Size: 0x200 class C_OP_LockToSavedSequentialPathV2 : public CParticleFunctionOperator { public: // MPropertyFriendlyName "start fade time" - float m_flFadeStart; // 0x210 + float m_flFadeStart; // 0x1b0 // MPropertyFriendlyName "end fade time" - float m_flFadeEnd; // 0x214 + float m_flFadeEnd; // 0x1b4 // MPropertyFriendlyName "Use sequential CP pairs between start and end point" - bool m_bCPPairs; // 0x218 + bool m_bCPPairs; // 0x1b8 private: - [[maybe_unused]] uint8_t __pad0219[0x7]; // 0x219 + [[maybe_unused]] uint8_t __pad01b9[0x7]; // 0x1b9 public: - CPathParameters m_PathParams; // 0x220 + CPathParameters m_PathParams; // 0x1c0 }; // Alignment: 4 -// Size: 0x260 +// Size: 0x200 class C_OP_LockToSavedSequentialPath : public CParticleFunctionOperator { -private: - [[maybe_unused]] uint8_t __pad0210[0x4]; // 0x210 public: // MPropertyFriendlyName "start fade time" - float m_flFadeStart; // 0x214 + float m_flFadeStart; // 0x1b4 // MPropertyFriendlyName "end fade time" - float m_flFadeEnd; // 0x218 + float m_flFadeEnd; // 0x1b8 // MPropertyFriendlyName "Use sequential CP pairs between start and end point" - bool m_bCPPairs; // 0x21c + bool m_bCPPairs; // 0x1bc private: - [[maybe_unused]] uint8_t __pad021d[0x3]; // 0x21d + [[maybe_unused]] uint8_t __pad01bd[0x3]; // 0x1bd public: - CPathParameters m_PathParams; // 0x220 + CPathParameters m_PathParams; // 0x1c0 }; // Alignment: 11 -// Size: 0x240 +// Size: 0x1e0 class C_OP_RemapDotProductToScalar : public CParticleFunctionOperator { public: // MPropertyFriendlyName "first input control point" - int32_t m_nInputCP1; // 0x210 + int32_t m_nInputCP1; // 0x1b0 // MPropertyFriendlyName "second input control point" - int32_t m_nInputCP2; // 0x214 + int32_t m_nInputCP2; // 0x1b4 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x218 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b8 // MPropertyFriendlyName "input minimum (-1 to 1)" - float m_flInputMin; // 0x21c + float m_flInputMin; // 0x1bc // MPropertyFriendlyName "input maximum (-1 to 1)" - float m_flInputMax; // 0x220 + float m_flInputMax; // 0x1c0 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x224 + float m_flOutputMin; // 0x1c4 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x228 + float m_flOutputMax; // 0x1c8 // MPropertyFriendlyName "use particle velocity for first input" - bool m_bUseParticleVelocity; // 0x22c + bool m_bUseParticleVelocity; // 0x1cc private: - [[maybe_unused]] uint8_t __pad022d[0x3]; // 0x22d + [[maybe_unused]] uint8_t __pad01cd[0x3]; // 0x1cd public: // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x230 + ParticleSetMethod_t m_nSetMethod; // 0x1d0 // MPropertyFriendlyName "only active within specified input range" - bool m_bActiveRange; // 0x234 + bool m_bActiveRange; // 0x1d4 // MPropertyFriendlyName "use particle normal for first input" - bool m_bUseParticleNormal; // 0x235 + bool m_bUseParticleNormal; // 0x1d5 }; // Alignment: 11 -// Size: 0x240 +// Size: 0x1e0 class C_OP_RemapCPtoScalar : public CParticleFunctionOperator { public: // MPropertyFriendlyName "input control point number" - int32_t m_nCPInput; // 0x210 + int32_t m_nCPInput; // 0x1b0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 // MPropertyFriendlyName "input field 0-2 X/Y/Z" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nField; // 0x218 + int32_t m_nField; // 0x1b8 // MPropertyFriendlyName "input minimum" - float m_flInputMin; // 0x21c + float m_flInputMin; // 0x1bc // MPropertyFriendlyName "input maximum" - float m_flInputMax; // 0x220 + float m_flInputMax; // 0x1c0 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x224 + float m_flOutputMin; // 0x1c4 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x228 + float m_flOutputMax; // 0x1c8 // MPropertyFriendlyName "emitter lifetime start time (seconds)" - float m_flStartTime; // 0x22c + float m_flStartTime; // 0x1cc // MPropertyFriendlyName "emitter lifetime end time (seconds)" - float m_flEndTime; // 0x230 + float m_flEndTime; // 0x1d0 // MPropertyFriendlyName "interpolation scale" - float m_flInterpRate; // 0x234 + float m_flInterpRate; // 0x1d4 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x238 + ParticleSetMethod_t m_nSetMethod; // 0x1d8 }; // Alignment: 1 -// Size: 0x220 +// Size: 0x1c0 class C_OP_NormalLock : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x210 + int32_t m_nControlPointNumber; // 0x1b0 }; // Alignment: 13 -// Size: 0x260 +// Size: 0x200 class C_OP_RemapCPtoVector : public CParticleFunctionOperator { public: // MPropertyFriendlyName "input control point number" - int32_t m_nCPInput; // 0x210 + int32_t m_nCPInput; // 0x1b0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 // MPropertyFriendlyName "local space CP" - int32_t m_nLocalSpaceCP; // 0x218 + int32_t m_nLocalSpaceCP; // 0x1b8 // MPropertyFriendlyName "input minimum" // MVectorIsSometimesCoordinate - Vector m_vInputMin; // 0x21c + Vector m_vInputMin; // 0x1bc // MPropertyFriendlyName "input maximum" // MVectorIsSometimesCoordinate - Vector m_vInputMax; // 0x228 + Vector m_vInputMax; // 0x1c8 // MPropertyFriendlyName "output minimum" // MVectorIsSometimesCoordinate - Vector m_vOutputMin; // 0x234 + Vector m_vOutputMin; // 0x1d4 // MPropertyFriendlyName "output maximum" // MVectorIsSometimesCoordinate - Vector m_vOutputMax; // 0x240 + Vector m_vOutputMax; // 0x1e0 // MPropertyFriendlyName "emitter lifetime start time (seconds)" - float m_flStartTime; // 0x24c + float m_flStartTime; // 0x1ec // MPropertyFriendlyName "emitter lifetime end time (seconds)" - float m_flEndTime; // 0x250 + float m_flEndTime; // 0x1f0 // MPropertyFriendlyName "interpolation scale" - float m_flInterpRate; // 0x254 + float m_flInterpRate; // 0x1f4 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x258 + ParticleSetMethod_t m_nSetMethod; // 0x1f8 // MPropertyFriendlyName "offset position" - bool m_bOffset; // 0x25c + bool m_bOffset; // 0x1fc // MPropertyFriendlyName "accelerate position" - bool m_bAccelerate; // 0x25d + bool m_bAccelerate; // 0x1fd }; // Alignment: 2 -// Size: 0x220 +// Size: 0x1c0 class C_OP_SetCPtoVector : public CParticleFunctionOperator { public: // MPropertyFriendlyName "input control point number" - int32_t m_nCPInput; // 0x210 + int32_t m_nCPInput; // 0x1b0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 }; // Alignment: 1 -// Size: 0x260 +// Size: 0x220 class C_OP_RemapTransformToVelocity : public CParticleFunctionOperator { public: // MPropertyFriendlyName "transform input" - CParticleTransformInput m_TransformInput; // 0x210 + CParticleTransformInput m_TransformInput; // 0x1b0 }; // Alignment: 3 -// Size: 0x220 +// Size: 0x1c0 class C_OP_RemapVelocityToVector : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 // MPropertyFriendlyName "scale factor" - float m_flScale; // 0x214 + float m_flScale; // 0x1b4 // MPropertyFriendlyName "normalize" - bool m_bNormalize; // 0x218 + bool m_bNormalize; // 0x1b8 }; // Alignment: 4 -// Size: 0x220 +// Size: 0x1c0 class C_OP_RemapCPVelocityToVector : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point" - int32_t m_nControlPoint; // 0x210 + int32_t m_nControlPoint; // 0x1b0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 // MPropertyFriendlyName "scale factor" - float m_flScale; // 0x218 + float m_flScale; // 0x1b8 // MPropertyFriendlyName "normalize" - bool m_bNormalize; // 0x21c + bool m_bNormalize; // 0x1bc }; // Alignment: 2 -// Size: 0x220 +// Size: 0x1c0 class C_OP_SetCPOrientationToDirection : public CParticleFunctionOperator { public: // MPropertyFriendlyName "input control point" - int32_t m_nInputControlPoint; // 0x210 + int32_t m_nInputControlPoint; // 0x1b0 // MPropertyFriendlyName "output control point" - int32_t m_nOutputControlPoint; // 0x214 + int32_t m_nOutputControlPoint; // 0x1b4 }; // Alignment: 7 -// Size: 0x240 +// Size: 0x1e0 class C_OP_RemapDirectionToCPToVector : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point" - int32_t m_nCP; // 0x210 + int32_t m_nCP; // 0x1b0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 // MPropertyFriendlyName "scale factor" - float m_flScale; // 0x218 + float m_flScale; // 0x1b8 // MPropertyFriendlyName "offset rotation" - float m_flOffsetRot; // 0x21c + float m_flOffsetRot; // 0x1bc // MPropertyFriendlyName "offset axis" // MVectorIsCoordinate - Vector m_vecOffsetAxis; // 0x220 + Vector m_vecOffsetAxis; // 0x1c0 // MPropertyFriendlyName "normalize" - bool m_bNormalize; // 0x22c + bool m_bNormalize; // 0x1cc private: - [[maybe_unused]] uint8_t __pad022d[0x3]; // 0x22d + [[maybe_unused]] uint8_t __pad01cd[0x3]; // 0x1cd public: // MPropertyFriendlyName "strength field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldStrength; // 0x230 + ParticleAttributeIndex_t m_nFieldStrength; // 0x1d0 }; // Alignment: 4 -// Size: 0xdf0 +// Size: 0xe30 class C_OP_RemapCrossProductOfTwoVectorsToVector : public CParticleFunctionOperator { public: // MPropertyFriendlyName "input vector 1" - CPerParticleVecInput m_InputVec1; // 0x210 + CPerParticleVecInput m_InputVec1; // 0x1b0 // MPropertyFriendlyName "input vector 2" - CPerParticleVecInput m_InputVec2; // 0x7f8 + CPerParticleVecInput m_InputVec2; // 0x7e8 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0xde0 + ParticleAttributeIndex_t m_nFieldOutput; // 0xe20 // MPropertyFriendlyName "normalize output" - bool m_bNormalize; // 0xde4 + bool m_bNormalize; // 0xe24 }; // Alignment: 2 -// Size: 0x220 +// Size: 0x1c0 class C_OP_NormalizeVector : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 // MPropertyFriendlyName "scale factor" - float m_flScale; // 0x214 + float m_flScale; // 0x1b4 }; // Alignment: 3 -// Size: 0x220 +// Size: 0x1c0 class C_OP_RemapControlPointDirectionToVector : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 // MPropertyFriendlyName "scale factor" - float m_flScale; // 0x214 + float m_flScale; // 0x1b4 // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x218 + int32_t m_nControlPointNumber; // 0x1b8 }; // Alignment: 9 -// Size: 0x2c0 +// Size: 0x260 class C_OP_SetCPOrientationToGroundNormal : public CParticleFunctionOperator { public: // MPropertyFriendlyName "interpolation rate" - float m_flInterpRate; // 0x210 + float m_flInterpRate; // 0x1b0 // MPropertyFriendlyName "max trace length" - float m_flMaxTraceLength; // 0x214 + float m_flMaxTraceLength; // 0x1b4 // MPropertyFriendlyName "CP movement tolerance" - float m_flTolerance; // 0x218 + float m_flTolerance; // 0x1b8 // MPropertyFriendlyName "trace offset" - float m_flTraceOffset; // 0x21c + float m_flTraceOffset; // 0x1bc // MPropertyFriendlyName "collision group" - char m_CollisionGroupName[128]; // 0x220 + char m_CollisionGroupName[128]; // 0x1c0 // MPropertyFriendlyName "Trace Set" - ParticleTraceSet_t m_nTraceSet; // 0x2a0 + ParticleTraceSet_t m_nTraceSet; // 0x240 // MPropertyFriendlyName "CP to trace from" - int32_t m_nInputCP; // 0x2a4 + int32_t m_nInputCP; // 0x244 // MPropertyFriendlyName "CP to set" - int32_t m_nOutputCP; // 0x2a8 + int32_t m_nOutputCP; // 0x248 private: - [[maybe_unused]] uint8_t __pad02ac[0xc]; // 0x2ac + [[maybe_unused]] uint8_t __pad024c[0xc]; // 0x24c public: // MPropertyFriendlyName "include water" - bool m_bIncludeWater; // 0x2b8 + bool m_bIncludeWater; // 0x258 }; // Alignment: 4 -// Size: 0x270 +// Size: 0x230 class C_OP_RemapTransformOrientationToRotations : public CParticleFunctionOperator { public: // MPropertyFriendlyName "transform input" - CParticleTransformInput m_TransformInput; // 0x210 + CParticleTransformInput m_TransformInput; // 0x1b0 // MPropertyFriendlyName "offset pitch/yaw/roll" - Vector m_vecRotation; // 0x260 + Vector m_vecRotation; // 0x218 // MPropertyFriendlyName "Use Quaternians Internally" - bool m_bUseQuat; // 0x26c + bool m_bUseQuat; // 0x224 // MPropertyFriendlyName "Write normal instead of rotation" - bool m_bWriteNormal; // 0x26d + bool m_bWriteNormal; // 0x225 }; // Alignment: 4 -// Size: 0x220 +// Size: 0x1c0 class C_OP_RemapControlPointOrientationToRotation : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point" - int32_t m_nCP; // 0x210 + int32_t m_nCP; // 0x1b0 // MPropertyFriendlyName "rotation field" // MPropertyAttributeChoiceName "particlefield_rotation" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 // MPropertyFriendlyName "offset rotation" - float m_flOffsetRot; // 0x218 + float m_flOffsetRot; // 0x1b8 // MPropertyFriendlyName "control point axis" // MPropertyAttributeChoiceName "vector_component" // MVectorIsSometimesCoordinate - int32_t m_nComponent; // 0x21c + int32_t m_nComponent; // 0x1bc }; // Alignment: 5 -// Size: 0x240 +// Size: 0x1e0 class C_OP_LockToPointList : public CParticleFunctionOperator { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x210 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "point list" - CUtlVector< PointDefinition_t > m_pointList; // 0x218 + CUtlVector< PointDefinition_t > m_pointList; // 0x1b8 // MPropertyFriendlyName "space points along path" - bool m_bPlaceAlongPath; // 0x230 + bool m_bPlaceAlongPath; // 0x1d0 // MPropertyFriendlyName "Treat path as a loop" - bool m_bClosedLoop; // 0x231 + bool m_bClosedLoop; // 0x1d1 private: - [[maybe_unused]] uint8_t __pad0232[0x2]; // 0x232 + [[maybe_unused]] uint8_t __pad01d2[0x2]; // 0x1d2 public: // MPropertyFriendlyName "Numer of points along path" - int32_t m_nNumPointsAlongPath; // 0x234 + int32_t m_nNumPointsAlongPath; // 0x1d4 }; // Alignment: 9 -// Size: 0x270 +// Size: 0x210 class C_OP_RemapNamedModelElementOnceTimed : public CParticleFunctionOperator { public: - CStrongHandle< InfoForResourceTypeCModel > m_hModel; // 0x210 + CStrongHandle< InfoForResourceTypeCModel > m_hModel; // 0x1b0 // MPropertyFriendlyName "input names" - CUtlVector< CUtlString > m_inNames; // 0x218 + CUtlVector< CUtlString > m_inNames; // 0x1b8 // MPropertyFriendlyName "output names" - CUtlVector< CUtlString > m_outNames; // 0x230 + CUtlVector< CUtlString > m_outNames; // 0x1d0 // MPropertyFriendlyName "fallback names when the input doesn't match" - CUtlVector< CUtlString > m_fallbackNames; // 0x248 + CUtlVector< CUtlString > m_fallbackNames; // 0x1e8 // MPropertyFriendlyName "model from renderer" - bool m_bModelFromRenderer; // 0x260 + bool m_bModelFromRenderer; // 0x200 // MPropertyFriendlyName "remap time proportional" - bool m_bProportional; // 0x261 + bool m_bProportional; // 0x201 private: - [[maybe_unused]] uint8_t __pad0262[0x2]; // 0x262 + [[maybe_unused]] uint8_t __pad0202[0x2]; // 0x202 public: // MPropertyFriendlyName "input field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldInput; // 0x264 + ParticleAttributeIndex_t m_nFieldInput; // 0x204 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x268 + ParticleAttributeIndex_t m_nFieldOutput; // 0x208 // MPropertyFriendlyName "remap time" - float m_flRemapTime; // 0x26c + float m_flRemapTime; // 0x20c }; // Alignment: 0 -// Size: 0x270 +// Size: 0x210 class C_OP_RemapNamedModelSequenceOnceTimed : public C_OP_RemapNamedModelElementOnceTimed { public: @@ -8710,7 +8003,7 @@ public: }; // Alignment: 0 -// Size: 0x270 +// Size: 0x210 class C_OP_RemapNamedModelBodyPartOnceTimed : public C_OP_RemapNamedModelElementOnceTimed { public: @@ -8718,7 +8011,7 @@ public: }; // Alignment: 0 -// Size: 0x270 +// Size: 0x210 class C_OP_RemapNamedModelMeshGroupOnceTimed : public C_OP_RemapNamedModelElementOnceTimed { public: @@ -8726,32 +8019,32 @@ public: }; // Alignment: 7 -// Size: 0x270 +// Size: 0x210 class C_OP_RemapNamedModelElementEndCap : public CParticleFunctionOperator { public: - CStrongHandle< InfoForResourceTypeCModel > m_hModel; // 0x210 + CStrongHandle< InfoForResourceTypeCModel > m_hModel; // 0x1b0 // MPropertyFriendlyName "input names" - CUtlVector< CUtlString > m_inNames; // 0x218 + CUtlVector< CUtlString > m_inNames; // 0x1b8 // MPropertyFriendlyName "output names" - CUtlVector< CUtlString > m_outNames; // 0x230 + CUtlVector< CUtlString > m_outNames; // 0x1d0 // MPropertyFriendlyName "fallback names when the input doesn't match" - CUtlVector< CUtlString > m_fallbackNames; // 0x248 + CUtlVector< CUtlString > m_fallbackNames; // 0x1e8 // MPropertyFriendlyName "model from renderer" - bool m_bModelFromRenderer; // 0x260 + bool m_bModelFromRenderer; // 0x200 private: - [[maybe_unused]] uint8_t __pad0261[0x3]; // 0x261 + [[maybe_unused]] uint8_t __pad0201[0x3]; // 0x201 public: // MPropertyFriendlyName "input field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldInput; // 0x264 + ParticleAttributeIndex_t m_nFieldInput; // 0x204 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x268 + ParticleAttributeIndex_t m_nFieldOutput; // 0x208 }; // Alignment: 0 -// Size: 0x270 +// Size: 0x210 class C_OP_RemapNamedModelSequenceEndCap : public C_OP_RemapNamedModelElementEndCap { public: @@ -8759,7 +8052,7 @@ public: }; // Alignment: 0 -// Size: 0x270 +// Size: 0x210 class C_OP_RemapNamedModelBodyPartEndCap : public C_OP_RemapNamedModelElementEndCap { public: @@ -8767,7 +8060,7 @@ public: }; // Alignment: 0 -// Size: 0x270 +// Size: 0x210 class C_OP_RemapNamedModelMeshGroupEndCap : public C_OP_RemapNamedModelElementEndCap { public: @@ -8775,37 +8068,37 @@ public: }; // Alignment: 11 -// Size: 0x5f0 +// Size: 0x5c0 class C_OP_SetFromCPSnapshot : public CParticleFunctionOperator { public: // MPropertyFriendlyName "snapshot control point number" - int32_t m_nControlPointNumber; // 0x210 + int32_t m_nControlPointNumber; // 0x1b0 // MPropertyFriendlyName "field to read" // MPropertyAttributeChoiceName "particlefield" - ParticleAttributeIndex_t m_nAttributeToRead; // 0x214 + ParticleAttributeIndex_t m_nAttributeToRead; // 0x1b4 // MPropertyFriendlyName "field to write" // MPropertyAttributeChoiceName "particlefield" - ParticleAttributeIndex_t m_nAttributeToWrite; // 0x218 + ParticleAttributeIndex_t m_nAttributeToWrite; // 0x1b8 // MPropertyFriendlyName "local space control point number" - int32_t m_nLocalSpaceCP; // 0x21c + int32_t m_nLocalSpaceCP; // 0x1bc // MPropertyFriendlyName "random order" - bool m_bRandom; // 0x220 + bool m_bRandom; // 0x1c0 // MPropertyFriendlyName "reverse order" - bool m_bReverse; // 0x221 + bool m_bReverse; // 0x1c1 private: - [[maybe_unused]] uint8_t __pad0222[0x2]; // 0x222 + [[maybe_unused]] uint8_t __pad01c2[0x2]; // 0x1c2 public: // MPropertyFriendlyName "random seed" - int32_t m_nRandomSeed; // 0x224 + int32_t m_nRandomSeed; // 0x1c4 // MPropertyFriendlyName "Snapshot start point" - CParticleCollectionFloatInput m_nSnapShotStartPoint; // 0x228 + CParticleCollectionFloatInput m_nSnapShotStartPoint; // 0x1c8 // MPropertyFriendlyName "Snapshot increment amount" - CParticleCollectionFloatInput m_nSnapShotIncrement; // 0x368 + CParticleCollectionFloatInput m_nSnapShotIncrement; // 0x318 // MPropertyFriendlyName "Interpolation" - CPerParticleFloatInput m_flInterpolation; // 0x4a8 + CPerParticleFloatInput m_flInterpolation; // 0x468 // MPropertyFriendlyName "Sub-Sample Between Input Points" - bool m_bSubSample; // 0x5e8 + bool m_bSubSample; // 0x5b8 }; // Alignment: 9 @@ -8814,19 +8107,19 @@ class C_OP_VectorFieldSnapshot : public CParticleFunctionOperator { public: // MPropertyFriendlyName "snapshot control point number" - int32_t m_nControlPointNumber; // 0x210 + int32_t m_nControlPointNumber; // 0x1b0 // MPropertyFriendlyName "extra velocity field to write" // MPropertyAttributeChoiceName "particlefield" - ParticleAttributeIndex_t m_nAttributeToWrite; // 0x214 + ParticleAttributeIndex_t m_nAttributeToWrite; // 0x1b4 // MPropertyFriendlyName "local space control point number" - int32_t m_nLocalSpaceCP; // 0x218 + int32_t m_nLocalSpaceCP; // 0x1b8 private: - [[maybe_unused]] uint8_t __pad021c[0x4]; // 0x21c + [[maybe_unused]] uint8_t __pad01bc[0x4]; // 0x1bc public: // MPropertyFriendlyName "Interpolation" - CPerParticleFloatInput m_flInterpolation; // 0x220 + CPerParticleFloatInput m_flInterpolation; // 0x1c0 // MPropertyFriendlyName "Component Scale" - CPerParticleVecInput m_vecScale; // 0x360 + CPerParticleVecInput m_vecScale; // 0x310 // MPropertyFriendlyName "Boundary Dampening" float m_flBoundaryDampening; // 0x948 // MPropertyFriendlyName "Set Velocity" @@ -8841,169 +8134,169 @@ public: }; // Alignment: 5 -// Size: 0x4c0 +// Size: 0x480 class C_OP_SetAttributeToScalarExpression : public CParticleFunctionOperator { public: // MPropertyFriendlyName "expression" - ScalarExpressionType_t m_nExpression; // 0x210 + ScalarExpressionType_t m_nExpression; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "input 1" - CPerParticleFloatInput m_flInput1; // 0x218 + CPerParticleFloatInput m_flInput1; // 0x1b8 // MPropertyFriendlyName "input 2" - CPerParticleFloatInput m_flInput2; // 0x358 + CPerParticleFloatInput m_flInput2; // 0x308 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nOutputField; // 0x498 + ParticleAttributeIndex_t m_nOutputField; // 0x458 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x49c + ParticleSetMethod_t m_nSetMethod; // 0x45c }; // Alignment: 6 -// Size: 0xe60 +// Size: 0xea0 class C_OP_SetVectorAttributeToVectorExpression : public CParticleFunctionOperator { public: // MPropertyFriendlyName "expression" - VectorExpressionType_t m_nExpression; // 0x210 + VectorExpressionType_t m_nExpression; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "input 1" - CPerParticleVecInput m_vInput1; // 0x218 + CPerParticleVecInput m_vInput1; // 0x1b8 // MPropertyFriendlyName "input 2" - CPerParticleVecInput m_vInput2; // 0x800 + CPerParticleVecInput m_vInput2; // 0x7f0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nOutputField; // 0xde8 + ParticleAttributeIndex_t m_nOutputField; // 0xe28 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0xdec + ParticleSetMethod_t m_nSetMethod; // 0xe2c // MPropertyFriendlyName "normalize result" - bool m_bNormalizedOutput; // 0xdf0 + bool m_bNormalizedOutput; // 0xe30 }; // Alignment: 6 -// Size: 0xf30 +// Size: 0xf80 class C_OP_SetFloatAttributeToVectorExpression : public CParticleFunctionOperator { public: // MPropertyFriendlyName "expression" - VectorFloatExpressionType_t m_nExpression; // 0x210 + VectorFloatExpressionType_t m_nExpression; // 0x1b0 private: - [[maybe_unused]] uint8_t __pad0214[0x4]; // 0x214 + [[maybe_unused]] uint8_t __pad01b4[0x4]; // 0x1b4 public: // MPropertyFriendlyName "input 1" - CPerParticleVecInput m_vInput1; // 0x218 + CPerParticleVecInput m_vInput1; // 0x1b8 // MPropertyFriendlyName "input 2" - CPerParticleVecInput m_vInput2; // 0x800 + CPerParticleVecInput m_vInput2; // 0x7f0 // MPropertyFriendlyName "output" - CParticleRemapFloatInput m_flOutputRemap; // 0xde8 + CParticleRemapFloatInput m_flOutputRemap; // 0xe28 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nOutputField; // 0xf28 + ParticleAttributeIndex_t m_nOutputField; // 0xf78 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0xf2c + ParticleSetMethod_t m_nSetMethod; // 0xf7c }; // Alignment: 10 -// Size: 0x730 +// Size: 0x710 class C_OP_MovementSkinnedPositionFromCPSnapshot : public CParticleFunctionOperator { public: // MPropertyFriendlyName "snapshot control point number" - int32_t m_nSnapshotControlPointNumber; // 0x210 + int32_t m_nSnapshotControlPointNumber; // 0x1b0 // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x214 + int32_t m_nControlPointNumber; // 0x1b4 // MPropertyFriendlyName "random order" - bool m_bRandom; // 0x218 + bool m_bRandom; // 0x1b8 private: - [[maybe_unused]] uint8_t __pad0219[0x3]; // 0x219 + [[maybe_unused]] uint8_t __pad01b9[0x3]; // 0x1b9 public: // MPropertyFriendlyName "random seed" - int32_t m_nRandomSeed; // 0x21c + int32_t m_nRandomSeed; // 0x1bc // MPropertyFriendlyName "set normal" - bool m_bSetNormal; // 0x220 + bool m_bSetNormal; // 0x1c0 // MPropertyFriendlyName "set radius" - bool m_bSetRadius; // 0x221 + bool m_bSetRadius; // 0x1c1 private: - [[maybe_unused]] uint8_t __pad0222[0x6]; // 0x222 + [[maybe_unused]] uint8_t __pad01c2[0x6]; // 0x1c2 public: // MPropertyFriendlyName "particle increment amount" - CParticleCollectionFloatInput m_flIncrement; // 0x228 + CParticleCollectionFloatInput m_flIncrement; // 0x1c8 // MPropertyFriendlyName "Full Loop Increment Amount" - CParticleCollectionFloatInput m_nFullLoopIncrement; // 0x368 + CParticleCollectionFloatInput m_nFullLoopIncrement; // 0x318 // MPropertyFriendlyName "Snapshot start point" - CParticleCollectionFloatInput m_nSnapShotStartPoint; // 0x4a8 + CParticleCollectionFloatInput m_nSnapShotStartPoint; // 0x468 // MPropertyFriendlyName "Interpolation" - CPerParticleFloatInput m_flInterpolation; // 0x5e8 + CPerParticleFloatInput m_flInterpolation; // 0x5b8 }; // Alignment: 6 -// Size: 0x4a0 +// Size: 0x460 class C_OP_MovementMoveAlongSkinnedCPSnapshot : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x210 + int32_t m_nControlPointNumber; // 0x1b0 // MPropertyFriendlyName "snapshot control point number" - int32_t m_nSnapshotControlPointNumber; // 0x214 + int32_t m_nSnapshotControlPointNumber; // 0x1b4 // MPropertyFriendlyName "set normal" - bool m_bSetNormal; // 0x218 + bool m_bSetNormal; // 0x1b8 // MPropertyFriendlyName "set radius" - bool m_bSetRadius; // 0x219 + bool m_bSetRadius; // 0x1b9 private: - [[maybe_unused]] uint8_t __pad021a[0x6]; // 0x21a + [[maybe_unused]] uint8_t __pad01ba[0x6]; // 0x1ba public: // MPropertyFriendlyName "Interpolation" - CPerParticleFloatInput m_flInterpolation; // 0x220 + CPerParticleFloatInput m_flInterpolation; // 0x1c0 // MPropertyFriendlyName "Snapshot Index T Value" - CPerParticleFloatInput m_flTValue; // 0x360 + CPerParticleFloatInput m_flTValue; // 0x310 }; // Alignment: 2 -// Size: 0x380 +// Size: 0x330 class C_OP_QuantizeFloat : public CParticleFunctionOperator { public: // MPropertyFriendlyName "value" - CPerParticleFloatInput m_InputValue; // 0x210 + CPerParticleFloatInput m_InputValue; // 0x1b0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nOutputField; // 0x350 + ParticleAttributeIndex_t m_nOutputField; // 0x300 }; // Alignment: 4 -// Size: 0x4c0 +// Size: 0x480 class C_OP_SetFloatCollection : public CParticleFunctionOperator { public: // MPropertyFriendlyName "value" - CParticleCollectionFloatInput m_InputValue; // 0x210 + CParticleCollectionFloatInput m_InputValue; // 0x1b0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nOutputField; // 0x350 + ParticleAttributeIndex_t m_nOutputField; // 0x300 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x354 + ParticleSetMethod_t m_nSetMethod; // 0x304 // MPropertyFriendlyName "interpolation" - CParticleCollectionFloatInput m_Lerp; // 0x358 + CParticleCollectionFloatInput m_Lerp; // 0x308 }; // Alignment: 4 -// Size: 0x4c0 +// Size: 0x480 class C_OP_SetFloat : public CParticleFunctionOperator { public: // MPropertyFriendlyName "value" - CPerParticleFloatInput m_InputValue; // 0x210 + CPerParticleFloatInput m_InputValue; // 0x1b0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nOutputField; // 0x350 + ParticleAttributeIndex_t m_nOutputField; // 0x300 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x354 + ParticleSetMethod_t m_nSetMethod; // 0x304 // MPropertyFriendlyName "interpolation" - CPerParticleFloatInput m_Lerp; // 0x358 + CPerParticleFloatInput m_Lerp; // 0x308 }; // Alignment: 5 @@ -9012,773 +8305,820 @@ class C_OP_SetVec : public CParticleFunctionOperator { public: // MPropertyFriendlyName "value" - CPerParticleVecInput m_InputValue; // 0x210 + CPerParticleVecInput m_InputValue; // 0x1b0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nOutputField; // 0x7f8 + ParticleAttributeIndex_t m_nOutputField; // 0x7e8 // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x7fc + ParticleSetMethod_t m_nSetMethod; // 0x7ec // MPropertyFriendlyName "interpolation" - CPerParticleFloatInput m_Lerp; // 0x800 + CPerParticleFloatInput m_Lerp; // 0x7f0 // MPropertyFriendlyName "normalize result" bool m_bNormalizedOutput; // 0x940 }; +// Alignment: 3 +// Size: 0x940 +class C_OP_DragRelativeToPlane : public CParticleFunctionOperator +{ +public: + // MPropertyFriendlyName "dampening" + CParticleCollectionFloatInput m_flDragAtPlane; // 0x1b0 + // MPropertyFriendlyName "plane normal" + // MVectorIsCoordinate + CParticleCollectionVecInput m_vecPlaneNormal; // 0x300 + // MPropertyFriendlyName "control point number" + int32_t m_nControlPointNumber; // 0x938 +}; + // Alignment: 2 -// Size: 0x220 +// Size: 0x1c0 class C_OP_RemapDensityGradientToVectorAttribute : public CParticleFunctionOperator { public: // MPropertyFriendlyName "Radius scale for particle influence" - float m_flRadiusScale; // 0x210 + float m_flRadiusScale; // 0x1b0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x214 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1b4 }; // Alignment: 6 -// Size: 0x230 +// Size: 0x1d0 class C_OP_LockPoints : public CParticleFunctionOperator { public: // MPropertyFriendlyName "min column/particle index to affect" - int32_t m_nMinCol; // 0x210 + int32_t m_nMinCol; // 0x1b0 // MPropertyFriendlyName "max column/particle index to affect" - int32_t m_nMaxCol; // 0x214 + int32_t m_nMaxCol; // 0x1b4 // MPropertyFriendlyName "min row/particle index to affect" - int32_t m_nMinRow; // 0x218 + int32_t m_nMinRow; // 0x1b8 // MPropertyFriendlyName "max row/particle index to affect" - int32_t m_nMaxRow; // 0x21c + int32_t m_nMaxRow; // 0x1bc // MPropertyFriendlyName "control point to lock to" - int32_t m_nControlPoint; // 0x220 + int32_t m_nControlPoint; // 0x1c0 // MPropertyFriendlyName "amount of current position to preserve" - float m_flBlendValue; // 0x224 + float m_flBlendValue; // 0x1c4 }; // Alignment: 5 -// Size: 0x230 +// Size: 0x1d0 class C_OP_RemapDistanceToLineSegmentBase : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point 0" - int32_t m_nCP0; // 0x210 + int32_t m_nCP0; // 0x1b0 // MPropertyFriendlyName "control point 1" - int32_t m_nCP1; // 0x214 + int32_t m_nCP1; // 0x1b4 // MPropertyFriendlyName "min distance value" - float m_flMinInputValue; // 0x218 + float m_flMinInputValue; // 0x1b8 // MPropertyFriendlyName "max distance value" - float m_flMaxInputValue; // 0x21c + float m_flMaxInputValue; // 0x1bc // MPropertyFriendlyName "use distance to an infinite line instead of a finite line segment" - bool m_bInfiniteLine; // 0x220 + bool m_bInfiniteLine; // 0x1c0 }; // Alignment: 3 -// Size: 0x240 +// Size: 0x1e0 class C_OP_RemapDistanceToLineSegmentToScalar : public C_OP_RemapDistanceToLineSegmentBase { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFieldOutput; // 0x230 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1d0 // MPropertyFriendlyName "output value at min distance" - float m_flMinOutputValue; // 0x234 + float m_flMinOutputValue; // 0x1d4 // MPropertyFriendlyName "output value at max distance" - float m_flMaxOutputValue; // 0x238 + float m_flMaxOutputValue; // 0x1d8 }; // Alignment: 3 -// Size: 0x250 +// Size: 0x1f0 class C_OP_RemapDistanceToLineSegmentToVector : public C_OP_RemapDistanceToLineSegmentBase { public: // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x230 + ParticleAttributeIndex_t m_nFieldOutput; // 0x1d0 // MPropertyFriendlyName "output value at min distance" - Vector m_vMinOutputValue; // 0x234 + Vector m_vMinOutputValue; // 0x1d4 // MPropertyFriendlyName "output value at max distance" - Vector m_vMaxOutputValue; // 0x240 + Vector m_vMaxOutputValue; // 0x1e0 }; // Alignment: 11 -// Size: 0x250 +// Size: 0x1f0 class C_OP_TeleportBeam : public CParticleFunctionOperator { public: // MPropertyFriendlyName "Position Control Point" - int32_t m_nCPPosition; // 0x210 + int32_t m_nCPPosition; // 0x1b0 // MPropertyFriendlyName "Velocity Control Point" - int32_t m_nCPVelocity; // 0x214 + int32_t m_nCPVelocity; // 0x1b4 // MPropertyFriendlyName "Misc Control Point" - int32_t m_nCPMisc; // 0x218 + int32_t m_nCPMisc; // 0x1b8 // MPropertyFriendlyName "Color Control Point" - int32_t m_nCPColor; // 0x21c + int32_t m_nCPColor; // 0x1bc // MPropertyFriendlyName "Invalid Color Control Point" - int32_t m_nCPInvalidColor; // 0x220 + int32_t m_nCPInvalidColor; // 0x1c0 // MPropertyFriendlyName "Extra Arc Data Point" - int32_t m_nCPExtraArcData; // 0x224 + int32_t m_nCPExtraArcData; // 0x1c4 // MPropertyFriendlyName "Gravity" - Vector m_vGravity; // 0x228 + Vector m_vGravity; // 0x1c8 // MPropertyFriendlyName "Arc Duration Maximum" - float m_flArcMaxDuration; // 0x234 + float m_flArcMaxDuration; // 0x1d4 // MPropertyFriendlyName "Segment Break" - float m_flSegmentBreak; // 0x238 + float m_flSegmentBreak; // 0x1d8 // MPropertyFriendlyName "Arc Speed" - float m_flArcSpeed; // 0x23c + float m_flArcSpeed; // 0x1dc // MPropertyFriendlyName "Alpha" - float m_flAlpha; // 0x240 + float m_flAlpha; // 0x1e0 }; // Alignment: 10 -// Size: 0x240 +// Size: 0x1e0 class C_OP_CycleScalar : public CParticleFunctionOperator { public: // MPropertyFriendlyName "destination scalar field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nDestField; // 0x210 + ParticleAttributeIndex_t m_nDestField; // 0x1b0 // MPropertyFriendlyName "Value at start of cycle" - float m_flStartValue; // 0x214 + float m_flStartValue; // 0x1b4 // MPropertyFriendlyName "Value at end of cycle" - float m_flEndValue; // 0x218 + float m_flEndValue; // 0x1b8 // MPropertyFriendlyName "Cycle time" - float m_flCycleTime; // 0x21c + float m_flCycleTime; // 0x1bc // MPropertyFriendlyName "Do not repeat cycle" - bool m_bDoNotRepeatCycle; // 0x220 + bool m_bDoNotRepeatCycle; // 0x1c0 // MPropertyFriendlyName "Synchronize particles" - bool m_bSynchronizeParticles; // 0x221 + bool m_bSynchronizeParticles; // 0x1c1 private: - [[maybe_unused]] uint8_t __pad0222[0x2]; // 0x222 + [[maybe_unused]] uint8_t __pad01c2[0x2]; // 0x1c2 public: // MPropertyFriendlyName "Scale Start/End Control Point" - int32_t m_nCPScale; // 0x224 + int32_t m_nCPScale; // 0x1c4 // MPropertyFriendlyName "start scale control point field" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nCPFieldMin; // 0x228 + int32_t m_nCPFieldMin; // 0x1c8 // MPropertyFriendlyName "end scale control point field" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nCPFieldMax; // 0x22c + int32_t m_nCPFieldMax; // 0x1cc // MPropertyFriendlyName "set value method" - ParticleSetMethod_t m_nSetMethod; // 0x230 + ParticleSetMethod_t m_nSetMethod; // 0x1d0 }; // Alignment: 11 -// Size: 0x270 +// Size: 0x210 class C_OP_CalculateVectorAttribute : public CParticleFunctionOperator { public: // MPropertyFriendlyName "start value" - Vector m_vStartValue; // 0x210 + Vector m_vStartValue; // 0x1b0 // MPropertyFriendlyName "input field 1" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldInput1; // 0x21c + ParticleAttributeIndex_t m_nFieldInput1; // 0x1bc // MPropertyFriendlyName "input scale 1" - float m_flInputScale1; // 0x220 + float m_flInputScale1; // 0x1c0 // MPropertyFriendlyName "input field 2" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldInput2; // 0x224 + ParticleAttributeIndex_t m_nFieldInput2; // 0x1c4 // MPropertyFriendlyName "input scale 2" - float m_flInputScale2; // 0x228 + float m_flInputScale2; // 0x1c8 // MPropertyFriendlyName "control point input 1" - ControlPointReference_t m_nControlPointInput1; // 0x22c + ControlPointReference_t m_nControlPointInput1; // 0x1cc // MPropertyFriendlyName "control point scale 1" - float m_flControlPointScale1; // 0x240 + float m_flControlPointScale1; // 0x1e0 // MPropertyFriendlyName "control point input 2" - ControlPointReference_t m_nControlPointInput2; // 0x244 + ControlPointReference_t m_nControlPointInput2; // 0x1e4 // MPropertyFriendlyName "control point scale 2" - float m_flControlPointScale2; // 0x258 + float m_flControlPointScale2; // 0x1f8 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "particlefield_vector" - ParticleAttributeIndex_t m_nFieldOutput; // 0x25c + ParticleAttributeIndex_t m_nFieldOutput; // 0x1fc // MPropertyFriendlyName "final per component scale" - Vector m_vFinalOutputScale; // 0x260 + Vector m_vFinalOutputScale; // 0x200 }; // Alignment: 3 -// Size: 0x5d0 +// Size: 0x5a0 class C_OP_ColorAdjustHSL : public CParticleFunctionOperator { public: // MPropertyFriendlyName "hue adjust" - CPerParticleFloatInput m_flHueAdjust; // 0x210 + CPerParticleFloatInput m_flHueAdjust; // 0x1b0 // MPropertyFriendlyName "saturation adjust" - CPerParticleFloatInput m_flSaturationAdjust; // 0x350 + CPerParticleFloatInput m_flSaturationAdjust; // 0x300 // MPropertyFriendlyName "lightness adjust" - CPerParticleFloatInput m_flLightnessAdjust; // 0x490 + CPerParticleFloatInput m_flLightnessAdjust; // 0x450 }; // Alignment: 2 -// Size: 0x220 +// Size: 0x1c0 class C_OP_ConnectParentParticleToNearest : public CParticleFunctionOperator { public: // MPropertyFriendlyName "control point to set" - int32_t m_nFirstControlPoint; // 0x210 + int32_t m_nFirstControlPoint; // 0x1b0 // MPropertyFriendlyName "Second Control point to set" - int32_t m_nSecondControlPoint; // 0x214 + int32_t m_nSecondControlPoint; // 0x1b4 }; // Alignment: 6 -// Size: 0x230 +// Size: 0x1d0 class C_OP_UpdateLightSource : public CParticleFunctionOperator { public: // MPropertyFriendlyName "color tint" - Color m_vColorTint; // 0x210 + Color m_vColorTint; // 0x1b0 // MPropertyFriendlyName "amount to multiply light brightness by" - float m_flBrightnessScale; // 0x214 + float m_flBrightnessScale; // 0x1b4 // MPropertyFriendlyName "amount to multiply particle system radius by to get light radius" - float m_flRadiusScale; // 0x218 + float m_flRadiusScale; // 0x1b8 // MPropertyFriendlyName "minimum radius for created lights" - float m_flMinimumLightingRadius; // 0x21c + float m_flMinimumLightingRadius; // 0x1bc // MPropertyFriendlyName "maximum radius for created lights" - float m_flMaximumLightingRadius; // 0x220 + float m_flMaximumLightingRadius; // 0x1c0 // MPropertyFriendlyName "amount of damping of changes" - float m_flPositionDampingConstant; // 0x224 + float m_flPositionDampingConstant; // 0x1c4 }; // Alignment: 8 -// Size: 0x240 +// Size: 0x1e0 class C_OP_RemapSpeedtoCP : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "input control point" - int32_t m_nInControlPointNumber; // 0x220 + int32_t m_nInControlPointNumber; // 0x1c0 // MPropertyFriendlyName "output control point" - int32_t m_nOutControlPointNumber; // 0x224 + int32_t m_nOutControlPointNumber; // 0x1c4 // MPropertyFriendlyName "Output field 0-2 X/Y/Z" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nField; // 0x228 + int32_t m_nField; // 0x1c8 // MPropertyFriendlyName "input minimum" - float m_flInputMin; // 0x22c + float m_flInputMin; // 0x1cc // MPropertyFriendlyName "input maximum" - float m_flInputMax; // 0x230 + float m_flInputMax; // 0x1d0 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x234 + float m_flOutputMin; // 0x1d4 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x238 + float m_flOutputMax; // 0x1d8 // MPropertyFriendlyName "use delta of velocity instead of constant speed" - bool m_bUseDeltaV; // 0x23c + bool m_bUseDeltaV; // 0x1dc }; // Alignment: 10 -// Size: 0xda0 +// Size: 0xdd0 class C_OP_RemapAverageHitboxSpeedtoCP : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "input control point" - int32_t m_nInControlPointNumber; // 0x220 + int32_t m_nInControlPointNumber; // 0x1c0 // MPropertyFriendlyName "output control point" - int32_t m_nOutControlPointNumber; // 0x224 + int32_t m_nOutControlPointNumber; // 0x1c4 // MPropertyFriendlyName "Output component" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nField; // 0x228 + int32_t m_nField; // 0x1c8 private: - [[maybe_unused]] uint8_t __pad022c[0x4]; // 0x22c + [[maybe_unused]] uint8_t __pad01cc[0x4]; // 0x1cc public: // MPropertyFriendlyName "input minimum" - CParticleCollectionFloatInput m_flInputMin; // 0x230 + CParticleCollectionFloatInput m_flInputMin; // 0x1d0 // MPropertyFriendlyName "input maximum" - CParticleCollectionFloatInput m_flInputMax; // 0x370 + CParticleCollectionFloatInput m_flInputMax; // 0x320 // MPropertyFriendlyName "output minimum" - CParticleCollectionFloatInput m_flOutputMin; // 0x4b0 + CParticleCollectionFloatInput m_flOutputMin; // 0x470 // MPropertyFriendlyName "output maximum" - CParticleCollectionFloatInput m_flOutputMax; // 0x5f0 + CParticleCollectionFloatInput m_flOutputMax; // 0x5c0 // MPropertyFriendlyName "intersection height CP" - int32_t m_nHeightControlPointNumber; // 0x730 + int32_t m_nHeightControlPointNumber; // 0x710 private: - [[maybe_unused]] uint8_t __pad0734[0x4]; // 0x734 + [[maybe_unused]] uint8_t __pad0714[0x4]; // 0x714 public: // MPropertyFriendlyName "comparison velocity" - CParticleCollectionVecInput m_vecComparisonVelocity; // 0x738 + CParticleCollectionVecInput m_vecComparisonVelocity; // 0x718 // MPropertyFriendlyName "hitbox set" - char m_HitboxSetName[128]; // 0xd20 + char m_HitboxSetName[128]; // 0xd50 }; // Alignment: 8 -// Size: 0x730 +// Size: 0x710 class C_OP_RemapDotProductToCP : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "first input control point" - int32_t m_nInputCP1; // 0x220 + int32_t m_nInputCP1; // 0x1c0 // MPropertyFriendlyName "second input control point" - int32_t m_nInputCP2; // 0x224 + int32_t m_nInputCP2; // 0x1c4 // MPropertyFriendlyName "output control point" - int32_t m_nOutputCP; // 0x228 + int32_t m_nOutputCP; // 0x1c8 // MPropertyFriendlyName "output component" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nOutVectorField; // 0x22c + int32_t m_nOutVectorField; // 0x1cc // MPropertyFriendlyName "input minimum (-1 to 1)" - CParticleCollectionFloatInput m_flInputMin; // 0x230 + CParticleCollectionFloatInput m_flInputMin; // 0x1d0 // MPropertyFriendlyName "input maximum (-1 to 1)" - CParticleCollectionFloatInput m_flInputMax; // 0x370 + CParticleCollectionFloatInput m_flInputMax; // 0x320 // MPropertyFriendlyName "output minimum" - CParticleCollectionFloatInput m_flOutputMin; // 0x4b0 + CParticleCollectionFloatInput m_flOutputMin; // 0x470 // MPropertyFriendlyName "output maximum" - CParticleCollectionFloatInput m_flOutputMax; // 0x5f0 + CParticleCollectionFloatInput m_flOutputMax; // 0x5c0 }; // Alignment: 6 -// Size: 0x5f0 +// Size: 0x5c0 class C_OP_SetControlPointFieldToScalarExpression : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "expression" - ScalarExpressionType_t m_nExpression; // 0x220 + ScalarExpressionType_t m_nExpression; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0224[0x4]; // 0x224 + [[maybe_unused]] uint8_t __pad01c4[0x4]; // 0x1c4 public: // MPropertyFriendlyName "input 1" - CParticleCollectionFloatInput m_flInput1; // 0x228 + CParticleCollectionFloatInput m_flInput1; // 0x1c8 // MPropertyFriendlyName "input 2" - CParticleCollectionFloatInput m_flInput2; // 0x368 + CParticleCollectionFloatInput m_flInput2; // 0x318 // MPropertyFriendlyName "output" - CParticleRemapFloatInput m_flOutputRemap; // 0x4a8 + CParticleRemapFloatInput m_flOutputRemap; // 0x468 // MPropertyFriendlyName "output control point" - int32_t m_nOutputCP; // 0x5e8 + int32_t m_nOutputCP; // 0x5b8 // MPropertyFriendlyName "output component" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nOutVectorField; // 0x5ec + int32_t m_nOutVectorField; // 0x5bc }; // Alignment: 6 -// Size: 0xf40 +// Size: 0xf90 class C_OP_SetControlPointFieldFromVectorExpression : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "expression" - VectorFloatExpressionType_t m_nExpression; // 0x220 + VectorFloatExpressionType_t m_nExpression; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0224[0x4]; // 0x224 + [[maybe_unused]] uint8_t __pad01c4[0x4]; // 0x1c4 public: // MPropertyFriendlyName "input 1" - CParticleCollectionVecInput m_vecInput1; // 0x228 + CParticleCollectionVecInput m_vecInput1; // 0x1c8 // MPropertyFriendlyName "input 2" - CParticleCollectionVecInput m_vecInput2; // 0x810 + CParticleCollectionVecInput m_vecInput2; // 0x800 // MPropertyFriendlyName "output" - CParticleRemapFloatInput m_flOutputRemap; // 0xdf8 + CParticleRemapFloatInput m_flOutputRemap; // 0xe38 // MPropertyFriendlyName "output control point" - int32_t m_nOutputCP; // 0xf38 + int32_t m_nOutputCP; // 0xf88 // MPropertyFriendlyName "output component" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nOutVectorField; // 0xf3c + int32_t m_nOutVectorField; // 0xf8c }; // Alignment: 5 -// Size: 0xe00 +// Size: 0xe40 class C_OP_SetControlPointToVectorExpression : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "expression" - VectorExpressionType_t m_nExpression; // 0x220 + VectorExpressionType_t m_nExpression; // 0x1c0 // MPropertyFriendlyName "output control point" - int32_t m_nOutputCP; // 0x224 + int32_t m_nOutputCP; // 0x1c4 // MPropertyFriendlyName "input 1" - CParticleCollectionVecInput m_vInput1; // 0x228 + CParticleCollectionVecInput m_vInput1; // 0x1c8 // MPropertyFriendlyName "input 2" - CParticleCollectionVecInput m_vInput2; // 0x810 + CParticleCollectionVecInput m_vInput2; // 0x800 // MPropertyFriendlyName "normalize result" - bool m_bNormalizedOutput; // 0xdf8 + bool m_bNormalizedOutput; // 0xe38 }; -// Alignment: 7 -// Size: 0x240 +// Alignment: 9 +// Size: 0x1f0 class C_OP_RemapModelVolumetoCP : public CParticleFunctionPreEmission { public: + // MPropertyFriendlyName "output BBox Type" + BBoxVolumeType_t m_nBBoxType; // 0x1c0 // MPropertyFriendlyName "input control point" - int32_t m_nInControlPointNumber; // 0x220 + int32_t m_nInControlPointNumber; // 0x1c4 // MPropertyFriendlyName "output control point" - int32_t m_nOutControlPointNumber; // 0x224 + int32_t m_nOutControlPointNumber; // 0x1c8 + // MPropertyFriendlyName "output max control point" + // MPropertySuppressExpr "m_nBBoxType != BBOX_MINS_MAXS" + int32_t m_nOutControlPointMaxNumber; // 0x1cc // MPropertyFriendlyName "output CP component" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nField; // 0x228 + // MPropertySuppressExpr "m_nBBoxType != BBOX_VOLUME" + int32_t m_nField; // 0x1d0 // MPropertyFriendlyName "input volume minimum in cubic units" - float m_flInputMin; // 0x22c + // MPropertySuppressExpr "m_nBBoxType != BBOX_VOLUME" + float m_flInputMin; // 0x1d4 // MPropertyFriendlyName "input volume maximum in cubic units" - float m_flInputMax; // 0x230 + // MPropertySuppressExpr "m_nBBoxType != BBOX_VOLUME" + float m_flInputMax; // 0x1d8 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x234 + // MPropertySuppressExpr "m_nBBoxType != BBOX_VOLUME" + float m_flOutputMin; // 0x1dc // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x238 + // MPropertySuppressExpr "m_nBBoxType != BBOX_VOLUME" + float m_flOutputMax; // 0x1e0 }; // Alignment: 5 -// Size: 0x240 +// Size: 0x1e0 class C_OP_RemapBoundingVolumetoCP : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "output control point" - int32_t m_nOutControlPointNumber; // 0x220 + int32_t m_nOutControlPointNumber; // 0x1c0 // MPropertyFriendlyName "input volume minimum in cubic units" - float m_flInputMin; // 0x224 + float m_flInputMin; // 0x1c4 // MPropertyFriendlyName "input volume maximum in cubic units" - float m_flInputMax; // 0x228 + float m_flInputMax; // 0x1c8 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x22c + float m_flOutputMin; // 0x1cc // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x230 + float m_flOutputMax; // 0x1d0 }; // Alignment: 7 -// Size: 0x240 +// Size: 0x1e0 class C_OP_RemapAverageScalarValuetoCP : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "output control point" - int32_t m_nOutControlPointNumber; // 0x220 + int32_t m_nOutControlPointNumber; // 0x1c0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nOutVectorField; // 0x224 + int32_t m_nOutVectorField; // 0x1c4 // MPropertyFriendlyName "scalar field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nField; // 0x228 + ParticleAttributeIndex_t m_nField; // 0x1c8 // MPropertyFriendlyName "input volume minimum" - float m_flInputMin; // 0x22c + float m_flInputMin; // 0x1cc // MPropertyFriendlyName "input volume maximum" - float m_flInputMax; // 0x230 + float m_flInputMax; // 0x1d0 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x234 + float m_flOutputMin; // 0x1d4 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x238 + float m_flOutputMax; // 0x1d8 }; // Alignment: 3 -// Size: 0x240 +// Size: 0x1e0 class C_OP_RampCPLinearRandom : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "output control point" - int32_t m_nOutControlPointNumber; // 0x220 + int32_t m_nOutControlPointNumber; // 0x1c0 // MPropertyFriendlyName "ramp rate min" - Vector m_vecRateMin; // 0x224 + Vector m_vecRateMin; // 0x1c4 // MPropertyFriendlyName "ramp rate max" - Vector m_vecRateMax; // 0x230 + Vector m_vecRateMax; // 0x1d0 }; // Alignment: 5 -// Size: 0x240 +// Size: 0x1e0 class C_OP_SetParentControlPointsToChildCP : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "group ID to affect" - int32_t m_nChildGroupID; // 0x220 + int32_t m_nChildGroupID; // 0x1c0 // MPropertyFriendlyName "control point to set" - int32_t m_nChildControlPoint; // 0x224 + int32_t m_nChildControlPoint; // 0x1c4 // MPropertyFriendlyName "# of children to set" - int32_t m_nNumControlPoints; // 0x228 + int32_t m_nNumControlPoints; // 0x1c8 // MPropertyFriendlyName "first parent control point to set from" - int32_t m_nFirstSourcePoint; // 0x22c + int32_t m_nFirstSourcePoint; // 0x1cc // MPropertyFriendlyName "set orientation" - bool m_bSetOrientation; // 0x230 + bool m_bSetOrientation; // 0x1d0 +}; + +// Alignment: 6 +// Size: 0xa10 +class C_OP_SetVariable : public CParticleFunctionPreEmission +{ +public: + // MPropertyFriendlyName "Variable" + CParticleVariableRef m_variableReference; // 0x1c0 + // MPropertyFriendlyName "Value" + // MPropertySuppressExpr "m_variableReference.m_variableType != PVAL_TRANSFORM" + CParticleTransformInput m_transformInput; // 0x200 + // MPropertyFriendlyName "Position Offset" + // MPropertySuppressExpr "m_variableReference.m_variableType != PVAL_TRANSFORM" + Vector m_positionOffset; // 0x268 + // MPropertyFriendlyName "Rotation Offset" + // MPropertySuppressExpr "m_variableReference.m_variableType != PVAL_TRANSFORM" + QAngle m_rotationOffset; // 0x274 + // MPropertyFriendlyName "Value" + // MPropertySuppressExpr "m_variableReference.m_variableType != PVAL_VEC3" + CParticleCollectionVecInput m_vecInput; // 0x280 + // MPropertyFriendlyName "Value" + // MPropertySuppressExpr "m_variableReference.m_variableType != PVAL_FLOAT" + CParticleCollectionFloatInput m_floatInput; // 0x8b8 }; // Alignment: 12 -// Size: 0x270 +// Size: 0x210 class C_OP_SetControlPointPositions : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "set positions in world space" - bool m_bUseWorldLocation; // 0x220 + bool m_bUseWorldLocation; // 0x1c0 // MPropertyFriendlyName "inherit CP orientation" - bool m_bOrient; // 0x221 + bool m_bOrient; // 0x1c1 // MPropertyFriendlyName "only set position once" - bool m_bSetOnce; // 0x222 + bool m_bSetOnce; // 0x1c2 private: - [[maybe_unused]] uint8_t __pad0223[0x1]; // 0x223 + [[maybe_unused]] uint8_t __pad01c3[0x1]; // 0x1c3 public: // MPropertyFriendlyName "first control point number" - int32_t m_nCP1; // 0x224 + int32_t m_nCP1; // 0x1c4 // MPropertyFriendlyName "second control point number" - int32_t m_nCP2; // 0x228 + int32_t m_nCP2; // 0x1c8 // MPropertyFriendlyName "third control point number" - int32_t m_nCP3; // 0x22c + int32_t m_nCP3; // 0x1cc // MPropertyFriendlyName "fourth control point number" - int32_t m_nCP4; // 0x230 + int32_t m_nCP4; // 0x1d0 // MPropertyFriendlyName "first control point location" // MVectorIsCoordinate - Vector m_vecCP1Pos; // 0x234 + Vector m_vecCP1Pos; // 0x1d4 // MPropertyFriendlyName "second control point location" // MVectorIsCoordinate - Vector m_vecCP2Pos; // 0x240 + Vector m_vecCP2Pos; // 0x1e0 // MPropertyFriendlyName "third control point location" // MVectorIsCoordinate - Vector m_vecCP3Pos; // 0x24c + Vector m_vecCP3Pos; // 0x1ec // MPropertyFriendlyName "fourth control point location" // MVectorIsCoordinate - Vector m_vecCP4Pos; // 0x258 + Vector m_vecCP4Pos; // 0x1f8 // MPropertyFriendlyName "control point to offset positions from" - int32_t m_nHeadLocation; // 0x264 -}; - -// Alignment: 5 -// Size: 0x820 -class C_OP_SetSingleControlPointPosition : public CParticleFunctionPreEmission -{ -public: - // MPropertyFriendlyName "set positions in world space" - bool m_bUseWorldLocation; // 0x220 - // MPropertyFriendlyName "only set position once" - bool m_bSetOnce; // 0x221 -private: - [[maybe_unused]] uint8_t __pad0222[0x2]; // 0x222 -public: - // MPropertyFriendlyName "control point number" - int32_t m_nCP1; // 0x224 - // MPropertyFriendlyName "control point location" - CParticleCollectionVecInput m_vecCP1Pos; // 0x228 - // MPropertyFriendlyName "control point to offset positions from" - int32_t m_nHeadLocation; // 0x810 + int32_t m_nHeadLocation; // 0x204 }; // Alignment: 4 -// Size: 0x370 +// Size: 0x870 +class C_OP_SetSingleControlPointPosition : public CParticleFunctionPreEmission +{ +public: + // MPropertyFriendlyName "only set position once" + bool m_bSetOnce; // 0x1c0 +private: + [[maybe_unused]] uint8_t __pad01c1[0x3]; // 0x1c1 +public: + // MPropertyFriendlyName "control point number" + int32_t m_nCP1; // 0x1c4 + // MPropertyFriendlyName "control point location" + CParticleCollectionVecInput m_vecCP1Pos; // 0x1c8 + // MPropertyFriendlyName "transform to offset positions from" + // MParticleInputOptional + CParticleTransformInput m_transformInput; // 0x800 +}; + +// Alignment: 4 +// Size: 0x320 class C_OP_SetControlPointPositionToRandomActiveCP : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "control point number" - int32_t m_nCP1; // 0x220 + int32_t m_nCP1; // 0x1c0 // MPropertyFriendlyName "min active CP" - int32_t m_nHeadLocationMin; // 0x224 + int32_t m_nHeadLocationMin; // 0x1c4 // MPropertyFriendlyName "max active CP" - int32_t m_nHeadLocationMax; // 0x228 + int32_t m_nHeadLocationMax; // 0x1c8 private: - [[maybe_unused]] uint8_t __pad022c[0x4]; // 0x22c + [[maybe_unused]] uint8_t __pad01cc[0x4]; // 0x1cc public: // MPropertyFriendlyName "reset rate" - CParticleCollectionFloatInput m_flResetRate; // 0x230 + CParticleCollectionFloatInput m_flResetRate; // 0x1d0 }; // Alignment: 8 -// Size: 0x4d0 +// Size: 0x490 class C_OP_SetRandomControlPointPosition : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "set positions in world space" - bool m_bUseWorldLocation; // 0x220 + bool m_bUseWorldLocation; // 0x1c0 // MPropertyFriendlyName "inherit CP orientation" - bool m_bOrient; // 0x221 + bool m_bOrient; // 0x1c1 private: - [[maybe_unused]] uint8_t __pad0222[0x2]; // 0x222 + [[maybe_unused]] uint8_t __pad01c2[0x2]; // 0x1c2 public: // MPropertyFriendlyName "control point number" - int32_t m_nCP1; // 0x224 + int32_t m_nCP1; // 0x1c4 // MPropertyFriendlyName "control point to offset positions from" - int32_t m_nHeadLocation; // 0x228 + int32_t m_nHeadLocation; // 0x1c8 private: - [[maybe_unused]] uint8_t __pad022c[0x4]; // 0x22c + [[maybe_unused]] uint8_t __pad01cc[0x4]; // 0x1cc public: // MPropertyFriendlyName "re-randomize rate (-1 for once only)" - CParticleCollectionFloatInput m_flReRandomRate; // 0x230 + CParticleCollectionFloatInput m_flReRandomRate; // 0x1d0 // MPropertyFriendlyName "control point min" - Vector m_vecCPMinPos; // 0x370 + Vector m_vecCPMinPos; // 0x320 // MPropertyFriendlyName "control point max" - Vector m_vecCPMaxPos; // 0x37c + Vector m_vecCPMaxPos; // 0x32c // MPropertyFriendlyName "Interpolation" - CParticleCollectionFloatInput m_flInterpolation; // 0x388 + CParticleCollectionFloatInput m_flInterpolation; // 0x338 }; // Alignment: 8 -// Size: 0x390 +// Size: 0x340 class C_OP_SetControlPointOrientation : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "set orientation in world space" - bool m_bUseWorldLocation; // 0x220 + bool m_bUseWorldLocation; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0221[0x1]; // 0x221 + [[maybe_unused]] uint8_t __pad01c1[0x1]; // 0x1c1 public: // MPropertyFriendlyName "randomize" - bool m_bRandomize; // 0x222 + bool m_bRandomize; // 0x1c2 // MPropertyFriendlyName "only set orientation once" - bool m_bSetOnce; // 0x223 + bool m_bSetOnce; // 0x1c3 // MPropertyFriendlyName "control point number" - int32_t m_nCP; // 0x224 + int32_t m_nCP; // 0x1c4 // MPropertyFriendlyName "control point to offset orientation from" - int32_t m_nHeadLocation; // 0x228 + int32_t m_nHeadLocation; // 0x1c8 // MPropertyFriendlyName "pitch yaw roll" - QAngle m_vecRotation; // 0x22c + QAngle m_vecRotation; // 0x1cc // MPropertyFriendlyName "pitch yaw roll max" - QAngle m_vecRotationB; // 0x238 + QAngle m_vecRotationB; // 0x1d8 private: - [[maybe_unused]] uint8_t __pad0244[0x4]; // 0x244 + [[maybe_unused]] uint8_t __pad01e4[0x4]; // 0x1e4 public: // MPropertyFriendlyName "interpolation" - CParticleCollectionFloatInput m_flInterpolation; // 0x248 + CParticleCollectionFloatInput m_flInterpolation; // 0x1e8 }; // Alignment: 2 -// Size: 0x230 +// Size: 0x1d0 class C_OP_SetControlPointFromObjectScale : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "input control point number" - int32_t m_nCPInput; // 0x220 + int32_t m_nCPInput; // 0x1c0 // MPropertyFriendlyName "output control point number" - int32_t m_nCPOutput; // 0x224 + int32_t m_nCPOutput; // 0x1c4 }; // Alignment: 15 -// Size: 0x2e0 +// Size: 0x280 class C_OP_DistanceBetweenCPsToCP : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "starting control point" - int32_t m_nStartCP; // 0x220 + int32_t m_nStartCP; // 0x1c0 // MPropertyFriendlyName "ending control point" - int32_t m_nEndCP; // 0x224 + int32_t m_nEndCP; // 0x1c4 // MPropertyFriendlyName "output control point" - int32_t m_nOutputCP; // 0x228 + int32_t m_nOutputCP; // 0x1c8 // MPropertyFriendlyName "output control point field" - int32_t m_nOutputCPField; // 0x22c + int32_t m_nOutputCPField; // 0x1cc // MPropertyFriendlyName "only set distance once" - bool m_bSetOnce; // 0x230 + bool m_bSetOnce; // 0x1d0 private: - [[maybe_unused]] uint8_t __pad0231[0x3]; // 0x231 + [[maybe_unused]] uint8_t __pad01d1[0x3]; // 0x1d1 public: // MPropertyFriendlyName "distance minimum" - float m_flInputMin; // 0x234 + float m_flInputMin; // 0x1d4 // MPropertyFriendlyName "distance maximum" - float m_flInputMax; // 0x238 + float m_flInputMax; // 0x1d8 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x23c + float m_flOutputMin; // 0x1dc // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x240 + float m_flOutputMax; // 0x1e0 // MPropertyFriendlyName "maximum trace length" - float m_flMaxTraceLength; // 0x244 + float m_flMaxTraceLength; // 0x1e4 // MPropertyFriendlyName "LOS Failure Scale" - float m_flLOSScale; // 0x248 + float m_flLOSScale; // 0x1e8 // MPropertyFriendlyName "ensure line of sight" - bool m_bLOS; // 0x24c + bool m_bLOS; // 0x1ec // MPropertyFriendlyName "LOS collision group" - char m_CollisionGroupName[128]; // 0x24d + char m_CollisionGroupName[128]; // 0x1ed private: - [[maybe_unused]] uint8_t __pad02cd[0x3]; // 0x2cd + [[maybe_unused]] uint8_t __pad026d[0x3]; // 0x26d public: // MPropertyFriendlyName "Trace Set" - ParticleTraceSet_t m_nTraceSet; // 0x2d0 + ParticleTraceSet_t m_nTraceSet; // 0x270 // MPropertyFriendlyName "set parent" - ParticleParentSetMode_t m_nSetParent; // 0x2d4 + ParticleParentSetMode_t m_nSetParent; // 0x274 }; // Alignment: 3 -// Size: 0x240 +// Size: 0x1e0 class C_OP_SetControlPointToPlayer : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "control point number" - int32_t m_nCP1; // 0x220 + int32_t m_nCP1; // 0x1c0 // MPropertyFriendlyName "control point offset" // MVectorIsCoordinate - Vector m_vecCP1Pos; // 0x224 + Vector m_vecCP1Pos; // 0x1c4 // MPropertyFriendlyName "use eye orientation" - bool m_bOrientToEyes; // 0x230 + bool m_bOrientToEyes; // 0x1d0 }; // Alignment: 4 -// Size: 0x240 +// Size: 0x1e0 class C_OP_SetControlPointToHand : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "control point number" - int32_t m_nCP1; // 0x220 + int32_t m_nCP1; // 0x1c0 // MPropertyFriendlyName "hand" - int32_t m_nHand; // 0x224 + int32_t m_nHand; // 0x1c4 // MPropertyFriendlyName "control point offset" // MVectorIsCoordinate - Vector m_vecCP1Pos; // 0x228 + Vector m_vecCP1Pos; // 0x1c8 // MPropertyFriendlyName "use hand orientation" - bool m_bOrientToHand; // 0x234 + bool m_bOrientToHand; // 0x1d4 }; // Alignment: 3 -// Size: 0x240 +// Size: 0x1e0 class C_OP_SetControlPointToHMD : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "control point number" - int32_t m_nCP1; // 0x220 + int32_t m_nCP1; // 0x1c0 // MPropertyFriendlyName "control point offset" // MVectorIsCoordinate - Vector m_vecCP1Pos; // 0x224 + Vector m_vecCP1Pos; // 0x1c4 // MPropertyFriendlyName "use hmd orientation" - bool m_bOrientToHMD; // 0x230 + bool m_bOrientToHMD; // 0x1d0 }; // Alignment: 3 -// Size: 0x2c0 +// Size: 0x260 class C_OP_SetControlPointPositionToTimeOfDayValue : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "control point number" - int32_t m_nControlPointNumber; // 0x220 + int32_t m_nControlPointNumber; // 0x1c0 // MPropertyFriendlyName "time-of-day parameter" - char m_pszTimeOfDayParameter[128]; // 0x224 + char m_pszTimeOfDayParameter[128]; // 0x1c4 // MPropertyFriendlyName "default value" - Vector m_vecDefaultValue; // 0x2a4 + Vector m_vecDefaultValue; // 0x244 }; // Alignment: 2 -// Size: 0x230 +// Size: 0x1d0 class C_OP_SetControlPointToCenter : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "control point number to set" - int32_t m_nCP1; // 0x220 + int32_t m_nCP1; // 0x1c0 // MPropertyFriendlyName "center offset" // MVectorIsCoordinate - Vector m_vecCP1Pos; // 0x224 + Vector m_vecCP1Pos; // 0x1c4 }; // Alignment: 6 -// Size: 0x820 +// Size: 0x810 class C_OP_SetControlPointToCPVelocity : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "control point input" - int32_t m_nCPInput; // 0x220 + int32_t m_nCPInput; // 0x1c0 // MPropertyFriendlyName "control point number to set velocity" - int32_t m_nCPOutputVel; // 0x224 + int32_t m_nCPOutputVel; // 0x1c4 // MPropertyFriendlyName "normalize output" - bool m_bNormalize; // 0x228 + bool m_bNormalize; // 0x1c8 private: - [[maybe_unused]] uint8_t __pad0229[0x3]; // 0x229 + [[maybe_unused]] uint8_t __pad01c9[0x3]; // 0x1c9 public: // MPropertyFriendlyName "control point number to set magnitude" - int32_t m_nCPOutputMag; // 0x22c + int32_t m_nCPOutputMag; // 0x1cc // MPropertyFriendlyName "control point field for magnitude" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nCPField; // 0x230 + int32_t m_nCPField; // 0x1d0 private: - [[maybe_unused]] uint8_t __pad0234[0x4]; // 0x234 + [[maybe_unused]] uint8_t __pad01d4[0x4]; // 0x1d4 public: // MPropertyFriendlyName "comparison velocity" - CParticleCollectionVecInput m_vecComparisonVelocity; // 0x238 + CParticleCollectionVecInput m_vecComparisonVelocity; // 0x1d8 }; // Alignment: 2 -// Size: 0x230 +// Size: 0x1d0 class C_OP_SetControlPointOrientationToCPVelocity : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "control point input for velocity" - int32_t m_nCPInput; // 0x220 + int32_t m_nCPInput; // 0x1c0 // MPropertyFriendlyName "control point output for orientation" - int32_t m_nCPOutput; // 0x224 + int32_t m_nCPOutput; // 0x1c4 }; // Alignment: 3 -// Size: 0x370 +// Size: 0x320 class C_OP_StopAfterCPDuration : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "duration at which to stop" - CParticleCollectionFloatInput m_flDuration; // 0x220 + CParticleCollectionFloatInput m_flDuration; // 0x1c0 // MPropertyFriendlyName "destroy all particles immediately" - bool m_bDestroyImmediately; // 0x360 + bool m_bDestroyImmediately; // 0x310 // MPropertyFriendlyName "play end cap effect" - bool m_bPlayEndCap; // 0x361 + bool m_bPlayEndCap; // 0x311 }; // Alignment: 4 @@ -9788,9 +9128,9 @@ class C_OP_SetControlPointRotation : public CParticleFunctionPreEmission public: // MPropertyFriendlyName "rotation axis" // MVectorIsCoordinate - CParticleCollectionVecInput m_vecRotAxis; // 0x220 + CParticleCollectionVecInput m_vecRotAxis; // 0x1c0 // MPropertyFriendlyName "rotation rate" - CParticleCollectionFloatInput m_flRotRate; // 0x808 + CParticleCollectionFloatInput m_flRotRate; // 0x7f8 // MPropertyFriendlyName "control point" int32_t m_nCP; // 0x948 // MPropertyFriendlyName "local space control point" @@ -9798,1008 +9138,1031 @@ public: }; // Alignment: 10 -// Size: 0x250 +// Size: 0x1f0 class C_OP_RemapCPtoCP : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "input control point number" - int32_t m_nInputControlPoint; // 0x220 + int32_t m_nInputControlPoint; // 0x1c0 // MPropertyFriendlyName "output control point number" - int32_t m_nOutputControlPoint; // 0x224 + int32_t m_nOutputControlPoint; // 0x1c4 // MPropertyFriendlyName "input field" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nInputField; // 0x228 + int32_t m_nInputField; // 0x1c8 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nOutputField; // 0x22c + int32_t m_nOutputField; // 0x1cc // MPropertyFriendlyName "input minimum" - float m_flInputMin; // 0x230 + float m_flInputMin; // 0x1d0 // MPropertyFriendlyName "input maximum" - float m_flInputMax; // 0x234 + float m_flInputMax; // 0x1d4 // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x238 + float m_flOutputMin; // 0x1d8 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x23c + float m_flOutputMax; // 0x1dc // MPropertyFriendlyName "use the derivative" - bool m_bDerivative; // 0x240 + bool m_bDerivative; // 0x1e0 private: - [[maybe_unused]] uint8_t __pad0241[0x3]; // 0x241 + [[maybe_unused]] uint8_t __pad01e1[0x3]; // 0x1e1 public: // MPropertyFriendlyName "interpolation" - float m_flInterpRate; // 0x244 + float m_flInterpRate; // 0x1e4 }; // Alignment: 4 -// Size: 0x240 +// Size: 0x1e0 class C_OP_HSVShiftToCP : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "Target color control point number" - int32_t m_nColorCP; // 0x220 + int32_t m_nColorCP; // 0x1c0 // MPropertyFriendlyName "Color Gem Enable control point number" - int32_t m_nColorGemEnableCP; // 0x224 + int32_t m_nColorGemEnableCP; // 0x1c4 // MPropertyFriendlyName "output control point number" - int32_t m_nOutputCP; // 0x228 + int32_t m_nOutputCP; // 0x1c8 // MPropertyFriendlyName "Default HSV Color" - Color m_DefaultHSVColor; // 0x22c + Color m_DefaultHSVColor; // 0x1cc }; // Alignment: 11 -// Size: 0x410 +// Size: 0x3c0 class C_OP_SetControlPointToImpactPoint : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "control point to set" - int32_t m_nCPOut; // 0x220 + int32_t m_nCPOut; // 0x1c0 // MPropertyFriendlyName "control point to trace from" - int32_t m_nCPIn; // 0x224 + int32_t m_nCPIn; // 0x1c4 // MPropertyFriendlyName "trace update rate" - float m_flUpdateRate; // 0x228 + float m_flUpdateRate; // 0x1c8 private: - [[maybe_unused]] uint8_t __pad022c[0x4]; // 0x22c + [[maybe_unused]] uint8_t __pad01cc[0x4]; // 0x1cc public: // MPropertyFriendlyName "max trace length" - CParticleCollectionFloatInput m_flTraceLength; // 0x230 + CParticleCollectionFloatInput m_flTraceLength; // 0x1d0 // MPropertyFriendlyName "offset start point amount" - float m_flStartOffset; // 0x370 + float m_flStartOffset; // 0x320 // MPropertyFriendlyName "offset end point amount" - float m_flOffset; // 0x374 + float m_flOffset; // 0x324 // MPropertyFriendlyName "trace direction override" // MVectorIsCoordinate - Vector m_vecTraceDir; // 0x378 + Vector m_vecTraceDir; // 0x328 // MPropertyFriendlyName "trace collision group" - char m_CollisionGroupName[128]; // 0x384 + char m_CollisionGroupName[128]; // 0x334 // MPropertyFriendlyName "Trace Set" - ParticleTraceSet_t m_nTraceSet; // 0x404 + ParticleTraceSet_t m_nTraceSet; // 0x3b4 // MPropertyFriendlyName "set to trace endpoint if no collision" - bool m_bSetToEndpoint; // 0x408 + bool m_bSetToEndpoint; // 0x3b8 // MPropertyFriendlyName "trace to closest surface along all cardinal directions" - bool m_bTraceToClosestSurface; // 0x409 + bool m_bTraceToClosestSurface; // 0x3b9 }; // Alignment: 6 -// Size: 0x370 +// Size: 0x320 class C_OP_SetCPOrientationToPointAtCP : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "CP to point towards" - int32_t m_nInputCP; // 0x220 + int32_t m_nInputCP; // 0x1c0 // MPropertyFriendlyName "CP to set" - int32_t m_nOutputCP; // 0x224 + int32_t m_nOutputCP; // 0x1c4 // MPropertyFriendlyName "Interpolation" - CParticleCollectionFloatInput m_flInterpolation; // 0x228 + CParticleCollectionFloatInput m_flInterpolation; // 0x1c8 // MPropertyFriendlyName "2D Orient" - bool m_b2DOrientation; // 0x368 + bool m_b2DOrientation; // 0x318 // MPropertyFriendlyName "Avoid Vertical Axis Singularity" - bool m_bAvoidSingularity; // 0x369 + bool m_bAvoidSingularity; // 0x319 // MPropertyFriendlyName "Point Away" - bool m_bPointAway; // 0x36a + bool m_bPointAway; // 0x31a }; // Alignment: 3 -// Size: 0x370 +// Size: 0x320 class C_OP_EnableChildrenFromParentParticleCount : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "group ID to affect" - int32_t m_nChildGroupID; // 0x220 + int32_t m_nChildGroupID; // 0x1c0 // MPropertyFriendlyName "first child to enable" - int32_t m_nFirstChild; // 0x224 + int32_t m_nFirstChild; // 0x1c4 // MPropertyFriendlyName "max # of children to enable (-1 for max particle count)" - CParticleCollectionFloatInput m_nNumChildrenToEnable; // 0x228 + CParticleCollectionFloatInput m_nNumChildrenToEnable; // 0x1c8 }; // Alignment: 5 -// Size: 0x5f0 +// Size: 0x5c0 class C_OP_SelectivelyEnableChildren : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "group ID to affect" - CParticleCollectionFloatInput m_nChildGroupID; // 0x220 + CParticleCollectionFloatInput m_nChildGroupID; // 0x1c0 // MPropertyFriendlyName "first child to enable" - CParticleCollectionFloatInput m_nFirstChild; // 0x360 + CParticleCollectionFloatInput m_nFirstChild; // 0x310 // MPropertyFriendlyName "# of children to enable" - CParticleCollectionFloatInput m_nNumChildrenToEnable; // 0x4a0 + CParticleCollectionFloatInput m_nNumChildrenToEnable; // 0x460 // MPropertyFriendlyName "play endcap when children are removed" - bool m_bPlayEndcapOnStop; // 0x5e0 + bool m_bPlayEndcapOnStop; // 0x5b0 // MPropertyFriendlyName "destroy particles immediately when child is removed" - bool m_bDestroyImmediately; // 0x5e1 + bool m_bDestroyImmediately; // 0x5b1 }; // Alignment: 2 -// Size: 0x230 +// Size: 0x1d0 class C_OP_PlayEndCapWhenFinished : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "play when emission ends" - bool m_bFireOnEmissionEnd; // 0x220 + bool m_bFireOnEmissionEnd; // 0x1c0 // MPropertyFriendlyName "wait for children to finish" - bool m_bIncludeChildren; // 0x221 + bool m_bIncludeChildren; // 0x1c1 }; // Alignment: 1 -// Size: 0x230 +// Size: 0x1d0 class C_OP_ForceControlPointStub : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "control point" - int32_t m_ControlPoint; // 0x220 + int32_t m_ControlPoint; // 0x1c0 }; // Alignment: 9 -// Size: 0x260 +// Size: 0x200 class C_OP_DriveCPFromGlobalSoundFloat : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "output control point" - int32_t m_nOutputControlPoint; // 0x220 + int32_t m_nOutputControlPoint; // 0x1c0 // MPropertyFriendlyName "output field" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nOutputField; // 0x224 + int32_t m_nOutputField; // 0x1c4 // MPropertyFriendlyName "input minimum" - float m_flInputMin; // 0x228 + float m_flInputMin; // 0x1c8 // MPropertyFriendlyName "input maximum" - float m_flInputMax; // 0x22c + float m_flInputMax; // 0x1cc // MPropertyFriendlyName "output minimum" - float m_flOutputMin; // 0x230 + float m_flOutputMin; // 0x1d0 // MPropertyFriendlyName "output maximum" - float m_flOutputMax; // 0x234 + float m_flOutputMax; // 0x1d4 // MPropertyFriendlyName "sound stack name" - CUtlString m_StackName; // 0x238 + CUtlString m_StackName; // 0x1d8 // MPropertyFriendlyName "sound operator name" - CUtlString m_OperatorName; // 0x240 + CUtlString m_OperatorName; // 0x1e0 // MPropertyFriendlyName "sound field name" - CUtlString m_FieldName; // 0x248 + CUtlString m_FieldName; // 0x1e8 }; // Alignment: 3 -// Size: 0x230 +// Size: 0x1d0 class C_OP_SetControlPointFieldToWater : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "source CP" - int32_t m_nSourceCP; // 0x220 + int32_t m_nSourceCP; // 0x1c0 // MPropertyFriendlyName "dest CP" - int32_t m_nDestCP; // 0x224 + int32_t m_nDestCP; // 0x1c4 // MPropertyFriendlyName "dest control point component" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nCPField; // 0x228 + int32_t m_nCPField; // 0x1c8 }; // Alignment: 7 -// Size: 0x380 +// Size: 0x330 class C_OP_SetControlPointToWaterSurface : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "source CP" - int32_t m_nSourceCP; // 0x220 + int32_t m_nSourceCP; // 0x1c0 // MPropertyFriendlyName "CP to set to surface" - int32_t m_nDestCP; // 0x224 + int32_t m_nDestCP; // 0x1c4 // MPropertyFriendlyName "CP to set to surface current flow velocity" // MPropertySuppressExpr "mod != hlx" - int32_t m_nFlowCP; // 0x228 + int32_t m_nFlowCP; // 0x1c8 // MPropertyFriendlyName "CP to set component of if water" - int32_t m_nActiveCP; // 0x22c + int32_t m_nActiveCP; // 0x1cc // MPropertyFriendlyName "CP component" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nActiveCPField; // 0x230 + int32_t m_nActiveCPField; // 0x1d0 private: - [[maybe_unused]] uint8_t __pad0234[0x4]; // 0x234 + [[maybe_unused]] uint8_t __pad01d4[0x4]; // 0x1d4 public: // MPropertyFriendlyName "retest rate" - CParticleCollectionFloatInput m_flRetestRate; // 0x238 + CParticleCollectionFloatInput m_flRetestRate; // 0x1d8 // MPropertyFriendlyName "adaptive retest on moving surface" - bool m_bAdaptiveThreshold; // 0x378 + bool m_bAdaptiveThreshold; // 0x328 }; // Alignment: 5 -// Size: 0x5f0 +// Size: 0x5c0 class C_OP_RepeatedTriggerChildGroup : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "group ID to affect" - int32_t m_nChildGroupID; // 0x220 + int32_t m_nChildGroupID; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0224[0x4]; // 0x224 + [[maybe_unused]] uint8_t __pad01c4[0x4]; // 0x1c4 public: // MPropertyFriendlyName "Within-Cluster Refire Time" - CParticleCollectionFloatInput m_flClusterRefireTime; // 0x228 + CParticleCollectionFloatInput m_flClusterRefireTime; // 0x1c8 // MPropertyFriendlyName "Within-Cluster Fire Count Before Cooldown" - CParticleCollectionFloatInput m_flClusterSize; // 0x368 + CParticleCollectionFloatInput m_flClusterSize; // 0x318 // MPropertyFriendlyName "Cluster Cooldown Time" - CParticleCollectionFloatInput m_flClusterCooldown; // 0x4a8 + CParticleCollectionFloatInput m_flClusterCooldown; // 0x468 // MPropertyFriendlyName "limit active children to parent particle count" - bool m_bLimitChildCount; // 0x5e8 + bool m_bLimitChildCount; // 0x5b8 }; // Alignment: 2 -// Size: 0x370 +// Size: 0x320 class C_OP_ChooseRandomChildrenInGroup : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "group ID to affect" - int32_t m_nChildGroupID; // 0x220 + int32_t m_nChildGroupID; // 0x1c0 private: - [[maybe_unused]] uint8_t __pad0224[0x4]; // 0x224 + [[maybe_unused]] uint8_t __pad01c4[0x4]; // 0x1c4 public: // MPropertyFriendlyName "Number of Children to Use" - CParticleCollectionFloatInput m_flNumberOfChildren; // 0x228 + CParticleCollectionFloatInput m_flNumberOfChildren; // 0x1c8 }; // Alignment: 1 -// Size: 0x360 +// Size: 0x310 class C_OP_SetSimulationRate : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "simulation timescale" - CParticleCollectionFloatInput m_flSimulationScale; // 0x220 + CParticleCollectionFloatInput m_flSimulationScale; // 0x1c0 }; // Alignment: 5 -// Size: 0x240 +// Size: 0x1e0 class C_OP_ControlPointToRadialScreenSpace : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "source Control Point in World" - int32_t m_nCPIn; // 0x220 + int32_t m_nCPIn; // 0x1c0 // MPropertyFriendlyName "Source Control Point offset" // MVectorIsCoordinate - Vector m_vecCP1Pos; // 0x224 + Vector m_vecCP1Pos; // 0x1c4 // MPropertyFriendlyName "Set control point number" - int32_t m_nCPOut; // 0x230 + int32_t m_nCPOut; // 0x1d0 // MPropertyFriendlyName "Output field 0-2 X/Y/Z" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nCPOutField; // 0x234 + int32_t m_nCPOutField; // 0x1d4 // MPropertyFriendlyName "Ss Pos and Dot OUT CP" - int32_t m_nCPSSPosOut; // 0x238 + int32_t m_nCPSSPosOut; // 0x1d8 }; // Alignment: 15 -// Size: 0x1000 +// Size: 0x1050 class C_OP_LightningSnapshotGenerator : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "snapshot control point number" - int32_t m_nCPSnapshot; // 0x220 + int32_t m_nCPSnapshot; // 0x1c0 // MPropertyFriendlyName "start control point number" - int32_t m_nCPStartPnt; // 0x224 + int32_t m_nCPStartPnt; // 0x1c4 // MPropertyFriendlyName "end control point number" - int32_t m_nCPEndPnt; // 0x228 + int32_t m_nCPEndPnt; // 0x1c8 private: - [[maybe_unused]] uint8_t __pad022c[0x4]; // 0x22c + [[maybe_unused]] uint8_t __pad01cc[0x4]; // 0x1cc public: // MPropertyFriendlyName "Recursion Depth" - CParticleCollectionFloatInput m_flSegments; // 0x230 + CParticleCollectionFloatInput m_flSegments; // 0x1d0 // MPropertyFriendlyName "Offset" - CParticleCollectionFloatInput m_flOffset; // 0x370 + CParticleCollectionFloatInput m_flOffset; // 0x320 // MPropertyFriendlyName "Offset Decay" - CParticleCollectionFloatInput m_flOffsetDecay; // 0x4b0 + CParticleCollectionFloatInput m_flOffsetDecay; // 0x470 // MPropertyFriendlyName "Recalculation Rate" - CParticleCollectionFloatInput m_flRecalcRate; // 0x5f0 + CParticleCollectionFloatInput m_flRecalcRate; // 0x5c0 // MPropertyFriendlyName "UV Scale" - CParticleCollectionFloatInput m_flUVScale; // 0x730 + CParticleCollectionFloatInput m_flUVScale; // 0x710 // MPropertyFriendlyName "UV Offset" - CParticleCollectionFloatInput m_flUVOffset; // 0x870 + CParticleCollectionFloatInput m_flUVOffset; // 0x860 // MPropertyFriendlyName "Branch Split Rate" CParticleCollectionFloatInput m_flSplitRate; // 0x9b0 // MPropertyFriendlyName "Branch Twist" - CParticleCollectionFloatInput m_flBranchTwist; // 0xaf0 + CParticleCollectionFloatInput m_flBranchTwist; // 0xb00 // MPropertyFriendlyName "Branch Behavior" - ParticleLightnintBranchBehavior_t m_nBranchBehavior; // 0xc30 + ParticleLightnintBranchBehavior_t m_nBranchBehavior; // 0xc50 private: - [[maybe_unused]] uint8_t __pad0c34[0x4]; // 0xc34 + [[maybe_unused]] uint8_t __pad0c54[0x4]; // 0xc54 public: // MPropertyFriendlyName "Start Radius" - CParticleCollectionFloatInput m_flRadiusStart; // 0xc38 + CParticleCollectionFloatInput m_flRadiusStart; // 0xc58 // MPropertyFriendlyName "End Radius" - CParticleCollectionFloatInput m_flRadiusEnd; // 0xd78 + CParticleCollectionFloatInput m_flRadiusEnd; // 0xda8 // MPropertyFriendlyName "Dedicated Particle Pool Count" - CParticleCollectionFloatInput m_flDedicatedPool; // 0xeb8 + CParticleCollectionFloatInput m_flDedicatedPool; // 0xef8 }; // Alignment: 5 -// Size: 0x820 +// Size: 0x810 class C_OP_RemapExternalWindToCP : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "control point to sample wind" - int32_t m_nCP; // 0x220 + int32_t m_nCP; // 0x1c0 // MPropertyFriendlyName "output control point" - int32_t m_nCPOutput; // 0x224 + int32_t m_nCPOutput; // 0x1c4 // MPropertyFriendlyName "wind scale" - CParticleCollectionVecInput m_vecScale; // 0x228 + CParticleCollectionVecInput m_vecScale; // 0x1c8 // MPropertyFriendlyName "set magnitude instead of vector" - bool m_bSetMagnitude; // 0x810 + bool m_bSetMagnitude; // 0x800 private: - [[maybe_unused]] uint8_t __pad0811[0x3]; // 0x811 + [[maybe_unused]] uint8_t __pad0801[0x3]; // 0x801 public: // MPropertyFriendlyName "magnitude output component" // MPropertyAttributeChoiceName "vector_component" // MPropertySuppressExpr "!m_bSetMagnitude" - int32_t m_nOutVectorField; // 0x814 + int32_t m_nOutVectorField; // 0x804 }; // Alignment: 4 -// Size: 0x4b0 +// Size: 0x470 class C_OP_QuantizeCPComponent : public CParticleFunctionPreEmission { public: // MPropertyFriendlyName "input" - CParticleCollectionFloatInput m_flInputValue; // 0x220 + CParticleCollectionFloatInput m_flInputValue; // 0x1c0 // MPropertyFriendlyName "output control point" - int32_t m_nCPOutput; // 0x360 + int32_t m_nCPOutput; // 0x310 // MPropertyFriendlyName "output component" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nOutVectorField; // 0x364 + int32_t m_nOutVectorField; // 0x314 // MPropertyFriendlyName "interval to snap to" - CParticleCollectionFloatInput m_flQuantizeValue; // 0x368 + CParticleCollectionFloatInput m_flQuantizeValue; // 0x318 }; // Alignment: 1 -// Size: 0x270 +// Size: 0x210 class C_OP_RenderPoints : public CParticleFunctionRenderer { public: - CStrongHandle< InfoForResourceTypeIMaterial2 > m_hMaterial; // 0x260 + CStrongHandle< InfoForResourceTypeIMaterial2 > m_hMaterial; // 0x200 }; // Alignment: 7 -// Size: 0x2510 +// Size: 0x2650 class CBaseTrailRenderer : public CBaseRendererSource2 { public: // MPropertyStartGroup "Orientation" // MPropertyFriendlyName "orientation type" // MPropertySortPriority "750" - ParticleOrientationChoiceList_t m_nOrientationType; // 0x2270 + ParticleOrientationChoiceList_t m_nOrientationType; // 0x2390 // MPropertyFriendlyName "orientation control point" // MPropertySortPriority "750" // MPropertySuppressExpr "m_nOrientationType != PARTICLE_ORIENTATION_ALIGN_TO_PARTICLE_NORMAL && m_nOrientationType != PARTICLE_ORIENTATION_SCREENALIGN_TO_PARTICLE_NORMAL" - int32_t m_nOrientationControlPoint; // 0x2274 + int32_t m_nOrientationControlPoint; // 0x2394 // MPropertyStartGroup "Screenspace Fading and culling" // MPropertyFriendlyName "minimum visual screen-size" // MPropertySortPriority "900" - float m_flMinSize; // 0x2278 + float m_flMinSize; // 0x2398 // MPropertyFriendlyName "maximum visual screen-size" // MPropertySortPriority "900" - float m_flMaxSize; // 0x227c + float m_flMaxSize; // 0x239c // MPropertyFriendlyName "start fade screen-size" // MPropertySortPriority "900" - CParticleCollectionRendererFloatInput m_flStartFadeSize; // 0x2280 + CParticleCollectionRendererFloatInput m_flStartFadeSize; // 0x23a0 // MPropertyFriendlyName "end fade and cull screen-size" // MPropertySortPriority "900" - CParticleCollectionRendererFloatInput m_flEndFadeSize; // 0x23c0 + CParticleCollectionRendererFloatInput m_flEndFadeSize; // 0x24f0 // MPropertyStartGroup "Trail UV Controls" // MPropertyFriendlyName "Clamp Non-Sheet texture V coords" // MPropertySortPriority "800" - bool m_bClampV; // 0x2500 + bool m_bClampV; // 0x2640 }; // Alignment: 20 -// Size: 0x3620 +// Size: 0x3840 class C_OP_RenderTrails : public CBaseTrailRenderer { public: // MPropertyStartGroup "Screenspace Fading and culling" // MPropertyFriendlyName "enable fading and clamping" // MPropertySortPriority "1000" - bool m_bEnableFadingAndClamping; // 0x2510 + bool m_bEnableFadingAndClamping; // 0x2650 private: - [[maybe_unused]] uint8_t __pad2511[0x3]; // 0x2511 + [[maybe_unused]] uint8_t __pad2651[0x3]; // 0x2651 public: // MPropertyFriendlyName "start fade dot product of normal vs view" // MPropertySortPriority "1000" - float m_flStartFadeDot; // 0x2514 + float m_flStartFadeDot; // 0x2654 // MPropertyFriendlyName "end fade dot product of normal vs view" // MPropertySortPriority "1000" - float m_flEndFadeDot; // 0x2518 + float m_flEndFadeDot; // 0x2658 // MPropertyStartGroup "+Trail Length" // MPropertyFriendlyName "Anchor point source" // MPropertyAttributeChoiceName "particlefield_vector" // MPropertySortPriority "800" - ParticleAttributeIndex_t m_nPrevPntSource; // 0x251c + ParticleAttributeIndex_t m_nPrevPntSource; // 0x265c // MPropertyFriendlyName "max length" // MPropertySortPriority "800" - float m_flMaxLength; // 0x2520 + float m_flMaxLength; // 0x2660 // MPropertyFriendlyName "min length" // MPropertySortPriority "800" - float m_flMinLength; // 0x2524 + float m_flMinLength; // 0x2664 // MPropertyFriendlyName "ignore delta time" // MPropertySortPriority "800" - bool m_bIgnoreDT; // 0x2528 + bool m_bIgnoreDT; // 0x2668 private: - [[maybe_unused]] uint8_t __pad2529[0x3]; // 0x2529 + [[maybe_unused]] uint8_t __pad2669[0x3]; // 0x2669 public: // MPropertyFriendlyName "constrain radius to no more than this times the length" // MPropertySortPriority "800" - float m_flConstrainRadiusToLengthRatio; // 0x252c + float m_flConstrainRadiusToLengthRatio; // 0x266c // MPropertyFriendlyName "amount to scale trail length by" - float m_flLengthScale; // 0x2530 + float m_flLengthScale; // 0x2670 // MPropertyFriendlyName "how long before a trail grows to its full length" - float m_flLengthFadeInTime; // 0x2534 + float m_flLengthFadeInTime; // 0x2674 // MPropertyStartGroup "Trail Head & Tail" // MPropertyFriendlyName "head taper scale" // MPropertySortPriority "800" - CPerParticleFloatInput m_flRadiusHeadTaper; // 0x2538 + CPerParticleFloatInput m_flRadiusHeadTaper; // 0x2678 // MPropertyFriendlyName "head color scale" - CParticleCollectionVecInput m_vecHeadColorScale; // 0x2678 + CParticleCollectionVecInput m_vecHeadColorScale; // 0x27c8 // MPropertyFriendlyName "head alpha scale" - CPerParticleFloatInput m_flHeadAlphaScale; // 0x2c60 + CPerParticleFloatInput m_flHeadAlphaScale; // 0x2e00 // MPropertyFriendlyName "tail taper scale" - CPerParticleFloatInput m_flRadiusTaper; // 0x2da0 + CPerParticleFloatInput m_flRadiusTaper; // 0x2f50 // MPropertyFriendlyName "tail color scale" - CParticleCollectionVecInput m_vecTailColorScale; // 0x2ee0 + CParticleCollectionVecInput m_vecTailColorScale; // 0x30a0 // MPropertyFriendlyName "tail alpha scale" - CPerParticleFloatInput m_flTailAlphaScale; // 0x34c8 + CPerParticleFloatInput m_flTailAlphaScale; // 0x36d8 // MPropertyStartGroup "Trail UV Controls" // MPropertyFriendlyName "texture UV horizontal Scale field" // MPropertyAttributeChoiceName "particlefield_scalar" // MPropertySortPriority "800" - ParticleAttributeIndex_t m_nHorizCropField; // 0x3608 + ParticleAttributeIndex_t m_nHorizCropField; // 0x3828 // MPropertyFriendlyName "texture UV vertical Scale field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nVertCropField; // 0x360c + ParticleAttributeIndex_t m_nVertCropField; // 0x382c // MPropertyFriendlyName "Trail forward shift (fraction)" - float m_flForwardShift; // 0x3610 + float m_flForwardShift; // 0x3830 // MPropertyFriendlyName "Flip U or V texcoords if pitch or yaw go over PI" - bool m_bFlipUVBasedOnPitchYaw; // 0x3614 + bool m_bFlipUVBasedOnPitchYaw; // 0x3834 }; // Alignment: 30 -// Size: 0x26a0 +// Size: 0x27f0 class C_OP_RenderRopes : public CBaseRendererSource2 { public: // MPropertyStartGroup "Screenspace Fading and culling" // MPropertyFriendlyName "enable fading and clamping" // MPropertySortPriority "1000" - bool m_bEnableFadingAndClamping; // 0x2270 + bool m_bEnableFadingAndClamping; // 0x2390 private: - [[maybe_unused]] uint8_t __pad2271[0x3]; // 0x2271 + [[maybe_unused]] uint8_t __pad2391[0x3]; // 0x2391 public: // MPropertyFriendlyName "minimum visual screen-size" // MPropertySuppressExpr "!m_bEnableFadingAndClamping" - float m_flMinSize; // 0x2274 + float m_flMinSize; // 0x2394 // MPropertyFriendlyName "maximum visual screen-size" // MPropertySuppressExpr "!m_bEnableFadingAndClamping" - float m_flMaxSize; // 0x2278 + float m_flMaxSize; // 0x2398 // MPropertyFriendlyName "start fade screen-size" // MPropertySuppressExpr "!m_bEnableFadingAndClamping" - float m_flStartFadeSize; // 0x227c + float m_flStartFadeSize; // 0x239c // MPropertyFriendlyName "end fade and cull screen-size" // MPropertySuppressExpr "!m_bEnableFadingAndClamping" - float m_flEndFadeSize; // 0x2280 + float m_flEndFadeSize; // 0x23a0 // MPropertyFriendlyName "start fade dot product of normal vs view" // MPropertySortPriority "1000" - float m_flStartFadeDot; // 0x2284 + float m_flStartFadeDot; // 0x23a4 // MPropertyFriendlyName "end fade dot product of normal vs view" // MPropertySortPriority "1000" - float m_flEndFadeDot; // 0x2288 + float m_flEndFadeDot; // 0x23a8 // MPropertyStartGroup "Rope Tesselation" // MPropertyFriendlyName "amount to taper the width of the trail end by" - float m_flRadiusTaper; // 0x228c + float m_flRadiusTaper; // 0x23ac // MPropertyFriendlyName "minium number of quads per render segment" // MPropertySortPriority "850" - int32_t m_nMinTesselation; // 0x2290 + int32_t m_nMinTesselation; // 0x23b0 // MPropertyFriendlyName "maximum number of quads per render segment" - int32_t m_nMaxTesselation; // 0x2294 + int32_t m_nMaxTesselation; // 0x23b4 // MPropertyFriendlyName "tesselation resolution scale factor" - float m_flTessScale; // 0x2298 + float m_flTessScale; // 0x23b8 private: - [[maybe_unused]] uint8_t __pad229c[0x4]; // 0x229c + [[maybe_unused]] uint8_t __pad23bc[0x4]; // 0x23bc public: // MPropertyStartGroup "+Rope Global UV Controls" // MPropertyFriendlyName "global texture V World Size" // MPropertySortPriority "800" - CParticleCollectionRendererFloatInput m_flTextureVWorldSize; // 0x22a0 + CParticleCollectionRendererFloatInput m_flTextureVWorldSize; // 0x23c0 // MPropertyFriendlyName "global texture V Scroll Rate" - CParticleCollectionRendererFloatInput m_flTextureVScrollRate; // 0x23e0 + CParticleCollectionRendererFloatInput m_flTextureVScrollRate; // 0x2510 // MPropertyFriendlyName "global texture V Offset" - CParticleCollectionRendererFloatInput m_flTextureVOffset; // 0x2520 + CParticleCollectionRendererFloatInput m_flTextureVOffset; // 0x2660 // MPropertyFriendlyName "global texture V Params CP" - int32_t m_nTextureVParamsCP; // 0x2660 + int32_t m_nTextureVParamsCP; // 0x27b0 // MPropertyFriendlyName "Clamp Non-Sheet texture V coords" - bool m_bClampV; // 0x2664 + bool m_bClampV; // 0x27b4 private: - [[maybe_unused]] uint8_t __pad2665[0x3]; // 0x2665 + [[maybe_unused]] uint8_t __pad27b5[0x3]; // 0x27b5 public: // MPropertyStartGroup "Rope Global UV Controls/CP Scaling" // MPropertyFriendlyName "scale CP start" - int32_t m_nScaleCP1; // 0x2668 + int32_t m_nScaleCP1; // 0x27b8 // MPropertyFriendlyName "scale CP end" - int32_t m_nScaleCP2; // 0x266c + int32_t m_nScaleCP2; // 0x27bc // MPropertyFriendlyName "scale V world size by CP distance" - float m_flScaleVSizeByControlPointDistance; // 0x2670 + float m_flScaleVSizeByControlPointDistance; // 0x27c0 // MPropertyFriendlyName "scale V scroll rate by CP distance" - float m_flScaleVScrollByControlPointDistance; // 0x2674 + float m_flScaleVScrollByControlPointDistance; // 0x27c4 // MPropertyFriendlyName "scale V offset by CP distance" - float m_flScaleVOffsetByControlPointDistance; // 0x2678 + float m_flScaleVOffsetByControlPointDistance; // 0x27c8 private: - [[maybe_unused]] uint8_t __pad267c[0x1]; // 0x267c + [[maybe_unused]] uint8_t __pad27cc[0x1]; // 0x27cc public: // MPropertyStartGroup "Rope Global UV Controls" // MPropertyFriendlyName "Use scalar attribute for texture coordinate" - bool m_bUseScalarForTextureCoordinate; // 0x267d + bool m_bUseScalarForTextureCoordinate; // 0x27cd private: - [[maybe_unused]] uint8_t __pad267e[0x2]; // 0x267e + [[maybe_unused]] uint8_t __pad27ce[0x2]; // 0x27ce public: // MPropertyFriendlyName "scalar to use for texture coordinate" // MPropertyAttributeChoiceName "particlefield_scalar" // MPropertySuppressExpr "!m_bUseScalarForTextureCoordinate" - ParticleAttributeIndex_t m_nScalarFieldForTextureCoordinate; // 0x2680 + ParticleAttributeIndex_t m_nScalarFieldForTextureCoordinate; // 0x27d0 // MPropertyFriendlyName "scale value to map attribute to texture coordinate" // MPropertySuppressExpr "!m_bUseScalarForTextureCoordinate" - float m_flScalarAttributeTextureCoordScale; // 0x2684 + float m_flScalarAttributeTextureCoordScale; // 0x27d4 // MPropertyStartGroup "Rope Order Controls" // MPropertyFriendlyName "reverse point order" // MPropertySortPriority "800" - bool m_bReverseOrder; // 0x2688 + bool m_bReverseOrder; // 0x27d8 // MPropertyFriendlyName "Closed loop" - bool m_bClosedLoop; // 0x2689 + bool m_bClosedLoop; // 0x27d9 private: - [[maybe_unused]] uint8_t __pad268a[0x2]; // 0x268a + [[maybe_unused]] uint8_t __pad27da[0x2]; // 0x27da public: // MPropertyStartGroup "Orientation" // MPropertyFriendlyName "orientation_type" // MPropertySortPriority "750" - ParticleOrientationChoiceList_t m_nOrientationType; // 0x268c + ParticleOrientationChoiceList_t m_nOrientationType; // 0x27dc // MPropertyFriendlyName "attribute to use for normal" // MPropertyAttributeChoiceName "particlefield_vector" // MPropertySortPriority "750" // MPropertySuppressExpr "m_nOrientationType != PARTICLE_ORIENTATION_ALIGN_TO_PARTICLE_NORMAL && m_nOrientationType != PARTICLE_ORIENTATION_SCREENALIGN_TO_PARTICLE_NORMAL" - ParticleAttributeIndex_t m_nVectorFieldForOrientation; // 0x2690 + ParticleAttributeIndex_t m_nVectorFieldForOrientation; // 0x27e0 // MPropertyStartGroup "Material" // MPropertyFriendlyName "draw as opaque" - bool m_bDrawAsOpaque; // 0x2694 + bool m_bDrawAsOpaque; // 0x27e4 // MPropertyStartGroup "Orientation" // MPropertyFriendlyName "generate normals for cylinder" - bool m_bGenerateNormals; // 0x2695 + bool m_bGenerateNormals; // 0x27e5 }; // Alignment: 8 -// Size: 0x2a0 +// Size: 0x240 class C_OP_RenderAsModels : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "models" // MParticleRequireDefaultArrayEntry - CUtlVector< ModelReference_t > m_ModelList; // 0x260 + CUtlVector< ModelReference_t > m_ModelList; // 0x200 private: - [[maybe_unused]] uint8_t __pad0278[0x4]; // 0x278 + [[maybe_unused]] uint8_t __pad0218[0x4]; // 0x218 public: // MPropertyFriendlyName "scale factor for radius" - float m_flModelScale; // 0x27c + float m_flModelScale; // 0x21c // MPropertyFriendlyName "scale model to match particle size" - bool m_bFitToModelSize; // 0x280 + bool m_bFitToModelSize; // 0x220 // MPropertyFriendlyName "non-uniform scaling" - bool m_bNonUniformScaling; // 0x281 + bool m_bNonUniformScaling; // 0x221 private: - [[maybe_unused]] uint8_t __pad0282[0x2]; // 0x282 + [[maybe_unused]] uint8_t __pad0222[0x2]; // 0x222 public: // MPropertyFriendlyName "X axis scaling scalar field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nXAxisScalingAttribute; // 0x284 + ParticleAttributeIndex_t m_nXAxisScalingAttribute; // 0x224 // MPropertyFriendlyName "Y axis scaling scalar field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nYAxisScalingAttribute; // 0x288 + ParticleAttributeIndex_t m_nYAxisScalingAttribute; // 0x228 // MPropertyFriendlyName "Z axis scaling scalar field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nZAxisScalingAttribute; // 0x28c + ParticleAttributeIndex_t m_nZAxisScalingAttribute; // 0x22c // MPropertyFriendlyName "model size cull bloat" // MPropertyAttributeChoiceName "particlefield_size_cull_bloat" - int32_t m_nSizeCullBloat; // 0x290 + int32_t m_nSizeCullBloat; // 0x230 }; // Alignment: 7 -// Size: 0x290 +// Size: 0x230 class C_OP_RenderLights : public C_OP_RenderPoints { public: // MPropertyFriendlyName "animation rate" - float m_flAnimationRate; // 0x270 + float m_flAnimationRate; // 0x210 // MPropertyFriendlyName "animation type" - AnimationType_t m_nAnimationType; // 0x274 + AnimationType_t m_nAnimationType; // 0x214 // MPropertyFriendlyName "set animation value in FPS" - bool m_bAnimateInFPS; // 0x278 + bool m_bAnimateInFPS; // 0x218 private: - [[maybe_unused]] uint8_t __pad0279[0x3]; // 0x279 + [[maybe_unused]] uint8_t __pad0219[0x3]; // 0x219 public: // MPropertyFriendlyName "minimum visual size" - float m_flMinSize; // 0x27c + float m_flMinSize; // 0x21c // MPropertyFriendlyName "maximum visual size" - float m_flMaxSize; // 0x280 + float m_flMaxSize; // 0x220 // MPropertyFriendlyName "size at which to start fading" - float m_flStartFadeSize; // 0x284 + float m_flStartFadeSize; // 0x224 // MPropertyFriendlyName "size at which to fade away" - float m_flEndFadeSize; // 0x288 + float m_flEndFadeSize; // 0x228 }; // Alignment: 5 -// Size: 0x630 +// Size: 0x600 class C_OP_RenderBlobs : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "cube width" - CParticleCollectionRendererFloatInput m_cubeWidth; // 0x260 + CParticleCollectionRendererFloatInput m_cubeWidth; // 0x200 // MPropertyFriendlyName "cutoff radius" - CParticleCollectionRendererFloatInput m_cutoffRadius; // 0x3a0 + CParticleCollectionRendererFloatInput m_cutoffRadius; // 0x350 // MPropertyFriendlyName "render radius" - CParticleCollectionRendererFloatInput m_renderRadius; // 0x4e0 + CParticleCollectionRendererFloatInput m_renderRadius; // 0x4a0 // MPropertyFriendlyName "scale CP (cube width/cutoff/render = x/y/z)" - int32_t m_nScaleCP; // 0x620 + int32_t m_nScaleCP; // 0x5f0 private: - [[maybe_unused]] uint8_t __pad0624[0x4]; // 0x624 + [[maybe_unused]] uint8_t __pad05f4[0x4]; // 0x5f4 public: - CStrongHandle< InfoForResourceTypeIMaterial2 > m_hMaterial; // 0x628 + CStrongHandle< InfoForResourceTypeIMaterial2 > m_hMaterial; // 0x5f8 +}; + +// Alignment: 6 +// Size: 0x610 +class C_OP_RenderGpuImplicit : public CParticleFunctionRenderer +{ +public: + // MPropertySortPriority "-1" + // MPropertyDescription "Honors the per-particle radius (multiplied by radius scale) but is more expensive to render. Some particles with large radii can make things much costlier" + bool m_bUsePerParticleRadius; // 0x200 +private: + [[maybe_unused]] uint8_t __pad0201[0x7]; // 0x201 +public: + CParticleCollectionRendererFloatInput m_fGridSize; // 0x208 + CParticleCollectionRendererFloatInput m_fRadiusScale; // 0x358 + // MPropertyAttributeRange ".1 .95" + CParticleCollectionRendererFloatInput m_fIsosurfaceThreshold; // 0x4a8 + // MPropertyFriendlyName "scale CP (grid size/particle radius/threshold = x/y/z)" + int32_t m_nScaleCP; // 0x5f8 +private: + [[maybe_unused]] uint8_t __pad05fc[0x4]; // 0x5fc +public: + CStrongHandle< InfoForResourceTypeIMaterial2 > m_hMaterial; // 0x600 }; // Alignment: 2 -// Size: 0x270 +// Size: 0x210 class C_OP_RenderScreenVelocityRotate : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "rotate rate(dps)" - float m_flRotateRateDegrees; // 0x260 + float m_flRotateRateDegrees; // 0x200 // MPropertyFriendlyName "forward angle" - float m_flForwardDegrees; // 0x264 + float m_flForwardDegrees; // 0x204 }; // Alignment: 48 -// Size: 0x22e0 +// Size: 0x2400 class C_OP_RenderModels : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "Only Render in effects bloom pass" // MPropertySortPriority "1100" - bool m_bOnlyRenderInEffectsBloomPass; // 0x260 + bool m_bOnlyRenderInEffectsBloomPass; // 0x200 // MPropertyFriendlyName "Only Render in effects water pass" // MPropertySortPriority "1050" // MPropertySuppressExpr "mod != csgo" - bool m_bOnlyRenderInEffectsWaterPass; // 0x261 + bool m_bOnlyRenderInEffectsWaterPass; // 0x201 // MPropertyFriendlyName "Use Mixed Resolution Rendering" // MPropertySortPriority "1200" - bool m_bUseMixedResolutionRendering; // 0x262 + bool m_bUseMixedResolutionRendering; // 0x202 // MPropertyFriendlyName "Only Render in effects game overlay pass" // MPropertySortPriority "1210" // MPropertySuppressExpr "mod != csgo" - bool m_bOnlyRenderInEffecsGameOverlay; // 0x263 + bool m_bOnlyRenderInEffecsGameOverlay; // 0x203 private: - [[maybe_unused]] uint8_t __pad0264[0x4]; // 0x264 + [[maybe_unused]] uint8_t __pad0204[0x4]; // 0x204 public: // MPropertyFriendlyName "models" // MParticleRequireDefaultArrayEntry // MPropertyAutoExpandSelf // MPropertySortPriority "775" - CUtlVector< ModelReference_t > m_ModelList; // 0x268 + CUtlVector< ModelReference_t > m_ModelList; // 0x208 private: - [[maybe_unused]] uint8_t __pad0280[0x4]; // 0x280 + [[maybe_unused]] uint8_t __pad0220[0x4]; // 0x220 public: // MPropertyFriendlyName "bodygroup field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nBodyGroupField; // 0x284 + ParticleAttributeIndex_t m_nBodyGroupField; // 0x224 // MPropertyFriendlyName "submodel field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nSubModelField; // 0x288 + ParticleAttributeIndex_t m_nSubModelField; // 0x228 // MPropertyStartGroup "Orientation" // MPropertyFriendlyName "ignore normal" // MPropertySortPriority "750" - bool m_bIgnoreNormal; // 0x28c + bool m_bIgnoreNormal; // 0x22c // MPropertyFriendlyName "orient model z to normal" // MPropertySortPriority "750" // MPropertySuppressExpr "m_bIgnoreNormal" - bool m_bOrientZ; // 0x28d + bool m_bOrientZ; // 0x22d // MPropertyFriendlyName "center mesh" // MPropertySortPriority "750" - bool m_bCenterOffset; // 0x28e + bool m_bCenterOffset; // 0x22e private: - [[maybe_unused]] uint8_t __pad028f[0x1]; // 0x28f + [[maybe_unused]] uint8_t __pad022f[0x1]; // 0x22f public: // MPropertyFriendlyName "model local offset" // MPropertySortPriority "750" - CPerParticleVecInput m_vecLocalOffset; // 0x290 + CPerParticleVecInput m_vecLocalOffset; // 0x230 // MPropertyFriendlyName "model local rotation (pitch/yaw/roll)" // MPropertySortPriority "750" - CPerParticleVecInput m_vecLocalRotation; // 0x878 + CPerParticleVecInput m_vecLocalRotation; // 0x868 // MPropertyStartGroup "Model Scale" // MPropertyFriendlyName "ignore radius" // MPropertySortPriority "700" - bool m_bIgnoreRadius; // 0xe60 + bool m_bIgnoreRadius; // 0xea0 private: - [[maybe_unused]] uint8_t __pad0e61[0x3]; // 0xe61 + [[maybe_unused]] uint8_t __pad0ea1[0x3]; // 0xea1 public: // MPropertyFriendlyName "model scale CP" // MPropertySortPriority "700" - int32_t m_nModelScaleCP; // 0xe64 + int32_t m_nModelScaleCP; // 0xea4 // MPropertyFriendlyName "model component scale" // MPropertySortPriority "700" - CPerParticleVecInput m_vecComponentScale; // 0xe68 + CPerParticleVecInput m_vecComponentScale; // 0xea8 // MPropertyFriendlyName "apply scales in local model space" // MPropertySortPriority "700" - bool m_bLocalScale; // 0x1450 + bool m_bLocalScale; // 0x14e0 // MPropertyStartGroup "Animation" // MPropertyFriendlyName "animated" // MPropertySortPriority "500" - bool m_bAnimated; // 0x1451 + bool m_bAnimated; // 0x14e1 private: - [[maybe_unused]] uint8_t __pad1452[0x2]; // 0x1452 + [[maybe_unused]] uint8_t __pad14e2[0x2]; // 0x14e2 public: // MPropertyFriendlyName "animation rate" // MPropertySortPriority "500" // MPropertySuppressExpr "!m_bAnimated" - float m_flAnimationRate; // 0x1454 + float m_flAnimationRate; // 0x14e4 // MPropertyFriendlyName "scale animation rate" // MPropertySortPriority "500" // MPropertySuppressExpr "!m_bAnimated" - bool m_bScaleAnimationRate; // 0x1458 + bool m_bScaleAnimationRate; // 0x14e8 // MPropertyFriendlyName "force looping animations" // MPropertySortPriority "500" // MPropertySuppressExpr "!m_bAnimated" - bool m_bForceLoopingAnimation; // 0x1459 + bool m_bForceLoopingAnimation; // 0x14e9 // MPropertyFriendlyName "reset animation frame on stop" // MPropertySortPriority "500" // MPropertySuppressExpr "!m_bAnimated" - bool m_bResetAnimOnStop; // 0x145a + bool m_bResetAnimOnStop; // 0x14ea // MPropertyFriendlyName "set animation frame manually" // MPropertySortPriority "500" // MPropertySuppressExpr "!m_bAnimated" - bool m_bManualAnimFrame; // 0x145b + bool m_bManualAnimFrame; // 0x14eb // MPropertyFriendlyName "animation rate scale field" // MPropertyAttributeChoiceName "particlefield_scalar" // MPropertySortPriority "500" // MPropertySuppressExpr "!m_bAnimated" - ParticleAttributeIndex_t m_nAnimationScaleField; // 0x145c + ParticleAttributeIndex_t m_nAnimationScaleField; // 0x14ec // MPropertyStartGroup "Animation" // MPropertyFriendlyName "animation sequence field" // MPropertyAttributeChoiceName "particlefield_scalar" // MPropertySortPriority "500" - ParticleAttributeIndex_t m_nAnimationField; // 0x1460 + ParticleAttributeIndex_t m_nAnimationField; // 0x14f0 // MPropertyFriendlyName "manual animation frame field" // MPropertyAttributeChoiceName "particlefield_scalar" // MPropertySortPriority "500" // MPropertySuppressExpr "!(m_bAnimated && m_bManualAnimFrame)" - ParticleAttributeIndex_t m_nManualFrameField; // 0x1464 + ParticleAttributeIndex_t m_nManualFrameField; // 0x14f4 // MPropertyFriendlyName "activity override" // MPropertySuppressExpr "mod != dota" // MPropertySortPriority "500" - char m_ActivityName[256]; // 0x1468 + char m_ActivityName[256]; // 0x14f8 // MPropertyFriendlyName "sequence override" // MPropertySuppressExpr "mod == dota" // MPropertySortPriority "500" - char m_SequenceName[256]; // 0x1568 + char m_SequenceName[256]; // 0x15f8 // MPropertyFriendlyName "Enable Cloth Simulation" - bool m_bEnableClothSimulation; // 0x1668 + bool m_bEnableClothSimulation; // 0x16f8 private: - [[maybe_unused]] uint8_t __pad1669[0x7]; // 0x1669 + [[maybe_unused]] uint8_t __pad16f9[0x7]; // 0x16f9 public: // MPropertyStartGroup "Material" // MPropertyFriendlyName "material override" // MPropertySortPriority "600" - CStrongHandle< InfoForResourceTypeIMaterial2 > m_hOverrideMaterial; // 0x1670 + CStrongHandle< InfoForResourceTypeIMaterial2 > m_hOverrideMaterial; // 0x1700 // MPropertyFriendlyName "override translucent materials" // MPropertySortPriority "600" - bool m_bOverrideTranslucentMaterials; // 0x1678 + bool m_bOverrideTranslucentMaterials; // 0x1708 private: - [[maybe_unused]] uint8_t __pad1679[0x3]; // 0x1679 + [[maybe_unused]] uint8_t __pad1709[0x3]; // 0x1709 public: // MPropertyFriendlyName "skin number" // MPropertySortPriority "600" - int32_t m_nSkin; // 0x167c + int32_t m_nSkin; // 0x170c // MPropertyFriendlyName "skin override CP" // MPropertySortPriority "600" - int32_t m_nSkinCP; // 0x1680 + int32_t m_nSkinCP; // 0x1710 private: - [[maybe_unused]] uint8_t __pad1684[0x4]; // 0x1684 + [[maybe_unused]] uint8_t __pad1714[0x4]; // 0x1714 public: // MPropertyFriendlyName "material variables" // MPropertyAutoExpandSelf // MPropertySortPriority "600" - CUtlVector< MaterialVariable_t > m_MaterialVars; // 0x1688 + CUtlVector< MaterialVariable_t > m_MaterialVars; // 0x1718 // MPropertyStartGroup "Model Overrides" // MPropertyFriendlyName "input model" - CParticleModelInput m_modelInput; // 0x16a0 + CParticleModelInput m_modelInput; // 0x1730 // MPropertyFriendlyName "model LOD" - int32_t m_nLOD; // 0x16e8 + int32_t m_nLOD; // 0x1790 // MPropertyFriendlyName "model override economy loadout slot type" - char m_EconSlotName[256]; // 0x16ec + char m_EconSlotName[256]; // 0x1794 // MPropertyFriendlyName "model override original model only (ignore shapeshift/hex/etc)" - bool m_bOriginalModel; // 0x17ec + bool m_bOriginalModel; // 0x1894 // MPropertyFriendlyName "suppress tinting of the model" - bool m_bSuppressTint; // 0x17ed + bool m_bSuppressTint; // 0x1895 // MPropertyFriendlyName "use raw mesh group (ignore bodygroup field and use submodel field as raw meshgroup)" - bool m_bUseRawMeshGroup; // 0x17ee + bool m_bUseRawMeshGroup; // 0x1896 // MPropertyFriendlyName "disable shadows" - bool m_bDisableShadows; // 0x17ef + bool m_bDisableShadows; // 0x1897 // MPropertyFriendlyName "forcedrawinterlevedwithsiblings" - bool m_bForceDrawInterlevedWithSiblings; // 0x17f0 + bool m_bForceDrawInterlevedWithSiblings; // 0x1898 // MPropertyFriendlyName "render attribute" - char m_szRenderAttribute[260]; // 0x17f1 + char m_szRenderAttribute[260]; // 0x1899 private: - [[maybe_unused]] uint8_t __pad18f5[0x3]; // 0x18f5 + [[maybe_unused]] uint8_t __pad199d[0x3]; // 0x199d public: // MPropertyStartGroup "+Renderer Modifiers" // MPropertyFriendlyName "Radius Scale" // MPropertySortPriority "700" - CParticleCollectionFloatInput m_flRadiusScale; // 0x18f8 + CParticleCollectionFloatInput m_flRadiusScale; // 0x19a0 // MPropertyFriendlyName "alpha scale" // MPropertySortPriority "700" - CParticleCollectionFloatInput m_flAlphaScale; // 0x1a38 + CParticleCollectionFloatInput m_flAlphaScale; // 0x1af0 // MPropertyFriendlyName "rotation roll scale" // MPropertySortPriority "700" - CParticleCollectionFloatInput m_flRollScale; // 0x1b78 + CParticleCollectionFloatInput m_flRollScale; // 0x1c40 // MPropertyFriendlyName "per-particle alpha scale attribute" // MPropertyAttributeChoiceName "particlefield_scalar" // MPropertySortPriority "700" - ParticleAttributeIndex_t m_nAlpha2Field; // 0x1cb8 + ParticleAttributeIndex_t m_nAlpha2Field; // 0x1d90 private: - [[maybe_unused]] uint8_t __pad1cbc[0x4]; // 0x1cbc + [[maybe_unused]] uint8_t __pad1d94[0x4]; // 0x1d94 public: // MPropertyFriendlyName "color blend" // MPropertySortPriority "700" - CParticleCollectionVecInput m_vecColorScale; // 0x1cc0 + CParticleCollectionVecInput m_vecColorScale; // 0x1d98 // MPropertyFriendlyName "color blend type" // MPropertySortPriority "700" - ParticleColorBlendType_t m_nColorBlendType; // 0x22a8 + ParticleColorBlendType_t m_nColorBlendType; // 0x23d0 }; // Alignment: 8 -// Size: 0xb10 +// Size: 0xb20 class C_OP_RenderMaterialProxy : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "Control Point for Model" - int32_t m_nMaterialControlPoint; // 0x260 + int32_t m_nMaterialControlPoint; // 0x200 // MPropertyFriendlyName "proxy type" - MaterialProxyType_t m_nProxyType; // 0x264 + MaterialProxyType_t m_nProxyType; // 0x204 // MPropertyFriendlyName "material variables" // MPropertyAutoExpandSelf - CUtlVector< MaterialVariable_t > m_MaterialVars; // 0x268 + CUtlVector< MaterialVariable_t > m_MaterialVars; // 0x208 // MPropertyFriendlyName "material override" - CStrongHandle< InfoForResourceTypeIMaterial2 > m_hOverrideMaterial; // 0x280 + CStrongHandle< InfoForResourceTypeIMaterial2 > m_hOverrideMaterial; // 0x220 // MPropertyFriendlyName "material override enable" - CParticleCollectionFloatInput m_flMaterialOverrideEnabled; // 0x288 + CParticleCollectionFloatInput m_flMaterialOverrideEnabled; // 0x228 // MPropertyFriendlyName "model tint" - CParticleCollectionVecInput m_vecColorScale; // 0x3c8 + CParticleCollectionVecInput m_vecColorScale; // 0x378 // MPropertyFriendlyName "model alpha" CPerParticleFloatInput m_flAlpha; // 0x9b0 // MPropertyFriendlyName "model tint blend type" - ParticleColorBlendType_t m_nColorBlendType; // 0xaf0 + ParticleColorBlendType_t m_nColorBlendType; // 0xb00 }; // Alignment: 11 -// Size: 0x2b0 +// Size: 0x250 class C_OP_RenderProjected : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "project on characters" - bool m_bProjectCharacter; // 0x260 + bool m_bProjectCharacter; // 0x200 // MPropertyFriendlyName "project on world" - bool m_bProjectWorld; // 0x261 + bool m_bProjectWorld; // 0x201 // MPropertyFriendlyName "project on water" - bool m_bProjectWater; // 0x262 + bool m_bProjectWater; // 0x202 // MPropertyFriendlyName "flip horizontal" - bool m_bFlipHorizontal; // 0x263 + bool m_bFlipHorizontal; // 0x203 // MPropertyFriendlyName "enable projected depth controls" - bool m_bEnableProjectedDepthControls; // 0x264 + bool m_bEnableProjectedDepthControls; // 0x204 private: - [[maybe_unused]] uint8_t __pad0265[0x3]; // 0x265 + [[maybe_unused]] uint8_t __pad0205[0x3]; // 0x205 public: // MPropertyFriendlyName "min projection depth" // MPropertySuppressExpr "!m_bEnableProjectedDepthControls" - float m_flMinProjectionDepth; // 0x268 + float m_flMinProjectionDepth; // 0x208 // MPropertyFriendlyName "max projection depth" // MPropertySuppressExpr "!m_bEnableProjectedDepthControls" - float m_flMaxProjectionDepth; // 0x26c + float m_flMaxProjectionDepth; // 0x20c // MPropertyFriendlyName "material" - CStrongHandle< InfoForResourceTypeIMaterial2 > m_hProjectedMaterial; // 0x270 + CStrongHandle< InfoForResourceTypeIMaterial2 > m_hProjectedMaterial; // 0x210 // MPropertyFriendlyName "sheet animation time scale" - float m_flAnimationTimeScale; // 0x278 + float m_flAnimationTimeScale; // 0x218 // MPropertyFriendlyName "orient to normal" - bool m_bOrientToNormal; // 0x27c + bool m_bOrientToNormal; // 0x21c private: - [[maybe_unused]] uint8_t __pad027d[0x3]; // 0x27d + [[maybe_unused]] uint8_t __pad021d[0x3]; // 0x21d public: // MPropertyFriendlyName "material variables" // MPropertyAutoExpandSelf - CUtlVector< MaterialVariable_t > m_MaterialVars; // 0x280 + CUtlVector< MaterialVariable_t > m_MaterialVars; // 0x220 }; // Alignment: 16 -// Size: 0x890 +// Size: 0x880 class C_OP_RenderDeferredLight : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "projected texture use alpha test window" // MPropertySuppressExpr "!m_bUseTexture" - bool m_bUseAlphaTestWindow; // 0x260 + bool m_bUseAlphaTestWindow; // 0x200 // MPropertyFriendlyName "projected texture light" - bool m_bUseTexture; // 0x261 + bool m_bUseTexture; // 0x201 private: - [[maybe_unused]] uint8_t __pad0262[0x2]; // 0x262 + [[maybe_unused]] uint8_t __pad0202[0x2]; // 0x202 public: // MPropertyStartGroup "+Renderer Modifiers" // MPropertyFriendlyName "radius scale" // MPropertySortPriority "700" - float m_flRadiusScale; // 0x264 + float m_flRadiusScale; // 0x204 // MPropertyFriendlyName "alpha scale" // MPropertySortPriority "700" - float m_flAlphaScale; // 0x268 + float m_flAlphaScale; // 0x208 // MPropertyFriendlyName "per-particle alpha scale attribute" // MPropertyAttributeChoiceName "particlefield_scalar" // MPropertySortPriority "700" - ParticleAttributeIndex_t m_nAlpha2Field; // 0x26c + ParticleAttributeIndex_t m_nAlpha2Field; // 0x20c // MPropertyFriendlyName "color blend" // MPropertySortPriority "700" - CParticleCollectionVecInput m_vecColorScale; // 0x270 + CParticleCollectionVecInput m_vecColorScale; // 0x210 // MPropertyFriendlyName "color blend type" // MPropertySortPriority "700" - ParticleColorBlendType_t m_nColorBlendType; // 0x858 + ParticleColorBlendType_t m_nColorBlendType; // 0x848 // MPropertyStartGroup // MPropertyFriendlyName "spotlight distance" - float m_flLightDistance; // 0x85c + float m_flLightDistance; // 0x84c // MPropertyFriendlyName "light start falloff" - float m_flStartFalloff; // 0x860 + float m_flStartFalloff; // 0x850 // MPropertyFriendlyName "spotlight distance falloff" - float m_flDistanceFalloff; // 0x864 + float m_flDistanceFalloff; // 0x854 // MPropertyFriendlyName "spotlight FoV" - float m_flSpotFoV; // 0x868 + float m_flSpotFoV; // 0x858 // MPropertyFriendlyName "projected texture alpha test point scale field" // MPropertyAttributeChoiceName "particlefield_scalar" // MPropertySuppressExpr "!m_bUseTexture" - ParticleAttributeIndex_t m_nAlphaTestPointField; // 0x86c + ParticleAttributeIndex_t m_nAlphaTestPointField; // 0x85c // MPropertyFriendlyName "projected texture alpha test range scale field" // MPropertyAttributeChoiceName "particlefield_scalar" // MPropertySuppressExpr "!m_bUseTexture" - ParticleAttributeIndex_t m_nAlphaTestRangeField; // 0x870 + ParticleAttributeIndex_t m_nAlphaTestRangeField; // 0x860 // MPropertyFriendlyName "projected texture alpha test sharpness scale field" // MPropertyAttributeChoiceName "particlefield_scalar" // MPropertySuppressExpr "!m_bUseTexture" - ParticleAttributeIndex_t m_nAlphaTestSharpnessField; // 0x874 + ParticleAttributeIndex_t m_nAlphaTestSharpnessField; // 0x864 // MPropertyFriendlyName "texture" // MPropertySuppressExpr "!m_bUseTexture" - CStrongHandle< InfoForResourceTypeCTextureBase > m_hTexture; // 0x878 + CStrongHandle< InfoForResourceTypeCTextureBase > m_hTexture; // 0x868 // MPropertyFriendlyName "HSV Shift Control Point" - int32_t m_nHSVShiftControlPoint; // 0x880 + int32_t m_nHSVShiftControlPoint; // 0x870 }; // Alignment: 29 -// Size: 0x12b0 +// Size: 0x1320 class C_OP_RenderStandardLight : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "light type" - ParticleLightTypeChoiceList_t m_nLightType; // 0x260 + ParticleLightTypeChoiceList_t m_nLightType; // 0x200 private: - [[maybe_unused]] uint8_t __pad0264[0x4]; // 0x264 + [[maybe_unused]] uint8_t __pad0204[0x4]; // 0x204 public: // MPropertyFriendlyName "color blend" - CParticleCollectionVecInput m_vecColorScale; // 0x268 + CParticleCollectionVecInput m_vecColorScale; // 0x208 // MPropertyFriendlyName "color blend type" - ParticleColorBlendType_t m_nColorBlendType; // 0x850 + ParticleColorBlendType_t m_nColorBlendType; // 0x840 private: - [[maybe_unused]] uint8_t __pad0854[0x4]; // 0x854 + [[maybe_unused]] uint8_t __pad0844[0x4]; // 0x844 public: // MPropertyFriendlyName "intensity" - CParticleCollectionFloatInput m_flIntensity; // 0x858 + CParticleCollectionFloatInput m_flIntensity; // 0x848 // MPropertyFriendlyName "cast shadows" // MPropertySuppressExpr "m_nLightType == PARTICLE_LIGHT_TYPE_FX" bool m_bCastShadows; // 0x998 @@ -10811,141 +10174,143 @@ public: CParticleCollectionFloatInput m_flTheta; // 0x9a0 // MPropertyFriendlyName "outer cone angle" // MPropertySuppressExpr "m_nLightType != PARTICLE_LIGHT_TYPE_SPOT" - CParticleCollectionFloatInput m_flPhi; // 0xae0 + CParticleCollectionFloatInput m_flPhi; // 0xaf0 // MPropertyFriendlyName "light radius multiplier" - CParticleCollectionFloatInput m_flRadiusMultiplier; // 0xc20 + CParticleCollectionFloatInput m_flRadiusMultiplier; // 0xc40 // MPropertyFriendlyName "attenuation type" - StandardLightingAttenuationStyle_t m_nAttenuationStyle; // 0xd60 + StandardLightingAttenuationStyle_t m_nAttenuationStyle; // 0xd90 private: - [[maybe_unused]] uint8_t __pad0d64[0x4]; // 0xd64 + [[maybe_unused]] uint8_t __pad0d94[0x4]; // 0xd94 public: // MPropertyFriendlyName "falloff linearity" // MPropertySuppressExpr "m_nAttenuationStyle == LIGHT_STYLE_NEW || ( m_nAttenuationStyle == LIGHT_STYLE_OLD && m_nLightType == PARTICLE_LIGHT_TYPE_FX )" - CParticleCollectionFloatInput m_flFalloffLinearity; // 0xd68 + CParticleCollectionFloatInput m_flFalloffLinearity; // 0xd98 // MPropertyFriendlyName "falloff fifty percent" // MPropertySuppressExpr "m_nAttenuationStyle == LIGHT_STYLE_OLD" - CParticleCollectionFloatInput m_flFiftyPercentFalloff; // 0xea8 + CParticleCollectionFloatInput m_flFiftyPercentFalloff; // 0xee8 // MPropertyFriendlyName "falloff zero percent" // MPropertySuppressExpr "m_nAttenuationStyle == LIGHT_STYLE_OLD" - CParticleCollectionFloatInput m_flZeroPercentFalloff; // 0xfe8 + CParticleCollectionFloatInput m_flZeroPercentFalloff; // 0x1038 // MPropertyFriendlyName "render diffuse" // MPropertySuppressExpr "m_nLightType == PARTICLE_LIGHT_TYPE_FX" - bool m_bRenderDiffuse; // 0x1128 + bool m_bRenderDiffuse; // 0x1188 // MPropertyFriendlyName "render specular" // MPropertySuppressExpr "m_nLightType == PARTICLE_LIGHT_TYPE_FX" - bool m_bRenderSpecular; // 0x1129 + bool m_bRenderSpecular; // 0x1189 private: - [[maybe_unused]] uint8_t __pad112a[0x6]; // 0x112a + [[maybe_unused]] uint8_t __pad118a[0x6]; // 0x118a public: // MPropertyFriendlyName "light cookie string" - CUtlString m_lightCookie; // 0x1130 + CUtlString m_lightCookie; // 0x1190 // MPropertyFriendlyName "light priority" - int32_t m_nPriority; // 0x1138 + int32_t m_nPriority; // 0x1198 // MPropertyFriendlyName "fog lighting mode" // MPropertySuppressExpr "m_nLightType == PARTICLE_LIGHT_TYPE_FX" - ParticleLightFogLightingMode_t m_nFogLightingMode; // 0x113c + ParticleLightFogLightingMode_t m_nFogLightingMode; // 0x119c // MPropertyFriendlyName "fog contribution" // MPropertySuppressExpr "m_nLightType == PARTICLE_LIGHT_TYPE_FX" - CParticleCollectionRendererFloatInput m_flFogContribution; // 0x1140 + CParticleCollectionRendererFloatInput m_flFogContribution; // 0x11a0 // MPropertyFriendlyName "capsule behavior" - ParticleLightBehaviorChoiceList_t m_nCapsuleLightBehavior; // 0x1280 + ParticleLightBehaviorChoiceList_t m_nCapsuleLightBehavior; // 0x12f0 // MPropertyStartGroup "Capsule Light Controls" // MPropertyFriendlyName "capsule length" // MPropertySuppressExpr "m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_ROPE || m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_TRAILS" - float m_flCapsuleLength; // 0x1284 + float m_flCapsuleLength; // 0x12f4 // MPropertyFriendlyName "reverse point order" // MPropertySuppressExpr "m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_FOLLOW_DIRECTION || m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_TRAILS" - bool m_bReverseOrder; // 0x1288 + bool m_bReverseOrder; // 0x12f8 // MPropertyFriendlyName "Closed loop" // MPropertySuppressExpr "m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_FOLLOW_DIRECTION || m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_TRAILS" - bool m_bClosedLoop; // 0x1289 + bool m_bClosedLoop; // 0x12f9 private: - [[maybe_unused]] uint8_t __pad128a[0x2]; // 0x128a + [[maybe_unused]] uint8_t __pad12fa[0x2]; // 0x12fa public: // MPropertyFriendlyName "Anchor point source" // MPropertyAttributeChoiceName "particlefield_vector" // MPropertySuppressExpr "m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_FOLLOW_DIRECTION || m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_ROPE" - ParticleAttributeIndex_t m_nPrevPntSource; // 0x128c + ParticleAttributeIndex_t m_nPrevPntSource; // 0x12fc // MPropertyFriendlyName "max length" // MPropertySuppressExpr "m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_FOLLOW_DIRECTION || m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_ROPE" - float m_flMaxLength; // 0x1290 + float m_flMaxLength; // 0x1300 // MPropertyFriendlyName "min length" // MPropertySuppressExpr "m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_FOLLOW_DIRECTION || m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_ROPE" - float m_flMinLength; // 0x1294 + float m_flMinLength; // 0x1304 // MPropertyFriendlyName "ignore delta time" // MPropertySuppressExpr "m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_FOLLOW_DIRECTION || m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_ROPE" - bool m_bIgnoreDT; // 0x1298 + bool m_bIgnoreDT; // 0x1308 private: - [[maybe_unused]] uint8_t __pad1299[0x3]; // 0x1299 + [[maybe_unused]] uint8_t __pad1309[0x3]; // 0x1309 public: // MPropertyFriendlyName "constrain radius to no more than this times the length" // MPropertySuppressExpr "m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_FOLLOW_DIRECTION || m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_ROPE" - float m_flConstrainRadiusToLengthRatio; // 0x129c + float m_flConstrainRadiusToLengthRatio; // 0x130c // MPropertyFriendlyName "amount to scale trail length by" // MPropertySuppressExpr "m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_FOLLOW_DIRECTION || m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_ROPE" - float m_flLengthScale; // 0x12a0 + float m_flLengthScale; // 0x1310 // MPropertyFriendlyName "how long before a trail grows to its full length" // MPropertySuppressExpr "m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_FOLLOW_DIRECTION || m_nCapsuleLightBehavior == PARTICLE_LIGHT_BEHAVIOR_ROPE" - float m_flLengthFadeInTime; // 0x12a4 + float m_flLengthFadeInTime; // 0x1314 }; -// Alignment: 13 -// Size: 0x1130 +// Alignment: 14 +// Size: 0x11a0 class C_OP_RenderOmni2Light : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "Type" - ParticleOmni2LightTypeChoiceList_t m_nLightType; // 0x260 + ParticleOmni2LightTypeChoiceList_t m_nLightType; // 0x200 private: - [[maybe_unused]] uint8_t __pad0264[0x4]; // 0x264 + [[maybe_unused]] uint8_t __pad0204[0x4]; // 0x204 public: // MPropertyFriendlyName "Color Blend" - CParticleCollectionVecInput m_vColorBlend; // 0x268 + CParticleCollectionVecInput m_vColorBlend; // 0x208 // MPropertyFriendlyName "Color Blend Type" // MPropertySortPriority "700" - ParticleColorBlendType_t m_nColorBlendType; // 0x850 - ParticleLightUnitChoiceList_t m_nBrightnessUnit; // 0x854 + ParticleColorBlendType_t m_nColorBlendType; // 0x840 + ParticleLightUnitChoiceList_t m_nBrightnessUnit; // 0x844 // MPropertyFriendlyName "Lumens" // MPropertySuppressExpr "m_nBrightnessUnit != PARTICLE_LIGHT_UNIT_LUMENS" - CPerParticleFloatInput m_flBrightnessLumens; // 0x858 + CPerParticleFloatInput m_flBrightnessLumens; // 0x848 // MPropertyFriendlyName "Candelas" // MPropertySuppressExpr "m_nBrightnessUnit != PARTICLE_LIGHT_UNIT_CANDELAS" CPerParticleFloatInput m_flBrightnessCandelas; // 0x998 // MPropertyFriendlyName "Shadows" // MPropertySuppressExpr "mod == csgo" - bool m_bCastShadows; // 0xad8 + bool m_bCastShadows; // 0xae8 private: - [[maybe_unused]] uint8_t __pad0ad9[0x7]; // 0xad9 + [[maybe_unused]] uint8_t __pad0ae9[0x7]; // 0xae9 public: // MPropertyFriendlyName "Light Radius" - CPerParticleFloatInput m_flLuminaireRadius; // 0xae0 + CPerParticleFloatInput m_flLuminaireRadius; // 0xaf0 // MPropertyFriendlyName "Skirt" - CPerParticleFloatInput m_flSkirt; // 0xc20 + CPerParticleFloatInput m_flSkirt; // 0xc40 // MPropertyFriendlyName "Range" - CPerParticleFloatInput m_flRange; // 0xd60 + CPerParticleFloatInput m_flRange; // 0xd90 // MPropertyFriendlyName "Inner Cone Angle" - CPerParticleFloatInput m_flInnerConeAngle; // 0xea0 + CPerParticleFloatInput m_flInnerConeAngle; // 0xee0 // MPropertyFriendlyName "Outer Cone Angle" - CPerParticleFloatInput m_flOuterConeAngle; // 0xfe0 + CPerParticleFloatInput m_flOuterConeAngle; // 0x1030 // MPropertyFriendlyName "Cookie" - CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightCookie; // 0x1120 + CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightCookie; // 0x1180 + // MPropertyFriendlyName "Cookie is Spherically Mapped" + bool m_bSphericalCookie; // 0x1188 }; // Alignment: 7 -// Size: 0xd60 +// Size: 0xd90 class C_OP_RenderLightBeam : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "Color Blend" - CParticleCollectionVecInput m_vColorBlend; // 0x260 + CParticleCollectionVecInput m_vColorBlend; // 0x200 // MPropertyFriendlyName "Color Blend Type" // MPropertySortPriority "700" - ParticleColorBlendType_t m_nColorBlendType; // 0x848 + ParticleColorBlendType_t m_nColorBlendType; // 0x838 private: - [[maybe_unused]] uint8_t __pad084c[0x4]; // 0x84c + [[maybe_unused]] uint8_t __pad083c[0x4]; // 0x83c public: // MPropertyFriendlyName "Lumens Per Meter" - CParticleCollectionFloatInput m_flBrightnessLumensPerMeter; // 0x850 + CParticleCollectionFloatInput m_flBrightnessLumensPerMeter; // 0x840 // MPropertyFriendlyName "Shadows" // MPropertySuppressExpr "mod == csgo" bool m_bCastShadows; // 0x990 @@ -10955,13 +10320,13 @@ public: // MPropertyFriendlyName "Skirt" CParticleCollectionFloatInput m_flSkirt; // 0x998 // MPropertyFriendlyName "Range" - CParticleCollectionFloatInput m_flRange; // 0xad8 + CParticleCollectionFloatInput m_flRange; // 0xae8 // MPropertyFriendlyName "Thickness" - CParticleCollectionFloatInput m_flThickness; // 0xc18 + CParticleCollectionFloatInput m_flThickness; // 0xc38 }; // Alignment: 0 -// Size: 0x260 +// Size: 0x200 class C_OP_RenderClothForce : public CParticleFunctionRenderer { public: @@ -10969,7 +10334,7 @@ public: }; // Alignment: 0 -// Size: 0x260 +// Size: 0x200 class C_OP_Callback : public CParticleFunctionRenderer { public: @@ -10977,228 +10342,228 @@ public: }; // Alignment: 9 -// Size: 0x290 +// Size: 0x230 class C_OP_RenderScreenShake : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "duration scale" - float m_flDurationScale; // 0x260 + float m_flDurationScale; // 0x200 // MPropertyFriendlyName "radius scale" - float m_flRadiusScale; // 0x264 + float m_flRadiusScale; // 0x204 // MPropertyFriendlyName "frequence scale" - float m_flFrequencyScale; // 0x268 + float m_flFrequencyScale; // 0x208 // MPropertyFriendlyName "amplitude scale" - float m_flAmplitudeScale; // 0x26c + float m_flAmplitudeScale; // 0x20c // MPropertyFriendlyName "radius field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nRadiusField; // 0x270 + ParticleAttributeIndex_t m_nRadiusField; // 0x210 // MPropertyFriendlyName "duration field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nDurationField; // 0x274 + ParticleAttributeIndex_t m_nDurationField; // 0x214 // MPropertyFriendlyName "frequency field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nFrequencyField; // 0x278 + ParticleAttributeIndex_t m_nFrequencyField; // 0x218 // MPropertyFriendlyName "amplitude field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nAmplitudeField; // 0x27c + ParticleAttributeIndex_t m_nAmplitudeField; // 0x21c // MPropertyFriendlyName "control point of shake recipient (-1 = global)" - int32_t m_nFilterCP; // 0x280 + int32_t m_nFilterCP; // 0x220 }; // Alignment: 4 -// Size: 0x270 +// Size: 0x210 class C_OP_RenderTonemapController : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "tonemap level scale" - float m_flTonemapLevel; // 0x260 + float m_flTonemapLevel; // 0x200 // MPropertyFriendlyName "tonemap weight scale" - float m_flTonemapWeight; // 0x264 + float m_flTonemapWeight; // 0x204 // MPropertyFriendlyName "tonemap level" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nTonemapLevelField; // 0x268 + ParticleAttributeIndex_t m_nTonemapLevelField; // 0x208 // MPropertyFriendlyName "tonemap weight" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nTonemapWeightField; // 0x26c + ParticleAttributeIndex_t m_nTonemapWeightField; // 0x20c }; // Alignment: 3 -// Size: 0x3b0 +// Size: 0x360 class C_OP_RenderPostProcessing : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "Post Processing Strength" - CPerParticleFloatInput m_flPostProcessStrength; // 0x260 + CPerParticleFloatInput m_flPostProcessStrength; // 0x200 // MPropertyFriendlyName "Post Processing File" // MPropertyAttributeEditor "AssetBrowse( vpost, *showassetpreview )" - CStrongHandle< InfoForResourceTypeCPostProcessingResource > m_hPostTexture; // 0x3a0 + CStrongHandle< InfoForResourceTypeCPostProcessingResource > m_hPostTexture; // 0x350 // MPropertyFriendlyName "Post Processing Priority Group" - ParticlePostProcessPriorityGroup_t m_nPriority; // 0x3a8 + ParticlePostProcessPriorityGroup_t m_nPriority; // 0x358 }; // Alignment: 12 -// Size: 0x390 +// Size: 0x330 class C_OP_RenderSound : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "duration scale" - float m_flDurationScale; // 0x260 + float m_flDurationScale; // 0x200 // MPropertyFriendlyName "decibel level scale" - float m_flSndLvlScale; // 0x264 + float m_flSndLvlScale; // 0x204 // MPropertyFriendlyName "pitch scale" - float m_flPitchScale; // 0x268 + float m_flPitchScale; // 0x208 // MPropertyFriendlyName "volume scale" - float m_flVolumeScale; // 0x26c + float m_flVolumeScale; // 0x20c // MPropertyFriendlyName "decibel level field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nSndLvlField; // 0x270 + ParticleAttributeIndex_t m_nSndLvlField; // 0x210 // MPropertyFriendlyName "duration field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nDurationField; // 0x274 + ParticleAttributeIndex_t m_nDurationField; // 0x214 // MPropertyFriendlyName "pitch field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nPitchField; // 0x278 + ParticleAttributeIndex_t m_nPitchField; // 0x218 // MPropertyFriendlyName "volume field" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nVolumeField; // 0x27c + ParticleAttributeIndex_t m_nVolumeField; // 0x21c // MPropertyFriendlyName "sound channel" // MPropertyAttributeChoiceName "sound_channel" - int32_t m_nChannel; // 0x280 + int32_t m_nChannel; // 0x220 // MPropertyFriendlyName "sound control point number" - int32_t m_nCPReference; // 0x284 + int32_t m_nCPReference; // 0x224 // MPropertyFriendlyName "sound" // MPropertyAttributeEditor "SoundPicker()" - char m_pszSoundName[256]; // 0x288 + char m_pszSoundName[256]; // 0x228 // MPropertyFriendlyName "suppress stop event" - bool m_bSuppressStopSoundEvent; // 0x388 + bool m_bSuppressStopSoundEvent; // 0x328 }; // Alignment: 7 -// Size: 0x2a0 +// Size: 0x240 class C_OP_RenderStatusEffect : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "color warp texture (3d)" // MPropertyAttributeEditor "AssetBrowse( vtex, *showassetpreview )" - CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureColorWarp; // 0x260 + CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureColorWarp; // 0x200 // MPropertyFriendlyName "detail 2 texture" // MPropertyAttributeEditor "AssetBrowse( vtex, *showassetpreview )" - CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureDetail2; // 0x268 + CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureDetail2; // 0x208 // MPropertyFriendlyName "diffuse warp texture (3d)" // MPropertyAttributeEditor "AssetBrowse( vtex, *showassetpreview )" - CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureDiffuseWarp; // 0x270 + CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureDiffuseWarp; // 0x210 // MPropertyFriendlyName "fresnel color warp texture (3d)" // MPropertyAttributeEditor "AssetBrowse( vtex, *showassetpreview )" - CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureFresnelColorWarp; // 0x278 + CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureFresnelColorWarp; // 0x218 // MPropertyFriendlyName "fresnel warp texture" // MPropertyAttributeEditor "AssetBrowse( vtex, *showassetpreview )" - CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureFresnelWarp; // 0x280 + CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureFresnelWarp; // 0x220 // MPropertyFriendlyName "specular warp texture" // MPropertyAttributeEditor "AssetBrowse( vtex, *showassetpreview )" - CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureSpecularWarp; // 0x288 + CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureSpecularWarp; // 0x228 // MPropertyFriendlyName "environment map texture" // MPropertyAttributeEditor "AssetBrowse( vtex, *showassetpreview )" - CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureEnvMap; // 0x290 + CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureEnvMap; // 0x230 }; // Alignment: 6 -// Size: 0x290 +// Size: 0x230 class C_OP_RenderStatusEffectCitadel : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "color warp texture (3d)" // MPropertyAttributeEditor "AssetBrowse( vtex, *showassetpreview )" - CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureColorWarp; // 0x260 + CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureColorWarp; // 0x200 // MPropertyFriendlyName "normal texture" // MPropertyAttributeEditor "AssetBrowse( vtex, *showassetpreview )" - CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureNormal; // 0x268 + CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureNormal; // 0x208 // MPropertyFriendlyName "metalness texture" // MPropertyAttributeEditor "AssetBrowse( vtex, *showassetpreview )" - CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureMetalness; // 0x270 + CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureMetalness; // 0x210 // MPropertyFriendlyName "roughness texture" // MPropertyAttributeEditor "AssetBrowse( vtex, *showassetpreview )" - CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureRoughness; // 0x278 + CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureRoughness; // 0x218 // MPropertyFriendlyName "self illum texture" // MPropertyAttributeEditor "AssetBrowse( vtex, *showassetpreview )" - CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureSelfIllum; // 0x280 + CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureSelfIllum; // 0x220 // MPropertyFriendlyName "detail texture" // MPropertyAttributeEditor "AssetBrowse( vtex, *showassetpreview )" - CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureDetail; // 0x288 + CStrongHandle< InfoForResourceTypeCTextureBase > m_pTextureDetail; // 0x228 }; // Alignment: 3 -// Size: 0x270 +// Size: 0x210 class C_OP_RenderFlattenGrass : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "flattening strength" - float m_flFlattenStrength; // 0x260 + float m_flFlattenStrength; // 0x200 // MPropertyFriendlyName "strength field override" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nStrengthFieldOverride; // 0x264 + ParticleAttributeIndex_t m_nStrengthFieldOverride; // 0x204 // MPropertyFriendlyName "radius scale" - float m_flRadiusScale; // 0x268 + float m_flRadiusScale; // 0x208 }; // Alignment: 10 -// Size: 0x290 +// Size: 0x230 class C_OP_RenderTreeShake : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "peak strength" - float m_flPeakStrength; // 0x260 + float m_flPeakStrength; // 0x200 // MPropertyFriendlyName "peak strength field override" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nPeakStrengthFieldOverride; // 0x264 + ParticleAttributeIndex_t m_nPeakStrengthFieldOverride; // 0x204 // MPropertyFriendlyName "radius" - float m_flRadius; // 0x268 + float m_flRadius; // 0x208 // MPropertyFriendlyName "strength field override" // MPropertyAttributeChoiceName "particlefield_scalar" - ParticleAttributeIndex_t m_nRadiusFieldOverride; // 0x26c + ParticleAttributeIndex_t m_nRadiusFieldOverride; // 0x20c // MPropertyFriendlyName "shake duration after end" - float m_flShakeDuration; // 0x270 + float m_flShakeDuration; // 0x210 // MPropertyFriendlyName "amount of time taken to smooth between different shake parameters" - float m_flTransitionTime; // 0x274 + float m_flTransitionTime; // 0x214 // MPropertyFriendlyName "Twist amount (-1..1)" - float m_flTwistAmount; // 0x278 + float m_flTwistAmount; // 0x218 // MPropertyFriendlyName "Radial Amount (-1..1)" - float m_flRadialAmount; // 0x27c + float m_flRadialAmount; // 0x21c // MPropertyFriendlyName "Control Point Orientation Amount (-1..1)" - float m_flControlPointOrientationAmount; // 0x280 + float m_flControlPointOrientationAmount; // 0x220 // MPropertyFriendlyName "Control Point for Orientation Amount" - int32_t m_nControlPointForLinearDirection; // 0x284 + int32_t m_nControlPointForLinearDirection; // 0x224 }; // Alignment: 2 -// Size: 0x270 +// Size: 0x210 class C_OP_RenderText : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "outline color" - Color m_OutlineColor; // 0x260 + Color m_OutlineColor; // 0x200 private: - [[maybe_unused]] uint8_t __pad0264[0x4]; // 0x264 + [[maybe_unused]] uint8_t __pad0204[0x4]; // 0x204 public: // MPropertyFriendlyName "default text" - CUtlString m_DefaultText; // 0x268 + CUtlString m_DefaultText; // 0x208 }; // Alignment: 4 -// Size: 0x3b0 +// Size: 0x360 class C_OP_RenderVRHapticEvent : public CParticleFunctionRenderer { public: // MPropertyFriendlyName "haptic hand" - ParticleVRHandChoiceList_t m_nHand; // 0x260 + ParticleVRHandChoiceList_t m_nHand; // 0x200 // MPropertyFriendlyName "hand control point number" - int32_t m_nOutputHandCP; // 0x264 + int32_t m_nOutputHandCP; // 0x204 // MPropertyFriendlyName "cp field" // MPropertyAttributeChoiceName "vector_component" - int32_t m_nOutputField; // 0x268 + int32_t m_nOutputField; // 0x208 private: - [[maybe_unused]] uint8_t __pad026c[0x4]; // 0x26c + [[maybe_unused]] uint8_t __pad020c[0x4]; // 0x20c public: // MPropertyFriendlyName "amplitude" - CPerParticleFloatInput m_flAmplitude; // 0x270 + CPerParticleFloatInput m_flAmplitude; // 0x210 }; diff --git a/sdk/pulse_system.hpp b/sdk/pulse_system.hpp new file mode 100644 index 00000000..f2eb436d --- /dev/null +++ b/sdk/pulse_system.hpp @@ -0,0 +1,718 @@ +#pragma once +#include +#include "!GlobalTypes.hpp" + +// ///////////////////////////////////////////////////////////// +// Binary: pulse_system.dll +// Classes count: 66 +// Enums count: 3 +// Created using source2gen - github.com/neverlosecc/source2gen +// ///////////////////////////////////////////////////////////// + +// Alignment: 2 +// Size: 0x24 +enum class PulseInstructionCode_t : uint16_t +{ + INVALID = 0x0, + IMMEDIATE_HALT = 0x1, + RETURN_VOID = 0x2, + RETURN_VALUE = 0x3, + NOP = 0x4, + JUMP = 0x5, + JUMP_COND = 0x6, + CHUNK_LEAP = 0x7, + CHUNK_LEAP_COND = 0x8, + PULSE_CALL_SYNC = 0x9, + PULSE_CALL_ASYNC_FIRE = 0xa, + CELL_INVOKE = 0xb, + LIBRARY_INVOKE = 0xc, + SET_VAR_REG_BOOL = 0xd, + SET_VAR_REG_INT = 0xe, + SET_VAR_REG_FLOAT = 0xf, + SET_VAR_REG_STR = 0x10, + SET_VAR_REG_EHANDLE = 0x11, + SET_VAR_REG_SNDEVT_GUID = 0x12, + SET_VAR_REG_VEC3 = 0x13, + GET_VAR_REG_BOOL = 0x14, + GET_VAR_REG_INT = 0x15, + GET_VAR_REG_FLOAT = 0x16, + GET_VAR_REG_STR = 0x17, + GET_VAR_REG_EHANDLE = 0x18, + GET_VAR_REG_SNDEVT_GUID = 0x19, + GET_VAR_REG_VEC3 = 0x1a, + SET_REGISTER_LIT_BOOL = 0x1b, + SET_REGISTER_LIT_INT = 0x1c, + SET_REGISTER_LIT_FLOAT = 0x1d, + SET_REGISTER_LIT_STR = 0x1e, + SET_REGISTER_LIT_INVAL_EHANDLE = 0x1f, + SET_REGISTER_LIT_INVAL_SNDEVT_GUID = 0x20, + SET_REGISTER_LIT_VEC3 = 0x21, + SET_REGISTER_DOMAIN_VALUE = 0x22, + COUNT = 0x23, +}; + +// Alignment: 4 +// Size: 0x2 +enum class PulseMethodCallMode_t : uint32_t +{ + SYNC_WAIT_FOR_COMPLETION = 0x0, + ASYNC_FIRE_AND_FORGET = 0x1, +}; + +// Alignment: 4 +// Size: 0xd +enum class PulseValueType_t : uint32_t +{ + PVAL_INVALID = 0xffffffffffffffff, + PVAL_BOOL = 0x0, + PVAL_INT = 0x1, + PVAL_FLOAT = 0x2, + PVAL_STRING = 0x3, + PVAL_VEC3 = 0x4, + PVAL_TRANSFORM = 0x5, + PVAL_EHANDLE = 0x6, + PVAL_RESOURCE = 0x7, + PVAL_SNDEVT_GUID = 0x8, + PVAL_CURSOR_FLOW = 0x9, + PVAL_ANY = 0xa, + PVAL_COUNT = 0xb, +}; + +struct PulseRuntimeRegisterIndex_t; +struct PulseRegisterMap_t; +struct PulseRuntimeCellIndex_t; +struct PulseRuntimeChunkIndex_t; +struct PulseDocNodeID_t; +struct PulseRuntimeVarIndex_t; +struct PulseRuntimeInvokeIndex_t; +struct PulseRuntimeCallInfoIndex_t; +struct PulseRuntimeOutputIndex_t; +struct CPulse_ResumePoint; +struct CPulse_OutflowConnection; + +// Alignment: 0 +// Size: 0x1 +class CPulseTestFuncs_LibraryA +{ +public: + uint8_t __pad0000[0x1]; // Autoaligned +}; + +// Alignment: 1 +// Size: 0x2 +struct PulseRuntimeRegisterIndex_t +{ +public: + int16_t m_Value; // 0x0 +}; + +// Alignment: 3 +// Size: 0x60 +class CPulse_Chunk +{ +public: + CUtlLeanVector< PGDInstruction_t > m_Instructions; // 0x0 + CUtlLeanVector< CPulse_RegisterInfo > m_Registers; // 0x10 + CUtlLeanVector< PulseDocNodeID_t > m_InstructionEditorIDs; // 0x20 +}; + +// Alignment: 5 +// Size: 0x38 +class CPulse_Variable +{ +public: + CUtlSymbolLarge m_Name; // 0x0 + CUtlString m_Description; // 0x8 + CPulseValueFullType m_Type; // 0x10 + KeyValues3 m_DefaultValue; // 0x20 +private: + [[maybe_unused]] uint8_t __pad0030[0x2]; // 0x30 +public: + bool m_bIsPublic; // 0x32 +}; + +// Alignment: 2 +// Size: 0x10 +class CPulse_PublicOutput +{ +public: + CUtlSymbolLarge m_Name; // 0x0 + CUtlString m_Description; // 0x8 +}; + +// Alignment: 4 +// Size: 0x20 +class CPulse_OutputConnection +{ +public: + CUtlSymbolLarge m_SourceOutput; // 0x0 + CUtlSymbolLarge m_TargetEntity; // 0x8 + CUtlSymbolLarge m_TargetInput; // 0x10 + CUtlSymbolLarge m_Param; // 0x18 +}; + +// Alignment: 1 +// Size: 0x4 +struct PulseRuntimeChunkIndex_t +{ +public: + int32_t m_Value; // 0x0 +}; + +// Alignment: 1 +// Size: 0x4 +struct PulseDocNodeID_t +{ +public: + int32_t m_Value; // 0x0 +}; + +// Alignment: 9 +// Size: 0xf8 +class CPulseGraphDef +{ +public: + CUtlSymbolLarge m_DomainIdentifier; // 0x8 + CUtlSymbolLarge m_ParentMapName; // 0x10 + CUtlVector< CPulse_Chunk* > m_Chunks; // 0x18 + CUtlVector< CPulseCell_Base* > m_Cells; // 0x30 + CUtlVector< CPulse_Variable > m_Vars; // 0x48 + CUtlVector< CPulse_PublicOutput > m_PublicOutputs; // 0x60 + CUtlVector< CPulse_InvokeBinding* > m_InvokeBindings; // 0x78 + CUtlVector< CPulse_CallInfo* > m_CallInfos; // 0x90 + CUtlVector< CPulse_OutputConnection* > m_OutputConnections; // 0xa8 +}; + +// Alignment: 0 +// Size: 0xd0 +class CBasePulseGraphInstance +{ +public: + uint8_t __pad0000[0xd0]; // Autoaligned +}; + +// Alignment: 1 +// Size: 0x4 +struct PulseRuntimeCellIndex_t +{ +public: + int32_t m_Value; // 0x0 +}; + +// Alignment: 1 +// Size: 0x4 +struct PulseRuntimeCallInfoIndex_t +{ +public: + int32_t m_Value; // 0x0 +}; + +// Alignment: 1 +// Size: 0x4 +struct PulseRuntimeVarIndex_t +{ +public: + int32_t m_Value; // 0x0 +}; + +// Alignment: 1 +// Size: 0x4 +struct PulseRuntimeOutputIndex_t +{ +public: + int32_t m_Value; // 0x0 +}; + +// Alignment: 1 +// Size: 0x2 +struct PulseRuntimeStateOffset_t +{ +public: + uint16_t m_Value; // 0x0 +}; + +// Alignment: 5 +// Size: 0x58 +class CPulse_RegisterInfo +{ +public: + PulseRuntimeRegisterIndex_t m_nReg; // 0x0 + CPulseValueFullType m_Type; // 0x8 + CKV3MemberNameWithStorage m_OriginName; // 0x18 + int32_t m_nWrittenByInstruction; // 0x50 + int32_t m_nLastReadByInstruction; // 0x54 +}; + +// Alignment: 2 +// Size: 0x20 +struct PulseRegisterMap_t +{ +public: + KeyValues3 m_Inparams; // 0x0 + KeyValues3 m_Outparams; // 0x10 +}; + +// Alignment: 1 +// Size: 0x4 +struct PulseRuntimeInvokeIndex_t +{ +public: + int32_t m_Value; // 0x0 +}; + +// Alignment: 6 +// Size: 0x40 +class CPulse_CallInfo +{ +public: + CUtlSymbolLarge m_PortName; // 0x0 + PulseDocNodeID_t m_nEditorNodeID; // 0x8 +private: + [[maybe_unused]] uint8_t __pad000c[0x4]; // 0xc +public: + PulseRegisterMap_t m_RegisterMap; // 0x10 + PulseDocNodeID_t m_CallMethodID; // 0x30 + PulseRuntimeChunkIndex_t m_nSrcChunk; // 0x34 + int32_t m_nSrcInstruction; // 0x38 +}; + +// Alignment: 1 +// Size: 0x4 +struct PulseRuntimeEntrypointIndex_t +{ +public: + int32_t m_Value; // 0x0 +}; + +// Alignment: 5 +// Size: 0x38 +class CPulse_InvokeBinding +{ +public: + PulseRegisterMap_t m_RegisterMap; // 0x0 + CUtlSymbolLarge m_FuncName; // 0x20 + PulseRuntimeCellIndex_t m_nCellIndex; // 0x28 + PulseRuntimeChunkIndex_t m_nSrcChunk; // 0x2c + int32_t m_nSrcInstruction; // 0x30 +}; + +// Alignment: 16 +// Size: 0x68 +struct PGDInstruction_t +{ +public: + PulseInstructionCode_t m_nCode; // 0x0 + PulseRuntimeVarIndex_t m_nVar; // 0x4 + PulseRuntimeRegisterIndex_t m_nReg0; // 0x8 + PulseRuntimeRegisterIndex_t m_nReg1; // 0xa + PulseRuntimeRegisterIndex_t m_nReg2; // 0xc +private: + [[maybe_unused]] uint8_t __pad000e[0x2]; // 0xe +public: + PulseRuntimeInvokeIndex_t m_nInvokeBindingIndex; // 0x10 + PulseRuntimeChunkIndex_t m_nChunk; // 0x14 + int32_t m_nDestInstruction; // 0x18 + PulseRuntimeCallInfoIndex_t m_nCallInfoIndex; // 0x1c + CUtlSymbolLarge m_Arg0Name; // 0x20 + CUtlSymbolLarge m_Arg1Name; // 0x28 + bool m_bLiteralBool; // 0x30 +private: + [[maybe_unused]] uint8_t __pad0031[0x3]; // 0x31 +public: + int32_t m_nLiteralInt; // 0x34 + float m_flLiteralFloat; // 0x38 +private: + [[maybe_unused]] uint8_t __pad003c[0x4]; // 0x3c +public: + CBufferString m_LiteralString; // 0x40 + Vector m_vLiteralVec3; // 0x50 +}; + +// Alignment: 3 +// Size: 0x10 +class CPulse_OutflowConnection +{ +public: + CUtlSymbolLarge m_SourceOutflowName; // 0x0 + PulseRuntimeChunkIndex_t m_nDestChunk; // 0x8 + int32_t m_nInstruction; // 0xc +}; + +// Alignment: 0 +// Size: 0x10 +class CPulse_ResumePoint : public CPulse_OutflowConnection +{ +public: + // No members available +}; + +// Alignment: 1 +// Size: 0x48 +class CPulseCell_Base +{ +public: + // MFgdFromSchemaCompletelySkipField + PulseDocNodeID_t m_nEditorNodeID; // 0x8 +}; + +// Alignment: 0 +// Size: 0x48 +class CPulseCell_BaseFlow : public CPulseCell_Base +{ +public: + // No members available +}; + +// Alignment: 2 +// Size: 0x70 +class CPulseCell_Inflow_BaseEntrypoint : public CPulseCell_BaseFlow +{ +public: + PulseRuntimeChunkIndex_t m_EntryChunk; // 0x48 +private: + [[maybe_unused]] uint8_t __pad004c[0x4]; // 0x4c +public: + PulseRegisterMap_t m_RegisterMap; // 0x50 +}; + +// Alignment: 3 +// Size: 0x50 +class CPulseRuntimeMethodArg +{ +public: + CKV3MemberNameWithStorage m_Name; // 0x0 + CUtlString m_Description; // 0x38 + CPulseValueFullType m_Type; // 0x40 +}; + +// Alignment: 5 +// Size: 0xb0 +class CPulseCell_Inflow_Method : public CPulseCell_Inflow_BaseEntrypoint +{ +public: + CUtlSymbolLarge m_MethodName; // 0x70 + CUtlString m_Description; // 0x78 + bool m_bIsPublic; // 0x80 +private: + [[maybe_unused]] uint8_t __pad0081[0x7]; // 0x81 +public: + CPulseValueFullType m_ReturnType; // 0x88 + CUtlVector< CPulseRuntimeMethodArg > m_Args; // 0x98 +}; + +// Alignment: 1 +// Size: 0x78 +class CPulseCell_Inflow_EventHandler : public CPulseCell_Inflow_BaseEntrypoint +{ +public: + CUtlSymbolLarge m_EventName; // 0x70 +}; + +// Alignment: 1 +// Size: 0x78 +class CPulseCell_Inflow_GraphHook : public CPulseCell_Inflow_BaseEntrypoint +{ +public: + CUtlSymbolLarge m_HookName; // 0x70 +}; + +// Alignment: 4 +// Size: 0x98 +class CPulseCell_Inflow_EntOutputHandler : public CPulseCell_Inflow_BaseEntrypoint +{ +public: + CUtlSymbolLarge m_SourceEntity; // 0x70 + CUtlSymbolLarge m_SourceOutput; // 0x78 + CUtlSymbolLarge m_TargetInput; // 0x80 + CPulseValueFullType m_ExpectedParamType; // 0x88 +}; + +// Alignment: 0 +// Size: 0x48 +class CPulseCell_BaseYieldingInflow : public CPulseCell_BaseFlow +{ +public: + // No members available +}; + +// Alignment: 0 +// Size: 0x48 +class CPulseCell_BaseValue : public CPulseCell_Base +{ +public: + // No members available +}; + +// Alignment: 0 +// Size: 0x68 +class CPulseCell_Value_Expression : public CPulseCell_BaseValue +{ +public: + // No members available +}; + +// Alignment: 1 +// Size: 0x50 +class CPulseCell_Step_PublicOutput : public CPulseCell_BaseFlow +{ +public: + PulseRuntimeOutputIndex_t m_OutputIndex; // 0x48 +}; + +// Alignment: 1 +// Size: 0x58 +class CPulseCell_Inflow_Yield : public CPulseCell_BaseYieldingInflow +{ +public: + CPulse_ResumePoint m_UnyieldResume; // 0x48 +}; + +// Alignment: 1 +// Size: 0x58 +class CPulseCell_Inflow_Wait : public CPulseCell_BaseYieldingInflow +{ +public: + CPulse_ResumePoint m_WakeResume; // 0x48 +}; + +// Alignment: 2 +// Size: 0x70 +class CPulseCell_Outflow_StringSwitch : public CPulseCell_BaseFlow +{ +public: + CPulse_OutflowConnection m_DefaultCaseOutflow; // 0x48 + CUtlVector< CPulse_OutflowConnection > m_CaseOutflows; // 0x58 +}; + +// Alignment: 2 +// Size: 0x70 +class CPulseCell_Outflow_IntSwitch : public CPulseCell_BaseFlow +{ +public: + CPulse_OutflowConnection m_DefaultCaseOutflow; // 0x48 + CUtlVector< CPulse_OutflowConnection > m_CaseOutflows; // 0x58 +}; + +// Alignment: 1 +// Size: 0x60 +class CPulseCell_Outflow_CycleOrdered : public CPulseCell_BaseFlow +{ +public: + CUtlVector< CPulse_OutflowConnection > m_Outputs; // 0x48 +}; + +// Alignment: 1 +// Size: 0x4 +struct CPulseCell_Outflow_CycleOrdered__InstanceState_t +{ +public: + int32_t m_nNextIndex; // 0x0 +}; + +// Alignment: 1 +// Size: 0x60 +class CPulseCell_Outflow_CycleRandom : public CPulseCell_BaseFlow +{ +public: + CUtlVector< CPulse_OutflowConnection > m_Outputs; // 0x48 +}; + +// Alignment: 1 +// Size: 0x60 +class CPulseCell_Outflow_CycleShuffled : public CPulseCell_BaseFlow +{ +public: + CUtlVector< CPulse_OutflowConnection > m_Outputs; // 0x48 +}; + +// Alignment: 2 +// Size: 0x28 +struct CPulseCell_Outflow_CycleShuffled__InstanceState_t +{ +public: + CUtlVectorFixedGrowable< uint8 > m_Shuffle; // 0x0 + int32_t m_nNextShuffle; // 0x20 +}; + +// Alignment: 1 +// Size: 0x60 +class CPulseCell_Outflow_SimultaneousParallel : public CPulseCell_BaseFlow +{ +public: + CUtlVector< CPulse_OutflowConnection > m_Outputs; // 0x48 +}; + +// Alignment: 2 +// Size: 0x68 +class CPulseCell_Outflow_TestRandomYesNo : public CPulseCell_BaseFlow +{ +public: + // MPropertyFriendlyName "Yes" + // MPropertyDescription "Randomly taken half of the time" + CPulse_OutflowConnection m_Yes; // 0x48 + // MPropertyFriendlyName "No" + // MPropertyDescription "Randomly taken half of the time" + CPulse_OutflowConnection m_No; // 0x58 +}; + +// Alignment: 0 +// Size: 0x48 +class CPulseCell_Value_TestValue50 : public CPulseCell_BaseValue +{ +public: + // No members available +}; + +// Alignment: 0 +// Size: 0x48 +class CPulseCell_Value_RandomInt : public CPulseCell_BaseValue +{ +public: + // No members available +}; + +// Alignment: 0 +// Size: 0x48 +class CPulseCell_Step_DebugLog : public CPulseCell_BaseFlow +{ +public: + // No members available +}; + +// Alignment: 2 +// Size: 0x68 +class CPulseCell_Step_CallExternalMethod : public CPulseCell_BaseFlow +{ +public: + CUtlSymbolLarge m_MethodName; // 0x48 + CUtlVector< CPulseRuntimeMethodArg > m_ExpectedArgs; // 0x50 +}; + +// Alignment: 1 +// Size: 0x4 +struct PulseTestEHandle_t +{ +public: + int32_t m_Value; // 0x0 +}; + +// Alignment: 5 +// Size: 0x108 +class CPulseGraphInstance_TestDomain : public CBasePulseGraphInstance +{ +public: + bool m_bIsRunningUnitTests; // 0xd0 + bool m_bExplicitTimeStepping; // 0xd1 + bool m_bExpectingToDestroyWithYieldedCursors; // 0xd2 +private: + [[maybe_unused]] uint8_t __pad00d3[0x1]; // 0xd3 +public: + int32_t m_nNextValidateIndex; // 0xd4 + CUtlVector< CUtlString > m_Tracepoints; // 0xd8 + static double &Get_s_flExplicitCurTime(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("pulse_system.dll")->FindDeclaredClass("CPulseGraphInstance_TestDomain")->m_static_fields[0]->m_instance);}; +}; + +// Alignment: 0 +// Size: 0x48 +class CPulseCell_Step_TestDomainTracepoint : public CPulseCell_BaseFlow +{ +public: + // No members available +}; + +// Alignment: 0 +// Size: 0x48 +class CPulseCell_Step_TestDomainCreateFakeEntity : public CPulseCell_BaseFlow +{ +public: + // No members available +}; + +// Alignment: 0 +// Size: 0x48 +class CPulseCell_Step_TestDomainDestroyFakeEntity : public CPulseCell_BaseFlow +{ +public: + // No members available +}; + +// Alignment: 1 +// Size: 0x50 +class CPulseCell_Step_TestDomainEntFire : public CPulseCell_BaseFlow +{ +public: + CUtlString m_Input; // 0x48 +}; + +// Alignment: 0 +// Size: 0x48 +class CPulseCell_Val_TestDomainGetEntityName : public CPulseCell_BaseValue +{ +public: + // No members available +}; + +// Alignment: 0 +// Size: 0x48 +class CPulseCell_Val_TestDomainFindEntityByName : public CPulseCell_BaseValue +{ +public: + // No members available +}; + +// Alignment: 0 +// Size: 0x108 +class CPulseGraphInstance_TestDomain_Derived : public CPulseGraphInstance_TestDomain +{ +public: + // No members available +}; + +// Alignment: 0 +// Size: 0x1 +class CPulseTestFuncs_DerivedDomain +{ +public: + uint8_t __pad0000[0x1]; // Autoaligned +}; + +// Alignment: 0 +// Size: 0x48 +class CPulseCell_Test_NoInflow : public CPulseCell_BaseFlow +{ +public: + // No members available +}; + +// Alignment: 0 +// Size: 0x48 +class CPulseCell_Test_MultiInflow_WithDefault : public CPulseCell_BaseFlow +{ +public: + // No members available +}; + +// Alignment: 0 +// Size: 0x48 +class CPulseCell_Test_MultiInflow_NoDefault : public CPulseCell_BaseFlow +{ +public: + // No members available +}; + +// Alignment: 0 +// Size: 0xf0 +class CPulseGraphInstance_TurtleGraphics : public CBasePulseGraphInstance +{ +public: + // No members available +}; + +// Alignment: 0 +// Size: 0x1 +class CPulseTurtleGraphicsLib +{ +public: + uint8_t __pad0000[0x1]; // Autoaligned +}; + diff --git a/sdk/rendersystemdx11.hpp b/sdk/rendersystemdx11.hpp index 215c8fba..d1b41323 100644 --- a/sdk/rendersystemdx11.hpp +++ b/sdk/rendersystemdx11.hpp @@ -34,7 +34,7 @@ enum class RenderBufferFlags_t : uint32_t }; // Alignment: 4 -// Size: 0x2d +// Size: 0xd enum class RenderPrimitiveType_t : uint32_t { RENDER_PRIM_POINTS = 0x0, @@ -48,40 +48,8 @@ enum class RenderPrimitiveType_t : uint32_t RENDER_PRIM_TRIANGLE_STRIP_WITH_ADJACENCY = 0x8, RENDER_PRIM_INSTANCED_QUADS = 0x9, RENDER_PRIM_HETEROGENOUS = 0xa, - RENDER_PRIM_1_CONTROL_POINT_PATCHLIST = 0xb, - RENDER_PRIM_2_CONTROL_POINT_PATCHLIST = 0xc, - RENDER_PRIM_3_CONTROL_POINT_PATCHLIST = 0xd, - RENDER_PRIM_4_CONTROL_POINT_PATCHLIST = 0xe, - RENDER_PRIM_5_CONTROL_POINT_PATCHLIST = 0xf, - RENDER_PRIM_6_CONTROL_POINT_PATCHLIST = 0x10, - RENDER_PRIM_7_CONTROL_POINT_PATCHLIST = 0x11, - RENDER_PRIM_8_CONTROL_POINT_PATCHLIST = 0x12, - RENDER_PRIM_9_CONTROL_POINT_PATCHLIST = 0x13, - RENDER_PRIM_10_CONTROL_POINT_PATCHLIST = 0x14, - RENDER_PRIM_11_CONTROL_POINT_PATCHLIST = 0x15, - RENDER_PRIM_12_CONTROL_POINT_PATCHLIST = 0x16, - RENDER_PRIM_13_CONTROL_POINT_PATCHLIST = 0x17, - RENDER_PRIM_14_CONTROL_POINT_PATCHLIST = 0x18, - RENDER_PRIM_15_CONTROL_POINT_PATCHLIST = 0x19, - RENDER_PRIM_16_CONTROL_POINT_PATCHLIST = 0x1a, - RENDER_PRIM_17_CONTROL_POINT_PATCHLIST = 0x1b, - RENDER_PRIM_18_CONTROL_POINT_PATCHLIST = 0x1c, - RENDER_PRIM_19_CONTROL_POINT_PATCHLIST = 0x1d, - RENDER_PRIM_20_CONTROL_POINT_PATCHLIST = 0x1e, - RENDER_PRIM_21_CONTROL_POINT_PATCHLIST = 0x1f, - RENDER_PRIM_22_CONTROL_POINT_PATCHLIST = 0x20, - RENDER_PRIM_23_CONTROL_POINT_PATCHLIST = 0x21, - RENDER_PRIM_24_CONTROL_POINT_PATCHLIST = 0x22, - RENDER_PRIM_25_CONTROL_POINT_PATCHLIST = 0x23, - RENDER_PRIM_26_CONTROL_POINT_PATCHLIST = 0x24, - RENDER_PRIM_27_CONTROL_POINT_PATCHLIST = 0x25, - RENDER_PRIM_28_CONTROL_POINT_PATCHLIST = 0x26, - RENDER_PRIM_29_CONTROL_POINT_PATCHLIST = 0x27, - RENDER_PRIM_30_CONTROL_POINT_PATCHLIST = 0x28, - RENDER_PRIM_31_CONTROL_POINT_PATCHLIST = 0x29, - RENDER_PRIM_32_CONTROL_POINT_PATCHLIST = 0x2a, - RENDER_PRIM_COMPUTE_SHADER = 0x2b, - RENDER_PRIM_TYPE_COUNT = 0x2c, + RENDER_PRIM_COMPUTE_SHADER = 0xb, + RENDER_PRIM_TYPE_COUNT = 0xc, }; // Alignment: 4 diff --git a/sdk/resourcesystem.hpp b/sdk/resourcesystem.hpp index 8e47d4d8..b1254fc0 100644 --- a/sdk/resourcesystem.hpp +++ b/sdk/resourcesystem.hpp @@ -4,7 +4,7 @@ // ///////////////////////////////////////////////////////////// // Binary: resourcesystem.dll -// Classes count: 53 +// Classes count: 54 // Enums count: 2 // Created using source2gen - github.com/neverlosecc/source2gen // ///////////////////////////////////////////////////////////// @@ -48,30 +48,24 @@ public: // Size: 0x1 struct InfoForResourceTypeTestResource_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 struct InfoForResourceTypeProceduralTestResource_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 struct InfoForResourceTypeManifestTestResource_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 2 @@ -89,380 +83,312 @@ public: // Size: 0x1 class InfoForResourceTypeCVDataResource { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeIPulseGraphDef { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeIParticleSystemDefinition { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeIParticleSnapshot { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCAnimData { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCAnimationGroup { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCSequenceGroupData { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeIMaterial2 { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCMorphSetData { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCRenderMesh { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCModel { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCTextureBase { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeIVectorGraphic { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCVSoundEventScriptList { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCVSoundStackScriptList { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 struct InfoForResourceTypeVSound_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCVMixListResource { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCPhysAggregateData { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCVPhysXSurfacePropertiesList { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCEntityLump { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCWorldNode { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 struct InfoForResourceTypeWorld_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCVoxelVisibility { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCPostProcessingResource { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCPanoramaStyle { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCPanoramaLayout { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCPanoramaDynamicImages { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCDotaItemDefinitionResource { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCPanoramaScript { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCPanoramaTypeScript { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCDOTAPatchNotesList { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned +}; + +// Alignment: 0 +// Size: 0x1 +class InfoForResourceTypeCDOTANovelsList +{ +public: + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeIAnimGraphModelBinding { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCChoreoSceneFileData { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCDACGameDefsData { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCCompositeMaterialKit { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCSmartProp { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCCSGOEconItem { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 class InfoForResourceTypeCResponseRulesList { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 1 @@ -508,8 +434,6 @@ public: // Size: 0x20 struct FunctionInfo_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: CUtlString m_name; // 0x8 CUtlStringToken m_nameToken; // 0x10 @@ -529,16 +453,17 @@ public: int32_t m_nMaxTempVarsUsed; // 0x48 }; -// Alignment: 3 -// Size: 0x68 +// Alignment: 6 +// Size: 0xb0 class CFuseSymbolTable { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: - CUtlHashtable< CUtlStringToken, ConstantInfo_t > m_constants; // 0x8 - CUtlHashtable< CUtlStringToken, VariableInfo_t > m_variables; // 0x28 - CUtlHashtable< CUtlStringToken, FunctionInfo_t > m_functions; // 0x48 + CUtlVector< ConstantInfo_t > m_constants; // 0x0 + CUtlVector< VariableInfo_t > m_variables; // 0x18 + CUtlVector< FunctionInfo_t > m_functions; // 0x30 + CUtlHashtable< CUtlStringToken, int32 > m_constantMap; // 0x48 + CUtlHashtable< CUtlStringToken, int32 > m_variableMap; // 0x68 + CUtlHashtable< CUtlStringToken, int32 > m_functionMap; // 0x88 }; // Alignment: 2 diff --git a/sdk/schemasystem.hpp b/sdk/schemasystem.hpp index 219648cd..0bbe224d 100644 --- a/sdk/schemasystem.hpp +++ b/sdk/schemasystem.hpp @@ -146,10 +146,8 @@ public: // Size: 0x1 class InfoForResourceTypeCResourceManifestInternal { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 1 @@ -173,8 +171,6 @@ public: // Size: 0x10 class CExampleSchemaVData_PolymorphicBase { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: int32_t m_nBase; // 0x8 }; diff --git a/sdk/server.hpp b/sdk/server.hpp index 4a1936bd..971e5116 100644 --- a/sdk/server.hpp +++ b/sdk/server.hpp @@ -4,8 +4,8 @@ // ///////////////////////////////////////////////////////////// // Binary: server.dll -// Classes count: 768 -// Enums count: 124 +// Classes count: 789 +// Enums count: 127 // Created using source2gen - github.com/neverlosecc/source2gen // ///////////////////////////////////////////////////////////// @@ -72,6 +72,16 @@ enum class PerformanceMode_t : uint32_t PM_REDUCED_GIBS = 0x3, }; +// Alignment: 4 +// Size: 0x4 +enum class AmmoPosition_t : uint32_t +{ + AMMO_POSITION_INVALID = 0xffffffffffffffff, + AMMO_POSITION_PRIMARY = 0x0, + AMMO_POSITION_SECONDARY = 0x1, + AMMO_POSITION_COUNT = 0x2, +}; + // Alignment: 4 // Size: 0x3 enum class ChatIgnoreType_t : uint32_t @@ -109,7 +119,7 @@ enum class CommandEntitySpecType_t : uint32_t }; // Alignment: 4 -// Size: 0x2a +// Size: 0x27 enum class GameAnimEventIndex_t : uint32_t { AE_EMPTY = 0x0, @@ -148,12 +158,9 @@ enum class GameAnimEventIndex_t : uint32_t AE_SV_HIDE_SILENCER = 0x21, AE_SV_DETACH_SILENCER_COMPLETE = 0x22, AE_CL_EJECT_MAG = 0x23, - AE_CL_EJECT_MAG_UNHIDE = 0x24, - AE_WPN_COMPLETE_RELOAD = 0x25, - AE_WPN_CZ_DUMP_CURRENT_MAG = 0x26, - AE_WPN_CZ_UPDATE_BODYGROUP = 0x27, - AE_WPN_HEALTHSHOT_INJECT = 0x28, - AE_CL_C4_SCREEN_TEXT = 0x29, + AE_WPN_COMPLETE_RELOAD = 0x24, + AE_WPN_HEALTHSHOT_INJECT = 0x25, + AE_CL_C4_SCREEN_TEXT = 0x26, }; // Alignment: 4 @@ -212,1060 +219,31 @@ enum class RumbleEffect_t : uint32_t }; // Alignment: 4 -// Size: 0x15 +// Size: 0x16 enum class WeaponSound_t : uint32_t { WEAPON_SOUND_EMPTY = 0x0, - WEAPON_SOUND_SINGLE = 0x1, - WEAPON_SOUND_DOUBLE = 0x2, - WEAPON_SOUND_RELOAD = 0x3, - WEAPON_SOUND_MELEE_MISS = 0x4, - WEAPON_SOUND_MELEE_HIT = 0x5, - WEAPON_SOUND_MELEE_HIT_WORLD = 0x6, - WEAPON_SOUND_MELEE_HIT_PLAYER = 0x7, - WEAPON_SOUND_SPECIAL1 = 0x8, - WEAPON_SOUND_SPECIAL2 = 0x9, - WEAPON_SOUND_SPECIAL3 = 0xa, - WEAPON_SOUND_NEARLYEMPTY = 0xb, - WEAPON_SOUND_IMPACT1 = 0xc, - WEAPON_SOUND_REFLECT = 0xd, - WEAPON_SOUND_SINGLE_ACCURATE = 0xe, - WEAPON_SOUND_ZOOM_IN = 0xf, - WEAPON_SOUND_ZOOM_OUT = 0x10, - WEAPON_SOUND_MOUSE_PRESSED = 0x11, - WEAPON_SOUND_DROP = 0x12, - WEAPON_SOUND_RADIO_USE = 0x13, - WEAPON_SOUND_NUM_TYPES = 0x14, -}; - -// Alignment: 4 -// Size: 0x400 -enum class BaseActivity_t : uint32_t -{ - ACT_RESET = 0x0, - ACT_IDLE = 0x1, - ACT_TRANSITION = 0x2, - ACT_COVER = 0x3, - ACT_COVER_MED = 0x4, - ACT_COVER_LOW = 0x5, - ACT_WALK = 0x6, - ACT_WALK_AIM = 0x7, - ACT_WALK_CROUCH = 0x8, - ACT_WALK_CROUCH_AIM = 0x9, - ACT_RUN = 0xa, - ACT_RUN_AIM = 0xb, - ACT_RUN_CROUCH = 0xc, - ACT_RUN_CROUCH_AIM = 0xd, - ACT_RUN_PROTECTED = 0xe, - ACT_SCRIPT_CUSTOM_MOVE = 0xf, - ACT_RANGE_ATTACK1 = 0x10, - ACT_RANGE_ATTACK2 = 0x11, - ACT_RANGE_ATTACK1_LOW = 0x12, - ACT_RANGE_ATTACK2_LOW = 0x13, - ACT_DIESIMPLE = 0x14, - ACT_DIEBACKWARD = 0x15, - ACT_DIEFORWARD = 0x16, - ACT_DIEVIOLENT = 0x17, - ACT_DIERAGDOLL = 0x18, - ACT_FLY = 0x19, - ACT_HOVER = 0x1a, - ACT_GLIDE = 0x1b, - ACT_SWIM = 0x1c, - ACT_JUMP = 0x1d, - ACT_HOP = 0x1e, - ACT_LEAP = 0x1f, - ACT_LAND = 0x20, - ACT_CLIMB_UP = 0x21, - ACT_CLIMB_DOWN = 0x22, - ACT_CLIMB_DISMOUNT = 0x23, - ACT_SHIPLADDER_UP = 0x24, - ACT_SHIPLADDER_DOWN = 0x25, - ACT_STRAFE_LEFT = 0x26, - ACT_STRAFE_RIGHT = 0x27, - ACT_ROLL_LEFT = 0x28, - ACT_ROLL_RIGHT = 0x29, - ACT_TURN_LEFT = 0x2a, - ACT_TURN_RIGHT = 0x2b, - ACT_CROUCH = 0x2c, - ACT_CROUCHIDLE = 0x2d, - ACT_STAND = 0x2e, - ACT_USE = 0x2f, - ACT_ALIEN_BURROW_IDLE = 0x30, - ACT_ALIEN_BURROW_OUT = 0x31, - ACT_SIGNAL1 = 0x32, - ACT_SIGNAL2 = 0x33, - ACT_SIGNAL3 = 0x34, - ACT_SIGNAL_ADVANCE = 0x35, - ACT_SIGNAL_FORWARD = 0x36, - ACT_SIGNAL_GROUP = 0x37, - ACT_SIGNAL_HALT = 0x38, - ACT_SIGNAL_LEFT = 0x39, - ACT_SIGNAL_RIGHT = 0x3a, - ACT_SIGNAL_TAKECOVER = 0x3b, - ACT_LOOKBACK_RIGHT = 0x3c, - ACT_LOOKBACK_LEFT = 0x3d, - ACT_COWER = 0x3e, - ACT_SMALL_FLINCH = 0x3f, - ACT_BIG_FLINCH = 0x40, - ACT_MELEE_ATTACK1 = 0x41, - ACT_MELEE_ATTACK2 = 0x42, - ACT_RELOAD = 0x43, - ACT_RELOAD_START = 0x44, - ACT_RELOAD_FINISH = 0x45, - ACT_RELOAD_LOW = 0x46, - ACT_ARM = 0x47, - ACT_DISARM = 0x48, - ACT_DROP_WEAPON = 0x49, - ACT_DROP_WEAPON_SHOTGUN = 0x4a, - ACT_PICKUP_GROUND = 0x4b, - ACT_PICKUP_RACK = 0x4c, - ACT_IDLE_ANGRY = 0x4d, - ACT_IDLE_RELAXED = 0x4e, - ACT_IDLE_STIMULATED = 0x4f, - ACT_IDLE_AGITATED = 0x50, - ACT_IDLE_STEALTH = 0x51, - ACT_IDLE_HURT = 0x52, - ACT_WALK_RELAXED = 0x53, - ACT_WALK_STIMULATED = 0x54, - ACT_WALK_AGITATED = 0x55, - ACT_WALK_STEALTH = 0x56, - ACT_RUN_RELAXED = 0x57, - ACT_RUN_STIMULATED = 0x58, - ACT_RUN_AGITATED = 0x59, - ACT_RUN_STEALTH = 0x5a, - ACT_IDLE_AIM_RELAXED = 0x5b, - ACT_IDLE_AIM_STIMULATED = 0x5c, - ACT_IDLE_AIM_AGITATED = 0x5d, - ACT_IDLE_AIM_STEALTH = 0x5e, - ACT_WALK_AIM_RELAXED = 0x5f, - ACT_WALK_AIM_STIMULATED = 0x60, - ACT_WALK_AIM_AGITATED = 0x61, - ACT_WALK_AIM_STEALTH = 0x62, - ACT_RUN_AIM_RELAXED = 0x63, - ACT_RUN_AIM_STIMULATED = 0x64, - ACT_RUN_AIM_AGITATED = 0x65, - ACT_RUN_AIM_STEALTH = 0x66, - ACT_CROUCHIDLE_STIMULATED = 0x67, - ACT_CROUCHIDLE_AIM_STIMULATED = 0x68, - ACT_CROUCHIDLE_AGITATED = 0x69, - ACT_WALK_HURT = 0x6a, - ACT_RUN_HURT = 0x6b, - ACT_SPECIAL_ATTACK1 = 0x6c, - ACT_SPECIAL_ATTACK2 = 0x6d, - ACT_COMBAT_IDLE = 0x6e, - ACT_WALK_SCARED = 0x6f, - ACT_RUN_SCARED = 0x70, - ACT_VICTORY_DANCE = 0x71, - ACT_DIE_HEADSHOT = 0x72, - ACT_DIE_CHESTSHOT = 0x73, - ACT_DIE_GUTSHOT = 0x74, - ACT_DIE_BACKSHOT = 0x75, - ACT_FLINCH_HEAD = 0x76, - ACT_FLINCH_CHEST = 0x77, - ACT_FLINCH_STOMACH = 0x78, - ACT_FLINCH_LEFTARM = 0x79, - ACT_FLINCH_RIGHTARM = 0x7a, - ACT_FLINCH_LEFTLEG = 0x7b, - ACT_FLINCH_RIGHTLEG = 0x7c, - ACT_FLINCH_PHYSICS = 0x7d, - ACT_FLINCH_HEAD_BACK = 0x7e, - ACT_FLINCH_CHEST_BACK = 0x7f, - ACT_FLINCH_STOMACH_BACK = 0x80, - ACT_FLINCH_CROUCH_FRONT = 0x81, - ACT_FLINCH_CROUCH_BACK = 0x82, - ACT_FLINCH_CROUCH_LEFT = 0x83, - ACT_FLINCH_CROUCH_RIGHT = 0x84, - ACT_IDLE_ON_FIRE = 0x85, - ACT_WALK_ON_FIRE = 0x86, - ACT_RUN_ON_FIRE = 0x87, - ACT_180_LEFT = 0x89, - ACT_180_RIGHT = 0x8a, - ACT_90_LEFT = 0x8b, - ACT_90_RIGHT = 0x8c, - ACT_STEP_LEFT = 0x8d, - ACT_STEP_RIGHT = 0x8e, - ACT_STEP_BACK = 0x8f, - ACT_STEP_FORE = 0x90, - ACT_GESTURE_RANGE_ATTACK1 = 0x91, - ACT_GESTURE_RANGE_ATTACK2 = 0x92, - ACT_GESTURE_MELEE_ATTACK1 = 0x93, - ACT_GESTURE_MELEE_ATTACK2 = 0x94, - ACT_GESTURE_RANGE_ATTACK1_LOW = 0x95, - ACT_GESTURE_RANGE_ATTACK2_LOW = 0x96, - ACT_MELEE_ATTACK_SWING_GESTURE = 0x97, - ACT_GESTURE_SMALL_FLINCH = 0x98, - ACT_GESTURE_BIG_FLINCH = 0x99, - ACT_GESTURE_FLINCH_BLAST = 0x9a, - ACT_GESTURE_FLINCH_BLAST_SHOTGUN = 0x9b, - ACT_GESTURE_FLINCH_BLAST_DAMAGED = 0x9c, - ACT_GESTURE_FLINCH_BLAST_DAMAGED_SHOTGUN = 0x9d, - ACT_GESTURE_FLINCH_HEAD = 0x9e, - ACT_GESTURE_FLINCH_CHEST = 0x9f, - ACT_GESTURE_FLINCH_STOMACH = 0xa0, - ACT_GESTURE_FLINCH_LEFTARM = 0xa1, - ACT_GESTURE_FLINCH_RIGHTARM = 0xa2, - ACT_GESTURE_FLINCH_LEFTLEG = 0xa3, - ACT_GESTURE_FLINCH_RIGHTLEG = 0xa4, - ACT_GESTURE_TURN_LEFT = 0xa5, - ACT_GESTURE_TURN_RIGHT = 0xa6, - ACT_GESTURE_TURN_LEFT45 = 0xa7, - ACT_GESTURE_TURN_RIGHT45 = 0xa8, - ACT_GESTURE_TURN_LEFT90 = 0xa9, - ACT_GESTURE_TURN_RIGHT90 = 0xaa, - ACT_GESTURE_TURN_LEFT45_FLAT = 0xab, - ACT_GESTURE_TURN_RIGHT45_FLAT = 0xac, - ACT_GESTURE_TURN_LEFT90_FLAT = 0xad, - ACT_GESTURE_TURN_RIGHT90_FLAT = 0xae, - ACT_BARNACLE_HIT = 0xaf, - ACT_BARNACLE_PULL = 0xb0, - ACT_BARNACLE_CHOMP = 0xb1, - ACT_BARNACLE_CHEW = 0xb2, - ACT_DO_NOT_DISTURB = 0xb3, - ACT_SPECIFIC_SEQUENCE = 0xb4, - ACT_VM_DEPLOY = 0xb5, - ACT_VM_RELOAD_EMPTY = 0xb6, - ACT_VM_DRAW = 0xb7, - ACT_VM_HOLSTER = 0xb8, - ACT_VM_IDLE = 0xb9, - ACT_VM_FIDGET = 0xba, - ACT_VM_PULLBACK = 0xbb, - ACT_VM_PULLBACK_HIGH = 0xbc, - ACT_VM_PULLBACK_LOW = 0xbd, - ACT_VM_THROW = 0xbe, - ACT_VM_DROP = 0xbf, - ACT_VM_PULLPIN = 0xc0, - ACT_VM_PRIMARYATTACK = 0xc1, - ACT_VM_SECONDARYATTACK = 0xc2, - ACT_VM_RELOAD = 0xc3, - ACT_VM_DRYFIRE = 0xc4, - ACT_VM_HITLEFT = 0xc5, - ACT_VM_HITLEFT2 = 0xc6, - ACT_VM_HITRIGHT = 0xc7, - ACT_VM_HITRIGHT2 = 0xc8, - ACT_VM_HITCENTER = 0xc9, - ACT_VM_HITCENTER2 = 0xca, - ACT_VM_MISSLEFT = 0xcb, - ACT_VM_MISSLEFT2 = 0xcc, - ACT_VM_MISSRIGHT = 0xcd, - ACT_VM_MISSRIGHT2 = 0xce, - ACT_VM_MISSCENTER = 0xcf, - ACT_VM_MISSCENTER2 = 0xd0, - ACT_VM_HAULBACK = 0xd1, - ACT_VM_SWINGHARD = 0xd2, - ACT_VM_SWINGMISS = 0xd3, - ACT_VM_SWINGHIT = 0xd4, - ACT_VM_IDLE_TO_LOWERED = 0xd5, - ACT_VM_IDLE_LOWERED = 0xd6, - ACT_VM_LOWERED_TO_IDLE = 0xd7, - ACT_VM_RECOIL1 = 0xd8, - ACT_VM_RECOIL2 = 0xd9, - ACT_VM_RECOIL3 = 0xda, - ACT_VM_PICKUP = 0xdb, - ACT_VM_RELEASE = 0xdc, - ACT_VM_MAUL_LOOP = 0xdd, - ACT_VM_ATTACH_SILENCER = 0xde, - ACT_VM_DETACH_SILENCER = 0xdf, - ACT_SLAM_STICKWALL_IDLE = 0xe0, - ACT_SLAM_STICKWALL_ND_IDLE = 0xe1, - ACT_SLAM_STICKWALL_ATTACH = 0xe2, - ACT_SLAM_STICKWALL_ATTACH2 = 0xe3, - ACT_SLAM_STICKWALL_ND_ATTACH = 0xe4, - ACT_SLAM_STICKWALL_ND_ATTACH2 = 0xe5, - ACT_SLAM_STICKWALL_DETONATE = 0xe6, - ACT_SLAM_STICKWALL_DETONATOR_HOLSTER = 0xe7, - ACT_SLAM_STICKWALL_DRAW = 0xe8, - ACT_SLAM_STICKWALL_ND_DRAW = 0xe9, - ACT_SLAM_STICKWALL_TO_THROW = 0xea, - ACT_SLAM_STICKWALL_TO_THROW_ND = 0xeb, - ACT_SLAM_STICKWALL_TO_TRIPMINE_ND = 0xec, - ACT_SLAM_THROW_IDLE = 0xed, - ACT_SLAM_THROW_ND_IDLE = 0xee, - ACT_SLAM_THROW_THROW = 0xef, - ACT_SLAM_THROW_THROW2 = 0xf0, - ACT_SLAM_THROW_THROW_ND = 0xf1, - ACT_SLAM_THROW_THROW_ND2 = 0xf2, - ACT_SLAM_THROW_DRAW = 0xf3, - ACT_SLAM_THROW_ND_DRAW = 0xf4, - ACT_SLAM_THROW_TO_STICKWALL = 0xf5, - ACT_SLAM_THROW_TO_STICKWALL_ND = 0xf6, - ACT_SLAM_THROW_DETONATE = 0xf7, - ACT_SLAM_THROW_DETONATOR_HOLSTER = 0xf8, - ACT_SLAM_THROW_TO_TRIPMINE_ND = 0xf9, - ACT_SLAM_TRIPMINE_IDLE = 0xfa, - ACT_SLAM_TRIPMINE_DRAW = 0xfb, - ACT_SLAM_TRIPMINE_ATTACH = 0xfc, - ACT_SLAM_TRIPMINE_ATTACH2 = 0xfd, - ACT_SLAM_TRIPMINE_TO_STICKWALL_ND = 0xfe, - ACT_SLAM_TRIPMINE_TO_THROW_ND = 0xff, - ACT_SLAM_DETONATOR_IDLE = 0x100, - ACT_SLAM_DETONATOR_DRAW = 0x101, - ACT_SLAM_DETONATOR_DETONATE = 0x102, - ACT_SLAM_DETONATOR_HOLSTER = 0x103, - ACT_SLAM_DETONATOR_STICKWALL_DRAW = 0x104, - ACT_SLAM_DETONATOR_THROW_DRAW = 0x105, - ACT_SHOTGUN_RELOAD_START = 0x106, - ACT_SHOTGUN_RELOAD_FINISH = 0x107, - ACT_SHOTGUN_PUMP = 0x108, - ACT_SMG2_IDLE2 = 0x109, - ACT_SMG2_FIRE2 = 0x10a, - ACT_SMG2_DRAW2 = 0x10b, - ACT_SMG2_RELOAD2 = 0x10c, - ACT_SMG2_DRYFIRE2 = 0x10d, - ACT_SMG2_TOAUTO = 0x10e, - ACT_SMG2_TOBURST = 0x10f, - ACT_PHYSCANNON_UPGRADE = 0x110, - ACT_RANGE_ATTACK_AR1 = 0x111, - ACT_RANGE_ATTACK_AR2 = 0x112, - ACT_RANGE_ATTACK_AR2_LOW = 0x113, - ACT_RANGE_ATTACK_AR2_GRENADE = 0x114, - ACT_RANGE_ATTACK_HMG1 = 0x115, - ACT_RANGE_ATTACK_ML = 0x116, - ACT_RANGE_ATTACK_SMG1 = 0x117, - ACT_RANGE_ATTACK_SMG1_LOW = 0x118, - ACT_RANGE_ATTACK_SMG2 = 0x119, - ACT_RANGE_ATTACK_SHOTGUN = 0x11a, - ACT_RANGE_ATTACK_SHOTGUN_LOW = 0x11b, - ACT_RANGE_ATTACK_PISTOL = 0x11c, - ACT_RANGE_ATTACK_PISTOL_LOW = 0x11d, - ACT_RANGE_ATTACK_SLAM = 0x11e, - ACT_RANGE_ATTACK_TRIPWIRE = 0x11f, - ACT_RANGE_ATTACK_THROW = 0x120, - ACT_RANGE_ATTACK_SNIPER_RIFLE = 0x121, - ACT_RANGE_ATTACK_RPG = 0x122, - ACT_MELEE_ATTACK_SWING = 0x123, - ACT_RANGE_AIM_LOW = 0x124, - ACT_RANGE_AIM_SMG1_LOW = 0x125, - ACT_RANGE_AIM_PISTOL_LOW = 0x126, - ACT_RANGE_AIM_AR2_LOW = 0x127, - ACT_COVER_PISTOL_LOW = 0x128, - ACT_COVER_SMG1_LOW = 0x129, - ACT_GESTURE_RANGE_ATTACK_AR1 = 0x12a, - ACT_GESTURE_RANGE_ATTACK_AR2 = 0x12b, - ACT_GESTURE_RANGE_ATTACK_AR2_GRENADE = 0x12c, - ACT_GESTURE_RANGE_ATTACK_HMG1 = 0x12d, - ACT_GESTURE_RANGE_ATTACK_ML = 0x12e, - ACT_GESTURE_RANGE_ATTACK_SMG1 = 0x12f, - ACT_GESTURE_RANGE_ATTACK_SMG1_LOW = 0x130, - ACT_GESTURE_RANGE_ATTACK_SMG2 = 0x131, - ACT_GESTURE_RANGE_ATTACK_SHOTGUN = 0x132, - ACT_GESTURE_RANGE_ATTACK_PISTOL = 0x133, - ACT_GESTURE_RANGE_ATTACK_PISTOL_LOW = 0x134, - ACT_GESTURE_RANGE_ATTACK_SLAM = 0x135, - ACT_GESTURE_RANGE_ATTACK_TRIPWIRE = 0x136, - ACT_GESTURE_RANGE_ATTACK_THROW = 0x137, - ACT_GESTURE_RANGE_ATTACK_SNIPER_RIFLE = 0x138, - ACT_GESTURE_MELEE_ATTACK_SWING = 0x139, - ACT_IDLE_RIFLE = 0x13a, - ACT_IDLE_SMG1 = 0x13b, - ACT_IDLE_ANGRY_SMG1 = 0x13c, - ACT_IDLE_PISTOL = 0x13d, - ACT_IDLE_ANGRY_PISTOL = 0x13e, - ACT_IDLE_ANGRY_SHOTGUN = 0x13f, - ACT_IDLE_STEALTH_PISTOL = 0x140, - ACT_IDLE_PACKAGE = 0x141, - ACT_WALK_PACKAGE = 0x142, - ACT_IDLE_SUITCASE = 0x143, - ACT_WALK_SUITCASE = 0x144, - ACT_IDLE_SMG1_RELAXED = 0x145, - ACT_IDLE_SMG1_STIMULATED = 0x146, - ACT_WALK_RIFLE_RELAXED = 0x147, - ACT_RUN_RIFLE_RELAXED = 0x148, - ACT_WALK_RIFLE_STIMULATED = 0x149, - ACT_RUN_RIFLE_STIMULATED = 0x14a, - ACT_IDLE_AIM_RIFLE_STIMULATED = 0x14b, - ACT_WALK_AIM_RIFLE_STIMULATED = 0x14c, - ACT_RUN_AIM_RIFLE_STIMULATED = 0x14d, - ACT_IDLE_SHOTGUN_RELAXED = 0x14e, - ACT_IDLE_SHOTGUN_STIMULATED = 0x14f, - ACT_IDLE_SHOTGUN_AGITATED = 0x150, - ACT_WALK_ANGRY = 0x151, - ACT_POLICE_HARASS1 = 0x152, - ACT_POLICE_HARASS2 = 0x153, - ACT_IDLE_MANNEDGUN = 0x154, - ACT_IDLE_MELEE = 0x155, - ACT_IDLE_ANGRY_MELEE = 0x156, - ACT_IDLE_RPG_RELAXED = 0x157, - ACT_IDLE_RPG = 0x158, - ACT_IDLE_ANGRY_RPG = 0x159, - ACT_COVER_LOW_RPG = 0x15a, - ACT_WALK_RPG = 0x15b, - ACT_RUN_RPG = 0x15c, - ACT_WALK_CROUCH_RPG = 0x15d, - ACT_RUN_CROUCH_RPG = 0x15e, - ACT_WALK_RPG_RELAXED = 0x15f, - ACT_RUN_RPG_RELAXED = 0x160, - ACT_WALK_RIFLE = 0x161, - ACT_WALK_AIM_RIFLE = 0x162, - ACT_WALK_CROUCH_RIFLE = 0x163, - ACT_WALK_CROUCH_AIM_RIFLE = 0x164, - ACT_RUN_RIFLE = 0x165, - ACT_RUN_AIM_RIFLE = 0x166, - ACT_RUN_CROUCH_RIFLE = 0x167, - ACT_RUN_CROUCH_AIM_RIFLE = 0x168, - ACT_RUN_STEALTH_PISTOL = 0x169, - ACT_WALK_AIM_SHOTGUN = 0x16a, - ACT_RUN_AIM_SHOTGUN = 0x16b, - ACT_WALK_PISTOL = 0x16c, - ACT_RUN_PISTOL = 0x16d, - ACT_WALK_AIM_PISTOL = 0x16e, - ACT_RUN_AIM_PISTOL = 0x16f, - ACT_WALK_STEALTH_PISTOL = 0x170, - ACT_WALK_AIM_STEALTH_PISTOL = 0x171, - ACT_RUN_AIM_STEALTH_PISTOL = 0x172, - ACT_RELOAD_PISTOL = 0x173, - ACT_RELOAD_PISTOL_LOW = 0x174, - ACT_RELOAD_SMG1 = 0x175, - ACT_RELOAD_SMG1_LOW = 0x176, - ACT_RELOAD_SHOTGUN = 0x177, - ACT_RELOAD_SHOTGUN_LOW = 0x178, - ACT_GESTURE_RELOAD = 0x179, - ACT_GESTURE_RELOAD_PISTOL = 0x17a, - ACT_GESTURE_RELOAD_SMG1 = 0x17b, - ACT_GESTURE_RELOAD_SHOTGUN = 0x17c, - ACT_BUSY_LEAN_LEFT = 0x17d, - ACT_BUSY_LEAN_LEFT_ENTRY = 0x17e, - ACT_BUSY_LEAN_LEFT_EXIT = 0x17f, - ACT_BUSY_LEAN_BACK = 0x180, - ACT_BUSY_LEAN_BACK_ENTRY = 0x181, - ACT_BUSY_LEAN_BACK_EXIT = 0x182, - ACT_BUSY_SIT_GROUND = 0x183, - ACT_BUSY_SIT_GROUND_ENTRY = 0x184, - ACT_BUSY_SIT_GROUND_EXIT = 0x185, - ACT_BUSY_SIT_CHAIR = 0x186, - ACT_BUSY_SIT_CHAIR_ENTRY = 0x187, - ACT_BUSY_SIT_CHAIR_EXIT = 0x188, - ACT_BUSY_STAND = 0x189, - ACT_BUSY_QUEUE = 0x18a, - ACT_DUCK_DODGE = 0x18b, - ACT_DIE_BARNACLE_SWALLOW = 0x18c, - ACT_GESTURE_BARNACLE_STRANGLE = 0x18d, - ACT_DIE_FRONTSIDE = 0x192, - ACT_DIE_RIGHTSIDE = 0x193, - ACT_DIE_BACKSIDE = 0x194, - ACT_DIE_LEFTSIDE = 0x195, - ACT_DIE_CROUCH_FRONTSIDE = 0x196, - ACT_DIE_CROUCH_RIGHTSIDE = 0x197, - ACT_DIE_CROUCH_BACKSIDE = 0x198, - ACT_DIE_CROUCH_LEFTSIDE = 0x199, - ACT_DIE_INCAP = 0x19a, - ACT_DIE_STANDING = 0x19b, - ACT_OPEN_DOOR = 0x19c, - ACT_DI_ALYX_ZOMBIE_MELEE = 0x19d, - ACT_DI_ALYX_ZOMBIE_TORSO_MELEE = 0x19e, - ACT_DI_ALYX_HEADCRAB_MELEE = 0x19f, - ACT_DI_ALYX_ANTLION = 0x1a0, - ACT_DI_ALYX_ZOMBIE_SHOTGUN64 = 0x1a1, - ACT_DI_ALYX_ZOMBIE_SHOTGUN26 = 0x1a2, - ACT_READINESS_RELAXED_TO_STIMULATED = 0x1a3, - ACT_READINESS_RELAXED_TO_STIMULATED_WALK = 0x1a4, - ACT_READINESS_AGITATED_TO_STIMULATED = 0x1a5, - ACT_READINESS_STIMULATED_TO_RELAXED = 0x1a6, - ACT_READINESS_PISTOL_RELAXED_TO_STIMULATED = 0x1a7, - ACT_READINESS_PISTOL_RELAXED_TO_STIMULATED_WALK = 0x1a8, - ACT_READINESS_PISTOL_AGITATED_TO_STIMULATED = 0x1a9, - ACT_READINESS_PISTOL_STIMULATED_TO_RELAXED = 0x1aa, - ACT_IDLE_CARRY = 0x1ab, - ACT_WALK_CARRY = 0x1ac, - ACT_STARTDYING = 0x1ad, - ACT_DYINGLOOP = 0x1ae, - ACT_DYINGTODEAD = 0x1af, - ACT_RIDE_MANNED_GUN = 0x1b0, - ACT_VM_SPRINT_ENTER = 0x1b1, - ACT_VM_SPRINT_IDLE = 0x1b2, - ACT_VM_SPRINT_LEAVE = 0x1b3, - ACT_FIRE_START = 0x1b4, - ACT_FIRE_LOOP = 0x1b5, - ACT_FIRE_END = 0x1b6, - ACT_CROUCHING_GRENADEIDLE = 0x1b7, - ACT_CROUCHING_GRENADEREADY = 0x1b8, - ACT_CROUCHING_PRIMARYATTACK = 0x1b9, - ACT_OVERLAY_GRENADEIDLE = 0x1ba, - ACT_OVERLAY_GRENADEREADY = 0x1bb, - ACT_OVERLAY_PRIMARYATTACK = 0x1bc, - ACT_OVERLAY_SHIELD_UP = 0x1bd, - ACT_OVERLAY_SHIELD_DOWN = 0x1be, - ACT_OVERLAY_SHIELD_UP_IDLE = 0x1bf, - ACT_OVERLAY_SHIELD_ATTACK = 0x1c0, - ACT_OVERLAY_SHIELD_KNOCKBACK = 0x1c1, - ACT_SHIELD_UP = 0x1c2, - ACT_SHIELD_DOWN = 0x1c3, - ACT_SHIELD_UP_IDLE = 0x1c4, - ACT_SHIELD_ATTACK = 0x1c5, - ACT_SHIELD_KNOCKBACK = 0x1c6, - ACT_CROUCHING_SHIELD_UP = 0x1c7, - ACT_CROUCHING_SHIELD_DOWN = 0x1c8, - ACT_CROUCHING_SHIELD_UP_IDLE = 0x1c9, - ACT_CROUCHING_SHIELD_ATTACK = 0x1ca, - ACT_CROUCHING_SHIELD_KNOCKBACK = 0x1cb, - ACT_TURNRIGHT45 = 0x1cc, - ACT_TURNLEFT45 = 0x1cd, - ACT_TURN = 0x1ce, - ACT_OBJ_ASSEMBLING = 0x1cf, - ACT_OBJ_DISMANTLING = 0x1d0, - ACT_OBJ_STARTUP = 0x1d1, - ACT_OBJ_RUNNING = 0x1d2, - ACT_OBJ_IDLE = 0x1d3, - ACT_OBJ_PLACING = 0x1d4, - ACT_OBJ_DETERIORATING = 0x1d5, - ACT_OBJ_UPGRADING = 0x1d6, - ACT_DEPLOY = 0x1d7, - ACT_DEPLOY_IDLE = 0x1d8, - ACT_UNDEPLOY = 0x1d9, - ACT_CROSSBOW_DRAW_UNLOADED = 0x1da, - ACT_GAUSS_SPINUP = 0x1db, - ACT_GAUSS_SPINCYCLE = 0x1dc, - ACT_VM_PRIMARYATTACK_SILENCED = 0x1dd, - ACT_VM_RELOAD_SILENCED = 0x1de, - ACT_VM_DRYFIRE_SILENCED = 0x1df, - ACT_VM_IDLE_SILENCED = 0x1e0, - ACT_VM_DRAW_SILENCED = 0x1e1, - ACT_VM_IDLE_EMPTY_LEFT = 0x1e2, - ACT_VM_DRYFIRE_LEFT = 0x1e3, - ACT_VM_IS_DRAW = 0x1e4, - ACT_VM_IS_HOLSTER = 0x1e5, - ACT_VM_IS_IDLE = 0x1e6, - ACT_VM_IS_PRIMARYATTACK = 0x1e7, - ACT_PLAYER_IDLE_FIRE = 0x1e8, - ACT_PLAYER_CROUCH_FIRE = 0x1e9, - ACT_PLAYER_CROUCH_WALK_FIRE = 0x1ea, - ACT_PLAYER_WALK_FIRE = 0x1eb, - ACT_PLAYER_RUN_FIRE = 0x1ec, - ACT_IDLETORUN = 0x1ed, - ACT_RUNTOIDLE = 0x1ee, - ACT_VM_DRAW_DEPLOYED = 0x1ef, - ACT_HL2MP_IDLE_MELEE = 0x1f0, - ACT_HL2MP_RUN_MELEE = 0x1f1, - ACT_HL2MP_IDLE_CROUCH_MELEE = 0x1f2, - ACT_HL2MP_WALK_CROUCH_MELEE = 0x1f3, - ACT_HL2MP_GESTURE_RANGE_ATTACK_MELEE = 0x1f4, - ACT_HL2MP_GESTURE_RELOAD_MELEE = 0x1f5, - ACT_HL2MP_JUMP_MELEE = 0x1f6, - ACT_MP_STAND_IDLE = 0x1f7, - ACT_MP_CROUCH_IDLE = 0x1f8, - ACT_MP_CROUCH_DEPLOYED_IDLE = 0x1f9, - ACT_MP_CROUCH_DEPLOYED = 0x1fa, - ACT_MP_DEPLOYED_IDLE = 0x1fb, - ACT_MP_RUN = 0x1fc, - ACT_MP_WALK = 0x1fd, - ACT_MP_AIRWALK = 0x1fe, - ACT_MP_CROUCHWALK = 0x1ff, - ACT_MP_SPRINT = 0x200, - ACT_MP_JUMP = 0x201, - ACT_MP_JUMP_START = 0x202, - ACT_MP_JUMP_FLOAT = 0x203, - ACT_MP_JUMP_LAND = 0x204, - ACT_MP_DOUBLEJUMP = 0x205, - ACT_MP_SWIM = 0x206, - ACT_MP_DEPLOYED = 0x207, - ACT_MP_SWIM_DEPLOYED = 0x208, - ACT_MP_VCD = 0x209, - ACT_MP_ATTACK_STAND_PRIMARYFIRE = 0x20a, - ACT_MP_ATTACK_STAND_PRIMARYFIRE_DEPLOYED = 0x20b, - ACT_MP_ATTACK_STAND_SECONDARYFIRE = 0x20c, - ACT_MP_ATTACK_STAND_GRENADE = 0x20d, - ACT_MP_ATTACK_CROUCH_PRIMARYFIRE = 0x20e, - ACT_MP_ATTACK_CROUCH_PRIMARYFIRE_DEPLOYED = 0x20f, - ACT_MP_ATTACK_CROUCH_SECONDARYFIRE = 0x210, - ACT_MP_ATTACK_CROUCH_GRENADE = 0x211, - ACT_MP_ATTACK_SWIM_PRIMARYFIRE = 0x212, - ACT_MP_ATTACK_SWIM_SECONDARYFIRE = 0x213, - ACT_MP_ATTACK_SWIM_GRENADE = 0x214, - ACT_MP_ATTACK_AIRWALK_PRIMARYFIRE = 0x215, - ACT_MP_ATTACK_AIRWALK_SECONDARYFIRE = 0x216, - ACT_MP_ATTACK_AIRWALK_GRENADE = 0x217, - ACT_MP_RELOAD_STAND = 0x218, - ACT_MP_RELOAD_STAND_LOOP = 0x219, - ACT_MP_RELOAD_STAND_END = 0x21a, - ACT_MP_RELOAD_CROUCH = 0x21b, - ACT_MP_RELOAD_CROUCH_LOOP = 0x21c, - ACT_MP_RELOAD_CROUCH_END = 0x21d, - ACT_MP_RELOAD_SWIM = 0x21e, - ACT_MP_RELOAD_SWIM_LOOP = 0x21f, - ACT_MP_RELOAD_SWIM_END = 0x220, - ACT_MP_RELOAD_AIRWALK = 0x221, - ACT_MP_RELOAD_AIRWALK_LOOP = 0x222, - ACT_MP_RELOAD_AIRWALK_END = 0x223, - ACT_MP_ATTACK_STAND_PREFIRE = 0x224, - ACT_MP_ATTACK_STAND_POSTFIRE = 0x225, - ACT_MP_ATTACK_STAND_STARTFIRE = 0x226, - ACT_MP_ATTACK_CROUCH_PREFIRE = 0x227, - ACT_MP_ATTACK_CROUCH_POSTFIRE = 0x228, - ACT_MP_ATTACK_SWIM_PREFIRE = 0x229, - ACT_MP_ATTACK_SWIM_POSTFIRE = 0x22a, - ACT_MP_STAND_PRIMARY = 0x22b, - ACT_MP_CROUCH_PRIMARY = 0x22c, - ACT_MP_RUN_PRIMARY = 0x22d, - ACT_MP_WALK_PRIMARY = 0x22e, - ACT_MP_AIRWALK_PRIMARY = 0x22f, - ACT_MP_CROUCHWALK_PRIMARY = 0x230, - ACT_MP_JUMP_PRIMARY = 0x231, - ACT_MP_JUMP_START_PRIMARY = 0x232, - ACT_MP_JUMP_FLOAT_PRIMARY = 0x233, - ACT_MP_JUMP_LAND_PRIMARY = 0x234, - ACT_MP_SWIM_PRIMARY = 0x235, - ACT_MP_DEPLOYED_PRIMARY = 0x236, - ACT_MP_SWIM_DEPLOYED_PRIMARY = 0x237, - ACT_MP_ATTACK_STAND_PRIMARY = 0x238, - ACT_MP_ATTACK_STAND_PRIMARY_DEPLOYED = 0x239, - ACT_MP_ATTACK_CROUCH_PRIMARY = 0x23a, - ACT_MP_ATTACK_CROUCH_PRIMARY_DEPLOYED = 0x23b, - ACT_MP_ATTACK_SWIM_PRIMARY = 0x23c, - ACT_MP_ATTACK_AIRWALK_PRIMARY = 0x23d, - ACT_MP_RELOAD_STAND_PRIMARY = 0x23e, - ACT_MP_RELOAD_STAND_PRIMARY_LOOP = 0x23f, - ACT_MP_RELOAD_STAND_PRIMARY_END = 0x240, - ACT_MP_RELOAD_CROUCH_PRIMARY = 0x241, - ACT_MP_RELOAD_CROUCH_PRIMARY_LOOP = 0x242, - ACT_MP_RELOAD_CROUCH_PRIMARY_END = 0x243, - ACT_MP_RELOAD_SWIM_PRIMARY = 0x244, - ACT_MP_RELOAD_SWIM_PRIMARY_LOOP = 0x245, - ACT_MP_RELOAD_SWIM_PRIMARY_END = 0x246, - ACT_MP_RELOAD_AIRWALK_PRIMARY = 0x247, - ACT_MP_RELOAD_AIRWALK_PRIMARY_LOOP = 0x248, - ACT_MP_RELOAD_AIRWALK_PRIMARY_END = 0x249, - ACT_MP_ATTACK_STAND_GRENADE_PRIMARY = 0x24a, - ACT_MP_ATTACK_CROUCH_GRENADE_PRIMARY = 0x24b, - ACT_MP_ATTACK_SWIM_GRENADE_PRIMARY = 0x24c, - ACT_MP_ATTACK_AIRWALK_GRENADE_PRIMARY = 0x24d, - ACT_MP_STAND_SECONDARY = 0x24e, - ACT_MP_CROUCH_SECONDARY = 0x24f, - ACT_MP_RUN_SECONDARY = 0x250, - ACT_MP_WALK_SECONDARY = 0x251, - ACT_MP_AIRWALK_SECONDARY = 0x252, - ACT_MP_CROUCHWALK_SECONDARY = 0x253, - ACT_MP_JUMP_SECONDARY = 0x254, - ACT_MP_JUMP_START_SECONDARY = 0x255, - ACT_MP_JUMP_FLOAT_SECONDARY = 0x256, - ACT_MP_JUMP_LAND_SECONDARY = 0x257, - ACT_MP_SWIM_SECONDARY = 0x258, - ACT_MP_ATTACK_STAND_SECONDARY = 0x259, - ACT_MP_ATTACK_CROUCH_SECONDARY = 0x25a, - ACT_MP_ATTACK_SWIM_SECONDARY = 0x25b, - ACT_MP_ATTACK_AIRWALK_SECONDARY = 0x25c, - ACT_MP_RELOAD_STAND_SECONDARY = 0x25d, - ACT_MP_RELOAD_STAND_SECONDARY_LOOP = 0x25e, - ACT_MP_RELOAD_STAND_SECONDARY_END = 0x25f, - ACT_MP_RELOAD_CROUCH_SECONDARY = 0x260, - ACT_MP_RELOAD_CROUCH_SECONDARY_LOOP = 0x261, - ACT_MP_RELOAD_CROUCH_SECONDARY_END = 0x262, - ACT_MP_RELOAD_SWIM_SECONDARY = 0x263, - ACT_MP_RELOAD_SWIM_SECONDARY_LOOP = 0x264, - ACT_MP_RELOAD_SWIM_SECONDARY_END = 0x265, - ACT_MP_RELOAD_AIRWALK_SECONDARY = 0x266, - ACT_MP_RELOAD_AIRWALK_SECONDARY_LOOP = 0x267, - ACT_MP_RELOAD_AIRWALK_SECONDARY_END = 0x268, - ACT_MP_ATTACK_STAND_GRENADE_SECONDARY = 0x269, - ACT_MP_ATTACK_CROUCH_GRENADE_SECONDARY = 0x26a, - ACT_MP_ATTACK_SWIM_GRENADE_SECONDARY = 0x26b, - ACT_MP_ATTACK_AIRWALK_GRENADE_SECONDARY = 0x26c, - ACT_MP_STAND_MELEE = 0x26d, - ACT_MP_CROUCH_MELEE = 0x26e, - ACT_MP_RUN_MELEE = 0x26f, - ACT_MP_WALK_MELEE = 0x270, - ACT_MP_AIRWALK_MELEE = 0x271, - ACT_MP_CROUCHWALK_MELEE = 0x272, - ACT_MP_JUMP_MELEE = 0x273, - ACT_MP_JUMP_START_MELEE = 0x274, - ACT_MP_JUMP_FLOAT_MELEE = 0x275, - ACT_MP_JUMP_LAND_MELEE = 0x276, - ACT_MP_SWIM_MELEE = 0x277, - ACT_MP_ATTACK_STAND_MELEE = 0x278, - ACT_MP_ATTACK_STAND_MELEE_SECONDARY = 0x279, - ACT_MP_ATTACK_CROUCH_MELEE = 0x27a, - ACT_MP_ATTACK_CROUCH_MELEE_SECONDARY = 0x27b, - ACT_MP_ATTACK_SWIM_MELEE = 0x27c, - ACT_MP_ATTACK_AIRWALK_MELEE = 0x27d, - ACT_MP_ATTACK_STAND_GRENADE_MELEE = 0x27e, - ACT_MP_ATTACK_CROUCH_GRENADE_MELEE = 0x27f, - ACT_MP_ATTACK_SWIM_GRENADE_MELEE = 0x280, - ACT_MP_ATTACK_AIRWALK_GRENADE_MELEE = 0x281, - ACT_MP_STAND_ITEM1 = 0x282, - ACT_MP_CROUCH_ITEM1 = 0x283, - ACT_MP_RUN_ITEM1 = 0x284, - ACT_MP_WALK_ITEM1 = 0x285, - ACT_MP_AIRWALK_ITEM1 = 0x286, - ACT_MP_CROUCHWALK_ITEM1 = 0x287, - ACT_MP_JUMP_ITEM1 = 0x288, - ACT_MP_JUMP_START_ITEM1 = 0x289, - ACT_MP_JUMP_FLOAT_ITEM1 = 0x28a, - ACT_MP_JUMP_LAND_ITEM1 = 0x28b, - ACT_MP_SWIM_ITEM1 = 0x28c, - ACT_MP_ATTACK_STAND_ITEM1 = 0x28d, - ACT_MP_ATTACK_STAND_ITEM1_SECONDARY = 0x28e, - ACT_MP_ATTACK_CROUCH_ITEM1 = 0x28f, - ACT_MP_ATTACK_CROUCH_ITEM1_SECONDARY = 0x290, - ACT_MP_ATTACK_SWIM_ITEM1 = 0x291, - ACT_MP_ATTACK_AIRWALK_ITEM1 = 0x292, - ACT_MP_STAND_ITEM2 = 0x293, - ACT_MP_CROUCH_ITEM2 = 0x294, - ACT_MP_RUN_ITEM2 = 0x295, - ACT_MP_WALK_ITEM2 = 0x296, - ACT_MP_AIRWALK_ITEM2 = 0x297, - ACT_MP_CROUCHWALK_ITEM2 = 0x298, - ACT_MP_JUMP_ITEM2 = 0x299, - ACT_MP_JUMP_START_ITEM2 = 0x29a, - ACT_MP_JUMP_FLOAT_ITEM2 = 0x29b, - ACT_MP_JUMP_LAND_ITEM2 = 0x29c, - ACT_MP_SWIM_ITEM2 = 0x29d, - ACT_MP_ATTACK_STAND_ITEM2 = 0x29e, - ACT_MP_ATTACK_STAND_ITEM2_SECONDARY = 0x29f, - ACT_MP_ATTACK_CROUCH_ITEM2 = 0x2a0, - ACT_MP_ATTACK_CROUCH_ITEM2_SECONDARY = 0x2a1, - ACT_MP_ATTACK_SWIM_ITEM2 = 0x2a2, - ACT_MP_ATTACK_AIRWALK_ITEM2 = 0x2a3, - ACT_MP_GESTURE_FLINCH = 0x2a4, - ACT_MP_GESTURE_FLINCH_PRIMARY = 0x2a5, - ACT_MP_GESTURE_FLINCH_SECONDARY = 0x2a6, - ACT_MP_GESTURE_FLINCH_MELEE = 0x2a7, - ACT_MP_GESTURE_FLINCH_ITEM1 = 0x2a8, - ACT_MP_GESTURE_FLINCH_ITEM2 = 0x2a9, - ACT_MP_GESTURE_FLINCH_HEAD = 0x2aa, - ACT_MP_GESTURE_FLINCH_CHEST = 0x2ab, - ACT_MP_GESTURE_FLINCH_STOMACH = 0x2ac, - ACT_MP_GESTURE_FLINCH_LEFTARM = 0x2ad, - ACT_MP_GESTURE_FLINCH_RIGHTARM = 0x2ae, - ACT_MP_GESTURE_FLINCH_LEFTLEG = 0x2af, - ACT_MP_GESTURE_FLINCH_RIGHTLEG = 0x2b0, - ACT_MP_GRENADE1_DRAW = 0x2b1, - ACT_MP_GRENADE1_IDLE = 0x2b2, - ACT_MP_GRENADE1_ATTACK = 0x2b3, - ACT_MP_GRENADE2_DRAW = 0x2b4, - ACT_MP_GRENADE2_IDLE = 0x2b5, - ACT_MP_GRENADE2_ATTACK = 0x2b6, - ACT_MP_PRIMARY_GRENADE1_DRAW = 0x2b7, - ACT_MP_PRIMARY_GRENADE1_IDLE = 0x2b8, - ACT_MP_PRIMARY_GRENADE1_ATTACK = 0x2b9, - ACT_MP_PRIMARY_GRENADE2_DRAW = 0x2ba, - ACT_MP_PRIMARY_GRENADE2_IDLE = 0x2bb, - ACT_MP_PRIMARY_GRENADE2_ATTACK = 0x2bc, - ACT_MP_SECONDARY_GRENADE1_DRAW = 0x2bd, - ACT_MP_SECONDARY_GRENADE1_IDLE = 0x2be, - ACT_MP_SECONDARY_GRENADE1_ATTACK = 0x2bf, - ACT_MP_SECONDARY_GRENADE2_DRAW = 0x2c0, - ACT_MP_SECONDARY_GRENADE2_IDLE = 0x2c1, - ACT_MP_SECONDARY_GRENADE2_ATTACK = 0x2c2, - ACT_MP_MELEE_GRENADE1_DRAW = 0x2c3, - ACT_MP_MELEE_GRENADE1_IDLE = 0x2c4, - ACT_MP_MELEE_GRENADE1_ATTACK = 0x2c5, - ACT_MP_MELEE_GRENADE2_DRAW = 0x2c6, - ACT_MP_MELEE_GRENADE2_IDLE = 0x2c7, - ACT_MP_MELEE_GRENADE2_ATTACK = 0x2c8, - ACT_MP_ITEM1_GRENADE1_DRAW = 0x2c9, - ACT_MP_ITEM1_GRENADE1_IDLE = 0x2ca, - ACT_MP_ITEM1_GRENADE1_ATTACK = 0x2cb, - ACT_MP_ITEM1_GRENADE2_DRAW = 0x2cc, - ACT_MP_ITEM1_GRENADE2_IDLE = 0x2cd, - ACT_MP_ITEM1_GRENADE2_ATTACK = 0x2ce, - ACT_MP_ITEM2_GRENADE1_DRAW = 0x2cf, - ACT_MP_ITEM2_GRENADE1_IDLE = 0x2d0, - ACT_MP_ITEM2_GRENADE1_ATTACK = 0x2d1, - ACT_MP_ITEM2_GRENADE2_DRAW = 0x2d2, - ACT_MP_ITEM2_GRENADE2_IDLE = 0x2d3, - ACT_MP_ITEM2_GRENADE2_ATTACK = 0x2d4, - ACT_MP_STAND_BUILDING = 0x2d5, - ACT_MP_CROUCH_BUILDING = 0x2d6, - ACT_MP_RUN_BUILDING = 0x2d7, - ACT_MP_WALK_BUILDING = 0x2d8, - ACT_MP_AIRWALK_BUILDING = 0x2d9, - ACT_MP_CROUCHWALK_BUILDING = 0x2da, - ACT_MP_JUMP_BUILDING = 0x2db, - ACT_MP_JUMP_START_BUILDING = 0x2dc, - ACT_MP_JUMP_FLOAT_BUILDING = 0x2dd, - ACT_MP_JUMP_LAND_BUILDING = 0x2de, - ACT_MP_SWIM_BUILDING = 0x2df, - ACT_MP_ATTACK_STAND_BUILDING = 0x2e0, - ACT_MP_ATTACK_CROUCH_BUILDING = 0x2e1, - ACT_MP_ATTACK_SWIM_BUILDING = 0x2e2, - ACT_MP_ATTACK_AIRWALK_BUILDING = 0x2e3, - ACT_MP_ATTACK_STAND_GRENADE_BUILDING = 0x2e4, - ACT_MP_ATTACK_CROUCH_GRENADE_BUILDING = 0x2e5, - ACT_MP_ATTACK_SWIM_GRENADE_BUILDING = 0x2e6, - ACT_MP_ATTACK_AIRWALK_GRENADE_BUILDING = 0x2e7, - ACT_MP_STAND_PDA = 0x2e8, - ACT_MP_CROUCH_PDA = 0x2e9, - ACT_MP_RUN_PDA = 0x2ea, - ACT_MP_WALK_PDA = 0x2eb, - ACT_MP_AIRWALK_PDA = 0x2ec, - ACT_MP_CROUCHWALK_PDA = 0x2ed, - ACT_MP_JUMP_PDA = 0x2ee, - ACT_MP_JUMP_START_PDA = 0x2ef, - ACT_MP_JUMP_FLOAT_PDA = 0x2f0, - ACT_MP_JUMP_LAND_PDA = 0x2f1, - ACT_MP_SWIM_PDA = 0x2f2, - ACT_MP_ATTACK_STAND_PDA = 0x2f3, - ACT_MP_ATTACK_SWIM_PDA = 0x2f4, - ACT_MP_GESTURE_VC_HANDMOUTH = 0x2f5, - ACT_MP_GESTURE_VC_FINGERPOINT = 0x2f6, - ACT_MP_GESTURE_VC_FISTPUMP = 0x2f7, - ACT_MP_GESTURE_VC_THUMBSUP = 0x2f8, - ACT_MP_GESTURE_VC_NODYES = 0x2f9, - ACT_MP_GESTURE_VC_NODNO = 0x2fa, - ACT_MP_GESTURE_VC_HANDMOUTH_PRIMARY = 0x2fb, - ACT_MP_GESTURE_VC_FINGERPOINT_PRIMARY = 0x2fc, - ACT_MP_GESTURE_VC_FISTPUMP_PRIMARY = 0x2fd, - ACT_MP_GESTURE_VC_THUMBSUP_PRIMARY = 0x2fe, - ACT_MP_GESTURE_VC_NODYES_PRIMARY = 0x2ff, - ACT_MP_GESTURE_VC_NODNO_PRIMARY = 0x300, - ACT_MP_GESTURE_VC_HANDMOUTH_SECONDARY = 0x301, - ACT_MP_GESTURE_VC_FINGERPOINT_SECONDARY = 0x302, - ACT_MP_GESTURE_VC_FISTPUMP_SECONDARY = 0x303, - ACT_MP_GESTURE_VC_THUMBSUP_SECONDARY = 0x304, - ACT_MP_GESTURE_VC_NODYES_SECONDARY = 0x305, - ACT_MP_GESTURE_VC_NODNO_SECONDARY = 0x306, - ACT_MP_GESTURE_VC_HANDMOUTH_MELEE = 0x307, - ACT_MP_GESTURE_VC_FINGERPOINT_MELEE = 0x308, - ACT_MP_GESTURE_VC_FISTPUMP_MELEE = 0x309, - ACT_MP_GESTURE_VC_THUMBSUP_MELEE = 0x30a, - ACT_MP_GESTURE_VC_NODYES_MELEE = 0x30b, - ACT_MP_GESTURE_VC_NODNO_MELEE = 0x30c, - ACT_MP_GESTURE_VC_HANDMOUTH_ITEM1 = 0x30d, - ACT_MP_GESTURE_VC_FINGERPOINT_ITEM1 = 0x30e, - ACT_MP_GESTURE_VC_FISTPUMP_ITEM1 = 0x30f, - ACT_MP_GESTURE_VC_THUMBSUP_ITEM1 = 0x310, - ACT_MP_GESTURE_VC_NODYES_ITEM1 = 0x311, - ACT_MP_GESTURE_VC_NODNO_ITEM1 = 0x312, - ACT_MP_GESTURE_VC_HANDMOUTH_ITEM2 = 0x313, - ACT_MP_GESTURE_VC_FINGERPOINT_ITEM2 = 0x314, - ACT_MP_GESTURE_VC_FISTPUMP_ITEM2 = 0x315, - ACT_MP_GESTURE_VC_THUMBSUP_ITEM2 = 0x316, - ACT_MP_GESTURE_VC_NODYES_ITEM2 = 0x317, - ACT_MP_GESTURE_VC_NODNO_ITEM2 = 0x318, - ACT_MP_GESTURE_VC_HANDMOUTH_BUILDING = 0x319, - ACT_MP_GESTURE_VC_FINGERPOINT_BUILDING = 0x31a, - ACT_MP_GESTURE_VC_FISTPUMP_BUILDING = 0x31b, - ACT_MP_GESTURE_VC_THUMBSUP_BUILDING = 0x31c, - ACT_MP_GESTURE_VC_NODYES_BUILDING = 0x31d, - ACT_MP_GESTURE_VC_NODNO_BUILDING = 0x31e, - ACT_MP_GESTURE_VC_HANDMOUTH_PDA = 0x31f, - ACT_MP_GESTURE_VC_FINGERPOINT_PDA = 0x320, - ACT_MP_GESTURE_VC_FISTPUMP_PDA = 0x321, - ACT_MP_GESTURE_VC_THUMBSUP_PDA = 0x322, - ACT_MP_GESTURE_VC_NODYES_PDA = 0x323, - ACT_MP_GESTURE_VC_NODNO_PDA = 0x324, - ACT_VM_UNUSABLE = 0x325, - ACT_VM_UNUSABLE_TO_USABLE = 0x326, - ACT_VM_USABLE_TO_UNUSABLE = 0x327, - ACT_PRIMARY_VM_DRAW = 0x328, - ACT_PRIMARY_VM_HOLSTER = 0x329, - ACT_PRIMARY_VM_IDLE = 0x32a, - ACT_PRIMARY_VM_PULLBACK = 0x32b, - ACT_PRIMARY_VM_PRIMARYATTACK = 0x32c, - ACT_PRIMARY_VM_SECONDARYATTACK = 0x32d, - ACT_PRIMARY_VM_RELOAD = 0x32e, - ACT_PRIMARY_VM_DRYFIRE = 0x32f, - ACT_PRIMARY_VM_IDLE_TO_LOWERED = 0x330, - ACT_PRIMARY_VM_IDLE_LOWERED = 0x331, - ACT_PRIMARY_VM_LOWERED_TO_IDLE = 0x332, - ACT_SECONDARY_VM_DRAW = 0x333, - ACT_SECONDARY_VM_HOLSTER = 0x334, - ACT_SECONDARY_VM_IDLE = 0x335, - ACT_SECONDARY_VM_PULLBACK = 0x336, - ACT_SECONDARY_VM_PRIMARYATTACK = 0x337, - ACT_SECONDARY_VM_SECONDARYATTACK = 0x338, - ACT_SECONDARY_VM_RELOAD = 0x339, - ACT_SECONDARY_VM_DRYFIRE = 0x33a, - ACT_SECONDARY_VM_IDLE_TO_LOWERED = 0x33b, - ACT_SECONDARY_VM_IDLE_LOWERED = 0x33c, - ACT_SECONDARY_VM_LOWERED_TO_IDLE = 0x33d, - ACT_MELEE_VM_DRAW = 0x33e, - ACT_MELEE_VM_HOLSTER = 0x33f, - ACT_MELEE_VM_IDLE = 0x340, - ACT_MELEE_VM_PULLBACK = 0x341, - ACT_MELEE_VM_PRIMARYATTACK = 0x342, - ACT_MELEE_VM_SECONDARYATTACK = 0x343, - ACT_MELEE_VM_RELOAD = 0x344, - ACT_MELEE_VM_DRYFIRE = 0x345, - ACT_MELEE_VM_IDLE_TO_LOWERED = 0x346, - ACT_MELEE_VM_IDLE_LOWERED = 0x347, - ACT_MELEE_VM_LOWERED_TO_IDLE = 0x348, - ACT_PDA_VM_DRAW = 0x349, - ACT_PDA_VM_HOLSTER = 0x34a, - ACT_PDA_VM_IDLE = 0x34b, - ACT_PDA_VM_PULLBACK = 0x34c, - ACT_PDA_VM_PRIMARYATTACK = 0x34d, - ACT_PDA_VM_SECONDARYATTACK = 0x34e, - ACT_PDA_VM_RELOAD = 0x34f, - ACT_PDA_VM_DRYFIRE = 0x350, - ACT_PDA_VM_IDLE_TO_LOWERED = 0x351, - ACT_PDA_VM_IDLE_LOWERED = 0x352, - ACT_PDA_VM_LOWERED_TO_IDLE = 0x353, - ACT_ITEM1_VM_DRAW = 0x354, - ACT_ITEM1_VM_HOLSTER = 0x355, - ACT_ITEM1_VM_IDLE = 0x356, - ACT_ITEM1_VM_PULLBACK = 0x357, - ACT_ITEM1_VM_PRIMARYATTACK = 0x358, - ACT_ITEM1_VM_SECONDARYATTACK = 0x359, - ACT_ITEM1_VM_RELOAD = 0x35a, - ACT_ITEM1_VM_DRYFIRE = 0x35b, - ACT_ITEM1_VM_IDLE_TO_LOWERED = 0x35c, - ACT_ITEM1_VM_IDLE_LOWERED = 0x35d, - ACT_ITEM1_VM_LOWERED_TO_IDLE = 0x35e, - ACT_ITEM2_VM_DRAW = 0x35f, - ACT_ITEM2_VM_HOLSTER = 0x360, - ACT_ITEM2_VM_IDLE = 0x361, - ACT_ITEM2_VM_PULLBACK = 0x362, - ACT_ITEM2_VM_PRIMARYATTACK = 0x363, - ACT_ITEM2_VM_SECONDARYATTACK = 0x364, - ACT_ITEM2_VM_RELOAD = 0x365, - ACT_ITEM2_VM_DRYFIRE = 0x366, - ACT_ITEM2_VM_IDLE_TO_LOWERED = 0x367, - ACT_ITEM2_VM_IDLE_LOWERED = 0x368, - ACT_ITEM2_VM_LOWERED_TO_IDLE = 0x369, - ACT_RELOAD_SUCCEED = 0x36a, - ACT_RELOAD_FAIL = 0x36b, - ACT_WALK_AIM_AUTOGUN = 0x36c, - ACT_RUN_AIM_AUTOGUN = 0x36d, - ACT_IDLE_AUTOGUN = 0x36e, - ACT_IDLE_AIM_AUTOGUN = 0x36f, - ACT_RELOAD_AUTOGUN = 0x370, - ACT_CROUCH_IDLE_AUTOGUN = 0x371, - ACT_RANGE_ATTACK_AUTOGUN = 0x372, - ACT_JUMP_AUTOGUN = 0x373, - ACT_IDLE_AIM_PISTOL = 0x374, - ACT_WALK_AIM_DUAL = 0x375, - ACT_RUN_AIM_DUAL = 0x376, - ACT_IDLE_DUAL = 0x377, - ACT_IDLE_AIM_DUAL = 0x378, - ACT_RELOAD_DUAL = 0x379, - ACT_CROUCH_IDLE_DUAL = 0x37a, - ACT_RANGE_ATTACK_DUAL = 0x37b, - ACT_JUMP_DUAL = 0x37c, - ACT_IDLE_AIM_SHOTGUN = 0x37d, - ACT_CROUCH_IDLE_SHOTGUN = 0x37e, - ACT_IDLE_AIM_RIFLE = 0x37f, - ACT_CROUCH_IDLE_RIFLE = 0x380, - ACT_RANGE_ATTACK_RIFLE = 0x381, - ACT_SLEEP = 0x382, - ACT_WAKE = 0x383, - ACT_FLICK_LEFT = 0x384, - ACT_FLICK_LEFT_MIDDLE = 0x385, - ACT_FLICK_RIGHT_MIDDLE = 0x386, - ACT_FLICK_RIGHT = 0x387, - ACT_SPINAROUND = 0x388, - ACT_PREP_TO_FIRE = 0x389, - ACT_FIRE = 0x38a, - ACT_FIRE_RECOVER = 0x38b, - ACT_SPRAY = 0x38c, - ACT_PREP_EXPLODE = 0x38d, - ACT_EXPLODE = 0x38e, - ACT_SCRIPT_CUSTOM_0 = 0x38f, - ACT_SCRIPT_CUSTOM_1 = 0x390, - ACT_SCRIPT_CUSTOM_2 = 0x391, - ACT_SCRIPT_CUSTOM_3 = 0x392, - ACT_SCRIPT_CUSTOM_4 = 0x393, - ACT_SCRIPT_CUSTOM_5 = 0x394, - ACT_SCRIPT_CUSTOM_6 = 0x395, - ACT_SCRIPT_CUSTOM_7 = 0x396, - ACT_SCRIPT_CUSTOM_8 = 0x397, - ACT_SCRIPT_CUSTOM_9 = 0x398, - ACT_SCRIPT_CUSTOM_10 = 0x399, - ACT_SCRIPT_CUSTOM_11 = 0x39a, - ACT_SCRIPT_CUSTOM_12 = 0x39b, - ACT_SCRIPT_CUSTOM_13 = 0x39c, - ACT_SCRIPT_CUSTOM_14 = 0x39d, - ACT_SCRIPT_CUSTOM_15 = 0x39e, - ACT_SCRIPT_CUSTOM_16 = 0x39f, - ACT_SCRIPT_CUSTOM_17 = 0x3a0, - ACT_SCRIPT_CUSTOM_18 = 0x3a1, - ACT_SCRIPT_CUSTOM_19 = 0x3a2, - ACT_SCRIPT_CUSTOM_20 = 0x3a3, - ACT_SCRIPT_CUSTOM_21 = 0x3a4, - ACT_SCRIPT_CUSTOM_22 = 0x3a5, - ACT_SCRIPT_CUSTOM_23 = 0x3a6, - ACT_SCRIPT_CUSTOM_24 = 0x3a7, - ACT_SCRIPT_CUSTOM_25 = 0x3a8, - ACT_SCRIPT_CUSTOM_26 = 0x3a9, - ACT_SCRIPT_CUSTOM_27 = 0x3aa, - ACT_SCRIPT_CUSTOM_28 = 0x3ab, - ACT_SCRIPT_CUSTOM_29 = 0x3ac, - ACT_SCRIPT_CUSTOM_30 = 0x3ad, - ACT_SCRIPT_CUSTOM_31 = 0x3ae, - ACT_VR_PISTOL_LAST_SHOT = 0x3af, - ACT_VR_PISTOL_SLIDE_RELEASE = 0x3b0, - ACT_VR_PISTOL_CLIP_OUT_CHAMBERED = 0x3b1, - ACT_VR_PISTOL_CLIP_OUT_SLIDE_BACK = 0x3b2, - ACT_VR_PISTOL_CLIP_IN_CHAMBERED = 0x3b3, - ACT_VR_PISTOL_CLIP_IN_SLIDE_BACK = 0x3b4, - ACT_VR_PISTOL_IDLE_SLIDE_BACK = 0x3b5, - ACT_VR_PISTOL_IDLE_SLIDE_BACK_CLIP_READY = 0x3b6, - ACT_RAGDOLL_RECOVERY_FRONT = 0x3b7, - ACT_RAGDOLL_RECOVERY_BACK = 0x3b8, - ACT_RAGDOLL_RECOVERY_LEFT = 0x3b9, - ACT_RAGDOLL_RECOVERY_RIGHT = 0x3ba, - ACT_GRABBITYGLOVES_GRAB = 0x3bb, - ACT_GRABBITYGLOVES_RELEASE = 0x3bc, - ACT_GRABBITYGLOVES_GRAB_IDLE = 0x3bd, - ACT_GRABBITYGLOVES_ACTIVE = 0x3be, - ACT_GRABBITYGLOVES_ACTIVE_IDLE = 0x3bf, - ACT_GRABBITYGLOVES_DEACTIVATE = 0x3c0, - ACT_GRABBITYGLOVES_PULL = 0x3c1, - ACT_HEADCRAB_SMOKE_BOMB = 0x3c2, - ACT_HEADCRAB_SPIT = 0x3c3, - ACT_ZOMBIE_TRIP = 0x3c4, - ACT_ZOMBIE_LUNGE = 0x3c5, - ACT_NEUTRAL_REF_POSE = 0x3c6, - ACT_ANTLION_SCUTTLE_FORWARD = 0x3c7, - ACT_ANTLION_SCUTTLE_BACK = 0x3c8, - ACT_ANTLION_SCUTTLE_LEFT = 0x3c9, - ACT_ANTLION_SCUTTLE_RIGHT = 0x3ca, - ACT_VR_PISTOL_EMPTY_CLIP_IN_SLIDE_BACK = 0x3cb, - ACT_VR_SHOTGUN_IDLE = 0x3cc, - ACT_VR_SHOTGUN_OPEN_CHAMBER = 0x3cd, - ACT_VR_SHOTGUN_RELOAD_1 = 0x3ce, - ACT_VR_SHOTGUN_RELOAD_2 = 0x3cf, - ACT_VR_SHOTGUN_RELOAD_3 = 0x3d0, - ACT_VR_SHOTGUN_CLOSE_CHAMBER = 0x3d1, - ACT_VR_SHOTGUN_TRIGGER_SQUEEZE = 0x3d2, - ACT_VR_SHOTGUN_SHOOT = 0x3d3, - ACT_VR_SHOTGUN_SLIDE_BACK = 0x3d4, - ACT_VR_SHOTGUN_SLIDE_FORWARD = 0x3d5, - ACT_VR_PISTOL_LONG_CLIP_IN_CHAMBERED = 0x3d6, - ACT_VR_PISTOL_LONG_CLIP_IN_SLIDE_BACK = 0x3d7, - ACT_VR_PISTOL_BURST_TOGGLE = 0x3d8, - ACT_VR_PISTOL_LOW_KICK = 0x3d9, - ACT_VR_PISTOL_BURST_ATTACK = 0x3da, - ACT_VR_SHOTGUN_GRENADE_TWIST = 0x3db, - ACT_DIE_STAND = 0x3dc, - ACT_DIE_STAND_HEADSHOT = 0x3dd, - ACT_DIE_CROUCH = 0x3de, - ACT_DIE_CROUCH_HEADSHOT = 0x3df, - ACT_CSGO_NULL = 0x3e0, - ACT_CSGO_DEFUSE = 0x3e1, - ACT_CSGO_DEFUSE_WITH_KIT = 0x3e2, - ACT_CSGO_FLASHBANG_REACTION = 0x3e3, - ACT_CSGO_FIRE_PRIMARY = 0x3e4, - ACT_CSGO_FIRE_PRIMARY_OPT_1 = 0x3e5, - ACT_CSGO_FIRE_PRIMARY_OPT_2 = 0x3e6, - ACT_CSGO_FIRE_SECONDARY = 0x3e7, - ACT_CSGO_FIRE_SECONDARY_OPT_1 = 0x3e8, - ACT_CSGO_FIRE_SECONDARY_OPT_2 = 0x3e9, - ACT_CSGO_RELOAD = 0x3ea, - ACT_CSGO_RELOAD_START = 0x3eb, - ACT_CSGO_RELOAD_LOOP = 0x3ec, - ACT_CSGO_RELOAD_END = 0x3ed, - ACT_CSGO_OPERATE = 0x3ee, - ACT_CSGO_DEPLOY = 0x3ef, - ACT_CSGO_CATCH = 0x3f0, - ACT_CSGO_SILENCER_DETACH = 0x3f1, - ACT_CSGO_SILENCER_ATTACH = 0x3f2, - ACT_CSGO_TWITCH = 0x3f3, - ACT_CSGO_TWITCH_BUYZONE = 0x3f4, - ACT_CSGO_PLANT_BOMB = 0x3f5, - ACT_CSGO_IDLE_TURN_BALANCEADJUST = 0x3f6, - ACT_CSGO_IDLE_ADJUST_STOPPEDMOVING = 0x3f7, - ACT_CSGO_ALIVE_LOOP = 0x3f8, - ACT_CSGO_FLINCH = 0x3f9, - ACT_CSGO_FLINCH_HEAD = 0x3fa, - ACT_CSGO_FLINCH_MOLOTOV = 0x3fb, - ACT_CSGO_JUMP = 0x3fc, - ACT_CSGO_FALL = 0x3fd, - ACT_CSGO_CLIMB_LADDER = 0x3fe, - ACT_CSGO_LAND_LIGHT = 0x3ff, - ACT_CSGO_LAND_HEAVY = 0x400, - ACT_CSGO_EXIT_LADDER_TOP = 0x401, - ACT_CSGO_EXIT_LADDER_BOTTOM = 0x402, - ACT_CSGO_PARACHUTE = 0x403, - ACT_CSGO_TAUNT = 0x404, + WEAPON_SOUND_SECONDARY_EMPTY = 0x1, + WEAPON_SOUND_SINGLE = 0x2, + WEAPON_SOUND_DOUBLE = 0x3, + WEAPON_SOUND_RELOAD = 0x4, + WEAPON_SOUND_MELEE_MISS = 0x5, + WEAPON_SOUND_MELEE_HIT = 0x6, + WEAPON_SOUND_MELEE_HIT_WORLD = 0x7, + WEAPON_SOUND_MELEE_HIT_PLAYER = 0x8, + WEAPON_SOUND_SPECIAL1 = 0x9, + WEAPON_SOUND_SPECIAL2 = 0xa, + WEAPON_SOUND_SPECIAL3 = 0xb, + WEAPON_SOUND_NEARLYEMPTY = 0xc, + WEAPON_SOUND_IMPACT1 = 0xd, + WEAPON_SOUND_REFLECT = 0xe, + WEAPON_SOUND_SINGLE_ACCURATE = 0xf, + WEAPON_SOUND_ZOOM_IN = 0x10, + WEAPON_SOUND_ZOOM_OUT = 0x11, + WEAPON_SOUND_MOUSE_PRESSED = 0x12, + WEAPON_SOUND_DROP = 0x13, + WEAPON_SOUND_RADIO_USE = 0x14, + WEAPON_SOUND_NUM_TYPES = 0x15, }; // Alignment: 4 @@ -1443,7 +421,7 @@ enum class InputBitMask_t : uint64_t IN_USEORRELOAD = 0x100000000, IN_SCORE = 0x200000000, IN_ZOOM = 0x400000000, - IN_JUMP_THROW_RELEASE = 0x800000000, + IN_LOOK_AT_WEAPON = 0x800000000, }; // Alignment: 4 @@ -1845,6 +823,15 @@ enum class TRAIN_CODE : uint32_t TRAIN_FOLLOWING = 0x2, }; +// Alignment: 4 +// Size: 0x3 +enum class SoundEventStartType_t : uint32_t +{ + SOUNDEVENT_START_PLAYER = 0x0, + SOUNDEVENT_START_WORLD = 0x1, + SOUNDEVENT_START_ENTITY = 0x2, +}; + // Alignment: 4 // Size: 0x8 enum class TOGGLE_STATE : uint32_t @@ -2114,6 +1101,16 @@ enum class PlayerConnectedState : uint32_t PlayerReserved = 0x5, }; +// Alignment: 4 +// Size: 0x4 +enum class WeaponAttackType_t : uint32_t +{ + WEAPON_ATTACK_INVALID = 0xffffffffffffffff, + WEAPON_PRIMARY_ATTACK = 0x0, + WEAPON_SECONDARY_ATTACK = 0x1, + WEAPON_ATTACK_COUNT = 0x2, +}; + // Alignment: 4 // Size: 0x23 enum class vote_create_failed_t : uint32_t @@ -2313,6 +1310,15 @@ enum class ModifyDamageReturn_t : uint32_t ABORT_DO_NOT_APPLY_DAMAGE = 0x1, }; +// Alignment: 1 +// Size: 0x3 +enum class BeginDeathLifeStateTransition_t : uint8_t +{ + NO_CHANGE_IN_LIFESTATE = 0x0, + TRANSITION_TO_LIFESTATE_DYING = 0x1, + TRANSITION_TO_LIFESTATE_DEAD = 0x2, +}; + // Alignment: 4 // Size: 0x3 enum class WorldTextPanelHorizontalAlign_t : uint32_t @@ -2778,6 +1784,7 @@ struct CBaseFlex; struct CResponseCriteriaSet; struct CSoundEnvelope; struct CCopyRecipientFilter; +struct CPulse_OutflowConnection; struct CBodyComponent; struct CNetworkTransmitComponent; struct CEntityIOOutput; @@ -2802,6 +1809,7 @@ struct CCSGameRules; struct CSurvivalGameRules; struct CRetakeGameRules; struct CBasePlayerWeapon; +struct WeaponPurchaseTracker_t; struct CSMatchStats_t; struct CBasePlayerController; struct CVoteController; @@ -2809,14 +1817,12 @@ struct CCSPlayerPawnBase; struct CPointCamera; struct CNetworkedSequenceOperation; struct CAnimGraphNetworkedVariables; -struct AnimationUpdateListHandle_t; struct CRenderComponent; struct CHitboxComponent; struct CGlowProperty; struct CNetworkViewOffsetVector; struct CEnvWindShared; struct CPhysicsShake; -struct hudtextparms_t; struct CPathKeyFrame; struct CConstantForceController; struct CMotorController; @@ -2825,9 +1831,9 @@ struct constraint_hingeparams_t; struct dynpitchvol_t; struct locksound_t; struct CPathTrack; -struct CBuoyancyHelper; struct ragdoll_t; struct CAttributeList; +struct CBuoyancyHelper; struct CCSPlayerController_InGameMoneyServices; struct CCSPlayerController_InventoryServices; struct CCSPlayerController_ActionTrackingServices; @@ -2838,8 +1844,10 @@ struct CFiringModeInt; struct Extent; struct CBasePlayerPawn; struct CLightComponent; -struct PhysicsRagdollPose_t; struct IChoreoServices; +struct AnimationUpdateListHandle_t; +struct PhysicsRagdollPose_t; +struct hudtextparms_t; struct CFuncTrackTrain; struct CSprite; struct shard_model_desc_t; @@ -2898,18 +1906,14 @@ public: // Size: 0x70 class CNavVolume { -private: - [[maybe_unused]] uint8_t __pad0000[0x70]; // 0x0 public: - // No members available + uint8_t __pad0000[0x70]; // Autoaligned }; // Alignment: 1 // Size: 0x98 class CNavVolumeVector : public CNavVolume { -private: - [[maybe_unused]] uint8_t __pad0070[0x8]; // 0x70 public: bool m_bHasBeenPreFiltered; // 0x78 }; @@ -2939,12 +1943,64 @@ public: float m_flRadiusInner; // 0x80 }; +// Alignment: 11 +// Size: 0x2c +class CNavHullVData +{ +public: + // MPropertyFriendlyName "Enabled" + // MPropertyDescription "Is this agent enabled for generation? ( will result in 0 nav areas for this agent if not )." + bool m_bAgentEnabled; // 0x0 + // MPropertyFriendlyName "Radius" + // MPropertyDescription "Radius of navigating agent capsule." + float m_agentRadius; // 0x4 + // MPropertyFriendlyName "Height" + // MPropertyDescription "Height of navigating agent capsule." + float m_agentHeight; // 0x8 + // MPropertyFriendlyName "Enable Short Height" + // MPropertyDescription "Enable shorter navigating agent capsules ( e.g. crouch ) in addition to regular height capsules." + bool m_agentShortHeightEnabled; // 0xc +private: + [[maybe_unused]] uint8_t __pad000d[0x3]; // 0xd +public: + // MPropertyFriendlyName "Short height" + // MPropertyDescription "Short Height of navigating agent capsules if enabled." + float m_agentShortHeight; // 0x10 + // MPropertyFriendlyName "Max Climb" + // MPropertyDescription "Max vertical offset that the agent simply ignores and walks over." + float m_agentMaxClimb; // 0x14 + // MPropertyFriendlyName "Max Slope" + // MPropertyDescription "Max ground slope to be considered walkable." + int32_t m_agentMaxSlope; // 0x18 + // MPropertyFriendlyName "Max Jump Down Distance" + // MPropertyDescription "Max vertical offset at which to create a jump connection ( possibly one-way )." + float m_agentMaxJumpDownDist; // 0x1c + // MPropertyFriendlyName "Max Horizontal Jump Distance" + // MPropertyDescription "Max horizontal offset over which to create a jump connection ( actually a parameter into the true threshold function )." + float m_agentMaxJumpHorizDistBase; // 0x20 + // MPropertyFriendlyName "Max Jump Up Distance" + // MPropertyDescription "Max vertical offset at which to make a jump connection two-way." + float m_agentMaxJumpUpDist; // 0x24 + // MPropertyFriendlyName "Border Erosion" + // MPropertyDescription "Border erosion in voxel units ( -1 to use default value based on agent radius )." + int32_t m_agentBorderErosion; // 0x28 +}; + +// Alignment: 1 +// Size: 0x18 +class CNavHullPresetVData +{ +public: + // MPropertyFriendlyName "Nav Hulls" + // MPropertyDescription "List of nav hulls belonging to this preset." + // MPropertyAttributeEditor "VDataChoice( scripts/nav_hulls.vdata )" + CUtlVector< CUtlString > m_vecNavHulls; // 0x0 +}; + // Alignment: 11 // Size: 0x78 class CEntityIdentity { -private: - [[maybe_unused]] uint8_t __pad0000[0x14]; // 0x0 public: // MNetworkEnable // MNetworkChangeCallback "entityIdentityNameChanged" @@ -2995,12 +2051,8 @@ public: // Size: 0x38 class CScriptComponent : public CEntityComponent { -private: - [[maybe_unused]] uint8_t __pad0008[0x28]; // 0x8 public: CUtlSymbolLarge m_scriptClassName; // 0x30 - - // Static fields: static EntComponentInfo_t &Get_s_EntComponentInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CScriptComponent")->m_static_fields[0]->m_instance);}; static int32_t &Get_entity_component_error_class_decl_says_contained_but_impl_is_referenced(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CScriptComponent")->m_static_fields[1]->m_instance);}; }; @@ -3018,8 +2070,6 @@ public: // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex CNetworkVarChainer __m_pChainEntity; // 0x20 - - // Static fields: static EntComponentInfo_t &Get_s_EntComponentInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBodyComponent")->m_static_fields[0]->m_instance);}; static int32_t &Get_entity_component_error_class_decl_says_contained_but_impl_is_referenced(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBodyComponent")->m_static_fields[1]->m_instance);}; }; @@ -3028,8 +2078,6 @@ public: // Size: 0x30 class CNetworkOriginCellCoordQuantizedVector { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: // MNetworkEnable // MNetworkChangeCallback "OnCellChanged" @@ -3049,24 +2097,24 @@ public: // MNetworkEnable uint16_t m_nOutsideWorld; // 0x16 // MNetworkBitCount "15" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "1024.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "1024" // MNetworkEncodeFlags // MNetworkChangeCallback "OnCellChanged" // MNetworkPriority "31" // MNetworkSerializer "posx" CNetworkedQuantizedFloat m_vecX; // 0x18 // MNetworkBitCount "15" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "1024.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "1024" // MNetworkEncodeFlags // MNetworkChangeCallback "OnCellChanged" // MNetworkPriority "31" // MNetworkSerializer "posy" CNetworkedQuantizedFloat m_vecY; // 0x20 // MNetworkBitCount "15" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "1024.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "1024" // MNetworkEncodeFlags // MNetworkChangeCallback "OnCellChanged" // MNetworkPriority "31" @@ -3078,8 +2126,6 @@ public: // Size: 0x10 class CGameSceneNodeHandle { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkEnable CEntityHandle m_hOwner; // 0x8 @@ -3091,13 +2137,9 @@ public: // Size: 0x28 class CHitboxComponent : public CEntityComponent { -private: - [[maybe_unused]] uint8_t __pad0008[0x1c]; // 0x8 public: // MNetworkEnable uint32_t m_bvDisabledHitGroups[1]; // 0x24 - - // Static fields: static EntComponentInfo_t &Get_s_EntComponentInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CHitboxComponent")->m_static_fields[0]->m_instance);}; static int32_t &Get_entity_component_error_class_decl_says_referenced_but_impl_is_contained(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CHitboxComponent")->m_static_fields[1]->m_instance);}; }; @@ -3108,21 +2150,15 @@ struct GameTime_t { public: float m_Value; // 0x0 - - // Static fields: static GameTime_t &Get_Zero(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("GameTime_t")->m_static_fields[0]->m_instance);}; }; // Alignment: 1 -// Size: 0x1a0 +// Size: 0x1b0 class CNetworkTransmitComponent { -private: - [[maybe_unused]] uint8_t __pad0000[0x16c]; // 0x0 public: uint8_t m_nTransmitStateOwnedCounter; // 0x16c - - // Static fields: static int32_t &Get_s_nDebugStateChange(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CNetworkTransmitComponent")->m_static_fields[0]->m_instance);}; static int32_t &Get_s_nWatchTransmitEntity(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CNetworkTransmitComponent")->m_static_fields[1]->m_instance);}; static bool &Get_s_bUseNetworkVars(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CNetworkTransmitComponent")->m_static_fields[2]->m_instance);}; @@ -3135,8 +2171,6 @@ public: // Size: 0xb8 class CRenderComponent : public CEntityComponent { -private: - [[maybe_unused]] uint8_t __pad0008[0x8]; // 0x8 public: // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex @@ -3157,8 +2191,6 @@ private: [[maybe_unused]] uint8_t __pad0061[0x4f]; // 0x61 public: bool m_bInterpolationReadyToDraw; // 0xb0 - - // Static fields: static EntComponentInfo_t &Get_s_EntComponentInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CRenderComponent")->m_static_fields[0]->m_instance);}; static int32_t &Get_entity_component_error_class_decl_says_contained_but_impl_is_referenced(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CRenderComponent")->m_static_fields[1]->m_instance);}; }; @@ -3171,12 +2203,43 @@ public: uint32_t m_Value; // 0x0 }; +// Alignment: 0 +// Size: 0x18 +class CAnimEventListenerBase +{ +public: + uint8_t __pad0000[0x18]; // Autoaligned +}; + +// Alignment: 0 +// Size: 0x20 +class CAnimEventListener : public CAnimEventListenerBase +{ +public: + // No members available +}; + +// Alignment: 0 +// Size: 0x38 +class CAnimEventQueueListener : public CAnimEventListenerBase +{ +public: + // No members available +}; + // Alignment: 2 -// Size: 0x48 +// Size: 0x30 +class CAnimGraphTag +{ +public: + int32_t m_nTagIndex; // 0x0 + CAnimGraphSymbolWithStorage m_pTagName; // 0x10 +}; + +// Alignment: 2 +// Size: 0x28 class CBuoyancyHelper { -private: - [[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0 public: float m_flFluidDensity; // 0x18 float m_flDisplacementFromObjects; // 0x1c @@ -3221,16 +2284,12 @@ public: // Size: 0xa0 class CScriptUniformRandomStream { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: HSCRIPT m_hScriptScope; // 0x8 private: [[maybe_unused]] uint8_t __pad0010[0x8c]; // 0x10 public: int32_t m_nInitialSeed; // 0x9c - - // Static fields: static CUtlVector< CScriptUniformRandomStream* > &Get_sm_UniformStreams(){return *reinterpret_cast*>(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CScriptUniformRandomStream")->m_static_fields[0]->m_instance);}; }; @@ -3263,8 +2322,6 @@ public: // Size: 0x40 class CPlayerPawnComponent { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex @@ -3275,8 +2332,6 @@ public: // Size: 0x40 class CPlayerControllerComponent { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex @@ -3295,8 +2350,6 @@ public: // Size: 0x78 struct audioparams_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkEnable // MNetworkEncoder @@ -3320,8 +2373,6 @@ struct GameTick_t { public: int32_t m_Value; // 0x0 - - // Static fields: static GameTick_t &Get_Zero(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("GameTick_t")->m_static_fields[0]->m_instance);}; }; @@ -3345,14 +2396,12 @@ public: // Size: 0x20 class CInButtonState { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: uint64_t m_pButtonStates[3]; // 0x8 }; -// Alignment: 14 -// Size: 0x1b8 +// Alignment: 15 +// Size: 0x1c8 class CPlayer_MovementServices : public CPlayerPawnComponent { public: @@ -3374,8 +2423,8 @@ public: uint64_t m_nToggleButtonDownMask; // 0x188 // MNetworkEnable // MNetworkBitCount "12" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "2048.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "2048" // MNetworkEncodeFlags float m_flMaxspeed; // 0x190 // MNetworkEnable @@ -3383,7 +2432,8 @@ public: float m_flForwardMove; // 0x198 float m_flLeftMove; // 0x19c float m_flUpMove; // 0x1a0 - QAngle m_vecOldViewAngles; // 0x1a4 + Vector m_vecLastMovementImpulses; // 0x1a4 + QAngle m_vecOldViewAngles; // 0x1b0 }; // Alignment: 4 @@ -3445,8 +2495,6 @@ public: // Size: 0x38 struct AmmoTypeInfo_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: int32_t m_nMaxCarry; // 0x10 private: @@ -3458,12 +2506,18 @@ public: CRangeFloat m_flSpeed; // 0x2c }; +// Alignment: 0 +// Size: 0x18 +class CAnimGraphControllerBase +{ +public: + uint8_t __pad0000[0x18]; // Autoaligned +}; + // Alignment: 33 // Size: 0x150 class CGameSceneNode { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: // MNetworkDisable CTransform m_nodeToWorld; // 0x10 @@ -3493,6 +2547,7 @@ private: [[maybe_unused]] uint8_t __pad00b0[0x8]; // 0xb0 public: // MNetworkEnable + // MNetworkEncoder // MNetworkPriority "32" // MNetworkSerializer "gameSceneNodeStepSimulationAnglesSerializer" // MNetworkChangeCallback "gameSceneNodeLocalAnglesChanged" @@ -3566,8 +2621,6 @@ public: // Size: 0x48 struct EntityRenderAttribute_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x30]; // 0x0 public: // MNetworkEnable CUtlStringToken m_ID; // 0x30 @@ -3587,8 +2640,6 @@ public: // Size: 0x68 struct ActiveModelConfig_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x28]; // 0x0 public: // MNetworkEnable ModelConfigHandle_t m_Handle; // 0x28 @@ -3607,8 +2658,6 @@ public: // Size: 0x230 class CModelState { -private: - [[maybe_unused]] uint8_t __pad0000[0xa0]; // 0x0 public: // MNetworkEnable // MNetworkChangeCallback "skeletonModelChanged" @@ -3642,8 +2691,6 @@ public: // Size: 0x3f0 class CSkeletonInstance : public CGameSceneNode { -private: - [[maybe_unused]] uint8_t __pad0150[0x10]; // 0x150 public: // MNetworkEnable CModelState m_modelState; // 0x160 @@ -3672,24 +2719,22 @@ public: // Size: 0x28 class CNetworkOriginQuantizedVector { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: // MNetworkBitCount "19" - // MNetworkMinValue "-16384.000000" - // MNetworkMaxValue "16384.000000" + // MNetworkMinValue "-16384" + // MNetworkMaxValue "16384" // MNetworkEncodeFlags // MNetworkChangeCallback "CNetworkOriginQuantizedVector" CNetworkedQuantizedFloat m_vecX; // 0x10 // MNetworkBitCount "19" - // MNetworkMinValue "-16384.000000" - // MNetworkMaxValue "16384.000000" + // MNetworkMinValue "-16384" + // MNetworkMaxValue "16384" // MNetworkEncodeFlags // MNetworkChangeCallback "CNetworkOriginQuantizedVector" CNetworkedQuantizedFloat m_vecY; // 0x18 // MNetworkBitCount "19" - // MNetworkMinValue "-16384.000000" - // MNetworkMaxValue "16384.000000" + // MNetworkMinValue "-16384" + // MNetworkMaxValue "16384" // MNetworkEncodeFlags // MNetworkChangeCallback "CNetworkOriginQuantizedVector" CNetworkedQuantizedFloat m_vecZ; // 0x20 @@ -3699,24 +2744,22 @@ public: // Size: 0x28 class CNetworkVelocityVector { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: // MNetworkBitCount "18" - // MNetworkMinValue "-4096.000000" - // MNetworkMaxValue "4096.000000" + // MNetworkMinValue "-4096" + // MNetworkMaxValue "4096" // MNetworkEncodeFlags // MNetworkChangeCallback "CNetworkVelocityVector" CNetworkedQuantizedFloat m_vecX; // 0x10 // MNetworkBitCount "18" - // MNetworkMinValue "-4096.000000" - // MNetworkMaxValue "4096.000000" + // MNetworkMinValue "-4096" + // MNetworkMaxValue "4096" // MNetworkEncodeFlags // MNetworkChangeCallback "CNetworkVelocityVector" CNetworkedQuantizedFloat m_vecY; // 0x18 // MNetworkBitCount "18" - // MNetworkMinValue "-4096.000000" - // MNetworkMaxValue "4096.000000" + // MNetworkMinValue "-4096" + // MNetworkMaxValue "4096" // MNetworkEncodeFlags // MNetworkChangeCallback "CNetworkVelocityVector" CNetworkedQuantizedFloat m_vecZ; // 0x20 @@ -3726,24 +2769,22 @@ public: // Size: 0x28 class CNetworkViewOffsetVector { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: // MNetworkBitCount "10" - // MNetworkMinValue "-64.000000" - // MNetworkMaxValue "64.000000" + // MNetworkMinValue "-64" + // MNetworkMaxValue "64" // MNetworkEncodeFlags // MNetworkChangeCallback "CNetworkViewOffsetVector" CNetworkedQuantizedFloat m_vecX; // 0x10 // MNetworkBitCount "10" - // MNetworkMinValue "-64.000000" - // MNetworkMaxValue "64.000000" + // MNetworkMinValue "-64" + // MNetworkMaxValue "64" // MNetworkEncodeFlags // MNetworkChangeCallback "CNetworkViewOffsetVector" CNetworkedQuantizedFloat m_vecY; // 0x18 // MNetworkBitCount "20" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "128.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "128" // MNetworkEncodeFlags // MNetworkChangeCallback "CNetworkViewOffsetVector" CNetworkedQuantizedFloat m_vecZ; // 0x20 @@ -3753,8 +2794,6 @@ public: // Size: 0x1d0 class CLightComponent : public CEntityComponent { -private: - [[maybe_unused]] uint8_t __pad0008[0x40]; // 0x8 public: // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex @@ -3878,6 +2917,7 @@ public: int32_t m_nShadowCascadeResolution3; // 0x118 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" + // MNetworkAlias "m_bUsesIndexedBakedLighting" bool m_bUsesBakedShadowing; // 0x11c private: [[maybe_unused]] uint8_t __pad011d[0x3]; // 0x11d @@ -3968,8 +3008,6 @@ private: [[maybe_unused]] uint8_t __pad01bc[0xc]; // 0x1bc public: bool m_bPvsModifyEntity; // 0x1c8 - - // Static fields: static EntComponentInfo_t &Get_s_EntComponentInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CLightComponent")->m_static_fields[0]->m_instance);}; static int32_t &Get_entity_component_error_class_decl_says_contained_but_impl_is_referenced(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CLightComponent")->m_static_fields[1]->m_instance);}; }; @@ -3978,8 +3016,6 @@ public: // Size: 0x40 struct fogplayerparams_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkEnable // MNetworkUserGroup "PlayerFogController" @@ -4009,8 +3045,6 @@ public: // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex CNetworkVarChainer __m_pChainEntity; // 0x440 - - // Static fields: static EntComponentInfo_t &Get_s_EntComponentInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBodyComponentSkeletonInstance")->m_static_fields[0]->m_instance);}; static int32_t &Get_entity_component_error_class_decl_says_contained_but_impl_is_referenced(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBodyComponentSkeletonInstance")->m_static_fields[1]->m_instance);}; }; @@ -4025,8 +3059,6 @@ public: // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex CNetworkVarChainer __m_pChainEntity; // 0x1a0 - - // Static fields: static EntComponentInfo_t &Get_s_EntComponentInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBodyComponentPoint")->m_static_fields[0]->m_instance);}; static int32_t &Get_entity_component_error_class_decl_says_contained_but_impl_is_referenced(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBodyComponentPoint")->m_static_fields[1]->m_instance);}; }; @@ -4035,67 +3067,71 @@ public: // Size: 0x8 class IChoreoServices { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: - // Static fields: static uint32_t &Get_ms_uSequenceId(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("IChoreoServices")->m_static_fields[0]->m_instance);}; + uint8_t __pad0000[0x8]; // Autoaligned }; // Alignment: 14 -// Size: 0x208 +// Size: 0x218 class CPlayer_MovementServices_Humanoid : public CPlayer_MovementServices { public: - float m_flStepSoundTime; // 0x1b8 + float m_flStepSoundTime; // 0x1c8 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" // MNetworkBitCount "17" - // MNetworkMinValue "-4096.000000" - // MNetworkMaxValue "4096.000000" + // MNetworkMinValue "-4096" + // MNetworkMaxValue "4096" // MNetworkEncodeFlags - float m_flFallVelocity; // 0x1bc + float m_flFallVelocity; // 0x1cc // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - bool m_bInCrouch; // 0x1c0 + bool m_bInCrouch; // 0x1d0 private: - [[maybe_unused]] uint8_t __pad01c1[0x3]; // 0x1c1 + [[maybe_unused]] uint8_t __pad01d1[0x3]; // 0x1d1 public: // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - uint32_t m_nCrouchState; // 0x1c4 + uint32_t m_nCrouchState; // 0x1d4 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - GameTime_t m_flCrouchTransitionStartTime; // 0x1c8 + GameTime_t m_flCrouchTransitionStartTime; // 0x1d8 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - bool m_bDucked; // 0x1cc + bool m_bDucked; // 0x1dc // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - bool m_bDucking; // 0x1cd + bool m_bDucking; // 0x1dd // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - bool m_bInDuckJump; // 0x1ce + bool m_bInDuckJump; // 0x1de private: - [[maybe_unused]] uint8_t __pad01cf[0x1]; // 0x1cf + [[maybe_unused]] uint8_t __pad01df[0x1]; // 0x1df public: - Vector m_groundNormal; // 0x1d0 - float m_flSurfaceFriction; // 0x1dc - CUtlStringToken m_surfaceProps; // 0x1e0 + Vector m_groundNormal; // 0x1e0 + float m_flSurfaceFriction; // 0x1ec + CUtlStringToken m_surfaceProps; // 0x1f0 private: - [[maybe_unused]] uint8_t __pad01e4[0xc]; // 0x1e4 + [[maybe_unused]] uint8_t __pad01f4[0xc]; // 0x1f4 public: - int32_t m_nStepside; // 0x1f0 - int32_t m_iTargetVolume; // 0x1f4 - Vector m_vecSmoothedVelocity; // 0x1f8 + int32_t m_nStepside; // 0x200 + int32_t m_iTargetVolume; // 0x204 + Vector m_vecSmoothedVelocity; // 0x208 +}; + +// Alignment: 0 +// Size: 0x8 +class ISkeletonAnimationController +{ +public: + uint8_t __pad0000[0x8]; // Autoaligned }; // Alignment: 1 // Size: 0x10 -class CSkeletonAnimationController +class CSkeletonAnimationController : public ISkeletonAnimationController { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkDisable CSkeletonInstance* m_pSkeletonInstance; // 0x8 @@ -4105,8 +3141,6 @@ public: // Size: 0x28 class CNetworkedSequenceOperation { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkEnable // MNetworkSerializer "minusone" @@ -4115,8 +3149,8 @@ public: HSequence m_hSequence; // 0x8 // MNetworkEnable // MNetworkBitCount "15" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "1.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "1" // MNetworkEncodeFlags // MNetworkPriority "32" // MNetworkSendProxyRecipientsFilter @@ -4124,8 +3158,8 @@ public: float m_flPrevCycle; // 0xc // MNetworkEnable // MNetworkBitCount "15" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "1.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "1" // MNetworkEncodeFlags // MNetworkPriority "32" // MNetworkSendProxyRecipientsFilter @@ -4134,8 +3168,8 @@ public: float m_flCycle; // 0x10 // MNetworkEnable // MNetworkBitCount "8" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "1.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "1" // MNetworkEncodeFlags CNetworkedQuantizedFloat m_flWeight; // 0x14 // MNetworkDisable @@ -4159,124 +3193,141 @@ public: // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex CNetworkVarChainer __m_pChainEntity; // 0x470 - - // Static fields: static EntComponentInfo_t &Get_s_EntComponentInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBodyComponentBaseModelEntity")->m_static_fields[0]->m_instance);}; static int32_t &Get_entity_component_error_class_decl_says_contained_but_impl_is_referenced(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBodyComponentBaseModelEntity")->m_static_fields[1]->m_instance);}; }; -// Alignment: 20 -// Size: 0x1a8 +// Alignment: 22 +// Size: 0x1d8 class CAnimGraphNetworkedVariables { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkEnable // MNetworkUserGroup "animationgraph" + // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetBoolVarChanged" // MNetworkAlias "m_PredBoolVariables" CNetworkUtlVectorBase< uint32 > m_PredNetBoolVariables; // 0x8 // MNetworkEnable // MNetworkUserGroup "animationgraph" + // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetByteVarChanged" // MNetworkAlias "m_PredByteVariables" CNetworkUtlVectorBase< uint8 > m_PredNetByteVariables; // 0x20 // MNetworkEnable // MNetworkUserGroup "animationgraph" + // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetUInt16VarChanged" // MNetworkAlias "m_PredUInt16Variables" CNetworkUtlVectorBase< uint16 > m_PredNetUInt16Variables; // 0x38 // MNetworkEnable // MNetworkUserGroup "animationgraph" + // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetIntVarChanged" // MNetworkAlias "m_PredIntVariables" CNetworkUtlVectorBase< int32 > m_PredNetIntVariables; // 0x50 // MNetworkEnable // MNetworkUserGroup "animationgraph" + // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetUInt32VarChanged" // MNetworkAlias "m_PredUInt32Variables" CNetworkUtlVectorBase< uint32 > m_PredNetUInt32Variables; // 0x68 // MNetworkEnable // MNetworkUserGroup "animationgraph" + // MNetworkSendProxyRecipientsFilter + // MNetworkChangeCallback "OnNetUInt64VarChanged" + // MNetworkAlias "m_PredUInt64Variables" + CNetworkUtlVectorBase< uint64 > m_PredNetUInt64Variables; // 0x80 + // MNetworkEnable + // MNetworkUserGroup "animationgraph" + // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetFloatVarChanged" // MNetworkAlias "m_PredFloatVariables" - CNetworkUtlVectorBase< float32 > m_PredNetFloatVariables; // 0x80 + CNetworkUtlVectorBase< float32 > m_PredNetFloatVariables; // 0x98 // MNetworkEnable // MNetworkUserGroup "animationgraph" + // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetVectorVarChanged" // MNetworkAlias "m_PredVectorVariables" - CNetworkUtlVectorBase< Vector > m_PredNetVectorVariables; // 0x98 + CNetworkUtlVectorBase< Vector > m_PredNetVectorVariables; // 0xb0 // MNetworkEnable // MNetworkUserGroup "animationgraph" + // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetQuaternionVarChanged" // MNetworkAlias "m_PredQuaternionVariables" - CNetworkUtlVectorBase< Quaternion > m_PredNetQuaternionVariables; // 0xb0 + CNetworkUtlVectorBase< Quaternion > m_PredNetQuaternionVariables; // 0xc8 // MNetworkEnable // MNetworkUserGroup "animationgraph" // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetOOBoolVarChanged" // MNetworkAlias "m_OwnerOnlyPredNetBoolVariables" - CNetworkUtlVectorBase< uint32 > m_OwnerOnlyPredNetBoolVariables; // 0xc8 + CNetworkUtlVectorBase< uint32 > m_OwnerOnlyPredNetBoolVariables; // 0xe0 // MNetworkEnable // MNetworkUserGroup "animationgraph" // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetOOByteVarChanged" // MNetworkAlias "m_OwnerOnlyPredNetByteVariables" - CNetworkUtlVectorBase< uint8 > m_OwnerOnlyPredNetByteVariables; // 0xe0 + CNetworkUtlVectorBase< uint8 > m_OwnerOnlyPredNetByteVariables; // 0xf8 // MNetworkEnable // MNetworkUserGroup "animationgraph" // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetOOUInt16VarChanged" // MNetworkAlias "m_OwnerOnlyPredNetUInt16Variables" - CNetworkUtlVectorBase< uint16 > m_OwnerOnlyPredNetUInt16Variables; // 0xf8 + CNetworkUtlVectorBase< uint16 > m_OwnerOnlyPredNetUInt16Variables; // 0x110 // MNetworkEnable // MNetworkUserGroup "animationgraph" // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetOOIntVarChanged" // MNetworkAlias "m_OwnerOnlyPredNetIntVariables" - CNetworkUtlVectorBase< int32 > m_OwnerOnlyPredNetIntVariables; // 0x110 + CNetworkUtlVectorBase< int32 > m_OwnerOnlyPredNetIntVariables; // 0x128 // MNetworkEnable // MNetworkUserGroup "animationgraph" // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetOOUInt32VarChanged" // MNetworkAlias "m_OwnerOnlyPredNetUInt32Variables" - CNetworkUtlVectorBase< uint32 > m_OwnerOnlyPredNetUInt32Variables; // 0x128 + CNetworkUtlVectorBase< uint32 > m_OwnerOnlyPredNetUInt32Variables; // 0x140 + // MNetworkEnable + // MNetworkUserGroup "animationgraph" + // MNetworkSendProxyRecipientsFilter + // MNetworkChangeCallback "OnNetOOUInt64VarChanged" + // MNetworkAlias "m_OwnerOnlyPredNetUInt64Variables" + CNetworkUtlVectorBase< uint64 > m_OwnerOnlyPredNetUInt64Variables; // 0x158 // MNetworkEnable // MNetworkUserGroup "animationgraph" // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetOOFloatVarChanged" // MNetworkAlias "m_OwnerOnlyPredNetFloatVariables" - CNetworkUtlVectorBase< float32 > m_OwnerOnlyPredNetFloatVariables; // 0x140 + CNetworkUtlVectorBase< float32 > m_OwnerOnlyPredNetFloatVariables; // 0x170 // MNetworkEnable // MNetworkUserGroup "animationgraph" // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetOOVectorVarChanged" // MNetworkAlias "m_OwnerOnlyPredNetVectorVariables" - CNetworkUtlVectorBase< Vector > m_OwnerOnlyPredNetVectorVariables; // 0x158 + CNetworkUtlVectorBase< Vector > m_OwnerOnlyPredNetVectorVariables; // 0x188 // MNetworkEnable // MNetworkUserGroup "animationgraph" // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetOOQuaternionVarChanged" // MNetworkAlias "m_OwnerOnlyPredNetQuaternionVariables" - CNetworkUtlVectorBase< Quaternion > m_OwnerOnlyPredNetQuaternionVariables; // 0x170 - // MNetworkEnable - int32_t m_nBoolVariablesCount; // 0x188 - // MNetworkEnable - int32_t m_nOwnerOnlyBoolVariablesCount; // 0x18c - // MNetworkEnable - int32_t m_nRandomSeedOffset; // 0x190 + CNetworkUtlVectorBase< Quaternion > m_OwnerOnlyPredNetQuaternionVariables; // 0x1a0 // MNetworkEnable // MNetworkUserGroup "animationgraph" - float m_flLastTeleportTime; // 0x194 + int32_t m_nBoolVariablesCount; // 0x1b8 + // MNetworkEnable + // MNetworkUserGroup "animationgraph" + int32_t m_nOwnerOnlyBoolVariablesCount; // 0x1bc + // MNetworkEnable + // MNetworkUserGroup "animationgraph" + int32_t m_nRandomSeedOffset; // 0x1c0 + // MNetworkEnable + // MNetworkUserGroup "animationgraph" + float m_flLastTeleportTime; // 0x1c4 }; // Alignment: 2 // Size: 0x10 class IntervalTimer { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkEnable GameTime_t m_timestamp; // 0x8 @@ -4288,8 +3339,6 @@ public: // Size: 0x18 class CountdownTimer { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkEnable float m_duration; // 0x8 @@ -4305,8 +3354,6 @@ public: // Size: 0x18 class EngineCountdownTimer { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkEnable float m_duration; // 0x8 @@ -4337,72 +3384,58 @@ public: bool m_bStopped; // 0x220 }; -// Alignment: 13 -// Size: 0x2b0 +// Alignment: 11 +// Size: 0x240 class CBaseAnimGraphController : public CSkeletonAnimationController { -private: - [[maybe_unused]] uint8_t __pad0010[0x8]; // 0x10 public: // MNetworkEnable // MNetworkChangeCallback "baseAnimBaseLayerChangedCompat" - CNetworkedSequenceOperation m_baseLayer; // 0x18 + CNetworkedSequenceOperation m_baseLayer; // 0x10 // MNetworkEnable - CAnimGraphNetworkedVariables m_animGraphNetworkedVars; // 0x40 + CAnimGraphNetworkedVariables m_animGraphNetworkedVars; // 0x38 + // MNetworkDisable + bool m_bSequenceFinished; // 0x210 private: - [[maybe_unused]] uint8_t __pad01e8[0x8]; // 0x1e8 + [[maybe_unused]] uint8_t __pad0211[0x3]; // 0x211 public: // MNetworkDisable - bool m_bSequenceFinished; // 0x1f0 -private: - [[maybe_unused]] uint8_t __pad01f1[0x3]; // 0x1f1 -public: - // MNetworkDisable - float m_flLastEventCycle; // 0x1f4 - // MNetworkDisable - float m_flLastEventAnimTime; // 0x1f8 + float m_flLastEventCycle; // 0x214 // MNetworkEnable // MNetworkBitCount "8" - // MNetworkMinValue "-4.000000" - // MNetworkMaxValue "12.000000" + // MNetworkMinValue "-4" + // MNetworkMaxValue "12" // MNetworkEncodeFlags // MNetworkPriority "32" // MNetworkChangeCallback "playbackRateChangedCompat" - CNetworkedQuantizedFloat m_flPlaybackRate; // 0x1fc + CNetworkedQuantizedFloat m_flPlaybackRate; // 0x218 // MNetworkDisable - float m_flPrevAnimTime; // 0x204 + float m_flPrevAnimTime; // 0x220 // MNetworkEnable // MNetworkChangeCallback "clientSideAnimationChangedCompat" - bool m_bClientSideAnimation; // 0x208 + bool m_bClientSideAnimation; // 0x224 // MNetworkDisable - bool m_bNetworkedAnimationInputsChanged; // 0x209 + bool m_bNetworkedAnimationInputsChanged; // 0x225 private: - [[maybe_unused]] uint8_t __pad020a[0x2]; // 0x20a + [[maybe_unused]] uint8_t __pad0226[0x2]; // 0x226 public: // MNetworkEnable // MNetworkPriority "32" // MNetworkChangeCallback "clientSideAnimCycleResetCompat" - int32_t m_nNewSequenceParity; // 0x20c + int32_t m_nNewSequenceParity; // 0x228 // MNetworkEnable // MNetworkPriority "32" - int32_t m_nResetEventsParity; // 0x210 + int32_t m_nResetEventsParity; // 0x22c // MNetworkEnable - AnimLoopMode_t m_nAnimLoopMode; // 0x214 -private: - [[maybe_unused]] uint8_t __pad0218[0x94]; // 0x218 -public: - // MNetworkDisable - AnimationUpdateListHandle_t m_hAnimationUpdate; // 0x2ac + AnimLoopMode_t m_nAnimLoopMode; // 0x230 }; // Alignment: 0 // Size: 0x8 class CFootstepTableHandle { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: - // No members available + uint8_t __pad0000[0x8]; // Autoaligned }; // Alignment: 8 @@ -4424,8 +3457,6 @@ public: // Size: 0x20 class ResponseParams { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: int16_t odds; // 0x10 int16_t flags; // 0x12 @@ -4439,8 +3470,6 @@ public: // Size: 0x30 class CResponseCriteriaSet { -private: - [[maybe_unused]] uint8_t __pad0000[0x28]; // 0x0 public: int32_t m_nNumPrefixedContexts; // 0x28 bool m_bOverrideOnAppend; // 0x2c @@ -4485,8 +3514,6 @@ public: // Size: 0x60 class CAI_Expresser { -private: - [[maybe_unused]] uint8_t __pad0000[0x38]; // 0x0 public: GameTime_t m_flStopTalkTime; // 0x38 GameTime_t m_flStopTalkTimeWithoutDelay; // 0x3c @@ -4509,8 +3536,6 @@ public: // Size: 0x68 class CResponseQueue { -private: - [[maybe_unused]] uint8_t __pad0000[0x50]; // 0x0 public: CUtlVector< CAI_Expresser* > m_ExpresserTargets; // 0x50 }; @@ -4519,8 +3544,6 @@ public: // Size: 0x240 class CResponseQueue::CDeferredResponse { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: CResponseCriteriaSet m_contexts; // 0x10 float m_fDispatchTime; // 0x40 @@ -4552,8 +3575,6 @@ public: // Size: 0x60 class CCommentarySystem { -private: - [[maybe_unused]] uint8_t __pad0000[0x11]; // 0x0 public: bool m_bCommentaryConvarsChanging; // 0x11 bool m_bCommentaryEnabledMidGame; // 0x12 @@ -4580,8 +3601,6 @@ public: // Size: 0x18 class CPhysicsShake { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: Vector m_force; // 0x8 }; @@ -4645,8 +3664,6 @@ public: // Size: 0x40 class CConstantForceController { -private: - [[maybe_unused]] uint8_t __pad0000[0xc]; // 0x0 public: Vector m_linear; // 0xc RotationVector m_angular; // 0x18 @@ -4658,8 +3675,6 @@ public: // Size: 0x20 class CMotorController { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: float m_speed; // 0x8 float m_maxTorque; // 0xc @@ -4682,8 +3697,6 @@ public: // Size: 0x28 class CCopyRecipientFilter { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: int32_t m_Flags; // 0x8 private: @@ -4696,8 +3709,6 @@ public: // Size: 0x90 class CSoundPatch { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: CSoundEnvelope m_pitch; // 0x8 CSoundEnvelope m_volume; // 0x18 @@ -4718,21 +3729,91 @@ private: [[maybe_unused]] uint8_t __pad0085[0x3]; // 0x85 public: CUtlSymbolLarge m_iszClassName; // 0x88 - - // Static fields: static int32_t &Get_g_SoundPatchCount(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CSoundPatch")->m_static_fields[0]->m_instance);}; }; // Alignment: 0 -// Size: 0x20 +// Size: 0x118 +class CPulseGraphInstance_ServerPointEntity : public CBasePulseGraphInstance +{ +public: + // No members available +}; + +// Alignment: 1 +// Size: 0x50 +class CPulseCell_Value_FindEntByName : public CPulseCell_BaseValue +{ +public: + CUtlString m_EntityType; // 0x48 +}; + +// Alignment: 1 +// Size: 0x50 +class CPulseCell_Step_SetAnimGraphParam : public CPulseCell_BaseFlow +{ +public: + CUtlString m_ParamName; // 0x48 +}; + +// Alignment: 1 +// Size: 0x50 +class CPulseCell_Step_EntFire : public CPulseCell_BaseFlow +{ +public: + CUtlString m_Input; // 0x48 +}; + +// Alignment: 3 +// Size: 0x78 +class CPulseCell_Outflow_PlayVCD : public CPulseCell_BaseFlow +{ +public: + CUtlString m_vcdFilename; // 0x48 + CPulse_OutflowConnection m_OnFinished; // 0x50 + CUtlVector< CPulse_OutflowConnection > m_Triggers; // 0x60 +}; + +// Alignment: 1 +// Size: 0x88 +class CPulseCell_Inflow_GameEvent : public CPulseCell_Inflow_BaseEntrypoint +{ +public: + CBufferString m_EventName; // 0x70 +}; + +// Alignment: 0 +// Size: 0x1 +class CPulseServerFuncs +{ +public: + uint8_t __pad0000[0x1]; // Autoaligned +}; + +// Alignment: 1 +// Size: 0x50 +class CPulseCell_SoundEventStart : public CPulseCell_BaseFlow +{ +public: + SoundEventStartType_t m_Type; // 0x48 +}; + +// Alignment: 0 +// Size: 0x1 +class CPulseServerFuncs_Sounds +{ +public: + uint8_t __pad0000[0x1]; // Autoaligned +}; + +// Alignment: 0 +// Size: 0x50 class CTouchExpansionComponent : public CEntityComponent { -private: - [[maybe_unused]] uint8_t __pad0008[0x10]; // 0x8 public: - // Static fields: static EntComponentInfo_t &Get_s_EntComponentInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CTouchExpansionComponent")->m_static_fields[0]->m_instance);}; static int32_t &Get_entity_component_error_class_decl_says_referenced_but_impl_is_contained(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CTouchExpansionComponent")->m_static_fields[1]->m_instance);}; + // No members available }; // Alignment: 25 @@ -4794,8 +3875,8 @@ public: int32_t priority; // 0x4 }; -// Alignment: 77 -// Size: 0x4a0 +// Alignment: 73 +// Size: 0x4b0 class CBaseEntity : public CEntityInstance { public: @@ -4807,197 +3888,187 @@ public: CBodyComponent* m_CBodyComponent; // 0x30 CNetworkTransmitComponent m_NetworkTransmitComponent; // 0x38 private: - [[maybe_unused]] uint8_t __pad01d8[0x40]; // 0x1d8 + [[maybe_unused]] uint8_t __pad01e8[0x40]; // 0x1e8 public: - CUtlVector< thinkfunc_t > m_aThinkFunctions; // 0x218 - int32_t m_iCurrentThinkContext; // 0x230 - GameTick_t m_nLastThinkTick; // 0x234 + CUtlVector< thinkfunc_t > m_aThinkFunctions; // 0x228 + int32_t m_iCurrentThinkContext; // 0x240 + GameTick_t m_nLastThinkTick; // 0x244 private: - [[maybe_unused]] uint8_t __pad0238[0x8]; // 0x238 + [[maybe_unused]] uint8_t __pad0248[0x8]; // 0x248 public: - CBitVec< 64 > m_isSteadyState; // 0x240 - float m_lastNetworkChange; // 0x248 + CBitVec< 64 > m_isSteadyState; // 0x250 + float m_lastNetworkChange; // 0x258 private: - [[maybe_unused]] uint8_t __pad024c[0xc]; // 0x24c + [[maybe_unused]] uint8_t __pad025c[0xc]; // 0x25c public: - CUtlVector< ResponseContext_t > m_ResponseContexts; // 0x258 - CUtlSymbolLarge m_iszResponseContext; // 0x270 + CUtlVector< ResponseContext_t > m_ResponseContexts; // 0x268 + CUtlSymbolLarge m_iszResponseContext; // 0x280 private: - [[maybe_unused]] uint8_t __pad0278[0x20]; // 0x278 + [[maybe_unused]] uint8_t __pad0288[0x20]; // 0x288 public: // MNetworkEnable // MNetworkSerializer "ClampHealth" // MNetworkUserGroup "Player" // MNetworkPriority "32" - int32_t m_iHealth; // 0x298 + int32_t m_iHealth; // 0x2a8 // MNetworkEnable - int32_t m_iMaxHealth; // 0x29c + int32_t m_iMaxHealth; // 0x2ac // MNetworkEnable // MNetworkUserGroup "Player" // MNetworkPriority "32" - uint8_t m_lifeState; // 0x2a0 + uint8_t m_lifeState; // 0x2b0 private: - [[maybe_unused]] uint8_t __pad02a1[0x3]; // 0x2a1 + [[maybe_unused]] uint8_t __pad02b1[0x3]; // 0x2b1 public: - float m_flDamageAccumulator; // 0x2a4 + float m_flDamageAccumulator; // 0x2b4 // MNetworkEnable - bool m_bTakesDamage; // 0x2a8 + bool m_bTakesDamage; // 0x2b8 private: - [[maybe_unused]] uint8_t __pad02a9[0x3]; // 0x2a9 + [[maybe_unused]] uint8_t __pad02b9[0x3]; // 0x2b9 public: // MNetworkEnable - TakeDamageFlags_t m_nTakeDamageFlags; // 0x2ac + TakeDamageFlags_t m_nTakeDamageFlags; // 0x2bc private: - [[maybe_unused]] uint8_t __pad02b0[0x1]; // 0x2b0 + [[maybe_unused]] uint8_t __pad02c0[0x1]; // 0x2c0 public: // MNetworkEnable - MoveCollide_t m_MoveCollide; // 0x2b1 + MoveCollide_t m_MoveCollide; // 0x2c1 // MNetworkEnable - MoveType_t m_MoveType; // 0x2b2 - uint8_t m_nWaterTouch; // 0x2b3 - uint8_t m_nSlimeTouch; // 0x2b4 - bool m_bRestoreInHierarchy; // 0x2b5 + MoveType_t m_MoveType; // 0x2c2 + uint8_t m_nWaterTouch; // 0x2c3 + uint8_t m_nSlimeTouch; // 0x2c4 + bool m_bRestoreInHierarchy; // 0x2c5 private: - [[maybe_unused]] uint8_t __pad02b6[0x2]; // 0x2b6 + [[maybe_unused]] uint8_t __pad02c6[0x2]; // 0x2c6 public: - CUtlSymbolLarge m_target; // 0x2b8 - float m_flMoveDoneTime; // 0x2c0 - CHandle< CBaseFilter > m_hDamageFilter; // 0x2c4 - CUtlSymbolLarge m_iszDamageFilterName; // 0x2c8 + CUtlSymbolLarge m_target; // 0x2c8 + float m_flMoveDoneTime; // 0x2d0 + CHandle< CBaseFilter > m_hDamageFilter; // 0x2d4 + CUtlSymbolLarge m_iszDamageFilterName; // 0x2d8 // MNetworkEnable // MNetworkSendProxyRecipientsFilter - CUtlStringToken m_nSubclassID; // 0x2d0 + CUtlStringToken m_nSubclassID; // 0x2e0 private: - [[maybe_unused]] uint8_t __pad02d4[0xc]; // 0x2d4 + [[maybe_unused]] uint8_t __pad02e4[0xc]; // 0x2e4 public: // MNetworkEnable // MNetworkPriority "0" // MNetworkSerializer "animTimeSerializer" // MNetworkSendProxyRecipientsFilter - float m_flAnimTime; // 0x2e0 + float m_flAnimTime; // 0x2f0 // MNetworkEnable // MNetworkPriority "1" // MNetworkSerializer "simulationTimeSerializer" - float m_flSimulationTime; // 0x2e4 + // MNetworkSendProxyRecipientsFilter + float m_flSimulationTime; // 0x2f4 // MNetworkEnable - GameTime_t m_flCreateTime; // 0x2e8 + GameTime_t m_flCreateTime; // 0x2f8 // MNetworkEnable - bool m_bClientSideRagdoll; // 0x2ec + bool m_bClientSideRagdoll; // 0x2fc // MNetworkEnable - uint8_t m_ubInterpolationFrame; // 0x2ed + uint8_t m_ubInterpolationFrame; // 0x2fd private: - [[maybe_unused]] uint8_t __pad02ee[0x2]; // 0x2ee + [[maybe_unused]] uint8_t __pad02fe[0x2]; // 0x2fe public: - Vector m_vPrevVPhysicsUpdatePos; // 0x2f0 + Vector m_vPrevVPhysicsUpdatePos; // 0x300 // MNetworkEnable - uint8_t m_iTeamNum; // 0x2fc + uint8_t m_iTeamNum; // 0x30c private: - [[maybe_unused]] uint8_t __pad02fd[0x3]; // 0x2fd + [[maybe_unused]] uint8_t __pad030d[0x3]; // 0x30d public: - CUtlSymbolLarge m_iGlobalname; // 0x300 - int32_t m_iSentToClients; // 0x308 - float m_flSpeed; // 0x30c - CUtlString m_sUniqueHammerID; // 0x310 + CUtlSymbolLarge m_iGlobalname; // 0x310 + int32_t m_iSentToClients; // 0x318 + float m_flSpeed; // 0x31c + CUtlString m_sUniqueHammerID; // 0x320 // MNetworkEnable - uint32_t m_spawnflags; // 0x318 + uint32_t m_spawnflags; // 0x328 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - GameTick_t m_nNextThinkTick; // 0x31c - int32_t m_nSimulationTick; // 0x320 + GameTick_t m_nNextThinkTick; // 0x32c + int32_t m_nSimulationTick; // 0x330 private: - [[maybe_unused]] uint8_t __pad0324[0x4]; // 0x324 + [[maybe_unused]] uint8_t __pad0334[0x4]; // 0x334 public: - CEntityIOOutput m_OnKilled; // 0x328 + CEntityIOOutput m_OnKilled; // 0x338 // MNetworkEnable // MNetworkPriority "32" // MNetworkUserGroup "Player" - uint32_t m_fFlags; // 0x350 - Vector m_vecAbsVelocity; // 0x354 + uint32_t m_fFlags; // 0x360 + Vector m_vecAbsVelocity; // 0x364 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" // MNetworkPriority "32" - CNetworkVelocityVector m_vecVelocity; // 0x360 + CNetworkVelocityVector m_vecVelocity; // 0x370 private: - [[maybe_unused]] uint8_t __pad0388[0x8]; // 0x388 + [[maybe_unused]] uint8_t __pad0398[0x8]; // 0x398 public: // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - Vector m_vecBaseVelocity; // 0x390 - int32_t m_nPushEnumCount; // 0x39c - CCollisionProperty* m_pCollision; // 0x3a0 + Vector m_vecBaseVelocity; // 0x3a0 + int32_t m_nPushEnumCount; // 0x3ac + CCollisionProperty* m_pCollision; // 0x3b0 // MNetworkEnable - CHandle< CBaseEntity > m_hEffectEntity; // 0x3a8 + CHandle< CBaseEntity > m_hEffectEntity; // 0x3b8 // MNetworkEnable // MNetworkPriority "32" - CHandle< CBaseEntity > m_hOwnerEntity; // 0x3ac + CHandle< CBaseEntity > m_hOwnerEntity; // 0x3bc // MNetworkEnable // MNetworkChangeCallback "OnEffectsChanged" - uint32_t m_fEffects; // 0x3b0 + uint32_t m_fEffects; // 0x3c0 // MNetworkEnable // MNetworkPriority "32" // MNetworkUserGroup "Player" - CHandle< CBaseEntity > m_hGroundEntity; // 0x3b4 + CHandle< CBaseEntity > m_hGroundEntity; // 0x3c4 // MNetworkEnable // MNetworkBitCount "8" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "4.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "4" // MNetworkEncodeFlags // MNetworkUserGroup "LocalPlayerExclusive" - float m_flFriction; // 0x3b8 + float m_flFriction; // 0x3c8 // MNetworkEnable // MNetworkEncoder - float m_flElasticity; // 0x3bc + float m_flElasticity; // 0x3cc // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - float m_flGravityScale; // 0x3c0 + float m_flGravityScale; // 0x3d0 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - float m_flTimeScale; // 0x3c4 + float m_flTimeScale; // 0x3d4 // MNetworkEnable // MNetworkUserGroup "Water" // MNetworkBitCount "8" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "1.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "1" // MNetworkEncodeFlags - float m_flWaterLevel; // 0x3c8 + float m_flWaterLevel; // 0x3d8 // MNetworkEnable - bool m_bSimulatedEveryTick; // 0x3cc + bool m_bSimulatedEveryTick; // 0x3dc // MNetworkEnable - bool m_bAnimatedEveryTick; // 0x3cd - // MNetworkEnable - // MNetworkUserGroup "ScalabilityOptions" - uint8_t m_nMinCPULevel; // 0x3ce - // MNetworkEnable - // MNetworkUserGroup "ScalabilityOptions" - uint8_t m_nMaxCPULevel; // 0x3cf - // MNetworkEnable - // MNetworkUserGroup "ScalabilityOptions" - uint8_t m_nMinGPULevel; // 0x3d0 - // MNetworkEnable - // MNetworkUserGroup "ScalabilityOptions" - uint8_t m_nMaxGPULevel; // 0x3d1 - bool m_bDisableLowViolence; // 0x3d2 - uint8_t m_nWaterType; // 0x3d3 - int32_t m_iEFlags; // 0x3d4 - CEntityIOOutput m_OnUser1; // 0x3d8 - CEntityIOOutput m_OnUser2; // 0x400 - CEntityIOOutput m_OnUser3; // 0x428 - CEntityIOOutput m_OnUser4; // 0x450 - int32_t m_iInitialTeamNum; // 0x478 - // MNetworkEnable - GameTime_t m_flNavIgnoreUntilTime; // 0x47c - QAngle m_vecAngVelocity; // 0x480 - bool m_bNetworkQuantizeOriginAndAngles; // 0x48c - bool m_bLagCompensate; // 0x48d + bool m_bAnimatedEveryTick; // 0x3dd + bool m_bDisableLowViolence; // 0x3de + uint8_t m_nWaterType; // 0x3df + int32_t m_iEFlags; // 0x3e0 private: - [[maybe_unused]] uint8_t __pad048e[0x2]; // 0x48e + [[maybe_unused]] uint8_t __pad03e4[0x4]; // 0x3e4 public: - float m_flOverriddenFriction; // 0x490 - CHandle< CBaseEntity > m_pBlocker; // 0x494 - float m_flLocalTime; // 0x498 - float m_flVPhysicsUpdateLocalTime; // 0x49c - - // Static fields: + CEntityIOOutput m_OnUser1; // 0x3e8 + CEntityIOOutput m_OnUser2; // 0x410 + CEntityIOOutput m_OnUser3; // 0x438 + CEntityIOOutput m_OnUser4; // 0x460 + int32_t m_iInitialTeamNum; // 0x488 + // MNetworkEnable + GameTime_t m_flNavIgnoreUntilTime; // 0x48c + QAngle m_vecAngVelocity; // 0x490 + bool m_bNetworkQuantizeOriginAndAngles; // 0x49c + bool m_bLagCompensate; // 0x49d +private: + [[maybe_unused]] uint8_t __pad049e[0x2]; // 0x49e +public: + float m_flOverriddenFriction; // 0x4a0 + CHandle< CBaseEntity > m_pBlocker; // 0x4a4 + float m_flLocalTime; // 0x4a8 + float m_flVPhysicsUpdateLocalTime; // 0x4ac static Relationship_t** &Get_sm_DefaultRelationship(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBaseEntity")->m_static_fields[0]->m_instance);}; static bool &Get_sm_bAccurateTriggerBboxChecks(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBaseEntity")->m_static_fields[1]->m_instance);}; static bool &Get_sm_bDisableTouchFuncs(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBaseEntity")->m_static_fields[2]->m_instance);}; @@ -5011,7 +4082,7 @@ public: }; // Alignment: 0 -// Size: 0x4a0 +// Size: 0x4b0 class CServerOnlyEntity : public CBaseEntity { public: @@ -5019,7 +4090,7 @@ public: }; // Alignment: 0 -// Size: 0x4a0 +// Size: 0x4b0 class CServerOnlyPointEntity : public CServerOnlyEntity { public: @@ -5027,7 +4098,7 @@ public: }; // Alignment: 0 -// Size: 0x4a0 +// Size: 0x4b0 class CLogicalEntity : public CServerOnlyEntity { public: @@ -5035,106 +4106,106 @@ public: }; // Alignment: 17 -// Size: 0x6d8 +// Size: 0x6e8 class CColorCorrection : public CBaseEntity { public: // MNetworkEnable - float m_flFadeInDuration; // 0x4a0 + float m_flFadeInDuration; // 0x4b0 // MNetworkEnable - float m_flFadeOutDuration; // 0x4a4 - float m_flStartFadeInWeight; // 0x4a8 - float m_flStartFadeOutWeight; // 0x4ac - GameTime_t m_flTimeStartFadeIn; // 0x4b0 - GameTime_t m_flTimeStartFadeOut; // 0x4b4 + float m_flFadeOutDuration; // 0x4b4 + float m_flStartFadeInWeight; // 0x4b8 + float m_flStartFadeOutWeight; // 0x4bc + GameTime_t m_flTimeStartFadeIn; // 0x4c0 + GameTime_t m_flTimeStartFadeOut; // 0x4c4 // MNetworkEnable - float m_flMaxWeight; // 0x4b8 - bool m_bStartDisabled; // 0x4bc + float m_flMaxWeight; // 0x4c8 + bool m_bStartDisabled; // 0x4cc // MNetworkEnable - bool m_bEnabled; // 0x4bd + bool m_bEnabled; // 0x4cd // MNetworkEnable - bool m_bMaster; // 0x4be + bool m_bMaster; // 0x4ce // MNetworkEnable - bool m_bClientSide; // 0x4bf + bool m_bClientSide; // 0x4cf // MNetworkEnable - bool m_bExclusive; // 0x4c0 + bool m_bExclusive; // 0x4d0 private: - [[maybe_unused]] uint8_t __pad04c1[0x3]; // 0x4c1 + [[maybe_unused]] uint8_t __pad04d1[0x3]; // 0x4d1 public: // MNetworkEnable - float m_MinFalloff; // 0x4c4 + float m_MinFalloff; // 0x4d4 // MNetworkEnable - float m_MaxFalloff; // 0x4c8 + float m_MaxFalloff; // 0x4d8 // MNetworkEnable - float m_flCurWeight; // 0x4cc + float m_flCurWeight; // 0x4dc // MNetworkEnable - char m_netlookupFilename[512]; // 0x4d0 - CUtlSymbolLarge m_lookupFilename; // 0x6d0 + char m_netlookupFilename[512]; // 0x4e0 + CUtlSymbolLarge m_lookupFilename; // 0x6e0 }; // Alignment: 11 -// Size: 0x4d8 +// Size: 0x4e8 class CEntityFlame : public CBaseEntity { public: // MNetworkEnable - CHandle< CBaseEntity > m_hEntAttached; // 0x4a0 + CHandle< CBaseEntity > m_hEntAttached; // 0x4b0 // MNetworkEnable - bool m_bCheapEffect; // 0x4a4 + bool m_bCheapEffect; // 0x4b4 private: - [[maybe_unused]] uint8_t __pad04a5[0x3]; // 0x4a5 + [[maybe_unused]] uint8_t __pad04b5[0x3]; // 0x4b5 public: - float m_flSize; // 0x4a8 - bool m_bUseHitboxes; // 0x4ac + float m_flSize; // 0x4b8 + bool m_bUseHitboxes; // 0x4bc private: - [[maybe_unused]] uint8_t __pad04ad[0x3]; // 0x4ad + [[maybe_unused]] uint8_t __pad04bd[0x3]; // 0x4bd public: - int32_t m_iNumHitboxFires; // 0x4b0 - float m_flHitboxFireScale; // 0x4b4 - GameTime_t m_flLifetime; // 0x4b8 - CHandle< CBaseEntity > m_hAttacker; // 0x4bc - int32_t m_iDangerSound; // 0x4c0 - float m_flDirectDamagePerSecond; // 0x4c4 - int32_t m_iCustomDamageType; // 0x4c8 + int32_t m_iNumHitboxFires; // 0x4c0 + float m_flHitboxFireScale; // 0x4c4 + GameTime_t m_flLifetime; // 0x4c8 + CHandle< CBaseEntity > m_hAttacker; // 0x4cc + int32_t m_iDangerSound; // 0x4d0 + float m_flDirectDamagePerSecond; // 0x4d4 + int32_t m_iCustomDamageType; // 0x4d8 }; // Alignment: 3 -// Size: 0x4f8 +// Size: 0x508 class CBaseFilter : public CLogicalEntity { public: - bool m_bNegated; // 0x4a0 + bool m_bNegated; // 0x4b0 private: - [[maybe_unused]] uint8_t __pad04a1[0x7]; // 0x4a1 + [[maybe_unused]] uint8_t __pad04b1[0x7]; // 0x4b1 public: - CEntityIOOutput m_OnPass; // 0x4a8 - CEntityIOOutput m_OnFail; // 0x4d0 + CEntityIOOutput m_OnPass; // 0x4b8 + CEntityIOOutput m_OnFail; // 0x4e0 }; // Alignment: 4 -// Size: 0x580 +// Size: 0x590 class CFilterMultiple : public CBaseFilter { public: - filter_t m_nFilterType; // 0x4f8 + filter_t m_nFilterType; // 0x508 private: - [[maybe_unused]] uint8_t __pad04fc[0x4]; // 0x4fc + [[maybe_unused]] uint8_t __pad050c[0x4]; // 0x50c public: - CUtlSymbolLarge m_iFilterName[10]; // 0x500 - CHandle< CBaseEntity > m_hFilter[10]; // 0x550 - int32_t m_nFilterCount; // 0x578 + CUtlSymbolLarge m_iFilterName[10]; // 0x510 + CHandle< CBaseEntity > m_hFilter[10]; // 0x560 + int32_t m_nFilterCount; // 0x588 }; // Alignment: 1 -// Size: 0x500 +// Size: 0x510 class CFilterProximity : public CBaseFilter { public: - float m_flRadius; // 0x4f8 + float m_flRadius; // 0x508 }; // Alignment: 0 -// Size: 0x4f8 +// Size: 0x508 class CFilterLOS : public CBaseFilter { public: @@ -5142,60 +4213,58 @@ public: }; // Alignment: 1 -// Size: 0x500 +// Size: 0x510 class CFilterClass : public CBaseFilter { public: - CUtlSymbolLarge m_iFilterClass; // 0x4f8 + CUtlSymbolLarge m_iFilterClass; // 0x508 }; // Alignment: 4 -// Size: 0x4b0 +// Size: 0x4c0 class CBaseFire : public CBaseEntity { public: // MNetworkEnable - float m_flScale; // 0x4a0 + float m_flScale; // 0x4b0 // MNetworkEnable - float m_flStartScale; // 0x4a4 + float m_flStartScale; // 0x4b4 // MNetworkEnable - float m_flScaleTime; // 0x4a8 + float m_flScaleTime; // 0x4b8 // MNetworkEnable - uint32_t m_nFlags; // 0x4ac + uint32_t m_nFlags; // 0x4bc }; // Alignment: 2 -// Size: 0x4b8 +// Size: 0x4c8 class CFireSmoke : public CBaseFire { public: // MNetworkEnable - int32_t m_nFlameModelIndex; // 0x4b0 + int32_t m_nFlameModelIndex; // 0x4c0 // MNetworkEnable - int32_t m_nFlameFromAboveModelIndex; // 0x4b4 + int32_t m_nFlameFromAboveModelIndex; // 0x4c4 }; // Alignment: 7 -// Size: 0x4f8 +// Size: 0x508 class CFishPool : public CBaseEntity { -private: - [[maybe_unused]] uint8_t __pad04a0[0x10]; // 0x4a0 public: - int32_t m_fishCount; // 0x4b0 - float m_maxRange; // 0x4b4 - float m_swimDepth; // 0x4b8 - float m_waterLevel; // 0x4bc - bool m_isDormant; // 0x4c0 + int32_t m_fishCount; // 0x4c0 + float m_maxRange; // 0x4c4 + float m_swimDepth; // 0x4c8 + float m_waterLevel; // 0x4cc + bool m_isDormant; // 0x4d0 private: - [[maybe_unused]] uint8_t __pad04c1[0x7]; // 0x4c1 + [[maybe_unused]] uint8_t __pad04d1[0x7]; // 0x4d1 public: - CUtlVector< CHandle< CFish > > m_fishes; // 0x4c8 - CountdownTimer m_visTimer; // 0x4e0 + CUtlVector< CHandle< CFish > > m_fishes; // 0x4d8 + CountdownTimer m_visTimer; // 0x4f0 }; // Alignment: 0 -// Size: 0x830 +// Size: 0x840 class CInfoData : public CServerOnlyEntity { public: @@ -5206,8 +4275,6 @@ public: // Size: 0x20 struct locksound_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: CUtlSymbolLarge sLockedSound; // 0x8 CUtlSymbolLarge sUnlockedSound; // 0x10 @@ -5215,31 +4282,31 @@ public: }; // Alignment: 4 -// Size: 0x510 +// Size: 0x520 class CLogicBranch : public CLogicalEntity { public: - bool m_bInValue; // 0x4a0 + bool m_bInValue; // 0x4b0 private: - [[maybe_unused]] uint8_t __pad04a1[0x7]; // 0x4a1 + [[maybe_unused]] uint8_t __pad04b1[0x7]; // 0x4b1 public: - CUtlVector< CHandle< CBaseEntity > > m_Listeners; // 0x4a8 - CEntityIOOutput m_OnTrue; // 0x4c0 - CEntityIOOutput m_OnFalse; // 0x4e8 + CUtlVector< CHandle< CBaseEntity > > m_Listeners; // 0x4b8 + CEntityIOOutput m_OnTrue; // 0x4d0 + CEntityIOOutput m_OnFalse; // 0x4f8 }; // Alignment: 7 -// Size: 0x530 +// Size: 0x540 class CLogicDistanceCheck : public CLogicalEntity { public: - CUtlSymbolLarge m_iszEntityA; // 0x4a0 - CUtlSymbolLarge m_iszEntityB; // 0x4a8 - float m_flZone1Distance; // 0x4b0 - float m_flZone2Distance; // 0x4b4 - CEntityIOOutput m_InZone1; // 0x4b8 - CEntityIOOutput m_InZone2; // 0x4e0 - CEntityIOOutput m_InZone3; // 0x508 + CUtlSymbolLarge m_iszEntityA; // 0x4b0 + CUtlSymbolLarge m_iszEntityB; // 0x4b8 + float m_flZone1Distance; // 0x4c0 + float m_flZone2Distance; // 0x4c4 + CEntityIOOutput m_InZone1; // 0x4c8 + CEntityIOOutput m_InZone2; // 0x4f0 + CEntityIOOutput m_InZone3; // 0x518 }; // Alignment: 3 @@ -5256,8 +4323,6 @@ public: // Size: 0x20 class SimpleConstraintSoundProfile { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: SimpleConstraintSoundProfile::SimpleConstraintsSoundProfileKeypoints_t eKeypoints; // 0x8 float m_keyPoints[2]; // 0xc @@ -5268,8 +4333,6 @@ public: // Size: 0x88 class ConstraintSoundInfo { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: VelocitySampler m_vSampler; // 0x8 private: @@ -5294,8 +4357,6 @@ public: // Size: 0x20 class CSmoothFunc { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: float m_flSmoothAmplitude; // 0x8 float m_flSmoothBias; // 0xc @@ -5308,37 +4369,33 @@ public: // Size: 0x10 struct magnetted_objects_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: CHandle< CBaseEntity > hEntity; // 0x8 }; // Alignment: 3 -// Size: 0x4b8 +// Size: 0x4c8 class CPointPrefab : public CServerOnlyPointEntity { public: - CUtlSymbolLarge m_targetMapName; // 0x4a0 - CUtlSymbolLarge m_forceWorldGroupID; // 0x4a8 - bool m_fixupNames; // 0x4b0 + CUtlSymbolLarge m_targetMapName; // 0x4b0 + CUtlSymbolLarge m_forceWorldGroupID; // 0x4b8 + bool m_fixupNames; // 0x4c0 }; // Alignment: 2 -// Size: 0x4a8 +// Size: 0x4b8 class CSkyboxReference : public CBaseEntity { public: - WorldGroupId_t m_worldGroupId; // 0x4a0 - CHandle< CSkyCamera > m_hSkyCamera; // 0x4a4 + WorldGroupId_t m_worldGroupId; // 0x4b0 + CHandle< CSkyCamera > m_hSkyCamera; // 0x4b4 }; // Alignment: 25 // Size: 0x68 struct fogparams_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkEnable // MNetworkEncoder @@ -5428,39 +4485,39 @@ public: }; // Alignment: 11 -// Size: 0x538 +// Size: 0x548 class CEnvSoundscape : public CServerOnlyEntity { public: - CEntityIOOutput m_OnPlay; // 0x4a0 - float m_flRadius; // 0x4c8 + CEntityIOOutput m_OnPlay; // 0x4b0 + float m_flRadius; // 0x4d8 private: - [[maybe_unused]] uint8_t __pad04cc[0x4]; // 0x4cc + [[maybe_unused]] uint8_t __pad04dc[0x4]; // 0x4dc public: - CUtlSymbolLarge m_soundscapeName; // 0x4d0 - CUtlSymbolLarge m_soundEventName; // 0x4d8 - bool m_bOverrideWithEvent; // 0x4e0 + CUtlSymbolLarge m_soundscapeName; // 0x4e0 + CUtlSymbolLarge m_soundEventName; // 0x4e8 + bool m_bOverrideWithEvent; // 0x4f0 private: - [[maybe_unused]] uint8_t __pad04e1[0x3]; // 0x4e1 + [[maybe_unused]] uint8_t __pad04f1[0x3]; // 0x4f1 public: - int32_t m_soundscapeIndex; // 0x4e4 - int32_t m_soundscapeEntityListId; // 0x4e8 - uint32_t m_soundEventHash; // 0x4ec - CUtlSymbolLarge m_positionNames[8]; // 0x4f0 - CHandle< CEnvSoundscape > m_hProxySoundscape; // 0x530 - bool m_bDisabled; // 0x534 + int32_t m_soundscapeIndex; // 0x4f4 + int32_t m_soundscapeEntityListId; // 0x4f8 + uint32_t m_soundEventHash; // 0x4fc + CUtlSymbolLarge m_positionNames[8]; // 0x500 + CHandle< CEnvSoundscape > m_hProxySoundscape; // 0x540 + bool m_bDisabled; // 0x544 }; // Alignment: 1 -// Size: 0x540 +// Size: 0x550 class CEnvSoundscapeProxy : public CEnvSoundscape { public: - CUtlSymbolLarge m_MainSoundscapeName; // 0x538 + CUtlSymbolLarge m_MainSoundscapeName; // 0x548 }; // Alignment: 0 -// Size: 0x538 +// Size: 0x548 class CEnvSoundscapeTriggerable : public CEnvSoundscape { public: @@ -5468,45 +4525,43 @@ public: }; // Alignment: 27 -// Size: 0x550 +// Size: 0x560 class CTriggerCamera : public CBaseEntity { public: - CHandle< CBaseEntity > m_hPlayer; // 0x4a0 - CHandle< CBaseEntity > m_hTarget; // 0x4a4 - CBaseEntity* m_pPath; // 0x4a8 - CUtlSymbolLarge m_sPath; // 0x4b0 - float m_flWait; // 0x4b8 - GameTime_t m_flReturnTime; // 0x4bc - GameTime_t m_flStopTime; // 0x4c0 - float m_moveDistance; // 0x4c4 - float m_targetSpeed; // 0x4c8 - float m_initialSpeed; // 0x4cc - float m_acceleration; // 0x4d0 - float m_deceleration; // 0x4d4 - int32_t m_state; // 0x4d8 - Vector m_vecMoveDir; // 0x4dc - float m_fov; // 0x4e8 - float m_fovSpeed; // 0x4ec - CUtlSymbolLarge m_iszTargetAttachment; // 0x4f0 - AttachmentHandle_t m_iAttachmentIndex; // 0x4f8 - bool m_bSnapToGoal; // 0x4f9 - bool m_bInterpolatePosition; // 0x4fa + CHandle< CBaseEntity > m_hPlayer; // 0x4b0 + CHandle< CBaseEntity > m_hTarget; // 0x4b4 + CBaseEntity* m_pPath; // 0x4b8 + CUtlSymbolLarge m_sPath; // 0x4c0 + float m_flWait; // 0x4c8 + GameTime_t m_flReturnTime; // 0x4cc + GameTime_t m_flStopTime; // 0x4d0 + float m_moveDistance; // 0x4d4 + float m_targetSpeed; // 0x4d8 + float m_initialSpeed; // 0x4dc + float m_acceleration; // 0x4e0 + float m_deceleration; // 0x4e4 + int32_t m_state; // 0x4e8 + Vector m_vecMoveDir; // 0x4ec + float m_fov; // 0x4f8 + float m_fovSpeed; // 0x4fc + CUtlSymbolLarge m_iszTargetAttachment; // 0x500 + AttachmentHandle_t m_iAttachmentIndex; // 0x508 + bool m_bSnapToGoal; // 0x509 + bool m_bInterpolatePosition; // 0x50a private: - [[maybe_unused]] uint8_t __pad04fb[0x1]; // 0x4fb + [[maybe_unused]] uint8_t __pad050b[0x1]; // 0x50b public: - Vector m_vStartPos; // 0x4fc - Vector m_vEndPos; // 0x508 - GameTime_t m_flInterpStartTime; // 0x514 - uint64_t m_nPlayerButtons; // 0x518 - bool m_bOldTakesDamage; // 0x520 + Vector m_vStartPos; // 0x50c + Vector m_vEndPos; // 0x518 + GameTime_t m_flInterpStartTime; // 0x524 + uint64_t m_nPlayerButtons; // 0x528 + bool m_bOldTakesDamage; // 0x530 private: - [[maybe_unused]] uint8_t __pad0521[0x3]; // 0x521 + [[maybe_unused]] uint8_t __pad0531[0x3]; // 0x531 public: - TakeDamageFlags_t m_nOldTakeDamageFlags; // 0x524 - CEntityIOOutput m_OnEndFollow; // 0x528 - - // Static fields: + TakeDamageFlags_t m_nOldTakeDamageFlags; // 0x534 + CEntityIOOutput m_OnEndFollow; // 0x538 static float &Get_kflPosInterpTime(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CTriggerCamera")->m_static_fields[0]->m_instance);}; }; @@ -5568,8 +4623,6 @@ public: // Size: 0xb8 class CNavVolumeBreadthFirstSearch : public CNavVolumeCalculatedVector { -private: - [[maybe_unused]] uint8_t __pad0098[0x8]; // 0x98 public: Vector m_vStartPos; // 0xa0 float m_flSearchDist; // 0xac @@ -5579,8 +4632,6 @@ public: // Size: 0x30 struct VPhysicsCollisionAttribute_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkEnable uint64_t m_nInteractsAs; // 0x8 @@ -5604,8 +4655,6 @@ public: // Size: 0xb0 class CCollisionProperty { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: // MNetworkEnable // MNetworkChangeCallback "CollisionAttributeChanged" @@ -5657,8 +4706,6 @@ public: // Size: 0x70 class CEffectData { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkEnable // MNetworkEncoder @@ -5680,14 +4727,14 @@ public: float m_flScale; // 0x40 // MNetworkEnable // MNetworkBitCount "12" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "1023.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "1023" // MNetworkEncodeFlags float m_flMagnitude; // 0x44 // MNetworkEnable // MNetworkBitCount "10" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "1023.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "1023" // MNetworkEncodeFlags float m_flRadius; // 0x48 // MNetworkEnable @@ -5723,22 +4770,20 @@ public: }; // Alignment: 2 -// Size: 0x4a8 +// Size: 0x4b8 class CEnvDetailController : public CBaseEntity { public: // MNetworkEnable - float m_flFadeStartDist; // 0x4a0 + float m_flFadeStartDist; // 0x4b0 // MNetworkEnable - float m_flFadeEndDist; // 0x4a4 + float m_flFadeEndDist; // 0x4b4 }; // Alignment: 31 // Size: 0x258 class CEnvWindShared { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkEnable GameTime_t m_flStartTime; // 0x8 @@ -5816,7 +4861,7 @@ public: }; // Alignment: 0 -// Size: 0x4a0 +// Size: 0x4b0 class CInfoLadderDismount : public CBaseEntity { public: @@ -5827,8 +4872,6 @@ public: // Size: 0x60 struct shard_model_desc_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkEnable int32_t m_nModelID; // 0x8 @@ -5874,8 +4917,6 @@ public: // Size: 0xc0 class CShatterGlassShard { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: uint32_t m_hShardHandle; // 0x8 private: @@ -5931,7 +4972,7 @@ public: }; // Alignment: 0 -// Size: 0x4a0 +// Size: 0x4b0 class CGameRulesProxy : public CBaseEntity { public: @@ -5942,8 +4983,6 @@ public: // Size: 0x90 class CGameRules { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: char m_szQuestName[128]; // 0x8 int32_t m_nQuestPhase; // 0x88 @@ -5953,8 +4992,6 @@ public: // Size: 0x58 class CGlowProperty { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: Vector m_fGlowColor; // 0x8 private: @@ -5990,10 +5027,8 @@ public: // Size: 0x8 class IVehicle { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: - // No members available + uint8_t __pad0000[0x8]; // Autoaligned }; // Alignment: 0 @@ -6008,8 +5043,6 @@ public: // Size: 0x90 struct sky3dparams_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkEnable int16_t scale; // 0x8 @@ -6033,7 +5066,7 @@ public: }; // Alignment: 17 -// Size: 0x188 +// Size: 0x180 class CPlayer_CameraServices : public CPlayerPawnComponent { public: @@ -6047,67 +5080,62 @@ public: // MNetworkUserGroup "LocalPlayerExclusive" float m_flFOVRate; // 0x4c // MNetworkEnable - // MNetworkPriority "32" - // MNetworkBitCount "32" - QAngle m_vecPunchAngle; // 0x50 + // MNetworkEncoder + QAngle m_vecCsViewPunchAngle; // 0x50 // MNetworkEnable - // MNetworkBitCount "32" - QAngle m_vecPunchAngleVel; // 0x5c + GameTick_t m_nCsViewPunchAngleTick; // 0x5c // MNetworkEnable - // MNetworkChangeCallback "OnPunchJoltChanged" - GameTick_t m_nPunchAngleJoltTick; // 0x68 + float m_flCsViewPunchAngleTickRatio; // 0x60 // MNetworkEnable - CHandle< CBaseEntity > m_hZoomOwner; // 0x6c + CHandle< CBaseEntity > m_hZoomOwner; // 0x64 // MNetworkEnable - fogplayerparams_t m_PlayerFog; // 0x70 + fogplayerparams_t m_PlayerFog; // 0x68 // MNetworkEnable - CHandle< CColorCorrection > m_hColorCorrectionCtrl; // 0xb0 + CHandle< CColorCorrection > m_hColorCorrectionCtrl; // 0xa8 // MNetworkEnable - CHandle< CBaseEntity > m_hViewEntity; // 0xb4 + CHandle< CBaseEntity > m_hViewEntity; // 0xac // MNetworkEnable // MNetworkUserGroup "LocalPlayerAndObserversExclusive" - CHandle< CTonemapController2 > m_hTonemapController; // 0xb8 + CHandle< CTonemapController2 > m_hTonemapController; // 0xb0 private: - [[maybe_unused]] uint8_t __pad00bc[0x4]; // 0xbc + [[maybe_unused]] uint8_t __pad00b4[0x4]; // 0xb4 public: // MNetworkEnable // MNetworkUserGroup "LocalPlayerAndObserversExclusive" - audioparams_t m_audio; // 0xc0 + audioparams_t m_audio; // 0xb8 // MNetworkEnable // MNetworkUserGroup "LocalPlayerAndObserversExclusive" - CNetworkUtlVectorBase< CHandle< CPostProcessingVolume > > m_PostProcessingVolumes; // 0x138 - float m_flOldPlayerZ; // 0x150 - float m_flOldPlayerViewOffsetZ; // 0x154 + CNetworkUtlVectorBase< CHandle< CPostProcessingVolume > > m_PostProcessingVolumes; // 0x130 + float m_flOldPlayerZ; // 0x148 + float m_flOldPlayerViewOffsetZ; // 0x14c private: - [[maybe_unused]] uint8_t __pad0158[0x18]; // 0x158 + [[maybe_unused]] uint8_t __pad0150[0x18]; // 0x150 public: - CUtlVector< CHandle< CEnvSoundscapeTriggerable > > m_hTriggerSoundscapeList; // 0x170 + CUtlVector< CHandle< CEnvSoundscapeTriggerable > > m_hTriggerSoundscapeList; // 0x168 }; // Alignment: 4 -// Size: 0x540 +// Size: 0x550 class CSkyCamera : public CBaseEntity { public: // MNetworkEnable - sky3dparams_t m_skyboxData; // 0x4a0 + sky3dparams_t m_skyboxData; // 0x4b0 // MNetworkEnable - CUtlStringToken m_skyboxSlotToken; // 0x530 - bool m_bUseAngles; // 0x534 + CUtlStringToken m_skyboxSlotToken; // 0x540 + bool m_bUseAngles; // 0x544 private: - [[maybe_unused]] uint8_t __pad0535[0x3]; // 0x535 + [[maybe_unused]] uint8_t __pad0545[0x3]; // 0x545 public: - CSkyCamera* m_pNext; // 0x538 + CSkyCamera* m_pNext; // 0x548 }; // Alignment: 0 // Size: 0x8 class IRagdoll { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: - // No members available + uint8_t __pad0000[0x8]; // Autoaligned }; // Alignment: 3 @@ -6135,8 +5163,6 @@ public: // Size: 0x48 struct PhysicsRagdollPose_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex @@ -6207,18 +5233,14 @@ public: // Size: 0x28 class CEntitySubclassVDataBase { -private: - [[maybe_unused]] uint8_t __pad0000[0x28]; // 0x0 public: - // No members available + uint8_t __pad0000[0x28]; // Autoaligned }; // Alignment: 4 // Size: 0x20 struct thinkfunc_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: HSCRIPT m_hFn; // 0x8 CUtlStringToken m_nContext; // 0x10 @@ -6319,93 +5341,93 @@ public: }; // Alignment: 9 -// Size: 0x538 +// Size: 0x548 class CSoundOpvarSetPointBase : public CBaseEntity { public: - bool m_bDisabled; // 0x4a0 + bool m_bDisabled; // 0x4b0 private: - [[maybe_unused]] uint8_t __pad04a1[0x3]; // 0x4a1 + [[maybe_unused]] uint8_t __pad04b1[0x3]; // 0x4b1 public: - CEntityHandle m_hSource; // 0x4a4 + CEntityHandle m_hSource; // 0x4b4 private: - [[maybe_unused]] uint8_t __pad04a8[0x8]; // 0x4a8 + [[maybe_unused]] uint8_t __pad04b8[0x8]; // 0x4b8 public: - CUtlSymbolLarge m_iszSourceEntityName; // 0x4b0 + CUtlSymbolLarge m_iszSourceEntityName; // 0x4c0 private: - [[maybe_unused]] uint8_t __pad04b8[0x50]; // 0x4b8 + [[maybe_unused]] uint8_t __pad04c8[0x50]; // 0x4c8 public: - Vector m_vLastPosition; // 0x508 + Vector m_vLastPosition; // 0x518 private: - [[maybe_unused]] uint8_t __pad0514[0x4]; // 0x514 + [[maybe_unused]] uint8_t __pad0524[0x4]; // 0x524 public: // MNetworkEnable - CUtlSymbolLarge m_iszStackName; // 0x518 + CUtlSymbolLarge m_iszStackName; // 0x528 // MNetworkEnable - CUtlSymbolLarge m_iszOperatorName; // 0x520 + CUtlSymbolLarge m_iszOperatorName; // 0x530 // MNetworkEnable - CUtlSymbolLarge m_iszOpvarName; // 0x528 + CUtlSymbolLarge m_iszOpvarName; // 0x538 // MNetworkEnable - int32_t m_iOpvarIndex; // 0x530 + int32_t m_iOpvarIndex; // 0x540 // MNetworkEnable - bool m_bUseAutoCompare; // 0x534 + bool m_bUseAutoCompare; // 0x544 }; // Alignment: 21 -// Size: 0x638 +// Size: 0x648 class CSoundOpvarSetPointEntity : public CSoundOpvarSetPointBase { public: - CEntityIOOutput m_OnEnter; // 0x538 - CEntityIOOutput m_OnExit; // 0x560 - bool m_bAutoDisable; // 0x588 + CEntityIOOutput m_OnEnter; // 0x548 + CEntityIOOutput m_OnExit; // 0x570 + bool m_bAutoDisable; // 0x598 private: - [[maybe_unused]] uint8_t __pad0589[0x43]; // 0x589 + [[maybe_unused]] uint8_t __pad0599[0x43]; // 0x599 public: - float m_flDistanceMin; // 0x5cc - float m_flDistanceMax; // 0x5d0 - float m_flDistanceMapMin; // 0x5d4 - float m_flDistanceMapMax; // 0x5d8 - float m_flOcclusionRadius; // 0x5dc - float m_flOcclusionMin; // 0x5e0 - float m_flOcclusionMax; // 0x5e4 - float m_flValSetOnDisable; // 0x5e8 - bool m_bSetValueOnDisable; // 0x5ec + float m_flDistanceMin; // 0x5dc + float m_flDistanceMax; // 0x5e0 + float m_flDistanceMapMin; // 0x5e4 + float m_flDistanceMapMax; // 0x5e8 + float m_flOcclusionRadius; // 0x5ec + float m_flOcclusionMin; // 0x5f0 + float m_flOcclusionMax; // 0x5f4 + float m_flValSetOnDisable; // 0x5f8 + bool m_bSetValueOnDisable; // 0x5fc private: - [[maybe_unused]] uint8_t __pad05ed[0x3]; // 0x5ed + [[maybe_unused]] uint8_t __pad05fd[0x3]; // 0x5fd public: - int32_t m_nSimulationMode; // 0x5f0 - int32_t m_nVisibilitySamples; // 0x5f4 - Vector m_vDynamicProxyPoint; // 0x5f8 - float m_flDynamicMaximumOcclusion; // 0x604 - CEntityHandle m_hDynamicEntity; // 0x608 + int32_t m_nSimulationMode; // 0x600 + int32_t m_nVisibilitySamples; // 0x604 + Vector m_vDynamicProxyPoint; // 0x608 + float m_flDynamicMaximumOcclusion; // 0x614 + CEntityHandle m_hDynamicEntity; // 0x618 private: - [[maybe_unused]] uint8_t __pad060c[0x4]; // 0x60c + [[maybe_unused]] uint8_t __pad061c[0x4]; // 0x61c public: - CUtlSymbolLarge m_iszDynamicEntityName; // 0x610 - float m_flPathingDistanceNormFactor; // 0x618 - Vector m_vPathingSourcePos; // 0x61c - Vector m_vPathingListenerPos; // 0x628 + CUtlSymbolLarge m_iszDynamicEntityName; // 0x620 + float m_flPathingDistanceNormFactor; // 0x628 + Vector m_vPathingSourcePos; // 0x62c + Vector m_vPathingListenerPos; // 0x638 }; // Alignment: 9 -// Size: 0x6a0 +// Size: 0x6b0 class CSoundOpvarSetAABBEntity : public CSoundOpvarSetPointEntity { public: - Vector m_vDistanceInnerMins; // 0x638 - Vector m_vDistanceInnerMaxs; // 0x644 - Vector m_vDistanceOuterMins; // 0x650 - Vector m_vDistanceOuterMaxs; // 0x65c - int32_t m_nAABBDirection; // 0x668 - Vector m_vInnerMins; // 0x66c - Vector m_vInnerMaxs; // 0x678 - Vector m_vOuterMins; // 0x684 - Vector m_vOuterMaxs; // 0x690 + Vector m_vDistanceInnerMins; // 0x648 + Vector m_vDistanceInnerMaxs; // 0x654 + Vector m_vDistanceOuterMins; // 0x660 + Vector m_vDistanceOuterMaxs; // 0x66c + int32_t m_nAABBDirection; // 0x678 + Vector m_vInnerMins; // 0x67c + Vector m_vInnerMaxs; // 0x688 + Vector m_vOuterMins; // 0x694 + Vector m_vOuterMaxs; // 0x6a0 }; // Alignment: 0 -// Size: 0x6a0 +// Size: 0x6b0 class CSoundOpvarSetOBBEntity : public CSoundOpvarSetAABBEntity { public: @@ -6413,38 +5435,34 @@ public: }; // Alignment: 3 -// Size: 0x660 +// Size: 0x670 class CSoundOpvarSetPathCornerEntity : public CSoundOpvarSetPointEntity { -private: - [[maybe_unused]] uint8_t __pad0638[0x18]; // 0x638 public: - float m_flDistMinSqr; // 0x650 - float m_flDistMaxSqr; // 0x654 - CUtlSymbolLarge m_iszPathCornerEntityName; // 0x658 + float m_flDistMinSqr; // 0x660 + float m_flDistMaxSqr; // 0x664 + CUtlSymbolLarge m_iszPathCornerEntityName; // 0x668 }; // Alignment: 8 -// Size: 0x578 +// Size: 0x588 class CSoundOpvarSetOBBWindEntity : public CSoundOpvarSetPointBase { public: - Vector m_vMins; // 0x538 - Vector m_vMaxs; // 0x544 - Vector m_vDistanceMins; // 0x550 - Vector m_vDistanceMaxs; // 0x55c - float m_flWindMin; // 0x568 - float m_flWindMax; // 0x56c - float m_flWindMapMin; // 0x570 - float m_flWindMapMax; // 0x574 + Vector m_vMins; // 0x548 + Vector m_vMaxs; // 0x554 + Vector m_vDistanceMins; // 0x560 + Vector m_vDistanceMaxs; // 0x56c + float m_flWindMin; // 0x578 + float m_flWindMax; // 0x57c + float m_flWindMapMin; // 0x580 + float m_flWindMapMax; // 0x584 }; // Alignment: 16 // Size: 0xa0 class CTakeDamageInfo { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: Vector m_vecDamageForce; // 0x8 Vector m_vecDamagePosition; // 0x14 @@ -6471,8 +5489,6 @@ private: [[maybe_unused]] uint8_t __pad0080[0x18]; // 0x80 public: bool m_bInTakeDamageFlow; // 0x98 - - // Static fields: static CTakeDamageInfo &Get_EmptyInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CTakeDamageInfo")->m_static_fields[0]->m_instance);}; }; @@ -6500,12 +5516,8 @@ public: // Size: 0x20 class CTakeDamageSummaryScopeGuard { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: CUtlVector< SummaryTakeDamageInfo_t* > m_vecSummaries; // 0x8 - - // Static fields: static SummaryTakeDamageInfo_t &Get_EmptySummary(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CTakeDamageSummaryScopeGuard")->m_static_fields[0]->m_instance);}; }; @@ -6521,8 +5533,6 @@ public: // Size: 0x60 class CAttributeList { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkEnable // MNetworkTypeAlias "CUtlVector< CEconItemAttribute >" @@ -6534,8 +5544,6 @@ public: // Size: 0x48 class CEconItemAttribute { -private: - [[maybe_unused]] uint8_t __pad0000[0x30]; // 0x0 public: // MNetworkEnable uint16_t m_iAttributeDefinitionIndex; // 0x30 @@ -6557,18 +5565,14 @@ public: // Size: 0x8 class IEconItemInterface { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: - // No members available + uint8_t __pad0000[0x8]; // Autoaligned }; // Alignment: 6 // Size: 0x50 class CAttributeManager { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: CUtlVector< CHandle< CBaseEntity > > m_Providers; // 0x8 // MNetworkEnable @@ -6598,8 +5602,6 @@ public: // Size: 0x278 class CEconItemView : public IEconItemInterface { -private: - [[maybe_unused]] uint8_t __pad0008[0x30]; // 0x8 public: // MNetworkEnable uint16_t m_iItemDefinitionIndex; // 0x38 @@ -6643,10 +5645,8 @@ public: // Size: 0x8 class IHasAttributes { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: - // No members available + uint8_t __pad0000[0x8]; // Autoaligned }; // Alignment: 2 @@ -6662,8 +5662,6 @@ public: // Size: 0x18 struct EntitySpottedState_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MNetworkEnable // MNetworkChangeCallback "OnIsSpottedChanged" @@ -6677,57 +5675,55 @@ public: }; // Alignment: 3 -// Size: 0x4b0 +// Size: 0x4c0 class SpawnPoint : public CServerOnlyPointEntity { public: - int32_t m_iPriority; // 0x4a0 - bool m_bEnabled; // 0x4a4 + int32_t m_iPriority; // 0x4b0 + bool m_bEnabled; // 0x4b4 private: - [[maybe_unused]] uint8_t __pad04a5[0x3]; // 0x4a5 + [[maybe_unused]] uint8_t __pad04b5[0x3]; // 0x4b5 public: - int32_t m_nType; // 0x4a8 + int32_t m_nType; // 0x4b8 }; // Alignment: 9 -// Size: 0x4e8 +// Size: 0x4f8 class SpawnPointCoopEnemy : public SpawnPoint { public: - CUtlSymbolLarge m_szWeaponsToGive; // 0x4b0 - CUtlSymbolLarge m_szPlayerModelToUse; // 0x4b8 - int32_t m_nArmorToSpawnWith; // 0x4c0 - SpawnPointCoopEnemy::BotDefaultBehavior_t m_nDefaultBehavior; // 0x4c4 - int32_t m_nBotDifficulty; // 0x4c8 - bool m_bIsAgressive; // 0x4cc - bool m_bStartAsleep; // 0x4cd + CUtlSymbolLarge m_szWeaponsToGive; // 0x4c0 + CUtlSymbolLarge m_szPlayerModelToUse; // 0x4c8 + int32_t m_nArmorToSpawnWith; // 0x4d0 + SpawnPointCoopEnemy::BotDefaultBehavior_t m_nDefaultBehavior; // 0x4d4 + int32_t m_nBotDifficulty; // 0x4d8 + bool m_bIsAgressive; // 0x4dc + bool m_bStartAsleep; // 0x4dd private: - [[maybe_unused]] uint8_t __pad04ce[0x2]; // 0x4ce + [[maybe_unused]] uint8_t __pad04de[0x2]; // 0x4de public: - float m_flHideRadius; // 0x4d0 + float m_flHideRadius; // 0x4e0 private: - [[maybe_unused]] uint8_t __pad04d4[0xc]; // 0x4d4 + [[maybe_unused]] uint8_t __pad04e4[0xc]; // 0x4e4 public: - CUtlSymbolLarge m_szBehaviorTreeFile; // 0x4e0 + CUtlSymbolLarge m_szBehaviorTreeFile; // 0x4f0 }; // Alignment: 1 -// Size: 0x4a8 +// Size: 0x4b8 class CCSGameRulesProxy : public CGameRulesProxy { public: // MNetworkEnable // MNetworkTypeAlias "CCSGameRules*" // MNetworkPriority "32" - CCSGameRules* m_pGameRules; // 0x4a0 + CCSGameRules* m_pGameRules; // 0x4b0 }; // Alignment: 5 // Size: 0x198 class CRetakeGameRules { -private: - [[maybe_unused]] uint8_t __pad0000[0xf8]; // 0x0 public: // MNetworkEnable int32_t m_nMatchSeed; // 0xf8 @@ -6748,8 +5744,6 @@ public: // Size: 0x1c98 class CSurvivalGameRules { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: bool m_bBoundsInitialized; // 0x8 private: @@ -6830,18 +5824,14 @@ public: // Size: 0x1 class QuestProgress { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 13 // Size: 0x68 struct CSPerRoundStats_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x30]; // 0x0 public: // MNetworkEnable int32_t m_iKills; // 0x30 @@ -6909,25 +5899,25 @@ public: }; // Alignment: 4 -// Size: 0x730 +// Size: 0x740 class CCSGO_TeamPreviewCharacterPosition : public CBaseEntity { public: // MNetworkEnable - int32_t m_nOrdinal; // 0x4a0 + int32_t m_nOrdinal; // 0x4b0 private: - [[maybe_unused]] uint8_t __pad04a4[0x4]; // 0x4a4 + [[maybe_unused]] uint8_t __pad04b4[0x4]; // 0x4b4 public: // MNetworkEnable - CUtlString m_sWeaponName; // 0x4a8 + CUtlString m_sWeaponName; // 0x4b8 // MNetworkEnable - uint64_t m_xuid; // 0x4b0 + uint64_t m_xuid; // 0x4c0 // MNetworkEnable - CEconItemView m_weaponItem; // 0x4b8 + CEconItemView m_weaponItem; // 0x4c8 }; // Alignment: 0 -// Size: 0x730 +// Size: 0x740 class CCSGO_TeamSelectCharacterPosition : public CCSGO_TeamPreviewCharacterPosition { public: @@ -6935,7 +5925,7 @@ public: }; // Alignment: 0 -// Size: 0x730 +// Size: 0x740 class CCSGO_TeamSelectTerroristPosition : public CCSGO_TeamSelectCharacterPosition { public: @@ -6943,7 +5933,7 @@ public: }; // Alignment: 0 -// Size: 0x730 +// Size: 0x740 class CCSGO_TeamSelectCounterTerroristPosition : public CCSGO_TeamSelectCharacterPosition { public: @@ -6951,7 +5941,7 @@ public: }; // Alignment: 0 -// Size: 0x730 +// Size: 0x740 class CCSGO_TeamIntroCharacterPosition : public CCSGO_TeamPreviewCharacterPosition { public: @@ -6959,7 +5949,7 @@ public: }; // Alignment: 0 -// Size: 0x730 +// Size: 0x740 class CCSGO_TeamIntroTerroristPosition : public CCSGO_TeamIntroCharacterPosition { public: @@ -6967,29 +5957,53 @@ public: }; // Alignment: 0 -// Size: 0x730 +// Size: 0x740 class CCSGO_TeamIntroCounterTerroristPosition : public CCSGO_TeamIntroCharacterPosition { public: // No members available }; +// Alignment: 0 +// Size: 0x4b0 +class CCSMinimapBoundary : public CBaseEntity +{ +public: + // No members available +}; + // Alignment: 0 // Size: 0x120 class CCSGOPlayerAnimGraphState { -private: - [[maybe_unused]] uint8_t __pad0000[0x120]; // 0x0 public: - // No members available + uint8_t __pad0000[0x120]; // Autoaligned +}; + +// Alignment: 2 +// Size: 0x38 +struct WeaponPurchaseCount_t +{ +public: + // MNetworkEnable + uint16_t m_nItemDefIndex; // 0x30 + // MNetworkEnable + uint16_t m_nCount; // 0x32 +}; + +// Alignment: 1 +// Size: 0x58 +struct WeaponPurchaseTracker_t +{ +public: + // MNetworkEnable + CUtlVectorEmbeddedNetworkVar< WeaponPurchaseCount_t > m_weaponPurchases; // 0x8 }; // Alignment: 4 -// Size: 0xa70 +// Size: 0x328 class CCSPlayer_ActionTrackingServices : public CPlayerPawnComponent { -private: - [[maybe_unused]] uint8_t __pad0040[0x1f0]; // 0x40 public: CBasePlayerWeapon* m_lastWeaponBeforeC4AutoSwitch; // 0x230 private: @@ -6998,31 +6012,29 @@ public: // MNetworkEnable bool m_bIsRescuing; // 0x268 private: - [[maybe_unused]] uint8_t __pad0269[0x3]; // 0x269 + [[maybe_unused]] uint8_t __pad0269[0x7]; // 0x269 public: // MNetworkEnable - int32_t m_iWeaponPurchasesThisMatch[256]; // 0x26c + WeaponPurchaseTracker_t m_weaponPurchasesThisMatch; // 0x270 // MNetworkEnable - int32_t m_iWeaponPurchasesThisRound[256]; // 0x66c + WeaponPurchaseTracker_t m_weaponPurchasesThisRound; // 0x2c8 }; // Alignment: 5 -// Size: 0x4c8 +// Size: 0x4d8 class CPlayerPing : public CBaseEntity { -private: - [[maybe_unused]] uint8_t __pad04a0[0x8]; // 0x4a0 public: // MNetworkEnable - CHandle< CBaseEntity > m_hPlayer; // 0x4a8 + CHandle< CBaseEntity > m_hPlayer; // 0x4b8 // MNetworkEnable - CHandle< CBaseEntity > m_hPingedEntity; // 0x4ac + CHandle< CBaseEntity > m_hPingedEntity; // 0x4bc // MNetworkEnable - int32_t m_iType; // 0x4b0 + int32_t m_iType; // 0x4c0 // MNetworkEnable - bool m_bUrgent; // 0x4b4 + bool m_bUrgent; // 0x4c4 // MNetworkEnable - char m_szPlaceName[18]; // 0x4b5 + char m_szPlaceName[18]; // 0x4c5 }; // Alignment: 2 @@ -7036,29 +6048,29 @@ public: }; // Alignment: 10 -// Size: 0x538 +// Size: 0x548 class CCSPlayerResource : public CBaseEntity { public: // MNetworkEnable - bool m_bHostageAlive[12]; // 0x4a0 + bool m_bHostageAlive[12]; // 0x4b0 // MNetworkEnable - bool m_isHostageFollowingSomeone[12]; // 0x4ac + bool m_isHostageFollowingSomeone[12]; // 0x4bc // MNetworkEnable - CEntityIndex m_iHostageEntityIDs[12]; // 0x4b8 + CEntityIndex m_iHostageEntityIDs[12]; // 0x4c8 // MNetworkEnable - Vector m_bombsiteCenterA; // 0x4e8 + Vector m_bombsiteCenterA; // 0x4f8 // MNetworkEnable - Vector m_bombsiteCenterB; // 0x4f4 + Vector m_bombsiteCenterB; // 0x504 // MNetworkEnable - int32_t m_hostageRescueX[4]; // 0x500 + int32_t m_hostageRescueX[4]; // 0x510 // MNetworkEnable - int32_t m_hostageRescueY[4]; // 0x510 + int32_t m_hostageRescueY[4]; // 0x520 // MNetworkEnable - int32_t m_hostageRescueZ[4]; // 0x520 + int32_t m_hostageRescueZ[4]; // 0x530 // MNetworkEnable - bool m_bEndMatchNextMapAllVoted; // 0x530 - bool m_foundGoalPositions; // 0x531 + bool m_bEndMatchNextMapAllVoted; // 0x540 + bool m_foundGoalPositions; // 0x541 }; // Alignment: 1 @@ -7071,12 +6083,12 @@ public: }; // Alignment: 2 -// Size: 0x1a8 +// Size: 0x1a0 class CCSPlayer_CameraServices : public CPlayer_CameraServices { public: - CUtlVector< CHandle< CBaseEntity > > m_hTriggerFogList; // 0x188 - CHandle< CBaseEntity > m_hLastFogTrigger; // 0x1a0 + CUtlVector< CHandle< CBaseEntity > > m_hTriggerFogList; // 0x180 + CHandle< CBaseEntity > m_hLastFogTrigger; // 0x198 }; // Alignment: 2 @@ -7090,8 +6102,8 @@ public: CHandle< CBaseEntity > m_hCarriedHostageProp; // 0x44 }; -// Alignment: 3 -// Size: 0x48 +// Alignment: 8 +// Size: 0x50 class CCSPlayer_ItemServices : public CPlayer_ItemServices { public: @@ -7101,94 +6113,113 @@ public: bool m_bHasHelmet; // 0x41 // MNetworkEnable bool m_bHasHeavyArmor; // 0x42 + // MNetworkEnable + bool m_bKevlarIsRefundable; // 0x43 + // MNetworkEnable + bool m_bAssaultSuitIsRefundable; // 0x44 + // MNetworkEnable + bool m_bDefuserIsRefundable; // 0x45 +private: + [[maybe_unused]] uint8_t __pad0046[0x2]; // 0x46 +public: + // MNetworkEnable + int32_t m_nPrevArmorValue; // 0x48 + // MNetworkEnable + bool m_bPrevHadHelmet; // 0x4c }; -// Alignment: 35 -// Size: 0x13c0 +// Alignment: 38 +// Size: 0x13e0 class CCSPlayer_MovementServices : public CPlayer_MovementServices_Humanoid { public: // MNetworkEnable - float m_flMaxFallVelocity; // 0x208 + float m_flMaxFallVelocity; // 0x218 // MNetworkEnable // MNetworkEncoder - Vector m_vecLadderNormal; // 0x20c + Vector m_vecLadderNormal; // 0x21c // MNetworkEnable - int32_t m_nLadderSurfacePropIndex; // 0x218 + int32_t m_nLadderSurfacePropIndex; // 0x228 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - bool m_bAllowAutoMovement; // 0x21c + bool m_bAllowAutoMovement; // 0x22c private: - [[maybe_unused]] uint8_t __pad021d[0x3]; // 0x21d + [[maybe_unused]] uint8_t __pad022d[0x3]; // 0x22d public: // MNetworkEnable - float m_flDuckAmount; // 0x220 + float m_flDuckAmount; // 0x230 // MNetworkEnable - float m_flDuckSpeed; // 0x224 + float m_flDuckSpeed; // 0x234 // MNetworkEnable - bool m_bDuckOverride; // 0x228 + bool m_bDuckOverride; // 0x238 private: - [[maybe_unused]] uint8_t __pad0229[0x3]; // 0x229 + [[maybe_unused]] uint8_t __pad0239[0x3]; // 0x239 public: - float m_flDuckOffset; // 0x22c + float m_flDuckOffset; // 0x23c // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" // MNetworkPriority "32" - uint32_t m_nDuckTimeMsecs; // 0x230 + uint32_t m_nDuckTimeMsecs; // 0x240 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - uint32_t m_nDuckJumpTimeMsecs; // 0x234 + uint32_t m_nDuckJumpTimeMsecs; // 0x244 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - uint32_t m_nJumpTimeMsecs; // 0x238 + uint32_t m_nJumpTimeMsecs; // 0x248 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - float m_flLastDuckTime; // 0x23c + float m_flLastDuckTime; // 0x24c private: - [[maybe_unused]] uint8_t __pad0240[0x8]; // 0x240 + [[maybe_unused]] uint8_t __pad0250[0x8]; // 0x250 public: - Vector2D m_vecLastPositionAtFullCrouchSpeed; // 0x248 - bool m_duckUntilOnGround; // 0x250 - bool m_bHasWalkMovedSinceLastJump; // 0x251 - bool m_bInStuckTest; // 0x252 + Vector2D m_vecLastPositionAtFullCrouchSpeed; // 0x258 + bool m_duckUntilOnGround; // 0x260 + bool m_bHasWalkMovedSinceLastJump; // 0x261 + bool m_bInStuckTest; // 0x262 private: - [[maybe_unused]] uint8_t __pad0253[0x5]; // 0x253 + [[maybe_unused]] uint8_t __pad0263[0x5]; // 0x263 public: - uint64_t m_CachedGetPointContents[3][64]; // 0x258 - Vector m_CachedGetPointContentsPoint[3][64]; // 0x858 + uint64_t m_CachedGetPointContents[3][64]; // 0x268 + Vector m_CachedGetPointContentsPoint[3][64]; // 0x868 private: - [[maybe_unused]] uint8_t __pad1158[0x8]; // 0x1158 + [[maybe_unused]] uint8_t __pad1168[0x8]; // 0x1168 public: - float m_flStuckCheckTime[2][64]; // 0x1160 - int32_t m_nTraceCount; // 0x1360 - int32_t m_StuckLast; // 0x1364 - bool m_bSpeedCropped; // 0x1368 + float m_flStuckCheckTime[2][64]; // 0x1170 + int32_t m_nTraceCount; // 0x1370 + int32_t m_StuckLast; // 0x1374 + bool m_bSpeedCropped; // 0x1378 private: - [[maybe_unused]] uint8_t __pad1369[0x3]; // 0x1369 + [[maybe_unused]] uint8_t __pad1379[0x3]; // 0x1379 public: - int32_t m_nOldWaterLevel; // 0x136c - float m_flWaterEntryTime; // 0x1370 - Vector m_vecForward; // 0x1374 - Vector m_vecLeft; // 0x1380 - Vector m_vecUp; // 0x138c - Vector m_vecPreviouslyPredictedOrigin; // 0x1398 - bool m_bMadeFootstepNoise; // 0x13a4 + int32_t m_nOldWaterLevel; // 0x137c + float m_flWaterEntryTime; // 0x1380 + Vector m_vecForward; // 0x1384 + Vector m_vecLeft; // 0x1390 + Vector m_vecUp; // 0x139c + Vector m_vecPreviouslyPredictedOrigin; // 0x13a8 + bool m_bMadeFootstepNoise; // 0x13b4 private: - [[maybe_unused]] uint8_t __pad13a5[0x3]; // 0x13a5 + [[maybe_unused]] uint8_t __pad13b5[0x3]; // 0x13b5 public: - int32_t m_iFootsteps; // 0x13a8 - int32_t m_nRoundFootstepsMade; // 0x13ac + int32_t m_iFootsteps; // 0x13b8 + int32_t m_nRoundFootstepsMade; // 0x13bc // MNetworkEnable - bool m_bOldJumpPressed; // 0x13b0 + bool m_bOldJumpPressed; // 0x13c0 private: - [[maybe_unused]] uint8_t __pad13b1[0x3]; // 0x13b1 + [[maybe_unused]] uint8_t __pad13c1[0x3]; // 0x13c1 public: // MNetworkEnable - float m_flJumpUntil; // 0x13b4 + float m_flJumpUntil; // 0x13c4 // MNetworkEnable - float m_flJumpVel; // 0x13b8 + float m_flJumpVel; // 0x13c8 // MNetworkEnable - GameTime_t m_fStashGrenadeParameterWhen; // 0x13bc + GameTime_t m_fStashGrenadeParameterWhen; // 0x13cc + // MNetworkEnable + uint64_t m_nButtonDownMaskPrev; // 0x13d0 + // MNetworkEnable + float m_flOffsetTickCompleteTime; // 0x13d8 + // MNetworkEnable + float m_flOffsetTickStashedSpeed; // 0x13dc }; // Alignment: 0 @@ -7304,8 +6335,6 @@ public: // Size: 0x70 class CDamageRecord { -private: - [[maybe_unused]] uint8_t __pad0000[0x28]; // 0x0 public: // MNetworkEnable CHandle< CCSPlayerPawnBase > m_PlayerDamager; // 0x28 @@ -7375,7 +6404,7 @@ public: }; // Alignment: 9 -// Size: 0x910 +// Size: 0x8f8 class CCSPlayerController_InventoryServices : public CPlayerControllerComponent { public: @@ -7395,24 +6424,22 @@ public: // MNetworkEnable int32_t m_nPersonaDataPublicCommendsFriendly; // 0x68 private: - [[maybe_unused]] uint8_t __pad006c[0x7fc]; // 0x6c + [[maybe_unused]] uint8_t __pad006c[0x7e4]; // 0x6c public: - uint32_t m_unEquippedPlayerSprayIDs[1]; // 0x868 + uint32_t m_unEquippedPlayerSprayIDs[1]; // 0x850 private: - [[maybe_unused]] uint8_t __pad086c[0x4]; // 0x86c + [[maybe_unused]] uint8_t __pad0854[0x4]; // 0x854 public: // MNetworkEnable - CUtlVectorEmbeddedNetworkVar< CEconItemView > m_vecTerroristLoadoutCache; // 0x870 + CUtlVectorEmbeddedNetworkVar< CEconItemView > m_vecTerroristLoadoutCache; // 0x858 // MNetworkEnable - CUtlVectorEmbeddedNetworkVar< CEconItemView > m_vecCounterTerroristLoadoutCache; // 0x8c0 + CUtlVectorEmbeddedNetworkVar< CEconItemView > m_vecCounterTerroristLoadoutCache; // 0x8a8 }; -// Alignment: 198 -// Size: 0x3808 +// Alignment: 203 +// Size: 0x3858 class CCSGameRules : public CTeamplayRules { -private: - [[maybe_unused]] uint8_t __pad0090[0x8]; // 0x90 public: // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex @@ -7430,464 +6457,466 @@ public: // MNetworkEnable GameTime_t m_fWarmupPeriodStart; // 0xcc // MNetworkEnable - bool m_bTerroristTimeOutActive; // 0xd0 + int32_t m_nTotalPausedTicks; // 0xd0 // MNetworkEnable - bool m_bCTTimeOutActive; // 0xd1 + int32_t m_nPauseStartTick; // 0xd4 + // MNetworkEnable + bool m_bServerPaused; // 0xd8 + // MNetworkEnable + bool m_bGamePaused; // 0xd9 + // MNetworkEnable + bool m_bTerroristTimeOutActive; // 0xda + // MNetworkEnable + bool m_bCTTimeOutActive; // 0xdb + // MNetworkEnable + float m_flTerroristTimeOutRemaining; // 0xdc + // MNetworkEnable + float m_flCTTimeOutRemaining; // 0xe0 + // MNetworkEnable + int32_t m_nTerroristTimeOuts; // 0xe4 + // MNetworkEnable + int32_t m_nCTTimeOuts; // 0xe8 + // MNetworkEnable + bool m_bTechnicalTimeOut; // 0xec + // MNetworkEnable + bool m_bMatchWaitingForResume; // 0xed private: - [[maybe_unused]] uint8_t __pad00d2[0x2]; // 0xd2 + [[maybe_unused]] uint8_t __pad00ee[0x2]; // 0xee public: // MNetworkEnable - float m_flTerroristTimeOutRemaining; // 0xd4 + int32_t m_iRoundTime; // 0xf0 // MNetworkEnable - float m_flCTTimeOutRemaining; // 0xd8 + float m_fMatchStartTime; // 0xf4 // MNetworkEnable - int32_t m_nTerroristTimeOuts; // 0xdc + GameTime_t m_fRoundStartTime; // 0xf8 // MNetworkEnable - int32_t m_nCTTimeOuts; // 0xe0 + GameTime_t m_flRestartRoundTime; // 0xfc // MNetworkEnable - bool m_bTechnicalTimeOut; // 0xe4 - // MNetworkEnable - bool m_bMatchWaitingForResume; // 0xe5 + bool m_bGameRestart; // 0x100 private: - [[maybe_unused]] uint8_t __pad00e6[0x2]; // 0xe6 + [[maybe_unused]] uint8_t __pad0101[0x3]; // 0x101 public: // MNetworkEnable - int32_t m_iRoundTime; // 0xe8 + float m_flGameStartTime; // 0x104 // MNetworkEnable - float m_fMatchStartTime; // 0xec - // MNetworkEnable - GameTime_t m_fRoundStartTime; // 0xf0 - // MNetworkEnable - GameTime_t m_flRestartRoundTime; // 0xf4 - // MNetworkEnable - bool m_bGameRestart; // 0xf8 -private: - [[maybe_unused]] uint8_t __pad00f9[0x3]; // 0xf9 -public: - // MNetworkEnable - float m_flGameStartTime; // 0xfc - // MNetworkEnable - float m_timeUntilNextPhaseStarts; // 0x100 + float m_timeUntilNextPhaseStarts; // 0x108 // MNetworkEnable // MNetworkChangeCallback "OnGamePhaseChanged" - int32_t m_gamePhase; // 0x104 + int32_t m_gamePhase; // 0x10c // MNetworkEnable - int32_t m_totalRoundsPlayed; // 0x108 + int32_t m_totalRoundsPlayed; // 0x110 // MNetworkEnable - int32_t m_nRoundsPlayedThisPhase; // 0x10c + int32_t m_nRoundsPlayedThisPhase; // 0x114 // MNetworkEnable - int32_t m_nOvertimePlaying; // 0x110 + int32_t m_nOvertimePlaying; // 0x118 // MNetworkEnable - int32_t m_iHostagesRemaining; // 0x114 + int32_t m_iHostagesRemaining; // 0x11c // MNetworkEnable - bool m_bAnyHostageReached; // 0x118 + bool m_bAnyHostageReached; // 0x120 // MNetworkEnable - bool m_bMapHasBombTarget; // 0x119 + bool m_bMapHasBombTarget; // 0x121 // MNetworkEnable - bool m_bMapHasRescueZone; // 0x11a + bool m_bMapHasRescueZone; // 0x122 // MNetworkEnable - bool m_bMapHasBuyZone; // 0x11b + bool m_bMapHasBuyZone; // 0x123 // MNetworkEnable - bool m_bIsQueuedMatchmaking; // 0x11c + bool m_bIsQueuedMatchmaking; // 0x124 private: - [[maybe_unused]] uint8_t __pad011d[0x3]; // 0x11d + [[maybe_unused]] uint8_t __pad0125[0x3]; // 0x125 public: // MNetworkEnable - int32_t m_nQueuedMatchmakingMode; // 0x120 + int32_t m_nQueuedMatchmakingMode; // 0x128 // MNetworkEnable - bool m_bIsValveDS; // 0x124 + bool m_bIsValveDS; // 0x12c // MNetworkEnable - bool m_bLogoMap; // 0x125 + bool m_bLogoMap; // 0x12d // MNetworkEnable - bool m_bPlayAllStepSoundsOnServer; // 0x126 + bool m_bPlayAllStepSoundsOnServer; // 0x12e private: - [[maybe_unused]] uint8_t __pad0127[0x1]; // 0x127 + [[maybe_unused]] uint8_t __pad012f[0x1]; // 0x12f public: // MNetworkEnable - int32_t m_iNumGunGameProgressiveWeaponsCT; // 0x128 + int32_t m_iNumGunGameProgressiveWeaponsCT; // 0x130 // MNetworkEnable - int32_t m_iNumGunGameProgressiveWeaponsT; // 0x12c + int32_t m_iNumGunGameProgressiveWeaponsT; // 0x134 // MNetworkEnable - int32_t m_iSpectatorSlotCount; // 0x130 + int32_t m_iSpectatorSlotCount; // 0x138 // MNetworkEnable - int32_t m_GGProgressiveWeaponOrderCT[60]; // 0x134 + int32_t m_GGProgressiveWeaponOrderCT[60]; // 0x13c // MNetworkEnable - int32_t m_GGProgressiveWeaponOrderT[60]; // 0x224 + int32_t m_GGProgressiveWeaponOrderT[60]; // 0x22c // MNetworkEnable - int32_t m_GGProgressiveWeaponKillUpgradeOrderCT[60]; // 0x314 + int32_t m_GGProgressiveWeaponKillUpgradeOrderCT[60]; // 0x31c // MNetworkEnable - int32_t m_GGProgressiveWeaponKillUpgradeOrderT[60]; // 0x404 + int32_t m_GGProgressiveWeaponKillUpgradeOrderT[60]; // 0x40c // MNetworkEnable - int32_t m_MatchDevice; // 0x4f4 + int32_t m_MatchDevice; // 0x4fc // MNetworkEnable - bool m_bHasMatchStarted; // 0x4f8 + bool m_bHasMatchStarted; // 0x500 private: - [[maybe_unused]] uint8_t __pad04f9[0x3]; // 0x4f9 + [[maybe_unused]] uint8_t __pad0501[0x3]; // 0x501 public: // MNetworkEnable - float m_flDMBonusStartTime; // 0x4fc + float m_flDMBonusStartTime; // 0x504 // MNetworkEnable - float m_flDMBonusTimeLength; // 0x500 + float m_flDMBonusTimeLength; // 0x508 // MNetworkEnable - uint16_t m_unDMBonusWeaponLoadoutSlot; // 0x504 + uint16_t m_unDMBonusWeaponItemDefIndex; // 0x50c // MNetworkEnable - bool m_bDMBonusActive; // 0x506 + bool m_bDMBonusActive; // 0x50e private: - [[maybe_unused]] uint8_t __pad0507[0x1]; // 0x507 + [[maybe_unused]] uint8_t __pad050f[0x1]; // 0x50f public: // MNetworkEnable - int32_t m_nNextMapInMapgroup; // 0x508 + int32_t m_nNextMapInMapgroup; // 0x510 // MNetworkEnable - char m_szTournamentEventName[512]; // 0x50c + char m_szTournamentEventName[512]; // 0x514 // MNetworkEnable - char m_szTournamentEventStage[512]; // 0x70c + char m_szTournamentEventStage[512]; // 0x714 // MNetworkEnable - char m_szMatchStatTxt[512]; // 0x90c + char m_szMatchStatTxt[512]; // 0x914 // MNetworkEnable - char m_szTournamentPredictionsTxt[512]; // 0xb0c + char m_szTournamentPredictionsTxt[512]; // 0xb14 // MNetworkEnable - int32_t m_nTournamentPredictionsPct; // 0xd0c + int32_t m_nTournamentPredictionsPct; // 0xd14 // MNetworkEnable - GameTime_t m_flCMMItemDropRevealStartTime; // 0xd10 + GameTime_t m_flCMMItemDropRevealStartTime; // 0xd18 // MNetworkEnable - GameTime_t m_flCMMItemDropRevealEndTime; // 0xd14 + GameTime_t m_flCMMItemDropRevealEndTime; // 0xd1c // MNetworkEnable - bool m_bIsDroppingItems; // 0xd18 + bool m_bIsDroppingItems; // 0xd20 // MNetworkEnable - bool m_bIsQuestEligible; // 0xd19 + bool m_bIsQuestEligible; // 0xd21 private: - [[maybe_unused]] uint8_t __pad0d1a[0x2]; // 0xd1a + [[maybe_unused]] uint8_t __pad0d22[0x2]; // 0xd22 public: // MNetworkEnable - int32_t m_nGuardianModeWaveNumber; // 0xd1c + int32_t m_nGuardianModeWaveNumber; // 0xd24 // MNetworkEnable - int32_t m_nGuardianModeSpecialKillsRemaining; // 0xd20 + int32_t m_nGuardianModeSpecialKillsRemaining; // 0xd28 // MNetworkEnable - int32_t m_nGuardianModeSpecialWeaponNeeded; // 0xd24 - int32_t m_nGuardianGrenadesToGiveBots; // 0xd28 - int32_t m_nNumHeaviesToSpawn; // 0xd2c + int32_t m_nGuardianModeSpecialWeaponNeeded; // 0xd2c + int32_t m_nGuardianGrenadesToGiveBots; // 0xd30 + int32_t m_nNumHeaviesToSpawn; // 0xd34 // MNetworkEnable - uint32_t m_numGlobalGiftsGiven; // 0xd30 + uint32_t m_numGlobalGiftsGiven; // 0xd38 // MNetworkEnable - uint32_t m_numGlobalGifters; // 0xd34 + uint32_t m_numGlobalGifters; // 0xd3c // MNetworkEnable - uint32_t m_numGlobalGiftsPeriodSeconds; // 0xd38 + uint32_t m_numGlobalGiftsPeriodSeconds; // 0xd40 // MNetworkEnable - uint32_t m_arrFeaturedGiftersAccounts[4]; // 0xd3c + uint32_t m_arrFeaturedGiftersAccounts[4]; // 0xd44 // MNetworkEnable - uint32_t m_arrFeaturedGiftersGifts[4]; // 0xd4c + uint32_t m_arrFeaturedGiftersGifts[4]; // 0xd54 // MNetworkEnable - uint16_t m_arrProhibitedItemIndices[100]; // 0xd5c + uint16_t m_arrProhibitedItemIndices[100]; // 0xd64 // MNetworkEnable - uint32_t m_arrTournamentActiveCasterAccounts[4]; // 0xe24 + uint32_t m_arrTournamentActiveCasterAccounts[4]; // 0xe2c // MNetworkEnable - int32_t m_numBestOfMaps; // 0xe34 + int32_t m_numBestOfMaps; // 0xe3c // MNetworkEnable - int32_t m_nHalloweenMaskListSeed; // 0xe38 + int32_t m_nHalloweenMaskListSeed; // 0xe40 // MNetworkEnable - bool m_bBombDropped; // 0xe3c + bool m_bBombDropped; // 0xe44 // MNetworkEnable - bool m_bBombPlanted; // 0xe3d + bool m_bBombPlanted; // 0xe45 private: - [[maybe_unused]] uint8_t __pad0e3e[0x2]; // 0xe3e + [[maybe_unused]] uint8_t __pad0e46[0x2]; // 0xe46 public: // MNetworkEnable - int32_t m_iRoundWinStatus; // 0xe40 + int32_t m_iRoundWinStatus; // 0xe48 // MNetworkEnable - int32_t m_eRoundWinReason; // 0xe44 + int32_t m_eRoundWinReason; // 0xe4c // MNetworkEnable - bool m_bTCantBuy; // 0xe48 + bool m_bTCantBuy; // 0xe50 // MNetworkEnable - bool m_bCTCantBuy; // 0xe49 + bool m_bCTCantBuy; // 0xe51 private: - [[maybe_unused]] uint8_t __pad0e4a[0x2]; // 0xe4a + [[maybe_unused]] uint8_t __pad0e52[0x2]; // 0xe52 public: // MNetworkEnable - GameTime_t m_flGuardianBuyUntilTime; // 0xe4c + GameTime_t m_flGuardianBuyUntilTime; // 0xe54 // MNetworkEnable - int32_t m_iMatchStats_RoundResults[30]; // 0xe50 + int32_t m_iMatchStats_RoundResults[30]; // 0xe58 // MNetworkEnable - int32_t m_iMatchStats_PlayersAlive_CT[30]; // 0xec8 + int32_t m_iMatchStats_PlayersAlive_CT[30]; // 0xed0 // MNetworkEnable - int32_t m_iMatchStats_PlayersAlive_T[30]; // 0xf40 + int32_t m_iMatchStats_PlayersAlive_T[30]; // 0xf48 // MNetworkEnable - float m_TeamRespawnWaveTimes[32]; // 0xfb8 + float m_TeamRespawnWaveTimes[32]; // 0xfc0 // MNetworkEnable - GameTime_t m_flNextRespawnWave[32]; // 0x1038 + GameTime_t m_flNextRespawnWave[32]; // 0x1040 // MNetworkEnable - int32_t m_nServerQuestID; // 0x10b8 - bool m_bDontIncrementCoopWave; // 0x10bc - bool m_bSpawnedTerrorHuntHeavy; // 0x10bd + int32_t m_nServerQuestID; // 0x10c0 + // MNetworkEnable + Vector m_vMinimapMins; // 0x10c4 + // MNetworkEnable + Vector m_vMinimapMaxs; // 0x10d0 + // MNetworkEnable + float m_MinimapVerticalSectionHeights[8]; // 0x10dc + bool m_bDontIncrementCoopWave; // 0x10fc + bool m_bSpawnedTerrorHuntHeavy; // 0x10fd private: - [[maybe_unused]] uint8_t __pad10be[0x2]; // 0x10be + [[maybe_unused]] uint8_t __pad10fe[0x2]; // 0x10fe public: // MNetworkEnable - int32_t m_nEndMatchMapGroupVoteTypes[10]; // 0x10c0 + int32_t m_nEndMatchMapGroupVoteTypes[10]; // 0x1100 // MNetworkEnable - int32_t m_nEndMatchMapGroupVoteOptions[10]; // 0x10e8 + int32_t m_nEndMatchMapGroupVoteOptions[10]; // 0x1128 // MNetworkEnable - int32_t m_nEndMatchMapVoteWinner; // 0x1110 + int32_t m_nEndMatchMapVoteWinner; // 0x1150 // MNetworkEnable - int32_t m_iNumConsecutiveCTLoses; // 0x1114 + int32_t m_iNumConsecutiveCTLoses; // 0x1154 // MNetworkEnable - int32_t m_iNumConsecutiveTerroristLoses; // 0x1118 + int32_t m_iNumConsecutiveTerroristLoses; // 0x1158 private: - [[maybe_unused]] uint8_t __pad111c[0x1c]; // 0x111c + [[maybe_unused]] uint8_t __pad115c[0x1c]; // 0x115c public: - bool m_bHasHostageBeenTouched; // 0x1138 + bool m_bHasHostageBeenTouched; // 0x1178 private: - [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 + [[maybe_unused]] uint8_t __pad1179[0x3]; // 0x1179 public: - GameTime_t m_flIntermissionStartTime; // 0x113c - GameTime_t m_flIntermissionEndTime; // 0x1140 - bool m_bLevelInitialized; // 0x1144 + GameTime_t m_flIntermissionStartTime; // 0x117c + GameTime_t m_flIntermissionEndTime; // 0x1180 + bool m_bLevelInitialized; // 0x1184 private: - [[maybe_unused]] uint8_t __pad1145[0x3]; // 0x1145 + [[maybe_unused]] uint8_t __pad1185[0x3]; // 0x1185 public: - int32_t m_iTotalRoundsPlayed; // 0x1148 - int32_t m_iUnBalancedRounds; // 0x114c - bool m_endMatchOnRoundReset; // 0x1150 - bool m_endMatchOnThink; // 0x1151 + int32_t m_iTotalRoundsPlayed; // 0x1188 + int32_t m_iUnBalancedRounds; // 0x118c + bool m_endMatchOnRoundReset; // 0x1190 + bool m_endMatchOnThink; // 0x1191 private: - [[maybe_unused]] uint8_t __pad1152[0x2]; // 0x1152 + [[maybe_unused]] uint8_t __pad1192[0x2]; // 0x1192 public: - int32_t m_iFreezeTime; // 0x1154 - int32_t m_iNumTerrorist; // 0x1158 - int32_t m_iNumCT; // 0x115c - int32_t m_iNumSpawnableTerrorist; // 0x1160 - int32_t m_iNumSpawnableCT; // 0x1164 - CUtlVector< int32 > m_arrSelectedHostageSpawnIndices; // 0x1168 - bool m_bFirstConnected; // 0x1180 - bool m_bCompleteReset; // 0x1181 - bool m_bPickNewTeamsOnReset; // 0x1182 - bool m_bScrambleTeamsOnRestart; // 0x1183 - bool m_bSwapTeamsOnRestart; // 0x1184 + int32_t m_iFreezeTime; // 0x1194 + int32_t m_iNumTerrorist; // 0x1198 + int32_t m_iNumCT; // 0x119c + int32_t m_iNumSpawnableTerrorist; // 0x11a0 + int32_t m_iNumSpawnableCT; // 0x11a4 + CUtlVector< int32 > m_arrSelectedHostageSpawnIndices; // 0x11a8 + bool m_bFirstConnected; // 0x11c0 + bool m_bCompleteReset; // 0x11c1 + bool m_bPickNewTeamsOnReset; // 0x11c2 + bool m_bScrambleTeamsOnRestart; // 0x11c3 + bool m_bSwapTeamsOnRestart; // 0x11c4 private: - [[maybe_unused]] uint8_t __pad1185[0xb]; // 0x1185 + [[maybe_unused]] uint8_t __pad11c5[0xb]; // 0x11c5 public: - CUtlVector< int32 > m_nEndMatchTiedVotes; // 0x1190 + CUtlVector< int32 > m_nEndMatchTiedVotes; // 0x11d0 private: - [[maybe_unused]] uint8_t __pad11a8[0x4]; // 0x11a8 + [[maybe_unused]] uint8_t __pad11e8[0x4]; // 0x11e8 public: - bool m_bNeedToAskPlayersForContinueVote; // 0x11ac + bool m_bNeedToAskPlayersForContinueVote; // 0x11ec private: - [[maybe_unused]] uint8_t __pad11ad[0x3]; // 0x11ad + [[maybe_unused]] uint8_t __pad11ed[0x3]; // 0x11ed public: - uint32_t m_numQueuedMatchmakingAccounts; // 0x11b0 + uint32_t m_numQueuedMatchmakingAccounts; // 0x11f0 private: - [[maybe_unused]] uint8_t __pad11b4[0x4]; // 0x11b4 + [[maybe_unused]] uint8_t __pad11f4[0x4]; // 0x11f4 public: - char* m_pQueuedMatchmakingReservationString; // 0x11b8 - uint32_t m_numTotalTournamentDrops; // 0x11c0 - uint32_t m_numSpectatorsCountMax; // 0x11c4 - uint32_t m_numSpectatorsCountMaxTV; // 0x11c8 - uint32_t m_numSpectatorsCountMaxLnk; // 0x11cc + char* m_pQueuedMatchmakingReservationString; // 0x11f8 + uint32_t m_numTotalTournamentDrops; // 0x1200 + uint32_t m_numSpectatorsCountMax; // 0x1204 + uint32_t m_numSpectatorsCountMaxTV; // 0x1208 + uint32_t m_numSpectatorsCountMaxLnk; // 0x120c private: - [[maybe_unused]] uint8_t __pad11d0[0x8]; // 0x11d0 + [[maybe_unused]] uint8_t __pad1210[0x8]; // 0x1210 public: - bool m_bForceTeamChangeSilent; // 0x11d8 - bool m_bLoadingRoundBackupData; // 0x11d9 + bool m_bForceTeamChangeSilent; // 0x1218 + bool m_bLoadingRoundBackupData; // 0x1219 private: - [[maybe_unused]] uint8_t __pad11da[0x36]; // 0x11da + [[maybe_unused]] uint8_t __pad121a[0x36]; // 0x121a public: - int32_t m_nMatchInfoShowType; // 0x1210 - float m_flMatchInfoDecidedTime; // 0x1214 + int32_t m_nMatchInfoShowType; // 0x1250 + float m_flMatchInfoDecidedTime; // 0x1254 private: - [[maybe_unused]] uint8_t __pad1218[0x18]; // 0x1218 + [[maybe_unused]] uint8_t __pad1258[0x18]; // 0x1258 public: - float m_flCoopRespawnAndHealTime; // 0x1230 - int32_t m_coopBonusCoinsFound; // 0x1234 - bool m_coopBonusPistolsOnly; // 0x1238 - bool m_coopPlayersInDeploymentZone; // 0x1239 - bool m_coopMissionDeadPlayerRespawnEnabled; // 0x123a + float m_flCoopRespawnAndHealTime; // 0x1270 + int32_t m_coopBonusCoinsFound; // 0x1274 + bool m_coopBonusPistolsOnly; // 0x1278 + bool m_coopPlayersInDeploymentZone; // 0x1279 + bool m_coopMissionDeadPlayerRespawnEnabled; // 0x127a private: - [[maybe_unused]] uint8_t __pad123b[0x1]; // 0x123b + [[maybe_unused]] uint8_t __pad127b[0x1]; // 0x127b public: - int32_t mTeamDMLastWinningTeamNumber; // 0x123c - float mTeamDMLastThinkTime; // 0x1240 - float m_flTeamDMLastAnnouncementTime; // 0x1244 - int32_t m_iAccountTerrorist; // 0x1248 - int32_t m_iAccountCT; // 0x124c - int32_t m_iSpawnPointCount_Terrorist; // 0x1250 - int32_t m_iSpawnPointCount_CT; // 0x1254 - int32_t m_iMaxNumTerrorists; // 0x1258 - int32_t m_iMaxNumCTs; // 0x125c - int32_t m_iLoserBonus; // 0x1260 - int32_t m_iLoserBonusMostRecentTeam; // 0x1264 - float m_tmNextPeriodicThink; // 0x1268 - bool m_bVoiceWonMatchBragFired; // 0x126c + int32_t mTeamDMLastWinningTeamNumber; // 0x127c + float mTeamDMLastThinkTime; // 0x1280 + float m_flTeamDMLastAnnouncementTime; // 0x1284 + int32_t m_iAccountTerrorist; // 0x1288 + int32_t m_iAccountCT; // 0x128c + int32_t m_iSpawnPointCount_Terrorist; // 0x1290 + int32_t m_iSpawnPointCount_CT; // 0x1294 + int32_t m_iMaxNumTerrorists; // 0x1298 + int32_t m_iMaxNumCTs; // 0x129c + int32_t m_iLoserBonus; // 0x12a0 + int32_t m_iLoserBonusMostRecentTeam; // 0x12a4 + float m_tmNextPeriodicThink; // 0x12a8 + bool m_bVoiceWonMatchBragFired; // 0x12ac private: - [[maybe_unused]] uint8_t __pad126d[0x3]; // 0x126d + [[maybe_unused]] uint8_t __pad12ad[0x3]; // 0x12ad public: - float m_fWarmupNextChatNoticeTime; // 0x1270 + float m_fWarmupNextChatNoticeTime; // 0x12b0 private: - [[maybe_unused]] uint8_t __pad1274[0x4]; // 0x1274 + [[maybe_unused]] uint8_t __pad12b4[0x4]; // 0x12b4 public: - int32_t m_iHostagesRescued; // 0x1278 - int32_t m_iHostagesTouched; // 0x127c - float m_flNextHostageAnnouncement; // 0x1280 - bool m_bNoTerroristsKilled; // 0x1284 - bool m_bNoCTsKilled; // 0x1285 - bool m_bNoEnemiesKilled; // 0x1286 - bool m_bCanDonateWeapons; // 0x1287 + int32_t m_iHostagesRescued; // 0x12b8 + int32_t m_iHostagesTouched; // 0x12bc + float m_flNextHostageAnnouncement; // 0x12c0 + bool m_bNoTerroristsKilled; // 0x12c4 + bool m_bNoCTsKilled; // 0x12c5 + bool m_bNoEnemiesKilled; // 0x12c6 + bool m_bCanDonateWeapons; // 0x12c7 private: - [[maybe_unused]] uint8_t __pad1288[0x4]; // 0x1288 + [[maybe_unused]] uint8_t __pad12c8[0x4]; // 0x12c8 public: - float m_firstKillTime; // 0x128c + float m_firstKillTime; // 0x12cc private: - [[maybe_unused]] uint8_t __pad1290[0x4]; // 0x1290 + [[maybe_unused]] uint8_t __pad12d0[0x4]; // 0x12d0 public: - float m_firstBloodTime; // 0x1294 + float m_firstBloodTime; // 0x12d4 private: - [[maybe_unused]] uint8_t __pad1298[0x18]; // 0x1298 + [[maybe_unused]] uint8_t __pad12d8[0x18]; // 0x12d8 public: - bool m_hostageWasInjured; // 0x12b0 - bool m_hostageWasKilled; // 0x12b1 + bool m_hostageWasInjured; // 0x12f0 + bool m_hostageWasKilled; // 0x12f1 private: - [[maybe_unused]] uint8_t __pad12b2[0xe]; // 0x12b2 + [[maybe_unused]] uint8_t __pad12f2[0xe]; // 0x12f2 public: - bool m_bVoteCalled; // 0x12c0 - bool m_bServerVoteOnReset; // 0x12c1 + bool m_bVoteCalled; // 0x1300 + bool m_bServerVoteOnReset; // 0x1301 private: - [[maybe_unused]] uint8_t __pad12c2[0x2]; // 0x12c2 + [[maybe_unused]] uint8_t __pad1302[0x2]; // 0x1302 public: - float m_flVoteCheckThrottle; // 0x12c4 - bool m_bBuyTimeEnded; // 0x12c8 + float m_flVoteCheckThrottle; // 0x1304 + bool m_bBuyTimeEnded; // 0x1308 private: - [[maybe_unused]] uint8_t __pad12c9[0x3]; // 0x12c9 + [[maybe_unused]] uint8_t __pad1309[0x3]; // 0x1309 public: - int32_t m_nLastFreezeEndBeep; // 0x12cc - int32_t m_iHaveEscaped; // 0x12d0 - bool m_bMapHasEscapeZone; // 0x12d4 + int32_t m_nLastFreezeEndBeep; // 0x130c + bool m_bTargetBombed; // 0x1310 + bool m_bBombDefused; // 0x1311 + bool m_bMapHasBombZone; // 0x1312 + bool m_bGunGameRespawnWithBomb; // 0x1313 + float m_fGunGameBombRespawnTimer; // 0x1314 private: - [[maybe_unused]] uint8_t __pad12d5[0x3]; // 0x12d5 + [[maybe_unused]] uint8_t __pad1318[0x1c]; // 0x1318 public: - int32_t m_iNumEscapers; // 0x12d8 - int32_t m_iNumEscapeRounds; // 0x12dc - bool m_bTargetBombed; // 0x12e0 - bool m_bBombDefused; // 0x12e1 - bool m_bMapHasBombZone; // 0x12e2 - bool m_bGunGameRespawnWithBomb; // 0x12e3 - float m_fGunGameBombRespawnTimer; // 0x12e4 + Vector m_vecMainCTSpawnPos; // 0x1334 + CUtlVector< SpawnPoint* > m_CTSpawnPointsMasterList; // 0x1340 + CUtlVector< SpawnPoint* > m_TerroristSpawnPointsMasterList; // 0x1358 + int32_t m_iNextCTSpawnPoint; // 0x1370 + int32_t m_iNextTerroristSpawnPoint; // 0x1374 + CUtlVector< SpawnPoint* > m_CTSpawnPoints; // 0x1378 + CUtlVector< SpawnPoint* > m_TerroristSpawnPoints; // 0x1390 + bool m_bIsUnreservedGameServer; // 0x13a8 private: - [[maybe_unused]] uint8_t __pad12e8[0x1c]; // 0x12e8 + [[maybe_unused]] uint8_t __pad13a9[0x3]; // 0x13a9 public: - Vector m_vecMainCTSpawnPos; // 0x1304 - CUtlVector< SpawnPoint* > m_CTSpawnPointsMasterList; // 0x1310 - CUtlVector< SpawnPoint* > m_TerroristSpawnPointsMasterList; // 0x1328 - int32_t m_iNextCTSpawnPoint; // 0x1340 - int32_t m_iNextTerroristSpawnPoint; // 0x1344 - CUtlVector< SpawnPoint* > m_CTSpawnPoints; // 0x1348 - CUtlVector< SpawnPoint* > m_TerroristSpawnPoints; // 0x1360 - bool m_bIsUnreservedGameServer; // 0x1378 + float m_fAutobalanceDisplayTime; // 0x13ac private: - [[maybe_unused]] uint8_t __pad1379[0x3]; // 0x1379 + [[maybe_unused]] uint8_t __pad13b0[0x268]; // 0x13b0 public: - float m_fAutobalanceDisplayTime; // 0x137c + bool m_bAllowWeaponSwitch; // 0x1618 + bool m_bRoundTimeWarningTriggered; // 0x1619 private: - [[maybe_unused]] uint8_t __pad1380[0x268]; // 0x1380 + [[maybe_unused]] uint8_t __pad161a[0x2]; // 0x161a public: - bool m_bAllowWeaponSwitch; // 0x15e8 - bool m_bRoundTimeWarningTriggered; // 0x15e9 + GameTime_t m_phaseChangeAnnouncementTime; // 0x161c + float m_fNextUpdateTeamClanNamesTime; // 0x1620 + GameTime_t m_flLastThinkTime; // 0x1624 + float m_fAccumulatedRoundOffDamage; // 0x1628 + int32_t m_nShorthandedBonusLastEvalRound; // 0x162c private: - [[maybe_unused]] uint8_t __pad15ea[0x2]; // 0x15ea -public: - GameTime_t m_phaseChangeAnnouncementTime; // 0x15ec - float m_fNextUpdateTeamClanNamesTime; // 0x15f0 - GameTime_t m_flLastThinkTime; // 0x15f4 - float m_fAccumulatedRoundOffDamage; // 0x15f8 - int32_t m_nShorthandedBonusLastEvalRound; // 0x15fc -private: - [[maybe_unused]] uint8_t __pad1600[0x260]; // 0x1600 -public: - bool m_bHasTriggeredRoundStartMusic; // 0x1860 - bool m_bHasTriggeredCoopSpawnReset; // 0x1861 - bool m_bSwitchingTeamsAtRoundReset; // 0x1862 -private: - [[maybe_unused]] uint8_t __pad1863[0x1]; // 0x1863 -public: - int32_t m_iMaxGunGameProgressiveWeaponIndex; // 0x1864 -private: - [[maybe_unused]] uint8_t __pad1868[0x18]; // 0x1868 + [[maybe_unused]] uint8_t __pad1630[0x278]; // 0x1630 public: // MNetworkEnable - CSurvivalGameRules m_SurvivalRules; // 0x1880 - KeyValues3 m_BtGlobalBlackboard; // 0x3518 + bool m_bMatchAbortedDueToPlayerBan; // 0x18a8 + bool m_bHasTriggeredRoundStartMusic; // 0x18a9 + bool m_bHasTriggeredCoopSpawnReset; // 0x18aa + bool m_bSwitchingTeamsAtRoundReset; // 0x18ab + int32_t m_iMaxGunGameProgressiveWeaponIndex; // 0x18ac private: - [[maybe_unused]] uint8_t __pad3528[0x58]; // 0x3528 -public: - CHandle< CBaseEntity > m_hPlayerResource; // 0x3580 -private: - [[maybe_unused]] uint8_t __pad3584[0x4]; // 0x3584 + [[maybe_unused]] uint8_t __pad18b0[0x18]; // 0x18b0 public: // MNetworkEnable - CRetakeGameRules m_RetakeRules; // 0x3588 + CSurvivalGameRules m_SurvivalRules; // 0x18c8 + KeyValues3 m_BtGlobalBlackboard; // 0x3560 private: - [[maybe_unused]] uint8_t __pad3720[0x4c]; // 0x3720 + [[maybe_unused]] uint8_t __pad3570[0x58]; // 0x3570 public: - int32_t m_GuardianBotSkillLevelMax; // 0x376c - int32_t m_GuardianBotSkillLevelMin; // 0x3770 + CHandle< CBaseEntity > m_hPlayerResource; // 0x35c8 private: - [[maybe_unused]] uint8_t __pad3774[0x4]; // 0x3774 + [[maybe_unused]] uint8_t __pad35cc[0x4]; // 0x35cc public: - CUtlVector< int32 > m_arrTeamUniqueKillWeaponsMatch[4]; // 0x3778 - bool m_bTeamLastKillUsedUniqueWeaponMatch[4]; // 0x37d8 + // MNetworkEnable + CRetakeGameRules m_RetakeRules; // 0x35d0 private: - [[maybe_unused]] uint8_t __pad37dc[0x24]; // 0x37dc + [[maybe_unused]] uint8_t __pad3768[0x4c]; // 0x3768 +public: + int32_t m_GuardianBotSkillLevelMax; // 0x37b4 + int32_t m_GuardianBotSkillLevelMin; // 0x37b8 +private: + [[maybe_unused]] uint8_t __pad37bc[0x4]; // 0x37bc +public: + CUtlVector< int32 > m_arrTeamUniqueKillWeaponsMatch[4]; // 0x37c0 + bool m_bTeamLastKillUsedUniqueWeaponMatch[4]; // 0x3820 +private: + [[maybe_unused]] uint8_t __pad3824[0x24]; // 0x3824 public: // MNetworkEnable // MNetworkChangeCallback "OnMatchEndCountChanged" - uint8_t m_nMatchEndCount; // 0x3800 + uint8_t m_nMatchEndCount; // 0x3848 // MNetworkEnable // MNetworkChangeCallback "OnTeamIntroPeriodChanged" - bool m_bTeamIntroPeriod; // 0x3801 + bool m_bTeamIntroPeriod; // 0x3849 private: - [[maybe_unused]] uint8_t __pad3802[0x2]; // 0x3802 + [[maybe_unused]] uint8_t __pad384a[0x2]; // 0x384a public: - GameTime_t m_fTeamIntroPeriodEnd; // 0x3804 - - // Static fields: + GameTime_t m_fTeamIntroPeriodEnd; // 0x384c + bool m_bPlayedTeamIntroVO; // 0x3850 static int64_t &Get_m_nMapCycleTimeStamp(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CCSGameRules")->m_static_fields[0]->m_instance);}; static int32_t &Get_m_nMapCycleindex(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CCSGameRules")->m_static_fields[1]->m_instance);}; }; // Alignment: 14 -// Size: 0x5b0 +// Size: 0x5c0 class CDangerZoneController : public CBaseEntity { public: // MNetworkEnable - bool m_bDangerZoneControllerEnabled; // 0x4a0 + bool m_bDangerZoneControllerEnabled; // 0x4b0 // MNetworkEnable - bool m_bMissionControlledExplosions; // 0x4a1 + bool m_bMissionControlledExplosions; // 0x4b1 private: - [[maybe_unused]] uint8_t __pad04a2[0x2]; // 0x4a2 + [[maybe_unused]] uint8_t __pad04b2[0x2]; // 0x4b2 public: // MNetworkEnable - Vector m_vecEndGameCircleStart; // 0x4a4 + Vector m_vecEndGameCircleStart; // 0x4b4 // MNetworkEnable - Vector m_vecEndGameCircleEnd; // 0x4b0 + Vector m_vecEndGameCircleEnd; // 0x4c0 // MNetworkEnable - GameTime_t m_flStartTime; // 0x4bc + GameTime_t m_flStartTime; // 0x4cc // MNetworkEnable - float m_flFinalExpansionTime; // 0x4c0 + float m_flFinalExpansionTime; // 0x4d0 // MNetworkEnable - CHandle< CDangerZone > m_DangerZones[42]; // 0x4c4 + CHandle< CDangerZone > m_DangerZones[42]; // 0x4d4 // MNetworkEnable - GameTime_t m_flWaveEndTimes[5]; // 0x56c + GameTime_t m_flWaveEndTimes[5]; // 0x57c // MNetworkEnable - CHandle< CDangerZone > m_hTheFinalZone; // 0x580 - float m_flLastDangerZoneStatusLogged; // 0x584 - GameTime_t m_flLastDangerZoneDamageTime; // 0x588 - bool m_bFirstBombWarning; // 0x58c + CHandle< CDangerZone > m_hTheFinalZone; // 0x590 + float m_flLastDangerZoneStatusLogged; // 0x594 + GameTime_t m_flLastDangerZoneDamageTime; // 0x598 + bool m_bFirstBombWarning; // 0x59c private: - [[maybe_unused]] uint8_t __pad058d[0x3]; // 0x58d + [[maybe_unused]] uint8_t __pad059d[0x3]; // 0x59d public: - int32_t m_numWaveRewardsGranted; // 0x590 + int32_t m_numWaveRewardsGranted; // 0x5a0 private: - [[maybe_unused]] uint8_t __pad0594[0x4]; // 0x594 + [[maybe_unused]] uint8_t __pad05a4[0x4]; // 0x5a4 public: - CUtlVector< CPointEntity* > m_pGasCanLaunchers; // 0x598 + CUtlVector< CPointEntity* > m_pGasCanLaunchers; // 0x5a8 }; // Alignment: 1 @@ -7910,8 +6939,6 @@ public: // Size: 0x18 class CIronSightController { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: bool m_bIronSightAvailable; // 0x8 private: @@ -7923,21 +6950,17 @@ public: }; // Alignment: 1 -// Size: 0x4b0 +// Size: 0x4c0 class CPointDZParadropDenialRegion : public CServerOnlyPointEntity { -private: - [[maybe_unused]] uint8_t __pad04a0[0x8]; // 0x4a0 public: - float m_flRadius; // 0x4a8 + float m_flRadius; // 0x4b8 }; // Alignment: 3 // Size: 0x30 class CHintMessage { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: char* m_hintString; // 0x8 CUtlVector< char* > m_args; // 0x10 @@ -7948,8 +6971,6 @@ public: // Size: 0x30 class CHintMessageQueue { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: float m_tmMessageEnd; // 0x8 private: @@ -7960,7 +6981,7 @@ public: }; // Alignment: 1 -// Size: 0xc8 +// Size: 0xe0 class CCSPlayer_BuyServices : public CPlayerPawnComponent { public: @@ -7999,8 +7020,6 @@ public: // Size: 0x178 class CBaseIssue { -private: - [[maybe_unused]] uint8_t __pad0000[0x20]; // 0x0 public: char m_szTypeString[64]; // 0x20 char m_szDetailsString[260]; // 0x60 @@ -8011,83 +7030,91 @@ public: }; // Alignment: 14 -// Size: 0x660 +// Size: 0x670 class CVoteController : public CBaseEntity { public: // MNetworkEnable - int32_t m_iActiveIssueIndex; // 0x4a0 + int32_t m_iActiveIssueIndex; // 0x4b0 // MNetworkEnable - int32_t m_iOnlyTeamToVote; // 0x4a4 + int32_t m_iOnlyTeamToVote; // 0x4b4 // MNetworkEnable - int32_t m_nVoteOptionCount[5]; // 0x4a8 + int32_t m_nVoteOptionCount[5]; // 0x4b8 // MNetworkEnable - int32_t m_nPotentialVotes; // 0x4bc + int32_t m_nPotentialVotes; // 0x4cc // MNetworkEnable - bool m_bIsYesNoVote; // 0x4c0 + bool m_bIsYesNoVote; // 0x4d0 private: - [[maybe_unused]] uint8_t __pad04c1[0x7]; // 0x4c1 + [[maybe_unused]] uint8_t __pad04d1[0x7]; // 0x4d1 public: - CountdownTimer m_acceptingVotesTimer; // 0x4c8 - CountdownTimer m_executeCommandTimer; // 0x4e0 - CountdownTimer m_resetVoteTimer; // 0x4f8 - CUtlVector< uint64 > m_arrVotedUsers; // 0x510 - int32_t m_nVotesCast[64]; // 0x528 - CPlayerSlot m_playerHoldingVote; // 0x628 - int32_t m_nHighestCountIndex; // 0x62c - CUtlVector< CBaseIssue* > m_potentialIssues; // 0x630 - CUtlVector< char* > m_VoteOptions; // 0x648 + CountdownTimer m_acceptingVotesTimer; // 0x4d8 + CountdownTimer m_executeCommandTimer; // 0x4f0 + CountdownTimer m_resetVoteTimer; // 0x508 + CUtlVector< uint64 > m_arrVotedUsers; // 0x520 + int32_t m_nVotesCast[64]; // 0x538 + CPlayerSlot m_playerHoldingVote; // 0x638 + int32_t m_nHighestCountIndex; // 0x63c + CUtlVector< CBaseIssue* > m_potentialIssues; // 0x640 + CUtlVector< char* > m_VoteOptions; // 0x658 }; // Alignment: 22 -// Size: 0xeb8 +// Size: 0xec8 class CMapVetoPickController : public CBaseEntity { public: - bool m_bPlayedIntroVcd; // 0x4a0 - bool m_bNeedToPlayFiveSecondsRemaining; // 0x4a1 + bool m_bPlayedIntroVcd; // 0x4b0 + bool m_bNeedToPlayFiveSecondsRemaining; // 0x4b1 private: - [[maybe_unused]] uint8_t __pad04a2[0x1e]; // 0x4a2 + [[maybe_unused]] uint8_t __pad04b2[0x1e]; // 0x4b2 public: // MNetworkEnable - int32_t m_nDraftType; // 0x4c0 + int32_t m_nDraftType; // 0x4d0 // MNetworkEnable - int32_t m_nTeamWinningCoinToss; // 0x4c4 + int32_t m_nTeamWinningCoinToss; // 0x4d4 // MNetworkEnable - int32_t m_nTeamWithFirstChoice[64]; // 0x4c8 + int32_t m_nTeamWithFirstChoice[64]; // 0x4d8 // MNetworkEnable - int32_t m_nVoteMapIdsList[7]; // 0x5c8 + int32_t m_nVoteMapIdsList[7]; // 0x5d8 // MNetworkEnable - int32_t m_nAccountIDs[64]; // 0x5e4 + int32_t m_nAccountIDs[64]; // 0x5f4 // MNetworkEnable - int32_t m_nMapId0[64]; // 0x6e4 + int32_t m_nMapId0[64]; // 0x6f4 // MNetworkEnable - int32_t m_nMapId1[64]; // 0x7e4 + int32_t m_nMapId1[64]; // 0x7f4 // MNetworkEnable - int32_t m_nMapId2[64]; // 0x8e4 + int32_t m_nMapId2[64]; // 0x8f4 // MNetworkEnable - int32_t m_nMapId3[64]; // 0x9e4 + int32_t m_nMapId3[64]; // 0x9f4 // MNetworkEnable - int32_t m_nMapId4[64]; // 0xae4 + int32_t m_nMapId4[64]; // 0xaf4 // MNetworkEnable - int32_t m_nMapId5[64]; // 0xbe4 + int32_t m_nMapId5[64]; // 0xbf4 // MNetworkEnable - int32_t m_nStartingSide0[64]; // 0xce4 + int32_t m_nStartingSide0[64]; // 0xcf4 // MNetworkEnable - int32_t m_nCurrentPhase; // 0xde4 + int32_t m_nCurrentPhase; // 0xdf4 // MNetworkEnable - int32_t m_nPhaseStartTick; // 0xde8 + int32_t m_nPhaseStartTick; // 0xdf8 // MNetworkEnable - int32_t m_nPhaseDurationTicks; // 0xdec - CEntityOutputTemplate< CUtlSymbolLarge > m_OnMapVetoed; // 0xdf0 - CEntityOutputTemplate< CUtlSymbolLarge > m_OnMapPicked; // 0xe18 - CEntityOutputTemplate< int32 > m_OnSidesPicked; // 0xe40 - CEntityOutputTemplate< int32 > m_OnNewPhaseStarted; // 0xe68 - CEntityOutputTemplate< int32 > m_OnLevelTransition; // 0xe90 + int32_t m_nPhaseDurationTicks; // 0xdfc + CEntityOutputTemplate< CUtlSymbolLarge > m_OnMapVetoed; // 0xe00 + CEntityOutputTemplate< CUtlSymbolLarge > m_OnMapPicked; // 0xe28 + CEntityOutputTemplate< int32 > m_OnSidesPicked; // 0xe50 + CEntityOutputTemplate< int32 > m_OnNewPhaseStarted; // 0xe78 + CEntityOutputTemplate< int32 > m_OnLevelTransition; // 0xea0 }; // Alignment: 0 -// Size: 0x4a8 +// Size: 0x1 +class CCSPulseServerFuncs_Globals +{ +public: + uint8_t __pad0000[0x1]; // Autoaligned +}; + +// Alignment: 0 +// Size: 0x4b8 class CPointDZItemSpawn : public CServerOnlyPointEntity { public: @@ -8095,31 +7122,29 @@ public: }; // Alignment: 7 -// Size: 0x4d0 +// Size: 0x4e0 class CPointDZWeaponSpawn : public CPointDZItemSpawn { -private: - [[maybe_unused]] uint8_t __pad04a8[0x8]; // 0x4a8 public: - int32_t m_nGroupID; // 0x4b0 - float m_flDefaultWeight; // 0x4b4 - float m_flCurrentWeight; // 0x4b8 - CHandle< CBaseEntity > m_hItem; // 0x4bc - CUtlSymbolLarge m_iszDoorName; // 0x4c0 - CHandle< CDZDoor > m_hDoor; // 0x4c8 - int32_t m_nPrice; // 0x4cc + int32_t m_nGroupID; // 0x4c0 + float m_flDefaultWeight; // 0x4c4 + float m_flCurrentWeight; // 0x4c8 + CHandle< CBaseEntity > m_hItem; // 0x4cc + CUtlSymbolLarge m_iszDoorName; // 0x4d0 + CHandle< CDZDoor > m_hDoor; // 0x4d8 + int32_t m_nPrice; // 0x4dc }; // Alignment: 1 -// Size: 0x4c0 +// Size: 0x4d0 class CPointDZItemSpawnGroup : public CServerOnlyPointEntity { public: - float m_flRadius; // 0x4a0 + float m_flRadius; // 0x4b0 }; // Alignment: 0 -// Size: 0x4c8 +// Size: 0x4d8 class CPointDZWeaponSpawnGroup : public CPointDZItemSpawnGroup { public: @@ -8127,17 +7152,15 @@ public: }; // Alignment: 1 -// Size: 0x4b0 +// Size: 0x4c0 class CPointDZDroneGunSpawn : public CServerOnlyPointEntity { -private: - [[maybe_unused]] uint8_t __pad04a0[0x8]; // 0x4a0 public: - bool m_bSpawnAutomatically; // 0x4a8 + bool m_bSpawnAutomatically; // 0x4b8 }; // Alignment: 0 -// Size: 0x4a8 +// Size: 0x4b8 class CPointDZParachuteSpawn : public CServerOnlyPointEntity { public: @@ -8145,31 +7168,27 @@ public: }; // Alignment: 5 -// Size: 0x4f0 +// Size: 0x500 class CLogicEventListener : public CLogicalEntity { -private: - [[maybe_unused]] uint8_t __pad04a0[0x10]; // 0x4a0 public: - CUtlSymbolLarge m_iszEventName; // 0x4b0 - bool m_bIsEnabled; // 0x4b8 + CUtlSymbolLarge m_iszEventName; // 0x4c0 + bool m_bIsEnabled; // 0x4c8 private: - [[maybe_unused]] uint8_t __pad04b9[0x3]; // 0x4b9 + [[maybe_unused]] uint8_t __pad04c9[0x3]; // 0x4c9 public: - int32_t m_nTeam; // 0x4bc - bool m_bFetchEventData; // 0x4c0 + int32_t m_nTeam; // 0x4cc + bool m_bFetchEventData; // 0x4d0 private: - [[maybe_unused]] uint8_t __pad04c1[0x7]; // 0x4c1 + [[maybe_unused]] uint8_t __pad04d1[0x7]; // 0x4d1 public: - CEntityIOOutput m_OnEventFired; // 0x4c8 + CEntityIOOutput m_OnEventFired; // 0x4d8 }; // Alignment: 12 // Size: 0xd0 class CBot { -private: - [[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0 public: CCSPlayerPawnBase* m_pPlayer; // 0x10 bool m_bHasSpawned; // 0x18 @@ -8201,10 +7220,8 @@ public: // Size: 0x58 class CBtNode { -private: - [[maybe_unused]] uint8_t __pad0000[0x58]; // 0x0 public: - // No members available + uint8_t __pad0000[0x58]; // Autoaligned }; // Alignment: 0 @@ -8227,8 +7244,6 @@ public: // Size: 0xf8 class CBtActionAim : public CBtNode { -private: - [[maybe_unused]] uint8_t __pad0058[0x10]; // 0x58 public: CUtlString m_szSensorInputKey; // 0x68 private: @@ -8254,8 +7269,6 @@ public: // Size: 0xb0 class CBtActionCombatPositioning : public CBtNode { -private: - [[maybe_unused]] uint8_t __pad0058[0x10]; // 0x58 public: CUtlString m_szSensorInputKey; // 0x68 private: @@ -8270,8 +7283,6 @@ public: // Size: 0xe8 class CBtActionMoveTo : public CBtNode { -private: - [[maybe_unused]] uint8_t __pad0058[0x8]; // 0x58 public: CUtlString m_szDestinationInputKey; // 0x60 CUtlString m_szHidingSpotInputKey; // 0x68 @@ -8315,8 +7326,6 @@ public: // Size: 0x98 class CBtNodeConditionInactive : public CBtNodeCondition { -private: - [[maybe_unused]] uint8_t __pad0060[0x18]; // 0x60 public: float m_flRoundStartThresholdSeconds; // 0x78 float m_flSensorInactivityThresholdSeconds; // 0x7c @@ -8324,7 +7333,7 @@ public: }; // Alignment: 0 -// Size: 0x4a0 +// Size: 0x4b0 class CPointEntity : public CBaseEntity { public: @@ -8332,136 +7341,132 @@ public: }; // Alignment: 25 -// Size: 0x1620 +// Size: 0x1630 class CEnvCombinedLightProbeVolume : public CBaseEntity { -private: - [[maybe_unused]] uint8_t __pad04a0[0x10d0]; // 0x4a0 public: // MNetworkEnable // MNetworkChangeCallback "StateChanged" - Color m_Color; // 0x1570 + Color m_Color; // 0x1580 // MNetworkEnable // MNetworkChangeCallback "StateChanged" - float m_flBrightness; // 0x1574 + float m_flBrightness; // 0x1584 // MNetworkEnable - CStrongHandle< InfoForResourceTypeCTextureBase > m_hCubemapTexture; // 0x1578 + CStrongHandle< InfoForResourceTypeCTextureBase > m_hCubemapTexture; // 0x1588 // MNetworkEnable - bool m_bCustomCubemapTexture; // 0x1580 + bool m_bCustomCubemapTexture; // 0x1590 private: - [[maybe_unused]] uint8_t __pad1581[0x7]; // 0x1581 + [[maybe_unused]] uint8_t __pad1591[0x7]; // 0x1591 public: // MNetworkEnable - CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeTexture; // 0x1588 + CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeTexture; // 0x1598 // MNetworkEnable - CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeDirectLightIndicesTexture; // 0x1590 + CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeDirectLightIndicesTexture; // 0x15a0 // MNetworkEnable - CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeDirectLightScalarsTexture; // 0x1598 + CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeDirectLightScalarsTexture; // 0x15a8 // MNetworkEnable - CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeDirectLightShadowsTexture; // 0x15a0 + CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeDirectLightShadowsTexture; // 0x15b0 // MNetworkEnable - Vector m_vBoxMins; // 0x15a8 + Vector m_vBoxMins; // 0x15b8 // MNetworkEnable - Vector m_vBoxMaxs; // 0x15b4 + Vector m_vBoxMaxs; // 0x15c4 // MNetworkEnable - CUtlSymbolLarge m_LightGroups; // 0x15c0 + CUtlSymbolLarge m_LightGroups; // 0x15d0 // MNetworkEnable - bool m_bMoveable; // 0x15c8 -private: - [[maybe_unused]] uint8_t __pad15c9[0x3]; // 0x15c9 -public: - // MNetworkEnable - int32_t m_nHandshake; // 0x15cc - // MNetworkEnable - int32_t m_nEnvCubeMapArrayIndex; // 0x15d0 - // MNetworkEnable - int32_t m_nPriority; // 0x15d4 - // MNetworkEnable - bool m_bStartDisabled; // 0x15d8 + bool m_bMoveable; // 0x15d8 private: [[maybe_unused]] uint8_t __pad15d9[0x3]; // 0x15d9 public: // MNetworkEnable - float m_flEdgeFadeDist; // 0x15dc + int32_t m_nHandshake; // 0x15dc // MNetworkEnable - Vector m_vEdgeFadeDists; // 0x15e0 + int32_t m_nEnvCubeMapArrayIndex; // 0x15e0 // MNetworkEnable - int32_t m_nLightProbeSizeX; // 0x15ec + int32_t m_nPriority; // 0x15e4 // MNetworkEnable - int32_t m_nLightProbeSizeY; // 0x15f0 - // MNetworkEnable - int32_t m_nLightProbeSizeZ; // 0x15f4 - // MNetworkEnable - int32_t m_nLightProbeAtlasX; // 0x15f8 - // MNetworkEnable - int32_t m_nLightProbeAtlasY; // 0x15fc - // MNetworkEnable - int32_t m_nLightProbeAtlasZ; // 0x1600 + bool m_bStartDisabled; // 0x15e8 private: - [[maybe_unused]] uint8_t __pad1604[0x15]; // 0x1604 + [[maybe_unused]] uint8_t __pad15e9[0x3]; // 0x15e9 public: // MNetworkEnable - bool m_bEnabled; // 0x1619 + float m_flEdgeFadeDist; // 0x15ec + // MNetworkEnable + Vector m_vEdgeFadeDists; // 0x15f0 + // MNetworkEnable + int32_t m_nLightProbeSizeX; // 0x15fc + // MNetworkEnable + int32_t m_nLightProbeSizeY; // 0x1600 + // MNetworkEnable + int32_t m_nLightProbeSizeZ; // 0x1604 + // MNetworkEnable + int32_t m_nLightProbeAtlasX; // 0x1608 + // MNetworkEnable + int32_t m_nLightProbeAtlasY; // 0x160c + // MNetworkEnable + int32_t m_nLightProbeAtlasZ; // 0x1610 +private: + [[maybe_unused]] uint8_t __pad1614[0x15]; // 0x1614 +public: + // MNetworkEnable + bool m_bEnabled; // 0x1629 }; // Alignment: 19 -// Size: 0x600 +// Size: 0x610 class CEnvCubemap : public CBaseEntity { -private: - [[maybe_unused]] uint8_t __pad04a0[0xf0]; // 0x4a0 public: // MNetworkEnable - CStrongHandle< InfoForResourceTypeCTextureBase > m_hCubemapTexture; // 0x590 + CStrongHandle< InfoForResourceTypeCTextureBase > m_hCubemapTexture; // 0x5a0 // MNetworkEnable - bool m_bCustomCubemapTexture; // 0x598 + bool m_bCustomCubemapTexture; // 0x5a8 private: - [[maybe_unused]] uint8_t __pad0599[0x3]; // 0x599 + [[maybe_unused]] uint8_t __pad05a9[0x3]; // 0x5a9 public: // MNetworkEnable - float m_flInfluenceRadius; // 0x59c + float m_flInfluenceRadius; // 0x5ac // MNetworkEnable - Vector m_vBoxProjectMins; // 0x5a0 + Vector m_vBoxProjectMins; // 0x5b0 // MNetworkEnable - Vector m_vBoxProjectMaxs; // 0x5ac + Vector m_vBoxProjectMaxs; // 0x5bc // MNetworkEnable - CUtlSymbolLarge m_LightGroups; // 0x5b8 + CUtlSymbolLarge m_LightGroups; // 0x5c8 // MNetworkEnable - bool m_bMoveable; // 0x5c0 + bool m_bMoveable; // 0x5d0 private: - [[maybe_unused]] uint8_t __pad05c1[0x3]; // 0x5c1 + [[maybe_unused]] uint8_t __pad05d1[0x3]; // 0x5d1 public: // MNetworkEnable - int32_t m_nHandshake; // 0x5c4 + int32_t m_nHandshake; // 0x5d4 // MNetworkEnable - int32_t m_nEnvCubeMapArrayIndex; // 0x5c8 + int32_t m_nEnvCubeMapArrayIndex; // 0x5d8 // MNetworkEnable - int32_t m_nPriority; // 0x5cc + int32_t m_nPriority; // 0x5dc // MNetworkEnable - float m_flEdgeFadeDist; // 0x5d0 + float m_flEdgeFadeDist; // 0x5e0 // MNetworkEnable - Vector m_vEdgeFadeDists; // 0x5d4 + Vector m_vEdgeFadeDists; // 0x5e4 // MNetworkEnable - float m_flDiffuseScale; // 0x5e0 + float m_flDiffuseScale; // 0x5f0 // MNetworkEnable - bool m_bStartDisabled; // 0x5e4 + bool m_bStartDisabled; // 0x5f4 // MNetworkEnable - bool m_bDefaultEnvMap; // 0x5e5 + bool m_bDefaultEnvMap; // 0x5f5 // MNetworkEnable - bool m_bDefaultSpecEnvMap; // 0x5e6 + bool m_bDefaultSpecEnvMap; // 0x5f6 // MNetworkEnable - bool m_bIndoorCubeMap; // 0x5e7 + bool m_bIndoorCubeMap; // 0x5f7 // MNetworkEnable - bool m_bCopyDiffuseFromDefaultCubemap; // 0x5e8 + bool m_bCopyDiffuseFromDefaultCubemap; // 0x5f8 private: - [[maybe_unused]] uint8_t __pad05e9[0xf]; // 0x5e9 + [[maybe_unused]] uint8_t __pad05f9[0xf]; // 0x5f9 public: // MNetworkEnable - bool m_bEnabled; // 0x5f8 + bool m_bEnabled; // 0x608 }; // Alignment: 0 -// Size: 0x600 +// Size: 0x610 class CEnvCubemapBox : public CEnvCubemap { public: @@ -8469,294 +7474,292 @@ public: }; // Alignment: 18 -// Size: 0x4f0 +// Size: 0x500 class CEnvCubemapFog : public CBaseEntity { public: // MNetworkEnable - float m_flEndDistance; // 0x4a0 + float m_flEndDistance; // 0x4b0 // MNetworkEnable - float m_flStartDistance; // 0x4a4 + float m_flStartDistance; // 0x4b4 // MNetworkEnable - float m_flFogFalloffExponent; // 0x4a8 + float m_flFogFalloffExponent; // 0x4b8 // MNetworkEnable - bool m_bHeightFogEnabled; // 0x4ac -private: - [[maybe_unused]] uint8_t __pad04ad[0x3]; // 0x4ad -public: - // MNetworkEnable - float m_flFogHeightWidth; // 0x4b0 - // MNetworkEnable - float m_flFogHeightEnd; // 0x4b4 - // MNetworkEnable - float m_flFogHeightStart; // 0x4b8 - // MNetworkEnable - float m_flFogHeightExponent; // 0x4bc - // MNetworkEnable - float m_flLODBias; // 0x4c0 - // MNetworkEnable - bool m_bActive; // 0x4c4 - // MNetworkEnable - bool m_bStartDisabled; // 0x4c5 -private: - [[maybe_unused]] uint8_t __pad04c6[0x2]; // 0x4c6 -public: - // MNetworkEnable - float m_flFogMaxOpacity; // 0x4c8 - // MNetworkEnable - int32_t m_nCubemapSourceType; // 0x4cc - // MNetworkEnable - CStrongHandle< InfoForResourceTypeIMaterial2 > m_hSkyMaterial; // 0x4d0 - // MNetworkEnable - CUtlSymbolLarge m_iszSkyEntity; // 0x4d8 - // MNetworkEnable - CStrongHandle< InfoForResourceTypeCTextureBase > m_hFogCubemapTexture; // 0x4e0 - // MNetworkEnable - bool m_bHasHeightFogEnd; // 0x4e8 - bool m_bFirstTime; // 0x4e9 -}; - -// Alignment: 16 -// Size: 0x4e0 -class CGradientFog : public CBaseEntity -{ -public: - // MNetworkEnable - CStrongHandle< InfoForResourceTypeCTextureBase > m_hGradientFogTexture; // 0x4a0 - // MNetworkEnable - // MNetworkChangeCallback "FogStateChanged" - float m_flFogStartDistance; // 0x4a8 - // MNetworkEnable - // MNetworkChangeCallback "FogStateChanged" - float m_flFogEndDistance; // 0x4ac - // MNetworkEnable - // MNetworkChangeCallback "FogStateChanged" - bool m_bHeightFogEnabled; // 0x4b0 -private: - [[maybe_unused]] uint8_t __pad04b1[0x3]; // 0x4b1 -public: - // MNetworkEnable - // MNetworkChangeCallback "FogStateChanged" - float m_flFogStartHeight; // 0x4b4 - // MNetworkEnable - // MNetworkChangeCallback "FogStateChanged" - float m_flFogEndHeight; // 0x4b8 - // MNetworkEnable - // MNetworkChangeCallback "FogStateChanged" - float m_flFarZ; // 0x4bc - // MNetworkEnable - // MNetworkChangeCallback "FogStateChanged" - float m_flFogMaxOpacity; // 0x4c0 - // MNetworkEnable - // MNetworkChangeCallback "FogStateChanged" - float m_flFogFalloffExponent; // 0x4c4 - // MNetworkEnable - // MNetworkChangeCallback "FogStateChanged" - float m_flFogVerticalExponent; // 0x4c8 - // MNetworkEnable - // MNetworkChangeCallback "FogStateChanged" - Color m_fogColor; // 0x4cc - // MNetworkEnable - // MNetworkChangeCallback "FogStateChanged" - float m_flFogStrength; // 0x4d0 - // MNetworkEnable - // MNetworkChangeCallback "FogStateChanged" - float m_flFadeTime; // 0x4d4 - // MNetworkEnable - bool m_bStartDisabled; // 0x4d8 - // MNetworkEnable - bool m_bIsEnabled; // 0x4d9 - bool m_bGradientFogNeedsTextures; // 0x4da -}; - -// Alignment: 18 -// Size: 0x14f8 -class CEnvLightProbeVolume : public CBaseEntity -{ -private: - [[maybe_unused]] uint8_t __pad04a0[0xfe0]; // 0x4a0 -public: - // MNetworkEnable - CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeTexture; // 0x1480 - // MNetworkEnable - CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeDirectLightIndicesTexture; // 0x1488 - // MNetworkEnable - CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeDirectLightScalarsTexture; // 0x1490 - // MNetworkEnable - CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeDirectLightShadowsTexture; // 0x1498 - // MNetworkEnable - Vector m_vBoxMins; // 0x14a0 - // MNetworkEnable - Vector m_vBoxMaxs; // 0x14ac - // MNetworkEnable - CUtlSymbolLarge m_LightGroups; // 0x14b8 - // MNetworkEnable - bool m_bMoveable; // 0x14c0 -private: - [[maybe_unused]] uint8_t __pad14c1[0x3]; // 0x14c1 -public: - // MNetworkEnable - int32_t m_nHandshake; // 0x14c4 - // MNetworkEnable - int32_t m_nPriority; // 0x14c8 - // MNetworkEnable - bool m_bStartDisabled; // 0x14cc -private: - [[maybe_unused]] uint8_t __pad14cd[0x3]; // 0x14cd -public: - // MNetworkEnable - int32_t m_nLightProbeSizeX; // 0x14d0 - // MNetworkEnable - int32_t m_nLightProbeSizeY; // 0x14d4 - // MNetworkEnable - int32_t m_nLightProbeSizeZ; // 0x14d8 - // MNetworkEnable - int32_t m_nLightProbeAtlasX; // 0x14dc - // MNetworkEnable - int32_t m_nLightProbeAtlasY; // 0x14e0 - // MNetworkEnable - int32_t m_nLightProbeAtlasZ; // 0x14e4 -private: - [[maybe_unused]] uint8_t __pad14e8[0x9]; // 0x14e8 -public: - // MNetworkEnable - bool m_bEnabled; // 0x14f1 -}; - -// Alignment: 8 -// Size: 0x4c8 -class CTonemapController2 : public CBaseEntity -{ -public: - // MNetworkEnable - float m_flAutoExposureMin; // 0x4a0 - // MNetworkEnable - float m_flAutoExposureMax; // 0x4a4 - // MNetworkEnable - float m_flTonemapPercentTarget; // 0x4a8 - // MNetworkEnable - float m_flTonemapPercentBrightPixels; // 0x4ac - // MNetworkEnable - float m_flTonemapMinAvgLum; // 0x4b0 - // MNetworkEnable - float m_flExposureAdaptationSpeedUp; // 0x4b4 - // MNetworkEnable - float m_flExposureAdaptationSpeedDown; // 0x4b8 - // MNetworkEnable - float m_flTonemapEVSmoothingRange; // 0x4bc -}; - -// Alignment: 28 -// Size: 0x520 -class CEnvVolumetricFogController : public CBaseEntity -{ -public: - // MNetworkEnable - float m_flScattering; // 0x4a0 - // MNetworkEnable - float m_flAnisotropy; // 0x4a4 - // MNetworkEnable - float m_flFadeSpeed; // 0x4a8 - // MNetworkEnable - float m_flDrawDistance; // 0x4ac - // MNetworkEnable - float m_flFadeInStart; // 0x4b0 - // MNetworkEnable - float m_flFadeInEnd; // 0x4b4 - // MNetworkEnable - float m_flIndirectStrength; // 0x4b8 - // MNetworkEnable - int32_t m_nIndirectTextureDimX; // 0x4bc - // MNetworkEnable - int32_t m_nIndirectTextureDimY; // 0x4c0 - // MNetworkEnable - int32_t m_nIndirectTextureDimZ; // 0x4c4 - // MNetworkEnable - Vector m_vBoxMins; // 0x4c8 - // MNetworkEnable - Vector m_vBoxMaxs; // 0x4d4 - // MNetworkEnable - bool m_bActive; // 0x4e0 -private: - [[maybe_unused]] uint8_t __pad04e1[0x3]; // 0x4e1 -public: - // MNetworkEnable - GameTime_t m_flStartAnisoTime; // 0x4e4 - // MNetworkEnable - GameTime_t m_flStartScatterTime; // 0x4e8 - // MNetworkEnable - GameTime_t m_flStartDrawDistanceTime; // 0x4ec - // MNetworkEnable - float m_flStartAnisotropy; // 0x4f0 - // MNetworkEnable - float m_flStartScattering; // 0x4f4 - // MNetworkEnable - float m_flStartDrawDistance; // 0x4f8 - // MNetworkEnable - float m_flDefaultAnisotropy; // 0x4fc - // MNetworkEnable - float m_flDefaultScattering; // 0x500 - // MNetworkEnable - float m_flDefaultDrawDistance; // 0x504 - // MNetworkEnable - bool m_bStartDisabled; // 0x508 - // MNetworkEnable - bool m_bEnableIndirect; // 0x509 - // MNetworkEnable - bool m_bIsMaster; // 0x50a -private: - [[maybe_unused]] uint8_t __pad050b[0x5]; // 0x50b -public: - // MNetworkEnable - CStrongHandle< InfoForResourceTypeCTextureBase > m_hFogIndirectTexture; // 0x510 - // MNetworkEnable - int32_t m_nForceRefreshCount; // 0x518 - bool m_bFirstTime; // 0x51c -}; - -// Alignment: 7 -// Size: 0x4d0 -class CEnvVolumetricFogVolume : public CBaseEntity -{ -public: - // MNetworkEnable - bool m_bActive; // 0x4a0 -private: - [[maybe_unused]] uint8_t __pad04a1[0x3]; // 0x4a1 -public: - // MNetworkEnable - Vector m_vBoxMins; // 0x4a4 - // MNetworkEnable - Vector m_vBoxMaxs; // 0x4b0 - // MNetworkEnable - bool m_bStartDisabled; // 0x4bc + bool m_bHeightFogEnabled; // 0x4bc private: [[maybe_unused]] uint8_t __pad04bd[0x3]; // 0x4bd public: // MNetworkEnable - float m_flStrength; // 0x4c0 + float m_flFogHeightWidth; // 0x4c0 // MNetworkEnable - int32_t m_nFalloffShape; // 0x4c4 + float m_flFogHeightEnd; // 0x4c4 // MNetworkEnable - float m_flFalloffExponent; // 0x4c8 + float m_flFogHeightStart; // 0x4c8 + // MNetworkEnable + float m_flFogHeightExponent; // 0x4cc + // MNetworkEnable + float m_flLODBias; // 0x4d0 + // MNetworkEnable + bool m_bActive; // 0x4d4 + // MNetworkEnable + bool m_bStartDisabled; // 0x4d5 +private: + [[maybe_unused]] uint8_t __pad04d6[0x2]; // 0x4d6 +public: + // MNetworkEnable + float m_flFogMaxOpacity; // 0x4d8 + // MNetworkEnable + int32_t m_nCubemapSourceType; // 0x4dc + // MNetworkEnable + CStrongHandle< InfoForResourceTypeIMaterial2 > m_hSkyMaterial; // 0x4e0 + // MNetworkEnable + CUtlSymbolLarge m_iszSkyEntity; // 0x4e8 + // MNetworkEnable + CStrongHandle< InfoForResourceTypeCTextureBase > m_hFogCubemapTexture; // 0x4f0 + // MNetworkEnable + bool m_bHasHeightFogEnd; // 0x4f8 + bool m_bFirstTime; // 0x4f9 +}; + +// Alignment: 16 +// Size: 0x4f0 +class CGradientFog : public CBaseEntity +{ +public: + // MNetworkEnable + CStrongHandle< InfoForResourceTypeCTextureBase > m_hGradientFogTexture; // 0x4b0 + // MNetworkEnable + // MNetworkChangeCallback "FogStateChanged" + float m_flFogStartDistance; // 0x4b8 + // MNetworkEnable + // MNetworkChangeCallback "FogStateChanged" + float m_flFogEndDistance; // 0x4bc + // MNetworkEnable + // MNetworkChangeCallback "FogStateChanged" + bool m_bHeightFogEnabled; // 0x4c0 +private: + [[maybe_unused]] uint8_t __pad04c1[0x3]; // 0x4c1 +public: + // MNetworkEnable + // MNetworkChangeCallback "FogStateChanged" + float m_flFogStartHeight; // 0x4c4 + // MNetworkEnable + // MNetworkChangeCallback "FogStateChanged" + float m_flFogEndHeight; // 0x4c8 + // MNetworkEnable + // MNetworkChangeCallback "FogStateChanged" + float m_flFarZ; // 0x4cc + // MNetworkEnable + // MNetworkChangeCallback "FogStateChanged" + float m_flFogMaxOpacity; // 0x4d0 + // MNetworkEnable + // MNetworkChangeCallback "FogStateChanged" + float m_flFogFalloffExponent; // 0x4d4 + // MNetworkEnable + // MNetworkChangeCallback "FogStateChanged" + float m_flFogVerticalExponent; // 0x4d8 + // MNetworkEnable + // MNetworkChangeCallback "FogStateChanged" + Color m_fogColor; // 0x4dc + // MNetworkEnable + // MNetworkChangeCallback "FogStateChanged" + float m_flFogStrength; // 0x4e0 + // MNetworkEnable + // MNetworkChangeCallback "FogStateChanged" + float m_flFadeTime; // 0x4e4 + // MNetworkEnable + bool m_bStartDisabled; // 0x4e8 + // MNetworkEnable + bool m_bIsEnabled; // 0x4e9 + bool m_bGradientFogNeedsTextures; // 0x4ea +}; + +// Alignment: 18 +// Size: 0x1508 +class CEnvLightProbeVolume : public CBaseEntity +{ +public: + // MNetworkEnable + CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeTexture; // 0x1490 + // MNetworkEnable + CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeDirectLightIndicesTexture; // 0x1498 + // MNetworkEnable + CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeDirectLightScalarsTexture; // 0x14a0 + // MNetworkEnable + CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeDirectLightShadowsTexture; // 0x14a8 + // MNetworkEnable + Vector m_vBoxMins; // 0x14b0 + // MNetworkEnable + Vector m_vBoxMaxs; // 0x14bc + // MNetworkEnable + CUtlSymbolLarge m_LightGroups; // 0x14c8 + // MNetworkEnable + bool m_bMoveable; // 0x14d0 +private: + [[maybe_unused]] uint8_t __pad14d1[0x3]; // 0x14d1 +public: + // MNetworkEnable + int32_t m_nHandshake; // 0x14d4 + // MNetworkEnable + int32_t m_nPriority; // 0x14d8 + // MNetworkEnable + bool m_bStartDisabled; // 0x14dc +private: + [[maybe_unused]] uint8_t __pad14dd[0x3]; // 0x14dd +public: + // MNetworkEnable + int32_t m_nLightProbeSizeX; // 0x14e0 + // MNetworkEnable + int32_t m_nLightProbeSizeY; // 0x14e4 + // MNetworkEnable + int32_t m_nLightProbeSizeZ; // 0x14e8 + // MNetworkEnable + int32_t m_nLightProbeAtlasX; // 0x14ec + // MNetworkEnable + int32_t m_nLightProbeAtlasY; // 0x14f0 + // MNetworkEnable + int32_t m_nLightProbeAtlasZ; // 0x14f4 +private: + [[maybe_unused]] uint8_t __pad14f8[0x9]; // 0x14f8 +public: + // MNetworkEnable + bool m_bEnabled; // 0x1501 +}; + +// Alignment: 8 +// Size: 0x4d8 +class CTonemapController2 : public CBaseEntity +{ +public: + // MNetworkEnable + float m_flAutoExposureMin; // 0x4b0 + // MNetworkEnable + float m_flAutoExposureMax; // 0x4b4 + // MNetworkEnable + float m_flTonemapPercentTarget; // 0x4b8 + // MNetworkEnable + float m_flTonemapPercentBrightPixels; // 0x4bc + // MNetworkEnable + float m_flTonemapMinAvgLum; // 0x4c0 + // MNetworkEnable + float m_flExposureAdaptationSpeedUp; // 0x4c4 + // MNetworkEnable + float m_flExposureAdaptationSpeedDown; // 0x4c8 + // MNetworkEnable + float m_flTonemapEVSmoothingRange; // 0x4cc +}; + +// Alignment: 28 +// Size: 0x530 +class CEnvVolumetricFogController : public CBaseEntity +{ +public: + // MNetworkEnable + float m_flScattering; // 0x4b0 + // MNetworkEnable + float m_flAnisotropy; // 0x4b4 + // MNetworkEnable + float m_flFadeSpeed; // 0x4b8 + // MNetworkEnable + float m_flDrawDistance; // 0x4bc + // MNetworkEnable + float m_flFadeInStart; // 0x4c0 + // MNetworkEnable + float m_flFadeInEnd; // 0x4c4 + // MNetworkEnable + float m_flIndirectStrength; // 0x4c8 + // MNetworkEnable + int32_t m_nIndirectTextureDimX; // 0x4cc + // MNetworkEnable + int32_t m_nIndirectTextureDimY; // 0x4d0 + // MNetworkEnable + int32_t m_nIndirectTextureDimZ; // 0x4d4 + // MNetworkEnable + Vector m_vBoxMins; // 0x4d8 + // MNetworkEnable + Vector m_vBoxMaxs; // 0x4e4 + // MNetworkEnable + bool m_bActive; // 0x4f0 +private: + [[maybe_unused]] uint8_t __pad04f1[0x3]; // 0x4f1 +public: + // MNetworkEnable + GameTime_t m_flStartAnisoTime; // 0x4f4 + // MNetworkEnable + GameTime_t m_flStartScatterTime; // 0x4f8 + // MNetworkEnable + GameTime_t m_flStartDrawDistanceTime; // 0x4fc + // MNetworkEnable + float m_flStartAnisotropy; // 0x500 + // MNetworkEnable + float m_flStartScattering; // 0x504 + // MNetworkEnable + float m_flStartDrawDistance; // 0x508 + // MNetworkEnable + float m_flDefaultAnisotropy; // 0x50c + // MNetworkEnable + float m_flDefaultScattering; // 0x510 + // MNetworkEnable + float m_flDefaultDrawDistance; // 0x514 + // MNetworkEnable + bool m_bStartDisabled; // 0x518 + // MNetworkEnable + bool m_bEnableIndirect; // 0x519 + // MNetworkEnable + bool m_bIsMaster; // 0x51a +private: + [[maybe_unused]] uint8_t __pad051b[0x5]; // 0x51b +public: + // MNetworkEnable + CStrongHandle< InfoForResourceTypeCTextureBase > m_hFogIndirectTexture; // 0x520 + // MNetworkEnable + int32_t m_nForceRefreshCount; // 0x528 + bool m_bFirstTime; // 0x52c +}; + +// Alignment: 7 +// Size: 0x4e0 +class CEnvVolumetricFogVolume : public CBaseEntity +{ +public: + // MNetworkEnable + bool m_bActive; // 0x4b0 +private: + [[maybe_unused]] uint8_t __pad04b1[0x3]; // 0x4b1 +public: + // MNetworkEnable + Vector m_vBoxMins; // 0x4b4 + // MNetworkEnable + Vector m_vBoxMaxs; // 0x4c0 + // MNetworkEnable + bool m_bStartDisabled; // 0x4cc +private: + [[maybe_unused]] uint8_t __pad04cd[0x3]; // 0x4cd +public: + // MNetworkEnable + float m_flStrength; // 0x4d0 + // MNetworkEnable + int32_t m_nFalloffShape; // 0x4d4 + // MNetworkEnable + float m_flFalloffExponent; // 0x4d8 }; // Alignment: 3 -// Size: 0x510 +// Size: 0x520 class CFogController : public CBaseEntity { public: // MNetworkEnable - fogparams_t m_fog; // 0x4a0 - bool m_bUseAngles; // 0x508 + fogparams_t m_fog; // 0x4b0 + bool m_bUseAngles; // 0x518 private: - [[maybe_unused]] uint8_t __pad0509[0x3]; // 0x509 + [[maybe_unused]] uint8_t __pad0519[0x3]; // 0x519 public: - int32_t m_iChangedVariables; // 0x50c + int32_t m_iChangedVariables; // 0x51c }; // Alignment: 0 -// Size: 0x4a0 +// Size: 0x4b0 class CInfoTarget : public CPointEntity { public: @@ -8764,7 +7767,15 @@ public: }; // Alignment: 0 -// Size: 0x4a0 +// Size: 0x4b0 +class CInfoTargetServerOnly : public CServerOnlyPointEntity +{ +public: + // No members available +}; + +// Alignment: 0 +// Size: 0x4b0 class CInfoParticleTarget : public CPointEntity { public: @@ -8772,293 +7783,287 @@ public: }; // Alignment: 3 -// Size: 0x4b8 +// Size: 0x4c8 class CInfoVisibilityBox : public CBaseEntity { -private: - [[maybe_unused]] uint8_t __pad04a0[0x4]; // 0x4a0 public: // MNetworkEnable - int32_t m_nMode; // 0x4a4 + int32_t m_nMode; // 0x4b4 // MNetworkEnable - Vector m_vBoxSize; // 0x4a8 + Vector m_vBoxSize; // 0x4b8 // MNetworkEnable - bool m_bEnabled; // 0x4b4 + bool m_bEnabled; // 0x4c4 }; // Alignment: 7 -// Size: 0x4e0 +// Size: 0x4f0 class CInfoWorldLayer : public CBaseEntity { public: - CEntityIOOutput m_pOutputOnEntitiesSpawned; // 0x4a0 + CEntityIOOutput m_pOutputOnEntitiesSpawned; // 0x4b0 // MNetworkEnable - CUtlSymbolLarge m_worldName; // 0x4c8 + CUtlSymbolLarge m_worldName; // 0x4d8 // MNetworkEnable - CUtlSymbolLarge m_layerName; // 0x4d0 + CUtlSymbolLarge m_layerName; // 0x4e0 // MNetworkEnable - bool m_bWorldLayerVisible; // 0x4d8 + bool m_bWorldLayerVisible; // 0x4e8 // MNetworkEnable - bool m_bEntitiesSpawned; // 0x4d9 - bool m_bCreateAsChildSpawnGroup; // 0x4da + bool m_bEntitiesSpawned; // 0x4e9 + bool m_bCreateAsChildSpawnGroup; // 0x4ea private: - [[maybe_unused]] uint8_t __pad04db[0x1]; // 0x4db + [[maybe_unused]] uint8_t __pad04eb[0x1]; // 0x4eb public: - uint32_t m_hLayerSpawnGroup; // 0x4dc + uint32_t m_hLayerSpawnGroup; // 0x4ec }; // Alignment: 8 -// Size: 0x4e0 +// Size: 0x4f0 class CMultiLightProxy : public CLogicalEntity { public: - CUtlSymbolLarge m_iszLightNameFilter; // 0x4a0 - CUtlSymbolLarge m_iszLightClassFilter; // 0x4a8 - float m_flLightRadiusFilter; // 0x4b0 - float m_flBrightnessDelta; // 0x4b4 - bool m_bPerformScreenFade; // 0x4b8 + CUtlSymbolLarge m_iszLightNameFilter; // 0x4b0 + CUtlSymbolLarge m_iszLightClassFilter; // 0x4b8 + float m_flLightRadiusFilter; // 0x4c0 + float m_flBrightnessDelta; // 0x4c4 + bool m_bPerformScreenFade; // 0x4c8 private: - [[maybe_unused]] uint8_t __pad04b9[0x3]; // 0x4b9 + [[maybe_unused]] uint8_t __pad04c9[0x3]; // 0x4c9 public: - float m_flTargetBrightnessMultiplier; // 0x4bc - float m_flCurrentBrightnessMultiplier; // 0x4c0 + float m_flTargetBrightnessMultiplier; // 0x4cc + float m_flCurrentBrightnessMultiplier; // 0x4d0 private: - [[maybe_unused]] uint8_t __pad04c4[0x4]; // 0x4c4 + [[maybe_unused]] uint8_t __pad04d4[0x4]; // 0x4d4 public: - CUtlVector< CHandle< CLightEntity > > m_vecLights; // 0x4c8 + CUtlVector< CHandle< CLightEntity > > m_vecLights; // 0x4d8 }; // Alignment: 24 -// Size: 0x500 +// Size: 0x510 class CPointCamera : public CBaseEntity { public: // MNetworkEnable - float m_FOV; // 0x4a0 + float m_FOV; // 0x4b0 // MNetworkEnable - float m_Resolution; // 0x4a4 + float m_Resolution; // 0x4b4 // MNetworkEnable - bool m_bFogEnable; // 0x4a8 + bool m_bFogEnable; // 0x4b8 // MNetworkEnable - Color m_FogColor; // 0x4a9 + Color m_FogColor; // 0x4b9 private: - [[maybe_unused]] uint8_t __pad04ad[0x3]; // 0x4ad + [[maybe_unused]] uint8_t __pad04bd[0x3]; // 0x4bd public: // MNetworkEnable - float m_flFogStart; // 0x4b0 + float m_flFogStart; // 0x4c0 // MNetworkEnable - float m_flFogEnd; // 0x4b4 + float m_flFogEnd; // 0x4c4 // MNetworkEnable - float m_flFogMaxDensity; // 0x4b8 + float m_flFogMaxDensity; // 0x4c8 // MNetworkEnable - bool m_bActive; // 0x4bc + bool m_bActive; // 0x4cc // MNetworkEnable - bool m_bUseScreenAspectRatio; // 0x4bd + bool m_bUseScreenAspectRatio; // 0x4cd private: - [[maybe_unused]] uint8_t __pad04be[0x2]; // 0x4be + [[maybe_unused]] uint8_t __pad04ce[0x2]; // 0x4ce public: // MNetworkEnable - float m_flAspectRatio; // 0x4c0 + float m_flAspectRatio; // 0x4d0 // MNetworkEnable - bool m_bNoSky; // 0x4c4 -private: - [[maybe_unused]] uint8_t __pad04c5[0x3]; // 0x4c5 -public: - // MNetworkEnable - float m_fBrightness; // 0x4c8 - // MNetworkEnable - float m_flZFar; // 0x4cc - // MNetworkEnable - float m_flZNear; // 0x4d0 - // MNetworkEnable - bool m_bDofEnabled; // 0x4d4 + bool m_bNoSky; // 0x4d4 private: [[maybe_unused]] uint8_t __pad04d5[0x3]; // 0x4d5 public: // MNetworkEnable - float m_flDofNearBlurry; // 0x4d8 + float m_fBrightness; // 0x4d8 // MNetworkEnable - float m_flDofNearCrisp; // 0x4dc + float m_flZFar; // 0x4dc // MNetworkEnable - float m_flDofFarCrisp; // 0x4e0 + float m_flZNear; // 0x4e0 // MNetworkEnable - float m_flDofFarBlurry; // 0x4e4 - // MNetworkEnable - float m_flDofTiltToGround; // 0x4e8 - float m_TargetFOV; // 0x4ec - float m_DegreesPerSecond; // 0x4f0 - bool m_bIsOn; // 0x4f4 + bool m_bDofEnabled; // 0x4e4 private: - [[maybe_unused]] uint8_t __pad04f5[0x3]; // 0x4f5 + [[maybe_unused]] uint8_t __pad04e5[0x3]; // 0x4e5 public: - CPointCamera* m_pNext; // 0x4f8 + // MNetworkEnable + float m_flDofNearBlurry; // 0x4e8 + // MNetworkEnable + float m_flDofNearCrisp; // 0x4ec + // MNetworkEnable + float m_flDofFarCrisp; // 0x4f0 + // MNetworkEnable + float m_flDofFarBlurry; // 0x4f4 + // MNetworkEnable + float m_flDofTiltToGround; // 0x4f8 + float m_TargetFOV; // 0x4fc + float m_DegreesPerSecond; // 0x500 + bool m_bIsOn; // 0x504 +private: + [[maybe_unused]] uint8_t __pad0505[0x3]; // 0x505 +public: + CPointCamera* m_pNext; // 0x508 }; // Alignment: 1 -// Size: 0x508 +// Size: 0x518 class CPointCameraVFOV : public CPointCamera { public: - float m_flVerticalFOV; // 0x500 + float m_flVerticalFOV; // 0x510 }; // Alignment: 12 -// Size: 0x530 +// Size: 0x540 class CPointTemplate : public CLogicalEntity { public: - CUtlSymbolLarge m_iszWorldName; // 0x4a0 - CUtlSymbolLarge m_iszSource2EntityLumpName; // 0x4a8 - CUtlSymbolLarge m_iszEntityFilterName; // 0x4b0 - float m_flTimeoutInterval; // 0x4b8 - bool m_bAsynchronouslySpawnEntities; // 0x4bc + CUtlSymbolLarge m_iszWorldName; // 0x4b0 + CUtlSymbolLarge m_iszSource2EntityLumpName; // 0x4b8 + CUtlSymbolLarge m_iszEntityFilterName; // 0x4c0 + float m_flTimeoutInterval; // 0x4c8 + bool m_bAsynchronouslySpawnEntities; // 0x4cc private: - [[maybe_unused]] uint8_t __pad04bd[0x3]; // 0x4bd + [[maybe_unused]] uint8_t __pad04cd[0x3]; // 0x4cd public: - CEntityIOOutput m_pOutputOnSpawned; // 0x4c0 - PointTemplateClientOnlyEntityBehavior_t m_clientOnlyEntityBehavior; // 0x4e8 - PointTemplateOwnerSpawnGroupType_t m_ownerSpawnGroupType; // 0x4ec - CUtlVector< uint32 > m_createdSpawnGroupHandles; // 0x4f0 - CUtlVector< CEntityHandle > m_SpawnedEntityHandles; // 0x508 - HSCRIPT m_ScriptSpawnCallback; // 0x520 - HSCRIPT m_ScriptCallbackScope; // 0x528 + CEntityIOOutput m_pOutputOnSpawned; // 0x4d0 + PointTemplateClientOnlyEntityBehavior_t m_clientOnlyEntityBehavior; // 0x4f8 + PointTemplateOwnerSpawnGroupType_t m_ownerSpawnGroupType; // 0x4fc + CUtlVector< uint32 > m_createdSpawnGroupHandles; // 0x500 + CUtlVector< CEntityHandle > m_SpawnedEntityHandles; // 0x518 + HSCRIPT m_ScriptSpawnCallback; // 0x530 + HSCRIPT m_ScriptCallbackScope; // 0x538 }; // Alignment: 4 -// Size: 0x4d0 +// Size: 0x4e0 class CGameGibManager : public CBaseEntity { -private: - [[maybe_unused]] uint8_t __pad04a0[0x20]; // 0x4a0 public: - bool m_bAllowNewGibs; // 0x4c0 + bool m_bAllowNewGibs; // 0x4d0 private: - [[maybe_unused]] uint8_t __pad04c1[0x3]; // 0x4c1 + [[maybe_unused]] uint8_t __pad04d1[0x3]; // 0x4d1 public: - int32_t m_iCurrentMaxPieces; // 0x4c4 - int32_t m_iMaxPieces; // 0x4c8 - int32_t m_iLastFrame; // 0x4cc + int32_t m_iCurrentMaxPieces; // 0x4d4 + int32_t m_iMaxPieces; // 0x4d8 + int32_t m_iLastFrame; // 0x4dc }; // Alignment: 3 -// Size: 0x4c0 +// Size: 0x4d0 class CSoundAreaEntityBase : public CBaseEntity { public: // MNetworkEnable - bool m_bDisabled; // 0x4a0 + bool m_bDisabled; // 0x4b0 private: - [[maybe_unused]] uint8_t __pad04a1[0x7]; // 0x4a1 + [[maybe_unused]] uint8_t __pad04b1[0x7]; // 0x4b1 public: // MNetworkEnable - CUtlSymbolLarge m_iszSoundAreaType; // 0x4a8 + CUtlSymbolLarge m_iszSoundAreaType; // 0x4b8 // MNetworkEnable - Vector m_vPos; // 0x4b0 + Vector m_vPos; // 0x4c0 }; // Alignment: 1 -// Size: 0x4c8 +// Size: 0x4d8 class CSoundAreaEntitySphere : public CSoundAreaEntityBase { public: // MNetworkEnable - float m_flRadius; // 0x4c0 + float m_flRadius; // 0x4d0 }; // Alignment: 2 -// Size: 0x4d8 +// Size: 0x4e8 class CSoundAreaEntityOrientedBox : public CSoundAreaEntityBase { public: // MNetworkEnable - Vector m_vMin; // 0x4c0 + Vector m_vMin; // 0x4d0 // MNetworkEnable - Vector m_vMax; // 0x4cc + Vector m_vMax; // 0x4dc }; // Alignment: 4 -// Size: 0x558 +// Size: 0x568 class CTeam : public CBaseEntity { public: // MNetworkEnable // MNetworkAlias "m_aPlayers" - CNetworkUtlVectorBase< CHandle< CBasePlayerController > > m_aPlayerControllers; // 0x4a0 + CNetworkUtlVectorBase< CHandle< CBasePlayerController > > m_aPlayerControllers; // 0x4b0 // MNetworkEnable // MNetworkAlias "m_aPawns" - CNetworkUtlVectorBase< CHandle< CBasePlayerPawn > > m_aPlayers; // 0x4b8 + CNetworkUtlVectorBase< CHandle< CBasePlayerPawn > > m_aPlayers; // 0x4c8 // MNetworkEnable - int32_t m_iScore; // 0x4d0 + int32_t m_iScore; // 0x4e0 // MNetworkEnable - char m_szTeamname[129]; // 0x4d4 + char m_szTeamname[129]; // 0x4e4 }; // Alignment: 25 -// Size: 0x668 +// Size: 0x690 class CBasePlayerController : public CBaseEntity { -private: - [[maybe_unused]] uint8_t __pad04a0[0x8]; // 0x4a0 public: - uint64_t m_nInButtonsWhichAreToggles; // 0x4a8 + uint64_t m_nInButtonsWhichAreToggles; // 0x4b8 // MNetworkEnable // MNetworkPriority "1" // MNetworkUserGroup "LocalPlayerExclusive" - uint32_t m_nTickBase; // 0x4b0 + uint32_t m_nTickBase; // 0x4c0 private: - [[maybe_unused]] uint8_t __pad04b4[0x2c]; // 0x4b4 + [[maybe_unused]] uint8_t __pad04c4[0x2c]; // 0x4c4 public: // MNetworkEnable // MNetworkChangeCallback "OnPawnChanged" - CHandle< CBasePlayerPawn > m_hPawn; // 0x4e0 - CSplitScreenSlot m_nSplitScreenSlot; // 0x4e4 - CHandle< CBasePlayerController > m_hSplitOwner; // 0x4e8 + CHandle< CBasePlayerPawn > m_hPawn; // 0x4f0 + CSplitScreenSlot m_nSplitScreenSlot; // 0x4f4 + CHandle< CBasePlayerController > m_hSplitOwner; // 0x4f8 private: - [[maybe_unused]] uint8_t __pad04ec[0x4]; // 0x4ec + [[maybe_unused]] uint8_t __pad04fc[0x4]; // 0x4fc public: - CUtlVector< CHandle< CBasePlayerController > > m_hSplitScreenPlayers; // 0x4f0 - bool m_bIsHLTV; // 0x508 + CUtlVector< CHandle< CBasePlayerController > > m_hSplitScreenPlayers; // 0x500 + bool m_bIsHLTV; // 0x518 private: - [[maybe_unused]] uint8_t __pad0509[0x3]; // 0x509 + [[maybe_unused]] uint8_t __pad0519[0x3]; // 0x519 public: // MNetworkEnable // MNetworkChangeCallback "OnConnectionStateChanged" - PlayerConnectedState m_iConnected; // 0x50c + PlayerConnectedState m_iConnected; // 0x51c // MNetworkEnable // MNetworkChangeCallback "OnPlayerControllerNameChanged" - char m_iszPlayerName[128]; // 0x510 - CUtlString m_szNetworkIDString; // 0x590 - float m_fLerpTime; // 0x598 - bool m_bLagCompensation; // 0x59c - bool m_bPredict; // 0x59d - bool m_bAutoKickDisabled; // 0x59e - bool m_bIsLowViolence; // 0x59f - bool m_bGamePaused; // 0x5a0 + char m_iszPlayerName[128]; // 0x520 + CUtlString m_szNetworkIDString; // 0x5a0 + float m_fLerpTime; // 0x5a8 + bool m_bLagCompensation; // 0x5ac + bool m_bPredict; // 0x5ad + bool m_bAutoKickDisabled; // 0x5ae + bool m_bIsLowViolence; // 0x5af + bool m_bGamePaused; // 0x5b0 private: - [[maybe_unused]] uint8_t __pad05a1[0x77]; // 0x5a1 + [[maybe_unused]] uint8_t __pad05b1[0x77]; // 0x5b1 public: - int32_t m_nHighestCommandNumberReceived; // 0x618 + int32_t m_nHighestCommandNumberReceived; // 0x628 private: - [[maybe_unused]] uint8_t __pad061c[0x4]; // 0x61c + [[maybe_unused]] uint8_t __pad062c[0x4]; // 0x62c public: - int64_t m_nUsecTimestampLastUserCmdReceived; // 0x620 + int64_t m_nUsecTimestampLastUserCmdReceived; // 0x630 private: - [[maybe_unused]] uint8_t __pad0628[0x10]; // 0x628 + [[maybe_unused]] uint8_t __pad0638[0x10]; // 0x638 public: - ChatIgnoreType_t m_iIgnoreGlobalChat; // 0x638 - float m_flLastPlayerTalkTime; // 0x63c - float m_flLastEntitySteadyState; // 0x640 - int32_t m_nAvailableEntitySteadyState; // 0x644 - bool m_bHasAnySteadyStateEnts; // 0x648 + ChatIgnoreType_t m_iIgnoreGlobalChat; // 0x648 + float m_flLastPlayerTalkTime; // 0x64c + float m_flLastEntitySteadyState; // 0x650 + int32_t m_nAvailableEntitySteadyState; // 0x654 + bool m_bHasAnySteadyStateEnts; // 0x658 private: - [[maybe_unused]] uint8_t __pad0649[0xf]; // 0x649 + [[maybe_unused]] uint8_t __pad0659[0xf]; // 0x659 public: // MNetworkEnable // MNetworkEncoder // MNetworkChangeCallback "OnSteamIDChanged" - uint64_t m_steamID; // 0x658 + uint64_t m_steamID; // 0x668 // MNetworkEnable - uint32_t m_iDesiredFOV; // 0x660 + uint32_t m_iDesiredFOV; // 0x670 }; // Alignment: 14 @@ -9180,25 +8185,25 @@ public: }; // Alignment: 2 -// Size: 0x4b0 +// Size: 0x4c0 class CInfoGameEventProxy : public CPointEntity { public: - CUtlSymbolLarge m_iszEventName; // 0x4a0 - float m_flRange; // 0x4a8 + CUtlSymbolLarge m_iszEventName; // 0x4b0 + float m_flRange; // 0x4b8 }; // Alignment: 2 -// Size: 0x4a8 +// Size: 0x4b8 class CProjectedDecal : public CPointEntity { public: - int32_t m_nTexture; // 0x4a0 - float m_flDistance; // 0x4a4 + int32_t m_nTexture; // 0x4b0 + float m_flDistance; // 0x4b4 }; // Alignment: 2 -// Size: 0x750 +// Size: 0x6e0 class CBodyComponentBaseAnimGraph : public CBodyComponentSkeletonInstance { public: @@ -9206,15 +8211,13 @@ public: CBaseAnimGraphController m_animationController; // 0x470 // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex - CNetworkVarChainer __m_pChainEntity; // 0x720 - - // Static fields: + CNetworkVarChainer __m_pChainEntity; // 0x6b0 static EntComponentInfo_t &Get_s_EntComponentInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBodyComponentBaseAnimGraph")->m_static_fields[0]->m_instance);}; static int32_t &Get_entity_component_error_class_decl_says_contained_but_impl_is_referenced(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBodyComponentBaseAnimGraph")->m_static_fields[1]->m_instance);}; }; // Alignment: 26 -// Size: 0x6f0 +// Size: 0x700 class CBaseModelEntity : public CBaseEntity { public: @@ -9222,81 +8225,81 @@ public: // MNetworkUserGroup "CRenderComponent" // MNetworkAlias "CRenderComponent" // MNetworkTypeAlias "CRenderComponent" - CRenderComponent* m_CRenderComponent; // 0x4a0 + CRenderComponent* m_CRenderComponent; // 0x4b0 // MNetworkEnable // MNetworkUserGroup "CHitboxComponent" // MNetworkAlias "CHitboxComponent" // MNetworkTypeAlias "CHitboxComponent" - CHitboxComponent m_CHitboxComponent; // 0x4a8 - GameTime_t m_flDissolveStartTime; // 0x4d0 + CHitboxComponent m_CHitboxComponent; // 0x4b8 + GameTime_t m_flDissolveStartTime; // 0x4e0 private: - [[maybe_unused]] uint8_t __pad04d4[0x4]; // 0x4d4 + [[maybe_unused]] uint8_t __pad04e4[0x4]; // 0x4e4 public: - CEntityIOOutput m_OnIgnite; // 0x4d8 + CEntityIOOutput m_OnIgnite; // 0x4e8 // MNetworkEnable - RenderMode_t m_nRenderMode; // 0x500 + RenderMode_t m_nRenderMode; // 0x510 // MNetworkEnable - RenderFx_t m_nRenderFX; // 0x501 - bool m_bAllowFadeInView; // 0x502 + RenderFx_t m_nRenderFX; // 0x511 + bool m_bAllowFadeInView; // 0x512 // MNetworkEnable // MNetworkChangeCallback "OnColorChanged" - Color m_clrRender; // 0x503 + Color m_clrRender; // 0x513 private: - [[maybe_unused]] uint8_t __pad0507[0x1]; // 0x507 + [[maybe_unused]] uint8_t __pad0517[0x1]; // 0x517 public: // MNetworkEnable // MNetworkChangeCallback "OnRenderAttributesChanged" - CUtlVectorEmbeddedNetworkVar< EntityRenderAttribute_t > m_vecRenderAttributes; // 0x508 + CUtlVectorEmbeddedNetworkVar< EntityRenderAttribute_t > m_vecRenderAttributes; // 0x518 // MNetworkEnable // MNetworkChangeCallback "OnLightGroupChanged" - CUtlStringToken m_LightGroup; // 0x558 + CUtlStringToken m_LightGroup; // 0x568 // MNetworkEnable - bool m_bRenderToCubemaps; // 0x55c + bool m_bRenderToCubemaps; // 0x56c private: - [[maybe_unused]] uint8_t __pad055d[0x3]; // 0x55d + [[maybe_unused]] uint8_t __pad056d[0x3]; // 0x56d public: // MNetworkEnable - CCollisionProperty m_Collision; // 0x560 + CCollisionProperty m_Collision; // 0x570 // MNetworkEnable - CGlowProperty m_Glow; // 0x610 + CGlowProperty m_Glow; // 0x620 // MNetworkEnable - float m_flGlowBackfaceMult; // 0x668 + float m_flGlowBackfaceMult; // 0x678 // MNetworkEnable - float m_fadeMinDist; // 0x66c + float m_fadeMinDist; // 0x67c // MNetworkEnable - float m_fadeMaxDist; // 0x670 + float m_fadeMaxDist; // 0x680 // MNetworkEnable - float m_flFadeScale; // 0x674 + float m_flFadeScale; // 0x684 // MNetworkEnable - float m_flShadowStrength; // 0x678 + float m_flShadowStrength; // 0x688 // MNetworkEnable - uint8_t m_nObjectCulling; // 0x67c + uint8_t m_nObjectCulling; // 0x68c private: - [[maybe_unused]] uint8_t __pad067d[0x3]; // 0x67d + [[maybe_unused]] uint8_t __pad068d[0x3]; // 0x68d public: // MNetworkEnable - int32_t m_nAddDecal; // 0x680 + int32_t m_nAddDecal; // 0x690 // MNetworkEnable - Vector m_vDecalPosition; // 0x684 + Vector m_vDecalPosition; // 0x694 // MNetworkEnable - Vector m_vDecalForwardAxis; // 0x690 + Vector m_vDecalForwardAxis; // 0x6a0 // MNetworkEnable - float m_flDecalHealBloodRate; // 0x69c + float m_flDecalHealBloodRate; // 0x6ac // MNetworkEnable - float m_flDecalHealHeightRate; // 0x6a0 + float m_flDecalHealHeightRate; // 0x6b0 private: - [[maybe_unused]] uint8_t __pad06a4[0x4]; // 0x6a4 + [[maybe_unused]] uint8_t __pad06b4[0x4]; // 0x6b4 public: // MNetworkEnable - CNetworkUtlVectorBase< CHandle< CBaseModelEntity > > m_ConfigEntitiesToPropagateMaterialDecalsTo; // 0x6a8 + CNetworkUtlVectorBase< CHandle< CBaseModelEntity > > m_ConfigEntitiesToPropagateMaterialDecalsTo; // 0x6b8 // MNetworkEnable // MNetworkPriority "32" // MNetworkUserGroup "Player" - CNetworkViewOffsetVector m_vecViewOffset; // 0x6c0 + CNetworkViewOffsetVector m_vecViewOffset; // 0x6d0 }; // Alignment: 0 -// Size: 0x6f0 +// Size: 0x700 class CServerOnlyModelEntity : public CBaseModelEntity { public: @@ -9304,7 +8307,7 @@ public: }; // Alignment: 0 -// Size: 0x6f0 +// Size: 0x700 class CModelPointEntity : public CBaseModelEntity { public: @@ -9312,118 +8315,118 @@ public: }; // Alignment: 7 -// Size: 0x4f8 +// Size: 0x508 class CLogicRelay : public CLogicalEntity { public: - CEntityIOOutput m_OnTrigger; // 0x4a0 - CEntityIOOutput m_OnSpawn; // 0x4c8 - bool m_bDisabled; // 0x4f0 - bool m_bWaitForRefire; // 0x4f1 - bool m_bTriggerOnce; // 0x4f2 - bool m_bFastRetrigger; // 0x4f3 - bool m_bPassthoughCaller; // 0x4f4 + CEntityIOOutput m_OnTrigger; // 0x4b0 + CEntityIOOutput m_OnSpawn; // 0x4d8 + bool m_bDisabled; // 0x500 + bool m_bWaitForRefire; // 0x501 + bool m_bTriggerOnce; // 0x502 + bool m_bFastRetrigger; // 0x503 + bool m_bPassthoughCaller; // 0x504 }; // Alignment: 21 -// Size: 0xc68 +// Size: 0xc78 class CParticleSystem : public CBaseModelEntity { public: // MNetworkEnable - char m_szSnapshotFileName[512]; // 0x6f0 + char m_szSnapshotFileName[512]; // 0x700 // MNetworkEnable - bool m_bActive; // 0x8f0 + bool m_bActive; // 0x900 // MNetworkEnable - bool m_bFrozen; // 0x8f1 + bool m_bFrozen; // 0x901 private: - [[maybe_unused]] uint8_t __pad08f2[0x2]; // 0x8f2 + [[maybe_unused]] uint8_t __pad0902[0x2]; // 0x902 public: // MNetworkEnable - float m_flFreezeTransitionDuration; // 0x8f4 + float m_flFreezeTransitionDuration; // 0x904 // MNetworkEnable - int32_t m_nStopType; // 0x8f8 + int32_t m_nStopType; // 0x908 // MNetworkEnable - bool m_bAnimateDuringGameplayPause; // 0x8fc + bool m_bAnimateDuringGameplayPause; // 0x90c private: - [[maybe_unused]] uint8_t __pad08fd[0x3]; // 0x8fd + [[maybe_unused]] uint8_t __pad090d[0x3]; // 0x90d public: // MNetworkEnable - CStrongHandle< InfoForResourceTypeIParticleSystemDefinition > m_iEffectIndex; // 0x900 + CStrongHandle< InfoForResourceTypeIParticleSystemDefinition > m_iEffectIndex; // 0x910 // MNetworkEnable - GameTime_t m_flStartTime; // 0x908 + GameTime_t m_flStartTime; // 0x918 // MNetworkEnable - float m_flPreSimTime; // 0x90c + float m_flPreSimTime; // 0x91c // MNetworkEnable - Vector m_vServerControlPoints[4]; // 0x910 + Vector m_vServerControlPoints[4]; // 0x920 // MNetworkEnable - uint8_t m_iServerControlPointAssignments[4]; // 0x940 + uint8_t m_iServerControlPointAssignments[4]; // 0x950 // MNetworkEnable - CHandle< CBaseEntity > m_hControlPointEnts[64]; // 0x944 + CHandle< CBaseEntity > m_hControlPointEnts[64]; // 0x954 // MNetworkEnable - bool m_bNoSave; // 0xa44 + bool m_bNoSave; // 0xa54 // MNetworkEnable - bool m_bNoFreeze; // 0xa45 - bool m_bStartActive; // 0xa46 + bool m_bNoFreeze; // 0xa55 + bool m_bStartActive; // 0xa56 private: - [[maybe_unused]] uint8_t __pad0a47[0x1]; // 0xa47 + [[maybe_unused]] uint8_t __pad0a57[0x1]; // 0xa57 public: - CUtlSymbolLarge m_iszEffectName; // 0xa48 - CUtlSymbolLarge m_iszControlPointNames[64]; // 0xa50 - int32_t m_nDataCP; // 0xc50 - Vector m_vecDataCPValue; // 0xc54 - int32_t m_nTintCP; // 0xc60 - Color m_clrTint; // 0xc64 + CUtlSymbolLarge m_iszEffectName; // 0xa58 + CUtlSymbolLarge m_iszControlPointNames[64]; // 0xa60 + int32_t m_nDataCP; // 0xc60 + Vector m_vecDataCPValue; // 0xc64 + int32_t m_nTintCP; // 0xc70 + Color m_clrTint; // 0xc74 }; // Alignment: 16 -// Size: 0x580 +// Size: 0x590 class CPathParticleRope : public CBaseEntity { public: - bool m_bStartActive; // 0x4a0 + bool m_bStartActive; // 0x4b0 private: - [[maybe_unused]] uint8_t __pad04a1[0x3]; // 0x4a1 + [[maybe_unused]] uint8_t __pad04b1[0x3]; // 0x4b1 public: - float m_flMaxSimulationTime; // 0x4a4 - CUtlSymbolLarge m_iszEffectName; // 0x4a8 - CUtlVector< CUtlSymbolLarge > m_PathNodes_Name; // 0x4b0 + float m_flMaxSimulationTime; // 0x4b4 + CUtlSymbolLarge m_iszEffectName; // 0x4b8 + CUtlVector< CUtlSymbolLarge > m_PathNodes_Name; // 0x4c0 // MNetworkEnable - float m_flParticleSpacing; // 0x4c8 + float m_flParticleSpacing; // 0x4d8 // MNetworkEnable // MNetworkChangeCallback "parametersChanged" - float m_flSlack; // 0x4cc + float m_flSlack; // 0x4dc // MNetworkEnable // MNetworkChangeCallback "parametersChanged" - float m_flRadius; // 0x4d0 + float m_flRadius; // 0x4e0 // MNetworkEnable // MNetworkChangeCallback "parametersChanged" - Color m_ColorTint; // 0x4d4 + Color m_ColorTint; // 0x4e4 // MNetworkEnable // MNetworkChangeCallback "effectStateChanged" - int32_t m_nEffectState; // 0x4d8 + int32_t m_nEffectState; // 0x4e8 private: - [[maybe_unused]] uint8_t __pad04dc[0x4]; // 0x4dc + [[maybe_unused]] uint8_t __pad04ec[0x4]; // 0x4ec public: // MNetworkEnable - CStrongHandle< InfoForResourceTypeIParticleSystemDefinition > m_iEffectIndex; // 0x4e0 + CStrongHandle< InfoForResourceTypeIParticleSystemDefinition > m_iEffectIndex; // 0x4f0 // MNetworkEnable - CNetworkUtlVectorBase< Vector > m_PathNodes_Position; // 0x4e8 + CNetworkUtlVectorBase< Vector > m_PathNodes_Position; // 0x4f8 // MNetworkEnable - CNetworkUtlVectorBase< Vector > m_PathNodes_TangentIn; // 0x500 + CNetworkUtlVectorBase< Vector > m_PathNodes_TangentIn; // 0x510 // MNetworkEnable - CNetworkUtlVectorBase< Vector > m_PathNodes_TangentOut; // 0x518 + CNetworkUtlVectorBase< Vector > m_PathNodes_TangentOut; // 0x528 // MNetworkEnable - CNetworkUtlVectorBase< Vector > m_PathNodes_Color; // 0x530 + CNetworkUtlVectorBase< Vector > m_PathNodes_Color; // 0x540 // MNetworkEnable // MNetworkChangeCallback "pinStateChanged" - CNetworkUtlVectorBase< bool > m_PathNodes_PinEnabled; // 0x548 + CNetworkUtlVectorBase< bool > m_PathNodes_PinEnabled; // 0x558 // MNetworkEnable - CNetworkUtlVectorBase< float32 > m_PathNodes_RadiusScale; // 0x560 + CNetworkUtlVectorBase< float32 > m_PathNodes_RadiusScale; // 0x570 }; // Alignment: 0 -// Size: 0x580 +// Size: 0x590 class CPathParticleRopeAlias_path_particle_rope_clientside : public CPathParticleRope { public: @@ -9431,15 +8434,15 @@ public: }; // Alignment: 1 -// Size: 0x6f8 +// Size: 0x708 class CFuncWall : public CBaseModelEntity { public: - int32_t m_nState; // 0x6f0 + int32_t m_nState; // 0x700 }; // Alignment: 0 -// Size: 0x6f8 +// Size: 0x708 class CFuncWallToggle : public CFuncWall { public: @@ -9447,7 +8450,7 @@ public: }; // Alignment: 0 -// Size: 0x6f0 +// Size: 0x700 class CFuncVehicleClip : public CBaseModelEntity { public: @@ -9455,7 +8458,7 @@ public: }; // Alignment: 0 -// Size: 0x6f0 +// Size: 0x700 class CFuncIllusionary : public CBaseModelEntity { public: @@ -9463,28 +8466,28 @@ public: }; // Alignment: 1 -// Size: 0x6f8 +// Size: 0x708 class CFuncVPhysicsClip : public CBaseModelEntity { public: - bool m_bDisabled; // 0x6f0 + bool m_bDisabled; // 0x700 }; // Alignment: 3 -// Size: 0x708 +// Size: 0x718 class CFuncInteractionLayerClip : public CBaseModelEntity { public: - bool m_bDisabled; // 0x6f0 + bool m_bDisabled; // 0x700 private: - [[maybe_unused]] uint8_t __pad06f1[0x7]; // 0x6f1 + [[maybe_unused]] uint8_t __pad0701[0x7]; // 0x701 public: - CUtlSymbolLarge m_iszInteractsAs; // 0x6f8 - CUtlSymbolLarge m_iszInteractsWith; // 0x700 + CUtlSymbolLarge m_iszInteractsAs; // 0x708 + CUtlSymbolLarge m_iszInteractsWith; // 0x710 }; // Alignment: 0 -// Size: 0x4a0 +// Size: 0x4b0 class CPointClientCommand : public CPointEntity { public: @@ -9492,7 +8495,7 @@ public: }; // Alignment: 0 -// Size: 0x4a0 +// Size: 0x4b0 class CPointServerCommand : public CPointEntity { public: @@ -9500,7 +8503,7 @@ public: }; // Alignment: 0 -// Size: 0x4a0 +// Size: 0x4b0 class CPointBroadcastClientCommand : public CPointEntity { public: @@ -9508,88 +8511,88 @@ public: }; // Alignment: 3 -// Size: 0x518 +// Size: 0x528 class CCommentaryAuto : public CBaseEntity { public: - CEntityIOOutput m_OnCommentaryNewGame; // 0x4a0 - CEntityIOOutput m_OnCommentaryMidGame; // 0x4c8 - CEntityIOOutput m_OnCommentaryMultiplayerSpawn; // 0x4f0 + CEntityIOOutput m_OnCommentaryNewGame; // 0x4b0 + CEntityIOOutput m_OnCommentaryMidGame; // 0x4d8 + CEntityIOOutput m_OnCommentaryMultiplayerSpawn; // 0x500 }; // Alignment: 9 -// Size: 0x708 +// Size: 0x718 class CDynamicLight : public CBaseModelEntity { public: - uint8_t m_ActualFlags; // 0x6f0 + uint8_t m_ActualFlags; // 0x700 // MNetworkEnable - uint8_t m_Flags; // 0x6f1 + uint8_t m_Flags; // 0x701 // MNetworkEnable - uint8_t m_LightStyle; // 0x6f2 - bool m_On; // 0x6f3 + uint8_t m_LightStyle; // 0x702 + bool m_On; // 0x703 // MNetworkEnable - float m_Radius; // 0x6f4 + float m_Radius; // 0x704 // MNetworkEnable - int32_t m_Exponent; // 0x6f8 + int32_t m_Exponent; // 0x708 // MNetworkEnable // MNetworkBitCount "8" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "360.000000" - float m_InnerAngle; // 0x6fc + // MNetworkMinValue "0" + // MNetworkMaxValue "360" + float m_InnerAngle; // 0x70c // MNetworkEnable // MNetworkBitCount "8" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "360.000000" - float m_OuterAngle; // 0x700 + // MNetworkMinValue "0" + // MNetworkMaxValue "360" + float m_OuterAngle; // 0x710 // MNetworkEnable - float m_SpotRadius; // 0x704 + float m_SpotRadius; // 0x714 }; // Alignment: 3 -// Size: 0x700 +// Size: 0x710 class CBubbling : public CBaseModelEntity { public: - int32_t m_density; // 0x6f0 - int32_t m_frequency; // 0x6f4 - int32_t m_state; // 0x6f8 + int32_t m_density; // 0x700 + int32_t m_frequency; // 0x704 + int32_t m_state; // 0x708 }; // Alignment: 2 -// Size: 0x4b0 +// Size: 0x4c0 class CEnvTracer : public CPointEntity { public: - Vector m_vecEnd; // 0x4a0 - float m_flDelay; // 0x4ac + Vector m_vecEnd; // 0x4b0 + float m_flDelay; // 0x4bc }; // Alignment: 5 -// Size: 0x5d0 +// Size: 0x5e0 class CTestEffect : public CBaseEntity { public: - int32_t m_iLoop; // 0x4a0 - int32_t m_iBeam; // 0x4a4 - CBeam* m_pBeam[24]; // 0x4a8 - GameTime_t m_flBeamTime[24]; // 0x568 - GameTime_t m_flStartTime; // 0x5c8 + int32_t m_iLoop; // 0x4b0 + int32_t m_iBeam; // 0x4b4 + CBeam* m_pBeam[24]; // 0x4b8 + GameTime_t m_flBeamTime[24]; // 0x578 + GameTime_t m_flStartTime; // 0x5d8 }; // Alignment: 4 -// Size: 0x4c0 +// Size: 0x4d0 class CBlood : public CPointEntity { public: - QAngle m_vecSprayAngles; // 0x4a0 - Vector m_vecSprayDir; // 0x4ac - float m_flAmount; // 0x4b8 - int32_t m_Color; // 0x4bc + QAngle m_vecSprayAngles; // 0x4b0 + Vector m_vecSprayDir; // 0x4bc + float m_flAmount; // 0x4c8 + int32_t m_Color; // 0x4cc }; // Alignment: 0 -// Size: 0x4a0 +// Size: 0x4b0 class CEnvFunnel : public CBaseEntity { public: @@ -9597,19 +8600,19 @@ public: }; // Alignment: 2 -// Size: 0x4a8 +// Size: 0x4b8 class CEnvBeverage : public CBaseEntity { public: - bool m_CanInDispenser; // 0x4a0 + bool m_CanInDispenser; // 0x4b0 private: - [[maybe_unused]] uint8_t __pad04a1[0x3]; // 0x4a1 + [[maybe_unused]] uint8_t __pad04b1[0x3]; // 0x4b1 public: - int32_t m_nBeverageType; // 0x4a4 + int32_t m_nBeverageType; // 0x4b4 }; // Alignment: 0 -// Size: 0x6f0 +// Size: 0x700 class CPrecipitationBlocker : public CBaseModelEntity { public: @@ -9617,93 +8620,91 @@ public: }; // Alignment: 1 -// Size: 0x6f8 +// Size: 0x708 class CEnvWind : public CBaseEntity { public: // MNetworkEnable - CEnvWindShared m_EnvWindShared; // 0x4a0 + CEnvWindShared m_EnvWindShared; // 0x4b0 }; // Alignment: 1 -// Size: 0x4a8 +// Size: 0x4b8 class CPhysicsWire : public CBaseEntity { public: - int32_t m_nDensity; // 0x4a0 + int32_t m_nDensity; // 0x4b0 }; // Alignment: 2 -// Size: 0x4b0 +// Size: 0x4c0 class CEnvMuzzleFlash : public CPointEntity { public: - float m_flScale; // 0x4a0 + float m_flScale; // 0x4b0 private: - [[maybe_unused]] uint8_t __pad04a4[0x4]; // 0x4a4 + [[maybe_unused]] uint8_t __pad04b4[0x4]; // 0x4b4 public: - CUtlSymbolLarge m_iszParentAttachment; // 0x4a8 + CUtlSymbolLarge m_iszParentAttachment; // 0x4b8 }; // Alignment: 1 -// Size: 0x4a8 +// Size: 0x4b8 class CEnvSplash : public CPointEntity { public: - float m_flScale; // 0x4a0 + float m_flScale; // 0x4b0 }; // Alignment: 2 -// Size: 0x4b0 +// Size: 0x4c0 class CEnvViewPunch : public CPointEntity { public: - float m_flRadius; // 0x4a0 - QAngle m_angViewPunch; // 0x4a4 + float m_flRadius; // 0x4b0 + QAngle m_angViewPunch; // 0x4b4 }; // Alignment: 1 -// Size: 0x4a8 +// Size: 0x4b8 class CEnvEntityIgniter : public CBaseEntity { public: - float m_flLifetime; // 0x4a0 + float m_flLifetime; // 0x4b0 }; // Alignment: 1 -// Size: 0x5488 +// Size: 0x5498 class CDebugHistory : public CBaseEntity { -private: - [[maybe_unused]] uint8_t __pad04a0[0x1f4040]; // 0x4a0 public: - int32_t m_nNpcEvents; // 0x1f44e0 + int32_t m_nNpcEvents; // 0x1f44f0 }; // Alignment: 12 -// Size: 0x540 +// Size: 0x550 class CEnvEntityMaker : public CPointEntity { public: - Vector m_vecEntityMins; // 0x4a0 - Vector m_vecEntityMaxs; // 0x4ac - CHandle< CBaseEntity > m_hCurrentInstance; // 0x4b8 - CHandle< CBaseEntity > m_hCurrentBlocker; // 0x4bc - Vector m_vecBlockerOrigin; // 0x4c0 - QAngle m_angPostSpawnDirection; // 0x4cc - float m_flPostSpawnDirectionVariance; // 0x4d8 - float m_flPostSpawnSpeed; // 0x4dc - bool m_bPostSpawnUseAngles; // 0x4e0 + Vector m_vecEntityMins; // 0x4b0 + Vector m_vecEntityMaxs; // 0x4bc + CHandle< CBaseEntity > m_hCurrentInstance; // 0x4c8 + CHandle< CBaseEntity > m_hCurrentBlocker; // 0x4cc + Vector m_vecBlockerOrigin; // 0x4d0 + QAngle m_angPostSpawnDirection; // 0x4dc + float m_flPostSpawnDirectionVariance; // 0x4e8 + float m_flPostSpawnSpeed; // 0x4ec + bool m_bPostSpawnUseAngles; // 0x4f0 private: - [[maybe_unused]] uint8_t __pad04e1[0x7]; // 0x4e1 + [[maybe_unused]] uint8_t __pad04f1[0x7]; // 0x4f1 public: - CUtlSymbolLarge m_iszTemplate; // 0x4e8 - CEntityIOOutput m_pOutputOnSpawned; // 0x4f0 - CEntityIOOutput m_pOutputOnFailedSpawn; // 0x518 + CUtlSymbolLarge m_iszTemplate; // 0x4f8 + CEntityIOOutput m_pOutputOnSpawned; // 0x500 + CEntityIOOutput m_pOutputOnFailedSpawn; // 0x528 }; // Alignment: 0 -// Size: 0x4a0 +// Size: 0x4b0 class CInfoInstructorHintTarget : public CPointEntity { public: @@ -9711,176 +8712,176 @@ public: }; // Alignment: 24 -// Size: 0x510 +// Size: 0x520 class CEnvInstructorHint : public CPointEntity { public: - CUtlSymbolLarge m_iszName; // 0x4a0 - CUtlSymbolLarge m_iszReplace_Key; // 0x4a8 - CUtlSymbolLarge m_iszHintTargetEntity; // 0x4b0 - int32_t m_iTimeout; // 0x4b8 - int32_t m_iDisplayLimit; // 0x4bc - CUtlSymbolLarge m_iszIcon_Onscreen; // 0x4c0 - CUtlSymbolLarge m_iszIcon_Offscreen; // 0x4c8 - CUtlSymbolLarge m_iszCaption; // 0x4d0 - CUtlSymbolLarge m_iszActivatorCaption; // 0x4d8 - Color m_Color; // 0x4e0 - float m_fIconOffset; // 0x4e4 - float m_fRange; // 0x4e8 - uint8_t m_iPulseOption; // 0x4ec - uint8_t m_iAlphaOption; // 0x4ed - uint8_t m_iShakeOption; // 0x4ee - bool m_bStatic; // 0x4ef - bool m_bNoOffscreen; // 0x4f0 - bool m_bForceCaption; // 0x4f1 + CUtlSymbolLarge m_iszName; // 0x4b0 + CUtlSymbolLarge m_iszReplace_Key; // 0x4b8 + CUtlSymbolLarge m_iszHintTargetEntity; // 0x4c0 + int32_t m_iTimeout; // 0x4c8 + int32_t m_iDisplayLimit; // 0x4cc + CUtlSymbolLarge m_iszIcon_Onscreen; // 0x4d0 + CUtlSymbolLarge m_iszIcon_Offscreen; // 0x4d8 + CUtlSymbolLarge m_iszCaption; // 0x4e0 + CUtlSymbolLarge m_iszActivatorCaption; // 0x4e8 + Color m_Color; // 0x4f0 + float m_fIconOffset; // 0x4f4 + float m_fRange; // 0x4f8 + uint8_t m_iPulseOption; // 0x4fc + uint8_t m_iAlphaOption; // 0x4fd + uint8_t m_iShakeOption; // 0x4fe + bool m_bStatic; // 0x4ff + bool m_bNoOffscreen; // 0x500 + bool m_bForceCaption; // 0x501 private: - [[maybe_unused]] uint8_t __pad04f2[0x2]; // 0x4f2 + [[maybe_unused]] uint8_t __pad0502[0x2]; // 0x502 public: - int32_t m_iInstanceType; // 0x4f4 - bool m_bSuppressRest; // 0x4f8 + int32_t m_iInstanceType; // 0x504 + bool m_bSuppressRest; // 0x508 private: - [[maybe_unused]] uint8_t __pad04f9[0x7]; // 0x4f9 + [[maybe_unused]] uint8_t __pad0509[0x7]; // 0x509 public: - CUtlSymbolLarge m_iszBinding; // 0x500 - bool m_bAllowNoDrawTarget; // 0x508 - bool m_bAutoStart; // 0x509 - bool m_bLocalPlayerOnly; // 0x50a + CUtlSymbolLarge m_iszBinding; // 0x510 + bool m_bAllowNoDrawTarget; // 0x518 + bool m_bAutoStart; // 0x519 + bool m_bLocalPlayerOnly; // 0x51a }; // Alignment: 9 -// Size: 0x4e0 +// Size: 0x4f0 class CEnvInstructorVRHint : public CPointEntity { public: - CUtlSymbolLarge m_iszName; // 0x4a0 - CUtlSymbolLarge m_iszHintTargetEntity; // 0x4a8 - int32_t m_iTimeout; // 0x4b0 + CUtlSymbolLarge m_iszName; // 0x4b0 + CUtlSymbolLarge m_iszHintTargetEntity; // 0x4b8 + int32_t m_iTimeout; // 0x4c0 private: - [[maybe_unused]] uint8_t __pad04b4[0x4]; // 0x4b4 + [[maybe_unused]] uint8_t __pad04c4[0x4]; // 0x4c4 public: - CUtlSymbolLarge m_iszCaption; // 0x4b8 - CUtlSymbolLarge m_iszStartSound; // 0x4c0 - int32_t m_iLayoutFileType; // 0x4c8 + CUtlSymbolLarge m_iszCaption; // 0x4c8 + CUtlSymbolLarge m_iszStartSound; // 0x4d0 + int32_t m_iLayoutFileType; // 0x4d8 private: - [[maybe_unused]] uint8_t __pad04cc[0x4]; // 0x4cc + [[maybe_unused]] uint8_t __pad04dc[0x4]; // 0x4dc public: - CUtlSymbolLarge m_iszCustomLayoutFile; // 0x4d0 - int32_t m_iAttachType; // 0x4d8 - float m_flHeightOffset; // 0x4dc + CUtlSymbolLarge m_iszCustomLayoutFile; // 0x4e0 + int32_t m_iAttachType; // 0x4e8 + float m_flHeightOffset; // 0x4ec }; // Alignment: 3 -// Size: 0x4b8 +// Size: 0x4c8 class CInstructorEventEntity : public CPointEntity { public: - CUtlSymbolLarge m_iszName; // 0x4a0 - CUtlSymbolLarge m_iszHintTargetEntity; // 0x4a8 - CHandle< CBasePlayerPawn > m_hTargetPlayer; // 0x4b0 + CUtlSymbolLarge m_iszName; // 0x4b0 + CUtlSymbolLarge m_iszHintTargetEntity; // 0x4b8 + CHandle< CBasePlayerPawn > m_hTargetPlayer; // 0x4c0 }; // Alignment: 5 -// Size: 0x528 +// Size: 0x538 class CEnvScreenOverlay : public CPointEntity { public: // MNetworkEnable - CUtlSymbolLarge m_iszOverlayNames[10]; // 0x4a0 + CUtlSymbolLarge m_iszOverlayNames[10]; // 0x4b0 // MNetworkEnable // MNetworkBitCount "11" - // MNetworkMinValue "-1.000000" - // MNetworkMaxValue "63.000000" - float m_flOverlayTimes[10]; // 0x4f0 + // MNetworkMinValue "-1" + // MNetworkMaxValue "63" + float m_flOverlayTimes[10]; // 0x500 // MNetworkEnable - GameTime_t m_flStartTime; // 0x518 + GameTime_t m_flStartTime; // 0x528 // MNetworkEnable - int32_t m_iDesiredOverlay; // 0x51c + int32_t m_iDesiredOverlay; // 0x52c // MNetworkEnable - bool m_bIsActive; // 0x520 + bool m_bIsActive; // 0x530 }; // Alignment: 2 -// Size: 0x4a8 +// Size: 0x4b8 class CEnvZoom : public CPointEntity { public: - float m_flSpeed; // 0x4a0 - int32_t m_nFOV; // 0x4a4 + float m_flSpeed; // 0x4b0 + int32_t m_nFOV; // 0x4b4 }; // Alignment: 4 -// Size: 0x4d8 +// Size: 0x4e8 class CEnvFade : public CLogicalEntity { public: // MNetworkEnable - Color m_fadeColor; // 0x4a0 - float m_Duration; // 0x4a4 - float m_HoldDuration; // 0x4a8 + Color m_fadeColor; // 0x4b0 + float m_Duration; // 0x4b4 + float m_HoldDuration; // 0x4b8 private: - [[maybe_unused]] uint8_t __pad04ac[0x4]; // 0x4ac + [[maybe_unused]] uint8_t __pad04bc[0x4]; // 0x4bc public: - CEntityIOOutput m_OnBeginFade; // 0x4b0 + CEntityIOOutput m_OnBeginFade; // 0x4c0 }; // Alignment: 3 -// Size: 0x4d0 +// Size: 0x4e0 class CCredits : public CPointEntity { public: - CEntityIOOutput m_OnCreditsDone; // 0x4a0 - bool m_bRolledOutroCredits; // 0x4c8 + CEntityIOOutput m_OnCreditsDone; // 0x4b0 + bool m_bRolledOutroCredits; // 0x4d8 private: - [[maybe_unused]] uint8_t __pad04c9[0x3]; // 0x4c9 + [[maybe_unused]] uint8_t __pad04d9[0x3]; // 0x4d9 public: - float m_flLogoLength; // 0x4cc + float m_flLogoLength; // 0x4dc }; // Alignment: 10 -// Size: 0x4f0 +// Size: 0x500 class CEnvShake : public CPointEntity { public: - CUtlSymbolLarge m_limitToEntity; // 0x4a0 - float m_Amplitude; // 0x4a8 - float m_Frequency; // 0x4ac - float m_Duration; // 0x4b0 - float m_Radius; // 0x4b4 - GameTime_t m_stopTime; // 0x4b8 - GameTime_t m_nextShake; // 0x4bc - float m_currentAmp; // 0x4c0 - Vector m_maxForce; // 0x4c4 + CUtlSymbolLarge m_limitToEntity; // 0x4b0 + float m_Amplitude; // 0x4b8 + float m_Frequency; // 0x4bc + float m_Duration; // 0x4c0 + float m_Radius; // 0x4c4 + GameTime_t m_stopTime; // 0x4c8 + GameTime_t m_nextShake; // 0x4cc + float m_currentAmp; // 0x4d0 + Vector m_maxForce; // 0x4d4 private: - [[maybe_unused]] uint8_t __pad04d0[0x8]; // 0x4d0 + [[maybe_unused]] uint8_t __pad04e0[0x8]; // 0x4e0 public: - CPhysicsShake m_shakeCallback; // 0x4d8 + CPhysicsShake m_shakeCallback; // 0x4e8 }; // Alignment: 4 -// Size: 0x4b0 +// Size: 0x4c0 class CEnvTilt : public CPointEntity { public: - float m_Duration; // 0x4a0 - float m_Radius; // 0x4a4 - float m_TiltTime; // 0x4a8 - GameTime_t m_stopTime; // 0x4ac + float m_Duration; // 0x4b0 + float m_Radius; // 0x4b4 + float m_TiltTime; // 0x4b8 + GameTime_t m_stopTime; // 0x4bc }; // Alignment: 5 -// Size: 0x4d8 +// Size: 0x4e8 class CEnvSpark : public CPointEntity { public: - float m_flDelay; // 0x4a0 - int32_t m_nMagnitude; // 0x4a4 - int32_t m_nTrailLength; // 0x4a8 - int32_t m_nType; // 0x4ac - CEntityIOOutput m_OnSpark; // 0x4b0 + float m_flDelay; // 0x4b0 + int32_t m_nMagnitude; // 0x4b4 + int32_t m_nTrailLength; // 0x4b8 + int32_t m_nType; // 0x4bc + CEntityIOOutput m_OnSpark; // 0x4c0 }; // Alignment: 0 -// Size: 0x6f0 +// Size: 0x700 class CShower : public CModelPointEntity { public: @@ -9888,387 +8889,383 @@ public: }; // Alignment: 15 -// Size: 0x748 +// Size: 0x758 class CEnvExplosion : public CModelPointEntity { public: - int32_t m_iMagnitude; // 0x6f0 - float m_flPlayerDamage; // 0x6f4 - int32_t m_iRadiusOverride; // 0x6f8 - float m_flInnerRadius; // 0x6fc - int32_t m_spriteScale; // 0x700 - float m_flDamageForce; // 0x704 - CHandle< CBaseEntity > m_hInflictor; // 0x708 - int32_t m_iCustomDamageType; // 0x70c + int32_t m_iMagnitude; // 0x700 + float m_flPlayerDamage; // 0x704 + int32_t m_iRadiusOverride; // 0x708 + float m_flInnerRadius; // 0x70c + int32_t m_spriteScale; // 0x710 + float m_flDamageForce; // 0x714 + CHandle< CBaseEntity > m_hInflictor; // 0x718 + int32_t m_iCustomDamageType; // 0x71c private: - [[maybe_unused]] uint8_t __pad0710[0x8]; // 0x710 + [[maybe_unused]] uint8_t __pad0720[0x8]; // 0x720 public: - CUtlSymbolLarge m_iszExplosionType; // 0x718 - CUtlSymbolLarge m_iszCustomEffectName; // 0x720 - CUtlSymbolLarge m_iszCustomSoundName; // 0x728 - Class_T m_iClassIgnore; // 0x730 - Class_T m_iClassIgnore2; // 0x734 - CUtlSymbolLarge m_iszEntityIgnoreName; // 0x738 - CHandle< CBaseEntity > m_hEntityIgnore; // 0x740 + CUtlSymbolLarge m_iszExplosionType; // 0x728 + CUtlSymbolLarge m_iszCustomEffectName; // 0x730 + CUtlSymbolLarge m_iszCustomSoundName; // 0x738 + Class_T m_iClassIgnore; // 0x740 + Class_T m_iClassIgnore2; // 0x744 + CUtlSymbolLarge m_iszEntityIgnoreName; // 0x748 + CHandle< CBaseEntity > m_hEntityIgnore; // 0x750 }; // Alignment: 1 -// Size: 0x500 +// Size: 0x510 class CFilterName : public CBaseFilter { public: - CUtlSymbolLarge m_iFilterName; // 0x4f8 + CUtlSymbolLarge m_iFilterName; // 0x508 }; // Alignment: 1 -// Size: 0x500 +// Size: 0x510 class CFilterModel : public CBaseFilter { public: - CUtlSymbolLarge m_iFilterModel; // 0x4f8 + CUtlSymbolLarge m_iFilterModel; // 0x508 }; // Alignment: 1 -// Size: 0x500 +// Size: 0x510 class CFilterContext : public CBaseFilter { public: - CUtlSymbolLarge m_iFilterContext; // 0x4f8 + CUtlSymbolLarge m_iFilterContext; // 0x508 }; // Alignment: 1 -// Size: 0x500 +// Size: 0x510 class FilterTeam : public CBaseFilter { public: - int32_t m_iFilterTeam; // 0x4f8 + int32_t m_iFilterTeam; // 0x508 }; // Alignment: 1 -// Size: 0x500 +// Size: 0x510 class CFilterMassGreater : public CBaseFilter { public: - float m_fFilterMass; // 0x4f8 + float m_fFilterMass; // 0x508 }; // Alignment: 1 -// Size: 0x500 +// Size: 0x510 class FilterDamageType : public CBaseFilter { public: - int32_t m_iDamageType; // 0x4f8 + int32_t m_iDamageType; // 0x508 }; // Alignment: 3 -// Size: 0x508 +// Size: 0x518 class FilterHealth : public CBaseFilter { public: - bool m_bAdrenalineActive; // 0x4f8 + bool m_bAdrenalineActive; // 0x508 private: - [[maybe_unused]] uint8_t __pad04f9[0x3]; // 0x4f9 + [[maybe_unused]] uint8_t __pad0509[0x3]; // 0x509 public: - int32_t m_iHealthMin; // 0x4fc - int32_t m_iHealthMax; // 0x500 + int32_t m_iHealthMin; // 0x50c + int32_t m_iHealthMax; // 0x510 }; // Alignment: 5 -// Size: 0x518 +// Size: 0x528 class CFilterEnemy : public CBaseFilter { public: - CUtlSymbolLarge m_iszEnemyName; // 0x4f8 - float m_flRadius; // 0x500 - float m_flOuterRadius; // 0x504 - int32_t m_nMaxSquadmatesPerEnemy; // 0x508 + CUtlSymbolLarge m_iszEnemyName; // 0x508 + float m_flRadius; // 0x510 + float m_flOuterRadius; // 0x514 + int32_t m_nMaxSquadmatesPerEnemy; // 0x518 private: - [[maybe_unused]] uint8_t __pad050c[0x4]; // 0x50c + [[maybe_unused]] uint8_t __pad051c[0x4]; // 0x51c public: - CUtlSymbolLarge m_iszPlayerName; // 0x510 + CUtlSymbolLarge m_iszPlayerName; // 0x520 }; // Alignment: 1 -// Size: 0x500 +// Size: 0x510 class CFilterAttributeInt : public CBaseFilter { public: - CUtlStringToken m_sAttributeName; // 0x4f8 + CUtlStringToken m_sAttributeName; // 0x508 }; // Alignment: 19 -// Size: 0x780 +// Size: 0x790 class CFire : public CBaseModelEntity { public: - CHandle< CBaseFire > m_hEffect; // 0x6f0 - CHandle< CBaseEntity > m_hOwner; // 0x6f4 - int32_t m_nFireType; // 0x6f8 - float m_flFuel; // 0x6fc - GameTime_t m_flDamageTime; // 0x700 - GameTime_t m_lastDamage; // 0x704 - float m_flFireSize; // 0x708 - GameTime_t m_flLastNavUpdateTime; // 0x70c - float m_flHeatLevel; // 0x710 - float m_flHeatAbsorb; // 0x714 - float m_flDamageScale; // 0x718 - float m_flMaxHeat; // 0x71c - float m_flLastHeatLevel; // 0x720 - float m_flAttackTime; // 0x724 - bool m_bEnabled; // 0x728 - bool m_bStartDisabled; // 0x729 - bool m_bDidActivate; // 0x72a + CHandle< CBaseFire > m_hEffect; // 0x700 + CHandle< CBaseEntity > m_hOwner; // 0x704 + int32_t m_nFireType; // 0x708 + float m_flFuel; // 0x70c + GameTime_t m_flDamageTime; // 0x710 + GameTime_t m_lastDamage; // 0x714 + float m_flFireSize; // 0x718 + GameTime_t m_flLastNavUpdateTime; // 0x71c + float m_flHeatLevel; // 0x720 + float m_flHeatAbsorb; // 0x724 + float m_flDamageScale; // 0x728 + float m_flMaxHeat; // 0x72c + float m_flLastHeatLevel; // 0x730 + float m_flAttackTime; // 0x734 + bool m_bEnabled; // 0x738 + bool m_bStartDisabled; // 0x739 + bool m_bDidActivate; // 0x73a private: - [[maybe_unused]] uint8_t __pad072b[0x5]; // 0x72b + [[maybe_unused]] uint8_t __pad073b[0x5]; // 0x73b public: - CEntityIOOutput m_OnIgnited; // 0x730 - CEntityIOOutput m_OnExtinguished; // 0x758 + CEntityIOOutput m_OnIgnited; // 0x740 + CEntityIOOutput m_OnExtinguished; // 0x768 }; // Alignment: 3 -// Size: 0x4b0 +// Size: 0x4c0 class CEnvFireSource : public CBaseEntity { public: - bool m_bEnabled; // 0x4a0 + bool m_bEnabled; // 0x4b0 private: - [[maybe_unused]] uint8_t __pad04a1[0x3]; // 0x4a1 + [[maybe_unused]] uint8_t __pad04b1[0x3]; // 0x4b1 public: - float m_radius; // 0x4a4 - float m_damage; // 0x4a8 + float m_radius; // 0x4b4 + float m_damage; // 0x4b8 }; // Alignment: 8 -// Size: 0x508 +// Size: 0x518 class CEnvFireSensor : public CBaseEntity { public: - bool m_bEnabled; // 0x4a0 - bool m_bHeatAtLevel; // 0x4a1 + bool m_bEnabled; // 0x4b0 + bool m_bHeatAtLevel; // 0x4b1 private: - [[maybe_unused]] uint8_t __pad04a2[0x2]; // 0x4a2 + [[maybe_unused]] uint8_t __pad04b2[0x2]; // 0x4b2 public: - float m_radius; // 0x4a4 - float m_targetLevel; // 0x4a8 - float m_targetTime; // 0x4ac - float m_levelTime; // 0x4b0 + float m_radius; // 0x4b4 + float m_targetLevel; // 0x4b8 + float m_targetTime; // 0x4bc + float m_levelTime; // 0x4c0 private: - [[maybe_unused]] uint8_t __pad04b4[0x4]; // 0x4b4 + [[maybe_unused]] uint8_t __pad04c4[0x4]; // 0x4c4 public: - CEntityIOOutput m_OnHeatLevelStart; // 0x4b8 - CEntityIOOutput m_OnHeatLevelEnd; // 0x4e0 + CEntityIOOutput m_OnHeatLevelStart; // 0x4c8 + CEntityIOOutput m_OnHeatLevelEnd; // 0x4f0 }; // Alignment: 5 -// Size: 0x4b8 +// Size: 0x4c8 class CFuncTimescale : public CBaseEntity { public: - float m_flDesiredTimescale; // 0x4a0 - float m_flAcceleration; // 0x4a4 - float m_flMinBlendRate; // 0x4a8 - float m_flBlendDeltaMultiplier; // 0x4ac - bool m_isStarted; // 0x4b0 + float m_flDesiredTimescale; // 0x4b0 + float m_flAcceleration; // 0x4b4 + float m_flMinBlendRate; // 0x4b8 + float m_flBlendDeltaMultiplier; // 0x4bc + bool m_isStarted; // 0x4c0 }; // Alignment: 5 -// Size: 0x4d8 +// Size: 0x4e8 class CGameWeaponManager : public CBaseEntity { public: - CUtlSymbolLarge m_iszWeaponName; // 0x4a0 + CUtlSymbolLarge m_iszWeaponName; // 0x4b0 private: - [[maybe_unused]] uint8_t __pad04a8[0x8]; // 0x4a8 + [[maybe_unused]] uint8_t __pad04b8[0x8]; // 0x4b8 public: - int32_t m_iMaxPieces; // 0x4b0 - float m_flAmmoMod; // 0x4b4 - bool m_bExpectingWeapon; // 0x4b8 + int32_t m_iMaxPieces; // 0x4c0 + float m_flAmmoMod; // 0x4c4 + bool m_bExpectingWeapon; // 0x4c8 private: - [[maybe_unused]] uint8_t __pad04b9[0x7]; // 0x4b9 + [[maybe_unused]] uint8_t __pad04c9[0x7]; // 0x4c9 public: - CUtlVector< CHandle< CBaseEntity > > m_ManagedNonWeapons; // 0x4c0 + CUtlVector< CHandle< CBaseEntity > > m_ManagedNonWeapons; // 0x4d0 }; // Alignment: 7 -// Size: 0x710 +// Size: 0x720 class CLightGlow : public CBaseModelEntity { public: // MNetworkEnable - uint32_t m_nHorizontalSize; // 0x6f0 + uint32_t m_nHorizontalSize; // 0x700 // MNetworkEnable - uint32_t m_nVerticalSize; // 0x6f4 + uint32_t m_nVerticalSize; // 0x704 // MNetworkEnable - uint32_t m_nMinDist; // 0x6f8 + uint32_t m_nMinDist; // 0x708 // MNetworkEnable - uint32_t m_nMaxDist; // 0x6fc + uint32_t m_nMaxDist; // 0x70c // MNetworkEnable - uint32_t m_nOuterMaxDist; // 0x700 + uint32_t m_nOuterMaxDist; // 0x710 // MNetworkEnable // MNetworkBitCount "6" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "64.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "64" // MNetworkEncodeFlags - float m_flGlowProxySize; // 0x704 + float m_flGlowProxySize; // 0x714 // MNetworkEnable - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "100.000000" - float m_flHDRColorScale; // 0x708 + // MNetworkMinValue "0" + // MNetworkMaxValue "100" + float m_flHDRColorScale; // 0x718 }; // Alignment: 3 -// Size: 0x4d8 +// Size: 0x4e8 class CLogicAchievement : public CLogicalEntity { public: - bool m_bDisabled; // 0x4a0 + bool m_bDisabled; // 0x4b0 private: - [[maybe_unused]] uint8_t __pad04a1[0x7]; // 0x4a1 + [[maybe_unused]] uint8_t __pad04b1[0x7]; // 0x4b1 public: - CUtlSymbolLarge m_iszAchievementEventID; // 0x4a8 - CEntityIOOutput m_OnFired; // 0x4b0 + CUtlSymbolLarge m_iszAchievementEventID; // 0x4b8 + CEntityIOOutput m_OnFired; // 0x4c0 }; // Alignment: 5 -// Size: 0x4f0 +// Size: 0x500 class CLogicGameEventListener : public CLogicalEntity { -private: - [[maybe_unused]] uint8_t __pad04a0[0x10]; // 0x4a0 public: - CEntityIOOutput m_OnEventFired; // 0x4b0 - CUtlSymbolLarge m_iszGameEventName; // 0x4d8 - CUtlSymbolLarge m_iszGameEventItem; // 0x4e0 + CEntityIOOutput m_OnEventFired; // 0x4c0 + CUtlSymbolLarge m_iszGameEventName; // 0x4e8 + CUtlSymbolLarge m_iszGameEventItem; // 0x4f0 // MNetworkEnable - bool m_bEnabled; // 0x4e8 - bool m_bStartDisabled; // 0x4e9 + bool m_bEnabled; // 0x4f8 + bool m_bStartDisabled; // 0x4f9 }; // Alignment: 9 -// Size: 0x4d0 +// Size: 0x4e0 class CLogicMeasureMovement : public CLogicalEntity { public: - CUtlSymbolLarge m_strMeasureTarget; // 0x4a0 - CUtlSymbolLarge m_strMeasureReference; // 0x4a8 - CUtlSymbolLarge m_strTargetReference; // 0x4b0 - CHandle< CBaseEntity > m_hMeasureTarget; // 0x4b8 - CHandle< CBaseEntity > m_hMeasureReference; // 0x4bc - CHandle< CBaseEntity > m_hTarget; // 0x4c0 - CHandle< CBaseEntity > m_hTargetReference; // 0x4c4 - float m_flScale; // 0x4c8 - int32_t m_nMeasureType; // 0x4cc + CUtlSymbolLarge m_strMeasureTarget; // 0x4b0 + CUtlSymbolLarge m_strMeasureReference; // 0x4b8 + CUtlSymbolLarge m_strTargetReference; // 0x4c0 + CHandle< CBaseEntity > m_hMeasureTarget; // 0x4c8 + CHandle< CBaseEntity > m_hMeasureReference; // 0x4cc + CHandle< CBaseEntity > m_hTarget; // 0x4d0 + CHandle< CBaseEntity > m_hTargetReference; // 0x4d4 + float m_flScale; // 0x4d8 + int32_t m_nMeasureType; // 0x4dc }; // Alignment: 2 -// Size: 0x4b0 +// Size: 0x4c0 class CLogicNavigation : public CLogicalEntity { -private: - [[maybe_unused]] uint8_t __pad04a0[0x8]; // 0x4a0 public: - bool m_isOn; // 0x4a8 + bool m_isOn; // 0x4b8 private: - [[maybe_unused]] uint8_t __pad04a9[0x3]; // 0x4a9 + [[maybe_unused]] uint8_t __pad04b9[0x3]; // 0x4b9 public: - navproperties_t m_navProperty; // 0x4ac + navproperties_t m_navProperty; // 0x4bc }; // Alignment: 48 -// Size: 0x7e0 +// Size: 0x7f0 class CLogicNPCCounter : public CBaseEntity { public: - CEntityIOOutput m_OnMinCountAll; // 0x4a0 - CEntityIOOutput m_OnMaxCountAll; // 0x4c8 - CEntityOutputTemplate< float32 > m_OnFactorAll; // 0x4f0 - CEntityOutputTemplate< float32 > m_OnMinPlayerDistAll; // 0x518 - CEntityIOOutput m_OnMinCount_1; // 0x540 - CEntityIOOutput m_OnMaxCount_1; // 0x568 - CEntityOutputTemplate< float32 > m_OnFactor_1; // 0x590 - CEntityOutputTemplate< float32 > m_OnMinPlayerDist_1; // 0x5b8 - CEntityIOOutput m_OnMinCount_2; // 0x5e0 - CEntityIOOutput m_OnMaxCount_2; // 0x608 - CEntityOutputTemplate< float32 > m_OnFactor_2; // 0x630 - CEntityOutputTemplate< float32 > m_OnMinPlayerDist_2; // 0x658 - CEntityIOOutput m_OnMinCount_3; // 0x680 - CEntityIOOutput m_OnMaxCount_3; // 0x6a8 - CEntityOutputTemplate< float32 > m_OnFactor_3; // 0x6d0 - CEntityOutputTemplate< float32 > m_OnMinPlayerDist_3; // 0x6f8 - CEntityHandle m_hSource; // 0x720 + CEntityIOOutput m_OnMinCountAll; // 0x4b0 + CEntityIOOutput m_OnMaxCountAll; // 0x4d8 + CEntityOutputTemplate< float32 > m_OnFactorAll; // 0x500 + CEntityOutputTemplate< float32 > m_OnMinPlayerDistAll; // 0x528 + CEntityIOOutput m_OnMinCount_1; // 0x550 + CEntityIOOutput m_OnMaxCount_1; // 0x578 + CEntityOutputTemplate< float32 > m_OnFactor_1; // 0x5a0 + CEntityOutputTemplate< float32 > m_OnMinPlayerDist_1; // 0x5c8 + CEntityIOOutput m_OnMinCount_2; // 0x5f0 + CEntityIOOutput m_OnMaxCount_2; // 0x618 + CEntityOutputTemplate< float32 > m_OnFactor_2; // 0x640 + CEntityOutputTemplate< float32 > m_OnMinPlayerDist_2; // 0x668 + CEntityIOOutput m_OnMinCount_3; // 0x690 + CEntityIOOutput m_OnMaxCount_3; // 0x6b8 + CEntityOutputTemplate< float32 > m_OnFactor_3; // 0x6e0 + CEntityOutputTemplate< float32 > m_OnMinPlayerDist_3; // 0x708 + CEntityHandle m_hSource; // 0x730 private: - [[maybe_unused]] uint8_t __pad0724[0x4]; // 0x724 + [[maybe_unused]] uint8_t __pad0734[0x4]; // 0x734 public: - CUtlSymbolLarge m_iszSourceEntityName; // 0x728 - float m_flDistanceMax; // 0x730 - bool m_bDisabled; // 0x734 + CUtlSymbolLarge m_iszSourceEntityName; // 0x738 + float m_flDistanceMax; // 0x740 + bool m_bDisabled; // 0x744 private: - [[maybe_unused]] uint8_t __pad0735[0x3]; // 0x735 + [[maybe_unused]] uint8_t __pad0745[0x3]; // 0x745 public: - int32_t m_nMinCountAll; // 0x738 - int32_t m_nMaxCountAll; // 0x73c - int32_t m_nMinFactorAll; // 0x740 - int32_t m_nMaxFactorAll; // 0x744 + int32_t m_nMinCountAll; // 0x748 + int32_t m_nMaxCountAll; // 0x74c + int32_t m_nMinFactorAll; // 0x750 + int32_t m_nMaxFactorAll; // 0x754 private: - [[maybe_unused]] uint8_t __pad0748[0x8]; // 0x748 + [[maybe_unused]] uint8_t __pad0758[0x8]; // 0x758 public: - CUtlSymbolLarge m_iszNPCClassname_1; // 0x750 - int32_t m_nNPCState_1; // 0x758 - bool m_bInvertState_1; // 0x75c + CUtlSymbolLarge m_iszNPCClassname_1; // 0x760 + int32_t m_nNPCState_1; // 0x768 + bool m_bInvertState_1; // 0x76c private: - [[maybe_unused]] uint8_t __pad075d[0x3]; // 0x75d + [[maybe_unused]] uint8_t __pad076d[0x3]; // 0x76d public: - int32_t m_nMinCount_1; // 0x760 - int32_t m_nMaxCount_1; // 0x764 - int32_t m_nMinFactor_1; // 0x768 - int32_t m_nMaxFactor_1; // 0x76c + int32_t m_nMinCount_1; // 0x770 + int32_t m_nMaxCount_1; // 0x774 + int32_t m_nMinFactor_1; // 0x778 + int32_t m_nMaxFactor_1; // 0x77c private: - [[maybe_unused]] uint8_t __pad0770[0x4]; // 0x770 + [[maybe_unused]] uint8_t __pad0780[0x4]; // 0x780 public: - float m_flDefaultDist_1; // 0x774 - CUtlSymbolLarge m_iszNPCClassname_2; // 0x778 - int32_t m_nNPCState_2; // 0x780 - bool m_bInvertState_2; // 0x784 + float m_flDefaultDist_1; // 0x784 + CUtlSymbolLarge m_iszNPCClassname_2; // 0x788 + int32_t m_nNPCState_2; // 0x790 + bool m_bInvertState_2; // 0x794 private: - [[maybe_unused]] uint8_t __pad0785[0x3]; // 0x785 + [[maybe_unused]] uint8_t __pad0795[0x3]; // 0x795 public: - int32_t m_nMinCount_2; // 0x788 - int32_t m_nMaxCount_2; // 0x78c - int32_t m_nMinFactor_2; // 0x790 - int32_t m_nMaxFactor_2; // 0x794 + int32_t m_nMinCount_2; // 0x798 + int32_t m_nMaxCount_2; // 0x79c + int32_t m_nMinFactor_2; // 0x7a0 + int32_t m_nMaxFactor_2; // 0x7a4 private: - [[maybe_unused]] uint8_t __pad0798[0x4]; // 0x798 + [[maybe_unused]] uint8_t __pad07a8[0x4]; // 0x7a8 public: - float m_flDefaultDist_2; // 0x79c - CUtlSymbolLarge m_iszNPCClassname_3; // 0x7a0 - int32_t m_nNPCState_3; // 0x7a8 - bool m_bInvertState_3; // 0x7ac + float m_flDefaultDist_2; // 0x7ac + CUtlSymbolLarge m_iszNPCClassname_3; // 0x7b0 + int32_t m_nNPCState_3; // 0x7b8 + bool m_bInvertState_3; // 0x7bc private: - [[maybe_unused]] uint8_t __pad07ad[0x3]; // 0x7ad + [[maybe_unused]] uint8_t __pad07bd[0x3]; // 0x7bd public: - int32_t m_nMinCount_3; // 0x7b0 - int32_t m_nMaxCount_3; // 0x7b4 - int32_t m_nMinFactor_3; // 0x7b8 - int32_t m_nMaxFactor_3; // 0x7bc + int32_t m_nMinCount_3; // 0x7c0 + int32_t m_nMaxCount_3; // 0x7c4 + int32_t m_nMinFactor_3; // 0x7c8 + int32_t m_nMaxFactor_3; // 0x7cc private: - [[maybe_unused]] uint8_t __pad07c0[0x4]; // 0x7c0 + [[maybe_unused]] uint8_t __pad07d0[0x4]; // 0x7d0 public: - float m_flDefaultDist_3; // 0x7c4 + float m_flDefaultDist_3; // 0x7d4 }; // Alignment: 4 -// Size: 0x810 +// Size: 0x820 class CLogicNPCCounterAABB : public CLogicNPCCounter { public: - Vector m_vDistanceOuterMins; // 0x7e0 - Vector m_vDistanceOuterMaxs; // 0x7ec - Vector m_vOuterMins; // 0x7f8 - Vector m_vOuterMaxs; // 0x804 + Vector m_vDistanceOuterMins; // 0x7f0 + Vector m_vDistanceOuterMaxs; // 0x7fc + Vector m_vOuterMins; // 0x808 + Vector m_vOuterMaxs; // 0x814 }; // Alignment: 0 -// Size: 0x810 +// Size: 0x820 class CLogicNPCCounterOBB : public CLogicNPCCounterAABB { public: @@ -10276,40 +9273,40 @@ public: }; // Alignment: 5 -// Size: 0x548 +// Size: 0x558 class CLogicPlayerProxy : public CLogicalEntity { public: - CHandle< CBaseEntity > m_hPlayer; // 0x4a0 + CHandle< CBaseEntity > m_hPlayer; // 0x4b0 private: - [[maybe_unused]] uint8_t __pad04a4[0x4]; // 0x4a4 + [[maybe_unused]] uint8_t __pad04b4[0x4]; // 0x4b4 public: - CEntityIOOutput m_PlayerHasAmmo; // 0x4a8 - CEntityIOOutput m_PlayerHasNoAmmo; // 0x4d0 - CEntityIOOutput m_PlayerDied; // 0x4f8 - CEntityOutputTemplate< int32 > m_RequestedPlayerHealth; // 0x520 + CEntityIOOutput m_PlayerHasAmmo; // 0x4b8 + CEntityIOOutput m_PlayerHasNoAmmo; // 0x4e0 + CEntityIOOutput m_PlayerDied; // 0x508 + CEntityOutputTemplate< int32 > m_RequestedPlayerHealth; // 0x530 }; // Alignment: 11 -// Size: 0x638 +// Size: 0x648 class CLogicAuto : public CBaseEntity { public: - CEntityIOOutput m_OnMapSpawn; // 0x4a0 - CEntityIOOutput m_OnDemoMapSpawn; // 0x4c8 - CEntityIOOutput m_OnNewGame; // 0x4f0 - CEntityIOOutput m_OnLoadGame; // 0x518 - CEntityIOOutput m_OnMapTransition; // 0x540 - CEntityIOOutput m_OnBackgroundMap; // 0x568 - CEntityIOOutput m_OnMultiNewMap; // 0x590 - CEntityIOOutput m_OnMultiNewRound; // 0x5b8 - CEntityIOOutput m_OnVREnabled; // 0x5e0 - CEntityIOOutput m_OnVRNotEnabled; // 0x608 - CUtlSymbolLarge m_globalstate; // 0x630 + CEntityIOOutput m_OnMapSpawn; // 0x4b0 + CEntityIOOutput m_OnDemoMapSpawn; // 0x4d8 + CEntityIOOutput m_OnNewGame; // 0x500 + CEntityIOOutput m_OnLoadGame; // 0x528 + CEntityIOOutput m_OnMapTransition; // 0x550 + CEntityIOOutput m_OnBackgroundMap; // 0x578 + CEntityIOOutput m_OnMultiNewMap; // 0x5a0 + CEntityIOOutput m_OnMultiNewRound; // 0x5c8 + CEntityIOOutput m_OnVREnabled; // 0x5f0 + CEntityIOOutput m_OnVRNotEnabled; // 0x618 + CUtlSymbolLarge m_globalstate; // 0x640 }; // Alignment: 0 -// Size: 0x4a0 +// Size: 0x4b0 class CLogicScript : public CPointEntity { public: @@ -10317,489 +9314,420 @@ public: }; // Alignment: 13 -// Size: 0x540 +// Size: 0x550 class CTimerEntity : public CLogicalEntity { public: - CEntityIOOutput m_OnTimer; // 0x4a0 - CEntityIOOutput m_OnTimerHigh; // 0x4c8 - CEntityIOOutput m_OnTimerLow; // 0x4f0 - int32_t m_iDisabled; // 0x518 - float m_flInitialDelay; // 0x51c - float m_flRefireTime; // 0x520 - bool m_bUpDownState; // 0x524 + CEntityIOOutput m_OnTimer; // 0x4b0 + CEntityIOOutput m_OnTimerHigh; // 0x4d8 + CEntityIOOutput m_OnTimerLow; // 0x500 + int32_t m_iDisabled; // 0x528 + float m_flInitialDelay; // 0x52c + float m_flRefireTime; // 0x530 + bool m_bUpDownState; // 0x534 private: - [[maybe_unused]] uint8_t __pad0525[0x3]; // 0x525 + [[maybe_unused]] uint8_t __pad0535[0x3]; // 0x535 public: - int32_t m_iUseRandomTime; // 0x528 - bool m_bPauseAfterFiring; // 0x52c + int32_t m_iUseRandomTime; // 0x538 + bool m_bPauseAfterFiring; // 0x53c private: - [[maybe_unused]] uint8_t __pad052d[0x3]; // 0x52d + [[maybe_unused]] uint8_t __pad053d[0x3]; // 0x53d public: - float m_flLowerRandomBound; // 0x530 - float m_flUpperRandomBound; // 0x534 - float m_flRemainingTime; // 0x538 - bool m_bPaused; // 0x53c + float m_flLowerRandomBound; // 0x540 + float m_flUpperRandomBound; // 0x544 + float m_flRemainingTime; // 0x548 + bool m_bPaused; // 0x54c }; // Alignment: 4 -// Size: 0x4d8 +// Size: 0x4e8 class CLogicLineToEntity : public CLogicalEntity { public: - CEntityOutputTemplate< Vector > m_Line; // 0x4a0 - CUtlSymbolLarge m_SourceName; // 0x4c8 - CHandle< CBaseEntity > m_StartEntity; // 0x4d0 - CHandle< CBaseEntity > m_EndEntity; // 0x4d4 + CEntityOutputTemplate< Vector > m_Line; // 0x4b0 + CUtlSymbolLarge m_SourceName; // 0x4d8 + CHandle< CBaseEntity > m_StartEntity; // 0x4e0 + CHandle< CBaseEntity > m_EndEntity; // 0x4e4 }; // Alignment: 11 -// Size: 0x580 +// Size: 0x590 class CMathRemap : public CLogicalEntity { public: - float m_flInMin; // 0x4a0 - float m_flInMax; // 0x4a4 - float m_flOut1; // 0x4a8 - float m_flOut2; // 0x4ac - float m_flOldInValue; // 0x4b0 - bool m_bEnabled; // 0x4b4 + float m_flInMin; // 0x4b0 + float m_flInMax; // 0x4b4 + float m_flOut1; // 0x4b8 + float m_flOut2; // 0x4bc + float m_flOldInValue; // 0x4c0 + bool m_bEnabled; // 0x4c4 private: - [[maybe_unused]] uint8_t __pad04b5[0x3]; // 0x4b5 + [[maybe_unused]] uint8_t __pad04c5[0x3]; // 0x4c5 public: - CEntityOutputTemplate< float32 > m_OutValue; // 0x4b8 - CEntityIOOutput m_OnRoseAboveMin; // 0x4e0 - CEntityIOOutput m_OnRoseAboveMax; // 0x508 - CEntityIOOutput m_OnFellBelowMin; // 0x530 - CEntityIOOutput m_OnFellBelowMax; // 0x558 + CEntityOutputTemplate< float32 > m_OutValue; // 0x4c8 + CEntityIOOutput m_OnRoseAboveMin; // 0x4f0 + CEntityIOOutput m_OnRoseAboveMax; // 0x518 + CEntityIOOutput m_OnFellBelowMin; // 0x540 + CEntityIOOutput m_OnFellBelowMax; // 0x568 }; // Alignment: 5 -// Size: 0x4d8 +// Size: 0x4e8 class CMathColorBlend : public CLogicalEntity { public: - float m_flInMin; // 0x4a0 - float m_flInMax; // 0x4a4 - Color m_OutColor1; // 0x4a8 - Color m_OutColor2; // 0x4ac - CEntityOutputTemplate< Color > m_OutValue; // 0x4b0 + float m_flInMin; // 0x4b0 + float m_flInMax; // 0x4b4 + Color m_OutColor1; // 0x4b8 + Color m_OutColor2; // 0x4bc + CEntityOutputTemplate< Color > m_OutValue; // 0x4c0 }; // Alignment: 5 -// Size: 0x4e0 +// Size: 0x4f0 class CEnvGlobal : public CLogicalEntity { public: - CEntityOutputTemplate< int32 > m_outCounter; // 0x4a0 - CUtlSymbolLarge m_globalstate; // 0x4c8 - int32_t m_triggermode; // 0x4d0 - int32_t m_initialstate; // 0x4d4 - int32_t m_counter; // 0x4d8 + CEntityOutputTemplate< int32 > m_outCounter; // 0x4b0 + CUtlSymbolLarge m_globalstate; // 0x4d8 + int32_t m_triggermode; // 0x4e0 + int32_t m_initialstate; // 0x4e4 + int32_t m_counter; // 0x4e8 }; // Alignment: 5 -// Size: 0x5d8 +// Size: 0x5e8 class CMultiSource : public CLogicalEntity { public: - CHandle< CBaseEntity > m_rgEntities[32]; // 0x4a0 - int32_t m_rgTriggered[32]; // 0x520 - CEntityIOOutput m_OnTrigger; // 0x5a0 - int32_t m_iTotal; // 0x5c8 + CHandle< CBaseEntity > m_rgEntities[32]; // 0x4b0 + int32_t m_rgTriggered[32]; // 0x530 + CEntityIOOutput m_OnTrigger; // 0x5b0 + int32_t m_iTotal; // 0x5d8 private: - [[maybe_unused]] uint8_t __pad05cc[0x4]; // 0x5cc + [[maybe_unused]] uint8_t __pad05dc[0x4]; // 0x5dc public: - CUtlSymbolLarge m_globalstate; // 0x5d0 + CUtlSymbolLarge m_globalstate; // 0x5e0 }; // Alignment: 11 -// Size: 0x5a0 +// Size: 0x5b0 class CMathCounter : public CLogicalEntity { public: - float m_flMin; // 0x4a0 - float m_flMax; // 0x4a4 - bool m_bHitMin; // 0x4a8 - bool m_bHitMax; // 0x4a9 - bool m_bDisabled; // 0x4aa + float m_flMin; // 0x4b0 + float m_flMax; // 0x4b4 + bool m_bHitMin; // 0x4b8 + bool m_bHitMax; // 0x4b9 + bool m_bDisabled; // 0x4ba private: - [[maybe_unused]] uint8_t __pad04ab[0x5]; // 0x4ab + [[maybe_unused]] uint8_t __pad04bb[0x5]; // 0x4bb public: - CEntityOutputTemplate< float32 > m_OutValue; // 0x4b0 - CEntityOutputTemplate< float32 > m_OnGetValue; // 0x4d8 - CEntityIOOutput m_OnHitMin; // 0x500 - CEntityIOOutput m_OnHitMax; // 0x528 - CEntityIOOutput m_OnChangedFromMin; // 0x550 - CEntityIOOutput m_OnChangedFromMax; // 0x578 + CEntityOutputTemplate< float32 > m_OutValue; // 0x4c0 + CEntityOutputTemplate< float32 > m_OnGetValue; // 0x4e8 + CEntityIOOutput m_OnHitMin; // 0x510 + CEntityIOOutput m_OnHitMax; // 0x538 + CEntityIOOutput m_OnChangedFromMin; // 0x560 + CEntityIOOutput m_OnChangedFromMax; // 0x588 }; // Alignment: 6 -// Size: 0xaf0 +// Size: 0xb00 class CLogicCase : public CLogicalEntity { public: - CUtlSymbolLarge m_nCase[32]; // 0x4a0 - int32_t m_nShuffleCases; // 0x5a0 - int32_t m_nLastShuffleCase; // 0x5a4 - uint8_t m_uchShuffleCaseMap[32]; // 0x5a8 - CEntityIOOutput m_OnCase[32]; // 0x5c8 - CEntityOutputTemplate< CVariantBase< CVariantDefaultAllocator > > m_OnDefault; // 0xac8 + CUtlSymbolLarge m_nCase[32]; // 0x4b0 + int32_t m_nShuffleCases; // 0x5b0 + int32_t m_nLastShuffleCase; // 0x5b4 + uint8_t m_uchShuffleCaseMap[32]; // 0x5b8 + CEntityIOOutput m_OnCase[32]; // 0x5d8 + CEntityOutputTemplate< CVariantBase< CVariantDefaultAllocator > > m_OnDefault; // 0xad8 }; // Alignment: 6 -// Size: 0x548 +// Size: 0x558 class CLogicCompare : public CLogicalEntity { public: - float m_flInValue; // 0x4a0 - float m_flCompareValue; // 0x4a4 - CEntityOutputTemplate< float32 > m_OnLessThan; // 0x4a8 - CEntityOutputTemplate< float32 > m_OnEqualTo; // 0x4d0 - CEntityOutputTemplate< float32 > m_OnNotEqualTo; // 0x4f8 - CEntityOutputTemplate< float32 > m_OnGreaterThan; // 0x520 + float m_flInValue; // 0x4b0 + float m_flCompareValue; // 0x4b4 + CEntityOutputTemplate< float32 > m_OnLessThan; // 0x4b8 + CEntityOutputTemplate< float32 > m_OnEqualTo; // 0x4e0 + CEntityOutputTemplate< float32 > m_OnNotEqualTo; // 0x508 + CEntityOutputTemplate< float32 > m_OnGreaterThan; // 0x530 }; // Alignment: 3 -// Size: 0x4b0 +// Size: 0x4c0 class CLogicAutosave : public CLogicalEntity { public: - bool m_bForceNewLevelUnit; // 0x4a0 + bool m_bForceNewLevelUnit; // 0x4b0 private: - [[maybe_unused]] uint8_t __pad04a1[0x3]; // 0x4a1 + [[maybe_unused]] uint8_t __pad04b1[0x3]; // 0x4b1 public: - int32_t m_minHitPoints; // 0x4a4 - int32_t m_minHitPointsToCommit; // 0x4a8 + int32_t m_minHitPoints; // 0x4b4 + int32_t m_minHitPointsToCommit; // 0x4b8 }; // Alignment: 4 -// Size: 0x4c0 +// Size: 0x4d0 class CLogicActiveAutosave : public CLogicAutosave { public: - int32_t m_TriggerHitPoints; // 0x4b0 - float m_flTimeToTrigger; // 0x4b4 - GameTime_t m_flStartTime; // 0x4b8 - float m_flDangerousTime; // 0x4bc + int32_t m_TriggerHitPoints; // 0x4c0 + float m_flTimeToTrigger; // 0x4c4 + GameTime_t m_flStartTime; // 0x4c8 + float m_flDangerousTime; // 0x4cc }; // Alignment: 6 -// Size: 0x4b8 +// Size: 0x4c8 class CLogicDistanceAutosave : public CLogicalEntity { public: - CUtlSymbolLarge m_iszTargetEntity; // 0x4a0 - float m_flDistanceToPlayer; // 0x4a8 - bool m_bForceNewLevelUnit; // 0x4ac - bool m_bCheckCough; // 0x4ad - bool m_bThinkDangerous; // 0x4ae + CUtlSymbolLarge m_iszTargetEntity; // 0x4b0 + float m_flDistanceToPlayer; // 0x4b8 + bool m_bForceNewLevelUnit; // 0x4bc + bool m_bCheckCough; // 0x4bd + bool m_bThinkDangerous; // 0x4be private: - [[maybe_unused]] uint8_t __pad04af[0x1]; // 0x4af + [[maybe_unused]] uint8_t __pad04bf[0x1]; // 0x4bf public: - float m_flDangerousTime; // 0x4b0 + float m_flDangerousTime; // 0x4c0 }; // Alignment: 4 -// Size: 0x4b8 +// Size: 0x4c8 class CLogicCollisionPair : public CLogicalEntity { public: - CUtlSymbolLarge m_nameAttach1; // 0x4a0 - CUtlSymbolLarge m_nameAttach2; // 0x4a8 - bool m_disabled; // 0x4b0 - bool m_succeeded; // 0x4b1 + CUtlSymbolLarge m_nameAttach1; // 0x4b0 + CUtlSymbolLarge m_nameAttach2; // 0x4b8 + bool m_disabled; // 0x4c0 + bool m_succeeded; // 0x4c1 }; // Alignment: 6 -// Size: 0x5b8 +// Size: 0x5c8 class CLogicBranchList : public CLogicalEntity { public: - CUtlSymbolLarge m_nLogicBranchNames[16]; // 0x4a0 - CUtlVector< CHandle< CBaseEntity > > m_LogicBranchList; // 0x520 - CLogicBranchList::LogicBranchListenerLastState_t m_eLastState; // 0x538 + CUtlSymbolLarge m_nLogicBranchNames[16]; // 0x4b0 + CUtlVector< CHandle< CBaseEntity > > m_LogicBranchList; // 0x530 + CLogicBranchList::LogicBranchListenerLastState_t m_eLastState; // 0x548 private: - [[maybe_unused]] uint8_t __pad053c[0x4]; // 0x53c + [[maybe_unused]] uint8_t __pad054c[0x4]; // 0x54c public: - CEntityIOOutput m_OnAllTrue; // 0x540 - CEntityIOOutput m_OnAllFalse; // 0x568 - CEntityIOOutput m_OnMixed; // 0x590 + CEntityIOOutput m_OnAllTrue; // 0x550 + CEntityIOOutput m_OnAllFalse; // 0x578 + CEntityIOOutput m_OnMixed; // 0x5a0 }; // Alignment: 1 -// Size: 0x4a8 +// Size: 0x4b8 class CLogicGameEvent : public CLogicalEntity { public: - CUtlSymbolLarge m_iszEventName; // 0x4a0 -}; - -// Alignment: 1 -// Size: 0x6f8 -class CRuleEntity : public CBaseModelEntity -{ -public: - CUtlSymbolLarge m_iszMaster; // 0x6f0 -}; - -// Alignment: 1 -// Size: 0x700 -class CRulePointEntity : public CRuleEntity -{ -public: - int32_t m_Score; // 0x6f8 -}; - -// Alignment: 0 -// Size: 0x6f8 -class CRuleBrushEntity : public CRuleEntity -{ -public: - // No members available -}; - -// Alignment: 0 -// Size: 0x700 -class CGameEnd : public CRulePointEntity -{ -public: - // No members available -}; - -// Alignment: 2 -// Size: 0x720 -class CGameText : public CRulePointEntity -{ -public: - CUtlSymbolLarge m_iszMessage; // 0x700 - hudtextparms_t m_textParms; // 0x708 -}; - -// Alignment: 4 -// Size: 0x798 -class CGamePlayerZone : public CRuleBrushEntity -{ -public: - CEntityIOOutput m_OnPlayerInZone; // 0x6f8 - CEntityIOOutput m_OnPlayerOutZone; // 0x720 - CEntityOutputTemplate< int32 > m_PlayersInCount; // 0x748 - CEntityOutputTemplate< int32 > m_PlayersOutCount; // 0x770 -}; - -// Alignment: 2 -// Size: 0x880 -class CGamePlayerEquip : public CRulePointEntity -{ -public: - CUtlSymbolLarge m_weaponNames[32]; // 0x700 - int32_t m_weaponCount[32]; // 0x800 + CUtlSymbolLarge m_iszEventName; // 0x4b0 }; // Alignment: 5 -// Size: 0x4b8 +// Size: 0x4c8 class CMessageEntity : public CPointEntity { public: - int32_t m_radius; // 0x4a0 + int32_t m_radius; // 0x4b0 private: - [[maybe_unused]] uint8_t __pad04a4[0x4]; // 0x4a4 + [[maybe_unused]] uint8_t __pad04b4[0x4]; // 0x4b4 public: - CUtlSymbolLarge m_messageText; // 0x4a8 - bool m_drawText; // 0x4b0 - bool m_bDeveloperOnly; // 0x4b1 - bool m_bEnabled; // 0x4b2 + CUtlSymbolLarge m_messageText; // 0x4b8 + bool m_drawText; // 0x4c0 + bool m_bDeveloperOnly; // 0x4c1 + bool m_bEnabled; // 0x4c2 }; // Alignment: 5 -// Size: 0x770 +// Size: 0x780 class CTriggerBrush : public CBaseModelEntity { public: - CEntityIOOutput m_OnStartTouch; // 0x6f0 - CEntityIOOutput m_OnEndTouch; // 0x718 - CEntityIOOutput m_OnUse; // 0x740 - int32_t m_iInputFilter; // 0x768 - int32_t m_iDontMessageParent; // 0x76c + CEntityIOOutput m_OnStartTouch; // 0x700 + CEntityIOOutput m_OnEndTouch; // 0x728 + CEntityIOOutput m_OnUse; // 0x750 + int32_t m_iInputFilter; // 0x778 + int32_t m_iDontMessageParent; // 0x77c }; // Alignment: 8 -// Size: 0x500 +// Size: 0x510 class CPathKeyFrame : public CLogicalEntity { public: - Vector m_Origin; // 0x4a0 - QAngle m_Angles; // 0x4ac + Vector m_Origin; // 0x4b0 + QAngle m_Angles; // 0x4bc private: - [[maybe_unused]] uint8_t __pad04b8[0x8]; // 0x4b8 + [[maybe_unused]] uint8_t __pad04c8[0x8]; // 0x4c8 public: - Quaternion m_qAngle; // 0x4c0 - CUtlSymbolLarge m_iNextKey; // 0x4d0 - float m_flNextTime; // 0x4d8 + Quaternion m_qAngle; // 0x4d0 + CUtlSymbolLarge m_iNextKey; // 0x4e0 + float m_flNextTime; // 0x4e8 private: - [[maybe_unused]] uint8_t __pad04dc[0x4]; // 0x4dc + [[maybe_unused]] uint8_t __pad04ec[0x4]; // 0x4ec public: - CPathKeyFrame* m_pNextKey; // 0x4e0 - CPathKeyFrame* m_pPrevKey; // 0x4e8 - float m_flSpeed; // 0x4f0 + CPathKeyFrame* m_pNextKey; // 0x4f0 + CPathKeyFrame* m_pPrevKey; // 0x4f8 + float m_flSpeed; // 0x500 }; // Alignment: 11 -// Size: 0x540 +// Size: 0x550 class CBaseMoveBehavior : public CPathKeyFrame { public: - int32_t m_iPositionInterpolator; // 0x500 - int32_t m_iRotationInterpolator; // 0x504 - float m_flAnimStartTime; // 0x508 - float m_flAnimEndTime; // 0x50c - float m_flAverageSpeedAcrossFrame; // 0x510 + int32_t m_iPositionInterpolator; // 0x510 + int32_t m_iRotationInterpolator; // 0x514 + float m_flAnimStartTime; // 0x518 + float m_flAnimEndTime; // 0x51c + float m_flAverageSpeedAcrossFrame; // 0x520 private: - [[maybe_unused]] uint8_t __pad0514[0x4]; // 0x514 + [[maybe_unused]] uint8_t __pad0524[0x4]; // 0x524 public: - CPathKeyFrame* m_pCurrentKeyFrame; // 0x518 - CPathKeyFrame* m_pTargetKeyFrame; // 0x520 - CPathKeyFrame* m_pPreKeyFrame; // 0x528 - CPathKeyFrame* m_pPostKeyFrame; // 0x530 - float m_flTimeIntoFrame; // 0x538 - int32_t m_iDirection; // 0x53c + CPathKeyFrame* m_pCurrentKeyFrame; // 0x528 + CPathKeyFrame* m_pTargetKeyFrame; // 0x530 + CPathKeyFrame* m_pPreKeyFrame; // 0x538 + CPathKeyFrame* m_pPostKeyFrame; // 0x540 + float m_flTimeIntoFrame; // 0x548 + int32_t m_iDirection; // 0x54c }; // Alignment: 3 -// Size: 0x4d0 +// Size: 0x4e0 class CPathCorner : public CPointEntity { public: - float m_flWait; // 0x4a0 - float m_flRadius; // 0x4a4 - CEntityIOOutput m_OnPass; // 0x4a8 + float m_flWait; // 0x4b0 + float m_flRadius; // 0x4b4 + CEntityIOOutput m_OnPass; // 0x4b8 }; // Alignment: 6 -// Size: 0x500 +// Size: 0x510 class CPhysForce : public CPointEntity { -private: - [[maybe_unused]] uint8_t __pad04a0[0x8]; // 0x4a0 public: - CUtlSymbolLarge m_nameAttach; // 0x4a8 - float m_force; // 0x4b0 - float m_forceTime; // 0x4b4 - CHandle< CBaseEntity > m_attachedObject; // 0x4b8 - bool m_wasRestored; // 0x4bc + CUtlSymbolLarge m_nameAttach; // 0x4b8 + float m_force; // 0x4c0 + float m_forceTime; // 0x4c4 + CHandle< CBaseEntity > m_attachedObject; // 0x4c8 + bool m_wasRestored; // 0x4cc private: - [[maybe_unused]] uint8_t __pad04bd[0x3]; // 0x4bd + [[maybe_unused]] uint8_t __pad04cd[0x3]; // 0x4cd public: - CConstantForceController m_integrator; // 0x4c0 + CConstantForceController m_integrator; // 0x4d0 }; // Alignment: 1 -// Size: 0x510 +// Size: 0x520 class CPhysThruster : public CPhysForce { public: - Vector m_localOrigin; // 0x500 + Vector m_localOrigin; // 0x510 }; // Alignment: 1 -// Size: 0x510 +// Size: 0x520 class CPhysTorque : public CPhysForce { public: - Vector m_axis; // 0x500 + Vector m_axis; // 0x510 +}; + +// Alignment: 7 +// Size: 0x500 +class CPhysMotor : public CLogicalEntity +{ +public: + CUtlSymbolLarge m_nameAttach; // 0x4b0 + CHandle< CBaseEntity > m_hAttachedObject; // 0x4b8 + float m_spinUp; // 0x4bc + float m_additionalAcceleration; // 0x4c0 + float m_angularAcceleration; // 0x4c4 + GameTime_t m_lastTime; // 0x4c8 +private: + [[maybe_unused]] uint8_t __pad04cc[0x14]; // 0x4cc +public: + CMotorController m_motor; // 0x4e0 }; // Alignment: 7 // Size: 0x4f0 -class CPhysMotor : public CLogicalEntity -{ -public: - CUtlSymbolLarge m_nameAttach; // 0x4a0 - CHandle< CBaseEntity > m_hAttachedObject; // 0x4a8 - float m_spinUp; // 0x4ac - float m_additionalAcceleration; // 0x4b0 - float m_angularAcceleration; // 0x4b4 - GameTime_t m_lastTime; // 0x4b8 -private: - [[maybe_unused]] uint8_t __pad04bc[0x14]; // 0x4bc -public: - CMotorController m_motor; // 0x4d0 -}; - -// Alignment: 7 -// Size: 0x4e0 class CKeepUpright : public CPointEntity { -private: - [[maybe_unused]] uint8_t __pad04a0[0x8]; // 0x4a0 public: - Vector m_worldGoalAxis; // 0x4a8 - Vector m_localTestAxis; // 0x4b4 + Vector m_worldGoalAxis; // 0x4b8 + Vector m_localTestAxis; // 0x4c4 private: - [[maybe_unused]] uint8_t __pad04c0[0x8]; // 0x4c0 + [[maybe_unused]] uint8_t __pad04d0[0x8]; // 0x4d0 public: - CUtlSymbolLarge m_nameAttach; // 0x4c8 - CHandle< CBaseEntity > m_attachedObject; // 0x4d0 - float m_angularLimit; // 0x4d4 - bool m_bActive; // 0x4d8 - bool m_bDampAllRotation; // 0x4d9 + CUtlSymbolLarge m_nameAttach; // 0x4d8 + CHandle< CBaseEntity > m_attachedObject; // 0x4e0 + float m_angularLimit; // 0x4e4 + bool m_bActive; // 0x4e8 + bool m_bDampAllRotation; // 0x4e9 }; // Alignment: 8 -// Size: 0x4f8 +// Size: 0x508 class CPhysConstraint : public CLogicalEntity { -private: - [[maybe_unused]] uint8_t __pad04a0[0x8]; // 0x4a0 public: - CUtlSymbolLarge m_nameAttach1; // 0x4a8 - CUtlSymbolLarge m_nameAttach2; // 0x4b0 - CUtlSymbolLarge m_breakSound; // 0x4b8 - float m_forceLimit; // 0x4c0 - float m_torqueLimit; // 0x4c4 - uint32_t m_teleportTick; // 0x4c8 - float m_minTeleportDistance; // 0x4cc - CEntityIOOutput m_OnBreak; // 0x4d0 + CUtlSymbolLarge m_nameAttach1; // 0x4b8 + CUtlSymbolLarge m_nameAttach2; // 0x4c0 + CUtlSymbolLarge m_breakSound; // 0x4c8 + float m_forceLimit; // 0x4d0 + float m_torqueLimit; // 0x4d4 + uint32_t m_teleportTick; // 0x4d8 + float m_minTeleportDistance; // 0x4dc + CEntityIOOutput m_OnBreak; // 0x4e0 }; // Alignment: 18 -// Size: 0x698 +// Size: 0x6a8 class CPhysHinge : public CPhysConstraint { -private: - [[maybe_unused]] uint8_t __pad04f8[0x8]; // 0x4f8 public: - ConstraintSoundInfo m_soundInfo; // 0x500 - CEntityIOOutput m_NotifyMinLimitReached; // 0x588 - CEntityIOOutput m_NotifyMaxLimitReached; // 0x5b0 - bool m_bAtMinLimit; // 0x5d8 - bool m_bAtMaxLimit; // 0x5d9 + ConstraintSoundInfo m_soundInfo; // 0x510 + CEntityIOOutput m_NotifyMinLimitReached; // 0x598 + CEntityIOOutput m_NotifyMaxLimitReached; // 0x5c0 + bool m_bAtMinLimit; // 0x5e8 + bool m_bAtMaxLimit; // 0x5e9 private: - [[maybe_unused]] uint8_t __pad05da[0x2]; // 0x5da + [[maybe_unused]] uint8_t __pad05ea[0x2]; // 0x5ea public: - constraint_hingeparams_t m_hinge; // 0x5dc - float m_hingeFriction; // 0x61c - float m_systemLoadScale; // 0x620 - bool m_bIsAxisLocal; // 0x624 + constraint_hingeparams_t m_hinge; // 0x5ec + float m_hingeFriction; // 0x62c + float m_systemLoadScale; // 0x630 + bool m_bIsAxisLocal; // 0x634 private: - [[maybe_unused]] uint8_t __pad0625[0x3]; // 0x625 + [[maybe_unused]] uint8_t __pad0635[0x3]; // 0x635 public: - float m_flMinRotation; // 0x628 - float m_flMaxRotation; // 0x62c - float m_flInitialRotation; // 0x630 - float m_flMotorFrequency; // 0x634 - float m_flMotorDampingRatio; // 0x638 - float m_flAngleSpeed; // 0x63c - float m_flAngleSpeedThreshold; // 0x640 + float m_flMinRotation; // 0x638 + float m_flMaxRotation; // 0x63c + float m_flInitialRotation; // 0x640 + float m_flMotorFrequency; // 0x644 + float m_flMotorDampingRatio; // 0x648 + float m_flAngleSpeed; // 0x64c + float m_flAngleSpeedThreshold; // 0x650 private: - [[maybe_unused]] uint8_t __pad0644[0x4]; // 0x644 + [[maybe_unused]] uint8_t __pad0654[0x4]; // 0x654 public: - CEntityIOOutput m_OnStartMoving; // 0x648 - CEntityIOOutput m_OnStopMoving; // 0x670 + CEntityIOOutput m_OnStartMoving; // 0x658 + CEntityIOOutput m_OnStopMoving; // 0x680 }; // Alignment: 0 -// Size: 0x698 +// Size: 0x6a8 class CPhysHingeAlias_phys_hinge_local : public CPhysHinge { public: @@ -10807,167 +9735,163 @@ public: }; // Alignment: 6 -// Size: 0x510 +// Size: 0x520 class CPhysBallSocket : public CPhysConstraint { public: - float m_flFriction; // 0x4f8 - bool m_bEnableSwingLimit; // 0x4fc + float m_flFriction; // 0x508 + bool m_bEnableSwingLimit; // 0x50c private: - [[maybe_unused]] uint8_t __pad04fd[0x3]; // 0x4fd + [[maybe_unused]] uint8_t __pad050d[0x3]; // 0x50d public: - float m_flSwingLimit; // 0x500 - bool m_bEnableTwistLimit; // 0x504 + float m_flSwingLimit; // 0x510 + bool m_bEnableTwistLimit; // 0x514 private: - [[maybe_unused]] uint8_t __pad0505[0x3]; // 0x505 + [[maybe_unused]] uint8_t __pad0515[0x3]; // 0x515 public: - float m_flMinTwistAngle; // 0x508 - float m_flMaxTwistAngle; // 0x50c + float m_flMinTwistAngle; // 0x518 + float m_flMaxTwistAngle; // 0x51c }; // Alignment: 10 -// Size: 0x5b0 +// Size: 0x5c0 class CPhysSlideConstraint : public CPhysConstraint { -private: - [[maybe_unused]] uint8_t __pad04f8[0x8]; // 0x4f8 public: - Vector m_axisEnd; // 0x500 - float m_slideFriction; // 0x50c - float m_systemLoadScale; // 0x510 - float m_initialOffset; // 0x514 - bool m_bEnableLinearConstraint; // 0x518 - bool m_bEnableAngularConstraint; // 0x519 + Vector m_axisEnd; // 0x510 + float m_slideFriction; // 0x51c + float m_systemLoadScale; // 0x520 + float m_initialOffset; // 0x524 + bool m_bEnableLinearConstraint; // 0x528 + bool m_bEnableAngularConstraint; // 0x529 private: - [[maybe_unused]] uint8_t __pad051a[0x2]; // 0x51a + [[maybe_unused]] uint8_t __pad052a[0x2]; // 0x52a public: - float m_flMotorFrequency; // 0x51c - float m_flMotorDampingRatio; // 0x520 - bool m_bUseEntityPivot; // 0x524 + float m_flMotorFrequency; // 0x52c + float m_flMotorDampingRatio; // 0x530 + bool m_bUseEntityPivot; // 0x534 private: - [[maybe_unused]] uint8_t __pad0525[0x3]; // 0x525 + [[maybe_unused]] uint8_t __pad0535[0x3]; // 0x535 public: - ConstraintSoundInfo m_soundInfo; // 0x528 + ConstraintSoundInfo m_soundInfo; // 0x538 }; // Alignment: 6 -// Size: 0x510 +// Size: 0x520 class CPhysFixed : public CPhysConstraint { public: - float m_flLinearFrequency; // 0x4f8 - float m_flLinearDampingRatio; // 0x4fc - float m_flAngularFrequency; // 0x500 - float m_flAngularDampingRatio; // 0x504 - bool m_bEnableLinearConstraint; // 0x508 - bool m_bEnableAngularConstraint; // 0x509 + float m_flLinearFrequency; // 0x508 + float m_flLinearDampingRatio; // 0x50c + float m_flAngularFrequency; // 0x510 + float m_flAngularDampingRatio; // 0x514 + bool m_bEnableLinearConstraint; // 0x518 + bool m_bEnableAngularConstraint; // 0x519 }; // Alignment: 4 -// Size: 0x528 +// Size: 0x538 class CPhysPulley : public CPhysConstraint { public: - Vector m_position2; // 0x4f8 - Vector m_offset[2]; // 0x504 - float m_addLength; // 0x51c - float m_gearRatio; // 0x520 + Vector m_position2; // 0x508 + Vector m_offset[2]; // 0x514 + float m_addLength; // 0x52c + float m_gearRatio; // 0x530 }; // Alignment: 6 -// Size: 0x530 +// Size: 0x540 class CPhysLength : public CPhysConstraint { public: - Vector m_offset[2]; // 0x4f8 - Vector m_vecAttach; // 0x510 - float m_addLength; // 0x51c - float m_minLength; // 0x520 - float m_totalLength; // 0x524 - bool m_bEnableCollision; // 0x528 + Vector m_offset[2]; // 0x508 + Vector m_vecAttach; // 0x520 + float m_addLength; // 0x52c + float m_minLength; // 0x530 + float m_totalLength; // 0x534 + bool m_bEnableCollision; // 0x538 }; // Alignment: 9 -// Size: 0x520 +// Size: 0x530 class CRagdollConstraint : public CPhysConstraint { public: - float m_xmin; // 0x4f8 - float m_xmax; // 0x4fc - float m_ymin; // 0x500 - float m_ymax; // 0x504 - float m_zmin; // 0x508 - float m_zmax; // 0x50c - float m_xfriction; // 0x510 - float m_yfriction; // 0x514 - float m_zfriction; // 0x518 + float m_xmin; // 0x508 + float m_xmax; // 0x50c + float m_ymin; // 0x510 + float m_ymax; // 0x514 + float m_zmin; // 0x518 + float m_zmax; // 0x51c + float m_xfriction; // 0x520 + float m_yfriction; // 0x524 + float m_zfriction; // 0x528 }; // Alignment: 48 -// Size: 0x628 +// Size: 0x638 class CGenericConstraint : public CPhysConstraint { -private: - [[maybe_unused]] uint8_t __pad04f8[0x8]; // 0x4f8 public: - JointMotion_t m_nLinearMotionX; // 0x500 - JointMotion_t m_nLinearMotionY; // 0x504 - JointMotion_t m_nLinearMotionZ; // 0x508 - float m_flLinearFrequencyX; // 0x50c - float m_flLinearFrequencyY; // 0x510 - float m_flLinearFrequencyZ; // 0x514 - float m_flLinearDampingRatioX; // 0x518 - float m_flLinearDampingRatioY; // 0x51c - float m_flLinearDampingRatioZ; // 0x520 - float m_flMaxLinearImpulseX; // 0x524 - float m_flMaxLinearImpulseY; // 0x528 - float m_flMaxLinearImpulseZ; // 0x52c - float m_flBreakAfterTimeX; // 0x530 - float m_flBreakAfterTimeY; // 0x534 - float m_flBreakAfterTimeZ; // 0x538 - GameTime_t m_flBreakAfterTimeStartTimeX; // 0x53c - GameTime_t m_flBreakAfterTimeStartTimeY; // 0x540 - GameTime_t m_flBreakAfterTimeStartTimeZ; // 0x544 - float m_flBreakAfterTimeThresholdX; // 0x548 - float m_flBreakAfterTimeThresholdY; // 0x54c - float m_flBreakAfterTimeThresholdZ; // 0x550 - float m_flNotifyForceX; // 0x554 - float m_flNotifyForceY; // 0x558 - float m_flNotifyForceZ; // 0x55c - float m_flNotifyForceMinTimeX; // 0x560 - float m_flNotifyForceMinTimeY; // 0x564 - float m_flNotifyForceMinTimeZ; // 0x568 - GameTime_t m_flNotifyForceLastTimeX; // 0x56c - GameTime_t m_flNotifyForceLastTimeY; // 0x570 - GameTime_t m_flNotifyForceLastTimeZ; // 0x574 - bool m_bAxisNotifiedX; // 0x578 - bool m_bAxisNotifiedY; // 0x579 - bool m_bAxisNotifiedZ; // 0x57a + JointMotion_t m_nLinearMotionX; // 0x510 + JointMotion_t m_nLinearMotionY; // 0x514 + JointMotion_t m_nLinearMotionZ; // 0x518 + float m_flLinearFrequencyX; // 0x51c + float m_flLinearFrequencyY; // 0x520 + float m_flLinearFrequencyZ; // 0x524 + float m_flLinearDampingRatioX; // 0x528 + float m_flLinearDampingRatioY; // 0x52c + float m_flLinearDampingRatioZ; // 0x530 + float m_flMaxLinearImpulseX; // 0x534 + float m_flMaxLinearImpulseY; // 0x538 + float m_flMaxLinearImpulseZ; // 0x53c + float m_flBreakAfterTimeX; // 0x540 + float m_flBreakAfterTimeY; // 0x544 + float m_flBreakAfterTimeZ; // 0x548 + GameTime_t m_flBreakAfterTimeStartTimeX; // 0x54c + GameTime_t m_flBreakAfterTimeStartTimeY; // 0x550 + GameTime_t m_flBreakAfterTimeStartTimeZ; // 0x554 + float m_flBreakAfterTimeThresholdX; // 0x558 + float m_flBreakAfterTimeThresholdY; // 0x55c + float m_flBreakAfterTimeThresholdZ; // 0x560 + float m_flNotifyForceX; // 0x564 + float m_flNotifyForceY; // 0x568 + float m_flNotifyForceZ; // 0x56c + float m_flNotifyForceMinTimeX; // 0x570 + float m_flNotifyForceMinTimeY; // 0x574 + float m_flNotifyForceMinTimeZ; // 0x578 + GameTime_t m_flNotifyForceLastTimeX; // 0x57c + GameTime_t m_flNotifyForceLastTimeY; // 0x580 + GameTime_t m_flNotifyForceLastTimeZ; // 0x584 + bool m_bAxisNotifiedX; // 0x588 + bool m_bAxisNotifiedY; // 0x589 + bool m_bAxisNotifiedZ; // 0x58a private: - [[maybe_unused]] uint8_t __pad057b[0x1]; // 0x57b + [[maybe_unused]] uint8_t __pad058b[0x1]; // 0x58b public: - JointMotion_t m_nAngularMotionX; // 0x57c - JointMotion_t m_nAngularMotionY; // 0x580 - JointMotion_t m_nAngularMotionZ; // 0x584 - float m_flAngularFrequencyX; // 0x588 - float m_flAngularFrequencyY; // 0x58c - float m_flAngularFrequencyZ; // 0x590 - float m_flAngularDampingRatioX; // 0x594 - float m_flAngularDampingRatioY; // 0x598 - float m_flAngularDampingRatioZ; // 0x59c - float m_flMaxAngularImpulseX; // 0x5a0 - float m_flMaxAngularImpulseY; // 0x5a4 - float m_flMaxAngularImpulseZ; // 0x5a8 + JointMotion_t m_nAngularMotionX; // 0x58c + JointMotion_t m_nAngularMotionY; // 0x590 + JointMotion_t m_nAngularMotionZ; // 0x594 + float m_flAngularFrequencyX; // 0x598 + float m_flAngularFrequencyY; // 0x59c + float m_flAngularFrequencyZ; // 0x5a0 + float m_flAngularDampingRatioX; // 0x5a4 + float m_flAngularDampingRatioY; // 0x5a8 + float m_flAngularDampingRatioZ; // 0x5ac + float m_flMaxAngularImpulseX; // 0x5b0 + float m_flMaxAngularImpulseY; // 0x5b4 + float m_flMaxAngularImpulseZ; // 0x5b8 private: - [[maybe_unused]] uint8_t __pad05ac[0x4]; // 0x5ac + [[maybe_unused]] uint8_t __pad05bc[0x4]; // 0x5bc public: - CEntityIOOutput m_NotifyForceReachedX; // 0x5b0 - CEntityIOOutput m_NotifyForceReachedY; // 0x5d8 - CEntityIOOutput m_NotifyForceReachedZ; // 0x600 + CEntityIOOutput m_NotifyForceReachedX; // 0x5c0 + CEntityIOOutput m_NotifyForceReachedY; // 0x5e8 + CEntityIOOutput m_NotifyForceReachedZ; // 0x610 }; // Alignment: 0 -// Size: 0x540 +// Size: 0x550 class CSplineConstraint : public CPhysConstraint { public: @@ -10975,128 +9899,124 @@ public: }; // Alignment: 11 -// Size: 0x528 +// Size: 0x538 class CPhysWheelConstraint : public CPhysConstraint { public: - float m_flSuspensionFrequency; // 0x4f8 - float m_flSuspensionDampingRatio; // 0x4fc - float m_flSuspensionHeightOffset; // 0x500 - bool m_bEnableSuspensionLimit; // 0x504 + float m_flSuspensionFrequency; // 0x508 + float m_flSuspensionDampingRatio; // 0x50c + float m_flSuspensionHeightOffset; // 0x510 + bool m_bEnableSuspensionLimit; // 0x514 private: - [[maybe_unused]] uint8_t __pad0505[0x3]; // 0x505 + [[maybe_unused]] uint8_t __pad0515[0x3]; // 0x515 public: - float m_flMinSuspensionOffset; // 0x508 - float m_flMaxSuspensionOffset; // 0x50c - bool m_bEnableSteeringLimit; // 0x510 + float m_flMinSuspensionOffset; // 0x518 + float m_flMaxSuspensionOffset; // 0x51c + bool m_bEnableSteeringLimit; // 0x520 private: - [[maybe_unused]] uint8_t __pad0511[0x3]; // 0x511 + [[maybe_unused]] uint8_t __pad0521[0x3]; // 0x521 public: - float m_flMinSteeringAngle; // 0x514 - float m_flMaxSteeringAngle; // 0x518 - float m_flSteeringAxisFriction; // 0x51c - float m_flSpinAxisFriction; // 0x520 + float m_flMinSteeringAngle; // 0x524 + float m_flMaxSteeringAngle; // 0x528 + float m_flSteeringAxisFriction; // 0x52c + float m_flSpinAxisFriction; // 0x530 }; // Alignment: 4 -// Size: 0x4b8 +// Size: 0x4c8 class CPhysicsEntitySolver : public CLogicalEntity { -private: - [[maybe_unused]] uint8_t __pad04a0[0x8]; // 0x4a0 public: - CHandle< CBaseEntity > m_hMovingEntity; // 0x4a8 - CHandle< CBaseEntity > m_hPhysicsBlocker; // 0x4ac - float m_separationDuration; // 0x4b0 - GameTime_t m_cancelTime; // 0x4b4 + CHandle< CBaseEntity > m_hMovingEntity; // 0x4b8 + CHandle< CBaseEntity > m_hPhysicsBlocker; // 0x4bc + float m_separationDuration; // 0x4c0 + GameTime_t m_cancelTime; // 0x4c4 }; // Alignment: 8 -// Size: 0x4e8 +// Size: 0x4f8 class CPhysicsSpring : public CBaseEntity { -private: - [[maybe_unused]] uint8_t __pad04a0[0x8]; // 0x4a0 public: - float m_flFrequency; // 0x4a8 - float m_flDampingRatio; // 0x4ac - float m_flRestLength; // 0x4b0 + float m_flFrequency; // 0x4b8 + float m_flDampingRatio; // 0x4bc + float m_flRestLength; // 0x4c0 private: - [[maybe_unused]] uint8_t __pad04b4[0x4]; // 0x4b4 + [[maybe_unused]] uint8_t __pad04c4[0x4]; // 0x4c4 public: - CUtlSymbolLarge m_nameAttachStart; // 0x4b8 - CUtlSymbolLarge m_nameAttachEnd; // 0x4c0 - Vector m_start; // 0x4c8 - Vector m_end; // 0x4d4 - uint32_t m_teleportTick; // 0x4e0 + CUtlSymbolLarge m_nameAttachStart; // 0x4c8 + CUtlSymbolLarge m_nameAttachEnd; // 0x4d0 + Vector m_start; // 0x4d8 + Vector m_end; // 0x4e4 + uint32_t m_teleportTick; // 0x4f0 }; // Alignment: 7 -// Size: 0x4c8 +// Size: 0x4d8 class CPointPush : public CPointEntity { public: - bool m_bEnabled; // 0x4a0 + bool m_bEnabled; // 0x4b0 private: - [[maybe_unused]] uint8_t __pad04a1[0x3]; // 0x4a1 + [[maybe_unused]] uint8_t __pad04b1[0x3]; // 0x4b1 public: - float m_flMagnitude; // 0x4a4 - float m_flRadius; // 0x4a8 - float m_flInnerRadius; // 0x4ac - float m_flConeOfInfluence; // 0x4b0 + float m_flMagnitude; // 0x4b4 + float m_flRadius; // 0x4b8 + float m_flInnerRadius; // 0x4bc + float m_flConeOfInfluence; // 0x4c0 private: - [[maybe_unused]] uint8_t __pad04b4[0x4]; // 0x4b4 + [[maybe_unused]] uint8_t __pad04c4[0x4]; // 0x4c4 public: - CUtlSymbolLarge m_iszFilterName; // 0x4b8 - CHandle< CBaseFilter > m_hFilter; // 0x4c0 + CUtlSymbolLarge m_iszFilterName; // 0x4c8 + CHandle< CBaseFilter > m_hFilter; // 0x4d0 }; // Alignment: 1 -// Size: 0x4a8 +// Size: 0x4b8 class CInfoPlayerStart : public CPointEntity { public: - bool m_bDisabled; // 0x4a0 + bool m_bDisabled; // 0x4b0 }; // Alignment: 7 -// Size: 0x4f0 +// Size: 0x500 class CPointEntityFinder : public CBaseEntity { public: - CHandle< CBaseEntity > m_hEntity; // 0x4a0 -private: - [[maybe_unused]] uint8_t __pad04a4[0x4]; // 0x4a4 -public: - CUtlSymbolLarge m_iFilterName; // 0x4a8 - CHandle< CBaseFilter > m_hFilter; // 0x4b0 + CHandle< CBaseEntity > m_hEntity; // 0x4b0 private: [[maybe_unused]] uint8_t __pad04b4[0x4]; // 0x4b4 public: - CUtlSymbolLarge m_iRefName; // 0x4b8 - CHandle< CBaseEntity > m_hReference; // 0x4c0 - EntFinderMethod_t m_FindMethod; // 0x4c4 - CEntityIOOutput m_OnFoundEntity; // 0x4c8 + CUtlSymbolLarge m_iFilterName; // 0x4b8 + CHandle< CBaseFilter > m_hFilter; // 0x4c0 +private: + [[maybe_unused]] uint8_t __pad04c4[0x4]; // 0x4c4 +public: + CUtlSymbolLarge m_iRefName; // 0x4c8 + CHandle< CBaseEntity > m_hReference; // 0x4d0 + EntFinderMethod_t m_FindMethod; // 0x4d4 + CEntityIOOutput m_OnFoundEntity; // 0x4d8 }; // Alignment: 3 -// Size: 0x4b0 +// Size: 0x4c0 class CPointHMDAnchor : public CBaseEntity { public: // MNetworkEnable - bool m_bDisabled; // 0x4a0 + bool m_bDisabled; // 0x4b0 private: - [[maybe_unused]] uint8_t __pad04a1[0x3]; // 0x4a1 + [[maybe_unused]] uint8_t __pad04b1[0x3]; // 0x4b1 public: // MNetworkEnable - GameTime_t m_flEnableTime; // 0x4a4 + GameTime_t m_flEnableTime; // 0x4b4 // MNetworkEnable - int32_t m_nPlayerIndex; // 0x4a8 + int32_t m_nPlayerIndex; // 0x4b8 }; // Alignment: 0 -// Size: 0x4b0 +// Size: 0x4c0 class CPointHMDAnchorOverride : public CPointHMDAnchor { public: @@ -11104,228 +10024,228 @@ public: }; // Alignment: 44 -// Size: 0x698 +// Size: 0x6a8 class CPointValueRemapper : public CBaseEntity { public: // MNetworkEnable - bool m_bDisabled; // 0x4a0 + bool m_bDisabled; // 0x4b0 // MNetworkEnable - bool m_bUpdateOnClient; // 0x4a1 + bool m_bUpdateOnClient; // 0x4b1 private: - [[maybe_unused]] uint8_t __pad04a2[0x2]; // 0x4a2 + [[maybe_unused]] uint8_t __pad04b2[0x2]; // 0x4b2 public: // MNetworkEnable - ValueRemapperInputType_t m_nInputType; // 0x4a4 - CUtlSymbolLarge m_iszRemapLineStartName; // 0x4a8 - CUtlSymbolLarge m_iszRemapLineEndName; // 0x4b0 + ValueRemapperInputType_t m_nInputType; // 0x4b4 + CUtlSymbolLarge m_iszRemapLineStartName; // 0x4b8 + CUtlSymbolLarge m_iszRemapLineEndName; // 0x4c0 // MNetworkEnable - CHandle< CBaseEntity > m_hRemapLineStart; // 0x4b8 + CHandle< CBaseEntity > m_hRemapLineStart; // 0x4c8 // MNetworkEnable - CHandle< CBaseEntity > m_hRemapLineEnd; // 0x4bc + CHandle< CBaseEntity > m_hRemapLineEnd; // 0x4cc // MNetworkEnable - float m_flMaximumChangePerSecond; // 0x4c0 + float m_flMaximumChangePerSecond; // 0x4d0 // MNetworkEnable - float m_flDisengageDistance; // 0x4c4 + float m_flDisengageDistance; // 0x4d4 // MNetworkEnable - float m_flEngageDistance; // 0x4c8 + float m_flEngageDistance; // 0x4d8 // MNetworkEnable - bool m_bRequiresUseKey; // 0x4cc + bool m_bRequiresUseKey; // 0x4dc private: - [[maybe_unused]] uint8_t __pad04cd[0x3]; // 0x4cd + [[maybe_unused]] uint8_t __pad04dd[0x3]; // 0x4dd public: // MNetworkEnable - ValueRemapperOutputType_t m_nOutputType; // 0x4d0 + ValueRemapperOutputType_t m_nOutputType; // 0x4e0 private: - [[maybe_unused]] uint8_t __pad04d4[0x4]; // 0x4d4 + [[maybe_unused]] uint8_t __pad04e4[0x4]; // 0x4e4 public: - CUtlSymbolLarge m_iszOutputEntityName; // 0x4d8 - CUtlSymbolLarge m_iszOutputEntity2Name; // 0x4e0 - CUtlSymbolLarge m_iszOutputEntity3Name; // 0x4e8 - CUtlSymbolLarge m_iszOutputEntity4Name; // 0x4f0 + CUtlSymbolLarge m_iszOutputEntityName; // 0x4e8 + CUtlSymbolLarge m_iszOutputEntity2Name; // 0x4f0 + CUtlSymbolLarge m_iszOutputEntity3Name; // 0x4f8 + CUtlSymbolLarge m_iszOutputEntity4Name; // 0x500 // MNetworkEnable - CNetworkUtlVectorBase< CHandle< CBaseEntity > > m_hOutputEntities; // 0x4f8 + CNetworkUtlVectorBase< CHandle< CBaseEntity > > m_hOutputEntities; // 0x508 // MNetworkEnable - ValueRemapperHapticsType_t m_nHapticsType; // 0x510 + ValueRemapperHapticsType_t m_nHapticsType; // 0x520 // MNetworkEnable - ValueRemapperMomentumType_t m_nMomentumType; // 0x514 + ValueRemapperMomentumType_t m_nMomentumType; // 0x524 // MNetworkEnable - float m_flMomentumModifier; // 0x518 + float m_flMomentumModifier; // 0x528 // MNetworkEnable - float m_flSnapValue; // 0x51c - float m_flCurrentMomentum; // 0x520 + float m_flSnapValue; // 0x52c + float m_flCurrentMomentum; // 0x530 // MNetworkEnable - ValueRemapperRatchetType_t m_nRatchetType; // 0x524 - float m_flRatchetOffset; // 0x528 + ValueRemapperRatchetType_t m_nRatchetType; // 0x534 + float m_flRatchetOffset; // 0x538 // MNetworkEnable - float m_flInputOffset; // 0x52c - bool m_bEngaged; // 0x530 - bool m_bFirstUpdate; // 0x531 + float m_flInputOffset; // 0x53c + bool m_bEngaged; // 0x540 + bool m_bFirstUpdate; // 0x541 private: - [[maybe_unused]] uint8_t __pad0532[0x2]; // 0x532 + [[maybe_unused]] uint8_t __pad0542[0x2]; // 0x542 public: - float m_flPreviousValue; // 0x534 - GameTime_t m_flPreviousUpdateTickTime; // 0x538 - Vector m_vecPreviousTestPoint; // 0x53c - CHandle< CBasePlayerPawn > m_hUsingPlayer; // 0x548 - float m_flCustomOutputValue; // 0x54c - CUtlSymbolLarge m_iszSoundEngage; // 0x550 - CUtlSymbolLarge m_iszSoundDisengage; // 0x558 - CUtlSymbolLarge m_iszSoundReachedValueZero; // 0x560 - CUtlSymbolLarge m_iszSoundReachedValueOne; // 0x568 - CUtlSymbolLarge m_iszSoundMovingLoop; // 0x570 + float m_flPreviousValue; // 0x544 + GameTime_t m_flPreviousUpdateTickTime; // 0x548 + Vector m_vecPreviousTestPoint; // 0x54c + CHandle< CBasePlayerPawn > m_hUsingPlayer; // 0x558 + float m_flCustomOutputValue; // 0x55c + CUtlSymbolLarge m_iszSoundEngage; // 0x560 + CUtlSymbolLarge m_iszSoundDisengage; // 0x568 + CUtlSymbolLarge m_iszSoundReachedValueZero; // 0x570 + CUtlSymbolLarge m_iszSoundReachedValueOne; // 0x578 + CUtlSymbolLarge m_iszSoundMovingLoop; // 0x580 private: - [[maybe_unused]] uint8_t __pad0578[0x8]; // 0x578 + [[maybe_unused]] uint8_t __pad0588[0x8]; // 0x588 public: - CEntityOutputTemplate< float32 > m_Position; // 0x580 - CEntityOutputTemplate< float32 > m_PositionDelta; // 0x5a8 - CEntityIOOutput m_OnReachedValueZero; // 0x5d0 - CEntityIOOutput m_OnReachedValueOne; // 0x5f8 - CEntityIOOutput m_OnReachedValueCustom; // 0x620 - CEntityIOOutput m_OnEngage; // 0x648 - CEntityIOOutput m_OnDisengage; // 0x670 + CEntityOutputTemplate< float32 > m_Position; // 0x590 + CEntityOutputTemplate< float32 > m_PositionDelta; // 0x5b8 + CEntityIOOutput m_OnReachedValueZero; // 0x5e0 + CEntityIOOutput m_OnReachedValueOne; // 0x608 + CEntityIOOutput m_OnReachedValueCustom; // 0x630 + CEntityIOOutput m_OnEngage; // 0x658 + CEntityIOOutput m_OnDisengage; // 0x680 }; // Alignment: 11 -// Size: 0x950 +// Size: 0x960 class CPointWorldText : public CModelPointEntity { public: // MNetworkEnable - char m_messageText[512]; // 0x6f0 + char m_messageText[512]; // 0x700 // MNetworkEnable - char m_FontName[64]; // 0x8f0 + char m_FontName[64]; // 0x900 // MNetworkEnable - bool m_bEnabled; // 0x930 + bool m_bEnabled; // 0x940 // MNetworkEnable - bool m_bFullbright; // 0x931 + bool m_bFullbright; // 0x941 private: - [[maybe_unused]] uint8_t __pad0932[0x2]; // 0x932 + [[maybe_unused]] uint8_t __pad0942[0x2]; // 0x942 public: // MNetworkEnable - float m_flWorldUnitsPerPx; // 0x934 + float m_flWorldUnitsPerPx; // 0x944 // MNetworkEnable - float m_flFontSize; // 0x938 + float m_flFontSize; // 0x948 // MNetworkEnable - float m_flDepthOffset; // 0x93c + float m_flDepthOffset; // 0x94c // MNetworkEnable - Color m_Color; // 0x940 + Color m_Color; // 0x950 // MNetworkEnable - PointWorldTextJustifyHorizontal_t m_nJustifyHorizontal; // 0x944 + PointWorldTextJustifyHorizontal_t m_nJustifyHorizontal; // 0x954 // MNetworkEnable - PointWorldTextJustifyVertical_t m_nJustifyVertical; // 0x948 + PointWorldTextJustifyVertical_t m_nJustifyVertical; // 0x958 // MNetworkEnable - PointWorldTextReorientMode_t m_nReorientMode; // 0x94c + PointWorldTextReorientMode_t m_nReorientMode; // 0x95c }; // Alignment: 12 -// Size: 0x568 +// Size: 0x578 class CPointAngleSensor : public CPointEntity { public: - bool m_bDisabled; // 0x4a0 + bool m_bDisabled; // 0x4b0 private: - [[maybe_unused]] uint8_t __pad04a1[0x7]; // 0x4a1 + [[maybe_unused]] uint8_t __pad04b1[0x7]; // 0x4b1 +public: + CUtlSymbolLarge m_nLookAtName; // 0x4b8 + CHandle< CBaseEntity > m_hTargetEntity; // 0x4c0 + CHandle< CBaseEntity > m_hLookAtEntity; // 0x4c4 + float m_flDuration; // 0x4c8 + float m_flDotTolerance; // 0x4cc + GameTime_t m_flFacingTime; // 0x4d0 + bool m_bFired; // 0x4d4 +private: + [[maybe_unused]] uint8_t __pad04d5[0x3]; // 0x4d5 +public: + CEntityIOOutput m_OnFacingLookat; // 0x4d8 + CEntityIOOutput m_OnNotFacingLookat; // 0x500 + CEntityOutputTemplate< Vector > m_TargetDir; // 0x528 + CEntityOutputTemplate< float32 > m_FacingPercentage; // 0x550 +}; + +// Alignment: 3 +// Size: 0x4e0 +class CPointProximitySensor : public CPointEntity +{ +public: + bool m_bDisabled; // 0x4b0 +private: + [[maybe_unused]] uint8_t __pad04b1[0x3]; // 0x4b1 +public: + CHandle< CBaseEntity > m_hTargetEntity; // 0x4b4 + CEntityOutputTemplate< float32 > m_Distance; // 0x4b8 +}; + +// Alignment: 16 +// Size: 0x5d8 +class CPointAngularVelocitySensor : public CPointEntity +{ public: - CUtlSymbolLarge m_nLookAtName; // 0x4a8 CHandle< CBaseEntity > m_hTargetEntity; // 0x4b0 - CHandle< CBaseEntity > m_hLookAtEntity; // 0x4b4 - float m_flDuration; // 0x4b8 - float m_flDotTolerance; // 0x4bc - GameTime_t m_flFacingTime; // 0x4c0 - bool m_bFired; // 0x4c4 + float m_flThreshold; // 0x4b4 + int32_t m_nLastCompareResult; // 0x4b8 + int32_t m_nLastFireResult; // 0x4bc + GameTime_t m_flFireTime; // 0x4c0 + float m_flFireInterval; // 0x4c4 + float m_flLastAngVelocity; // 0x4c8 + QAngle m_lastOrientation; // 0x4cc + Vector m_vecAxis; // 0x4d8 + bool m_bUseHelper; // 0x4e4 private: - [[maybe_unused]] uint8_t __pad04c5[0x3]; // 0x4c5 + [[maybe_unused]] uint8_t __pad04e5[0x3]; // 0x4e5 public: - CEntityIOOutput m_OnFacingLookat; // 0x4c8 - CEntityIOOutput m_OnNotFacingLookat; // 0x4f0 - CEntityOutputTemplate< Vector > m_TargetDir; // 0x518 - CEntityOutputTemplate< float32 > m_FacingPercentage; // 0x540 + CEntityOutputTemplate< float32 > m_AngularVelocity; // 0x4e8 + CEntityIOOutput m_OnLessThan; // 0x510 + CEntityIOOutput m_OnLessThanOrEqualTo; // 0x538 + CEntityIOOutput m_OnGreaterThan; // 0x560 + CEntityIOOutput m_OnGreaterThanOrEqualTo; // 0x588 + CEntityIOOutput m_OnEqualTo; // 0x5b0 +}; + +// Alignment: 6 +// Size: 0x4f8 +class CPointVelocitySensor : public CPointEntity +{ +public: + CHandle< CBaseEntity > m_hTargetEntity; // 0x4b0 + Vector m_vecAxis; // 0x4b4 + bool m_bEnabled; // 0x4c0 +private: + [[maybe_unused]] uint8_t __pad04c1[0x3]; // 0x4c1 +public: + float m_fPrevVelocity; // 0x4c4 + float m_flAvgInterval; // 0x4c8 +private: + [[maybe_unused]] uint8_t __pad04cc[0x4]; // 0x4cc +public: + CEntityOutputTemplate< float32 > m_Velocity; // 0x4d0 +}; + +// Alignment: 6 +// Size: 0x4d0 +class CPointHurt : public CPointEntity +{ +public: + int32_t m_nDamage; // 0x4b0 + int32_t m_bitsDamageType; // 0x4b4 + float m_flRadius; // 0x4b8 + float m_flDelay; // 0x4bc + CUtlSymbolLarge m_strTarget; // 0x4c0 + CHandle< CBaseEntity > m_pActivator; // 0x4c8 }; // Alignment: 3 // Size: 0x4d0 -class CPointProximitySensor : public CPointEntity +class CPointTeleport : public CServerOnlyPointEntity { public: - bool m_bDisabled; // 0x4a0 -private: - [[maybe_unused]] uint8_t __pad04a1[0x3]; // 0x4a1 -public: - CHandle< CBaseEntity > m_hTargetEntity; // 0x4a4 - CEntityOutputTemplate< float32 > m_Distance; // 0x4a8 -}; - -// Alignment: 16 -// Size: 0x5c8 -class CPointAngularVelocitySensor : public CPointEntity -{ -public: - CHandle< CBaseEntity > m_hTargetEntity; // 0x4a0 - float m_flThreshold; // 0x4a4 - int32_t m_nLastCompareResult; // 0x4a8 - int32_t m_nLastFireResult; // 0x4ac - GameTime_t m_flFireTime; // 0x4b0 - float m_flFireInterval; // 0x4b4 - float m_flLastAngVelocity; // 0x4b8 - QAngle m_lastOrientation; // 0x4bc - Vector m_vecAxis; // 0x4c8 - bool m_bUseHelper; // 0x4d4 -private: - [[maybe_unused]] uint8_t __pad04d5[0x3]; // 0x4d5 -public: - CEntityOutputTemplate< float32 > m_AngularVelocity; // 0x4d8 - CEntityIOOutput m_OnLessThan; // 0x500 - CEntityIOOutput m_OnLessThanOrEqualTo; // 0x528 - CEntityIOOutput m_OnGreaterThan; // 0x550 - CEntityIOOutput m_OnGreaterThanOrEqualTo; // 0x578 - CEntityIOOutput m_OnEqualTo; // 0x5a0 -}; - -// Alignment: 6 -// Size: 0x4e8 -class CPointVelocitySensor : public CPointEntity -{ -public: - CHandle< CBaseEntity > m_hTargetEntity; // 0x4a0 - Vector m_vecAxis; // 0x4a4 - bool m_bEnabled; // 0x4b0 -private: - [[maybe_unused]] uint8_t __pad04b1[0x3]; // 0x4b1 -public: - float m_fPrevVelocity; // 0x4b4 - float m_flAvgInterval; // 0x4b8 -private: - [[maybe_unused]] uint8_t __pad04bc[0x4]; // 0x4bc -public: - CEntityOutputTemplate< float32 > m_Velocity; // 0x4c0 -}; - -// Alignment: 6 -// Size: 0x4c0 -class CPointHurt : public CPointEntity -{ -public: - int32_t m_nDamage; // 0x4a0 - int32_t m_bitsDamageType; // 0x4a4 - float m_flRadius; // 0x4a8 - float m_flDelay; // 0x4ac - CUtlSymbolLarge m_strTarget; // 0x4b0 - CHandle< CBaseEntity > m_pActivator; // 0x4b8 -}; - -// Alignment: 3 -// Size: 0x4c0 -class CPointTeleport : public CBaseEntity -{ -public: - Vector m_vSaveOrigin; // 0x4a0 - QAngle m_vSaveAngles; // 0x4ac - bool m_bTeleportParentedEntities; // 0x4b8 + Vector m_vSaveOrigin; // 0x4b0 + QAngle m_vSaveAngles; // 0x4bc + bool m_bTeleportParentedEntities; // 0x4c8 }; // Alignment: 0 -// Size: 0x4a0 +// Size: 0x4b0 class CEnableMotionFixup : public CBaseEntity { public: @@ -11333,7 +10253,7 @@ public: }; // Alignment: 0 -// Size: 0x4a0 +// Size: 0x4b0 class CFuncPropRespawnZone : public CBaseEntity { public: @@ -11341,305 +10261,298 @@ public: }; // Alignment: 3 -// Size: 0x4b0 +// Size: 0x4c0 class CRagdollManager : public CBaseEntity { public: // MNetworkEnable - int8_t m_iCurrentMaxRagdollCount; // 0x4a0 + int8_t m_iCurrentMaxRagdollCount; // 0x4b0 private: - [[maybe_unused]] uint8_t __pad04a1[0x3]; // 0x4a1 + [[maybe_unused]] uint8_t __pad04b1[0x3]; // 0x4b1 public: - int32_t m_iMaxRagdollCount; // 0x4a4 - bool m_bSaveImportant; // 0x4a8 + int32_t m_iMaxRagdollCount; // 0x4b4 + bool m_bSaveImportant; // 0x4b8 }; // Alignment: 3 -// Size: 0x700 +// Size: 0x710 class CRevertSaved : public CModelPointEntity { public: - float m_loadTime; // 0x6f0 - float m_Duration; // 0x6f4 - float m_HoldTime; // 0x6f8 + float m_loadTime; // 0x700 + float m_Duration; // 0x704 + float m_HoldTime; // 0x708 }; // Alignment: 3 -// Size: 0x578 +// Size: 0x588 class CSceneListManager : public CLogicalEntity { public: - CUtlVector< CHandle< CSceneListManager > > m_hListManagers; // 0x4a0 - CUtlSymbolLarge m_iszScenes[16]; // 0x4b8 - CHandle< CBaseEntity > m_hScenes[16]; // 0x538 + CUtlVector< CHandle< CSceneListManager > > m_hListManagers; // 0x4b0 + CUtlSymbolLarge m_iszScenes[16]; // 0x4c8 + CHandle< CBaseEntity > m_hScenes[16]; // 0x548 }; // Alignment: 64 -// Size: 0xa00 +// Size: 0xa10 class CSceneEntity : public CPointEntity { -private: - [[maybe_unused]] uint8_t __pad04a0[0x8]; // 0x4a0 public: - CUtlSymbolLarge m_iszSceneFile; // 0x4a8 - CUtlSymbolLarge m_iszResumeSceneFile; // 0x4b0 - CUtlSymbolLarge m_iszTarget1; // 0x4b8 - CUtlSymbolLarge m_iszTarget2; // 0x4c0 - CUtlSymbolLarge m_iszTarget3; // 0x4c8 - CUtlSymbolLarge m_iszTarget4; // 0x4d0 - CUtlSymbolLarge m_iszTarget5; // 0x4d8 - CUtlSymbolLarge m_iszTarget6; // 0x4e0 - CUtlSymbolLarge m_iszTarget7; // 0x4e8 - CUtlSymbolLarge m_iszTarget8; // 0x4f0 - CHandle< CBaseEntity > m_hTarget1; // 0x4f8 - CHandle< CBaseEntity > m_hTarget2; // 0x4fc - CHandle< CBaseEntity > m_hTarget3; // 0x500 - CHandle< CBaseEntity > m_hTarget4; // 0x504 - CHandle< CBaseEntity > m_hTarget5; // 0x508 - CHandle< CBaseEntity > m_hTarget6; // 0x50c - CHandle< CBaseEntity > m_hTarget7; // 0x510 - CHandle< CBaseEntity > m_hTarget8; // 0x514 + CUtlSymbolLarge m_iszSceneFile; // 0x4b8 + CUtlSymbolLarge m_iszResumeSceneFile; // 0x4c0 + CUtlSymbolLarge m_iszTarget1; // 0x4c8 + CUtlSymbolLarge m_iszTarget2; // 0x4d0 + CUtlSymbolLarge m_iszTarget3; // 0x4d8 + CUtlSymbolLarge m_iszTarget4; // 0x4e0 + CUtlSymbolLarge m_iszTarget5; // 0x4e8 + CUtlSymbolLarge m_iszTarget6; // 0x4f0 + CUtlSymbolLarge m_iszTarget7; // 0x4f8 + CUtlSymbolLarge m_iszTarget8; // 0x500 + CHandle< CBaseEntity > m_hTarget1; // 0x508 + CHandle< CBaseEntity > m_hTarget2; // 0x50c + CHandle< CBaseEntity > m_hTarget3; // 0x510 + CHandle< CBaseEntity > m_hTarget4; // 0x514 + CHandle< CBaseEntity > m_hTarget5; // 0x518 + CHandle< CBaseEntity > m_hTarget6; // 0x51c + CHandle< CBaseEntity > m_hTarget7; // 0x520 + CHandle< CBaseEntity > m_hTarget8; // 0x524 // MNetworkEnable - bool m_bIsPlayingBack; // 0x518 + bool m_bIsPlayingBack; // 0x528 // MNetworkEnable - bool m_bPaused; // 0x519 + bool m_bPaused; // 0x529 // MNetworkEnable - bool m_bMultiplayer; // 0x51a + bool m_bMultiplayer; // 0x52a // MNetworkEnable - bool m_bAutogenerated; // 0x51b + bool m_bAutogenerated; // 0x52b // MNetworkEnable - float m_flForceClientTime; // 0x51c - float m_flCurrentTime; // 0x520 - float m_flFrameTime; // 0x524 - bool m_bCancelAtNextInterrupt; // 0x528 -private: - [[maybe_unused]] uint8_t __pad0529[0x3]; // 0x529 -public: - float m_fPitch; // 0x52c - bool m_bAutomated; // 0x530 -private: - [[maybe_unused]] uint8_t __pad0531[0x3]; // 0x531 -public: - int32_t m_nAutomatedAction; // 0x534 - float m_flAutomationDelay; // 0x538 - float m_flAutomationTime; // 0x53c - CHandle< CBaseEntity > m_hWaitingForThisResumeScene; // 0x540 - bool m_bWaitingForResumeScene; // 0x544 - bool m_bPausedViaInput; // 0x545 - bool m_bPauseAtNextInterrupt; // 0x546 - bool m_bWaitingForActor; // 0x547 - bool m_bWaitingForInterrupt; // 0x548 - bool m_bInterruptedActorsScenes; // 0x549 - bool m_bBreakOnNonIdle; // 0x54a -private: - [[maybe_unused]] uint8_t __pad054b[0x5]; // 0x54b -public: - // MNetworkEnable - CNetworkUtlVectorBase< CHandle< CBaseFlex > > m_hActorList; // 0x550 - CUtlVector< CHandle< CBaseEntity > > m_hRemoveActorList; // 0x568 -private: - [[maybe_unused]] uint8_t __pad0580[0x10]; // 0x580 -public: - int32_t m_nSceneFlushCounter; // 0x590 - // MNetworkEnable - uint16_t m_nSceneStringIndex; // 0x594 -private: - [[maybe_unused]] uint8_t __pad0596[0x2]; // 0x596 -public: - CEntityIOOutput m_OnStart; // 0x598 - CEntityIOOutput m_OnCompletion; // 0x5c0 - CEntityIOOutput m_OnCanceled; // 0x5e8 - CEntityIOOutput m_OnPaused; // 0x610 - CEntityIOOutput m_OnResumed; // 0x638 - CEntityIOOutput m_OnTrigger[16]; // 0x660 -private: - [[maybe_unused]] uint8_t __pad08e0[0x90]; // 0x8e0 -public: - CHandle< CSceneEntity > m_hInterruptScene; // 0x970 - int32_t m_nInterruptCount; // 0x974 - bool m_bSceneMissing; // 0x978 - bool m_bInterrupted; // 0x979 - bool m_bCompletedEarly; // 0x97a - bool m_bInterruptSceneFinished; // 0x97b - bool m_bRestoring; // 0x97c -private: - [[maybe_unused]] uint8_t __pad097d[0x3]; // 0x97d -public: - CUtlVector< CHandle< CSceneEntity > > m_hNotifySceneCompletion; // 0x980 - CUtlVector< CHandle< CSceneListManager > > m_hListManagers; // 0x998 -private: - [[maybe_unused]] uint8_t __pad09b0[0x28]; // 0x9b0 -public: - CUtlSymbolLarge m_iszSoundName; // 0x9d8 - CHandle< CBaseFlex > m_hActor; // 0x9e0 - CHandle< CBaseEntity > m_hActivator; // 0x9e4 - CHandle< CBaseEntity > m_hCamera; // 0x9e8 - int32_t m_BusyActor; // 0x9ec - SceneOnPlayerDeath_t m_iPlayerDeathBehavior; // 0x9f0 - - // Static fields: - static int32_t &Get_s_nSceneFlushCounter(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CSceneEntity")->m_static_fields[0]->m_instance);}; -}; - -// Alignment: 57 -// Size: 0x7b0 -class CScriptedSequence : public CBaseEntity -{ -public: - CUtlSymbolLarge m_iszEntry; // 0x4a0 - CUtlSymbolLarge m_iszPreIdle; // 0x4a8 - CUtlSymbolLarge m_iszPlay; // 0x4b0 - CUtlSymbolLarge m_iszPostIdle; // 0x4b8 - CUtlSymbolLarge m_iszModifierToAddOnPlay; // 0x4c0 - CUtlSymbolLarge m_iszNextScript; // 0x4c8 - CUtlSymbolLarge m_iszEntity; // 0x4d0 - CUtlSymbolLarge m_iszSyncGroup; // 0x4d8 - ScriptedMoveTo_t m_nMoveTo; // 0x4e0 - bool m_bIsPlayingEntry; // 0x4e4 - bool m_bLoopActionSequence; // 0x4e5 - bool m_bSynchPostIdles; // 0x4e6 - bool m_bIgnoreGravity; // 0x4e7 - bool m_bDisableNPCCollisions; // 0x4e8 - bool m_bKeepAnimgraphLockedPost; // 0x4e9 - bool m_bDontAddModifiers; // 0x4ea -private: - [[maybe_unused]] uint8_t __pad04eb[0x1]; // 0x4eb -public: - float m_flRadius; // 0x4ec - float m_flRepeat; // 0x4f0 - float m_flPlayAnimFadeInTime; // 0x4f4 - float m_flMoveInterpTime; // 0x4f8 - float m_flAngRate; // 0x4fc - int32_t m_iDelay; // 0x500 - GameTime_t m_startTime; // 0x504 - bool m_bWaitForBeginSequence; // 0x508 -private: - [[maybe_unused]] uint8_t __pad0509[0x3]; // 0x509 -public: - int32_t m_saved_effects; // 0x50c - int32_t m_savedFlags; // 0x510 - int32_t m_savedCollisionGroup; // 0x514 - bool m_interruptable; // 0x518 - bool m_sequenceStarted; // 0x519 - bool m_bPrevAnimatedEveryTick; // 0x51a - bool m_bForcedAnimatedEveryTick; // 0x51b - bool m_bPositionRelativeToOtherEntity; // 0x51c -private: - [[maybe_unused]] uint8_t __pad051d[0x3]; // 0x51d -public: - CHandle< CBaseEntity > m_hTargetEnt; // 0x520 - CHandle< CScriptedSequence > m_hNextCine; // 0x524 - bool m_bThinking; // 0x528 - bool m_bInitiatedSelfDelete; // 0x529 - bool m_bIsTeleportingDueToMoveTo; // 0x52a - bool m_bAllowCustomInterruptConditions; // 0x52b - CHandle< CBaseEntity > m_hLastFoundEntity; // 0x52c - CHandle< CBaseAnimGraph > m_hForcedTarget; // 0x530 - bool m_bDontCancelOtherSequences; // 0x534 - bool m_bForceSynch; // 0x535 - bool m_bTargetWasAsleep; // 0x536 - bool m_bPreventUpdateYawOnFinish; // 0x537 - bool m_bEnsureOnNavmeshOnFinish; // 0x538 + float m_flForceClientTime; // 0x52c + float m_flCurrentTime; // 0x530 + float m_flFrameTime; // 0x534 + bool m_bCancelAtNextInterrupt; // 0x538 private: [[maybe_unused]] uint8_t __pad0539[0x3]; // 0x539 public: - ScriptedOnDeath_t m_onDeathBehavior; // 0x53c - ScriptedConflictResponse_t m_ConflictResponse; // 0x540 + float m_fPitch; // 0x53c + bool m_bAutomated; // 0x540 private: - [[maybe_unused]] uint8_t __pad0544[0x4]; // 0x544 + [[maybe_unused]] uint8_t __pad0541[0x3]; // 0x541 public: - CEntityIOOutput m_OnBeginSequence; // 0x548 - CEntityIOOutput m_OnActionStartOrLoop; // 0x570 - CEntityIOOutput m_OnEndSequence; // 0x598 - CEntityIOOutput m_OnPostIdleEndSequence; // 0x5c0 - CEntityIOOutput m_OnCancelSequence; // 0x5e8 - CEntityIOOutput m_OnCancelFailedSequence; // 0x610 - CEntityIOOutput m_OnScriptEvent[8]; // 0x638 + int32_t m_nAutomatedAction; // 0x544 + float m_flAutomationDelay; // 0x548 + float m_flAutomationTime; // 0x54c + CHandle< CBaseEntity > m_hWaitingForThisResumeScene; // 0x550 + bool m_bWaitingForResumeScene; // 0x554 + bool m_bPausedViaInput; // 0x555 + bool m_bPauseAtNextInterrupt; // 0x556 + bool m_bWaitingForActor; // 0x557 + bool m_bWaitingForInterrupt; // 0x558 + bool m_bInterruptedActorsScenes; // 0x559 + bool m_bBreakOnNonIdle; // 0x55a private: - [[maybe_unused]] uint8_t __pad0778[0x8]; // 0x778 + [[maybe_unused]] uint8_t __pad055b[0x5]; // 0x55b public: - CTransform m_matOtherToMain; // 0x780 - CHandle< CBaseEntity > m_hInteractionMainEntity; // 0x7a0 - int32_t m_iPlayerDeathBehavior; // 0x7a4 + // MNetworkEnable + CNetworkUtlVectorBase< CHandle< CBaseFlex > > m_hActorList; // 0x560 + CUtlVector< CHandle< CBaseEntity > > m_hRemoveActorList; // 0x578 +private: + [[maybe_unused]] uint8_t __pad0590[0x10]; // 0x590 +public: + int32_t m_nSceneFlushCounter; // 0x5a0 + // MNetworkEnable + uint16_t m_nSceneStringIndex; // 0x5a4 +private: + [[maybe_unused]] uint8_t __pad05a6[0x2]; // 0x5a6 +public: + CEntityIOOutput m_OnStart; // 0x5a8 + CEntityIOOutput m_OnCompletion; // 0x5d0 + CEntityIOOutput m_OnCanceled; // 0x5f8 + CEntityIOOutput m_OnPaused; // 0x620 + CEntityIOOutput m_OnResumed; // 0x648 + CEntityIOOutput m_OnTrigger[16]; // 0x670 +private: + [[maybe_unused]] uint8_t __pad08f0[0x90]; // 0x8f0 +public: + CHandle< CSceneEntity > m_hInterruptScene; // 0x980 + int32_t m_nInterruptCount; // 0x984 + bool m_bSceneMissing; // 0x988 + bool m_bInterrupted; // 0x989 + bool m_bCompletedEarly; // 0x98a + bool m_bInterruptSceneFinished; // 0x98b + bool m_bRestoring; // 0x98c +private: + [[maybe_unused]] uint8_t __pad098d[0x3]; // 0x98d +public: + CUtlVector< CHandle< CSceneEntity > > m_hNotifySceneCompletion; // 0x990 + CUtlVector< CHandle< CSceneListManager > > m_hListManagers; // 0x9a8 +private: + [[maybe_unused]] uint8_t __pad09c0[0x28]; // 0x9c0 +public: + CUtlSymbolLarge m_iszSoundName; // 0x9e8 + CHandle< CBaseFlex > m_hActor; // 0x9f0 + CHandle< CBaseEntity > m_hActivator; // 0x9f4 + CHandle< CBaseEntity > m_hCamera; // 0x9f8 + int32_t m_BusyActor; // 0x9fc + SceneOnPlayerDeath_t m_iPlayerDeathBehavior; // 0xa00 + static int32_t &Get_s_nSceneFlushCounter(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CSceneEntity")->m_static_fields[0]->m_instance);}; +}; + +// Alignment: 62 +// Size: 0x7c0 +class CScriptedSequence : public CBaseEntity +{ +public: + CUtlSymbolLarge m_iszEntry; // 0x4b0 + CUtlSymbolLarge m_iszPreIdle; // 0x4b8 + CUtlSymbolLarge m_iszPlay; // 0x4c0 + CUtlSymbolLarge m_iszPostIdle; // 0x4c8 + CUtlSymbolLarge m_iszModifierToAddOnPlay; // 0x4d0 + CUtlSymbolLarge m_iszNextScript; // 0x4d8 + CUtlSymbolLarge m_iszEntity; // 0x4e0 + CUtlSymbolLarge m_iszSyncGroup; // 0x4e8 + ScriptedMoveTo_t m_nMoveTo; // 0x4f0 + bool m_bIsPlayingPreIdle; // 0x4f4 + bool m_bIsPlayingEntry; // 0x4f5 + bool m_bIsPlayingAction; // 0x4f6 + bool m_bIsPlayingPostIdle; // 0x4f7 + bool m_bLoopPreIdleSequence; // 0x4f8 + bool m_bLoopActionSequence; // 0x4f9 + bool m_bLoopPostIdleSequence; // 0x4fa + bool m_bSynchPostIdles; // 0x4fb + bool m_bIgnoreGravity; // 0x4fc + bool m_bDisableNPCCollisions; // 0x4fd + bool m_bKeepAnimgraphLockedPost; // 0x4fe + bool m_bDontAddModifiers; // 0x4ff + float m_flRadius; // 0x500 + float m_flRepeat; // 0x504 + float m_flPlayAnimFadeInTime; // 0x508 + float m_flMoveInterpTime; // 0x50c + float m_flAngRate; // 0x510 + int32_t m_iDelay; // 0x514 + GameTime_t m_startTime; // 0x518 + bool m_bWaitForBeginSequence; // 0x51c +private: + [[maybe_unused]] uint8_t __pad051d[0x3]; // 0x51d +public: + int32_t m_saved_effects; // 0x520 + int32_t m_savedFlags; // 0x524 + int32_t m_savedCollisionGroup; // 0x528 + bool m_interruptable; // 0x52c + bool m_sequenceStarted; // 0x52d + bool m_bPrevAnimatedEveryTick; // 0x52e + bool m_bForcedAnimatedEveryTick; // 0x52f + bool m_bPositionRelativeToOtherEntity; // 0x530 +private: + [[maybe_unused]] uint8_t __pad0531[0x3]; // 0x531 +public: + CHandle< CBaseEntity > m_hTargetEnt; // 0x534 + CHandle< CScriptedSequence > m_hNextCine; // 0x538 + bool m_bThinking; // 0x53c + bool m_bInitiatedSelfDelete; // 0x53d + bool m_bIsTeleportingDueToMoveTo; // 0x53e + bool m_bAllowCustomInterruptConditions; // 0x53f + CHandle< CBaseEntity > m_hLastFoundEntity; // 0x540 + CHandle< CBaseAnimGraph > m_hForcedTarget; // 0x544 + bool m_bDontCancelOtherSequences; // 0x548 + bool m_bForceSynch; // 0x549 + bool m_bTargetWasAsleep; // 0x54a + bool m_bPreventUpdateYawOnFinish; // 0x54b + bool m_bEnsureOnNavmeshOnFinish; // 0x54c +private: + [[maybe_unused]] uint8_t __pad054d[0x3]; // 0x54d +public: + ScriptedOnDeath_t m_onDeathBehavior; // 0x550 + ScriptedConflictResponse_t m_ConflictResponse; // 0x554 + CEntityIOOutput m_OnBeginSequence; // 0x558 + CEntityIOOutput m_OnActionStartOrLoop; // 0x580 + CEntityIOOutput m_OnEndSequence; // 0x5a8 + CEntityIOOutput m_OnPostIdleEndSequence; // 0x5d0 + CEntityIOOutput m_OnCancelSequence; // 0x5f8 + CEntityIOOutput m_OnCancelFailedSequence; // 0x620 + CEntityIOOutput m_OnScriptEvent[8]; // 0x648 +private: + [[maybe_unused]] uint8_t __pad0788[0x8]; // 0x788 +public: + CTransform m_matOtherToMain; // 0x790 + CHandle< CBaseEntity > m_hInteractionMainEntity; // 0x7b0 + int32_t m_iPlayerDeathBehavior; // 0x7b4 }; // Alignment: 8 -// Size: 0x4e8 +// Size: 0x4f8 class CSoundOpvarSetEntity : public CBaseEntity { -private: - [[maybe_unused]] uint8_t __pad04a0[0x8]; // 0x4a0 public: - CUtlSymbolLarge m_iszStackName; // 0x4a8 - CUtlSymbolLarge m_iszOperatorName; // 0x4b0 - CUtlSymbolLarge m_iszOpvarName; // 0x4b8 - int32_t m_nOpvarType; // 0x4c0 - int32_t m_nOpvarIndex; // 0x4c4 - float m_flOpvarValue; // 0x4c8 + CUtlSymbolLarge m_iszStackName; // 0x4b8 + CUtlSymbolLarge m_iszOperatorName; // 0x4c0 + CUtlSymbolLarge m_iszOpvarName; // 0x4c8 + int32_t m_nOpvarType; // 0x4d0 + int32_t m_nOpvarIndex; // 0x4d4 + float m_flOpvarValue; // 0x4d8 private: - [[maybe_unused]] uint8_t __pad04cc[0x4]; // 0x4cc + [[maybe_unused]] uint8_t __pad04dc[0x4]; // 0x4dc public: - CUtlSymbolLarge m_OpvarValueString; // 0x4d0 - bool m_bSetOnSpawn; // 0x4d8 + CUtlSymbolLarge m_OpvarValueString; // 0x4e0 + bool m_bSetOnSpawn; // 0x4e8 }; // Alignment: 6 -// Size: 0x4c0 +// Size: 0x4d0 class CAISound : public CPointEntity { public: - int32_t m_iSoundType; // 0x4a0 - int32_t m_iSoundContext; // 0x4a4 - int32_t m_iVolume; // 0x4a8 - int32_t m_iSoundIndex; // 0x4ac - float m_flDuration; // 0x4b0 + int32_t m_iSoundType; // 0x4b0 + int32_t m_iSoundContext; // 0x4b4 + int32_t m_iVolume; // 0x4b8 + int32_t m_iSoundIndex; // 0x4bc + float m_flDuration; // 0x4c0 private: - [[maybe_unused]] uint8_t __pad04b4[0x4]; // 0x4b4 + [[maybe_unused]] uint8_t __pad04c4[0x4]; // 0x4c4 public: - CUtlSymbolLarge m_iszProxyEntityName; // 0x4b8 + CUtlSymbolLarge m_iszProxyEntityName; // 0x4c8 }; // Alignment: 1 -// Size: 0x4a8 +// Size: 0x4b8 class CSoundStackSave : public CLogicalEntity { public: - CUtlSymbolLarge m_iszStackName; // 0x4a0 + CUtlSymbolLarge m_iszStackName; // 0x4b0 }; // Alignment: 12 -// Size: 0x548 +// Size: 0x558 class CSoundEventEntity : public CBaseEntity { public: - bool m_bStartOnSpawn; // 0x4a0 - bool m_bToLocalPlayer; // 0x4a1 - bool m_bStopOnNew; // 0x4a2 - bool m_bSaveRestore; // 0x4a3 - bool m_bSavedIsPlaying; // 0x4a4 + bool m_bStartOnSpawn; // 0x4b0 + bool m_bToLocalPlayer; // 0x4b1 + bool m_bStopOnNew; // 0x4b2 + bool m_bSaveRestore; // 0x4b3 + bool m_bSavedIsPlaying; // 0x4b4 private: - [[maybe_unused]] uint8_t __pad04a5[0x3]; // 0x4a5 + [[maybe_unused]] uint8_t __pad04b5[0x3]; // 0x4b5 public: - float m_flSavedElapsedTime; // 0x4a8 + float m_flSavedElapsedTime; // 0x4b8 private: - [[maybe_unused]] uint8_t __pad04ac[0x4]; // 0x4ac + [[maybe_unused]] uint8_t __pad04bc[0x4]; // 0x4bc public: - CUtlSymbolLarge m_iszSourceEntityName; // 0x4b0 - CUtlSymbolLarge m_iszAttachmentName; // 0x4b8 - CEntityOutputTemplate< uint64 > m_onGUIDChanged; // 0x4c0 - CEntityIOOutput m_onSoundFinished; // 0x4e8 + CUtlSymbolLarge m_iszSourceEntityName; // 0x4c0 + CUtlSymbolLarge m_iszAttachmentName; // 0x4c8 + CEntityOutputTemplate< uint64 > m_onGUIDChanged; // 0x4d0 + CEntityIOOutput m_onSoundFinished; // 0x4f8 private: - [[maybe_unused]] uint8_t __pad0510[0x20]; // 0x510 + [[maybe_unused]] uint8_t __pad0520[0x20]; // 0x520 public: - CUtlSymbolLarge m_iszSoundName; // 0x530 + CUtlSymbolLarge m_iszSoundName; // 0x540 private: - [[maybe_unused]] uint8_t __pad0538[0x8]; // 0x538 + [[maybe_unused]] uint8_t __pad0548[0x8]; // 0x548 public: - CEntityHandle m_hSource; // 0x540 + CEntityHandle m_hSource; // 0x550 }; // Alignment: 0 -// Size: 0x548 +// Size: 0x558 class CSoundEventEntityAlias_snd_event_point : public CSoundEventEntity { public: @@ -11647,40 +10560,38 @@ public: }; // Alignment: 2 -// Size: 0x560 +// Size: 0x570 class CSoundEventAABBEntity : public CSoundEventEntity { public: - Vector m_vMins; // 0x548 - Vector m_vMaxs; // 0x554 + Vector m_vMins; // 0x558 + Vector m_vMaxs; // 0x564 }; // Alignment: 6 -// Size: 0x588 +// Size: 0x598 class CSoundEventPathCornerEntity : public CSoundEventEntity { public: - CUtlSymbolLarge m_iszPathCorner; // 0x548 - int32_t m_iCountMax; // 0x550 - float m_flDistanceMax; // 0x554 - float m_flDistMaxSqr; // 0x558 - float m_flDotProductMax; // 0x55c - bool bPlaying; // 0x560 + CUtlSymbolLarge m_iszPathCorner; // 0x558 + int32_t m_iCountMax; // 0x560 + float m_flDistanceMax; // 0x564 + float m_flDistMaxSqr; // 0x568 + float m_flDotProductMax; // 0x56c + bool bPlaying; // 0x570 }; // Alignment: 2 -// Size: 0x4b8 +// Size: 0x4c8 class CSoundEventParameter : public CBaseEntity { -private: - [[maybe_unused]] uint8_t __pad04a0[0x8]; // 0x4a0 public: - CUtlSymbolLarge m_iszParamName; // 0x4a8 - float m_flFloatValue; // 0x4b0 + CUtlSymbolLarge m_iszParamName; // 0x4b8 + float m_flFloatValue; // 0x4c0 }; // Alignment: 0 -// Size: 0x540 +// Size: 0x550 class CEnvSoundscapeProxyAlias_snd_soundscape_proxy : public CEnvSoundscapeProxy { public: @@ -11688,7 +10599,7 @@ public: }; // Alignment: 0 -// Size: 0x538 +// Size: 0x548 class CEnvSoundscapeAlias_snd_soundscape : public CEnvSoundscape { public: @@ -11696,7 +10607,7 @@ public: }; // Alignment: 0 -// Size: 0x538 +// Size: 0x548 class CEnvSoundscapeTriggerableAlias_snd_soundscape_triggerable : public CEnvSoundscapeTriggerable { public: @@ -11704,7 +10615,7 @@ public: }; // Alignment: 0 -// Size: 0x4a0 +// Size: 0x4b0 class CNullEntity : public CBaseEntity { public: @@ -11712,15 +10623,15 @@ public: }; // Alignment: 1 -// Size: 0x4a8 +// Size: 0x4b8 class CBaseDMStart : public CPointEntity { public: - CUtlSymbolLarge m_Master; // 0x4a0 + CUtlSymbolLarge m_Master; // 0x4b0 }; // Alignment: 0 -// Size: 0x4a0 +// Size: 0x4b0 class CInfoLandmark : public CPointEntity { public: @@ -11728,98 +10639,98 @@ public: }; // Alignment: 14 -// Size: 0x738 +// Size: 0x748 class CSun : public CBaseModelEntity { public: // MNetworkEnable - Vector m_vDirection; // 0x6f0 + Vector m_vDirection; // 0x700 // MNetworkEnable - Color m_clrOverlay; // 0x6fc + Color m_clrOverlay; // 0x70c // MNetworkEnable - CUtlSymbolLarge m_iszEffectName; // 0x700 + CUtlSymbolLarge m_iszEffectName; // 0x710 // MNetworkEnable - CUtlSymbolLarge m_iszSSEffectName; // 0x708 + CUtlSymbolLarge m_iszSSEffectName; // 0x718 // MNetworkEnable - bool m_bOn; // 0x710 + bool m_bOn; // 0x720 // MNetworkEnable - bool m_bmaxColor; // 0x711 + bool m_bmaxColor; // 0x721 private: - [[maybe_unused]] uint8_t __pad0712[0x2]; // 0x712 + [[maybe_unused]] uint8_t __pad0722[0x2]; // 0x722 public: // MNetworkEnable - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "100.000000" - float m_flSize; // 0x714 + // MNetworkMinValue "0" + // MNetworkMaxValue "100" + float m_flSize; // 0x724 // MNetworkEnable - // MNetworkMinValue "-360.000000" - // MNetworkMaxValue "360.000000" - float m_flRotation; // 0x718 + // MNetworkMinValue "-360" + // MNetworkMaxValue "360" + float m_flRotation; // 0x728 // MNetworkEnable - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "100.000000" - float m_flHazeScale; // 0x71c + // MNetworkMinValue "0" + // MNetworkMaxValue "100" + float m_flHazeScale; // 0x72c // MNetworkEnable - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "2.000000" - float m_flAlphaHaze; // 0x720 + // MNetworkMinValue "0" + // MNetworkMaxValue "2" + float m_flAlphaHaze; // 0x730 // MNetworkEnable - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "2.000000" - float m_flAlphaHdr; // 0x724 + // MNetworkMinValue "0" + // MNetworkMaxValue "2" + float m_flAlphaHdr; // 0x734 // MNetworkEnable - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "2.000000" - float m_flAlphaScale; // 0x728 + // MNetworkMinValue "0" + // MNetworkMaxValue "2" + float m_flAlphaScale; // 0x738 // MNetworkEnable - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "100.000000" - float m_flHDRColorScale; // 0x72c + // MNetworkMinValue "0" + // MNetworkMaxValue "100" + float m_flHDRColorScale; // 0x73c // MNetworkEnable - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "1.000000" - float m_flFarZScale; // 0x730 + // MNetworkMinValue "0" + // MNetworkMaxValue "1" + float m_flFarZScale; // 0x740 +}; + +// Alignment: 2 +// Size: 0x4c8 +class CTankTargetChange : public CPointEntity +{ +public: + CVariantBase< CVariantDefaultAllocator > m_newTarget; // 0x4b0 + CUtlSymbolLarge m_newTargetName; // 0x4c0 +}; + +// Alignment: 7 +// Size: 0x4f0 +class CTankTrainAI : public CPointEntity +{ +public: + CHandle< CFuncTrackTrain > m_hTrain; // 0x4b0 + CHandle< CBaseEntity > m_hTargetEntity; // 0x4b4 + int32_t m_soundPlaying; // 0x4b8 +private: + [[maybe_unused]] uint8_t __pad04bc[0x14]; // 0x4bc +public: + CUtlSymbolLarge m_startSoundName; // 0x4d0 + CUtlSymbolLarge m_engineSoundName; // 0x4d8 + CUtlSymbolLarge m_movementSoundName; // 0x4e0 + CUtlSymbolLarge m_targetEntityName; // 0x4e8 }; // Alignment: 2 // Size: 0x4b8 -class CTankTargetChange : public CPointEntity -{ -public: - CVariantBase< CVariantDefaultAllocator > m_newTarget; // 0x4a0 - CUtlSymbolLarge m_newTargetName; // 0x4b0 -}; - -// Alignment: 7 -// Size: 0x4e0 -class CTankTrainAI : public CPointEntity -{ -public: - CHandle< CFuncTrackTrain > m_hTrain; // 0x4a0 - CHandle< CBaseEntity > m_hTargetEntity; // 0x4a4 - int32_t m_soundPlaying; // 0x4a8 -private: - [[maybe_unused]] uint8_t __pad04ac[0x14]; // 0x4ac -public: - CUtlSymbolLarge m_startSoundName; // 0x4c0 - CUtlSymbolLarge m_engineSoundName; // 0x4c8 - CUtlSymbolLarge m_movementSoundName; // 0x4d0 - CUtlSymbolLarge m_targetEntityName; // 0x4d8 -}; - -// Alignment: 2 -// Size: 0x4a8 class CHandleTest : public CBaseEntity { public: // MNetworkEnable - CHandle< CBaseEntity > m_Handle; // 0x4a0 + CHandle< CBaseEntity > m_Handle; // 0x4b0 // MNetworkEnable - bool m_bSendHandle; // 0x4a4 + bool m_bSendHandle; // 0x4b4 }; // Alignment: 0 -// Size: 0x4a0 +// Size: 0x4b0 class CHandleDummy : public CBaseEntity { public: @@ -11827,15 +10738,15 @@ public: }; // Alignment: 1 -// Size: 0x6f8 +// Size: 0x708 class CPlatTrigger : public CBaseModelEntity { public: - CHandle< CFuncPlat > m_pPlatform; // 0x6f0 + CHandle< CFuncPlat > m_pPlatform; // 0x700 }; // Alignment: 0 -// Size: 0x6f0 +// Size: 0x700 class CFuncTrainControls : public CBaseModelEntity { public: @@ -11843,16 +10754,16 @@ public: }; // Alignment: 2 -// Size: 0x700 +// Size: 0x710 class CTriggerVolume : public CBaseModelEntity { public: - CUtlSymbolLarge m_iFilterName; // 0x6f0 - CHandle< CBaseFilter > m_hFilter; // 0x6f8 + CUtlSymbolLarge m_iFilterName; // 0x700 + CHandle< CBaseFilter > m_hFilter; // 0x708 }; // Alignment: 0 -// Size: 0x4a0 +// Size: 0x4b0 class CInfoTeleportDestination : public CPointEntity { public: @@ -11860,29 +10771,29 @@ public: }; // Alignment: 1 -// Size: 0x4a8 +// Size: 0x4b8 class CAI_ChangeTarget : public CBaseEntity { public: - CUtlSymbolLarge m_iszNewTarget; // 0x4a0 + CUtlSymbolLarge m_iszNewTarget; // 0x4b0 }; // Alignment: 4 -// Size: 0x4c0 +// Size: 0x4d0 class CAI_ChangeHintGroup : public CBaseEntity { public: - int32_t m_iSearchType; // 0x4a0 + int32_t m_iSearchType; // 0x4b0 private: - [[maybe_unused]] uint8_t __pad04a4[0x4]; // 0x4a4 + [[maybe_unused]] uint8_t __pad04b4[0x4]; // 0x4b4 public: - CUtlSymbolLarge m_strSearchName; // 0x4a8 - CUtlSymbolLarge m_strNewHintGroup; // 0x4b0 - float m_flRadius; // 0x4b8 + CUtlSymbolLarge m_strSearchName; // 0x4b8 + CUtlSymbolLarge m_strNewHintGroup; // 0x4c0 + float m_flRadius; // 0x4c8 }; // Alignment: 0 -// Size: 0x4a0 +// Size: 0x4b0 class CLogicProximity : public CPointEntity { public: @@ -11890,7 +10801,7 @@ public: }; // Alignment: 0 -// Size: 0x4a0 +// Size: 0x4b0 class CInfoSpawnGroupLandmark : public CPointEntity { public: @@ -11898,51 +10809,57 @@ public: }; // Alignment: 11 -// Size: 0x5a0 +// Size: 0x5b0 class CInfoSpawnGroupLoadUnload : public CLogicalEntity { public: - CEntityIOOutput m_OnSpawnGroupLoadStarted; // 0x4a0 - CEntityIOOutput m_OnSpawnGroupLoadFinished; // 0x4c8 - CEntityIOOutput m_OnSpawnGroupUnloadStarted; // 0x4f0 - CEntityIOOutput m_OnSpawnGroupUnloadFinished; // 0x518 - CUtlSymbolLarge m_iszSpawnGroupName; // 0x540 - CUtlSymbolLarge m_iszSpawnGroupFilterName; // 0x548 - CUtlSymbolLarge m_iszLandmarkName; // 0x550 - CUtlString m_sFixedSpawnGroupName; // 0x558 - float m_flTimeoutInterval; // 0x560 - bool m_bStreamingStarted; // 0x564 - bool m_bUnloadingStarted; // 0x565 + CEntityIOOutput m_OnSpawnGroupLoadStarted; // 0x4b0 + CEntityIOOutput m_OnSpawnGroupLoadFinished; // 0x4d8 + CEntityIOOutput m_OnSpawnGroupUnloadStarted; // 0x500 + CEntityIOOutput m_OnSpawnGroupUnloadFinished; // 0x528 + CUtlSymbolLarge m_iszSpawnGroupName; // 0x550 + CUtlSymbolLarge m_iszSpawnGroupFilterName; // 0x558 + CUtlSymbolLarge m_iszLandmarkName; // 0x560 + CUtlString m_sFixedSpawnGroupName; // 0x568 + float m_flTimeoutInterval; // 0x570 + bool m_bStreamingStarted; // 0x574 + bool m_bUnloadingStarted; // 0x575 +}; + +// Alignment: 0 +// Size: 0x5c8 +class CPointPulse : public CBaseEntity +{ +public: + // No members available }; // Alignment: 1 -// Size: 0x700 +// Size: 0x710 class CFuncNavObstruction : public CBaseModelEntity { -private: - [[maybe_unused]] uint8_t __pad06f0[0x8]; // 0x6f0 public: - bool m_bDisabled; // 0x6f8 + bool m_bDisabled; // 0x708 }; // Alignment: 10 -// Size: 0x538 +// Size: 0x548 class CAmbientGeneric : public CPointEntity { public: - float m_radius; // 0x4a0 - float m_flMaxRadius; // 0x4a4 - soundlevel_t m_iSoundLevel; // 0x4a8 - dynpitchvol_t m_dpv; // 0x4ac - bool m_fActive; // 0x510 - bool m_fLooping; // 0x511 + float m_radius; // 0x4b0 + float m_flMaxRadius; // 0x4b4 + soundlevel_t m_iSoundLevel; // 0x4b8 + dynpitchvol_t m_dpv; // 0x4bc + bool m_fActive; // 0x520 + bool m_fLooping; // 0x521 private: - [[maybe_unused]] uint8_t __pad0512[0x6]; // 0x512 + [[maybe_unused]] uint8_t __pad0522[0x6]; // 0x522 public: - CUtlSymbolLarge m_iszSound; // 0x518 - CUtlSymbolLarge m_sSourceEntName; // 0x520 - CHandle< CBaseEntity > m_hSoundSource; // 0x528 - CEntityIndex m_nSoundSourceEntIndex; // 0x52c + CUtlSymbolLarge m_iszSound; // 0x528 + CUtlSymbolLarge m_sSourceEntName; // 0x530 + CHandle< CBaseEntity > m_hSoundSource; // 0x538 + CEntityIndex m_nSoundSourceEntIndex; // 0x53c }; // Alignment: 2 @@ -11955,85 +10872,85 @@ public: }; // Alignment: 16 -// Size: 0x770 +// Size: 0x780 class CBaseToggle : public CBaseModelEntity { public: - TOGGLE_STATE m_toggle_state; // 0x6f0 - float m_flMoveDistance; // 0x6f4 - float m_flWait; // 0x6f8 - float m_flLip; // 0x6fc - bool m_bAlwaysFireBlockedOutputs; // 0x700 + TOGGLE_STATE m_toggle_state; // 0x700 + float m_flMoveDistance; // 0x704 + float m_flWait; // 0x708 + float m_flLip; // 0x70c + bool m_bAlwaysFireBlockedOutputs; // 0x710 private: - [[maybe_unused]] uint8_t __pad0701[0x3]; // 0x701 + [[maybe_unused]] uint8_t __pad0711[0x3]; // 0x711 public: - Vector m_vecPosition1; // 0x704 - Vector m_vecPosition2; // 0x710 - QAngle m_vecMoveAng; // 0x71c - QAngle m_vecAngle1; // 0x728 - QAngle m_vecAngle2; // 0x734 - float m_flHeight; // 0x740 - CHandle< CBaseEntity > m_hActivator; // 0x744 - Vector m_vecFinalDest; // 0x748 - QAngle m_vecFinalAngle; // 0x754 - int32_t m_movementType; // 0x760 + Vector m_vecPosition1; // 0x714 + Vector m_vecPosition2; // 0x720 + QAngle m_vecMoveAng; // 0x72c + QAngle m_vecAngle1; // 0x738 + QAngle m_vecAngle2; // 0x744 + float m_flHeight; // 0x750 + CHandle< CBaseEntity > m_hActivator; // 0x754 + Vector m_vecFinalDest; // 0x758 + QAngle m_vecFinalAngle; // 0x764 + int32_t m_movementType; // 0x770 private: - [[maybe_unused]] uint8_t __pad0764[0x4]; // 0x764 + [[maybe_unused]] uint8_t __pad0774[0x4]; // 0x774 public: - CUtlSymbolLarge m_sMaster; // 0x768 + CUtlSymbolLarge m_sMaster; // 0x778 }; // Alignment: 24 -// Size: 0x8b8 +// Size: 0x8c8 class CBaseButton : public CBaseToggle { public: - QAngle m_angMoveEntitySpace; // 0x770 - bool m_fStayPushed; // 0x77c - bool m_fRotating; // 0x77d + QAngle m_angMoveEntitySpace; // 0x780 + bool m_fStayPushed; // 0x78c + bool m_fRotating; // 0x78d private: - [[maybe_unused]] uint8_t __pad077e[0x2]; // 0x77e + [[maybe_unused]] uint8_t __pad078e[0x2]; // 0x78e public: - locksound_t m_ls; // 0x780 - CUtlSymbolLarge m_sUseSound; // 0x7a0 - CUtlSymbolLarge m_sLockedSound; // 0x7a8 - CUtlSymbolLarge m_sUnlockedSound; // 0x7b0 - bool m_bLocked; // 0x7b8 - bool m_bDisabled; // 0x7b9 + locksound_t m_ls; // 0x790 + CUtlSymbolLarge m_sUseSound; // 0x7b0 + CUtlSymbolLarge m_sLockedSound; // 0x7b8 + CUtlSymbolLarge m_sUnlockedSound; // 0x7c0 + bool m_bLocked; // 0x7c8 + bool m_bDisabled; // 0x7c9 private: - [[maybe_unused]] uint8_t __pad07ba[0x2]; // 0x7ba + [[maybe_unused]] uint8_t __pad07ca[0x2]; // 0x7ca public: - GameTime_t m_flUseLockedTime; // 0x7bc - bool m_bSolidBsp; // 0x7c0 + GameTime_t m_flUseLockedTime; // 0x7cc + bool m_bSolidBsp; // 0x7d0 private: - [[maybe_unused]] uint8_t __pad07c1[0x7]; // 0x7c1 + [[maybe_unused]] uint8_t __pad07d1[0x7]; // 0x7d1 public: - CEntityIOOutput m_OnDamaged; // 0x7c8 - CEntityIOOutput m_OnPressed; // 0x7f0 - CEntityIOOutput m_OnUseLocked; // 0x818 - CEntityIOOutput m_OnIn; // 0x840 - CEntityIOOutput m_OnOut; // 0x868 - int32_t m_nState; // 0x890 - CEntityHandle m_hConstraint; // 0x894 - CEntityHandle m_hConstraintParent; // 0x898 - bool m_bForceNpcExclude; // 0x89c -private: - [[maybe_unused]] uint8_t __pad089d[0x3]; // 0x89d -public: - CUtlSymbolLarge m_sGlowEntity; // 0x8a0 - // MNetworkEnable - CHandle< CBaseModelEntity > m_glowEntity; // 0x8a8 - // MNetworkEnable - bool m_usable; // 0x8ac + CEntityIOOutput m_OnDamaged; // 0x7d8 + CEntityIOOutput m_OnPressed; // 0x800 + CEntityIOOutput m_OnUseLocked; // 0x828 + CEntityIOOutput m_OnIn; // 0x850 + CEntityIOOutput m_OnOut; // 0x878 + int32_t m_nState; // 0x8a0 + CEntityHandle m_hConstraint; // 0x8a4 + CEntityHandle m_hConstraintParent; // 0x8a8 + bool m_bForceNpcExclude; // 0x8ac private: [[maybe_unused]] uint8_t __pad08ad[0x3]; // 0x8ad public: + CUtlSymbolLarge m_sGlowEntity; // 0x8b0 // MNetworkEnable - CUtlSymbolLarge m_szDisplayText; // 0x8b0 + CHandle< CBaseModelEntity > m_glowEntity; // 0x8b8 + // MNetworkEnable + bool m_usable; // 0x8bc +private: + [[maybe_unused]] uint8_t __pad08bd[0x3]; // 0x8bd +public: + // MNetworkEnable + CUtlSymbolLarge m_szDisplayText; // 0x8c0 }; // Alignment: 0 -// Size: 0x8b8 +// Size: 0x8c8 class CPhysicalButton : public CBaseButton { public: @@ -12041,7 +10958,7 @@ public: }; // Alignment: 0 -// Size: 0x8b8 +// Size: 0x8c8 class CRotButton : public CBaseButton { public: @@ -12049,88 +10966,86 @@ public: }; // Alignment: 14 -// Size: 0x9b8 +// Size: 0x9c8 class CMomentaryRotButton : public CRotButton { public: - CEntityOutputTemplate< float32 > m_Position; // 0x8b8 - CEntityIOOutput m_OnUnpressed; // 0x8e0 - CEntityIOOutput m_OnFullyOpen; // 0x908 - CEntityIOOutput m_OnFullyClosed; // 0x930 - CEntityIOOutput m_OnReachedPosition; // 0x958 - int32_t m_lastUsed; // 0x980 - QAngle m_start; // 0x984 - QAngle m_end; // 0x990 - float m_IdealYaw; // 0x99c - CUtlSymbolLarge m_sNoise; // 0x9a0 - bool m_bUpdateTarget; // 0x9a8 + CEntityOutputTemplate< float32 > m_Position; // 0x8c8 + CEntityIOOutput m_OnUnpressed; // 0x8f0 + CEntityIOOutput m_OnFullyOpen; // 0x918 + CEntityIOOutput m_OnFullyClosed; // 0x940 + CEntityIOOutput m_OnReachedPosition; // 0x968 + int32_t m_lastUsed; // 0x990 + QAngle m_start; // 0x994 + QAngle m_end; // 0x9a0 + float m_IdealYaw; // 0x9ac + CUtlSymbolLarge m_sNoise; // 0x9b0 + bool m_bUpdateTarget; // 0x9b8 private: - [[maybe_unused]] uint8_t __pad09a9[0x3]; // 0x9a9 + [[maybe_unused]] uint8_t __pad09b9[0x3]; // 0x9b9 public: - int32_t m_direction; // 0x9ac - float m_returnSpeed; // 0x9b0 - float m_flStartPosition; // 0x9b4 + int32_t m_direction; // 0x9bc + float m_returnSpeed; // 0x9c0 + float m_flStartPosition; // 0x9c4 }; // Alignment: 4 -// Size: 0x4b8 +// Size: 0x4c8 class CRagdollMagnet : public CPointEntity { public: - bool m_bDisabled; // 0x4a0 + bool m_bDisabled; // 0x4b0 private: - [[maybe_unused]] uint8_t __pad04a1[0x3]; // 0x4a1 + [[maybe_unused]] uint8_t __pad04b1[0x3]; // 0x4b1 public: - float m_radius; // 0x4a4 - float m_force; // 0x4a8 - Vector m_axis; // 0x4ac + float m_radius; // 0x4b4 + float m_force; // 0x4b8 + Vector m_axis; // 0x4bc }; // Alignment: 27 -// Size: 0x978 +// Size: 0x988 class CBaseDoor : public CBaseToggle { -private: - [[maybe_unused]] uint8_t __pad0770[0x10]; // 0x770 public: - QAngle m_angMoveEntitySpace; // 0x780 - Vector m_vecMoveDirParentSpace; // 0x78c - locksound_t m_ls; // 0x798 - bool m_bForceClosed; // 0x7b8 - bool m_bDoorGroup; // 0x7b9 - bool m_bLocked; // 0x7ba - bool m_bIgnoreDebris; // 0x7bb - FuncDoorSpawnPos_t m_eSpawnPosition; // 0x7bc - float m_flBlockDamage; // 0x7c0 + QAngle m_angMoveEntitySpace; // 0x790 + Vector m_vecMoveDirParentSpace; // 0x79c + locksound_t m_ls; // 0x7a8 + bool m_bForceClosed; // 0x7c8 + bool m_bDoorGroup; // 0x7c9 + bool m_bLocked; // 0x7ca + bool m_bIgnoreDebris; // 0x7cb + FuncDoorSpawnPos_t m_eSpawnPosition; // 0x7cc + float m_flBlockDamage; // 0x7d0 private: - [[maybe_unused]] uint8_t __pad07c4[0x4]; // 0x7c4 + [[maybe_unused]] uint8_t __pad07d4[0x4]; // 0x7d4 public: - CUtlSymbolLarge m_NoiseMoving; // 0x7c8 - CUtlSymbolLarge m_NoiseArrived; // 0x7d0 - CUtlSymbolLarge m_NoiseMovingClosed; // 0x7d8 - CUtlSymbolLarge m_NoiseArrivedClosed; // 0x7e0 - CUtlSymbolLarge m_ChainTarget; // 0x7e8 - CEntityIOOutput m_OnBlockedClosing; // 0x7f0 - CEntityIOOutput m_OnBlockedOpening; // 0x818 - CEntityIOOutput m_OnUnblockedClosing; // 0x840 - CEntityIOOutput m_OnUnblockedOpening; // 0x868 - CEntityIOOutput m_OnFullyClosed; // 0x890 - CEntityIOOutput m_OnFullyOpen; // 0x8b8 - CEntityIOOutput m_OnClose; // 0x8e0 - CEntityIOOutput m_OnOpen; // 0x908 - CEntityIOOutput m_OnLockedUse; // 0x930 - bool m_bLoopMoveSound; // 0x958 + CUtlSymbolLarge m_NoiseMoving; // 0x7d8 + CUtlSymbolLarge m_NoiseArrived; // 0x7e0 + CUtlSymbolLarge m_NoiseMovingClosed; // 0x7e8 + CUtlSymbolLarge m_NoiseArrivedClosed; // 0x7f0 + CUtlSymbolLarge m_ChainTarget; // 0x7f8 + CEntityIOOutput m_OnBlockedClosing; // 0x800 + CEntityIOOutput m_OnBlockedOpening; // 0x828 + CEntityIOOutput m_OnUnblockedClosing; // 0x850 + CEntityIOOutput m_OnUnblockedOpening; // 0x878 + CEntityIOOutput m_OnFullyClosed; // 0x8a0 + CEntityIOOutput m_OnFullyOpen; // 0x8c8 + CEntityIOOutput m_OnClose; // 0x8f0 + CEntityIOOutput m_OnOpen; // 0x918 + CEntityIOOutput m_OnLockedUse; // 0x940 + bool m_bLoopMoveSound; // 0x968 private: - [[maybe_unused]] uint8_t __pad0959[0x17]; // 0x959 + [[maybe_unused]] uint8_t __pad0969[0x17]; // 0x969 public: - bool m_bCreateNavObstacle; // 0x970 - bool m_isChaining; // 0x971 + bool m_bCreateNavObstacle; // 0x980 + bool m_isChaining; // 0x981 // MNetworkEnable - bool m_bIsUsable; // 0x972 + bool m_bIsUsable; // 0x982 }; // Alignment: 0 -// Size: 0x6f0 +// Size: 0x700 class CEntityBlocker : public CBaseModelEntity { public: @@ -12138,657 +11053,676 @@ public: }; // Alignment: 10 -// Size: 0x720 +// Size: 0x730 class CEntityDissolve : public CBaseModelEntity { public: // MNetworkEnable - float m_flFadeInStart; // 0x6f0 + float m_flFadeInStart; // 0x700 // MNetworkEnable - float m_flFadeInLength; // 0x6f4 + float m_flFadeInLength; // 0x704 // MNetworkEnable - float m_flFadeOutModelStart; // 0x6f8 + float m_flFadeOutModelStart; // 0x708 // MNetworkEnable - float m_flFadeOutModelLength; // 0x6fc + float m_flFadeOutModelLength; // 0x70c // MNetworkEnable - float m_flFadeOutStart; // 0x700 + float m_flFadeOutStart; // 0x710 // MNetworkEnable - float m_flFadeOutLength; // 0x704 + float m_flFadeOutLength; // 0x714 // MNetworkEnable - GameTime_t m_flStartTime; // 0x708 + GameTime_t m_flStartTime; // 0x718 // MNetworkEnable - EntityDisolveType_t m_nDissolveType; // 0x70c + EntityDisolveType_t m_nDissolveType; // 0x71c // MNetworkEnable - Vector m_vDissolverOrigin; // 0x710 + Vector m_vDissolverOrigin; // 0x720 // MNetworkEnable - uint32_t m_nMagnitude; // 0x71c + uint32_t m_nMagnitude; // 0x72c }; // Alignment: 30 -// Size: 0x958 +// Size: 0x968 class CEnvProjectedTexture : public CModelPointEntity { public: // MNetworkEnable - CHandle< CBaseEntity > m_hTargetEntity; // 0x6f0 + CHandle< CBaseEntity > m_hTargetEntity; // 0x700 // MNetworkEnable - bool m_bState; // 0x6f4 + bool m_bState; // 0x704 // MNetworkEnable - bool m_bAlwaysUpdate; // 0x6f5 + bool m_bAlwaysUpdate; // 0x705 private: - [[maybe_unused]] uint8_t __pad06f6[0x2]; // 0x6f6 + [[maybe_unused]] uint8_t __pad0706[0x2]; // 0x706 public: // MNetworkEnable - float m_flLightFOV; // 0x6f8 + float m_flLightFOV; // 0x708 // MNetworkEnable - bool m_bEnableShadows; // 0x6fc + bool m_bEnableShadows; // 0x70c // MNetworkEnable - bool m_bSimpleProjection; // 0x6fd + bool m_bSimpleProjection; // 0x70d // MNetworkEnable - bool m_bLightOnlyTarget; // 0x6fe + bool m_bLightOnlyTarget; // 0x70e // MNetworkEnable - bool m_bLightWorld; // 0x6ff + bool m_bLightWorld; // 0x70f // MNetworkEnable - bool m_bCameraSpace; // 0x700 + bool m_bCameraSpace; // 0x710 private: - [[maybe_unused]] uint8_t __pad0701[0x3]; // 0x701 + [[maybe_unused]] uint8_t __pad0711[0x3]; // 0x711 public: // MNetworkEnable - float m_flBrightnessScale; // 0x704 + float m_flBrightnessScale; // 0x714 // MNetworkEnable - Color m_LightColor; // 0x708 + Color m_LightColor; // 0x718 // MNetworkEnable - float m_flIntensity; // 0x70c + float m_flIntensity; // 0x71c // MNetworkEnable - float m_flLinearAttenuation; // 0x710 + float m_flLinearAttenuation; // 0x720 // MNetworkEnable - float m_flQuadraticAttenuation; // 0x714 + float m_flQuadraticAttenuation; // 0x724 // MNetworkEnable - bool m_bVolumetric; // 0x718 + bool m_bVolumetric; // 0x728 private: - [[maybe_unused]] uint8_t __pad0719[0x3]; // 0x719 + [[maybe_unused]] uint8_t __pad0729[0x3]; // 0x729 public: // MNetworkEnable - float m_flNoiseStrength; // 0x71c + float m_flNoiseStrength; // 0x72c // MNetworkEnable - float m_flFlashlightTime; // 0x720 + float m_flFlashlightTime; // 0x730 // MNetworkEnable - uint32_t m_nNumPlanes; // 0x724 + uint32_t m_nNumPlanes; // 0x734 // MNetworkEnable - float m_flPlaneOffset; // 0x728 + float m_flPlaneOffset; // 0x738 // MNetworkEnable - float m_flVolumetricIntensity; // 0x72c + float m_flVolumetricIntensity; // 0x73c // MNetworkEnable - float m_flColorTransitionTime; // 0x730 + float m_flColorTransitionTime; // 0x740 // MNetworkEnable - float m_flAmbient; // 0x734 + float m_flAmbient; // 0x744 // MNetworkEnable - char m_SpotlightTextureName[512]; // 0x738 + char m_SpotlightTextureName[512]; // 0x748 // MNetworkEnable - int32_t m_nSpotlightTextureFrame; // 0x938 + int32_t m_nSpotlightTextureFrame; // 0x948 // MNetworkEnable - uint32_t m_nShadowQuality; // 0x93c + uint32_t m_nShadowQuality; // 0x94c // MNetworkEnable // MNetworkBitCount "16" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "500.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "500" // MNetworkEncodeFlags - float m_flNearZ; // 0x940 + float m_flNearZ; // 0x950 // MNetworkEnable // MNetworkBitCount "18" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "1500.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "1500" // MNetworkEncodeFlags - float m_flFarZ; // 0x944 + float m_flFarZ; // 0x954 // MNetworkEnable - float m_flProjectionSize; // 0x948 + float m_flProjectionSize; // 0x958 // MNetworkEnable - float m_flRotation; // 0x94c + float m_flRotation; // 0x95c // MNetworkEnable - bool m_bFlipHorizontal; // 0x950 + bool m_bFlipHorizontal; // 0x960 }; // Alignment: 9 -// Size: 0x710 +// Size: 0x720 class CEnvDecal : public CBaseModelEntity { public: // MNetworkEnable - CStrongHandle< InfoForResourceTypeIMaterial2 > m_hDecalMaterial; // 0x6f0 + CStrongHandle< InfoForResourceTypeIMaterial2 > m_hDecalMaterial; // 0x700 // MNetworkEnable // MNetworkChangeCallback "OnDecalDimensionsChanged" - float m_flWidth; // 0x6f8 + float m_flWidth; // 0x708 // MNetworkEnable // MNetworkChangeCallback "OnDecalDimensionsChanged" - float m_flHeight; // 0x6fc + float m_flHeight; // 0x70c // MNetworkEnable // MNetworkChangeCallback "OnDecalDimensionsChanged" - float m_flDepth; // 0x700 + float m_flDepth; // 0x710 // MNetworkEnable - uint32_t m_nRenderOrder; // 0x704 + uint32_t m_nRenderOrder; // 0x714 // MNetworkEnable - bool m_bProjectOnWorld; // 0x708 + bool m_bProjectOnWorld; // 0x718 // MNetworkEnable - bool m_bProjectOnCharacters; // 0x709 + bool m_bProjectOnCharacters; // 0x719 // MNetworkEnable - bool m_bProjectOnWater; // 0x70a + bool m_bProjectOnWater; // 0x71a private: - [[maybe_unused]] uint8_t __pad070b[0x1]; // 0x70b + [[maybe_unused]] uint8_t __pad071b[0x1]; // 0x71b public: // MNetworkEnable - float m_flDepthSortBias; // 0x70c + float m_flDepthSortBias; // 0x71c }; // Alignment: 6 -// Size: 0x4e8 +// Size: 0x4f8 class CMessage : public CPointEntity { public: - CUtlSymbolLarge m_iszMessage; // 0x4a0 - float m_MessageVolume; // 0x4a8 - int32_t m_MessageAttenuation; // 0x4ac - float m_Radius; // 0x4b0 + CUtlSymbolLarge m_iszMessage; // 0x4b0 + float m_MessageVolume; // 0x4b8 + int32_t m_MessageAttenuation; // 0x4bc + float m_Radius; // 0x4c0 private: - [[maybe_unused]] uint8_t __pad04b4[0x4]; // 0x4b4 + [[maybe_unused]] uint8_t __pad04c4[0x4]; // 0x4c4 public: - CUtlSymbolLarge m_sNoise; // 0x4b8 - CEntityIOOutput m_OnShowMessage; // 0x4c0 + CUtlSymbolLarge m_sNoise; // 0x4c8 + CEntityIOOutput m_OnShowMessage; // 0x4d0 }; // Alignment: 17 -// Size: 0x660 +// Size: 0x670 class CEnvMicrophone : public CPointEntity { public: - bool m_bDisabled; // 0x4a0 + bool m_bDisabled; // 0x4b0 private: - [[maybe_unused]] uint8_t __pad04a1[0x3]; // 0x4a1 + [[maybe_unused]] uint8_t __pad04b1[0x3]; // 0x4b1 public: - CHandle< CBaseEntity > m_hMeasureTarget; // 0x4a4 - int32_t m_nSoundMask; // 0x4a8 - float m_flSensitivity; // 0x4ac - float m_flSmoothFactor; // 0x4b0 - float m_flMaxRange; // 0x4b4 - CUtlSymbolLarge m_iszSpeakerName; // 0x4b8 - CHandle< CBaseEntity > m_hSpeaker; // 0x4c0 - bool m_bAvoidFeedback; // 0x4c4 + CHandle< CBaseEntity > m_hMeasureTarget; // 0x4b4 + int32_t m_nSoundMask; // 0x4b8 + float m_flSensitivity; // 0x4bc + float m_flSmoothFactor; // 0x4c0 + float m_flMaxRange; // 0x4c4 + CUtlSymbolLarge m_iszSpeakerName; // 0x4c8 + CHandle< CBaseEntity > m_hSpeaker; // 0x4d0 + bool m_bAvoidFeedback; // 0x4d4 private: - [[maybe_unused]] uint8_t __pad04c5[0x3]; // 0x4c5 + [[maybe_unused]] uint8_t __pad04d5[0x3]; // 0x4d5 public: - int32_t m_iSpeakerDSPPreset; // 0x4c8 -private: - [[maybe_unused]] uint8_t __pad04cc[0x4]; // 0x4cc -public: - CUtlSymbolLarge m_iszListenFilter; // 0x4d0 - CHandle< CBaseFilter > m_hListenFilter; // 0x4d8 + int32_t m_iSpeakerDSPPreset; // 0x4d8 private: [[maybe_unused]] uint8_t __pad04dc[0x4]; // 0x4dc public: - CEntityOutputTemplate< float32 > m_SoundLevel; // 0x4e0 - CEntityIOOutput m_OnRoutedSound; // 0x508 - CEntityIOOutput m_OnHeardSound; // 0x530 - char m_szLastSound[256]; // 0x558 - int32_t m_iLastRoutedFrame; // 0x658 + CUtlSymbolLarge m_iszListenFilter; // 0x4e0 + CHandle< CBaseFilter > m_hListenFilter; // 0x4e8 +private: + [[maybe_unused]] uint8_t __pad04ec[0x4]; // 0x4ec +public: + CEntityOutputTemplate< float32 > m_SoundLevel; // 0x4f0 + CEntityIOOutput m_OnRoutedSound; // 0x518 + CEntityIOOutput m_OnHeardSound; // 0x540 + char m_szLastSound[256]; // 0x568 + int32_t m_iLastRoutedFrame; // 0x668 }; // Alignment: 21 -// Size: 0x7b0 +// Size: 0x7c0 class CBreakable : public CBaseModelEntity { -private: - [[maybe_unused]] uint8_t __pad06f0[0x10]; // 0x6f0 public: - Materials m_Material; // 0x700 - CHandle< CBaseEntity > m_hBreaker; // 0x704 - Explosions m_Explosion; // 0x708 + Materials m_Material; // 0x710 + CHandle< CBaseEntity > m_hBreaker; // 0x714 + Explosions m_Explosion; // 0x718 private: - [[maybe_unused]] uint8_t __pad070c[0x4]; // 0x70c + [[maybe_unused]] uint8_t __pad071c[0x4]; // 0x71c public: - CUtlSymbolLarge m_iszSpawnObject; // 0x710 - float m_flPressureDelay; // 0x718 - int32_t m_iMinHealthDmg; // 0x71c - CUtlSymbolLarge m_iszPropData; // 0x720 - float m_impactEnergyScale; // 0x728 - EOverrideBlockLOS_t m_nOverrideBlockLOS; // 0x72c - CEntityIOOutput m_OnBreak; // 0x730 - CEntityOutputTemplate< float32 > m_OnHealthChanged; // 0x758 - float m_flDmgModBullet; // 0x780 - float m_flDmgModClub; // 0x784 - float m_flDmgModExplosive; // 0x788 - float m_flDmgModFire; // 0x78c - CUtlSymbolLarge m_iszPhysicsDamageTableName; // 0x790 - CUtlSymbolLarge m_iszBasePropData; // 0x798 - int32_t m_iInteractions; // 0x7a0 - PerformanceMode_t m_PerformanceMode; // 0x7a4 - CHandle< CBasePlayerPawn > m_hPhysicsAttacker; // 0x7a8 - GameTime_t m_flLastPhysicsInfluenceTime; // 0x7ac + CUtlSymbolLarge m_iszSpawnObject; // 0x720 + float m_flPressureDelay; // 0x728 + int32_t m_iMinHealthDmg; // 0x72c + CUtlSymbolLarge m_iszPropData; // 0x730 + float m_impactEnergyScale; // 0x738 + EOverrideBlockLOS_t m_nOverrideBlockLOS; // 0x73c + CEntityIOOutput m_OnBreak; // 0x740 + CEntityOutputTemplate< float32 > m_OnHealthChanged; // 0x768 + float m_flDmgModBullet; // 0x790 + float m_flDmgModClub; // 0x794 + float m_flDmgModExplosive; // 0x798 + float m_flDmgModFire; // 0x79c + CUtlSymbolLarge m_iszPhysicsDamageTableName; // 0x7a0 + CUtlSymbolLarge m_iszBasePropData; // 0x7a8 + int32_t m_iInteractions; // 0x7b0 + PerformanceMode_t m_PerformanceMode; // 0x7b4 + CHandle< CBasePlayerPawn > m_hPhysicsAttacker; // 0x7b8 + GameTime_t m_flLastPhysicsInfluenceTime; // 0x7bc }; // Alignment: 12 -// Size: 0x820 +// Size: 0x830 class CFuncMoveLinear : public CBaseToggle { public: - MoveLinearAuthoredPos_t m_authoredPosition; // 0x770 - QAngle m_angMoveEntitySpace; // 0x774 - Vector m_vecMoveDirParentSpace; // 0x780 + MoveLinearAuthoredPos_t m_authoredPosition; // 0x780 + QAngle m_angMoveEntitySpace; // 0x784 + Vector m_vecMoveDirParentSpace; // 0x790 private: - [[maybe_unused]] uint8_t __pad078c[0x4]; // 0x78c + [[maybe_unused]] uint8_t __pad079c[0x4]; // 0x79c public: - CUtlSymbolLarge m_soundStart; // 0x790 - CUtlSymbolLarge m_soundStop; // 0x798 - CUtlSymbolLarge m_currentSound; // 0x7a0 - float m_flBlockDamage; // 0x7a8 - float m_flStartPosition; // 0x7ac - float m_flMoveDistance; // 0x7b0 + CUtlSymbolLarge m_soundStart; // 0x7a0 + CUtlSymbolLarge m_soundStop; // 0x7a8 + CUtlSymbolLarge m_currentSound; // 0x7b0 + float m_flBlockDamage; // 0x7b8 + float m_flStartPosition; // 0x7bc + float m_flMoveDistance; // 0x7c0 private: - [[maybe_unused]] uint8_t __pad07b4[0xc]; // 0x7b4 + [[maybe_unused]] uint8_t __pad07c4[0xc]; // 0x7c4 public: - CEntityIOOutput m_OnFullyOpen; // 0x7c0 - CEntityIOOutput m_OnFullyClosed; // 0x7e8 - bool m_bCreateNavObstacle; // 0x810 + CEntityIOOutput m_OnFullyOpen; // 0x7d0 + CEntityIOOutput m_OnFullyClosed; // 0x7f8 + bool m_bCreateNavObstacle; // 0x820 }; // Alignment: 14 -// Size: 0x758 +// Size: 0x768 class CFuncRotating : public CBaseModelEntity { public: - QAngle m_vecMoveAng; // 0x6f0 - float m_flFanFriction; // 0x6fc - float m_flAttenuation; // 0x700 - float m_flVolume; // 0x704 - float m_flTargetSpeed; // 0x708 - float m_flMaxSpeed; // 0x70c - float m_flBlockDamage; // 0x710 - float m_flTimeScale; // 0x714 - CUtlSymbolLarge m_NoiseRunning; // 0x718 - bool m_bReversed; // 0x720 + QAngle m_vecMoveAng; // 0x700 + float m_flFanFriction; // 0x70c + float m_flAttenuation; // 0x710 + float m_flVolume; // 0x714 + float m_flTargetSpeed; // 0x718 + float m_flMaxSpeed; // 0x71c + float m_flBlockDamage; // 0x720 + float m_flTimeScale; // 0x724 + CUtlSymbolLarge m_NoiseRunning; // 0x728 + bool m_bReversed; // 0x730 private: - [[maybe_unused]] uint8_t __pad0721[0xb]; // 0x721 + [[maybe_unused]] uint8_t __pad0731[0xb]; // 0x731 public: - QAngle m_angStart; // 0x72c - bool m_bStopAtStartPos; // 0x738 + QAngle m_angStart; // 0x73c + bool m_bStopAtStartPos; // 0x748 private: - [[maybe_unused]] uint8_t __pad0739[0x3]; // 0x739 + [[maybe_unused]] uint8_t __pad0749[0x3]; // 0x749 public: - Vector m_vecClientOrigin; // 0x73c - QAngle m_vecClientAngles; // 0x748 + Vector m_vecClientOrigin; // 0x74c + QAngle m_vecClientAngles; // 0x758 }; // Alignment: 1 -// Size: 0x6f8 +// Size: 0x708 class CItemGenericTriggerHelper : public CBaseModelEntity { public: - CHandle< CItemGeneric > m_hParentItem; // 0x6f0 + CHandle< CItemGeneric > m_hParentItem; // 0x700 }; // Alignment: 1 -// Size: 0x6f8 +// Size: 0x708 +class CRuleEntity : public CBaseModelEntity +{ +public: + CUtlSymbolLarge m_iszMaster; // 0x700 +}; + +// Alignment: 1 +// Size: 0x710 +class CRulePointEntity : public CRuleEntity +{ +public: + int32_t m_Score; // 0x708 +}; + +// Alignment: 2 +// Size: 0x890 +class CGamePlayerEquip : public CRulePointEntity +{ +public: + CUtlSymbolLarge m_weaponNames[32]; // 0x710 + int32_t m_weaponCount[32]; // 0x810 +}; + +// Alignment: 1 +// Size: 0x708 class CMarkupVolume : public CBaseModelEntity { public: - bool m_bEnabled; // 0x6f0 + bool m_bEnabled; // 0x700 }; // Alignment: 5 -// Size: 0x730 +// Size: 0x740 class CMarkupVolumeTagged : public CMarkupVolume { -private: - [[maybe_unused]] uint8_t __pad06f8[0x30]; // 0x6f8 public: - bool m_bIsGroup; // 0x728 - bool m_bGroupByPrefab; // 0x729 - bool m_bGroupByVolume; // 0x72a - bool m_bGroupOtherGroups; // 0x72b - bool m_bIsInGroup; // 0x72c + bool m_bIsGroup; // 0x738 + bool m_bGroupByPrefab; // 0x739 + bool m_bGroupByVolume; // 0x73a + bool m_bGroupOtherGroups; // 0x73b + bool m_bIsInGroup; // 0x73c }; // Alignment: 3 -// Size: 0x748 +// Size: 0x758 class CMarkupVolumeWithRef : public CMarkupVolumeTagged { public: - bool m_bUseRef; // 0x730 + bool m_bUseRef; // 0x740 private: - [[maybe_unused]] uint8_t __pad0731[0x3]; // 0x731 + [[maybe_unused]] uint8_t __pad0741[0x3]; // 0x741 public: - Vector m_vRefPos; // 0x734 - float m_flRefDot; // 0x740 + Vector m_vRefPos; // 0x744 + float m_flRefDot; // 0x750 }; // Alignment: 6 -// Size: 0x710 +// Size: 0x720 class CFuncBrush : public CBaseModelEntity { public: - BrushSolidities_e m_iSolidity; // 0x6f0 - int32_t m_iDisabled; // 0x6f4 - bool m_bSolidBsp; // 0x6f8 + BrushSolidities_e m_iSolidity; // 0x700 + int32_t m_iDisabled; // 0x704 + bool m_bSolidBsp; // 0x708 private: - [[maybe_unused]] uint8_t __pad06f9[0x7]; // 0x6f9 + [[maybe_unused]] uint8_t __pad0709[0x7]; // 0x709 public: - CUtlSymbolLarge m_iszExcludedClass; // 0x700 - bool m_bInvertExclusion; // 0x708 - bool m_bScriptedMovement; // 0x709 + CUtlSymbolLarge m_iszExcludedClass; // 0x710 + bool m_bInvertExclusion; // 0x718 + bool m_bScriptedMovement; // 0x719 }; // Alignment: 9 -// Size: 0x4f8 +// Size: 0x508 class CPathTrack : public CPointEntity { public: - CPathTrack* m_pnext; // 0x4a0 - CPathTrack* m_pprevious; // 0x4a8 - CPathTrack* m_paltpath; // 0x4b0 - float m_flRadius; // 0x4b8 - float m_length; // 0x4bc - CUtlSymbolLarge m_altName; // 0x4c0 - int32_t m_nIterVal; // 0x4c8 - TrackOrientationType_t m_eOrientationType; // 0x4cc - CEntityIOOutput m_OnPass; // 0x4d0 - - // Static fields: + CPathTrack* m_pnext; // 0x4b0 + CPathTrack* m_pprevious; // 0x4b8 + CPathTrack* m_paltpath; // 0x4c0 + float m_flRadius; // 0x4c8 + float m_length; // 0x4cc + CUtlSymbolLarge m_altName; // 0x4d0 + int32_t m_nIterVal; // 0x4d8 + TrackOrientationType_t m_eOrientationType; // 0x4dc + CEntityIOOutput m_OnPass; // 0x4e0 static int32_t &Get_s_nCurrIterVal(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CPathTrack")->m_static_fields[0]->m_instance);}; static bool &Get_s_bIsIterating(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CPathTrack")->m_static_fields[1]->m_instance);}; }; // Alignment: 15 -// Size: 0x8c0 +// Size: 0x8d0 class CPhysBox : public CBreakable { public: - int32_t m_damageType; // 0x7b0 - float m_massScale; // 0x7b4 - int32_t m_damageToEnableMotion; // 0x7b8 - float m_flForceToEnableMotion; // 0x7bc - QAngle m_angPreferredCarryAngles; // 0x7c0 - bool m_bNotSolidToWorld; // 0x7cc - bool m_bEnableUseOutput; // 0x7cd + int32_t m_damageType; // 0x7c0 + float m_massScale; // 0x7c4 + int32_t m_damageToEnableMotion; // 0x7c8 + float m_flForceToEnableMotion; // 0x7cc + QAngle m_angPreferredCarryAngles; // 0x7d0 + bool m_bNotSolidToWorld; // 0x7dc + bool m_bEnableUseOutput; // 0x7dd private: - [[maybe_unused]] uint8_t __pad07ce[0x2]; // 0x7ce + [[maybe_unused]] uint8_t __pad07de[0x2]; // 0x7de public: - int32_t m_iExploitableByPlayer; // 0x7d0 - float m_flTouchOutputPerEntityDelay; // 0x7d4 - CEntityIOOutput m_OnDamaged; // 0x7d8 - CEntityIOOutput m_OnAwakened; // 0x800 - CEntityIOOutput m_OnMotionEnabled; // 0x828 - CEntityIOOutput m_OnPlayerUse; // 0x850 - CEntityIOOutput m_OnStartTouch; // 0x878 - CHandle< CBasePlayerPawn > m_hCarryingPlayer; // 0x8a0 + int32_t m_iExploitableByPlayer; // 0x7e0 + float m_flTouchOutputPerEntityDelay; // 0x7e4 + CEntityIOOutput m_OnDamaged; // 0x7e8 + CEntityIOOutput m_OnAwakened; // 0x810 + CEntityIOOutput m_OnMotionEnabled; // 0x838 + CEntityIOOutput m_OnPlayerUse; // 0x860 + CEntityIOOutput m_OnStartTouch; // 0x888 + CHandle< CBasePlayerPawn > m_hCarryingPlayer; // 0x8b0 }; // Alignment: 9 -// Size: 0x4f0 +// Size: 0x500 class CPhysExplosion : public CPointEntity { public: - bool m_bExplodeOnSpawn; // 0x4a0 + bool m_bExplodeOnSpawn; // 0x4b0 private: - [[maybe_unused]] uint8_t __pad04a1[0x3]; // 0x4a1 + [[maybe_unused]] uint8_t __pad04b1[0x3]; // 0x4b1 public: - float m_flMagnitude; // 0x4a4 - float m_flDamage; // 0x4a8 - float m_radius; // 0x4ac - CUtlSymbolLarge m_targetEntityName; // 0x4b0 - float m_flInnerRadius; // 0x4b8 - float m_flPushScale; // 0x4bc - bool m_bConvertToDebrisWhenPossible; // 0x4c0 + float m_flMagnitude; // 0x4b4 + float m_flDamage; // 0x4b8 + float m_radius; // 0x4bc + CUtlSymbolLarge m_targetEntityName; // 0x4c0 + float m_flInnerRadius; // 0x4c8 + float m_flPushScale; // 0x4cc + bool m_bConvertToDebrisWhenPossible; // 0x4d0 private: - [[maybe_unused]] uint8_t __pad04c1[0x7]; // 0x4c1 + [[maybe_unused]] uint8_t __pad04d1[0x7]; // 0x4d1 public: - CEntityIOOutput m_OnPushedPlayer; // 0x4c8 + CEntityIOOutput m_OnPushedPlayer; // 0x4d8 }; // Alignment: 3 -// Size: 0x4b0 +// Size: 0x4c0 class CPhysImpact : public CPointEntity { public: - float m_damage; // 0x4a0 - float m_distance; // 0x4a4 - CUtlSymbolLarge m_directionEntityName; // 0x4a8 + float m_damage; // 0x4b0 + float m_distance; // 0x4b4 + CUtlSymbolLarge m_directionEntityName; // 0x4b8 }; // Alignment: 21 -// Size: 0x748 +// Size: 0x758 class CRopeKeyframe : public CBaseModelEntity { -private: - [[maybe_unused]] uint8_t __pad06f0[0x8]; // 0x6f0 public: // MNetworkEnable - uint16_t m_RopeFlags; // 0x6f8 + uint16_t m_RopeFlags; // 0x708 private: - [[maybe_unused]] uint8_t __pad06fa[0x6]; // 0x6fa + [[maybe_unused]] uint8_t __pad070a[0x6]; // 0x70a public: - CUtlSymbolLarge m_iNextLinkName; // 0x700 + CUtlSymbolLarge m_iNextLinkName; // 0x710 // MNetworkEnable - int16_t m_Slack; // 0x708 + int16_t m_Slack; // 0x718 private: - [[maybe_unused]] uint8_t __pad070a[0x2]; // 0x70a + [[maybe_unused]] uint8_t __pad071a[0x2]; // 0x71a public: // MNetworkEnable - float m_Width; // 0x70c + float m_Width; // 0x71c // MNetworkEnable // MNetworkBitCount "10" - // MNetworkMinValue "0.100000" - // MNetworkMaxValue "10.000000" - float m_TextureScale; // 0x710 + // MNetworkMinValue "0.1" + // MNetworkMaxValue "10" + float m_TextureScale; // 0x720 // MNetworkEnable - uint8_t m_nSegments; // 0x714 + uint8_t m_nSegments; // 0x724 // MNetworkEnable - bool m_bConstrainBetweenEndpoints; // 0x715 + bool m_bConstrainBetweenEndpoints; // 0x725 private: - [[maybe_unused]] uint8_t __pad0716[0x2]; // 0x716 + [[maybe_unused]] uint8_t __pad0726[0x2]; // 0x726 public: - CUtlSymbolLarge m_strRopeMaterialModel; // 0x718 + CUtlSymbolLarge m_strRopeMaterialModel; // 0x728 // MNetworkEnable - CStrongHandle< InfoForResourceTypeIMaterial2 > m_iRopeMaterialModelIndex; // 0x720 + CStrongHandle< InfoForResourceTypeIMaterial2 > m_iRopeMaterialModelIndex; // 0x730 // MNetworkEnable - uint8_t m_Subdiv; // 0x728 + uint8_t m_Subdiv; // 0x738 // MNetworkEnable - uint8_t m_nChangeCount; // 0x729 + uint8_t m_nChangeCount; // 0x739 // MNetworkEnable - int16_t m_RopeLength; // 0x72a + int16_t m_RopeLength; // 0x73a // MNetworkEnable - uint8_t m_fLockedPoints; // 0x72c - bool m_bCreatedFromMapFile; // 0x72d + uint8_t m_fLockedPoints; // 0x73c + bool m_bCreatedFromMapFile; // 0x73d private: - [[maybe_unused]] uint8_t __pad072e[0x2]; // 0x72e + [[maybe_unused]] uint8_t __pad073e[0x2]; // 0x73e public: // MNetworkEnable - float m_flScrollSpeed; // 0x730 - bool m_bStartPointValid; // 0x734 - bool m_bEndPointValid; // 0x735 + float m_flScrollSpeed; // 0x740 + bool m_bStartPointValid; // 0x744 + bool m_bEndPointValid; // 0x745 private: - [[maybe_unused]] uint8_t __pad0736[0x2]; // 0x736 + [[maybe_unused]] uint8_t __pad0746[0x2]; // 0x746 public: // MNetworkEnable - CHandle< CBaseEntity > m_hStartPoint; // 0x738 + CHandle< CBaseEntity > m_hStartPoint; // 0x748 // MNetworkEnable - CHandle< CBaseEntity > m_hEndPoint; // 0x73c + CHandle< CBaseEntity > m_hEndPoint; // 0x74c // MNetworkEnable - AttachmentHandle_t m_iStartAttachment; // 0x740 + AttachmentHandle_t m_iStartAttachment; // 0x750 // MNetworkEnable - AttachmentHandle_t m_iEndAttachment; // 0x741 + AttachmentHandle_t m_iEndAttachment; // 0x751 }; // Alignment: 4 -// Size: 0x1eb0 +// Size: 0x1ec0 class CSoundEnt : public CPointEntity { public: - int32_t m_iFreeSound; // 0x4a0 - int32_t m_iActiveSound; // 0x4a4 - int32_t m_cLastActiveSounds; // 0x4a8 - CSound m_SoundPool[128]; // 0x4ac + int32_t m_iFreeSound; // 0x4b0 + int32_t m_iActiveSound; // 0x4b4 + int32_t m_cLastActiveSounds; // 0x4b8 + CSound m_SoundPool[128]; // 0x4bc }; // Alignment: 4 -// Size: 0x710 +// Size: 0x720 class CSpotlightEnd : public CBaseModelEntity { public: // MNetworkEnable - float m_flLightScale; // 0x6f0 + float m_flLightScale; // 0x700 // MNetworkEnable - float m_Radius; // 0x6f4 - Vector m_vSpotlightDir; // 0x6f8 - Vector m_vSpotlightOrg; // 0x704 + float m_Radius; // 0x704 + Vector m_vSpotlightDir; // 0x708 + Vector m_vSpotlightOrg; // 0x714 }; -// Alignment: 36 -// Size: 0x828 +// Alignment: 38 +// Size: 0x850 class CFuncTrackTrain : public CBaseModelEntity { public: - CHandle< CPathTrack > m_ppath; // 0x6f0 - float m_length; // 0x6f4 - Vector m_controlMins; // 0x6f8 - Vector m_controlMaxs; // 0x704 - Vector m_lastBlockPos; // 0x710 - int32_t m_lastBlockTick; // 0x71c - float m_flVolume; // 0x720 - float m_flBank; // 0x724 - float m_oldSpeed; // 0x728 - float m_flBlockDamage; // 0x72c - float m_height; // 0x730 - float m_maxSpeed; // 0x734 - float m_dir; // 0x738 + CHandle< CPathTrack > m_ppath; // 0x700 + float m_length; // 0x704 + Vector m_vPosPrev; // 0x708 + QAngle m_angPrev; // 0x714 + Vector m_controlMins; // 0x720 + Vector m_controlMaxs; // 0x72c + Vector m_lastBlockPos; // 0x738 + int32_t m_lastBlockTick; // 0x744 + float m_flVolume; // 0x748 + float m_flBank; // 0x74c + float m_oldSpeed; // 0x750 + float m_flBlockDamage; // 0x754 + float m_height; // 0x758 + float m_maxSpeed; // 0x75c + float m_dir; // 0x760 private: - [[maybe_unused]] uint8_t __pad073c[0x4]; // 0x73c + [[maybe_unused]] uint8_t __pad0764[0x4]; // 0x764 public: - CUtlSymbolLarge m_iszSoundMove; // 0x740 - CUtlSymbolLarge m_iszSoundMovePing; // 0x748 - CUtlSymbolLarge m_iszSoundStart; // 0x750 - CUtlSymbolLarge m_iszSoundStop; // 0x758 - CUtlSymbolLarge m_strPathTarget; // 0x760 - float m_flMoveSoundMinDuration; // 0x768 - float m_flMoveSoundMaxDuration; // 0x76c - GameTime_t m_flNextMoveSoundTime; // 0x770 - float m_flMoveSoundMinPitch; // 0x774 - float m_flMoveSoundMaxPitch; // 0x778 - TrainOrientationType_t m_eOrientationType; // 0x77c - TrainVelocityType_t m_eVelocityType; // 0x780 + CUtlSymbolLarge m_iszSoundMove; // 0x768 + CUtlSymbolLarge m_iszSoundMovePing; // 0x770 + CUtlSymbolLarge m_iszSoundStart; // 0x778 + CUtlSymbolLarge m_iszSoundStop; // 0x780 + CUtlSymbolLarge m_strPathTarget; // 0x788 + float m_flMoveSoundMinDuration; // 0x790 + float m_flMoveSoundMaxDuration; // 0x794 + GameTime_t m_flNextMoveSoundTime; // 0x798 + float m_flMoveSoundMinPitch; // 0x79c + float m_flMoveSoundMaxPitch; // 0x7a0 + TrainOrientationType_t m_eOrientationType; // 0x7a4 + TrainVelocityType_t m_eVelocityType; // 0x7a8 private: - [[maybe_unused]] uint8_t __pad0784[0xc]; // 0x784 + [[maybe_unused]] uint8_t __pad07ac[0xc]; // 0x7ac public: - CEntityIOOutput m_OnStart; // 0x790 - CEntityIOOutput m_OnNext; // 0x7b8 - CEntityIOOutput m_OnArrivedAtDestinationNode; // 0x7e0 - bool m_bManualSpeedChanges; // 0x808 + CEntityIOOutput m_OnStart; // 0x7b8 + CEntityIOOutput m_OnNext; // 0x7e0 + CEntityIOOutput m_OnArrivedAtDestinationNode; // 0x808 + bool m_bManualSpeedChanges; // 0x830 private: - [[maybe_unused]] uint8_t __pad0809[0x3]; // 0x809 + [[maybe_unused]] uint8_t __pad0831[0x3]; // 0x831 public: - float m_flDesiredSpeed; // 0x80c - GameTime_t m_flSpeedChangeTime; // 0x810 - float m_flAccelSpeed; // 0x814 - float m_flDecelSpeed; // 0x818 - bool m_bAccelToSpeed; // 0x81c + float m_flDesiredSpeed; // 0x834 + GameTime_t m_flSpeedChangeTime; // 0x838 + float m_flAccelSpeed; // 0x83c + float m_flDecelSpeed; // 0x840 + bool m_bAccelToSpeed; // 0x844 private: - [[maybe_unused]] uint8_t __pad081d[0x3]; // 0x81d + [[maybe_unused]] uint8_t __pad0845[0x3]; // 0x845 public: - float m_flTimeScale; // 0x820 - GameTime_t m_flNextMPSoundTime; // 0x824 + float m_flTimeScale; // 0x848 + GameTime_t m_flNextMPSoundTime; // 0x84c }; // Alignment: 11 -// Size: 0x898 +// Size: 0x8a8 class CBaseTrigger : public CBaseToggle { public: // MNetworkEnable - bool m_bDisabled; // 0x770 + bool m_bDisabled; // 0x780 private: - [[maybe_unused]] uint8_t __pad0771[0x7]; // 0x771 + [[maybe_unused]] uint8_t __pad0781[0x7]; // 0x781 public: - CUtlSymbolLarge m_iFilterName; // 0x778 - CHandle< CBaseFilter > m_hFilter; // 0x780 + CUtlSymbolLarge m_iFilterName; // 0x788 + CHandle< CBaseFilter > m_hFilter; // 0x790 private: - [[maybe_unused]] uint8_t __pad0784[0x4]; // 0x784 + [[maybe_unused]] uint8_t __pad0794[0x4]; // 0x794 public: - CEntityIOOutput m_OnStartTouch; // 0x788 - CEntityIOOutput m_OnStartTouchAll; // 0x7b0 - CEntityIOOutput m_OnEndTouch; // 0x7d8 - CEntityIOOutput m_OnEndTouchAll; // 0x800 - CEntityIOOutput m_OnTouching; // 0x828 - CEntityIOOutput m_OnNotTouching; // 0x850 - CUtlVector< CHandle< CBaseEntity > > m_hTouchingEntities; // 0x878 + CEntityIOOutput m_OnStartTouch; // 0x798 + CEntityIOOutput m_OnStartTouchAll; // 0x7c0 + CEntityIOOutput m_OnEndTouch; // 0x7e8 + CEntityIOOutput m_OnEndTouchAll; // 0x810 + CEntityIOOutput m_OnTouching; // 0x838 + CEntityIOOutput m_OnNotTouching; // 0x860 + CUtlVector< CHandle< CBaseEntity > > m_hTouchingEntities; // 0x888 // MNetworkEnable - bool m_bClientSidePredicted; // 0x890 + bool m_bClientSidePredicted; // 0x8a0 }; // Alignment: 1 -// Size: 0x8c0 +// Size: 0x8d0 class CTriggerMultiple : public CBaseTrigger { public: - CEntityIOOutput m_OnTrigger; // 0x898 + CEntityIOOutput m_OnTrigger; // 0x8a8 }; // Alignment: 15 -// Size: 0xc00 +// Size: 0xc10 class CTriggerSndSosOpvar : public CBaseTrigger { public: - CUtlVector< CHandle< CBaseEntity > > m_hTouchingPlayers; // 0x898 - Vector m_flPosition; // 0x8b0 - float m_flCenterSize; // 0x8bc - float m_flMinVal; // 0x8c0 - float m_flMaxVal; // 0x8c4 - float m_flWait; // 0x8c8 + CUtlVector< CHandle< CBaseEntity > > m_hTouchingPlayers; // 0x8a8 + Vector m_flPosition; // 0x8c0 + float m_flCenterSize; // 0x8cc + float m_flMinVal; // 0x8d0 + float m_flMaxVal; // 0x8d4 + float m_flWait; // 0x8d8 private: - [[maybe_unused]] uint8_t __pad08cc[0x4]; // 0x8cc + [[maybe_unused]] uint8_t __pad08dc[0x4]; // 0x8dc public: - CUtlSymbolLarge m_opvarName; // 0x8d0 - CUtlSymbolLarge m_stackName; // 0x8d8 - CUtlSymbolLarge m_operatorName; // 0x8e0 - bool m_bVolIs2D; // 0x8e8 - char m_opvarNameChar[256]; // 0x8e9 - char m_stackNameChar[256]; // 0x9e9 - char m_operatorNameChar[256]; // 0xae9 + CUtlSymbolLarge m_opvarName; // 0x8e0 + CUtlSymbolLarge m_stackName; // 0x8e8 + CUtlSymbolLarge m_operatorName; // 0x8f0 + bool m_bVolIs2D; // 0x8f8 + char m_opvarNameChar[256]; // 0x8f9 + char m_stackNameChar[256]; // 0x9f9 + char m_operatorNameChar[256]; // 0xaf9 private: - [[maybe_unused]] uint8_t __pad0be9[0x3]; // 0xbe9 + [[maybe_unused]] uint8_t __pad0bf9[0x3]; // 0xbf9 public: - Vector m_VecNormPos; // 0xbec - float m_flNormCenterSize; // 0xbf8 + Vector m_VecNormPos; // 0xbfc + float m_flNormCenterSize; // 0xc08 }; // Alignment: 14 -// Size: 0x938 +// Size: 0x948 class CTriggerHurt : public CBaseTrigger { public: - float m_flOriginalDamage; // 0x898 - float m_flDamage; // 0x89c - float m_flDamageCap; // 0x8a0 - GameTime_t m_flLastDmgTime; // 0x8a4 - float m_flForgivenessDelay; // 0x8a8 - int32_t m_bitsDamageInflict; // 0x8ac - int32_t m_damageModel; // 0x8b0 - bool m_bNoDmgForce; // 0x8b4 -private: - [[maybe_unused]] uint8_t __pad08b5[0x3]; // 0x8b5 -public: - Vector m_vDamageForce; // 0x8b8 - bool m_thinkAlways; // 0x8c4 + float m_flOriginalDamage; // 0x8a8 + float m_flDamage; // 0x8ac + float m_flDamageCap; // 0x8b0 + GameTime_t m_flLastDmgTime; // 0x8b4 + float m_flForgivenessDelay; // 0x8b8 + int32_t m_bitsDamageInflict; // 0x8bc + int32_t m_damageModel; // 0x8c0 + bool m_bNoDmgForce; // 0x8c4 private: [[maybe_unused]] uint8_t __pad08c5[0x3]; // 0x8c5 public: - float m_hurtThinkPeriod; // 0x8c8 + Vector m_vDamageForce; // 0x8c8 + bool m_thinkAlways; // 0x8d4 private: - [[maybe_unused]] uint8_t __pad08cc[0x4]; // 0x8cc + [[maybe_unused]] uint8_t __pad08d5[0x3]; // 0x8d5 public: - CEntityIOOutput m_OnHurt; // 0x8d0 - CEntityIOOutput m_OnHurtPlayer; // 0x8f8 - CUtlVector< CHandle< CBaseEntity > > m_hurtEntities; // 0x920 + float m_hurtThinkPeriod; // 0x8d8 +private: + [[maybe_unused]] uint8_t __pad08dc[0x4]; // 0x8dc +public: + CEntityIOOutput m_OnHurt; // 0x8e0 + CEntityIOOutput m_OnHurtPlayer; // 0x908 + CUtlVector< CHandle< CBaseEntity > > m_hurtEntities; // 0x930 }; // Alignment: 0 -// Size: 0x938 +// Size: 0x948 class CTriggerHurtGhost : public CTriggerHurt { public: @@ -12796,7 +11730,7 @@ public: }; // Alignment: 0 -// Size: 0x8a0 +// Size: 0x8b0 class CTriggerCallback : public CBaseTrigger { public: @@ -12804,90 +11738,80 @@ public: }; // Alignment: 12 -// Size: 0x938 +// Size: 0x948 class CTriggerLerpObject : public CBaseTrigger { public: - CUtlSymbolLarge m_iszLerpTarget; // 0x898 - CHandle< CBaseEntity > m_hLerpTarget; // 0x8a0 + CUtlSymbolLarge m_iszLerpTarget; // 0x8a8 + CHandle< CBaseEntity > m_hLerpTarget; // 0x8b0 private: - [[maybe_unused]] uint8_t __pad08a4[0x4]; // 0x8a4 + [[maybe_unused]] uint8_t __pad08b4[0x4]; // 0x8b4 public: - CUtlSymbolLarge m_iszLerpTargetAttachment; // 0x8a8 - AttachmentHandle_t m_hLerpTargetAttachment; // 0x8b0 + CUtlSymbolLarge m_iszLerpTargetAttachment; // 0x8b8 + AttachmentHandle_t m_hLerpTargetAttachment; // 0x8c0 private: - [[maybe_unused]] uint8_t __pad08b1[0x3]; // 0x8b1 + [[maybe_unused]] uint8_t __pad08c1[0x3]; // 0x8c1 public: - float m_flLerpDuration; // 0x8b4 - bool m_bLerpRestoreMoveType; // 0x8b8 - bool m_bSingleLerpObject; // 0x8b9 + float m_flLerpDuration; // 0x8c4 + bool m_bLerpRestoreMoveType; // 0x8c8 + bool m_bSingleLerpObject; // 0x8c9 private: - [[maybe_unused]] uint8_t __pad08ba[0x6]; // 0x8ba + [[maybe_unused]] uint8_t __pad08ca[0x6]; // 0x8ca public: - CUtlVector< lerpdata_t > m_vecLerpingObjects; // 0x8c0 - CUtlSymbolLarge m_iszLerpEffect; // 0x8d8 - CUtlSymbolLarge m_iszLerpSound; // 0x8e0 - CEntityIOOutput m_OnLerpStarted; // 0x8e8 - CEntityIOOutput m_OnLerpFinished; // 0x910 + CUtlVector< lerpdata_t > m_vecLerpingObjects; // 0x8d0 + CUtlSymbolLarge m_iszLerpEffect; // 0x8e8 + CUtlSymbolLarge m_iszLerpSound; // 0x8f0 + CEntityIOOutput m_OnLerpStarted; // 0x8f8 + CEntityIOOutput m_OnLerpFinished; // 0x920 }; // Alignment: 7 -// Size: 0x8d8 +// Size: 0x8e8 class CChangeLevel : public CBaseTrigger { public: - CUtlString m_sMapName; // 0x898 - CUtlString m_sLandmarkName; // 0x8a0 - CEntityIOOutput m_OnChangeLevel; // 0x8a8 - bool m_bTouched; // 0x8d0 - bool m_bNoTouch; // 0x8d1 - bool m_bNewChapter; // 0x8d2 - bool m_bOnChangeLevelFired; // 0x8d3 + CUtlString m_sMapName; // 0x8a8 + CUtlString m_sLandmarkName; // 0x8b0 + CEntityIOOutput m_OnChangeLevel; // 0x8b8 + bool m_bTouched; // 0x8e0 + bool m_bNoTouch; // 0x8e1 + bool m_bNewChapter; // 0x8e2 + bool m_bOnChangeLevelFired; // 0x8e3 }; // Alignment: 3 -// Size: 0x8a8 +// Size: 0x8b8 class CTriggerTeleport : public CBaseTrigger { public: - CUtlSymbolLarge m_iLandmark; // 0x898 - bool m_bUseLandmarkAngles; // 0x8a0 - bool m_bMirrorPlayer; // 0x8a1 + CUtlSymbolLarge m_iLandmark; // 0x8a8 + bool m_bUseLandmarkAngles; // 0x8b0 + bool m_bMirrorPlayer; // 0x8b1 }; // Alignment: 11 -// Size: 0x8e8 +// Size: 0x8f8 class CTriggerFan : public CBaseTrigger { public: - Vector m_vFanOrigin; // 0x898 - Vector m_vFanEnd; // 0x8a4 - Vector m_vNoise; // 0x8b0 - float m_flForce; // 0x8bc - float m_flPlayerForce; // 0x8c0 - float m_flRampTime; // 0x8c4 - bool m_bFalloff; // 0x8c8 - bool m_bPushPlayer; // 0x8c9 - bool m_bRampDown; // 0x8ca - bool m_bAddNoise; // 0x8cb + Vector m_vFanOrigin; // 0x8a8 + Vector m_vFanEnd; // 0x8b4 + Vector m_vNoise; // 0x8c0 + float m_flForce; // 0x8cc + float m_flPlayerForce; // 0x8d0 + float m_flRampTime; // 0x8d4 + bool m_bFalloff; // 0x8d8 + bool m_bPushPlayer; // 0x8d9 + bool m_bRampDown; // 0x8da + bool m_bAddNoise; // 0x8db private: - [[maybe_unused]] uint8_t __pad08cc[0x4]; // 0x8cc + [[maybe_unused]] uint8_t __pad08dc[0x4]; // 0x8dc public: - CountdownTimer m_RampTimer; // 0x8d0 -}; - -// Alignment: 2 -// Size: 0x8e8 -class CTriggerBuoyancy : public CBaseTrigger -{ -public: - CBuoyancyHelper m_BuoyancyHelper; // 0x898 - // MNetworkEnable - float m_flFluidDensity; // 0x8e0 + CountdownTimer m_RampTimer; // 0x8e0 }; // Alignment: 0 -// Size: 0x4a0 +// Size: 0x4b0 class CNavWalkable : public CPointEntity { public: @@ -12895,226 +11819,219 @@ public: }; // Alignment: 2 -// Size: 0x700 +// Size: 0x710 class CFuncNavBlocker : public CBaseModelEntity { public: - bool m_bDisabled; // 0x6f0 + bool m_bDisabled; // 0x700 private: - [[maybe_unused]] uint8_t __pad06f1[0x3]; // 0x6f1 + [[maybe_unused]] uint8_t __pad0701[0x3]; // 0x701 public: - int32_t m_nBlockedTeamNumber; // 0x6f4 + int32_t m_nBlockedTeamNumber; // 0x704 }; // Alignment: 12 -// Size: 0x540 +// Size: 0x550 class CNavLinkAreaEntity : public CPointEntity { public: - float m_flWidth; // 0x4a0 - Vector m_vLocatorOffset; // 0x4a4 - QAngle m_qLocatorAnglesOffset; // 0x4b0 + float m_flWidth; // 0x4b0 + Vector m_vLocatorOffset; // 0x4b4 + QAngle m_qLocatorAnglesOffset; // 0x4c0 private: - [[maybe_unused]] uint8_t __pad04bc[0x4]; // 0x4bc + [[maybe_unused]] uint8_t __pad04cc[0x4]; // 0x4cc public: - CUtlSymbolLarge m_strMovementForward; // 0x4c0 - CUtlSymbolLarge m_strMovementReverse; // 0x4c8 - int32_t m_nNavLinkIdForward; // 0x4d0 - int32_t m_nNavLinkIdReverse; // 0x4d4 - bool m_bEnabled; // 0x4d8 + CUtlSymbolLarge m_strMovementForward; // 0x4d0 + CUtlSymbolLarge m_strMovementReverse; // 0x4d8 + int32_t m_nNavLinkIdForward; // 0x4e0 + int32_t m_nNavLinkIdReverse; // 0x4e4 + bool m_bEnabled; // 0x4e8 private: - [[maybe_unused]] uint8_t __pad04d9[0x7]; // 0x4d9 + [[maybe_unused]] uint8_t __pad04e9[0x7]; // 0x4e9 public: - CUtlSymbolLarge m_strFilterName; // 0x4e0 - CHandle< CBaseFilter > m_hFilter; // 0x4e8 + CUtlSymbolLarge m_strFilterName; // 0x4f0 + CHandle< CBaseFilter > m_hFilter; // 0x4f8 private: - [[maybe_unused]] uint8_t __pad04ec[0x4]; // 0x4ec + [[maybe_unused]] uint8_t __pad04fc[0x4]; // 0x4fc public: - CEntityIOOutput m_OnNavLinkStart; // 0x4f0 - CEntityIOOutput m_OnNavLinkFinish; // 0x518 + CEntityIOOutput m_OnNavLinkStart; // 0x500 + CEntityIOOutput m_OnNavLinkFinish; // 0x528 }; -// Alignment: 3 -// Size: 0x4a8 +// Alignment: 1 +// Size: 0x4b8 class CNavSpaceInfo : public CPointEntity { public: - bool m_bCreateTacticalConnections; // 0x4a0 - bool m_bCreateFlightSpace; // 0x4a1 -private: - [[maybe_unused]] uint8_t __pad04a2[0x2]; // 0x4a2 -public: - float m_flPhysicsOverheadBufferDist; // 0x4a4 + bool m_bCreateFlightSpace; // 0x4b0 }; // Alignment: 24 -// Size: 0x790 +// Size: 0x7a0 class CBeam : public CBaseModelEntity { public: // MNetworkEnable // MNetworkBitCount "10" - // MNetworkMinValue "-25.000000" - // MNetworkMaxValue "25.000000" + // MNetworkMinValue "-25" + // MNetworkMaxValue "25" // MNetworkEncodeFlags - float m_flFrameRate; // 0x6f0 + float m_flFrameRate; // 0x700 // MNetworkEnable - float m_flHDRColorScale; // 0x6f4 - GameTime_t m_flFireTime; // 0x6f8 - float m_flDamage; // 0x6fc + float m_flHDRColorScale; // 0x704 + GameTime_t m_flFireTime; // 0x708 + float m_flDamage; // 0x70c // MNetworkEnable - uint8_t m_nNumBeamEnts; // 0x700 + uint8_t m_nNumBeamEnts; // 0x710 private: - [[maybe_unused]] uint8_t __pad0701[0x7]; // 0x701 + [[maybe_unused]] uint8_t __pad0711[0x7]; // 0x711 public: // MNetworkEnable - CStrongHandle< InfoForResourceTypeIMaterial2 > m_hBaseMaterial; // 0x708 + CStrongHandle< InfoForResourceTypeIMaterial2 > m_hBaseMaterial; // 0x718 // MNetworkEnable - CStrongHandle< InfoForResourceTypeIMaterial2 > m_nHaloIndex; // 0x710 + CStrongHandle< InfoForResourceTypeIMaterial2 > m_nHaloIndex; // 0x720 // MNetworkEnable - BeamType_t m_nBeamType; // 0x718 + BeamType_t m_nBeamType; // 0x728 // MNetworkEnable - uint32_t m_nBeamFlags; // 0x71c + uint32_t m_nBeamFlags; // 0x72c // MNetworkEnable - CHandle< CBaseEntity > m_hAttachEntity[10]; // 0x720 + CHandle< CBaseEntity > m_hAttachEntity[10]; // 0x730 // MNetworkEnable - AttachmentHandle_t m_nAttachIndex[10]; // 0x748 + AttachmentHandle_t m_nAttachIndex[10]; // 0x758 private: - [[maybe_unused]] uint8_t __pad0752[0x2]; // 0x752 + [[maybe_unused]] uint8_t __pad0762[0x2]; // 0x762 public: // MNetworkEnable // MNetworkBitCount "10" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "102.300003" + // MNetworkMinValue "0" + // MNetworkMaxValue "102.3" // MNetworkEncodeFlags - float m_fWidth; // 0x754 + float m_fWidth; // 0x764 // MNetworkEnable // MNetworkBitCount "10" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "102.300003" + // MNetworkMinValue "0" + // MNetworkMaxValue "102.3" // MNetworkEncodeFlags - float m_fEndWidth; // 0x758 + float m_fEndWidth; // 0x768 // MNetworkEnable - float m_fFadeLength; // 0x75c + float m_fFadeLength; // 0x76c // MNetworkEnable - float m_fHaloScale; // 0x760 + float m_fHaloScale; // 0x770 // MNetworkEnable // MNetworkBitCount "8" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "64.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "64" // MNetworkEncodeFlags - float m_fAmplitude; // 0x764 + float m_fAmplitude; // 0x774 // MNetworkEnable // MNetworkBitCount "8" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "256.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "256" // MNetworkEncodeFlags - float m_fStartFrame; // 0x768 + float m_fStartFrame; // 0x778 // MNetworkEnable // MNetworkBitCount "8" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "100.000000" - float m_fSpeed; // 0x76c + // MNetworkMinValue "0" + // MNetworkMaxValue "100" + float m_fSpeed; // 0x77c // MNetworkEnable // MNetworkBitCount "20" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "256.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "256" // MNetworkEncodeFlags // MNetworkPriority "32" - float m_flFrame; // 0x770 + float m_flFrame; // 0x780 // MNetworkEnable - BeamClipStyle_t m_nClipStyle; // 0x774 + BeamClipStyle_t m_nClipStyle; // 0x784 // MNetworkEnable - bool m_bTurnedOff; // 0x778 + bool m_bTurnedOff; // 0x788 private: - [[maybe_unused]] uint8_t __pad0779[0x3]; // 0x779 + [[maybe_unused]] uint8_t __pad0789[0x3]; // 0x789 public: // MNetworkEnable // MNetworkEncoder - Vector m_vecEndPos; // 0x77c - CHandle< CBaseEntity > m_hEndEntity; // 0x788 - int32_t m_nDissolveType; // 0x78c + Vector m_vecEndPos; // 0x78c + CHandle< CBaseEntity > m_hEndEntity; // 0x798 + int32_t m_nDissolveType; // 0x79c }; // Alignment: 12 -// Size: 0x7a0 +// Size: 0x7b0 class CFuncLadder : public CBaseModelEntity { public: // MNetworkEnable // MNetworkEncoder - Vector m_vecLadderDir; // 0x6f0 + Vector m_vecLadderDir; // 0x700 private: - [[maybe_unused]] uint8_t __pad06fc[0x4]; // 0x6fc + [[maybe_unused]] uint8_t __pad070c[0x4]; // 0x70c public: - CUtlVector< CHandle< CInfoLadderDismount > > m_Dismounts; // 0x700 - Vector m_vecLocalTop; // 0x718 + CUtlVector< CHandle< CInfoLadderDismount > > m_Dismounts; // 0x710 + Vector m_vecLocalTop; // 0x728 // MNetworkEnable // MNetworkEncoder - Vector m_vecPlayerMountPositionTop; // 0x724 + Vector m_vecPlayerMountPositionTop; // 0x734 // MNetworkEnable // MNetworkEncoder - Vector m_vecPlayerMountPositionBottom; // 0x730 + Vector m_vecPlayerMountPositionBottom; // 0x740 // MNetworkEnable - float m_flAutoRideSpeed; // 0x73c - bool m_bDisabled; // 0x740 + float m_flAutoRideSpeed; // 0x74c + bool m_bDisabled; // 0x750 // MNetworkEnable - bool m_bFakeLadder; // 0x741 - bool m_bHasSlack; // 0x742 + bool m_bFakeLadder; // 0x751 + bool m_bHasSlack; // 0x752 private: - [[maybe_unused]] uint8_t __pad0743[0x5]; // 0x743 + [[maybe_unused]] uint8_t __pad0753[0x5]; // 0x753 public: - CUtlSymbolLarge m_surfacePropName; // 0x748 - CEntityIOOutput m_OnPlayerGotOnLadder; // 0x750 - CEntityIOOutput m_OnPlayerGotOffLadder; // 0x778 - - // Static fields: + CUtlSymbolLarge m_surfacePropName; // 0x758 + CEntityIOOutput m_OnPlayerGotOnLadder; // 0x760 + CEntityIOOutput m_OnPlayerGotOffLadder; // 0x788 static CUtlVector< CFuncLadder* > &Get_s_Ladders(){return *reinterpret_cast*>(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CFuncLadder")->m_static_fields[0]->m_instance);}; }; // Alignment: 32 -// Size: 0x848 +// Size: 0x858 class CFuncShatterglass : public CBaseModelEntity { public: - CStrongHandle< InfoForResourceTypeIMaterial2 > m_hGlassMaterialDamaged; // 0x6f0 - CStrongHandle< InfoForResourceTypeIMaterial2 > m_hGlassMaterialUndamaged; // 0x6f8 - CStrongHandle< InfoForResourceTypeIMaterial2 > m_hConcreteMaterialEdgeFace; // 0x700 - CStrongHandle< InfoForResourceTypeIMaterial2 > m_hConcreteMaterialEdgeCaps; // 0x708 - CStrongHandle< InfoForResourceTypeIMaterial2 > m_hConcreteMaterialEdgeFins; // 0x710 - matrix3x4_t m_matPanelTransform; // 0x718 - matrix3x4_t m_matPanelTransformWsTemp; // 0x748 - CUtlVector< uint32 > m_vecShatterGlassShards; // 0x778 - Vector2D m_PanelSize; // 0x790 - Vector m_vecPanelNormalWs; // 0x798 - int32_t m_nNumShardsEverCreated; // 0x7a4 - GameTime_t m_flLastShatterSoundEmitTime; // 0x7a8 - GameTime_t m_flLastCleanupTime; // 0x7ac - GameTime_t m_flInitAtTime; // 0x7b0 - float m_flGlassThickness; // 0x7b4 - float m_flSpawnInvulnerability; // 0x7b8 - bool m_bBreakSilent; // 0x7bc - bool m_bBreakShardless; // 0x7bd - bool m_bBroken; // 0x7be - bool m_bHasRateLimitedShards; // 0x7bf - bool m_bGlassNavIgnore; // 0x7c0 - bool m_bGlassInFrame; // 0x7c1 - bool m_bStartBroken; // 0x7c2 - uint8_t m_iInitialDamageType; // 0x7c3 + CStrongHandle< InfoForResourceTypeIMaterial2 > m_hGlassMaterialDamaged; // 0x700 + CStrongHandle< InfoForResourceTypeIMaterial2 > m_hGlassMaterialUndamaged; // 0x708 + CStrongHandle< InfoForResourceTypeIMaterial2 > m_hConcreteMaterialEdgeFace; // 0x710 + CStrongHandle< InfoForResourceTypeIMaterial2 > m_hConcreteMaterialEdgeCaps; // 0x718 + CStrongHandle< InfoForResourceTypeIMaterial2 > m_hConcreteMaterialEdgeFins; // 0x720 + matrix3x4_t m_matPanelTransform; // 0x728 + matrix3x4_t m_matPanelTransformWsTemp; // 0x758 + CUtlVector< uint32 > m_vecShatterGlassShards; // 0x788 + Vector2D m_PanelSize; // 0x7a0 + Vector m_vecPanelNormalWs; // 0x7a8 + int32_t m_nNumShardsEverCreated; // 0x7b4 + GameTime_t m_flLastShatterSoundEmitTime; // 0x7b8 + GameTime_t m_flLastCleanupTime; // 0x7bc + GameTime_t m_flInitAtTime; // 0x7c0 + float m_flGlassThickness; // 0x7c4 + float m_flSpawnInvulnerability; // 0x7c8 + bool m_bBreakSilent; // 0x7cc + bool m_bBreakShardless; // 0x7cd + bool m_bBroken; // 0x7ce + bool m_bHasRateLimitedShards; // 0x7cf + bool m_bGlassNavIgnore; // 0x7d0 + bool m_bGlassInFrame; // 0x7d1 + bool m_bStartBroken; // 0x7d2 + uint8_t m_iInitialDamageType; // 0x7d3 private: - [[maybe_unused]] uint8_t __pad07c4[0x4]; // 0x7c4 + [[maybe_unused]] uint8_t __pad07d4[0x4]; // 0x7d4 public: - CUtlSymbolLarge m_szDamagePositioningEntityName01; // 0x7c8 - CUtlSymbolLarge m_szDamagePositioningEntityName02; // 0x7d0 - CUtlSymbolLarge m_szDamagePositioningEntityName03; // 0x7d8 - CUtlSymbolLarge m_szDamagePositioningEntityName04; // 0x7e0 - CUtlVector< Vector > m_vInitialDamagePositions; // 0x7e8 - CUtlVector< Vector > m_vExtraDamagePositions; // 0x800 - CEntityIOOutput m_OnBroken; // 0x818 + CUtlSymbolLarge m_szDamagePositioningEntityName01; // 0x7d8 + CUtlSymbolLarge m_szDamagePositioningEntityName02; // 0x7e0 + CUtlSymbolLarge m_szDamagePositioningEntityName03; // 0x7e8 + CUtlSymbolLarge m_szDamagePositioningEntityName04; // 0x7f0 + CUtlVector< Vector > m_vInitialDamagePositions; // 0x7f8 + CUtlVector< Vector > m_vExtraDamagePositions; // 0x810 + CEntityIOOutput m_OnBroken; // 0x828 private: - [[maybe_unused]] uint8_t __pad0840[0x1]; // 0x840 + [[maybe_unused]] uint8_t __pad0850[0x1]; // 0x850 public: - uint8_t m_iSurfaceType; // 0x841 + uint8_t m_iSurfaceType; // 0x851 }; // Alignment: 7 @@ -13154,77 +12071,75 @@ public: Vector m_vecLastOrigin; // 0x6c float m_flLastOriginChangeTime; // 0x78 float m_flAwakeTime; // 0x7c - - // Static fields: static uint32_t &Get_s_globalCount(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CRagdoll")->m_static_fields[0]->m_instance);}; }; // Alignment: 23 -// Size: 0x760 +// Size: 0x770 class CSprite : public CBaseModelEntity { public: // MNetworkEnable - CStrongHandle< InfoForResourceTypeIMaterial2 > m_hSpriteMaterial; // 0x6f0 + CStrongHandle< InfoForResourceTypeIMaterial2 > m_hSpriteMaterial; // 0x700 // MNetworkEnable - CHandle< CBaseEntity > m_hAttachedToEntity; // 0x6f8 + CHandle< CBaseEntity > m_hAttachedToEntity; // 0x708 // MNetworkEnable - AttachmentHandle_t m_nAttachment; // 0x6fc + AttachmentHandle_t m_nAttachment; // 0x70c private: - [[maybe_unused]] uint8_t __pad06fd[0x3]; // 0x6fd + [[maybe_unused]] uint8_t __pad070d[0x3]; // 0x70d public: // MNetworkEnable // MNetworkBitCount "8" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "60.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "60" // MNetworkEncodeFlags - float m_flSpriteFramerate; // 0x700 + float m_flSpriteFramerate; // 0x710 // MNetworkEnable // MNetworkBitCount "20" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "256.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "256" // MNetworkEncodeFlags - float m_flFrame; // 0x704 - GameTime_t m_flDieTime; // 0x708 + float m_flFrame; // 0x714 + GameTime_t m_flDieTime; // 0x718 private: - [[maybe_unused]] uint8_t __pad070c[0xc]; // 0x70c + [[maybe_unused]] uint8_t __pad071c[0xc]; // 0x71c public: // MNetworkEnable - uint32_t m_nBrightness; // 0x718 + uint32_t m_nBrightness; // 0x728 // MNetworkEnable - float m_flBrightnessDuration; // 0x71c + float m_flBrightnessDuration; // 0x72c // MNetworkEnable // MNetworkChangeCallback "OnSpriteScaleChanged" - float m_flSpriteScale; // 0x720 + float m_flSpriteScale; // 0x730 // MNetworkEnable - float m_flScaleDuration; // 0x724 + float m_flScaleDuration; // 0x734 // MNetworkEnable - bool m_bWorldSpaceScale; // 0x728 + bool m_bWorldSpaceScale; // 0x738 private: - [[maybe_unused]] uint8_t __pad0729[0x3]; // 0x729 + [[maybe_unused]] uint8_t __pad0739[0x3]; // 0x739 public: // MNetworkEnable // MNetworkBitCount "6" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "64.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "64" // MNetworkEncodeFlags - float m_flGlowProxySize; // 0x72c + float m_flGlowProxySize; // 0x73c // MNetworkEnable - float m_flHDRColorScale; // 0x730 - GameTime_t m_flLastTime; // 0x734 - float m_flMaxFrame; // 0x738 - float m_flStartScale; // 0x73c - float m_flDestScale; // 0x740 - GameTime_t m_flScaleTimeStart; // 0x744 - int32_t m_nStartBrightness; // 0x748 - int32_t m_nDestBrightness; // 0x74c - GameTime_t m_flBrightnessTimeStart; // 0x750 - int32_t m_nSpriteWidth; // 0x754 - int32_t m_nSpriteHeight; // 0x758 + float m_flHDRColorScale; // 0x740 + GameTime_t m_flLastTime; // 0x744 + float m_flMaxFrame; // 0x748 + float m_flStartScale; // 0x74c + float m_flDestScale; // 0x750 + GameTime_t m_flScaleTimeStart; // 0x754 + int32_t m_nStartBrightness; // 0x758 + int32_t m_nDestBrightness; // 0x75c + GameTime_t m_flBrightnessTimeStart; // 0x760 + int32_t m_nSpriteWidth; // 0x764 + int32_t m_nSpriteHeight; // 0x768 }; // Alignment: 0 -// Size: 0x760 +// Size: 0x770 class CSpriteOriented : public CSprite { public: @@ -13232,114 +12147,114 @@ public: }; // Alignment: 14 -// Size: 0x8a0 +// Size: 0x8b0 class CBaseClientUIEntity : public CBaseModelEntity { public: // MNetworkEnable - bool m_bEnabled; // 0x6f0 + bool m_bEnabled; // 0x700 private: - [[maybe_unused]] uint8_t __pad06f1[0x7]; // 0x6f1 + [[maybe_unused]] uint8_t __pad0701[0x7]; // 0x701 public: // MNetworkEnable - CUtlSymbolLarge m_DialogXMLName; // 0x6f8 + CUtlSymbolLarge m_DialogXMLName; // 0x708 // MNetworkEnable - CUtlSymbolLarge m_PanelClassName; // 0x700 + CUtlSymbolLarge m_PanelClassName; // 0x710 // MNetworkEnable - CUtlSymbolLarge m_PanelID; // 0x708 - CEntityIOOutput m_CustomOutput0; // 0x710 - CEntityIOOutput m_CustomOutput1; // 0x738 - CEntityIOOutput m_CustomOutput2; // 0x760 - CEntityIOOutput m_CustomOutput3; // 0x788 - CEntityIOOutput m_CustomOutput4; // 0x7b0 - CEntityIOOutput m_CustomOutput5; // 0x7d8 - CEntityIOOutput m_CustomOutput6; // 0x800 - CEntityIOOutput m_CustomOutput7; // 0x828 - CEntityIOOutput m_CustomOutput8; // 0x850 - CEntityIOOutput m_CustomOutput9; // 0x878 + CUtlSymbolLarge m_PanelID; // 0x718 + CEntityIOOutput m_CustomOutput0; // 0x720 + CEntityIOOutput m_CustomOutput1; // 0x748 + CEntityIOOutput m_CustomOutput2; // 0x770 + CEntityIOOutput m_CustomOutput3; // 0x798 + CEntityIOOutput m_CustomOutput4; // 0x7c0 + CEntityIOOutput m_CustomOutput5; // 0x7e8 + CEntityIOOutput m_CustomOutput6; // 0x810 + CEntityIOOutput m_CustomOutput7; // 0x838 + CEntityIOOutput m_CustomOutput8; // 0x860 + CEntityIOOutput m_CustomOutput9; // 0x888 }; // Alignment: 2 -// Size: 0x8a8 +// Size: 0x8b8 class CPointClientUIDialog : public CBaseClientUIEntity { public: // MNetworkEnable // MNetworkChangeCallback "OnDialogActivatorChanged" - CHandle< CBaseEntity > m_hActivator; // 0x8a0 - bool m_bStartEnabled; // 0x8a4 + CHandle< CBaseEntity > m_hActivator; // 0x8b0 + bool m_bStartEnabled; // 0x8b4 }; // Alignment: 23 -// Size: 0x8f8 +// Size: 0x908 class CPointClientUIWorldPanel : public CBaseClientUIEntity { public: // MNetworkEnable - bool m_bIgnoreInput; // 0x8a0 + bool m_bIgnoreInput; // 0x8b0 // MNetworkEnable - bool m_bLit; // 0x8a1 + bool m_bLit; // 0x8b1 // MNetworkEnable - bool m_bFollowPlayerAcrossTeleport; // 0x8a2 + bool m_bFollowPlayerAcrossTeleport; // 0x8b2 private: - [[maybe_unused]] uint8_t __pad08a3[0x1]; // 0x8a3 + [[maybe_unused]] uint8_t __pad08b3[0x1]; // 0x8b3 public: // MNetworkEnable - float m_flWidth; // 0x8a4 + float m_flWidth; // 0x8b4 // MNetworkEnable - float m_flHeight; // 0x8a8 + float m_flHeight; // 0x8b8 // MNetworkEnable - float m_flDPI; // 0x8ac + float m_flDPI; // 0x8bc // MNetworkEnable - float m_flInteractDistance; // 0x8b0 + float m_flInteractDistance; // 0x8c0 // MNetworkEnable - float m_flDepthOffset; // 0x8b4 + float m_flDepthOffset; // 0x8c4 // MNetworkEnable - uint32_t m_unOwnerContext; // 0x8b8 + uint32_t m_unOwnerContext; // 0x8c8 // MNetworkEnable - uint32_t m_unHorizontalAlign; // 0x8bc + uint32_t m_unHorizontalAlign; // 0x8cc // MNetworkEnable - uint32_t m_unVerticalAlign; // 0x8c0 + uint32_t m_unVerticalAlign; // 0x8d0 // MNetworkEnable - uint32_t m_unOrientation; // 0x8c4 + uint32_t m_unOrientation; // 0x8d4 // MNetworkEnable - bool m_bAllowInteractionFromAllSceneWorlds; // 0x8c8 + bool m_bAllowInteractionFromAllSceneWorlds; // 0x8d8 private: - [[maybe_unused]] uint8_t __pad08c9[0x7]; // 0x8c9 + [[maybe_unused]] uint8_t __pad08d9[0x7]; // 0x8d9 public: // MNetworkEnable - CNetworkUtlVectorBase< CUtlSymbolLarge > m_vecCSSClasses; // 0x8d0 + CNetworkUtlVectorBase< CUtlSymbolLarge > m_vecCSSClasses; // 0x8e0 // MNetworkEnable - bool m_bOpaque; // 0x8e8 + bool m_bOpaque; // 0x8f8 // MNetworkEnable - bool m_bNoDepth; // 0x8e9 + bool m_bNoDepth; // 0x8f9 // MNetworkEnable - bool m_bRenderBackface; // 0x8ea + bool m_bRenderBackface; // 0x8fa // MNetworkEnable - bool m_bUseOffScreenIndicator; // 0x8eb + bool m_bUseOffScreenIndicator; // 0x8fb // MNetworkEnable - bool m_bExcludeFromSaveGames; // 0x8ec + bool m_bExcludeFromSaveGames; // 0x8fc // MNetworkEnable - bool m_bGrabbable; // 0x8ed + bool m_bGrabbable; // 0x8fd // MNetworkEnable - bool m_bOnlyRenderToTexture; // 0x8ee + bool m_bOnlyRenderToTexture; // 0x8fe // MNetworkEnable - bool m_bDisableMipGen; // 0x8ef + bool m_bDisableMipGen; // 0x8ff // MNetworkEnable - int32_t m_nExplicitImageLayout; // 0x8f0 + int32_t m_nExplicitImageLayout; // 0x900 }; // Alignment: 1 -// Size: 0xaf8 +// Size: 0xb08 class CPointClientUIWorldTextPanel : public CPointClientUIWorldPanel { public: // MNetworkEnable - char m_messageText[512]; // 0x8f8 + char m_messageText[512]; // 0x908 }; // Alignment: 0 -// Size: 0x900 +// Size: 0x910 class CPointHintUi : public CPointClientUIWorldPanel { public: @@ -13347,37 +12262,37 @@ public: }; // Alignment: 10 -// Size: 0x518 +// Size: 0x528 class CInfoOffscreenPanoramaTexture : public CPointEntity { public: // MNetworkEnable - bool m_bDisabled; // 0x4a0 + bool m_bDisabled; // 0x4b0 private: - [[maybe_unused]] uint8_t __pad04a1[0x3]; // 0x4a1 + [[maybe_unused]] uint8_t __pad04b1[0x3]; // 0x4b1 public: // MNetworkEnable - int32_t m_nResolutionX; // 0x4a4 + int32_t m_nResolutionX; // 0x4b4 // MNetworkEnable - int32_t m_nResolutionY; // 0x4a8 + int32_t m_nResolutionY; // 0x4b8 private: - [[maybe_unused]] uint8_t __pad04ac[0x4]; // 0x4ac + [[maybe_unused]] uint8_t __pad04bc[0x4]; // 0x4bc public: // MNetworkEnable - CUtlSymbolLarge m_szLayoutFileName; // 0x4b0 + CUtlSymbolLarge m_szLayoutFileName; // 0x4c0 // MNetworkEnable - CUtlSymbolLarge m_RenderAttrName; // 0x4b8 + CUtlSymbolLarge m_RenderAttrName; // 0x4c8 // MNetworkEnable - CNetworkUtlVectorBase< CHandle< CBaseModelEntity > > m_TargetEntities; // 0x4c0 + CNetworkUtlVectorBase< CHandle< CBaseModelEntity > > m_TargetEntities; // 0x4d0 // MNetworkEnable - int32_t m_nTargetChangeCount; // 0x4d8 + int32_t m_nTargetChangeCount; // 0x4e8 private: - [[maybe_unused]] uint8_t __pad04dc[0x4]; // 0x4dc + [[maybe_unused]] uint8_t __pad04ec[0x4]; // 0x4ec public: // MNetworkEnable - CNetworkUtlVectorBase< CUtlSymbolLarge > m_vecCSSClasses; // 0x4e0 - CUtlSymbolLarge m_szTargetsName; // 0x4f8 - CUtlVector< CHandle< CBaseModelEntity > > m_AdditionalTargetEntities; // 0x500 + CNetworkUtlVectorBase< CUtlSymbolLarge > m_vecCSSClasses; // 0x4f0 + CUtlSymbolLarge m_szTargetsName; // 0x508 + CUtlVector< CHandle< CBaseModelEntity > > m_AdditionalTargetEntities; // 0x510 }; // Alignment: 1 @@ -13390,7 +12305,7 @@ public: }; // Alignment: 0 -// Size: 0x4b0 +// Size: 0x4c0 class CInfoPlayerTerrorist : public SpawnPoint { public: @@ -13398,7 +12313,7 @@ public: }; // Alignment: 0 -// Size: 0x4b0 +// Size: 0x4c0 class CInfoPlayerCounterterrorist : public SpawnPoint { public: @@ -13406,7 +12321,7 @@ public: }; // Alignment: 0 -// Size: 0x4b0 +// Size: 0x4c0 class CInfoDeathmatchSpawn : public SpawnPoint { public: @@ -13414,7 +12329,7 @@ public: }; // Alignment: 0 -// Size: 0x4b0 +// Size: 0x4c0 class CInfoArmsRaceCounterterrorist : public SpawnPoint { public: @@ -13422,7 +12337,7 @@ public: }; // Alignment: 0 -// Size: 0x4b0 +// Size: 0x4c0 class CInfoArmsRaceTerrorist : public SpawnPoint { public: @@ -13430,7 +12345,7 @@ public: }; // Alignment: 0 -// Size: 0x4e8 +// Size: 0x4f8 class CInfoEnemyTerroristSpawn : public SpawnPointCoopEnemy { public: @@ -13438,236 +12353,252 @@ public: }; // Alignment: 1 -// Size: 0x4a8 +// Size: 0x4b8 class CPointGiveAmmo : public CPointEntity { public: - CHandle< CBaseEntity > m_pActivator; // 0x4a0 -}; - -// Alignment: 66 -// Size: -0x728 -class CCSPlayerController : public CBasePlayerController -{ -private: - [[maybe_unused]] uint8_t __pad0668[0x10]; // 0x668 -public: - // MNetworkEnable - CCSPlayerController_InGameMoneyServices* m_pInGameMoneyServices; // 0x678 - // MNetworkEnable - CCSPlayerController_InventoryServices* m_pInventoryServices; // 0x680 - // MNetworkEnable - CCSPlayerController_ActionTrackingServices* m_pActionTrackingServices; // 0x688 - // MNetworkEnable - CCSPlayerController_DamageServices* m_pDamageServices; // 0x690 - // MNetworkEnable - uint32_t m_iPing; // 0x698 - // MNetworkEnable - bool m_bHasCommunicationAbuseMute; // 0x69c -private: - [[maybe_unused]] uint8_t __pad069d[0x3]; // 0x69d -public: - // MNetworkEnable - CUtlSymbolLarge m_szCrosshairCodes; // 0x6a0 - // MNetworkEnable - uint8_t m_iPendingTeamNum; // 0x6a8 -private: - [[maybe_unused]] uint8_t __pad06a9[0x3]; // 0x6a9 -public: - // MNetworkEnable - GameTime_t m_flForceTeamTime; // 0x6ac - // MNetworkEnable - int32_t m_iCompTeammateColor; // 0x6b0 - // MNetworkEnable - bool m_bEverPlayedOnTeam; // 0x6b4 - bool m_bAttemptedToGetColor; // 0x6b5 -private: - [[maybe_unused]] uint8_t __pad06b6[0x2]; // 0x6b6 -public: - int32_t m_iTeammatePreferredColor; // 0x6b8 - bool m_bTeamChanged; // 0x6bc - bool m_bInSwitchTeam; // 0x6bd - bool m_bHasSeenJoinGame; // 0x6be - bool m_bJustBecameSpectator; // 0x6bf - bool m_bSwitchTeamsOnNextRoundReset; // 0x6c0 -private: - [[maybe_unused]] uint8_t __pad06c1[0x7]; // 0x6c1 -public: - // MNetworkEnable - CUtlSymbolLarge m_szClan; // 0x6c8 - char m_szClanName[32]; // 0x6d0 - // MNetworkEnable - int32_t m_iCoachingTeam; // 0x6f0 -private: - [[maybe_unused]] uint8_t __pad06f4[0x4]; // 0x6f4 -public: - // MNetworkEnable - uint64_t m_nPlayerDominated; // 0x6f8 - // MNetworkEnable - uint64_t m_nPlayerDominatingMe; // 0x700 - // MNetworkEnable - int32_t m_iCompetitiveRanking; // 0x708 - // MNetworkEnable - int32_t m_iCompetitiveWins; // 0x70c - // MNetworkEnable - int8_t m_iCompetitiveRankType; // 0x710 -private: - [[maybe_unused]] uint8_t __pad0711[0x3]; // 0x711 -public: - // MNetworkEnable - int32_t m_nEndMatchNextMapVote; // 0x714 - // MNetworkEnable - uint16_t m_unActiveQuestId; // 0x718 -private: - [[maybe_unused]] uint8_t __pad071a[0x2]; // 0x71a -public: - // MNetworkEnable - QuestProgress::Reason m_nQuestProgressReason; // 0x71c - // MNetworkEnable - uint32_t m_unPlayerTvControlFlags; // 0x720 -private: - [[maybe_unused]] uint8_t __pad0724[0x6c]; // 0x724 -public: - 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_bDisconnection1MinWarningPrinted; // 0x79e - bool m_bScoreReported; // 0x79f - // MNetworkEnable - int32_t m_nDisconnectionTick; // 0x7a0 -private: - [[maybe_unused]] uint8_t __pad07a4[0xc]; // 0x7a4 -public: - // MNetworkEnable - bool m_bControllingBot; // 0x7b0 - // MNetworkEnable - bool m_bHasControlledBotThisRound; // 0x7b1 - bool m_bHasBeenControlledByPlayerThisRound; // 0x7b2 -private: - [[maybe_unused]] uint8_t __pad07b3[0x1]; // 0x7b3 -public: - int32_t m_nBotsControlledThisRound; // 0x7b4 - // MNetworkEnable - bool m_bCanControlObservedBot; // 0x7b8 -private: - [[maybe_unused]] uint8_t __pad07b9[0x3]; // 0x7b9 -public: - // MNetworkEnable - CHandle< CCSPlayerPawn > m_hPlayerPawn; // 0x7bc - // MNetworkEnable - CHandle< CCSObserverPawn > m_hObserverPawn; // 0x7c0 - int32_t m_DesiredObserverMode; // 0x7c4 - CEntityHandle m_hDesiredObserverTarget; // 0x7c8 - // MNetworkEnable - bool m_bPawnIsAlive; // 0x7cc -private: - [[maybe_unused]] uint8_t __pad07cd[0x3]; // 0x7cd -public: - // MNetworkEnable - uint32_t m_iPawnHealth; // 0x7d0 - // MNetworkEnable - int32_t m_iPawnArmor; // 0x7d4 - // MNetworkEnable - bool m_bPawnHasDefuser; // 0x7d8 - // MNetworkEnable - bool m_bPawnHasHelmet; // 0x7d9 - // MNetworkEnable - uint16_t m_nPawnCharacterDefIndex; // 0x7da - // MNetworkEnable - int32_t m_iPawnLifetimeStart; // 0x7dc - // MNetworkEnable - int32_t m_iPawnLifetimeEnd; // 0x7e0 - // MNetworkEnable - int32_t m_iPawnGunGameLevel; // 0x7e4 - // MNetworkEnable - int32_t m_iPawnBotDifficulty; // 0x7e8 - // MNetworkEnable - CHandle< CCSPlayerController > m_hOriginalControllerOfCurrentPawn; // 0x7ec - // MNetworkEnable - int32_t m_iScore; // 0x7f0 - int32_t m_iRoundScore; // 0x7f4 - // MNetworkEnable - CNetworkUtlVectorBase< EKillTypes_t > m_vecKills; // 0x7f8 - // MNetworkEnable - int32_t m_iMVPs; // 0x810 - int32_t m_nUpdateCounter; // 0x814 -private: - [[maybe_unused]] uint8_t __pad0818[0xf0a0]; // 0x818 -public: - IntervalTimer m_lastHeldVoteTimer; // 0xf8b8 -private: - [[maybe_unused]] uint8_t __padf8c8[0x8]; // 0xf8c8 -public: - bool m_bShowHints; // 0xf8d0 -private: - [[maybe_unused]] uint8_t __padf8d1[0x3]; // 0xf8d1 -public: - int32_t m_iNextTimeCheck; // 0xf8d4 + CHandle< CBaseEntity > m_pActivator; // 0x4b0 }; // Alignment: 2 -// Size: 0x8a8 +// Size: 0x8d8 +class CTriggerBuoyancy : public CBaseTrigger +{ +public: + CBuoyancyHelper m_BuoyancyHelper; // 0x8a8 + // MNetworkEnable + float m_flFluidDensity; // 0x8d0 +}; + +// Alignment: 1 +// Size: 0x728 +class CFuncWater : public CBaseModelEntity +{ +public: + CBuoyancyHelper m_BuoyancyHelper; // 0x700 +}; + +// Alignment: 66 +// Size: -0x700 +class CCSPlayerController : public CBasePlayerController +{ +public: + // MNetworkEnable + CCSPlayerController_InGameMoneyServices* m_pInGameMoneyServices; // 0x6a0 + // MNetworkEnable + CCSPlayerController_InventoryServices* m_pInventoryServices; // 0x6a8 + // MNetworkEnable + CCSPlayerController_ActionTrackingServices* m_pActionTrackingServices; // 0x6b0 + // MNetworkEnable + CCSPlayerController_DamageServices* m_pDamageServices; // 0x6b8 + // MNetworkEnable + uint32_t m_iPing; // 0x6c0 + // MNetworkEnable + bool m_bHasCommunicationAbuseMute; // 0x6c4 +private: + [[maybe_unused]] uint8_t __pad06c5[0x3]; // 0x6c5 +public: + // MNetworkEnable + CUtlSymbolLarge m_szCrosshairCodes; // 0x6c8 + // MNetworkEnable + uint8_t m_iPendingTeamNum; // 0x6d0 +private: + [[maybe_unused]] uint8_t __pad06d1[0x3]; // 0x6d1 +public: + // MNetworkEnable + GameTime_t m_flForceTeamTime; // 0x6d4 + // MNetworkEnable + int32_t m_iCompTeammateColor; // 0x6d8 + // MNetworkEnable + bool m_bEverPlayedOnTeam; // 0x6dc + bool m_bAttemptedToGetColor; // 0x6dd +private: + [[maybe_unused]] uint8_t __pad06de[0x2]; // 0x6de +public: + int32_t m_iTeammatePreferredColor; // 0x6e0 + bool m_bTeamChanged; // 0x6e4 + bool m_bInSwitchTeam; // 0x6e5 + bool m_bHasSeenJoinGame; // 0x6e6 + bool m_bJustBecameSpectator; // 0x6e7 + bool m_bSwitchTeamsOnNextRoundReset; // 0x6e8 +private: + [[maybe_unused]] uint8_t __pad06e9[0x7]; // 0x6e9 +public: + // MNetworkEnable + CUtlSymbolLarge m_szClan; // 0x6f0 + char m_szClanName[32]; // 0x6f8 + // MNetworkEnable + int32_t m_iCoachingTeam; // 0x718 +private: + [[maybe_unused]] uint8_t __pad071c[0x4]; // 0x71c +public: + // MNetworkEnable + uint64_t m_nPlayerDominated; // 0x720 + // MNetworkEnable + uint64_t m_nPlayerDominatingMe; // 0x728 + // MNetworkEnable + int32_t m_iCompetitiveRanking; // 0x730 + // MNetworkEnable + int32_t m_iCompetitiveWins; // 0x734 + // MNetworkEnable + int8_t m_iCompetitiveRankType; // 0x738 +private: + [[maybe_unused]] uint8_t __pad0739[0x3]; // 0x739 +public: + // MNetworkEnable + int32_t m_nEndMatchNextMapVote; // 0x73c + // MNetworkEnable + uint16_t m_unActiveQuestId; // 0x740 +private: + [[maybe_unused]] uint8_t __pad0742[0x2]; // 0x742 +public: + // MNetworkEnable + QuestProgress::Reason m_nQuestProgressReason; // 0x744 + // MNetworkEnable + uint32_t m_unPlayerTvControlFlags; // 0x748 +private: + [[maybe_unused]] uint8_t __pad074c[0x6c]; // 0x74c +public: + int32_t m_iDraftIndex; // 0x7b8 + uint32_t m_msQueuedModeDisconnectionTimestamp; // 0x7bc + uint32_t m_uiAbandonRecordedReason; // 0x7c0 + bool m_bEverFullyConnected; // 0x7c4 + bool m_bAbandonAllowsSurrender; // 0x7c5 + bool m_bDisconnection1MinWarningPrinted; // 0x7c6 + bool m_bScoreReported; // 0x7c7 + // MNetworkEnable + int32_t m_nDisconnectionTick; // 0x7c8 +private: + [[maybe_unused]] uint8_t __pad07cc[0xc]; // 0x7cc +public: + // MNetworkEnable + bool m_bControllingBot; // 0x7d8 + // MNetworkEnable + bool m_bHasControlledBotThisRound; // 0x7d9 + bool m_bHasBeenControlledByPlayerThisRound; // 0x7da +private: + [[maybe_unused]] uint8_t __pad07db[0x1]; // 0x7db +public: + int32_t m_nBotsControlledThisRound; // 0x7dc + // MNetworkEnable + bool m_bCanControlObservedBot; // 0x7e0 +private: + [[maybe_unused]] uint8_t __pad07e1[0x3]; // 0x7e1 +public: + // MNetworkEnable + CHandle< CCSPlayerPawn > m_hPlayerPawn; // 0x7e4 + // MNetworkEnable + CHandle< CCSObserverPawn > m_hObserverPawn; // 0x7e8 + int32_t m_DesiredObserverMode; // 0x7ec + CEntityHandle m_hDesiredObserverTarget; // 0x7f0 + // MNetworkEnable + bool m_bPawnIsAlive; // 0x7f4 +private: + [[maybe_unused]] uint8_t __pad07f5[0x3]; // 0x7f5 +public: + // MNetworkEnable + uint32_t m_iPawnHealth; // 0x7f8 + // MNetworkEnable + int32_t m_iPawnArmor; // 0x7fc + // MNetworkEnable + bool m_bPawnHasDefuser; // 0x800 + // MNetworkEnable + bool m_bPawnHasHelmet; // 0x801 + // MNetworkEnable + uint16_t m_nPawnCharacterDefIndex; // 0x802 + // MNetworkEnable + int32_t m_iPawnLifetimeStart; // 0x804 + // MNetworkEnable + int32_t m_iPawnLifetimeEnd; // 0x808 + // MNetworkEnable + int32_t m_iPawnGunGameLevel; // 0x80c + // MNetworkEnable + int32_t m_iPawnBotDifficulty; // 0x810 + // MNetworkEnable + CHandle< CCSPlayerController > m_hOriginalControllerOfCurrentPawn; // 0x814 + // MNetworkEnable + int32_t m_iScore; // 0x818 + int32_t m_iRoundScore; // 0x81c + // MNetworkEnable + CNetworkUtlVectorBase< EKillTypes_t > m_vecKills; // 0x820 + // MNetworkEnable + int32_t m_iMVPs; // 0x838 + int32_t m_nUpdateCounter; // 0x83c +private: + [[maybe_unused]] uint8_t __pad0840[0xf0a0]; // 0x840 +public: + IntervalTimer m_lastHeldVoteTimer; // 0xf8e0 +private: + [[maybe_unused]] uint8_t __padf8f0[0x8]; // 0xf8f0 +public: + bool m_bShowHints; // 0xf8f8 +private: + [[maybe_unused]] uint8_t __padf8f9[0x3]; // 0xf8f9 +public: + int32_t m_iNextTimeCheck; // 0xf8fc +}; + +// Alignment: 2 +// Size: 0x8b8 class CFootstepControl : public CBaseTrigger { public: // MNetworkEnable - CUtlSymbolLarge m_source; // 0x898 + CUtlSymbolLarge m_source; // 0x8a8 // MNetworkEnable - CUtlSymbolLarge m_destination; // 0x8a0 + CUtlSymbolLarge m_destination; // 0x8b0 }; // Alignment: 1 -// Size: 0x8b0 +// Size: 0x8c0 class CTriggerSafeMoneyGather : public CBaseTrigger { public: - CUtlVector< CHandle< CBaseEntity > > m_vecCashBundles; // 0x898 + CUtlVector< CHandle< CBaseEntity > > m_vecCashBundles; // 0x8a8 }; // Alignment: 21 -// Size: 0x510 +// Size: 0x520 class CCSEnvGunfire : public CPointEntity { public: - int32_t m_iMinBurstSize; // 0x4a0 - int32_t m_iMaxBurstSize; // 0x4a4 - float m_flMinBurstDelay; // 0x4a8 - float m_flMaxBurstDelay; // 0x4ac - float m_flRateOfFire; // 0x4b0 + int32_t m_iMinBurstSize; // 0x4b0 + int32_t m_iMaxBurstSize; // 0x4b4 + float m_flMinBurstDelay; // 0x4b8 + float m_flMaxBurstDelay; // 0x4bc + float m_flRateOfFire; // 0x4c0 private: - [[maybe_unused]] uint8_t __pad04b4[0x4]; // 0x4b4 + [[maybe_unused]] uint8_t __pad04c4[0x4]; // 0x4c4 public: - CUtlSymbolLarge m_iszShootSound; // 0x4b8 - CUtlSymbolLarge m_iszTracerType; // 0x4c0 - CUtlSymbolLarge m_iszWeaponName; // 0x4c8 - bool m_bDisabled; // 0x4d0 + CUtlSymbolLarge m_iszShootSound; // 0x4c8 + CUtlSymbolLarge m_iszTracerType; // 0x4d0 + CUtlSymbolLarge m_iszWeaponName; // 0x4d8 + bool m_bDisabled; // 0x4e0 private: - [[maybe_unused]] uint8_t __pad04d1[0x3]; // 0x4d1 + [[maybe_unused]] uint8_t __pad04e1[0x3]; // 0x4e1 public: - int32_t m_iShotsRemaining; // 0x4d4 - int32_t m_iSpread; // 0x4d8 - Vector m_vecSpread; // 0x4dc - Vector m_vecTargetPosition; // 0x4e8 - float m_flTargetDist; // 0x4f4 - float m_flBias; // 0x4f8 - bool m_bCollide; // 0x4fc + int32_t m_iShotsRemaining; // 0x4e4 + int32_t m_iSpread; // 0x4e8 + Vector m_vecSpread; // 0x4ec + Vector m_vecTargetPosition; // 0x4f8 + float m_flTargetDist; // 0x504 + float m_flBias; // 0x508 + bool m_bCollide; // 0x50c private: - [[maybe_unused]] uint8_t __pad04fd[0x3]; // 0x4fd + [[maybe_unused]] uint8_t __pad050d[0x3]; // 0x50d public: - CHandle< CBaseEntity > m_hTarget; // 0x500 - bool m_bAllowNullTarget; // 0x504 - bool m_bAlwaysWallbangTracer; // 0x505 + CHandle< CBaseEntity > m_hTarget; // 0x510 + bool m_bAllowNullTarget; // 0x514 + bool m_bAlwaysWallbangTracer; // 0x515 private: - [[maybe_unused]] uint8_t __pad0506[0x2]; // 0x506 + [[maybe_unused]] uint8_t __pad0516[0x2]; // 0x516 public: - float m_flDamageScaleValue; // 0x508 - float m_flAdditionalSpread; // 0x50c + float m_flDamageScaleValue; // 0x518 + float m_flAdditionalSpread; // 0x51c }; // Alignment: 0 -// Size: 0x4a0 +// Size: 0x4b0 class CInfoGasCanisterLaunchPoint : public CPointEntity { public: @@ -13675,35 +12606,35 @@ public: }; // Alignment: 9 -// Size: 0x4e8 +// Size: 0x4f8 class CDangerZone : public CPointEntity { public: // MNetworkEnable - Vector m_vecDangerZoneOriginStartedAt; // 0x4a0 + Vector m_vecDangerZoneOriginStartedAt; // 0x4b0 // MNetworkEnable - GameTime_t m_flBombLaunchTime; // 0x4ac + GameTime_t m_flBombLaunchTime; // 0x4bc // MNetworkEnable - float m_flExtraRadius; // 0x4b0 + float m_flExtraRadius; // 0x4c0 // MNetworkEnable - GameTime_t m_flExtraRadiusStartTime; // 0x4b4 + GameTime_t m_flExtraRadiusStartTime; // 0x4c4 // MNetworkEnable - float m_flExtraRadiusTotalLerpTime; // 0x4b8 + float m_flExtraRadiusTotalLerpTime; // 0x4c8 // MNetworkEnable - int32_t m_nDropOrder; // 0x4bc + int32_t m_nDropOrder; // 0x4cc // MNetworkEnable - int32_t m_iWave; // 0x4c0 - int32_t m_nMyZoneIndex; // 0x4c4 - int32_t m_nZoneNeighbors[6]; // 0x4c8 + int32_t m_iWave; // 0x4d0 + int32_t m_nMyZoneIndex; // 0x4d4 + int32_t m_nZoneNeighbors[6]; // 0x4d8 }; // Alignment: 1 -// Size: 0x4a8 +// Size: 0x4b8 class CGrassBurn : public CPointEntity { public: // MNetworkEnable - float m_flGrassBurnClearTime; // 0x4a0 + float m_flGrassBurnClearTime; // 0x4b0 }; // Alignment: 89 @@ -13831,7 +12762,7 @@ public: }; // Alignment: 0 -// Size: 0x898 +// Size: 0x8a8 class CTabletBlockerShim : public CBaseTrigger { public: @@ -13839,7 +12770,7 @@ public: }; // Alignment: 0 -// Size: 0x8a0 +// Size: 0x8b0 class CTabletBlocker : public CTabletBlockerShim { public: @@ -13847,7 +12778,7 @@ public: }; // Alignment: 0 -// Size: 0x8a0 +// Size: 0x8b0 class CTriggerTripWire : public CBaseTrigger { public: @@ -13855,7 +12786,7 @@ public: }; // Alignment: 0 -// Size: 0x760 +// Size: 0x770 class CCSSprite : public CSprite { public: @@ -13863,42 +12794,42 @@ public: }; // Alignment: 2 -// Size: 0x4b0 +// Size: 0x4c0 class CPointGamestatsCounter : public CPointEntity { public: - CUtlSymbolLarge m_strStatisticName; // 0x4a0 - bool m_bDisabled; // 0x4a8 + CUtlSymbolLarge m_strStatisticName; // 0x4b0 + bool m_bDisabled; // 0x4b8 }; // Alignment: 1 -// Size: 0x4a8 +// Size: 0x4b8 class CEnvHudHint : public CPointEntity { public: - CUtlSymbolLarge m_iszMessage; // 0x4a0 + CUtlSymbolLarge m_iszMessage; // 0x4b0 }; // Alignment: 8 -// Size: 0x928 +// Size: 0x938 class CBombTarget : public CBaseTrigger { public: - CEntityIOOutput m_OnBombExplode; // 0x898 - CEntityIOOutput m_OnBombPlanted; // 0x8c0 - CEntityIOOutput m_OnBombDefused; // 0x8e8 - bool m_bIsBombSiteB; // 0x910 - bool m_bIsHeistBombTarget; // 0x911 - bool m_bBombPlantedHere; // 0x912 + CEntityIOOutput m_OnBombExplode; // 0x8a8 + CEntityIOOutput m_OnBombPlanted; // 0x8d0 + CEntityIOOutput m_OnBombDefused; // 0x8f8 + bool m_bIsBombSiteB; // 0x920 + bool m_bIsHeistBombTarget; // 0x921 + bool m_bBombPlantedHere; // 0x922 private: - [[maybe_unused]] uint8_t __pad0913[0x5]; // 0x913 + [[maybe_unused]] uint8_t __pad0923[0x5]; // 0x923 public: - CUtlSymbolLarge m_szMountTarget; // 0x918 - CHandle< CBaseEntity > m_hInstructorHint; // 0x920 + CUtlSymbolLarge m_szMountTarget; // 0x928 + CHandle< CBaseEntity > m_hInstructorHint; // 0x930 }; // Alignment: 0 -// Size: 0x4a0 +// Size: 0x4b0 class CInfoInstructorHintBombTargetA : public CPointEntity { public: @@ -13906,7 +12837,7 @@ public: }; // Alignment: 0 -// Size: 0x4a0 +// Size: 0x4b0 class CInfoInstructorHintBombTargetB : public CPointEntity { public: @@ -13914,7 +12845,7 @@ public: }; // Alignment: 0 -// Size: 0x898 +// Size: 0x8a8 class CHostageRescueZoneShim : public CBaseTrigger { public: @@ -13922,7 +12853,7 @@ public: }; // Alignment: 0 -// Size: 0x8a8 +// Size: 0x8b8 class CHostageRescueZone : public CHostageRescueZoneShim { public: @@ -13930,7 +12861,7 @@ public: }; // Alignment: 0 -// Size: 0x4a0 +// Size: 0x4b0 class CInfoInstructorHintHostageRescueZone : public CPointEntity { public: @@ -13938,40 +12869,40 @@ public: }; // Alignment: 1 -// Size: 0x8a0 +// Size: 0x8b0 class CBuyZone : public CBaseTrigger { public: - int32_t m_LegacyTeamNum; // 0x898 + int32_t m_LegacyTeamNum; // 0x8a8 }; // Alignment: 9 -// Size: 0x740 +// Size: 0x750 class CFuncConveyor : public CBaseModelEntity { public: - CUtlSymbolLarge m_szConveyorModels; // 0x6f0 - float m_flTransitionDurationSeconds; // 0x6f8 - QAngle m_angMoveEntitySpace; // 0x6fc + CUtlSymbolLarge m_szConveyorModels; // 0x700 + float m_flTransitionDurationSeconds; // 0x708 + QAngle m_angMoveEntitySpace; // 0x70c // MNetworkEnable - Vector m_vecMoveDirEntitySpace; // 0x708 + Vector m_vecMoveDirEntitySpace; // 0x718 // MNetworkEnable - float m_flTargetSpeed; // 0x714 + float m_flTargetSpeed; // 0x724 // MNetworkEnable - GameTick_t m_nTransitionStartTick; // 0x718 + GameTick_t m_nTransitionStartTick; // 0x728 // MNetworkEnable - int32_t m_nTransitionDurationTicks; // 0x71c + int32_t m_nTransitionDurationTicks; // 0x72c // MNetworkEnable - float m_flTransitionStartSpeed; // 0x720 + float m_flTransitionStartSpeed; // 0x730 private: - [[maybe_unused]] uint8_t __pad0724[0x4]; // 0x724 + [[maybe_unused]] uint8_t __pad0734[0x4]; // 0x734 public: // MNetworkEnable - CNetworkUtlVectorBase< CHandle< CBaseEntity > > m_hConveyorModels; // 0x728 + CNetworkUtlVectorBase< CHandle< CBaseEntity > > m_hConveyorModels; // 0x738 }; // Alignment: 0 -// Size: 0x898 +// Size: 0x8a8 class CTriggerBombReset : public CBaseTrigger { public: @@ -13979,57 +12910,53 @@ public: }; // Alignment: 1 -// Size: 0x700 +// Size: 0x710 class CCSPlace : public CServerOnlyModelEntity { -private: - [[maybe_unused]] uint8_t __pad06f0[0x8]; // 0x6f0 public: - CUtlSymbolLarge m_name; // 0x6f8 + CUtlSymbolLarge m_name; // 0x708 }; // Alignment: 15 -// Size: 0x7c8 +// Size: 0x7d8 class CPlayerSprayDecal : public CModelPointEntity { public: // MNetworkEnable - int32_t m_nUniqueID; // 0x6f0 + int32_t m_nUniqueID; // 0x700 // MNetworkEnable - uint32_t m_unAccountID; // 0x6f4 + uint32_t m_unAccountID; // 0x704 // MNetworkEnable - uint32_t m_unTraceID; // 0x6f8 + uint32_t m_unTraceID; // 0x708 // MNetworkEnable - uint32_t m_rtGcTime; // 0x6fc + uint32_t m_rtGcTime; // 0x70c // MNetworkEnable - Vector m_vecEndPos; // 0x700 + Vector m_vecEndPos; // 0x710 // MNetworkEnable - Vector m_vecStart; // 0x70c + Vector m_vecStart; // 0x71c // MNetworkEnable - Vector m_vecLeft; // 0x718 + Vector m_vecLeft; // 0x728 // MNetworkEnable - Vector m_vecNormal; // 0x724 + Vector m_vecNormal; // 0x734 // MNetworkEnable - int32_t m_nPlayer; // 0x730 + int32_t m_nPlayer; // 0x740 // MNetworkEnable - int32_t m_nEntity; // 0x734 + int32_t m_nEntity; // 0x744 // MNetworkEnable - int32_t m_nHitbox; // 0x738 + int32_t m_nHitbox; // 0x748 // MNetworkEnable - float m_flCreationTime; // 0x73c + float m_flCreationTime; // 0x74c // MNetworkEnable - int32_t m_nTintID; // 0x740 + int32_t m_nTintID; // 0x750 // MNetworkEnable - uint8_t m_nVersion; // 0x744 + uint8_t m_nVersion; // 0x754 // MNetworkEnable - uint8_t m_ubSignature[128]; // 0x745 - - // Static fields: + uint8_t m_ubSignature[128]; // 0x755 static CUtlVector< CPlayerSprayDecal* > &Get_s_arrFEPlayerDecals(){return *reinterpret_cast*>(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CPlayerSprayDecal")->m_static_fields[0]->m_instance);}; }; // Alignment: 0 -// Size: 0x898 +// Size: 0x8a8 class CTriggerCustomBounds : public CBaseTrigger { public: @@ -14037,7 +12964,7 @@ public: }; // Alignment: 0 -// Size: 0x898 +// Size: 0x8a8 class CTriggerSurvivalPlayArea : public CTriggerCustomBounds { public: @@ -14045,76 +12972,72 @@ public: }; // Alignment: 3 -// Size: 0x530 +// Size: 0x540 class CInfoMapRegion : public CPointEntity { public: // MNetworkEnable - float m_flRadius; // 0x4a0 + float m_flRadius; // 0x4b0 private: - [[maybe_unused]] uint8_t __pad04a4[0x4]; // 0x4a4 + [[maybe_unused]] uint8_t __pad04b4[0x4]; // 0x4b4 public: - CUtlSymbolLarge m_strLocToken; // 0x4a8 + CUtlSymbolLarge m_strLocToken; // 0x4b8 // MNetworkEnable - char m_szLocToken[128]; // 0x4b0 + char m_szLocToken[128]; // 0x4c0 }; // Alignment: 28 -// Size: 0x1378 +// Size: 0x1388 class CInferno : public CBaseModelEntity { -private: - [[maybe_unused]] uint8_t __pad06f0[0x10]; // 0x6f0 public: // MNetworkEnable - int32_t m_fireXDelta[64]; // 0x700 + int32_t m_fireXDelta[64]; // 0x710 // MNetworkEnable - int32_t m_fireYDelta[64]; // 0x800 + int32_t m_fireYDelta[64]; // 0x810 // MNetworkEnable - int32_t m_fireZDelta[64]; // 0x900 + int32_t m_fireZDelta[64]; // 0x910 // MNetworkEnable - int32_t m_fireParentXDelta[64]; // 0xa00 + int32_t m_fireParentXDelta[64]; // 0xa10 // MNetworkEnable - int32_t m_fireParentYDelta[64]; // 0xb00 + int32_t m_fireParentYDelta[64]; // 0xb10 // MNetworkEnable - int32_t m_fireParentZDelta[64]; // 0xc00 + int32_t m_fireParentZDelta[64]; // 0xc10 // MNetworkEnable - bool m_bFireIsBurning[64]; // 0xd00 + bool m_bFireIsBurning[64]; // 0xd10 // MNetworkEnable - Vector m_BurnNormal[64]; // 0xd40 + Vector m_BurnNormal[64]; // 0xd50 // MNetworkEnable - int32_t m_fireCount; // 0x1040 + int32_t m_fireCount; // 0x1050 // MNetworkEnable - int32_t m_nInfernoType; // 0x1044 + int32_t m_nInfernoType; // 0x1054 // MNetworkEnable - int32_t m_nFireEffectTickBegin; // 0x1048 + int32_t m_nFireEffectTickBegin; // 0x1058 // MNetworkEnable - float m_nFireLifetime; // 0x104c + float m_nFireLifetime; // 0x105c // MNetworkEnable - bool m_bInPostEffectTime; // 0x1050 + bool m_bInPostEffectTime; // 0x1060 private: - [[maybe_unused]] uint8_t __pad1051[0x3]; // 0x1051 + [[maybe_unused]] uint8_t __pad1061[0x3]; // 0x1061 public: - int32_t m_nFiresExtinguishCount; // 0x1054 - bool m_bWasCreatedInSmoke; // 0x1058 + int32_t m_nFiresExtinguishCount; // 0x1064 + bool m_bWasCreatedInSmoke; // 0x1068 private: - [[maybe_unused]] uint8_t __pad1059[0x207]; // 0x1059 + [[maybe_unused]] uint8_t __pad1069[0x207]; // 0x1069 public: - Extent m_extent; // 0x1260 - CountdownTimer m_damageTimer; // 0x1278 - CountdownTimer m_damageRampTimer; // 0x1290 - Vector m_splashVelocity; // 0x12a8 - Vector m_InitialSplashVelocity; // 0x12b4 - Vector m_startPos; // 0x12c0 - Vector m_vecOriginalSpawnLocation; // 0x12cc - IntervalTimer m_activeTimer; // 0x12d8 - int32_t m_fireSpawnOffset; // 0x12e8 - int32_t m_nMaxFlames; // 0x12ec - CountdownTimer m_BookkeepingTimer; // 0x12f0 - CountdownTimer m_NextSpreadTimer; // 0x1308 - uint16_t m_nSourceItemDefIndex; // 0x1320 - - // Static fields: + Extent m_extent; // 0x1270 + CountdownTimer m_damageTimer; // 0x1288 + CountdownTimer m_damageRampTimer; // 0x12a0 + Vector m_splashVelocity; // 0x12b8 + Vector m_InitialSplashVelocity; // 0x12c4 + Vector m_startPos; // 0x12d0 + Vector m_vecOriginalSpawnLocation; // 0x12dc + IntervalTimer m_activeTimer; // 0x12e8 + int32_t m_fireSpawnOffset; // 0x12f8 + int32_t m_nMaxFlames; // 0x12fc + CountdownTimer m_BookkeepingTimer; // 0x1300 + CountdownTimer m_NextSpreadTimer; // 0x1318 + uint16_t m_nSourceItemDefIndex; // 0x1330 static float &Get_InfernoFire_Radius(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CInferno")->m_static_fields[0]->m_instance);}; static float &Get_InfernoFire_LOSHeight(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CInferno")->m_static_fields[1]->m_instance);}; static float &Get_InfernoFire_CylinderHeight(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CInferno")->m_static_fields[2]->m_instance);}; @@ -14122,276 +13045,280 @@ public: }; // Alignment: 0 -// Size: 0x1378 +// Size: 0x1388 class CFireCrackerBlast : public CInferno { public: // No members available }; -// Alignment: 52 -// Size: 0x918 +// Alignment: 54 +// Size: 0x938 class CBarnLight : public CBaseModelEntity { public: // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - bool m_bEnabled; // 0x6f0 + bool m_bEnabled; // 0x700 private: - [[maybe_unused]] uint8_t __pad06f1[0x3]; // 0x6f1 + [[maybe_unused]] uint8_t __pad0701[0x3]; // 0x701 public: // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - int32_t m_nColorMode; // 0x6f4 + int32_t m_nColorMode; // 0x704 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - Color m_Color; // 0x6f8 + Color m_Color; // 0x708 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flColorTemperature; // 0x6fc + float m_flColorTemperature; // 0x70c // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flBrightness; // 0x700 + float m_flBrightness; // 0x710 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flBrightnessScale; // 0x704 + float m_flBrightnessScale; // 0x714 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - int32_t m_nDirectLight; // 0x708 + int32_t m_nDirectLight; // 0x718 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - int32_t m_nBakedShadowIndex; // 0x70c + int32_t m_nBakedShadowIndex; // 0x71c // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - int32_t m_nLuminaireShape; // 0x710 + int32_t m_nLuminaireShape; // 0x720 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flLuminaireSize; // 0x714 + float m_flLuminaireSize; // 0x724 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flLuminaireAnisotropy; // 0x718 -private: - [[maybe_unused]] uint8_t __pad071c[0x4]; // 0x71c -public: - // MNetworkEnable - // MNetworkChangeCallback "StyleChanged" - CUtlString m_LightStyleString; // 0x720 - // MNetworkEnable - // MNetworkChangeCallback "RenderingChanged" - GameTime_t m_flLightStyleStartTime; // 0x728 + float m_flLuminaireAnisotropy; // 0x728 private: [[maybe_unused]] uint8_t __pad072c[0x4]; // 0x72c public: // MNetworkEnable - CNetworkUtlVectorBase< CUtlString > m_QueuedLightStyleStrings; // 0x730 + // MNetworkChangeCallback "StyleChanged" + CUtlString m_LightStyleString; // 0x730 // MNetworkEnable - CNetworkUtlVectorBase< CUtlString > m_LightStyleEvents; // 0x748 - // MNetworkEnable - CNetworkUtlVectorBase< CHandle< CBaseModelEntity > > m_LightStyleTargets; // 0x760 - CEntityIOOutput m_StyleEvent[4]; // 0x778 - CUtlString m_StyleRadianceVar; // 0x818 - CUtlString m_StyleVar; // 0x820 + // MNetworkChangeCallback "RenderingChanged" + GameTime_t m_flLightStyleStartTime; // 0x738 private: - [[maybe_unused]] uint8_t __pad0828[0x20]; // 0x828 + [[maybe_unused]] uint8_t __pad073c[0x4]; // 0x73c +public: + // MNetworkEnable + CNetworkUtlVectorBase< CUtlString > m_QueuedLightStyleStrings; // 0x740 + // MNetworkEnable + CNetworkUtlVectorBase< CUtlString > m_LightStyleEvents; // 0x758 + // MNetworkEnable + CNetworkUtlVectorBase< CHandle< CBaseModelEntity > > m_LightStyleTargets; // 0x770 + CEntityIOOutput m_StyleEvent[4]; // 0x788 + CUtlString m_StyleRadianceVar; // 0x828 + CUtlString m_StyleVar; // 0x830 +private: + [[maybe_unused]] uint8_t __pad0838[0x20]; // 0x838 public: // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightCookie; // 0x848 + CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightCookie; // 0x858 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flShape; // 0x850 + float m_flShape; // 0x860 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flSoftX; // 0x854 + float m_flSoftX; // 0x864 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flSoftY; // 0x858 + float m_flSoftY; // 0x868 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flSkirt; // 0x85c + float m_flSkirt; // 0x86c // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flSkirtNear; // 0x860 + float m_flSkirtNear; // 0x870 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" // MNetworkBitCount "32" - Vector m_vSizeParams; // 0x864 + Vector m_vSizeParams; // 0x874 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" // MNetworkBitCount "32" - float m_flRange; // 0x870 + float m_flRange; // 0x880 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" // MNetworkBitCount "32" - Vector m_vShear; // 0x874 + Vector m_vShear; // 0x884 // MNetworkEnable - int32_t m_nBakeSpecularToCubemaps; // 0x880 + int32_t m_nBakeSpecularToCubemaps; // 0x890 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" // MNetworkBitCount "32" - Vector m_vBakeSpecularToCubemapsSize; // 0x884 + Vector m_vBakeSpecularToCubemapsSize; // 0x894 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - int32_t m_nCastShadows; // 0x890 + int32_t m_nCastShadows; // 0x8a0 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - int32_t m_nShadowMapSize; // 0x894 + int32_t m_nShadowMapSize; // 0x8a4 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - int32_t m_nShadowPriority; // 0x898 + int32_t m_nShadowPriority; // 0x8a8 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - bool m_bContactShadow; // 0x89c + bool m_bContactShadow; // 0x8ac private: - [[maybe_unused]] uint8_t __pad089d[0x3]; // 0x89d + [[maybe_unused]] uint8_t __pad08ad[0x3]; // 0x8ad public: // MNetworkEnable - int32_t m_nBounceLight; // 0x8a0 + int32_t m_nBounceLight; // 0x8b0 // MNetworkEnable - float m_flBounceScale; // 0x8a4 + float m_flBounceScale; // 0x8b4 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flMinRoughness; // 0x8a8 + float m_flMinRoughness; // 0x8b8 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - int32_t m_nFog; // 0x8ac + Vector m_vAlternateColor; // 0x8bc // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flFogStrength; // 0x8b0 + float m_fAlternateColorBrightness; // 0x8c8 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - int32_t m_nFogShadows; // 0x8b4 + int32_t m_nFog; // 0x8cc // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flFogScale; // 0x8b8 + float m_flFogStrength; // 0x8d0 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flFadeSizeStart; // 0x8bc + int32_t m_nFogShadows; // 0x8d4 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flFadeSizeEnd; // 0x8c0 + float m_flFogScale; // 0x8d8 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flShadowFadeSizeStart; // 0x8c4 + float m_flFadeSizeStart; // 0x8dc // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flShadowFadeSizeEnd; // 0x8c8 + float m_flFadeSizeEnd; // 0x8e0 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - bool m_bPrecomputedFieldsValid; // 0x8cc + float m_flShadowFadeSizeStart; // 0x8e4 + // MNetworkEnable + // MNetworkChangeCallback "RenderingChanged" + float m_flShadowFadeSizeEnd; // 0x8e8 + // MNetworkEnable + // MNetworkChangeCallback "RenderingChanged" + bool m_bPrecomputedFieldsValid; // 0x8ec private: - [[maybe_unused]] uint8_t __pad08cd[0x3]; // 0x8cd + [[maybe_unused]] uint8_t __pad08ed[0x3]; // 0x8ed public: // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - Vector m_vPrecomputedBoundsMins; // 0x8d0 + Vector m_vPrecomputedBoundsMins; // 0x8f0 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - Vector m_vPrecomputedBoundsMaxs; // 0x8dc + Vector m_vPrecomputedBoundsMaxs; // 0x8fc // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - Vector m_vPrecomputedOBBOrigin; // 0x8e8 + Vector m_vPrecomputedOBBOrigin; // 0x908 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - QAngle m_vPrecomputedOBBAngles; // 0x8f4 + QAngle m_vPrecomputedOBBAngles; // 0x914 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - Vector m_vPrecomputedOBBExtent; // 0x900 - bool m_bPvsModifyEntity; // 0x90c + Vector m_vPrecomputedOBBExtent; // 0x920 + bool m_bPvsModifyEntity; // 0x92c }; // Alignment: 1 -// Size: 0x920 +// Size: 0x940 class CRectLight : public CBarnLight { public: // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - bool m_bShowLight; // 0x918 + bool m_bShowLight; // 0x938 }; // Alignment: 3 -// Size: 0x928 +// Size: 0x948 class COmniLight : public CBarnLight { public: // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flInnerAngle; // 0x918 + float m_flInnerAngle; // 0x938 // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - float m_flOuterAngle; // 0x91c + float m_flOuterAngle; // 0x93c // MNetworkEnable // MNetworkChangeCallback "RenderingChanged" - bool m_bShowLight; // 0x920 + bool m_bShowLight; // 0x940 }; // Alignment: 21 -// Size: 0x830 +// Size: 0x840 class CCSTeam : public CTeam { public: - int32_t m_nLastRecievedShorthandedRoundBonus; // 0x558 - int32_t m_nShorthandedRoundBonusStartRound; // 0x55c + int32_t m_nLastRecievedShorthandedRoundBonus; // 0x568 + int32_t m_nShorthandedRoundBonusStartRound; // 0x56c // MNetworkEnable - bool m_bSurrendered; // 0x560 + bool m_bSurrendered; // 0x570 // MNetworkEnable - char m_szTeamMatchStat[512]; // 0x561 + char m_szTeamMatchStat[512]; // 0x571 private: - [[maybe_unused]] uint8_t __pad0761[0x3]; // 0x761 + [[maybe_unused]] uint8_t __pad0771[0x3]; // 0x771 public: // MNetworkEnable - int32_t m_numMapVictories; // 0x764 + int32_t m_numMapVictories; // 0x774 // MNetworkEnable - int32_t m_scoreFirstHalf; // 0x768 + int32_t m_scoreFirstHalf; // 0x778 // MNetworkEnable - int32_t m_scoreSecondHalf; // 0x76c + int32_t m_scoreSecondHalf; // 0x77c // MNetworkEnable - int32_t m_scoreOvertime; // 0x770 + int32_t m_scoreOvertime; // 0x780 // MNetworkEnable - char m_szClanTeamname[129]; // 0x774 + char m_szClanTeamname[129]; // 0x784 private: - [[maybe_unused]] uint8_t __pad07f5[0x3]; // 0x7f5 + [[maybe_unused]] uint8_t __pad0805[0x3]; // 0x805 public: // MNetworkEnable - uint32_t m_iClanID; // 0x7f8 + uint32_t m_iClanID; // 0x808 // MNetworkEnable - char m_szTeamFlagImage[8]; // 0x7fc + char m_szTeamFlagImage[8]; // 0x80c // MNetworkEnable - char m_szTeamLogoImage[8]; // 0x804 - float m_flNextResourceTime; // 0x80c - int32_t m_iLastUpdateSentAt; // 0x810 - float m_flLastPlayerSortTime; // 0x814 - CPlayerSlot m_nLastGGLeader_CT; // 0x818 - CPlayerSlot m_nLastGGLeader_T; // 0x81c + char m_szTeamLogoImage[8]; // 0x814 + float m_flNextResourceTime; // 0x81c + int32_t m_iLastUpdateSentAt; // 0x820 + float m_flLastPlayerSortTime; // 0x824 + CPlayerSlot m_nLastGGLeader_CT; // 0x828 + CPlayerSlot m_nLastGGLeader_T; // 0x82c // MNetworkEnable - CPlayerSlot m_nGGLeaderSlot_CT; // 0x820 + CPlayerSlot m_nGGLeaderSlot_CT; // 0x830 // MNetworkEnable - CPlayerSlot m_nGGLeaderSlot_T; // 0x824 - bool m_bGGHasLeader_CT; // 0x828 - bool m_bGGHasLeader_T; // 0x829 - - // Static fields: + CPlayerSlot m_nGGLeaderSlot_T; // 0x834 + bool m_bGGHasLeader_CT; // 0x838 + bool m_bGGHasLeader_T; // 0x839 static CPlayerSlot &Get_m_nStaticGGLeader_CT(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CCSTeam")->m_static_fields[0]->m_instance);}; static CPlayerSlot &Get_m_nStaticGGLeader_T(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CCSTeam")->m_static_fields[1]->m_instance);}; }; // Alignment: 8 -// Size: 0x4c0 +// Size: 0x4d0 class CMapInfo : public CPointEntity { public: - int32_t m_iBuyingStatus; // 0x4a0 - float m_flBombRadius; // 0x4a4 - int32_t m_iPetPopulation; // 0x4a8 - bool m_bUseNormalSpawnsForDM; // 0x4ac - bool m_bDisableAutoGeneratedDMSpawns; // 0x4ad + int32_t m_iBuyingStatus; // 0x4b0 + float m_flBombRadius; // 0x4b4 + int32_t m_iPetPopulation; // 0x4b8 + bool m_bUseNormalSpawnsForDM; // 0x4bc + bool m_bDisableAutoGeneratedDMSpawns; // 0x4bd private: - [[maybe_unused]] uint8_t __pad04ae[0x2]; // 0x4ae + [[maybe_unused]] uint8_t __pad04be[0x2]; // 0x4be public: - float m_flBotMaxVisionDistance; // 0x4b0 - int32_t m_iHostageCount; // 0x4b4 - bool m_bFadePlayerVisibilityFarZ; // 0x4b8 + float m_flBotMaxVisionDistance; // 0x4c0 + int32_t m_iHostageCount; // 0x4c4 + bool m_bFadePlayerVisibilityFarZ; // 0x4c8 }; // Alignment: 140 @@ -14665,89 +13592,87 @@ public: }; // Alignment: 5 -// Size: 0x718 +// Size: 0x728 class CFogVolume : public CServerOnlyModelEntity { public: - CUtlSymbolLarge m_fogName; // 0x6f0 - CUtlSymbolLarge m_postProcessName; // 0x6f8 - CUtlSymbolLarge m_colorCorrectionName; // 0x700 + CUtlSymbolLarge m_fogName; // 0x700 + CUtlSymbolLarge m_postProcessName; // 0x708 + CUtlSymbolLarge m_colorCorrectionName; // 0x710 private: - [[maybe_unused]] uint8_t __pad0708[0x8]; // 0x708 + [[maybe_unused]] uint8_t __pad0718[0x8]; // 0x718 public: - bool m_bDisabled; // 0x710 - bool m_bInFogVolumesList; // 0x711 + bool m_bDisabled; // 0x720 + bool m_bInFogVolumesList; // 0x721 }; // Alignment: 5 -// Size: 0x4b8 +// Size: 0x4c8 class CInfoDynamicShadowHint : public CPointEntity { public: - bool m_bDisabled; // 0x4a0 + bool m_bDisabled; // 0x4b0 private: - [[maybe_unused]] uint8_t __pad04a1[0x3]; // 0x4a1 + [[maybe_unused]] uint8_t __pad04b1[0x3]; // 0x4b1 public: - float m_flRange; // 0x4a4 - int32_t m_nImportance; // 0x4a8 - int32_t m_nLightChoice; // 0x4ac - CHandle< CBaseEntity > m_hLight; // 0x4b0 - - // Static fields: + float m_flRange; // 0x4b4 + int32_t m_nImportance; // 0x4b8 + int32_t m_nLightChoice; // 0x4bc + CHandle< CBaseEntity > m_hLight; // 0x4c0 static CUtlVector< CInfoDynamicShadowHint* > &Get_m_AllHints(){return *reinterpret_cast*>(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CInfoDynamicShadowHint")->m_static_fields[0]->m_instance);}; }; // Alignment: 2 -// Size: 0x4d0 +// Size: 0x4e0 class CInfoDynamicShadowHintBox : public CInfoDynamicShadowHint { public: - Vector m_vBoxMins; // 0x4b8 - Vector m_vBoxMaxs; // 0x4c4 + Vector m_vBoxMins; // 0x4c8 + Vector m_vBoxMaxs; // 0x4d4 }; // Alignment: 10 -// Size: 0x738 +// Size: 0x748 class CEnvSky : public CBaseModelEntity { public: // MNetworkEnable // MNetworkChangeCallback "SkyStateChanged" - CStrongHandle< InfoForResourceTypeIMaterial2 > m_hSkyMaterial; // 0x6f0 + CStrongHandle< InfoForResourceTypeIMaterial2 > m_hSkyMaterial; // 0x700 // MNetworkEnable // MNetworkChangeCallback "SkyStateChanged" - bool m_bStartDisabled; // 0x6f8 + bool m_bStartDisabled; // 0x708 // MNetworkEnable // MNetworkChangeCallback "SkyStateChanged" - Color m_vTintColor; // 0x6f9 + Color m_vTintColor; // 0x709 private: - [[maybe_unused]] uint8_t __pad06fd[0x3]; // 0x6fd + [[maybe_unused]] uint8_t __pad070d[0x3]; // 0x70d public: // MNetworkEnable // MNetworkChangeCallback "SkyStateChanged" - float m_flBrightnessScale; // 0x700 + float m_flBrightnessScale; // 0x710 // MNetworkEnable // MNetworkChangeCallback "SkyStateChanged" - int32_t m_nFogType; // 0x704 + int32_t m_nFogType; // 0x714 // MNetworkEnable // MNetworkChangeCallback "SkyStateChanged" - float m_flFogMinStart; // 0x708 + float m_flFogMinStart; // 0x718 // MNetworkEnable // MNetworkChangeCallback "SkyStateChanged" - float m_flFogMinEnd; // 0x70c + float m_flFogMinEnd; // 0x71c // MNetworkEnable // MNetworkChangeCallback "SkyStateChanged" - float m_flFogMaxStart; // 0x710 + float m_flFogMaxStart; // 0x720 // MNetworkEnable // MNetworkChangeCallback "SkyStateChanged" - float m_flFogMaxEnd; // 0x714 + float m_flFogMaxEnd; // 0x724 // MNetworkEnable // MNetworkChangeCallback "SkyStateChanged" - bool m_bEnabled; // 0x718 + bool m_bEnabled; // 0x728 }; // Alignment: 0 -// Size: 0x4c8 +// Size: 0x4d8 class CTonemapController2Alias_env_tonemap_controller2 : public CTonemapController2 { public: @@ -14755,24 +13680,24 @@ public: }; // Alignment: 2 -// Size: 0x8a8 +// Size: 0x8b8 class CTonemapTrigger : public CBaseTrigger { public: - CUtlSymbolLarge m_tonemapControllerName; // 0x898 - CEntityHandle m_hTonemapController; // 0x8a0 + CUtlSymbolLarge m_tonemapControllerName; // 0x8a8 + CEntityHandle m_hTonemapController; // 0x8b0 }; // Alignment: 1 -// Size: 0x900 +// Size: 0x910 class CFogTrigger : public CBaseTrigger { public: - fogparams_t m_fog; // 0x898 + fogparams_t m_fog; // 0x8a8 }; // Alignment: 1 -// Size: 0x6f8 +// Size: 0x708 class CLightEntity : public CBaseModelEntity { public: @@ -14780,11 +13705,11 @@ public: // MNetworkUserGroup "CLightComponent" // MNetworkAlias "CLightComponent" // MNetworkTypeAlias "CLightComponent" - CLightComponent* m_CLightComponent; // 0x6f0 + CLightComponent* m_CLightComponent; // 0x700 }; // Alignment: 0 -// Size: 0x6f8 +// Size: 0x708 class CLightSpotEntity : public CLightEntity { public: @@ -14792,7 +13717,7 @@ public: }; // Alignment: 0 -// Size: 0x6f8 +// Size: 0x708 class CLightOrthoEntity : public CLightEntity { public: @@ -14800,7 +13725,7 @@ public: }; // Alignment: 0 -// Size: 0x6f8 +// Size: 0x708 class CLightDirectionalEntity : public CLightEntity { public: @@ -14808,7 +13733,7 @@ public: }; // Alignment: 0 -// Size: 0x6f8 +// Size: 0x708 class CLightEnvironmentEntity : public CLightDirectionalEntity { public: @@ -14816,249 +13741,254 @@ public: }; // Alignment: 16 -// Size: 0x8e8 +// Size: 0x8f8 class CPostProcessingVolume : public CBaseTrigger { -private: - [[maybe_unused]] uint8_t __pad0898[0x10]; // 0x898 public: // MNetworkEnable - CStrongHandle< InfoForResourceTypeCPostProcessingResource > m_hPostSettings; // 0x8a8 + CStrongHandle< InfoForResourceTypeCPostProcessingResource > m_hPostSettings; // 0x8b8 // MNetworkEnable - float m_flFadeDuration; // 0x8b0 + float m_flFadeDuration; // 0x8c0 // MNetworkEnable - float m_flMinLogExposure; // 0x8b4 + float m_flMinLogExposure; // 0x8c4 // MNetworkEnable - float m_flMaxLogExposure; // 0x8b8 + float m_flMaxLogExposure; // 0x8c8 // MNetworkEnable - float m_flMinExposure; // 0x8bc + float m_flMinExposure; // 0x8cc // MNetworkEnable - float m_flMaxExposure; // 0x8c0 + float m_flMaxExposure; // 0x8d0 // MNetworkEnable - float m_flExposureCompensation; // 0x8c4 + float m_flExposureCompensation; // 0x8d4 // MNetworkEnable - float m_flExposureFadeSpeedUp; // 0x8c8 + float m_flExposureFadeSpeedUp; // 0x8d8 // MNetworkEnable - float m_flExposureFadeSpeedDown; // 0x8cc + float m_flExposureFadeSpeedDown; // 0x8dc // MNetworkEnable - float m_flTonemapEVSmoothingRange; // 0x8d0 + float m_flTonemapEVSmoothingRange; // 0x8e0 // MNetworkEnable - bool m_bMaster; // 0x8d4 + bool m_bMaster; // 0x8e4 // MNetworkEnable - bool m_bExposureControl; // 0x8d5 + bool m_bExposureControl; // 0x8e5 private: - [[maybe_unused]] uint8_t __pad08d6[0x2]; // 0x8d6 + [[maybe_unused]] uint8_t __pad08e6[0x2]; // 0x8e6 public: // MNetworkEnable - float m_flRate; // 0x8d8 + float m_flRate; // 0x8e8 // MNetworkEnable - float m_flTonemapPercentTarget; // 0x8dc + float m_flTonemapPercentTarget; // 0x8ec // MNetworkEnable - float m_flTonemapPercentBrightPixels; // 0x8e0 + float m_flTonemapPercentBrightPixels; // 0x8f0 // MNetworkEnable - float m_flTonemapMinAvgLum; // 0x8e4 + float m_flTonemapMinAvgLum; // 0x8f4 }; // Alignment: 5 -// Size: 0xc80 +// Size: 0xc90 class CEnvParticleGlow : public CParticleSystem { public: // MNetworkEnable - float m_flAlphaScale; // 0xc68 + float m_flAlphaScale; // 0xc78 // MNetworkEnable - float m_flRadiusScale; // 0xc6c + float m_flRadiusScale; // 0xc7c // MNetworkEnable - float m_flSelfIllumScale; // 0xc70 + float m_flSelfIllumScale; // 0xc80 // MNetworkEnable - Color m_ColorTint; // 0xc74 + Color m_ColorTint; // 0xc84 // MNetworkEnable - CStrongHandle< InfoForResourceTypeCTextureBase > m_hTextureOverride; // 0xc78 + CStrongHandle< InfoForResourceTypeCTextureBase > m_hTextureOverride; // 0xc88 }; // Alignment: 8 -// Size: 0x728 +// Size: 0x738 class CTextureBasedAnimatable : public CBaseModelEntity { public: // MNetworkEnable - bool m_bLoop; // 0x6f0 + bool m_bLoop; // 0x700 private: - [[maybe_unused]] uint8_t __pad06f1[0x3]; // 0x6f1 + [[maybe_unused]] uint8_t __pad0701[0x3]; // 0x701 public: // MNetworkEnable - float m_flFPS; // 0x6f4 + float m_flFPS; // 0x704 // MNetworkEnable - CStrongHandle< InfoForResourceTypeCTextureBase > m_hPositionKeys; // 0x6f8 + CStrongHandle< InfoForResourceTypeCTextureBase > m_hPositionKeys; // 0x708 // MNetworkEnable - CStrongHandle< InfoForResourceTypeCTextureBase > m_hRotationKeys; // 0x700 + CStrongHandle< InfoForResourceTypeCTextureBase > m_hRotationKeys; // 0x710 // MNetworkEnable - Vector m_vAnimationBoundsMin; // 0x708 + Vector m_vAnimationBoundsMin; // 0x718 // MNetworkEnable - Vector m_vAnimationBoundsMax; // 0x714 + Vector m_vAnimationBoundsMax; // 0x724 // MNetworkEnable - float m_flStartTime; // 0x720 + float m_flStartTime; // 0x730 // MNetworkEnable - float m_flStartFrame; // 0x724 + float m_flStartFrame; // 0x734 }; // Alignment: 0 -// Size: 0x6f0 +// Size: 0x700 class CWorld : public CBaseModelEntity { public: // No members available }; -// Alignment: 11 -// Size: 0x820 +// Alignment: 13 +// Size: 0x930 class CBaseAnimGraph : public CBaseModelEntity { -private: - [[maybe_unused]] uint8_t __pad06f0[0x10]; // 0x6f0 public: // MNetworkEnable - PhysicsRagdollPose_t* m_pRagdollPose; // 0x700 + bool m_bInitiallyPopulateInterpHistory; // 0x708 + // MNetworkEnable + bool m_bShouldAnimateDuringGameplayPause; // 0x709 +private: + [[maybe_unused]] uint8_t __pad070a[0x6]; // 0x70a +public: + IChoreoServices* m_pChoreoServices; // 0x710 + // MNetworkEnable + bool m_bAnimGraphUpdateEnabled; // 0x718 +private: + [[maybe_unused]] uint8_t __pad0719[0x93]; // 0x719 +public: + // MNetworkDisable + float m_flLastEventAnimTime; // 0x7ac +private: + [[maybe_unused]] uint8_t __pad07b0[0x4]; // 0x7b0 +public: + // MNetworkDisable + AnimationUpdateListHandle_t m_hAnimationUpdate; // 0x7b4 + float m_flMaxSlopeDistance; // 0x7b8 + Vector m_vLastSlopeCheckPos; // 0x7bc + bool m_bAnimGraphDirty; // 0x7c8 +private: + [[maybe_unused]] uint8_t __pad07c9[0x3]; // 0x7c9 +public: + // MNetworkEnable + Vector m_vecForce; // 0x7cc + // MNetworkEnable + int32_t m_nForceBone; // 0x7d8 +private: + [[maybe_unused]] uint8_t __pad07dc[0x14]; // 0x7dc +public: + // MNetworkEnable + PhysicsRagdollPose_t* m_pRagdollPose; // 0x7f0 // MNetworkEnable // MNetworkChangeCallback "OnClientRagdollChanged" - bool m_bClientRagdoll; // 0x708 -private: - [[maybe_unused]] uint8_t __pad0709[0x3]; // 0x709 -public: - // MNetworkEnable - Vector m_vecForce; // 0x70c - // MNetworkEnable - int32_t m_nForceBone; // 0x718 - // MNetworkEnable - bool m_bShouldAnimateDuringGameplayPause; // 0x71c - // MNetworkEnable - bool m_bAnimGraphUpdateEnabled; // 0x71d - // MNetworkEnable - bool m_bInitiallyPopulateInterpHistory; // 0x71e -private: - [[maybe_unused]] uint8_t __pad071f[0x1]; // 0x71f -public: - float m_flMaxSlopeDistance; // 0x720 - Vector m_vLastSlopeCheckPos; // 0x724 - IChoreoServices* m_pChoreoServices; // 0x730 - bool m_bAnimGraphDirty; // 0x738 + bool m_bClientRagdoll; // 0x7f8 }; // Alignment: 4 -// Size: 0x860 +// Size: 0x970 class CBaseProp : public CBaseAnimGraph { public: - bool m_bModelOverrodeBlockLOS; // 0x820 -private: - [[maybe_unused]] uint8_t __pad0821[0x3]; // 0x821 -public: - int32_t m_iShapeType; // 0x824 - bool m_bConformToCollisionBounds; // 0x828 -private: - [[maybe_unused]] uint8_t __pad0829[0x3]; // 0x829 -public: - matrix3x4_t m_mPreferredCatchTransform; // 0x82c -}; - -// Alignment: 34 -// Size: 0x998 -class CBreakableProp : public CBaseProp -{ -private: - [[maybe_unused]] uint8_t __pad0860[0x10]; // 0x860 -public: - CEntityIOOutput m_OnBreak; // 0x870 - CEntityOutputTemplate< float32 > m_OnHealthChanged; // 0x898 - CEntityIOOutput m_OnTakeDamage; // 0x8c0 - float m_impactEnergyScale; // 0x8e8 - int32_t m_iMinHealthDmg; // 0x8ec - QAngle m_preferredCarryAngles; // 0x8f0 - float m_flPressureDelay; // 0x8fc - CHandle< CBaseEntity > m_hBreaker; // 0x900 - PerformanceMode_t m_PerformanceMode; // 0x904 - float m_flDmgModBullet; // 0x908 - float m_flDmgModClub; // 0x90c - float m_flDmgModExplosive; // 0x910 - float m_flDmgModFire; // 0x914 - CUtlSymbolLarge m_iszPhysicsDamageTableName; // 0x918 - CUtlSymbolLarge m_iszBasePropData; // 0x920 - int32_t m_iInteractions; // 0x928 - GameTime_t m_flPreventDamageBeforeTime; // 0x92c - bool m_bHasBreakPiecesOrCommands; // 0x930 + bool m_bModelOverrodeBlockLOS; // 0x930 private: [[maybe_unused]] uint8_t __pad0931[0x3]; // 0x931 public: - float m_explodeDamage; // 0x934 - float m_explodeRadius; // 0x938 + int32_t m_iShapeType; // 0x934 + bool m_bConformToCollisionBounds; // 0x938 private: - [[maybe_unused]] uint8_t __pad093c[0x4]; // 0x93c + [[maybe_unused]] uint8_t __pad0939[0x3]; // 0x939 public: - float m_explosionDelay; // 0x940 + matrix3x4_t m_mPreferredCatchTransform; // 0x93c +}; + +// Alignment: 34 +// Size: 0xaa8 +class CBreakableProp : public CBaseProp +{ +public: + CEntityIOOutput m_OnBreak; // 0x980 + CEntityOutputTemplate< float32 > m_OnHealthChanged; // 0x9a8 + CEntityIOOutput m_OnTakeDamage; // 0x9d0 + float m_impactEnergyScale; // 0x9f8 + int32_t m_iMinHealthDmg; // 0x9fc + QAngle m_preferredCarryAngles; // 0xa00 + float m_flPressureDelay; // 0xa0c + CHandle< CBaseEntity > m_hBreaker; // 0xa10 + PerformanceMode_t m_PerformanceMode; // 0xa14 + float m_flDmgModBullet; // 0xa18 + float m_flDmgModClub; // 0xa1c + float m_flDmgModExplosive; // 0xa20 + float m_flDmgModFire; // 0xa24 + CUtlSymbolLarge m_iszPhysicsDamageTableName; // 0xa28 + CUtlSymbolLarge m_iszBasePropData; // 0xa30 + int32_t m_iInteractions; // 0xa38 + GameTime_t m_flPreventDamageBeforeTime; // 0xa3c + bool m_bHasBreakPiecesOrCommands; // 0xa40 private: - [[maybe_unused]] uint8_t __pad0944[0x4]; // 0x944 + [[maybe_unused]] uint8_t __pad0a41[0x3]; // 0xa41 public: - CUtlSymbolLarge m_explosionBuildupSound; // 0x948 - CUtlSymbolLarge m_explosionCustomEffect; // 0x950 - CUtlSymbolLarge m_explosionCustomSound; // 0x958 - CUtlSymbolLarge m_explosionModifier; // 0x960 - CHandle< CBasePlayerPawn > m_hPhysicsAttacker; // 0x968 - GameTime_t m_flLastPhysicsInfluenceTime; // 0x96c - bool m_bOriginalBlockLOS; // 0x970 + float m_explodeDamage; // 0xa44 + float m_explodeRadius; // 0xa48 private: - [[maybe_unused]] uint8_t __pad0971[0x3]; // 0x971 + [[maybe_unused]] uint8_t __pad0a4c[0x4]; // 0xa4c public: - float m_flDefaultFadeScale; // 0x974 - CHandle< CBaseEntity > m_hLastAttacker; // 0x978 - CHandle< CBaseEntity > m_hFlareEnt; // 0x97c - bool m_bUsePuntSound; // 0x980 + float m_explosionDelay; // 0xa50 private: - [[maybe_unused]] uint8_t __pad0981[0x7]; // 0x981 + [[maybe_unused]] uint8_t __pad0a54[0x4]; // 0xa54 public: - CUtlSymbolLarge m_iszPuntSound; // 0x988 + CUtlSymbolLarge m_explosionBuildupSound; // 0xa58 + CUtlSymbolLarge m_explosionCustomEffect; // 0xa60 + CUtlSymbolLarge m_explosionCustomSound; // 0xa68 + CUtlSymbolLarge m_explosionModifier; // 0xa70 + CHandle< CBasePlayerPawn > m_hPhysicsAttacker; // 0xa78 + GameTime_t m_flLastPhysicsInfluenceTime; // 0xa7c + bool m_bOriginalBlockLOS; // 0xa80 +private: + [[maybe_unused]] uint8_t __pad0a81[0x3]; // 0xa81 +public: + float m_flDefaultFadeScale; // 0xa84 + CHandle< CBaseEntity > m_hLastAttacker; // 0xa88 + CHandle< CBaseEntity > m_hFlareEnt; // 0xa8c + bool m_bUsePuntSound; // 0xa90 +private: + [[maybe_unused]] uint8_t __pad0a91[0x7]; // 0xa91 +public: + CUtlSymbolLarge m_iszPuntSound; // 0xa98 // MNetworkEnable - bool m_noGhostCollision; // 0x990 + bool m_noGhostCollision; // 0xaa0 }; // Alignment: 23 -// Size: 0xa98 +// Size: 0xba8 class CDynamicProp : public CBreakableProp { -private: - [[maybe_unused]] uint8_t __pad0998[0x8]; // 0x998 public: - bool m_bCreateNavObstacle; // 0x9a0 + bool m_bCreateNavObstacle; // 0xab0 // MNetworkEnable - bool m_bUseHitboxesForRenderBox; // 0x9a1 + bool m_bUseHitboxesForRenderBox; // 0xab1 // MNetworkEnable - bool m_bUseAnimGraph; // 0x9a2 + bool m_bUseAnimGraph; // 0xab2 private: - [[maybe_unused]] uint8_t __pad09a3[0x5]; // 0x9a3 + [[maybe_unused]] uint8_t __pad0ab3[0x5]; // 0xab3 public: - CEntityIOOutput m_pOutputAnimBegun; // 0x9a8 - CEntityIOOutput m_pOutputAnimOver; // 0x9d0 - CEntityIOOutput m_pOutputAnimLoopCycleOver; // 0x9f8 - CEntityIOOutput m_OnAnimReachedStart; // 0xa20 - CEntityIOOutput m_OnAnimReachedEnd; // 0xa48 - CUtlSymbolLarge m_iszDefaultAnim; // 0xa70 - AnimLoopMode_t m_nDefaultAnimLoopMode; // 0xa78 - bool m_bAnimateOnServer; // 0xa7c - bool m_bRandomizeCycle; // 0xa7d - bool m_bStartDisabled; // 0xa7e - bool m_bScriptedMovement; // 0xa7f - bool m_bFiredStartEndOutput; // 0xa80 - bool m_bForceNpcExclude; // 0xa81 - bool m_bCreateNonSolid; // 0xa82 - bool m_bIsOverrideProp; // 0xa83 - int32_t m_iInitialGlowState; // 0xa84 - int32_t m_nGlowRange; // 0xa88 - int32_t m_nGlowRangeMin; // 0xa8c - Color m_glowColor; // 0xa90 - int32_t m_nGlowTeam; // 0xa94 + CEntityIOOutput m_pOutputAnimBegun; // 0xab8 + CEntityIOOutput m_pOutputAnimOver; // 0xae0 + CEntityIOOutput m_pOutputAnimLoopCycleOver; // 0xb08 + CEntityIOOutput m_OnAnimReachedStart; // 0xb30 + CEntityIOOutput m_OnAnimReachedEnd; // 0xb58 + CUtlSymbolLarge m_iszDefaultAnim; // 0xb80 + AnimLoopMode_t m_nDefaultAnimLoopMode; // 0xb88 + bool m_bAnimateOnServer; // 0xb8c + bool m_bRandomizeCycle; // 0xb8d + bool m_bStartDisabled; // 0xb8e + bool m_bScriptedMovement; // 0xb8f + bool m_bFiredStartEndOutput; // 0xb90 + bool m_bForceNpcExclude; // 0xb91 + bool m_bCreateNonSolid; // 0xb92 + bool m_bIsOverrideProp; // 0xb93 + int32_t m_iInitialGlowState; // 0xb94 + int32_t m_nGlowRange; // 0xb98 + int32_t m_nGlowRangeMin; // 0xb9c + Color m_glowColor; // 0xba0 + int32_t m_nGlowTeam; // 0xba4 }; // Alignment: 0 -// Size: 0xa98 +// Size: 0xba8 class CDynamicPropAlias_dynamic_prop : public CDynamicProp { public: @@ -15066,7 +13996,7 @@ public: }; // Alignment: 0 -// Size: 0xa98 +// Size: 0xba8 class CDynamicPropAlias_prop_dynamic_override : public CDynamicProp { public: @@ -15074,7 +14004,7 @@ public: }; // Alignment: 0 -// Size: 0xa98 +// Size: 0xba8 class CDynamicPropAlias_cable_dynamic : public CDynamicProp { public: @@ -15082,118 +14012,110 @@ public: }; // Alignment: 10 -// Size: 0xac0 +// Size: 0xad0 class CColorCorrectionVolume : public CBaseTrigger { public: // MNetworkEnable - bool m_bEnabled; // 0x898 + bool m_bEnabled; // 0x8a8 private: - [[maybe_unused]] uint8_t __pad0899[0x3]; // 0x899 + [[maybe_unused]] uint8_t __pad08a9[0x3]; // 0x8a9 public: // MNetworkEnable - float m_MaxWeight; // 0x89c + float m_MaxWeight; // 0x8ac // MNetworkEnable - float m_FadeDuration; // 0x8a0 - bool m_bStartDisabled; // 0x8a4 + float m_FadeDuration; // 0x8b0 + bool m_bStartDisabled; // 0x8b4 private: - [[maybe_unused]] uint8_t __pad08a5[0x3]; // 0x8a5 + [[maybe_unused]] uint8_t __pad08b5[0x3]; // 0x8b5 public: // MNetworkEnable - float m_Weight; // 0x8a8 + float m_Weight; // 0x8b8 // MNetworkEnable - char m_lookupFilename[512]; // 0x8ac - float m_LastEnterWeight; // 0xaac - GameTime_t m_LastEnterTime; // 0xab0 - float m_LastExitWeight; // 0xab4 - GameTime_t m_LastExitTime; // 0xab8 + char m_lookupFilename[512]; // 0x8bc + float m_LastEnterWeight; // 0xabc + GameTime_t m_LastEnterTime; // 0xac0 + float m_LastExitWeight; // 0xac4 + GameTime_t m_LastExitTime; // 0xac8 }; // Alignment: 30 -// Size: 0x918 +// Size: 0xa28 class CPointCommentaryNode : public CBaseAnimGraph { public: - CUtlSymbolLarge m_iszPreCommands; // 0x820 - CUtlSymbolLarge m_iszPostCommands; // 0x828 + CUtlSymbolLarge m_iszPreCommands; // 0x930 + CUtlSymbolLarge m_iszPostCommands; // 0x938 // MNetworkEnable - CUtlSymbolLarge m_iszCommentaryFile; // 0x830 - CUtlSymbolLarge m_iszViewTarget; // 0x838 - CHandle< CBaseEntity > m_hViewTarget; // 0x840 - CHandle< CBaseEntity > m_hViewTargetAngles; // 0x844 - CUtlSymbolLarge m_iszViewPosition; // 0x848 + CUtlSymbolLarge m_iszCommentaryFile; // 0x940 + CUtlSymbolLarge m_iszViewTarget; // 0x948 + CHandle< CBaseEntity > m_hViewTarget; // 0x950 + CHandle< CBaseEntity > m_hViewTargetAngles; // 0x954 + CUtlSymbolLarge m_iszViewPosition; // 0x958 // MNetworkEnable - CHandle< CBaseEntity > m_hViewPosition; // 0x850 - CHandle< CBaseEntity > m_hViewPositionMover; // 0x854 - bool m_bPreventMovement; // 0x858 - bool m_bUnderCrosshair; // 0x859 - bool m_bUnstoppable; // 0x85a + CHandle< CBaseEntity > m_hViewPosition; // 0x960 + CHandle< CBaseEntity > m_hViewPositionMover; // 0x964 + bool m_bPreventMovement; // 0x968 + bool m_bUnderCrosshair; // 0x969 + bool m_bUnstoppable; // 0x96a private: - [[maybe_unused]] uint8_t __pad085b[0x1]; // 0x85b + [[maybe_unused]] uint8_t __pad096b[0x1]; // 0x96b public: - GameTime_t m_flFinishedTime; // 0x85c - Vector m_vecFinishOrigin; // 0x860 - QAngle m_vecOriginalAngles; // 0x86c - QAngle m_vecFinishAngles; // 0x878 - bool m_bPreventChangesWhileMoving; // 0x884 - bool m_bDisabled; // 0x885 + GameTime_t m_flFinishedTime; // 0x96c + Vector m_vecFinishOrigin; // 0x970 + QAngle m_vecOriginalAngles; // 0x97c + QAngle m_vecFinishAngles; // 0x988 + bool m_bPreventChangesWhileMoving; // 0x994 + bool m_bDisabled; // 0x995 private: - [[maybe_unused]] uint8_t __pad0886[0x2]; // 0x886 + [[maybe_unused]] uint8_t __pad0996[0x2]; // 0x996 public: - Vector m_vecTeleportOrigin; // 0x888 - GameTime_t m_flAbortedPlaybackAt; // 0x894 - CEntityIOOutput m_pOnCommentaryStarted; // 0x898 - CEntityIOOutput m_pOnCommentaryStopped; // 0x8c0 + Vector m_vecTeleportOrigin; // 0x998 + GameTime_t m_flAbortedPlaybackAt; // 0x9a4 + CEntityIOOutput m_pOnCommentaryStarted; // 0x9a8 + CEntityIOOutput m_pOnCommentaryStopped; // 0x9d0 // MNetworkEnable - bool m_bActive; // 0x8e8 + bool m_bActive; // 0x9f8 private: - [[maybe_unused]] uint8_t __pad08e9[0x3]; // 0x8e9 + [[maybe_unused]] uint8_t __pad09f9[0x3]; // 0x9f9 public: // MNetworkEnable - GameTime_t m_flStartTime; // 0x8ec + GameTime_t m_flStartTime; // 0x9fc // MNetworkEnable - float m_flStartTimeInCommentary; // 0x8f0 + float m_flStartTimeInCommentary; // 0xa00 private: - [[maybe_unused]] uint8_t __pad08f4[0x4]; // 0x8f4 + [[maybe_unused]] uint8_t __pad0a04[0x4]; // 0xa04 public: // MNetworkEnable - CUtlSymbolLarge m_iszTitle; // 0x8f8 + CUtlSymbolLarge m_iszTitle; // 0xa08 // MNetworkEnable - CUtlSymbolLarge m_iszSpeakers; // 0x900 + CUtlSymbolLarge m_iszSpeakers; // 0xa10 // MNetworkEnable - int32_t m_iNodeNumber; // 0x908 + int32_t m_iNodeNumber; // 0xa18 // MNetworkEnable - int32_t m_iNodeNumberMax; // 0x90c + int32_t m_iNodeNumberMax; // 0xa1c // MNetworkEnable - bool m_bListenedTo; // 0x910 + bool m_bListenedTo; // 0xa20 }; // Alignment: 0 -// Size: 0x760 +// Size: 0x770 class CCommentaryViewPosition : public CSprite { public: // No members available }; -// Alignment: 0 -// Size: 0x978 -class CFuncWater : public CBaseDoor -{ -public: - // No members available -}; - // Alignment: 1 -// Size: 0x980 +// Size: 0x990 class CRotDoor : public CBaseDoor { public: - bool m_bSolidBsp; // 0x978 + bool m_bSolidBsp; // 0x988 }; // Alignment: 0 -// Size: 0x820 +// Size: 0x930 class CItemSoda : public CBaseAnimGraph { public: @@ -15201,7 +14123,7 @@ public: }; // Alignment: 0 -// Size: 0x898 +// Size: 0x8a8 class CPrecipitation : public CBaseTrigger { public: @@ -15209,45 +14131,45 @@ public: }; // Alignment: 19 -// Size: 0x838 +// Size: 0x848 class CEnvBeam : public CBeam { public: - int32_t m_active; // 0x790 + int32_t m_active; // 0x7a0 private: - [[maybe_unused]] uint8_t __pad0794[0x4]; // 0x794 + [[maybe_unused]] uint8_t __pad07a4[0x4]; // 0x7a4 public: - CStrongHandle< InfoForResourceTypeIMaterial2 > m_spriteTexture; // 0x798 - CUtlSymbolLarge m_iszStartEntity; // 0x7a0 - CUtlSymbolLarge m_iszEndEntity; // 0x7a8 - float m_life; // 0x7b0 - float m_boltWidth; // 0x7b4 - float m_noiseAmplitude; // 0x7b8 - int32_t m_speed; // 0x7bc - float m_restrike; // 0x7c0 + CStrongHandle< InfoForResourceTypeIMaterial2 > m_spriteTexture; // 0x7a8 + CUtlSymbolLarge m_iszStartEntity; // 0x7b0 + CUtlSymbolLarge m_iszEndEntity; // 0x7b8 + float m_life; // 0x7c0 + float m_boltWidth; // 0x7c4 + float m_noiseAmplitude; // 0x7c8 + int32_t m_speed; // 0x7cc + float m_restrike; // 0x7d0 private: - [[maybe_unused]] uint8_t __pad07c4[0x4]; // 0x7c4 + [[maybe_unused]] uint8_t __pad07d4[0x4]; // 0x7d4 public: - CUtlSymbolLarge m_iszSpriteName; // 0x7c8 - int32_t m_frameStart; // 0x7d0 - Vector m_vEndPointWorld; // 0x7d4 - Vector m_vEndPointRelative; // 0x7e0 - float m_radius; // 0x7ec - Touch_t m_TouchType; // 0x7f0 -private: - [[maybe_unused]] uint8_t __pad07f4[0x4]; // 0x7f4 -public: - CUtlSymbolLarge m_iFilterName; // 0x7f8 - CHandle< CBaseEntity > m_hFilter; // 0x800 + CUtlSymbolLarge m_iszSpriteName; // 0x7d8 + int32_t m_frameStart; // 0x7e0 + Vector m_vEndPointWorld; // 0x7e4 + Vector m_vEndPointRelative; // 0x7f0 + float m_radius; // 0x7fc + Touch_t m_TouchType; // 0x800 private: [[maybe_unused]] uint8_t __pad0804[0x4]; // 0x804 public: - CUtlSymbolLarge m_iszDecal; // 0x808 - CEntityIOOutput m_OnTouchedByEntity; // 0x810 + CUtlSymbolLarge m_iFilterName; // 0x808 + CHandle< CBaseEntity > m_hFilter; // 0x810 +private: + [[maybe_unused]] uint8_t __pad0814[0x4]; // 0x814 +public: + CUtlSymbolLarge m_iszDecal; // 0x818 + CEntityIOOutput m_OnTouchedByEntity; // 0x820 }; // Alignment: 0 -// Size: 0x7b0 +// Size: 0x7c0 class CPushable : public CBreakable { public: @@ -15255,7 +14177,7 @@ public: }; // Alignment: 0 -// Size: 0x7a0 +// Size: 0x7b0 class CFuncLadderAlias_func_useableladder : public CFuncLadder { public: @@ -15263,76 +14185,104 @@ public: }; // Alignment: 9 -// Size: 0x730 +// Size: 0x740 class CFuncMonitor : public CFuncBrush { public: // MNetworkEnable - CUtlString m_targetCamera; // 0x710 + CUtlString m_targetCamera; // 0x720 // MNetworkEnable - int32_t m_nResolutionEnum; // 0x718 + int32_t m_nResolutionEnum; // 0x728 // MNetworkEnable - bool m_bRenderShadows; // 0x71c + bool m_bRenderShadows; // 0x72c // MNetworkEnable - bool m_bUseUniqueColorTarget; // 0x71d + bool m_bUseUniqueColorTarget; // 0x72d private: - [[maybe_unused]] uint8_t __pad071e[0x2]; // 0x71e + [[maybe_unused]] uint8_t __pad072e[0x2]; // 0x72e public: // MNetworkEnable - CUtlString m_brushModelName; // 0x720 + CUtlString m_brushModelName; // 0x730 // MNetworkEnable - CHandle< CBaseEntity > m_hTargetCamera; // 0x728 + CHandle< CBaseEntity > m_hTargetCamera; // 0x738 // MNetworkEnable - bool m_bEnabled; // 0x72c + bool m_bEnabled; // 0x73c // MNetworkEnable - bool m_bDraw3DSkybox; // 0x72d - bool m_bStartEnabled; // 0x72e + bool m_bDraw3DSkybox; // 0x73d + bool m_bStartEnabled; // 0x73e }; // Alignment: 0 -// Size: 0x820 +// Size: 0x830 class CFuncMoveLinearAlias_momentary_door : public CFuncMoveLinear { public: // No members available }; +// Alignment: 3 +// Size: 0x7b0 +class CGunTarget : public CBaseToggle +{ +public: + bool m_on; // 0x780 +private: + [[maybe_unused]] uint8_t __pad0781[0x3]; // 0x781 +public: + CHandle< CBaseEntity > m_hTargetEnt; // 0x784 + CEntityIOOutput m_OnDeath; // 0x788 +}; + +// Alignment: 3 +// Size: 0x8c0 +class CTriggerGameEvent : public CBaseTrigger +{ +public: + // MNetworkEnable + CUtlString m_strStartTouchEventName; // 0x8a8 + // MNetworkEnable + CUtlString m_strEndTouchEventName; // 0x8b0 + // MNetworkEnable + CUtlString m_strTriggerID; // 0x8b8 +}; + // Alignment: 0 -// Size: 0x820 -class CFuncWaterAnalog : public CFuncMoveLinear +// Size: 0x708 +class CRuleBrushEntity : public CRuleEntity { public: // No members available }; -// Alignment: 3 -// Size: 0x7a0 -class CGunTarget : public CBaseToggle +// Alignment: 0 +// Size: 0x710 +class CGameEnd : public CRulePointEntity { public: - bool m_on; // 0x770 -private: - [[maybe_unused]] uint8_t __pad0771[0x3]; // 0x771 -public: - CHandle< CBaseEntity > m_hTargetEnt; // 0x774 - CEntityIOOutput m_OnDeath; // 0x778 + // No members available }; -// Alignment: 3 -// Size: 0x8b0 -class CTriggerGameEvent : public CBaseTrigger +// Alignment: 2 +// Size: 0x730 +class CGameText : public CRulePointEntity { public: - // MNetworkEnable - CUtlString m_strStartTouchEventName; // 0x898 - // MNetworkEnable - CUtlString m_strEndTouchEventName; // 0x8a0 - // MNetworkEnable - CUtlString m_strTriggerID; // 0x8a8 + CUtlSymbolLarge m_iszMessage; // 0x710 + hudtextparms_t m_textParms; // 0x718 +}; + +// Alignment: 4 +// Size: 0x7a8 +class CGamePlayerZone : public CRuleBrushEntity +{ +public: + CEntityIOOutput m_OnPlayerInZone; // 0x708 + CEntityIOOutput m_OnPlayerOutZone; // 0x730 + CEntityOutputTemplate< int32 > m_PlayersInCount; // 0x758 + CEntityOutputTemplate< int32 > m_PlayersOutCount; // 0x780 }; // Alignment: 0 -// Size: 0x730 +// Size: 0x740 class CSimpleMarkupVolumeTagged : public CMarkupVolumeTagged { public: @@ -15340,7 +14290,7 @@ public: }; // Alignment: 0 -// Size: 0x730 +// Size: 0x740 class CMarkupVolumeTagged_Nav : public CMarkupVolumeTagged { public: @@ -15348,27 +14298,27 @@ public: }; // Alignment: 1 -// Size: 0x750 +// Size: 0x760 class CMarkupVolumeTagged_NavGame : public CMarkupVolumeWithRef { public: - bool m_bFloodFillAttribute; // 0x748 + bool m_bFloodFillAttribute; // 0x758 }; // Alignment: 4 -// Size: 0x748 +// Size: 0x758 class CFuncElectrifiedVolume : public CFuncBrush { public: // MNetworkEnable - CUtlSymbolLarge m_EffectName; // 0x710 - CUtlSymbolLarge m_EffectInterpenetrateName; // 0x718 - CUtlSymbolLarge m_EffectZapName; // 0x720 - CUtlSymbolLarge m_iszEffectSource; // 0x728 + CUtlSymbolLarge m_EffectName; // 0x720 + CUtlSymbolLarge m_EffectInterpenetrateName; // 0x728 + CUtlSymbolLarge m_EffectZapName; // 0x730 + CUtlSymbolLarge m_iszEffectSource; // 0x738 }; // Alignment: 0 -// Size: 0x4d0 +// Size: 0x4e0 class CPathCornerCrash : public CPathCorner { public: @@ -15376,23 +14326,23 @@ public: }; // Alignment: 1 -// Size: 0x828 +// Size: 0x938 class CConstraintAnchor : public CBaseAnimGraph { public: - float m_massScale; // 0x820 + float m_massScale; // 0x930 }; // Alignment: 1 -// Size: 0xaa0 +// Size: 0xbb0 class COrnamentProp : public CDynamicProp { public: - CUtlSymbolLarge m_initialOwner; // 0xa98 + CUtlSymbolLarge m_initialOwner; // 0xba8 }; // Alignment: 0 -// Size: 0x748 +// Size: 0x758 class CRopeKeyframeAlias_move_rope : public CRopeKeyframe { public: @@ -15400,7 +14350,7 @@ public: }; // Alignment: 0 -// Size: 0xa00 +// Size: 0xa10 class CSceneEntityAlias_logic_choreographed_scene : public CSceneEntity { public: @@ -15408,35 +14358,35 @@ public: }; // Alignment: 5 -// Size: 0xa18 +// Size: 0xa28 class CInstancedSceneEntity : public CSceneEntity { public: - CHandle< CBaseEntity > m_hOwner; // 0xa00 - bool m_bHadOwner; // 0xa04 + CHandle< CBaseEntity > m_hOwner; // 0xa10 + bool m_bHadOwner; // 0xa14 private: - [[maybe_unused]] uint8_t __pad0a05[0x3]; // 0xa05 + [[maybe_unused]] uint8_t __pad0a15[0x3]; // 0xa15 public: - float m_flPostSpeakDelay; // 0xa08 - float m_flPreDelay; // 0xa0c - bool m_bIsBackground; // 0xa10 + float m_flPostSpeakDelay; // 0xa18 + float m_flPreDelay; // 0xa1c + bool m_bIsBackground; // 0xa20 }; // Alignment: 3 -// Size: 0x8c0 +// Size: 0x8d0 class CTriggerSoundscape : public CBaseTrigger { public: - CHandle< CEnvSoundscapeTriggerable > m_hSoundscape; // 0x898 + CHandle< CEnvSoundscapeTriggerable > m_hSoundscape; // 0x8a8 private: - [[maybe_unused]] uint8_t __pad089c[0x4]; // 0x89c + [[maybe_unused]] uint8_t __pad08ac[0x4]; // 0x8ac public: - CUtlSymbolLarge m_SoundscapeName; // 0x8a0 - CUtlVector< CHandle< CBasePlayerPawn > > m_spectators; // 0x8a8 + CUtlSymbolLarge m_SoundscapeName; // 0x8b0 + CUtlVector< CHandle< CBasePlayerPawn > > m_spectators; // 0x8b8 }; // Alignment: 0 -// Size: 0x760 +// Size: 0x770 class CSpriteAlias_env_glow : public CSprite { public: @@ -15444,82 +14394,82 @@ public: }; // Alignment: 1 -// Size: 0x850 +// Size: 0x878 class CFuncTankTrain : public CFuncTrackTrain { public: - CEntityIOOutput m_OnDeath; // 0x828 + CEntityIOOutput m_OnDeath; // 0x850 }; // Alignment: 5 -// Size: 0x798 +// Size: 0x7a8 class CBasePlatTrain : public CBaseToggle { public: - CUtlSymbolLarge m_NoiseMoving; // 0x770 - CUtlSymbolLarge m_NoiseArrived; // 0x778 + CUtlSymbolLarge m_NoiseMoving; // 0x780 + CUtlSymbolLarge m_NoiseArrived; // 0x788 private: - [[maybe_unused]] uint8_t __pad0780[0x8]; // 0x780 + [[maybe_unused]] uint8_t __pad0790[0x8]; // 0x790 public: - float m_volume; // 0x788 - float m_flTWidth; // 0x78c - float m_flTLength; // 0x790 + float m_volume; // 0x798 + float m_flTWidth; // 0x79c + float m_flTLength; // 0x7a0 }; // Alignment: 1 -// Size: 0x7a0 +// Size: 0x7b0 class CFuncPlat : public CBasePlatTrain { public: - CUtlSymbolLarge m_sNoise; // 0x798 + CUtlSymbolLarge m_sNoise; // 0x7a8 }; // Alignment: 2 -// Size: 0x7b8 +// Size: 0x7c8 class CFuncPlatRot : public CFuncPlat { public: - QAngle m_end; // 0x7a0 - QAngle m_start; // 0x7ac + QAngle m_end; // 0x7b0 + QAngle m_start; // 0x7bc }; // Alignment: 6 -// Size: 0x7b8 +// Size: 0x7c8 class CFuncTrain : public CBasePlatTrain { public: - CHandle< CBaseEntity > m_hCurrentTarget; // 0x798 - bool m_activated; // 0x79c + CHandle< CBaseEntity > m_hCurrentTarget; // 0x7a8 + bool m_activated; // 0x7ac private: - [[maybe_unused]] uint8_t __pad079d[0x3]; // 0x79d + [[maybe_unused]] uint8_t __pad07ad[0x3]; // 0x7ad public: - CHandle< CBaseEntity > m_hEnemy; // 0x7a0 - float m_flBlockDamage; // 0x7a4 - GameTime_t m_flNextBlockTime; // 0x7a8 + CHandle< CBaseEntity > m_hEnemy; // 0x7b0 + float m_flBlockDamage; // 0x7b4 + GameTime_t m_flNextBlockTime; // 0x7b8 private: - [[maybe_unused]] uint8_t __pad07ac[0x4]; // 0x7ac + [[maybe_unused]] uint8_t __pad07bc[0x4]; // 0x7bc public: - CUtlSymbolLarge m_iszLastTarget; // 0x7b0 + CUtlSymbolLarge m_iszLastTarget; // 0x7c0 }; // Alignment: 9 -// Size: 0x7f8 +// Size: 0x808 class CFuncTrackChange : public CFuncPlatRot { public: - CPathTrack* m_trackTop; // 0x7b8 - CPathTrack* m_trackBottom; // 0x7c0 - CFuncTrackTrain* m_train; // 0x7c8 - CUtlSymbolLarge m_trackTopName; // 0x7d0 - CUtlSymbolLarge m_trackBottomName; // 0x7d8 - CUtlSymbolLarge m_trainName; // 0x7e0 - TRAIN_CODE m_code; // 0x7e8 - int32_t m_targetState; // 0x7ec - int32_t m_use; // 0x7f0 + CPathTrack* m_trackTop; // 0x7c8 + CPathTrack* m_trackBottom; // 0x7d0 + CFuncTrackTrain* m_train; // 0x7d8 + CUtlSymbolLarge m_trackTopName; // 0x7e0 + CUtlSymbolLarge m_trackBottomName; // 0x7e8 + CUtlSymbolLarge m_trainName; // 0x7f0 + TRAIN_CODE m_code; // 0x7f8 + int32_t m_targetState; // 0x7fc + int32_t m_use; // 0x800 }; // Alignment: 0 -// Size: 0x7f8 +// Size: 0x808 class CFuncTrackAuto : public CFuncTrackChange { public: @@ -15527,31 +14477,31 @@ public: }; // Alignment: 1 -// Size: 0x8c0 +// Size: 0x8d0 class CTriggerRemove : public CBaseTrigger { public: - CEntityIOOutput m_OnRemove; // 0x898 + CEntityIOOutput m_OnRemove; // 0x8a8 }; // Alignment: 1 -// Size: 0x948 +// Size: 0x958 class CScriptTriggerHurt : public CTriggerHurt { public: - Vector m_vExtent; // 0x938 + Vector m_vExtent; // 0x948 }; // Alignment: 1 -// Size: 0x8d0 +// Size: 0x8e0 class CScriptTriggerMultiple : public CTriggerMultiple { public: - Vector m_vExtent; // 0x8c0 + Vector m_vExtent; // 0x8d0 }; // Alignment: 0 -// Size: 0x8c0 +// Size: 0x8d0 class CTriggerOnce : public CTriggerMultiple { public: @@ -15559,85 +14509,85 @@ public: }; // Alignment: 1 -// Size: 0x8d0 +// Size: 0x8e0 class CScriptTriggerOnce : public CTriggerOnce { public: - Vector m_vExtent; // 0x8c0 + Vector m_vExtent; // 0x8d0 }; // Alignment: 15 -// Size: 0x960 +// Size: 0x970 class CTriggerLook : public CTriggerOnce { public: - CHandle< CBaseEntity > m_hLookTarget; // 0x8c0 - float m_flFieldOfView; // 0x8c4 - float m_flLookTime; // 0x8c8 - float m_flLookTimeTotal; // 0x8cc - GameTime_t m_flLookTimeLast; // 0x8d0 - float m_flTimeoutDuration; // 0x8d4 - bool m_bTimeoutFired; // 0x8d8 - bool m_bIsLooking; // 0x8d9 - bool m_b2DFOV; // 0x8da - bool m_bUseVelocity; // 0x8db - CHandle< CBaseEntity > m_hActivator; // 0x8dc + CHandle< CBaseEntity > m_hLookTarget; // 0x8d0 + float m_flFieldOfView; // 0x8d4 + float m_flLookTime; // 0x8d8 + float m_flLookTimeTotal; // 0x8dc + GameTime_t m_flLookTimeLast; // 0x8e0 + float m_flTimeoutDuration; // 0x8e4 + bool m_bTimeoutFired; // 0x8e8 + bool m_bIsLooking; // 0x8e9 + bool m_b2DFOV; // 0x8ea + bool m_bUseVelocity; // 0x8eb + CHandle< CBaseEntity > m_hActivator; // 0x8ec // MNetworkEnable - bool m_bTestOcclusion; // 0x8e0 + bool m_bTestOcclusion; // 0x8f0 private: - [[maybe_unused]] uint8_t __pad08e1[0x7]; // 0x8e1 + [[maybe_unused]] uint8_t __pad08f1[0x7]; // 0x8f1 public: - CEntityIOOutput m_OnTimeout; // 0x8e8 - CEntityIOOutput m_OnStartLook; // 0x910 - CEntityIOOutput m_OnEndLook; // 0x938 + CEntityIOOutput m_OnTimeout; // 0x8f8 + CEntityIOOutput m_OnStartLook; // 0x920 + CEntityIOOutput m_OnEndLook; // 0x948 }; // Alignment: 5 -// Size: 0x8c0 +// Size: 0x8d0 class CTriggerPush : public CBaseTrigger { public: - QAngle m_angPushEntitySpace; // 0x898 - Vector m_vecPushDirEntitySpace; // 0x8a4 - bool m_bTriggerOnStartTouch; // 0x8b0 + QAngle m_angPushEntitySpace; // 0x8a8 + Vector m_vecPushDirEntitySpace; // 0x8b4 + bool m_bTriggerOnStartTouch; // 0x8c0 private: - [[maybe_unused]] uint8_t __pad08b1[0x3]; // 0x8b1 + [[maybe_unused]] uint8_t __pad08c1[0x3]; // 0x8c1 public: - float m_flAlternateTicksFix; // 0x8b4 - float m_flPushSpeed; // 0x8b8 + float m_flAlternateTicksFix; // 0x8c4 + float m_flPushSpeed; // 0x8c8 }; // Alignment: 1 -// Size: 0x8d0 +// Size: 0x8e0 class CScriptTriggerPush : public CTriggerPush { public: - Vector m_vExtent; // 0x8c0 + Vector m_vExtent; // 0x8d0 }; // Alignment: 1 -// Size: 0x8a0 +// Size: 0x8b0 class CTriggerToggleSave : public CBaseTrigger { public: - bool m_bDisabled; // 0x898 + bool m_bDisabled; // 0x8a8 }; // Alignment: 3 -// Size: 0x8a8 +// Size: 0x8b8 class CTriggerSave : public CBaseTrigger { public: - bool m_bForceNewLevelUnit; // 0x898 + bool m_bForceNewLevelUnit; // 0x8a8 private: - [[maybe_unused]] uint8_t __pad0899[0x3]; // 0x899 + [[maybe_unused]] uint8_t __pad08a9[0x3]; // 0x8a9 public: - float m_fDangerousTimer; // 0x89c - int32_t m_minHitPoints; // 0x8a0 + float m_fDangerousTimer; // 0x8ac + int32_t m_minHitPoints; // 0x8b0 }; // Alignment: 0 -// Size: 0x898 +// Size: 0x8a8 class CTriggerGravity : public CBaseTrigger { public: @@ -15645,36 +14595,36 @@ public: }; // Alignment: 5 -// Size: 0x8d8 +// Size: 0x8e8 class CTriggerProximity : public CBaseTrigger { public: - CHandle< CBaseEntity > m_hMeasureTarget; // 0x898 + CHandle< CBaseEntity > m_hMeasureTarget; // 0x8a8 private: - [[maybe_unused]] uint8_t __pad089c[0x4]; // 0x89c + [[maybe_unused]] uint8_t __pad08ac[0x4]; // 0x8ac public: - CUtlSymbolLarge m_iszMeasureTarget; // 0x8a0 - float m_fRadius; // 0x8a8 - int32_t m_nTouchers; // 0x8ac - CEntityOutputTemplate< float32 > m_NearestEntityDistance; // 0x8b0 + CUtlSymbolLarge m_iszMeasureTarget; // 0x8b0 + float m_fRadius; // 0x8b8 + int32_t m_nTouchers; // 0x8bc + CEntityOutputTemplate< float32 > m_NearestEntityDistance; // 0x8c0 }; // Alignment: 4 -// Size: 0x8f8 +// Size: 0x908 class CTriggerImpact : public CTriggerMultiple { public: - float m_flMagnitude; // 0x8c0 - float m_flNoise; // 0x8c4 - float m_flViewkick; // 0x8c8 + float m_flMagnitude; // 0x8d0 + float m_flNoise; // 0x8d4 + float m_flViewkick; // 0x8d8 private: - [[maybe_unused]] uint8_t __pad08cc[0x4]; // 0x8cc + [[maybe_unused]] uint8_t __pad08dc[0x4]; // 0x8dc public: - CEntityOutputTemplate< Vector > m_pOutputForce; // 0x8d0 + CEntityOutputTemplate< Vector > m_pOutputForce; // 0x8e0 }; // Alignment: 0 -// Size: 0x898 +// Size: 0x8a8 class CServerRagdollTrigger : public CBaseTrigger { public: @@ -15682,394 +14632,383 @@ public: }; // Alignment: 2 -// Size: 0x8c8 +// Size: 0x8d8 class CTriggerActiveWeaponDetect : public CBaseTrigger { public: - CEntityIOOutput m_OnTouchedActiveWeapon; // 0x898 - CUtlSymbolLarge m_iszWeaponClassName; // 0x8c0 + CEntityIOOutput m_OnTouchedActiveWeapon; // 0x8a8 + CUtlSymbolLarge m_iszWeaponClassName; // 0x8d0 }; // Alignment: 13 -// Size: 0x8f8 +// Size: 0x908 class CTriggerPhysics : public CBaseTrigger { -private: - [[maybe_unused]] uint8_t __pad0898[0x10]; // 0x898 public: - float m_gravityScale; // 0x8a8 - float m_linearLimit; // 0x8ac - float m_linearDamping; // 0x8b0 - float m_angularLimit; // 0x8b4 - float m_angularDamping; // 0x8b8 - float m_linearForce; // 0x8bc - float m_flFrequency; // 0x8c0 - float m_flDampingRatio; // 0x8c4 - Vector m_vecLinearForcePointAt; // 0x8c8 - bool m_bCollapseToForcePoint; // 0x8d4 + float m_gravityScale; // 0x8b8 + float m_linearLimit; // 0x8bc + float m_linearDamping; // 0x8c0 + float m_angularLimit; // 0x8c4 + float m_angularDamping; // 0x8c8 + float m_linearForce; // 0x8cc + float m_flFrequency; // 0x8d0 + float m_flDampingRatio; // 0x8d4 + Vector m_vecLinearForcePointAt; // 0x8d8 + bool m_bCollapseToForcePoint; // 0x8e4 private: - [[maybe_unused]] uint8_t __pad08d5[0x3]; // 0x8d5 + [[maybe_unused]] uint8_t __pad08e5[0x3]; // 0x8e5 public: - Vector m_vecLinearForcePointAtWorld; // 0x8d8 - Vector m_vecLinearForceDirection; // 0x8e4 - bool m_bConvertToDebrisWhenPossible; // 0x8f0 + Vector m_vecLinearForcePointAtWorld; // 0x8e8 + Vector m_vecLinearForceDirection; // 0x8f4 + bool m_bConvertToDebrisWhenPossible; // 0x900 }; // Alignment: 2 -// Size: 0x8c8 +// Size: 0x8d8 class CTriggerDetectBulletFire : public CBaseTrigger { public: - bool m_bPlayerFireOnly; // 0x898 + bool m_bPlayerFireOnly; // 0x8a8 private: - [[maybe_unused]] uint8_t __pad0899[0x7]; // 0x899 + [[maybe_unused]] uint8_t __pad08a9[0x7]; // 0x8a9 public: - CEntityIOOutput m_OnDetectedBulletFire; // 0x8a0 + CEntityIOOutput m_OnDetectedBulletFire; // 0x8b0 }; // Alignment: 1 -// Size: 0x8f8 +// Size: 0x908 class CTriggerDetectExplosion : public CBaseTrigger { -private: - [[maybe_unused]] uint8_t __pad0898[0x38]; // 0x898 public: - CEntityIOOutput m_OnDetectedExplosion; // 0x8d0 + CEntityIOOutput m_OnDetectedExplosion; // 0x8e0 }; // Alignment: 1 -// Size: 0x710 +// Size: 0x720 class CScriptNavBlocker : public CFuncNavBlocker { public: - Vector m_vExtent; // 0x700 + Vector m_vExtent; // 0x710 }; // Alignment: 7 -// Size: 0x8b0 +// Size: 0x9c0 class CBaseFlex : public CBaseAnimGraph { public: // MNetworkEnable // MNetworkBitCount "12" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "1.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "1" // MNetworkEncodeFlags - CNetworkUtlVectorBase< float32 > m_flexWeight; // 0x820 + CNetworkUtlVectorBase< float32 > m_flexWeight; // 0x930 // MNetworkEnable // MNetworkEncoder - Vector m_vLookTargetPosition; // 0x838 + Vector m_vLookTargetPosition; // 0x948 // MNetworkEnable - bool m_blinktoggle; // 0x844 + bool m_blinktoggle; // 0x954 private: - [[maybe_unused]] uint8_t __pad0845[0x53]; // 0x845 + [[maybe_unused]] uint8_t __pad0955[0x53]; // 0x955 public: - GameTime_t m_flAllowResponsesEndTime; // 0x898 - GameTime_t m_flLastFlexAnimationTime; // 0x89c - uint32_t m_nNextSceneEventId; // 0x8a0 - bool m_bUpdateLayerPriorities; // 0x8a4 + GameTime_t m_flAllowResponsesEndTime; // 0x9a8 + GameTime_t m_flLastFlexAnimationTime; // 0x9ac + uint32_t m_nNextSceneEventId; // 0x9b0 + bool m_bUpdateLayerPriorities; // 0x9b4 }; // Alignment: 38 -// Size: 0xd28 +// Size: 0xe38 class CBasePropDoor : public CDynamicProp { -private: - [[maybe_unused]] uint8_t __pad0a98[0x10]; // 0xa98 public: - float m_flAutoReturnDelay; // 0xaa8 + float m_flAutoReturnDelay; // 0xbb8 private: - [[maybe_unused]] uint8_t __pad0aac[0x4]; // 0xaac + [[maybe_unused]] uint8_t __pad0bbc[0x4]; // 0xbbc public: - CUtlVector< CHandle< CBasePropDoor > > m_hDoorList; // 0xab0 - int32_t m_nHardwareType; // 0xac8 - bool m_bNeedsHardware; // 0xacc + CUtlVector< CHandle< CBasePropDoor > > m_hDoorList; // 0xbc0 + int32_t m_nHardwareType; // 0xbd8 + bool m_bNeedsHardware; // 0xbdc private: - [[maybe_unused]] uint8_t __pad0acd[0x3]; // 0xacd + [[maybe_unused]] uint8_t __pad0bdd[0x3]; // 0xbdd public: // MNetworkEnable - DoorState_t m_eDoorState; // 0xad0 + DoorState_t m_eDoorState; // 0xbe0 // MNetworkEnable - bool m_bLocked; // 0xad4 + bool m_bLocked; // 0xbe4 private: - [[maybe_unused]] uint8_t __pad0ad5[0x3]; // 0xad5 + [[maybe_unused]] uint8_t __pad0be5[0x3]; // 0xbe5 public: // MNetworkEnable - Vector m_closedPosition; // 0xad8 + Vector m_closedPosition; // 0xbe8 // MNetworkEnable - QAngle m_closedAngles; // 0xae4 - CHandle< CBaseEntity > m_hBlocker; // 0xaf0 - bool m_bFirstBlocked; // 0xaf4 + QAngle m_closedAngles; // 0xbf4 + CHandle< CBaseEntity > m_hBlocker; // 0xc00 + bool m_bFirstBlocked; // 0xc04 private: - [[maybe_unused]] uint8_t __pad0af5[0x3]; // 0xaf5 + [[maybe_unused]] uint8_t __pad0c05[0x3]; // 0xc05 public: - locksound_t m_ls; // 0xaf8 - bool m_bForceClosed; // 0xb18 + locksound_t m_ls; // 0xc08 + bool m_bForceClosed; // 0xc28 private: - [[maybe_unused]] uint8_t __pad0b19[0x3]; // 0xb19 + [[maybe_unused]] uint8_t __pad0c29[0x3]; // 0xc29 public: - Vector m_vecLatchWorldPosition; // 0xb1c - CHandle< CBaseEntity > m_hActivator; // 0xb28 + Vector m_vecLatchWorldPosition; // 0xc2c + CHandle< CBaseEntity > m_hActivator; // 0xc38 private: - [[maybe_unused]] uint8_t __pad0b2c[0x8]; // 0xb2c + [[maybe_unused]] uint8_t __pad0c3c[0x8]; // 0xc3c public: - uint32_t m_sndParamAngularSpeed; // 0xb34 - CUtlSymbolLarge m_SoundMoving; // 0xb38 - CUtlSymbolLarge m_SoundOpen; // 0xb40 - CUtlSymbolLarge m_SoundClose; // 0xb48 - CUtlSymbolLarge m_SoundLock; // 0xb50 - CUtlSymbolLarge m_SoundUnlock; // 0xb58 - CUtlSymbolLarge m_SoundLatch; // 0xb60 - CUtlSymbolLarge m_SoundPound; // 0xb68 - CUtlSymbolLarge m_SoundJiggle; // 0xb70 - CUtlSymbolLarge m_SoundLockedAnim; // 0xb78 - int32_t m_numCloseAttempts; // 0xb80 - CUtlStringToken m_nPhysicsMaterial; // 0xb84 - CUtlSymbolLarge m_SlaveName; // 0xb88 + uint32_t m_sndParamAngularSpeed; // 0xc44 + CUtlSymbolLarge m_SoundMoving; // 0xc48 + CUtlSymbolLarge m_SoundOpen; // 0xc50 + CUtlSymbolLarge m_SoundClose; // 0xc58 + CUtlSymbolLarge m_SoundLock; // 0xc60 + CUtlSymbolLarge m_SoundUnlock; // 0xc68 + CUtlSymbolLarge m_SoundLatch; // 0xc70 + CUtlSymbolLarge m_SoundPound; // 0xc78 + CUtlSymbolLarge m_SoundJiggle; // 0xc80 + CUtlSymbolLarge m_SoundLockedAnim; // 0xc88 + int32_t m_numCloseAttempts; // 0xc90 + CUtlStringToken m_nPhysicsMaterial; // 0xc94 + CUtlSymbolLarge m_SlaveName; // 0xc98 // MNetworkEnable - CHandle< CBasePropDoor > m_hMaster; // 0xb90 + CHandle< CBasePropDoor > m_hMaster; // 0xca0 private: - [[maybe_unused]] uint8_t __pad0b94[0x4]; // 0xb94 + [[maybe_unused]] uint8_t __pad0ca4[0x4]; // 0xca4 public: - CEntityIOOutput m_OnBlockedClosing; // 0xb98 - CEntityIOOutput m_OnBlockedOpening; // 0xbc0 - CEntityIOOutput m_OnUnblockedClosing; // 0xbe8 - CEntityIOOutput m_OnUnblockedOpening; // 0xc10 - CEntityIOOutput m_OnFullyClosed; // 0xc38 - CEntityIOOutput m_OnFullyOpen; // 0xc60 - CEntityIOOutput m_OnClose; // 0xc88 - CEntityIOOutput m_OnOpen; // 0xcb0 - CEntityIOOutput m_OnLockedUse; // 0xcd8 - CEntityIOOutput m_OnAjarOpen; // 0xd00 + CEntityIOOutput m_OnBlockedClosing; // 0xca8 + CEntityIOOutput m_OnBlockedOpening; // 0xcd0 + CEntityIOOutput m_OnUnblockedClosing; // 0xcf8 + CEntityIOOutput m_OnUnblockedOpening; // 0xd20 + CEntityIOOutput m_OnFullyClosed; // 0xd48 + CEntityIOOutput m_OnFullyOpen; // 0xd70 + CEntityIOOutput m_OnClose; // 0xd98 + CEntityIOOutput m_OnOpen; // 0xdc0 + CEntityIOOutput m_OnLockedUse; // 0xde8 + CEntityIOOutput m_OnAjarOpen; // 0xe10 }; // Alignment: 5 -// Size: 0x7b8 +// Size: 0x7c8 class CEnvLaser : public CBeam { public: - CUtlSymbolLarge m_iszLaserTarget; // 0x790 - CSprite* m_pSprite; // 0x798 - CUtlSymbolLarge m_iszSpriteName; // 0x7a0 - Vector m_firePosition; // 0x7a8 - float m_flStartFrame; // 0x7b4 + CUtlSymbolLarge m_iszLaserTarget; // 0x7a0 + CSprite* m_pSprite; // 0x7a8 + CUtlSymbolLarge m_iszSpriteName; // 0x7b0 + Vector m_firePosition; // 0x7b8 + float m_flStartFrame; // 0x7c4 }; // Alignment: 24 -// Size: 0x928 +// Size: 0xa38 class CFish : public CBaseAnimGraph { public: - CHandle< CFishPool > m_pool; // 0x820 - uint32_t m_id; // 0x824 + CHandle< CFishPool > m_pool; // 0x930 + uint32_t m_id; // 0x934 // MNetworkEnable // MNetworkSerializer "fish_pos_x" - float m_x; // 0x828 + float m_x; // 0x938 // MNetworkEnable // MNetworkSerializer "fish_pos_y" - float m_y; // 0x82c + float m_y; // 0x93c // MNetworkEnable // MNetworkSerializer "fish_pos_z" - float m_z; // 0x830 + float m_z; // 0x940 // MNetworkEnable // MNetworkSerializer "angle_normalize_positive" // MNetworkBitCount "7" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "360.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "360" // MNetworkEncodeFlags - float m_angle; // 0x834 - float m_angleChange; // 0x838 - Vector m_forward; // 0x83c - Vector m_perp; // 0x848 + float m_angle; // 0x944 + float m_angleChange; // 0x948 + Vector m_forward; // 0x94c + Vector m_perp; // 0x958 // MNetworkEnable // MNetworkEncoder - Vector m_poolOrigin; // 0x854 + Vector m_poolOrigin; // 0x964 // MNetworkEnable - float m_waterLevel; // 0x860 - float m_speed; // 0x864 - float m_desiredSpeed; // 0x868 - float m_calmSpeed; // 0x86c - float m_panicSpeed; // 0x870 - float m_avoidRange; // 0x874 - CountdownTimer m_turnTimer; // 0x878 - bool m_turnClockwise; // 0x890 + float m_waterLevel; // 0x970 + float m_speed; // 0x974 + float m_desiredSpeed; // 0x978 + float m_calmSpeed; // 0x97c + float m_panicSpeed; // 0x980 + float m_avoidRange; // 0x984 + CountdownTimer m_turnTimer; // 0x988 + bool m_turnClockwise; // 0x9a0 private: - [[maybe_unused]] uint8_t __pad0891[0x7]; // 0x891 + [[maybe_unused]] uint8_t __pad09a1[0x7]; // 0x9a1 public: - CountdownTimer m_goTimer; // 0x898 - CountdownTimer m_moveTimer; // 0x8b0 - CountdownTimer m_panicTimer; // 0x8c8 - CountdownTimer m_disperseTimer; // 0x8e0 - CountdownTimer m_proximityTimer; // 0x8f8 - CUtlVector< CFish* > m_visible; // 0x910 + CountdownTimer m_goTimer; // 0x9a8 + CountdownTimer m_moveTimer; // 0x9c0 + CountdownTimer m_panicTimer; // 0x9d8 + CountdownTimer m_disperseTimer; // 0x9f0 + CountdownTimer m_proximityTimer; // 0xa08 + CUtlVector< CFish* > m_visible; // 0xa20 }; // Alignment: 8 -// Size: 0x8f8 +// Size: 0xa08 class CItem : public CBaseAnimGraph { -private: - [[maybe_unused]] uint8_t __pad0820[0x8]; // 0x820 public: - CEntityIOOutput m_OnPlayerTouch; // 0x828 - bool m_bActivateWhenAtRest; // 0x850 + CEntityIOOutput m_OnPlayerTouch; // 0x938 + bool m_bActivateWhenAtRest; // 0x960 private: - [[maybe_unused]] uint8_t __pad0851[0x7]; // 0x851 + [[maybe_unused]] uint8_t __pad0961[0x7]; // 0x961 public: - CEntityIOOutput m_OnCacheInteraction; // 0x858 - CEntityIOOutput m_OnPlayerPickup; // 0x880 - CEntityIOOutput m_OnGlovePulled; // 0x8a8 - Vector m_vOriginalSpawnOrigin; // 0x8d0 - QAngle m_vOriginalSpawnAngles; // 0x8dc - bool m_bPhysStartAsleep; // 0x8e8 + CEntityIOOutput m_OnCacheInteraction; // 0x968 + CEntityIOOutput m_OnPlayerPickup; // 0x990 + CEntityIOOutput m_OnGlovePulled; // 0x9b8 + Vector m_vOriginalSpawnOrigin; // 0x9e0 + QAngle m_vOriginalSpawnAngles; // 0x9ec + bool m_bPhysStartAsleep; // 0x9f8 }; // Alignment: 28 -// Size: 0x9c8 +// Size: 0xad8 class CRagdollProp : public CBaseAnimGraph { -private: - [[maybe_unused]] uint8_t __pad0820[0x8]; // 0x820 public: - ragdoll_t m_ragdoll; // 0x828 - bool m_bStartDisabled; // 0x860 + ragdoll_t m_ragdoll; // 0x938 + bool m_bStartDisabled; // 0x970 private: - [[maybe_unused]] uint8_t __pad0861[0x7]; // 0x861 + [[maybe_unused]] uint8_t __pad0971[0x7]; // 0x971 public: // MNetworkEnable // MNetworkEncoder - CNetworkUtlVectorBase< Vector > m_ragPos; // 0x868 + CNetworkUtlVectorBase< Vector > m_ragPos; // 0x978 // MNetworkEnable // MNetworkEncoder // MNetworkBitCount "13" - CNetworkUtlVectorBase< QAngle > m_ragAngles; // 0x880 + CNetworkUtlVectorBase< QAngle > m_ragAngles; // 0x990 // MNetworkEnable - CHandle< CBaseEntity > m_hRagdollSource; // 0x898 - uint32_t m_lastUpdateTickCount; // 0x89c - bool m_allAsleep; // 0x8a0 - bool m_bFirstCollisionAfterLaunch; // 0x8a1 + CHandle< CBaseEntity > m_hRagdollSource; // 0x9a8 + uint32_t m_lastUpdateTickCount; // 0x9ac + bool m_allAsleep; // 0x9b0 + bool m_bFirstCollisionAfterLaunch; // 0x9b1 private: - [[maybe_unused]] uint8_t __pad08a2[0x2]; // 0x8a2 + [[maybe_unused]] uint8_t __pad09b2[0x2]; // 0x9b2 public: - CHandle< CBaseEntity > m_hDamageEntity; // 0x8a4 - CHandle< CBaseEntity > m_hKiller; // 0x8a8 - CHandle< CBasePlayerPawn > m_hPhysicsAttacker; // 0x8ac - GameTime_t m_flLastPhysicsInfluenceTime; // 0x8b0 - GameTime_t m_flFadeOutStartTime; // 0x8b4 - float m_flFadeTime; // 0x8b8 + CHandle< CBaseEntity > m_hDamageEntity; // 0x9b4 + CHandle< CBaseEntity > m_hKiller; // 0x9b8 + CHandle< CBasePlayerPawn > m_hPhysicsAttacker; // 0x9bc + GameTime_t m_flLastPhysicsInfluenceTime; // 0x9c0 + GameTime_t m_flFadeOutStartTime; // 0x9c4 + float m_flFadeTime; // 0x9c8 // MNetworkDisable - Vector m_vecLastOrigin; // 0x8bc - GameTime_t m_flAwakeTime; // 0x8c8 - GameTime_t m_flLastOriginChangeTime; // 0x8cc - int32_t m_nBloodColor; // 0x8d0 + Vector m_vecLastOrigin; // 0x9cc + GameTime_t m_flAwakeTime; // 0x9d8 + GameTime_t m_flLastOriginChangeTime; // 0x9dc + int32_t m_nBloodColor; // 0x9e0 private: - [[maybe_unused]] uint8_t __pad08d4[0x4]; // 0x8d4 + [[maybe_unused]] uint8_t __pad09e4[0x4]; // 0x9e4 public: - CUtlSymbolLarge m_strOriginClassName; // 0x8d8 - CUtlSymbolLarge m_strSourceClassName; // 0x8e0 - bool m_bHasBeenPhysgunned; // 0x8e8 - bool m_bShouldTeleportPhysics; // 0x8e9 + CUtlSymbolLarge m_strOriginClassName; // 0x9e8 + CUtlSymbolLarge m_strSourceClassName; // 0x9f0 + bool m_bHasBeenPhysgunned; // 0x9f8 + bool m_bShouldTeleportPhysics; // 0x9f9 private: - [[maybe_unused]] uint8_t __pad08ea[0x2]; // 0x8ea + [[maybe_unused]] uint8_t __pad09fa[0x2]; // 0x9fa public: // MNetworkEnable // MNetworkBitCount "8" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "1.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "1" // MNetworkEncodeFlags - float m_flBlendWeight; // 0x8ec - float m_flDefaultFadeScale; // 0x8f0 + float m_flBlendWeight; // 0x9fc + float m_flDefaultFadeScale; // 0xa00 private: - [[maybe_unused]] uint8_t __pad08f4[0x4]; // 0x8f4 + [[maybe_unused]] uint8_t __pad0a04[0x4]; // 0xa04 public: - CUtlVector< Vector > m_ragdollMins; // 0x8f8 - CUtlVector< Vector > m_ragdollMaxs; // 0x910 - bool m_bShouldDeleteActivationRecord; // 0x928 + CUtlVector< Vector > m_ragdollMins; // 0xa08 + CUtlVector< Vector > m_ragdollMaxs; // 0xa20 + bool m_bShouldDeleteActivationRecord; // 0xa38 private: - [[maybe_unused]] uint8_t __pad0929[0x5f]; // 0x929 + [[maybe_unused]] uint8_t __pad0a39[0x5f]; // 0xa39 public: - bool m_bValidatePoweredRagdollPose; // 0x988 + bool m_bValidatePoweredRagdollPose; // 0xa98 }; // Alignment: 12 -// Size: 0x8b0 +// Size: 0x9c0 class CPhysMagnet : public CBaseAnimGraph { public: - CEntityIOOutput m_OnMagnetAttach; // 0x820 - CEntityIOOutput m_OnMagnetDetach; // 0x848 - float m_massScale; // 0x870 - float m_forceLimit; // 0x874 - float m_torqueLimit; // 0x878 + CEntityIOOutput m_OnMagnetAttach; // 0x930 + CEntityIOOutput m_OnMagnetDetach; // 0x958 + float m_massScale; // 0x980 + float m_forceLimit; // 0x984 + float m_torqueLimit; // 0x988 private: - [[maybe_unused]] uint8_t __pad087c[0x4]; // 0x87c + [[maybe_unused]] uint8_t __pad098c[0x4]; // 0x98c public: - CUtlVector< magnetted_objects_t > m_MagnettedEntities; // 0x880 - bool m_bActive; // 0x898 - bool m_bHasHitSomething; // 0x899 + CUtlVector< magnetted_objects_t > m_MagnettedEntities; // 0x990 + bool m_bActive; // 0x9a8 + bool m_bHasHitSomething; // 0x9a9 private: - [[maybe_unused]] uint8_t __pad089a[0x2]; // 0x89a + [[maybe_unused]] uint8_t __pad09aa[0x2]; // 0x9aa public: - float m_flTotalMass; // 0x89c - float m_flRadius; // 0x8a0 - GameTime_t m_flNextSuckTime; // 0x8a4 - int32_t m_iMaxObjectsAttached; // 0x8a8 + float m_flTotalMass; // 0x9ac + float m_flRadius; // 0x9b0 + GameTime_t m_flNextSuckTime; // 0x9b4 + int32_t m_iMaxObjectsAttached; // 0x9b8 }; -// Alignment: 33 -// Size: 0xb00 +// Alignment: 34 +// Size: 0xc18 class CPhysicsProp : public CBreakableProp { -private: - [[maybe_unused]] uint8_t __pad0998[0x8]; // 0x998 public: - CEntityIOOutput m_MotionEnabled; // 0x9a0 - CEntityIOOutput m_OnAwakened; // 0x9c8 - CEntityIOOutput m_OnAwake; // 0x9f0 - CEntityIOOutput m_OnAsleep; // 0xa18 - CEntityIOOutput m_OnPlayerUse; // 0xa40 - CEntityIOOutput m_OnPlayerPickup; // 0xa68 - CEntityIOOutput m_OnOutOfWorld; // 0xa90 - float m_massScale; // 0xab8 - float m_inertiaScale; // 0xabc - int32_t m_damageType; // 0xac0 - int32_t m_damageToEnableMotion; // 0xac4 - float m_flForceToEnableMotion; // 0xac8 - bool m_bThrownByPlayer; // 0xacc - bool m_bDroppedByPlayer; // 0xacd - bool m_bTouchedByPlayer; // 0xace - bool m_bFirstCollisionAfterLaunch; // 0xacf - int32_t m_iExploitableByPlayer; // 0xad0 - bool m_bHasBeenAwakened; // 0xad4 - bool m_bIsOverrideProp; // 0xad5 + CEntityIOOutput m_MotionEnabled; // 0xab0 + CEntityIOOutput m_OnAwakened; // 0xad8 + CEntityIOOutput m_OnAwake; // 0xb00 + CEntityIOOutput m_OnAsleep; // 0xb28 + CEntityIOOutput m_OnPlayerUse; // 0xb50 + CEntityIOOutput m_OnPlayerPickup; // 0xb78 + CEntityIOOutput m_OnOutOfWorld; // 0xba0 + float m_massScale; // 0xbc8 + float m_inertiaScale; // 0xbcc + float m_buoyancyScale; // 0xbd0 + int32_t m_damageType; // 0xbd4 + int32_t m_damageToEnableMotion; // 0xbd8 + float m_flForceToEnableMotion; // 0xbdc + bool m_bThrownByPlayer; // 0xbe0 + bool m_bDroppedByPlayer; // 0xbe1 + bool m_bTouchedByPlayer; // 0xbe2 + bool m_bFirstCollisionAfterLaunch; // 0xbe3 + int32_t m_iExploitableByPlayer; // 0xbe4 + bool m_bHasBeenAwakened; // 0xbe8 + bool m_bIsOverrideProp; // 0xbe9 private: - [[maybe_unused]] uint8_t __pad0ad6[0x2]; // 0xad6 + [[maybe_unused]] uint8_t __pad0bea[0x2]; // 0xbea public: - GameTime_t m_fNextCheckDisableMotionContactsTime; // 0xad8 - int32_t m_iInitialGlowState; // 0xadc - int32_t m_nGlowRange; // 0xae0 - int32_t m_nGlowRangeMin; // 0xae4 - Color m_glowColor; // 0xae8 - bool m_bForceNavIgnore; // 0xaec - bool m_bNoNavmeshBlocker; // 0xaed - bool m_bForceNpcExclude; // 0xaee - bool m_bShouldAutoConvertBackFromDebris; // 0xaef - bool m_bMuteImpactEffects; // 0xaf0 + GameTime_t m_fNextCheckDisableMotionContactsTime; // 0xbec + int32_t m_iInitialGlowState; // 0xbf0 + int32_t m_nGlowRange; // 0xbf4 + int32_t m_nGlowRangeMin; // 0xbf8 + Color m_glowColor; // 0xbfc + bool m_bForceNavIgnore; // 0xc00 + bool m_bNoNavmeshBlocker; // 0xc01 + bool m_bForceNpcExclude; // 0xc02 + bool m_bShouldAutoConvertBackFromDebris; // 0xc03 + bool m_bMuteImpactEffects; // 0xc04 private: - [[maybe_unused]] uint8_t __pad0af1[0x7]; // 0xaf1 + [[maybe_unused]] uint8_t __pad0c05[0x7]; // 0xc05 public: - bool m_bAcceptDamageFromHeldObjects; // 0xaf8 - bool m_bEnableUseOutput; // 0xaf9 + bool m_bAcceptDamageFromHeldObjects; // 0xc0c + bool m_bEnableUseOutput; // 0xc0d // MNetworkEnable - bool m_bAwake; // 0xafa + bool m_bAwake; // 0xc0e private: - [[maybe_unused]] uint8_t __pad0afb[0x1]; // 0xafb + [[maybe_unused]] uint8_t __pad0c0f[0x1]; // 0xc0f public: - int32_t m_nCollisionGroupOverride; // 0xafc + int32_t m_nCollisionGroupOverride; // 0xc10 }; // Alignment: 0 -// Size: 0xb00 +// Size: 0xc18 class CPhysicsPropOverride : public CPhysicsProp { public: @@ -16077,19 +15016,19 @@ public: }; // Alignment: 5 -// Size: 0xb38 +// Size: 0xc50 class CPhysicsPropRespawnable : public CPhysicsProp { public: - Vector m_vOriginalSpawnOrigin; // 0xb00 - QAngle m_vOriginalSpawnAngles; // 0xb0c - Vector m_vOriginalMins; // 0xb18 - Vector m_vOriginalMaxs; // 0xb24 - float m_flRespawnDuration; // 0xb30 + Vector m_vOriginalSpawnOrigin; // 0xc18 + QAngle m_vOriginalSpawnAngles; // 0xc24 + Vector m_vOriginalMins; // 0xc30 + Vector m_vOriginalMaxs; // 0xc3c + float m_flRespawnDuration; // 0xc48 }; // Alignment: 0 -// Size: 0x820 +// Size: 0x930 class CWaterBullet : public CBaseAnimGraph { public: @@ -16097,103 +15036,99 @@ public: }; // Alignment: 3 -// Size: 0xb68 +// Size: 0xc80 class CShatterGlassShardPhysics : public CPhysicsProp { public: - bool m_bDebris; // 0xb00 + bool m_bDebris; // 0xc18 private: - [[maybe_unused]] uint8_t __pad0b01[0x3]; // 0xb01 + [[maybe_unused]] uint8_t __pad0c19[0x3]; // 0xc19 public: - uint32_t m_hParentShard; // 0xb04 + uint32_t m_hParentShard; // 0xc1c // MNetworkEnable - shard_model_desc_t m_ShardDesc; // 0xb08 + shard_model_desc_t m_ShardDesc; // 0xc20 }; // Alignment: 9 -// Size: 0xba8 +// Size: 0xcb8 class CEconEntity : public CBaseFlex { -private: - [[maybe_unused]] uint8_t __pad08b0[0x10]; // 0x8b0 public: // MNetworkEnable - CAttributeContainer m_AttributeManager; // 0x8c0 + CAttributeContainer m_AttributeManager; // 0x9d0 // MNetworkEnable - uint32_t m_OriginalOwnerXuidLow; // 0xb88 + uint32_t m_OriginalOwnerXuidLow; // 0xc98 // MNetworkEnable - uint32_t m_OriginalOwnerXuidHigh; // 0xb8c + uint32_t m_OriginalOwnerXuidHigh; // 0xc9c // MNetworkEnable - int32_t m_nFallbackPaintKit; // 0xb90 + int32_t m_nFallbackPaintKit; // 0xca0 // MNetworkEnable - int32_t m_nFallbackSeed; // 0xb94 + int32_t m_nFallbackSeed; // 0xca4 // MNetworkEnable - float m_flFallbackWear; // 0xb98 + float m_flFallbackWear; // 0xca8 // MNetworkEnable - int32_t m_nFallbackStatTrak; // 0xb9c - CHandle< CBaseEntity > m_hOldProvidee; // 0xba0 - int32_t m_iOldOwnerClass; // 0xba4 + int32_t m_nFallbackStatTrak; // 0xcac + CHandle< CBaseEntity > m_hOldProvidee; // 0xcb0 + int32_t m_iOldOwnerClass; // 0xcb4 }; // Alignment: 2 -// Size: 0xbb0 +// Size: 0xcc0 class CEconWearable : public CEconEntity { public: - int32_t m_nForceSkin; // 0xba8 - bool m_bAlwaysAllow; // 0xbac + int32_t m_nForceSkin; // 0xcb8 + bool m_bAlwaysAllow; // 0xcbc }; // Alignment: 14 -// Size: 0x958 +// Size: 0xa68 class CBaseGrenade : public CBaseFlex { -private: - [[maybe_unused]] uint8_t __pad08b0[0x8]; // 0x8b0 public: - CEntityIOOutput m_OnPlayerPickup; // 0x8b8 - CEntityIOOutput m_OnExplode; // 0x8e0 - bool m_bHasWarnedAI; // 0x908 - bool m_bIsSmokeGrenade; // 0x909 + CEntityIOOutput m_OnPlayerPickup; // 0x9c8 + CEntityIOOutput m_OnExplode; // 0x9f0 + bool m_bHasWarnedAI; // 0xa18 + bool m_bIsSmokeGrenade; // 0xa19 // MNetworkEnable - bool m_bIsLive; // 0x90a + bool m_bIsLive; // 0xa1a private: - [[maybe_unused]] uint8_t __pad090b[0x1]; // 0x90b + [[maybe_unused]] uint8_t __pad0a1b[0x1]; // 0xa1b public: // MNetworkEnable // MNetworkBitCount "10" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "1024.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "1024" // MNetworkEncodeFlags - float m_DmgRadius; // 0x90c + float m_DmgRadius; // 0xa1c // MNetworkEnable - GameTime_t m_flDetonateTime; // 0x910 - float m_flWarnAITime; // 0x914 + GameTime_t m_flDetonateTime; // 0xa20 + float m_flWarnAITime; // 0xa24 // MNetworkEnable // MNetworkBitCount "10" - // MNetworkMinValue "0.000000" - // MNetworkMaxValue "256.000000" + // MNetworkMinValue "0" + // MNetworkMaxValue "256" // MNetworkEncodeFlags - float m_flDamage; // 0x918 + float m_flDamage; // 0xa28 private: - [[maybe_unused]] uint8_t __pad091c[0x4]; // 0x91c + [[maybe_unused]] uint8_t __pad0a2c[0x4]; // 0xa2c public: - CUtlSymbolLarge m_iszBounceSound; // 0x920 - CUtlString m_ExplosionSound; // 0x928 + CUtlSymbolLarge m_iszBounceSound; // 0xa30 + CUtlString m_ExplosionSound; // 0xa38 private: - [[maybe_unused]] uint8_t __pad0930[0x4]; // 0x930 + [[maybe_unused]] uint8_t __pad0a40[0x4]; // 0xa40 public: // MNetworkEnable - CHandle< CBaseEntity > m_hThrower; // 0x934 + CHandle< CBaseEntity > m_hThrower; // 0xa44 private: - [[maybe_unused]] uint8_t __pad0938[0x18]; // 0x938 + [[maybe_unused]] uint8_t __pad0a48[0x18]; // 0xa48 public: - GameTime_t m_flNextAttack; // 0x950 - CHandle< CBaseEntity > m_hOriginalThrower; // 0x954 + GameTime_t m_flNextAttack; // 0xa60 + CHandle< CBaseEntity > m_hOriginalThrower; // 0xa64 }; // Alignment: 0 -// Size: 0xa98 +// Size: 0xba8 class CCoopBonusCoin : public CDynamicProp { public: @@ -16201,365 +15136,353 @@ public: }; // Alignment: 3 -// Size: 0x858 +// Size: 0x968 class CBRC4Target : public CBaseAnimGraph { -private: - [[maybe_unused]] uint8_t __pad0820[0x28]; // 0x820 public: - CHandle< CBaseEntity > m_hPlayerThatActivatedMe; // 0x848 + CHandle< CBaseEntity > m_hPlayerThatActivatedMe; // 0x958 // MNetworkEnable - bool m_bBrokenOpen; // 0x84c + bool m_bBrokenOpen; // 0x95c private: - [[maybe_unused]] uint8_t __pad084d[0x3]; // 0x84d + [[maybe_unused]] uint8_t __pad095d[0x3]; // 0x95d public: // MNetworkEnable - float m_flRadius; // 0x850 + float m_flRadius; // 0x960 }; // Alignment: 11 -// Size: 0x860 +// Size: 0x970 class CParadropChopper : public CBaseAnimGraph { -private: - [[maybe_unused]] uint8_t __pad0820[0x4]; // 0x820 public: - Vector m_vecDropPos; // 0x824 - float m_flLastDistFromDrop; // 0x830 - bool m_bDroppedParadrop; // 0x834 + Vector m_vecDropPos; // 0x934 + float m_flLastDistFromDrop; // 0x940 + bool m_bDroppedParadrop; // 0x944 private: - [[maybe_unused]] uint8_t __pad0835[0x3]; // 0x835 + [[maybe_unused]] uint8_t __pad0945[0x3]; // 0x945 public: - CSoundPatch* m_pSoundLoop; // 0x838 - float m_flSpawnTime; // 0x840 - float m_flFlightTime; // 0x844 - bool m_bPlayerIsFinishedRappelling; // 0x848 + CSoundPatch* m_pSoundLoop; // 0x948 + float m_flSpawnTime; // 0x950 + float m_flFlightTime; // 0x954 + bool m_bPlayerIsFinishedRappelling; // 0x958 private: - [[maybe_unused]] uint8_t __pad0849[0x3]; // 0x849 + [[maybe_unused]] uint8_t __pad0959[0x3]; // 0x959 public: - GameTime_t m_flPlayerFinishedRappellingTime; // 0x84c - CUtlString m_strFlyoverDropEvent; // 0x850 + GameTime_t m_flPlayerFinishedRappellingTime; // 0x95c + CUtlString m_strFlyoverDropEvent; // 0x960 // MNetworkEnable - CHandle< CBaseEntity > m_hCallingPlayer; // 0x858 - bool m_bCalledByPlayer; // 0x85c + CHandle< CBaseEntity > m_hCallingPlayer; // 0x968 + bool m_bCalledByPlayer; // 0x96c }; // Alignment: 7 -// Size: 0x838 +// Size: 0x948 class CSurvivalSpawnChopper : public CBaseAnimGraph { public: - CSoundPatch* m_pSoundLoop; // 0x820 - GameTime_t m_flSpawnTimeStamp; // 0x828 - float m_flFlightPathRotationOffset; // 0x82c - bool m_bFlipX; // 0x830 - bool m_bFlipY; // 0x831 - bool m_bCircling; // 0x832 + CSoundPatch* m_pSoundLoop; // 0x930 + GameTime_t m_flSpawnTimeStamp; // 0x938 + float m_flFlightPathRotationOffset; // 0x93c + bool m_bFlipX; // 0x940 + bool m_bFlipY; // 0x941 + bool m_bCircling; // 0x942 private: - [[maybe_unused]] uint8_t __pad0833[0x1]; // 0x833 + [[maybe_unused]] uint8_t __pad0943[0x1]; // 0x943 public: - GameTime_t m_flLastPassengerCheckTime; // 0x834 + GameTime_t m_flLastPassengerCheckTime; // 0x944 }; // Alignment: 3 -// Size: 0x948 +// Size: 0xa58 class CItemCash : public CItem { public: - char m_bufCashOriginalSource[64]; // 0x8f8 - int32_t m_nBundleSize; // 0x938 + char m_bufCashOriginalSource[64]; // 0xa08 + int32_t m_nBundleSize; // 0xa48 private: - [[maybe_unused]] uint8_t __pad093c[0x4]; // 0x93c + [[maybe_unused]] uint8_t __pad0a4c[0x4]; // 0xa4c public: - float m_flAllowPickupTime; // 0x940 + float m_flAllowPickupTime; // 0xa50 }; // Alignment: 14 -// Size: 0x898 +// Size: 0x9a8 class CDronegun : public CBaseAnimGraph { -private: - [[maybe_unused]] uint8_t __pad0820[0x10]; // 0x820 public: // MNetworkEnable - Vector m_vecAttentionTarget; // 0x830 + Vector m_vecAttentionTarget; // 0x940 // MNetworkEnable - Vector m_vecTargetOffset; // 0x83c + Vector m_vecTargetOffset; // 0x94c // MNetworkEnable - bool m_bHasTarget; // 0x848 + bool m_bHasTarget; // 0x958 private: - [[maybe_unused]] uint8_t __pad0849[0x3]; // 0x849 + [[maybe_unused]] uint8_t __pad0959[0x3]; // 0x959 public: - Vector m_vecAttentionCurrent; // 0x84c - int32_t m_nPoseParamPitch; // 0x858 - int32_t m_nPoseParamYaw; // 0x85c - bool m_bVarInit; // 0x860 + Vector m_vecAttentionCurrent; // 0x95c + int32_t m_nPoseParamPitch; // 0x968 + int32_t m_nPoseParamYaw; // 0x96c + bool m_bVarInit; // 0x970 private: - [[maybe_unused]] uint8_t __pad0861[0x3]; // 0x861 + [[maybe_unused]] uint8_t __pad0971[0x3]; // 0x971 public: - GameTime_t m_flDisorientEndTime; // 0x864 + GameTime_t m_flDisorientEndTime; // 0x974 private: - [[maybe_unused]] uint8_t __pad0868[0x18]; // 0x868 + [[maybe_unused]] uint8_t __pad0978[0x18]; // 0x978 public: - CHandle< CBaseEntity > m_hEnvGunfire; // 0x880 - GameTime_t m_flLastShootTime; // 0x884 - GameTime_t m_flLastSound1; // 0x888 - GameTime_t m_flLastSound2; // 0x88c - GameTime_t m_flLastSound3; // 0x890 - AttachmentHandle_t m_nAttachMuzzle; // 0x894 + CHandle< CBaseEntity > m_hEnvGunfire; // 0x990 + GameTime_t m_flLastShootTime; // 0x994 + GameTime_t m_flLastSound1; // 0x998 + GameTime_t m_flLastSound2; // 0x99c + GameTime_t m_flLastSound3; // 0x9a0 + AttachmentHandle_t m_nAttachMuzzle; // 0x9a4 }; // Alignment: 58 -// Size: 0xe98 +// Size: 0xfb0 class CDrone : public CPhysicsProp { -private: - [[maybe_unused]] uint8_t __pad0b00[0x18]; // 0xb00 public: // MNetworkEnable - CEntityHandle m_hMoveToThisEntity; // 0xb18 + CHandle< CBaseEntity > m_hMoveToThisEntity; // 0xc30 // MNetworkEnable - CEntityHandle m_hDeliveryCargo; // 0xb1c + CHandle< CBaseEntity > m_hDeliveryCargo; // 0xc34 // MNetworkEnable - CEntityHandle m_hRecentCargo; // 0xb20 + CHandle< CBaseEntity > m_hRecentCargo; // 0xc38 // MNetworkEnable - bool m_bPilotTakeoverAllowed; // 0xb24 + bool m_bPilotTakeoverAllowed; // 0xc3c private: - [[maybe_unused]] uint8_t __pad0b25[0x3]; // 0xb25 + [[maybe_unused]] uint8_t __pad0c3d[0x3]; // 0xc3d public: // MNetworkEnable - CEntityHandle m_hPotentialCargo; // 0xb28 + CHandle< CBaseEntity > m_hPotentialCargo; // 0xc40 // MNetworkEnable - CEntityHandle m_hCurrentPilot; // 0xb2c + CHandle< CBaseEntity > m_hCurrentPilot; // 0xc44 // MNetworkEnable - Vector m_vecTagPositions[24]; // 0xb30 + Vector m_vecTagPositions[24]; // 0xc48 // MNetworkEnable - int32_t m_vecTagIncrements[24]; // 0xc50 - GameTime_t m_flLastUpdateTargetScanTime; // 0xcb0 - bool m_bWasControlledByPlayer; // 0xcb4 - bool m_bHovering; // 0xcb5 + int32_t m_vecTagIncrements[24]; // 0xd68 + GameTime_t m_flLastUpdateTargetScanTime; // 0xdc8 + bool m_bWasControlledByPlayer; // 0xdcc + bool m_bHovering; // 0xdcd private: - [[maybe_unused]] uint8_t __pad0cb6[0x2]; // 0xcb6 + [[maybe_unused]] uint8_t __pad0dce[0x2]; // 0xdce public: - CSoundPatch* m_pStateSound; // 0xcb8 - Vector m_vecGroundOffset; // 0xcc0 + CSoundPatch* m_pStateSound; // 0xdd0 + Vector m_vecGroundOffset; // 0xdd8 private: - [[maybe_unused]] uint8_t __pad0ccc[0x1c]; // 0xccc + [[maybe_unused]] uint8_t __pad0de4[0x1c]; // 0xde4 public: - bool m_bQueuingOrders; // 0xce8 + bool m_bQueuingOrders; // 0xe00 private: - [[maybe_unused]] uint8_t __pad0ce9[0x3]; // 0xce9 + [[maybe_unused]] uint8_t __pad0e01[0x3]; // 0xe01 public: - GameTime_t m_flLastOrdersChangeTimestamp; // 0xcec - Vector m_vecLastKnownAcceleration; // 0xcf0 - Vector m_vecLastKnownVelocity; // 0xcfc - RotationVector m_vecLastKnownAngImpulse; // 0xd08 - float m_flLastKnownSpeed; // 0xd14 - float m_flMaxSpeed; // 0xd18 - Vector m_vecCurrentDestination; // 0xd1c - float m_flLastKnownDistanceToDestination; // 0xd28 - float m_flLastKnownWaypointAccuracy; // 0xd2c - CUtlVector< Vector > m_vecWaypointQueue; // 0xd30 - CUtlVector< Vector > m_vecSparsePositionHistory; // 0xd48 - CUtlVector< Vector > m_vecPositionHistory; // 0xd60 - CUtlVector< Vector > m_vecUnstuckQueue; // 0xd78 - float m_flLastKnownGroundHeight; // 0xd90 + GameTime_t m_flLastOrdersChangeTimestamp; // 0xe04 + Vector m_vecLastKnownAcceleration; // 0xe08 + Vector m_vecLastKnownVelocity; // 0xe14 + RotationVector m_vecLastKnownAngImpulse; // 0xe20 + float m_flLastKnownSpeed; // 0xe2c + float m_flMaxSpeed; // 0xe30 + Vector m_vecCurrentDestination; // 0xe34 + float m_flLastKnownDistanceToDestination; // 0xe40 + float m_flLastKnownWaypointAccuracy; // 0xe44 + CUtlVector< Vector > m_vecWaypointQueue; // 0xe48 + CUtlVector< Vector > m_vecSparsePositionHistory; // 0xe60 + CUtlVector< Vector > m_vecPositionHistory; // 0xe78 + CUtlVector< Vector > m_vecUnstuckQueue; // 0xe90 + float m_flLastKnownGroundHeight; // 0xea8 private: - [[maybe_unused]] uint8_t __pad0d94[0x4]; // 0xd94 + [[maybe_unused]] uint8_t __pad0eac[0x4]; // 0xeac public: - CountdownTimer m_GroundCheckTimer; // 0xd98 - CountdownTimer m_ActInjuredTimer; // 0xdb0 - GameTime_t m_flPowerCutUntil; // 0xdc8 + CountdownTimer m_GroundCheckTimer; // 0xeb0 + CountdownTimer m_ActInjuredTimer; // 0xec8 + GameTime_t m_flPowerCutUntil; // 0xee0 private: - [[maybe_unused]] uint8_t __pad0dcc[0x4]; // 0xdcc + [[maybe_unused]] uint8_t __pad0ee4[0x4]; // 0xee4 public: - CountdownTimer m_WanderTimer; // 0xdd0 - GameTime_t m_flLastTimeSawAttackTarget; // 0xde8 - Vector m_vecLastKnownAttackTargetPosition; // 0xdec - CHandle< CBaseEntity > m_hAttackTarget; // 0xdf8 + CountdownTimer m_WanderTimer; // 0xee8 + GameTime_t m_flLastTimeSawAttackTarget; // 0xf00 + Vector m_vecLastKnownAttackTargetPosition; // 0xf04 + CHandle< CBaseEntity > m_hAttackTarget; // 0xf10 private: - [[maybe_unused]] uint8_t __pad0dfc[0x4]; // 0xdfc + [[maybe_unused]] uint8_t __pad0f14[0x4]; // 0xf14 public: - CountdownTimer m_IntervalThinkTimer; // 0xe00 - bool m_bDoIntervalThink; // 0xe18 + CountdownTimer m_IntervalThinkTimer; // 0xf18 + bool m_bDoIntervalThink; // 0xf30 private: - [[maybe_unused]] uint8_t __pad0e19[0x3]; // 0xe19 + [[maybe_unused]] uint8_t __pad0f31[0x3]; // 0xf31 public: - GameTime_t m_flLastDroppedGrenadeAt; // 0xe1c - GameTime_t m_flSpawnTimeStamp; // 0xe20 - bool m_bInPlayArea; // 0xe24 + GameTime_t m_flLastDroppedGrenadeAt; // 0xf34 + GameTime_t m_flSpawnTimeStamp; // 0xf38 + bool m_bInPlayArea; // 0xf3c private: - [[maybe_unused]] uint8_t __pad0e25[0x3]; // 0xe25 + [[maybe_unused]] uint8_t __pad0f3d[0x3]; // 0xf3d public: - Vector m_vecSpawnPosition; // 0xe28 - Vector m_vecLastKnownMoveToEntityPosition; // 0xe34 - int32_t m_tCargoCollisionGroup; // 0xe40 - GameTime_t m_flTimeArrivedAtMoveToEntity; // 0xe44 - Vector m_vecAvoidanceDir; // 0xe48 - GameTime_t m_flAvoidanceTime; // 0xe54 - bool m_bUpgraded; // 0xe58 + Vector m_vecSpawnPosition; // 0xf40 + Vector m_vecLastKnownMoveToEntityPosition; // 0xf4c + int32_t m_tCargoCollisionGroup; // 0xf58 + GameTime_t m_flTimeArrivedAtMoveToEntity; // 0xf5c + Vector m_vecAvoidanceDir; // 0xf60 + GameTime_t m_flAvoidanceTime; // 0xf6c + bool m_bUpgraded; // 0xf70 private: - [[maybe_unused]] uint8_t __pad0e59[0x3]; // 0xe59 + [[maybe_unused]] uint8_t __pad0f71[0x3]; // 0xf71 public: - CHandle< CBasePlayerPawn > m_hCargoOwner; // 0xe5c + CHandle< CBasePlayerPawn > m_hCargoOwner; // 0xf74 private: - [[maybe_unused]] uint8_t __pad0e60[0x8]; // 0xe60 + [[maybe_unused]] uint8_t __pad0f78[0x8]; // 0xf78 public: - Vector m_vecPlayerControlThrust; // 0xe68 - float m_flRopeLength; // 0xe74 - bool m_bDidDropOnRoofWarning; // 0xe78 + Vector m_vecPlayerControlThrust; // 0xf80 + float m_flRopeLength; // 0xf8c + bool m_bDidDropOnRoofWarning; // 0xf90 private: - [[maybe_unused]] uint8_t __pad0e79[0x3]; // 0xe79 + [[maybe_unused]] uint8_t __pad0f91[0x3]; // 0xf91 public: - GameTime_t m_flSelfDestructTime; // 0xe7c - bool m_bSelfDestructFire; // 0xe80 - bool m_bSelfDestructSpark; // 0xe81 + GameTime_t m_flSelfDestructTime; // 0xf94 + bool m_bSelfDestructFire; // 0xf98 + bool m_bSelfDestructSpark; // 0xf99 private: - [[maybe_unused]] uint8_t __pad0e82[0x2]; // 0xe82 + [[maybe_unused]] uint8_t __pad0f9a[0x2]; // 0xf9a public: - CEntityHandle m_hLastKnownPilot; // 0xe84 - bool m_bHasAlwaysBeenInZone; // 0xe88 + CEntityHandle m_hLastKnownPilot; // 0xf9c + bool m_bHasAlwaysBeenInZone; // 0xfa0 private: - [[maybe_unused]] uint8_t __pad0e89[0x3]; // 0xe89 + [[maybe_unused]] uint8_t __pad0fa1[0x3]; // 0xfa1 public: - int32_t m_nJammedAmount; // 0xe8c - CHandle< CBaseEntity > m_hPlayerThatOrderedMe; // 0xe90 + int32_t m_nJammedAmount; // 0xfa4 + CHandle< CBaseEntity > m_hPlayerThatOrderedMe; // 0xfa8 }; // Alignment: 3 -// Size: 0xb18 +// Size: 0xc30 class CCSPropExplodingBarrel : public CPhysicsProp { -private: - [[maybe_unused]] uint8_t __pad0b00[0x8]; // 0xb00 public: - CEntityHandle m_hBarrelTop; // 0xb08 - bool m_bExploded; // 0xb0c + CEntityHandle m_hBarrelTop; // 0xc20 + bool m_bExploded; // 0xc24 private: - [[maybe_unused]] uint8_t __pad0b0d[0x3]; // 0xb0d + [[maybe_unused]] uint8_t __pad0c25[0x3]; // 0xc25 public: - int32_t m_nAccumulatedDamage; // 0xb10 + int32_t m_nAccumulatedDamage; // 0xc28 }; // Alignment: 1 -// Size: 0xb08 +// Size: 0xc20 class CCSPropExplodingBarrelTop : public CPhysicsProp { public: // MNetworkEnable - float m_flOverrideAlpha; // 0xb00 + float m_flOverrideAlpha; // 0xc18 }; // Alignment: 30 -// Size: 0x948 +// Size: 0xa58 class CEnvGasCanister : public CBaseAnimGraph { public: // MNetworkEnable - bool m_bLanded; // 0x820 + bool m_bLanded; // 0x930 private: - [[maybe_unused]] uint8_t __pad0821[0x3]; // 0x821 + [[maybe_unused]] uint8_t __pad0931[0x3]; // 0x931 public: - float m_flDamageRadius; // 0x824 - float m_flDamage; // 0x828 - bool m_bIncomingSoundStarted; // 0x82c - bool m_bHasDetonated; // 0x82d - bool m_bLaunched; // 0x82e + float m_flDamageRadius; // 0x934 + float m_flDamage; // 0x938 + bool m_bIncomingSoundStarted; // 0x93c + bool m_bHasDetonated; // 0x93d + bool m_bLaunched; // 0x93e private: - [[maybe_unused]] uint8_t __pad082f[0x1]; // 0x82f + [[maybe_unused]] uint8_t __pad093f[0x1]; // 0x93f public: - CEntityOutputTemplate< CHandle< CBaseEntity > > m_OnLaunched; // 0x830 - CEntityIOOutput m_OnImpacted; // 0x858 - CEntityIOOutput m_OnOpened; // 0x880 + CEntityOutputTemplate< CHandle< CBaseEntity > > m_OnLaunched; // 0x940 + CEntityIOOutput m_OnImpacted; // 0x968 + CEntityIOOutput m_OnOpened; // 0x990 // MNetworkEnable - Vector m_vecImpactPosition; // 0x8a8 + Vector m_vecImpactPosition; // 0x9b8 // MNetworkEnable - Vector m_vecStartPosition; // 0x8b4 + Vector m_vecStartPosition; // 0x9c4 // MNetworkEnable - Vector m_vecEnterWorldPosition; // 0x8c0 + Vector m_vecEnterWorldPosition; // 0x9d0 // MNetworkEnable - Vector m_vecDirection; // 0x8cc + Vector m_vecDirection; // 0x9dc // MNetworkEnable - QAngle m_vecStartAngles; // 0x8d8 + QAngle m_vecStartAngles; // 0x9e8 // MNetworkEnable - float m_flFlightTime; // 0x8e4 + float m_flFlightTime; // 0x9f4 // MNetworkEnable - float m_flFlightSpeed; // 0x8e8 + float m_flFlightSpeed; // 0x9f8 // MNetworkEnable - GameTime_t m_flLaunchTime; // 0x8ec + GameTime_t m_flLaunchTime; // 0x9fc // MNetworkEnable - float m_flInitialZSpeed; // 0x8f0 + float m_flInitialZSpeed; // 0xa00 // MNetworkEnable - float m_flZAcceleration; // 0x8f4 + float m_flZAcceleration; // 0xa04 // MNetworkEnable - float m_flHorizSpeed; // 0x8f8 + float m_flHorizSpeed; // 0xa08 // MNetworkEnable - bool m_bLaunchedFromWithinWorld; // 0x8fc + bool m_bLaunchedFromWithinWorld; // 0xa0c private: - [[maybe_unused]] uint8_t __pad08fd[0x3]; // 0x8fd + [[maybe_unused]] uint8_t __pad0a0d[0x3]; // 0xa0d public: // MNetworkEnable - Vector m_vecParabolaDirection; // 0x900 + Vector m_vecParabolaDirection; // 0xa10 // MNetworkEnable - float m_flWorldEnterTime; // 0x90c + float m_flWorldEnterTime; // 0xa1c // MNetworkEnable - Vector m_vecSkyboxOrigin; // 0x910 + Vector m_vecSkyboxOrigin; // 0xa20 // MNetworkEnable - float m_flSkyboxScale; // 0x91c + float m_flSkyboxScale; // 0xa2c // MNetworkEnable - bool m_bInSkybox; // 0x920 + bool m_bInSkybox; // 0xa30 // MNetworkEnable - bool m_bDoImpactEffects; // 0x921 + bool m_bDoImpactEffects; // 0xa31 private: - [[maybe_unused]] uint8_t __pad0922[0x2]; // 0x922 + [[maybe_unused]] uint8_t __pad0a32[0x2]; // 0xa32 public: // MNetworkEnable - int32_t m_nMyZoneIndex; // 0x924 + int32_t m_nMyZoneIndex; // 0xa34 // MNetworkEnable - CHandle< CBaseEntity > m_hSkyboxCopy; // 0x928 - float m_flLaunchHeight; // 0x92c + CHandle< CBaseEntity > m_hSkyboxCopy; // 0xa38 + float m_flLaunchHeight; // 0xa3c }; // Alignment: 2 -// Size: 0x828 +// Size: 0x938 class CPropCounter : public CBaseAnimGraph { public: // MNetworkEnable - float m_flDisplayValue; // 0x820 - int32_t m_nInitialValue; // 0x824 + float m_flDisplayValue; // 0x930 + int32_t m_nInitialValue; // 0x934 }; // Alignment: 11 -// Size: 0x868 +// Size: 0x978 class CBaseViewModel : public CBaseAnimGraph { -private: - [[maybe_unused]] uint8_t __pad0820[0x8]; // 0x820 public: - Vector m_vecLastFacing; // 0x828 + Vector m_vecLastFacing; // 0x938 // MNetworkEnable - uint32_t m_nViewModelIndex; // 0x834 + uint32_t m_nViewModelIndex; // 0x944 // MNetworkEnable - uint32_t m_nAnimationParity; // 0x838 + uint32_t m_nAnimationParity; // 0x948 // MNetworkEnable - float m_flAnimationStartTime; // 0x83c + float m_flAnimationStartTime; // 0x94c // MNetworkEnable - CHandle< CBasePlayerWeapon > m_hWeapon; // 0x840 + CHandle< CBasePlayerWeapon > m_hWeapon; // 0x950 private: - [[maybe_unused]] uint8_t __pad0844[0x4]; // 0x844 + [[maybe_unused]] uint8_t __pad0954[0x4]; // 0x954 public: - CUtlSymbolLarge m_sVMName; // 0x848 - CUtlSymbolLarge m_sAnimationPrefix; // 0x850 - HSequence m_hOldLayerSequence; // 0x858 - int32_t m_oldLayer; // 0x85c - float m_oldLayerStartTime; // 0x860 + CUtlSymbolLarge m_sVMName; // 0x958 + CUtlSymbolLarge m_sAnimationPrefix; // 0x960 + HSequence m_hOldLayerSequence; // 0x968 + int32_t m_oldLayer; // 0x96c + float m_oldLayerStartTime; // 0x970 // MNetworkEnable - CEntityHandle m_hControlPanel; // 0x864 + CHandle< CBaseEntity > m_hControlPanel; // 0x974 }; // Alignment: 0 -// Size: 0x868 +// Size: 0x978 class CPredictedViewModel : public CBaseViewModel { public: @@ -16567,206 +15490,206 @@ public: }; // Alignment: 28 -// Size: 0x920 +// Size: 0xa30 class CPlantedC4 : public CBaseAnimGraph { public: - bool m_bPlantedAtQuestTarget; // 0x820 + bool m_bPlantedAtQuestTarget; // 0x930 // MNetworkEnable - bool m_bBombTicking; // 0x821 + bool m_bBombTicking; // 0x931 private: - [[maybe_unused]] uint8_t __pad0822[0x2]; // 0x822 + [[maybe_unused]] uint8_t __pad0932[0x2]; // 0x932 public: // MNetworkEnable - GameTime_t m_flC4Blow; // 0x824 + GameTime_t m_flC4Blow; // 0x934 // MNetworkEnable - int32_t m_nBombSite; // 0x828 + int32_t m_nBombSite; // 0x938 // MNetworkEnable - int32_t m_nSourceSoundscapeHash; // 0x82c - CEntityIOOutput m_OnBombDefused; // 0x830 - CEntityIOOutput m_OnBombBeginDefuse; // 0x858 - CEntityIOOutput m_OnBombDefuseAborted; // 0x880 - bool m_bCannotBeDefused; // 0x8a8 + int32_t m_nSourceSoundscapeHash; // 0x93c + CEntityIOOutput m_OnBombDefused; // 0x940 + CEntityIOOutput m_OnBombBeginDefuse; // 0x968 + CEntityIOOutput m_OnBombDefuseAborted; // 0x990 + bool m_bCannotBeDefused; // 0x9b8 private: - [[maybe_unused]] uint8_t __pad08a9[0x7]; // 0x8a9 + [[maybe_unused]] uint8_t __pad09b9[0x7]; // 0x9b9 public: // MNetworkEnable - EntitySpottedState_t m_entitySpottedState; // 0x8b0 - int32_t m_nSpotRules; // 0x8c8 - bool m_bTrainingPlacedByPlayer; // 0x8cc - bool m_bHasExploded; // 0x8cd + EntitySpottedState_t m_entitySpottedState; // 0x9c0 + int32_t m_nSpotRules; // 0x9d8 + bool m_bTrainingPlacedByPlayer; // 0x9dc + bool m_bHasExploded; // 0x9dd private: - [[maybe_unused]] uint8_t __pad08ce[0x2]; // 0x8ce + [[maybe_unused]] uint8_t __pad09de[0x2]; // 0x9de public: // MNetworkEnable - float m_flTimerLength; // 0x8d0 - bool m_bBeingDefused; // 0x8d4 + float m_flTimerLength; // 0x9e0 + bool m_bBeingDefused; // 0x9e4 private: - [[maybe_unused]] uint8_t __pad08d5[0x7]; // 0x8d5 + [[maybe_unused]] uint8_t __pad09e5[0x7]; // 0x9e5 public: - GameTime_t m_fLastDefuseTime; // 0x8dc + GameTime_t m_fLastDefuseTime; // 0x9ec private: - [[maybe_unused]] uint8_t __pad08e0[0x4]; // 0x8e0 + [[maybe_unused]] uint8_t __pad09f0[0x4]; // 0x9f0 public: // MNetworkEnable - float m_flDefuseLength; // 0x8e4 + float m_flDefuseLength; // 0x9f4 // MNetworkEnable - GameTime_t m_flDefuseCountDown; // 0x8e8 + GameTime_t m_flDefuseCountDown; // 0x9f8 // MNetworkEnable - bool m_bBombDefused; // 0x8ec + bool m_bBombDefused; // 0x9fc private: - [[maybe_unused]] uint8_t __pad08ed[0x3]; // 0x8ed + [[maybe_unused]] uint8_t __pad09fd[0x3]; // 0x9fd public: // MNetworkEnable - CHandle< CCSPlayerPawnBase > m_hBombDefuser; // 0x8f0 + CHandle< CCSPlayerPawnBase > m_hBombDefuser; // 0xa00 // MNetworkEnable - CEntityHandle m_hControlPanel; // 0x8f4 - int32_t m_iProgressBarTime; // 0x8f8 - bool m_bVoiceAlertFired; // 0x8fc - bool m_bVoiceAlertPlayed[4]; // 0x8fd + CHandle< CBaseEntity > m_hControlPanel; // 0xa04 + int32_t m_iProgressBarTime; // 0xa08 + bool m_bVoiceAlertFired; // 0xa0c + bool m_bVoiceAlertPlayed[4]; // 0xa0d private: - [[maybe_unused]] uint8_t __pad0901[0x3]; // 0x901 + [[maybe_unused]] uint8_t __pad0a11[0x3]; // 0xa11 public: - GameTime_t m_flNextBotBeepTime; // 0x904 + GameTime_t m_flNextBotBeepTime; // 0xa14 private: - [[maybe_unused]] uint8_t __pad0908[0x4]; // 0x908 + [[maybe_unused]] uint8_t __pad0a18[0x4]; // 0xa18 public: - bool m_bPlantedAfterPickup; // 0x90c + bool m_bPlantedAfterPickup; // 0xa1c private: - [[maybe_unused]] uint8_t __pad090d[0x3]; // 0x90d + [[maybe_unused]] uint8_t __pad0a1d[0x3]; // 0xa1d public: - QAngle m_angCatchUpToPlayerEye; // 0x910 - GameTime_t m_flLastSpinDetectionTime; // 0x91c + QAngle m_angCatchUpToPlayerEye; // 0xa20 + GameTime_t m_flLastSpinDetectionTime; // 0xa2c }; -// Alignment: 11 -// Size: 0x9a0 +// Alignment: 13 +// Size: 0xac8 class CBaseCSGrenadeProjectile : public CBaseGrenade { public: // MNetworkEnable - Vector m_vInitialVelocity; // 0x958 + Vector m_vInitialVelocity; // 0xa68 // MNetworkEnable - int32_t m_nBounces; // 0x964 + int32_t m_nBounces; // 0xa74 // MNetworkEnable - CStrongHandle< InfoForResourceTypeIParticleSystemDefinition > m_nExplodeEffectIndex; // 0x968 + CStrongHandle< InfoForResourceTypeIParticleSystemDefinition > m_nExplodeEffectIndex; // 0xa78 // MNetworkEnable - int32_t m_nExplodeEffectTickBegin; // 0x970 + int32_t m_nExplodeEffectTickBegin; // 0xa80 // MNetworkEnable - Vector m_vecExplodeEffectOrigin; // 0x974 - uint8_t m_unOGSExtraFlags; // 0x980 - bool m_bDetonationRecorded; // 0x981 + Vector m_vecExplodeEffectOrigin; // 0xa84 + uint8_t m_unOGSExtraFlags; // 0xa90 + bool m_bDetonationRecorded; // 0xa91 private: - [[maybe_unused]] uint8_t __pad0982[0x2]; // 0x982 + [[maybe_unused]] uint8_t __pad0a92[0x2]; // 0xa92 public: - GameTime_t m_flDetonateTime; // 0x984 - uint16_t m_nItemIndex; // 0x988 + GameTime_t m_flDetonateTime; // 0xa94 + uint16_t m_nItemIndex; // 0xa98 private: - [[maybe_unused]] uint8_t __pad098a[0x2]; // 0x98a + [[maybe_unused]] uint8_t __pad0a9a[0x2]; // 0xa9a public: - Vector m_vecOriginalSpawnLocation; // 0x98c - GameTime_t m_flLastBounceSoundTime; // 0x998 - - // Static fields: + Vector m_vecOriginalSpawnLocation; // 0xa9c + GameTime_t m_flLastBounceSoundTime; // 0xaa8 + RotationVector m_vecGrenadeSpin; // 0xaac + Vector m_vecLastHitSurfaceNormal; // 0xab8 static float &Get_s_flThinkInterval(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBaseCSGrenadeProjectile")->m_static_fields[0]->m_instance);}; }; // Alignment: 2 -// Size: 0x900 +// Size: 0xa10 class CItemDogtags : public CItem { public: // MNetworkEnable - CHandle< CCSPlayerPawnBase > m_OwningPlayer; // 0x8f8 + CHandle< CCSPlayerPawnBase > m_OwningPlayer; // 0xa08 // MNetworkEnable - CHandle< CCSPlayerPawnBase > m_KillingPlayer; // 0x8fc + CHandle< CCSPlayerPawnBase > m_KillingPlayer; // 0xa0c }; // Alignment: 9 -// Size: 0x988 +// Size: 0xa98 class CBreachChargeProjectile : public CBaseGrenade { public: // MNetworkEnable - bool m_bShouldExplode; // 0x958 + bool m_bShouldExplode; // 0xa68 private: - [[maybe_unused]] uint8_t __pad0959[0x3]; // 0x959 + [[maybe_unused]] uint8_t __pad0a69[0x3]; // 0xa69 public: // MNetworkEnable - CHandle< CBaseEntity > m_weaponThatThrewMe; // 0x95c + CHandle< CBaseEntity > m_weaponThatThrewMe; // 0xa6c // MNetworkEnable - int32_t m_nParentBoneIndex; // 0x960 + int32_t m_nParentBoneIndex; // 0xa70 // MNetworkEnable - Vector m_vecParentBonePos; // 0x964 - bool m_bDefused; // 0x970 - bool m_bUnstuckFromPlayer; // 0x971 - bool m_bResolvedParent; // 0x972 + Vector m_vecParentBonePos; // 0xa74 + bool m_bDefused; // 0xa80 + bool m_bUnstuckFromPlayer; // 0xa81 + bool m_bResolvedParent; // 0xa82 private: - [[maybe_unused]] uint8_t __pad0973[0x1]; // 0x973 + [[maybe_unused]] uint8_t __pad0a83[0x1]; // 0xa83 public: - Vector m_vecLastKnownValidPos; // 0x974 - CEntityHandle m_hDesiredParent; // 0x980 + Vector m_vecLastKnownValidPos; // 0xa84 + CEntityHandle m_hDesiredParent; // 0xa90 }; // Alignment: 11 -// Size: 0x9c8 +// Size: 0xad8 class CBumpMineProjectile : public CBaseGrenade { public: - bool m_bShouldExplode; // 0x958 + bool m_bShouldExplode; // 0xa68 private: - [[maybe_unused]] uint8_t __pad0959[0x3]; // 0x959 + [[maybe_unused]] uint8_t __pad0a69[0x3]; // 0xa69 public: // MNetworkEnable - int32_t m_nParentBoneIndex; // 0x95c + int32_t m_nParentBoneIndex; // 0xa6c // MNetworkEnable - Vector m_vecParentBonePos; // 0x960 + Vector m_vecParentBonePos; // 0xa70 // MNetworkEnable - bool m_bArmed; // 0x96c - bool m_bDefused; // 0x96d - bool m_bUnstuckFromPlayer; // 0x96e + bool m_bArmed; // 0xa7c + bool m_bDefused; // 0xa7d + bool m_bUnstuckFromPlayer; // 0xa7e private: - [[maybe_unused]] uint8_t __pad096f[0x1]; // 0x96f + [[maybe_unused]] uint8_t __pad0a7f[0x1]; // 0xa7f public: - CUtlVector< CHandle< CBaseEntity > > m_vecTargetedObjects; // 0x970 + CUtlVector< CHandle< CBaseEntity > > m_vecTargetedObjects; // 0xa80 private: - [[maybe_unused]] uint8_t __pad0988[0x28]; // 0x988 + [[maybe_unused]] uint8_t __pad0a98[0x28]; // 0xa98 public: - bool m_bResolvedParent; // 0x9b0 + bool m_bResolvedParent; // 0xac0 private: - [[maybe_unused]] uint8_t __pad09b1[0x3]; // 0x9b1 + [[maybe_unused]] uint8_t __pad0ac1[0x3]; // 0xac1 public: - Vector m_vecLastKnownValidPos; // 0x9b4 - CEntityHandle m_hDesiredParent; // 0x9c0 - bool m_bBeingUsed; // 0x9c4 + Vector m_vecLastKnownValidPos; // 0xac4 + CEntityHandle m_hDesiredParent; // 0xad0 + bool m_bBeingUsed; // 0xad4 }; // Alignment: 8 -// Size: 0xa20 +// Size: 0xb30 class CTripWireFireProjectile : public CBaseGrenade { public: // MNetworkEnable - GameTime_t m_flAttachTime; // 0x958 + GameTime_t m_flAttachTime; // 0xa68 // MNetworkEnable - Vector m_vecTripWireEndPositions[10]; // 0x95c + Vector m_vecTripWireEndPositions[10]; // 0xa6c // MNetworkEnable - bool m_bTripWireEndPositionsUsed[10]; // 0x9d4 + bool m_bTripWireEndPositionsUsed[10]; // 0xae4 private: - [[maybe_unused]] uint8_t __pad09de[0x2]; // 0x9de + [[maybe_unused]] uint8_t __pad0aee[0x2]; // 0xaee public: - CHandle< CBaseEntity > m_hStuckToEnt; // 0x9e0 - int32_t m_nLastStuckToEntModelIndex; // 0x9e4 + CHandle< CBaseEntity > m_hStuckToEnt; // 0xaf0 + int32_t m_nLastStuckToEntModelIndex; // 0xaf4 private: - [[maybe_unused]] uint8_t __pad09e8[0x8]; // 0x9e8 + [[maybe_unused]] uint8_t __pad0af8[0x8]; // 0xaf8 public: - CTransform m_xformStuckToEnt; // 0x9f0 - Vector m_vecTrapSetPosition; // 0xa10 - int32_t m_nWireSoundsPlayed; // 0xa1c + CTransform m_xformStuckToEnt; // 0xb00 + Vector m_vecTrapSetPosition; // 0xb20 + int32_t m_nWireSoundsPlayed; // 0xb2c }; // Alignment: 0 -// Size: 0xb00 +// Size: 0xc18 class CPhysicsPropMultiplayer : public CPhysicsProp { public: @@ -16774,7 +15697,7 @@ public: }; // Alignment: 0 -// Size: 0xb28 +// Size: 0xc40 class CBrBaseItem : public CPhysicsPropMultiplayer { public: @@ -16782,34 +15705,34 @@ public: }; // Alignment: 9 -// Size: 0xb50 +// Size: 0xc68 class CPhysPropLootCrate : public CBrBaseItem { public: // MNetworkEnable - bool m_bRenderInPSPM; // 0xb28 + bool m_bRenderInPSPM; // 0xc40 // MNetworkEnable - bool m_bRenderInTablet; // 0xb29 + bool m_bRenderInTablet; // 0xc41 private: - [[maybe_unused]] uint8_t __pad0b2a[0x2]; // 0xb2a + [[maybe_unused]] uint8_t __pad0c42[0x2]; // 0xc42 public: - GameTime_t m_flSpawnTime; // 0xb2c - bool m_bTakeDamageFromDangerZone; // 0xb30 + GameTime_t m_flSpawnTime; // 0xc44 + bool m_bTakeDamageFromDangerZone; // 0xc48 private: - [[maybe_unused]] uint8_t __pad0b31[0x7]; // 0xb31 + [[maybe_unused]] uint8_t __pad0c49[0x7]; // 0xc49 public: - char* m_pszCrateName; // 0xb38 - CHandle< CBasePlayerPawn > m_hCrateOwner; // 0xb40 - bool m_bOwnedByPlayer; // 0xb44 + char* m_pszCrateName; // 0xc50 + CHandle< CBasePlayerPawn > m_hCrateOwner; // 0xc58 + bool m_bOwnedByPlayer; // 0xc5c private: - [[maybe_unused]] uint8_t __pad0b45[0x3]; // 0xb45 + [[maybe_unused]] uint8_t __pad0c5d[0x3]; // 0xc5d public: - float m_flDampingOriginalSpeed; // 0xb48 - float m_flDampingOriginalRot; // 0xb4c + float m_flDampingOriginalSpeed; // 0xc60 + float m_flDampingOriginalRot; // 0xc64 }; // Alignment: 0 -// Size: 0xb50 +// Size: 0xc68 class CPhysPropMetalCrate : public CPhysPropLootCrate { public: @@ -16817,80 +15740,78 @@ public: }; // Alignment: 3 -// Size: 0xb60 +// Size: 0xc78 class CPhysPropMoneyCrate : public CPhysPropLootCrate { public: - int32_t m_nCurrentCashCount; // 0xb50 - int32_t m_nCashCount; // 0xb54 - GameTime_t m_flTimeLastUsed; // 0xb58 + int32_t m_nCurrentCashCount; // 0xc68 + int32_t m_nCashCount; // 0xc6c + GameTime_t m_flTimeLastUsed; // 0xc70 }; // Alignment: 2 -// Size: 0xb58 +// Size: 0xc70 class CPhysPropParadropCrate : public CPhysPropLootCrate { public: - bool m_bFalling; // 0xb50 + bool m_bFalling; // 0xc68 private: - [[maybe_unused]] uint8_t __pad0b51[0x3]; // 0xb51 + [[maybe_unused]] uint8_t __pad0c69[0x3]; // 0xc69 public: - int32_t m_nNumThinksAtZeroVerticalVelocity; // 0xb54 + int32_t m_nNumThinksAtZeroVerticalVelocity; // 0xc6c }; // Alignment: 2 -// Size: 0xb38 +// Size: 0xc50 class CPhysPropAmmoBox : public CBrBaseItem { public: - int32_t m_nUsesRemaining; // 0xb28 - GameTime_t m_flTimeLastUsed; // 0xb2c + int32_t m_nUsesRemaining; // 0xc40 + GameTime_t m_flTimeLastUsed; // 0xc44 }; // Alignment: 2 -// Size: 0xb30 +// Size: 0xc48 class CPhysPropWeaponUpgrade : public CBrBaseItem { public: - int32_t m_nEventPriority; // 0xb28 - GameTime_t m_flTimeLastUsed; // 0xb2c + int32_t m_nEventPriority; // 0xc40 + GameTime_t m_flTimeLastUsed; // 0xc44 }; // Alignment: 4 -// Size: 0xb60 +// Size: 0xc78 class CPhysPropRadarJammer : public CBrBaseItem { -private: - [[maybe_unused]] uint8_t __pad0b28[0x8]; // 0xb28 public: - GameTime_t m_flSpawnTime; // 0xb30 - GameTime_t m_flLastSoundTime; // 0xb34 - CUtlVector< int32 > m_vecJammedHexCenters; // 0xb38 - Vector m_vecLastJammedOrigin; // 0xb50 + GameTime_t m_flSpawnTime; // 0xc48 + GameTime_t m_flLastSoundTime; // 0xc4c + CUtlVector< int32 > m_vecJammedHexCenters; // 0xc50 + Vector m_vecLastJammedOrigin; // 0xc68 }; // Alignment: 3 -// Size: 0x9b0 +// Size: 0xad8 class CSensorGrenadeProjectile : public CBaseCSGrenadeProjectile { public: - GameTime_t m_fExpireTime; // 0x9a0 - GameTime_t m_fNextDetectPlayerSound; // 0x9a4 - CHandle< CBaseEntity > m_hDisplayGrenade; // 0x9a8 + GameTime_t m_fExpireTime; // 0xac8 + GameTime_t m_fNextDetectPlayerSound; // 0xacc + CHandle< CBaseEntity > m_hDisplayGrenade; // 0xad0 }; // Alignment: 3 -// Size: 0x9a8 +// Size: 0xad0 class CFlashbangProjectile : public CBaseCSGrenadeProjectile { public: - float m_flTimeToDetonate; // 0x9a0 - uint8_t m_numOpponentsHit; // 0x9a4 - uint8_t m_numTeammatesHit; // 0x9a5 + float m_flTimeToDetonate; // 0xac8 + uint8_t m_numOpponentsHit; // 0xacc + uint8_t m_numTeammatesHit; // 0xacd }; // Alignment: 0 -// Size: 0x9a0 +// Size: 0xac8 class CHEGrenadeProjectile : public CBaseCSGrenadeProjectile { public: @@ -16898,7 +15819,7 @@ public: }; // Alignment: 0 -// Size: 0x920 +// Size: 0xa30 class CPlantedC4Survival : public CPlantedC4 { public: @@ -16906,84 +15827,82 @@ public: }; // Alignment: 33 -// Size: 0x2fe0 +// Size: 0x30f0 class CChicken : public CDynamicProp { -private: - [[maybe_unused]] uint8_t __pad0a98[0x20]; // 0xa98 public: // MNetworkEnable - CAttributeContainer m_AttributeManager; // 0xab8 + CAttributeContainer m_AttributeManager; // 0xbc8 // MNetworkEnable - uint32_t m_OriginalOwnerXuidLow; // 0xd80 + uint32_t m_OriginalOwnerXuidLow; // 0xe90 // MNetworkEnable - uint32_t m_OriginalOwnerXuidHigh; // 0xd84 - CountdownTimer m_updateTimer; // 0xd88 - Vector m_stuckAnchor; // 0xda0 + uint32_t m_OriginalOwnerXuidHigh; // 0xe94 + CountdownTimer m_updateTimer; // 0xe98 + Vector m_stuckAnchor; // 0xeb0 private: - [[maybe_unused]] uint8_t __pad0dac[0x4]; // 0xdac + [[maybe_unused]] uint8_t __pad0ebc[0x4]; // 0xebc public: - CountdownTimer m_stuckTimer; // 0xdb0 - CountdownTimer m_collisionStuckTimer; // 0xdc8 - bool m_isOnGround; // 0xde0 + CountdownTimer m_stuckTimer; // 0xec0 + CountdownTimer m_collisionStuckTimer; // 0xed8 + bool m_isOnGround; // 0xef0 private: - [[maybe_unused]] uint8_t __pad0de1[0x3]; // 0xde1 + [[maybe_unused]] uint8_t __pad0ef1[0x3]; // 0xef1 public: - ChickenActivity m_activity; // 0xde4 - CountdownTimer m_activityTimer; // 0xde8 - float m_turnRate; // 0xe00 - CHandle< CBaseEntity > m_fleeFrom; // 0xe04 - CountdownTimer m_moveRateThrottleTimer; // 0xe08 - CountdownTimer m_startleTimer; // 0xe20 - CountdownTimer m_vocalizeTimer; // 0xe38 - GameTime_t m_flWhenZombified; // 0xe50 + ChickenActivity m_activity; // 0xef4 + CountdownTimer m_activityTimer; // 0xef8 + float m_turnRate; // 0xf10 + CHandle< CBaseEntity > m_fleeFrom; // 0xf14 + CountdownTimer m_moveRateThrottleTimer; // 0xf18 + CountdownTimer m_startleTimer; // 0xf30 + CountdownTimer m_vocalizeTimer; // 0xf48 + GameTime_t m_flWhenZombified; // 0xf60 // MNetworkEnable - bool m_jumpedThisFrame; // 0xe54 + bool m_jumpedThisFrame; // 0xf64 private: - [[maybe_unused]] uint8_t __pad0e55[0x3]; // 0xe55 + [[maybe_unused]] uint8_t __pad0f65[0x3]; // 0xf65 public: // MNetworkEnable - CHandle< CCSPlayerPawnBase > m_leader; // 0xe58 + CHandle< CCSPlayerPawnBase > m_leader; // 0xf68 private: - [[maybe_unused]] uint8_t __pad0e5c[0x4]; // 0xe5c + [[maybe_unused]] uint8_t __pad0f6c[0x4]; // 0xf6c public: - CountdownTimer m_reuseTimer; // 0xe60 - bool m_hasBeenUsed; // 0xe78 + CountdownTimer m_reuseTimer; // 0xf70 + bool m_hasBeenUsed; // 0xf88 private: - [[maybe_unused]] uint8_t __pad0e79[0x7]; // 0xe79 + [[maybe_unused]] uint8_t __pad0f89[0x7]; // 0xf89 public: - CountdownTimer m_jumpTimer; // 0xe80 - float m_flLastJumpTime; // 0xe98 - bool m_bInJump; // 0xe9c - bool m_isWaitingForLeader; // 0xe9d + CountdownTimer m_jumpTimer; // 0xf90 + float m_flLastJumpTime; // 0xfa8 + bool m_bInJump; // 0xfac + bool m_isWaitingForLeader; // 0xfad private: - [[maybe_unused]] uint8_t __pad0e9e[0x200a]; // 0xe9e + [[maybe_unused]] uint8_t __pad0fae[0x200a]; // 0xfae public: - CountdownTimer m_repathTimer; // 0x2ea8 - CountdownTimer m_inhibitDoorTimer; // 0x2ec0 + CountdownTimer m_repathTimer; // 0x2fb8 + CountdownTimer m_inhibitDoorTimer; // 0x2fd0 private: - [[maybe_unused]] uint8_t __pad2ed8[0x78]; // 0x2ed8 + [[maybe_unused]] uint8_t __pad2fe8[0x78]; // 0x2fe8 public: - CountdownTimer m_inhibitObstacleAvoidanceTimer; // 0x2f50 + CountdownTimer m_inhibitObstacleAvoidanceTimer; // 0x3060 private: - [[maybe_unused]] uint8_t __pad2f68[0x8]; // 0x2f68 + [[maybe_unused]] uint8_t __pad3078[0x8]; // 0x3078 public: - Vector m_vecPathGoal; // 0x2f70 - float m_flActiveFollowStartTime; // 0x2f7c - CountdownTimer m_followMinuteTimer; // 0x2f80 - Vector m_vecLastEggPoopPosition; // 0x2f98 + Vector m_vecPathGoal; // 0x3080 + float m_flActiveFollowStartTime; // 0x308c + CountdownTimer m_followMinuteTimer; // 0x3090 + Vector m_vecLastEggPoopPosition; // 0x30a8 private: - [[maybe_unused]] uint8_t __pad2fa4[0x4]; // 0x2fa4 + [[maybe_unused]] uint8_t __pad30b4[0x4]; // 0x30b4 public: - CUtlVector< CHandle< CBaseEntity > > m_vecEggsPooped; // 0x2fa8 + CUtlVector< CHandle< CBaseEntity > > m_vecEggsPooped; // 0x30b8 private: - [[maybe_unused]] uint8_t __pad2fc0[0x8]; // 0x2fc0 + [[maybe_unused]] uint8_t __pad30d0[0x8]; // 0x30d0 public: - CountdownTimer m_BlockDirectionTimer; // 0x2fc8 + CountdownTimer m_BlockDirectionTimer; // 0x30d8 }; // Alignment: 0 -// Size: 0x820 +// Size: 0x930 class CHostageCarriableProp : public CBaseAnimGraph { public: @@ -16991,7 +15910,7 @@ public: }; // Alignment: 0 -// Size: 0x8f8 +// Size: 0xa08 class CItemAssaultSuit : public CItem { public: @@ -16999,7 +15918,7 @@ public: }; // Alignment: 0 -// Size: 0x8f8 +// Size: 0xa08 class CItemHeavyAssaultSuit : public CItemAssaultSuit { public: @@ -17007,7 +15926,7 @@ public: }; // Alignment: 0 -// Size: 0x8f8 +// Size: 0xa08 class CItemKevlar : public CItem { public: @@ -17015,54 +15934,54 @@ public: }; // Alignment: 2 -// Size: 0x918 +// Size: 0xa28 class CItemDefuser : public CItem { public: - EntitySpottedState_t m_entitySpottedState; // 0x8f8 - int32_t m_nSpotRules; // 0x910 + EntitySpottedState_t m_entitySpottedState; // 0xa08 + int32_t m_nSpotRules; // 0xa20 }; // Alignment: 10 -// Size: 0xbf8 +// Size: 0xd08 class CBasePlayerWeapon : public CEconEntity { public: // MNetworkEnable // MNetworkChangeCallback "OnWeaponStateChanged" - WeaponState_t m_iState; // 0xba8 - bool m_bRemoveable; // 0xbac + WeaponState_t m_iState; // 0xcb8 + bool m_bRemoveable; // 0xcbc private: - [[maybe_unused]] uint8_t __pad0bad[0x3]; // 0xbad + [[maybe_unused]] uint8_t __pad0cbd[0x3]; // 0xcbd public: // MNetworkEnable // MNetworkUserGroup "LocalWeaponExclusive" - GameTick_t m_nNextPrimaryAttackTick; // 0xbb0 + GameTick_t m_nNextPrimaryAttackTick; // 0xcc0 // MNetworkEnable // MNetworkUserGroup "LocalWeaponExclusive" - float m_flNextPrimaryAttackTickRatio; // 0xbb4 + float m_flNextPrimaryAttackTickRatio; // 0xcc4 // MNetworkEnable // MNetworkUserGroup "LocalWeaponExclusive" - GameTick_t m_nNextSecondaryAttackTick; // 0xbb8 + GameTick_t m_nNextSecondaryAttackTick; // 0xcc8 // MNetworkEnable // MNetworkUserGroup "LocalWeaponExclusive" - float m_flNextSecondaryAttackTickRatio; // 0xbbc + float m_flNextSecondaryAttackTickRatio; // 0xccc // MNetworkEnable // MNetworkSerializer "minusone" // MNetworkPriority "32" - int32_t m_iClip1; // 0xbc0 + int32_t m_iClip1; // 0xcd0 // MNetworkEnable // MNetworkSerializer "minusone" // MNetworkUserGroup "LocalWeaponExclusive" - int32_t m_iClip2; // 0xbc4 + int32_t m_iClip2; // 0xcd4 // MNetworkEnable // MNetworkUserGroup "LocalWeaponExclusive" - int32_t m_pReserveAmmo[2]; // 0xbc8 - CEntityIOOutput m_OnPlayerUse; // 0xbd0 + int32_t m_pReserveAmmo[2]; // 0xcd8 + CEntityIOOutput m_OnPlayerUse; // 0xce0 }; // Alignment: 0 -// Size: 0x8b0 +// Size: 0x9c0 class CBaseFlexAlias_funCBaseFlex : public CBaseFlex { public: @@ -17070,16 +15989,16 @@ public: }; // Alignment: 2 -// Size: 0x928 +// Size: 0xa38 class CScriptItem : public CItem { public: - CEntityIOOutput m_OnPlayerPickup; // 0x8f8 - MoveType_t m_MoveTypeOverride; // 0x920 + CEntityIOOutput m_OnPlayerPickup; // 0xa08 + MoveType_t m_MoveTypeOverride; // 0xa30 }; // Alignment: 0 -// Size: 0x9c8 +// Size: 0xad8 class CRagdollPropAlias_physics_prop_ragdoll : public CRagdollProp { public: @@ -17087,424 +16006,420 @@ public: }; // Alignment: 6 -// Size: 0xa08 +// Size: 0xb18 class CRagdollPropAttached : public CRagdollProp { public: // MNetworkEnable - uint32_t m_boneIndexAttached; // 0x9c8 + uint32_t m_boneIndexAttached; // 0xad8 // MNetworkEnable - uint32_t m_ragdollAttachedObjectIndex; // 0x9cc + uint32_t m_ragdollAttachedObjectIndex; // 0xadc // MNetworkEnable // MNetworkEncoder - Vector m_attachmentPointBoneSpace; // 0x9d0 + Vector m_attachmentPointBoneSpace; // 0xae0 // MNetworkEnable // MNetworkEncoder - Vector m_attachmentPointRagdollSpace; // 0x9dc - bool m_bShouldDetach; // 0x9e8 + Vector m_attachmentPointRagdollSpace; // 0xaec + bool m_bShouldDetach; // 0xaf8 private: - [[maybe_unused]] uint8_t __pad09e9[0xf]; // 0x9e9 + [[maybe_unused]] uint8_t __pad0af9[0xf]; // 0xaf9 public: - bool m_bShouldDeleteAttachedActivationRecord; // 0x9f8 + bool m_bShouldDeleteAttachedActivationRecord; // 0xb08 }; // Alignment: 16 -// Size: 0xdb8 +// Size: 0xec8 class CPropDoorRotating : public CBasePropDoor { public: - Vector m_vecAxis; // 0xd28 - float m_flDistance; // 0xd34 - PropDoorRotatingSpawnPos_t m_eSpawnPosition; // 0xd38 - PropDoorRotatingOpenDirection_e m_eOpenDirection; // 0xd3c - PropDoorRotatingOpenDirection_e m_eCurrentOpenDirection; // 0xd40 - float m_flAjarAngle; // 0xd44 - QAngle m_angRotationAjarDeprecated; // 0xd48 - QAngle m_angRotationClosed; // 0xd54 - QAngle m_angRotationOpenForward; // 0xd60 - QAngle m_angRotationOpenBack; // 0xd6c - QAngle m_angGoal; // 0xd78 - Vector m_vecForwardBoundsMin; // 0xd84 - Vector m_vecForwardBoundsMax; // 0xd90 - Vector m_vecBackBoundsMin; // 0xd9c - Vector m_vecBackBoundsMax; // 0xda8 - CHandle< CEntityBlocker > m_hEntityBlocker; // 0xdb4 + Vector m_vecAxis; // 0xe38 + float m_flDistance; // 0xe44 + PropDoorRotatingSpawnPos_t m_eSpawnPosition; // 0xe48 + PropDoorRotatingOpenDirection_e m_eOpenDirection; // 0xe4c + PropDoorRotatingOpenDirection_e m_eCurrentOpenDirection; // 0xe50 + float m_flAjarAngle; // 0xe54 + QAngle m_angRotationAjarDeprecated; // 0xe58 + QAngle m_angRotationClosed; // 0xe64 + QAngle m_angRotationOpenForward; // 0xe70 + QAngle m_angRotationOpenBack; // 0xe7c + QAngle m_angGoal; // 0xe88 + Vector m_vecForwardBoundsMin; // 0xe94 + Vector m_vecForwardBoundsMax; // 0xea0 + Vector m_vecBackBoundsMin; // 0xeac + Vector m_vecBackBoundsMax; // 0xeb8 + CHandle< CEntityBlocker > m_hEntityBlocker; // 0xec4 }; // Alignment: 4 -// Size: 0xdd8 +// Size: 0xee8 class CPropDoorRotatingBreakable : public CPropDoorRotating { public: - bool m_bBreakable; // 0xdb8 - bool m_isAbleToCloseAreaPortals; // 0xdb9 + bool m_bBreakable; // 0xec8 + bool m_isAbleToCloseAreaPortals; // 0xec9 private: - [[maybe_unused]] uint8_t __pad0dba[0x2]; // 0xdba + [[maybe_unused]] uint8_t __pad0eca[0x2]; // 0xeca public: - int32_t m_currentDamageState; // 0xdbc - CUtlVector< CUtlSymbolLarge > m_damageStates; // 0xdc0 + int32_t m_currentDamageState; // 0xecc + CUtlVector< CUtlSymbolLarge > m_damageStates; // 0xed0 }; // Alignment: 14 -// Size: 0x968 +// Size: 0xa78 class CBaseCombatCharacter : public CBaseFlex { public: - bool m_bForceServerRagdoll; // 0x8b0 + bool m_bForceServerRagdoll; // 0x9c0 private: - [[maybe_unused]] uint8_t __pad08b1[0x7]; // 0x8b1 + [[maybe_unused]] uint8_t __pad09c1[0x7]; // 0x9c1 public: // MNetworkEnable - CNetworkUtlVectorBase< CHandle< CEconWearable > > m_hMyWearables; // 0x8b8 + CNetworkUtlVectorBase< CHandle< CEconWearable > > m_hMyWearables; // 0x9c8 // MNetworkEnable - float m_flFieldOfView; // 0x8d0 - float m_impactEnergyScale; // 0x8d4 - HitGroup_t m_LastHitGroup; // 0x8d8 - bool m_bApplyStressDamage; // 0x8dc + float m_flFieldOfView; // 0x9e0 + float m_impactEnergyScale; // 0x9e4 + HitGroup_t m_LastHitGroup; // 0x9e8 + bool m_bApplyStressDamage; // 0x9ec private: - [[maybe_unused]] uint8_t __pad08dd[0x3]; // 0x8dd + [[maybe_unused]] uint8_t __pad09ed[0x3]; // 0x9ed public: - int32_t m_bloodColor; // 0x8e0 + int32_t m_bloodColor; // 0x9f0 private: - [[maybe_unused]] uint8_t __pad08e4[0x5c]; // 0x8e4 + [[maybe_unused]] uint8_t __pad09f4[0x5c]; // 0x9f4 public: - int32_t m_registeredNavTeam; // 0x940 - int32_t m_navMeshID; // 0x944 - int32_t m_iDamageCount; // 0x948 + int32_t m_registeredNavTeam; // 0xa50 + int32_t m_navMeshID; // 0xa54 + int32_t m_iDamageCount; // 0xa58 private: - [[maybe_unused]] uint8_t __pad094c[0x4]; // 0x94c + [[maybe_unused]] uint8_t __pad0a5c[0x4]; // 0xa5c public: - CUtlVector< RelationshipOverride_t >* m_pVecRelationships; // 0x950 - CUtlSymbolLarge m_strRelationships; // 0x958 - Hull_t m_eHull; // 0x960 - uint32_t m_nNavHullIdx; // 0x964 - - // Static fields: + CUtlVector< RelationshipOverride_t >* m_pVecRelationships; // 0xa60 + CUtlSymbolLarge m_strRelationships; // 0xa68 + Hull_t m_eHull; // 0xa70 + uint32_t m_nNavHullIdx; // 0xa74 static int32_t &Get_sm_lastInteraction(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBaseCombatCharacter")->m_static_fields[0]->m_instance);}; }; // Alignment: 32 -// Size: 0xa68 +// Size: 0xb78 class CItemGeneric : public CItem { -private: - [[maybe_unused]] uint8_t __pad08f8[0x8]; // 0x8f8 public: - bool m_bHasTriggerRadius; // 0x900 - bool m_bHasPickupRadius; // 0x901 + bool m_bHasTriggerRadius; // 0xa10 + bool m_bHasPickupRadius; // 0xa11 private: - [[maybe_unused]] uint8_t __pad0902[0x2]; // 0x902 + [[maybe_unused]] uint8_t __pad0a12[0x2]; // 0xa12 public: - float m_flPickupRadiusSqr; // 0x904 - float m_flTriggerRadiusSqr; // 0x908 - GameTime_t m_flLastPickupCheck; // 0x90c - bool m_bPlayerCounterListenerAdded; // 0x910 - bool m_bPlayerInTriggerRadius; // 0x911 + float m_flPickupRadiusSqr; // 0xa14 + float m_flTriggerRadiusSqr; // 0xa18 + GameTime_t m_flLastPickupCheck; // 0xa1c + bool m_bPlayerCounterListenerAdded; // 0xa20 + bool m_bPlayerInTriggerRadius; // 0xa21 private: - [[maybe_unused]] uint8_t __pad0912[0x6]; // 0x912 + [[maybe_unused]] uint8_t __pad0a22[0x6]; // 0xa22 public: - CStrongHandle< InfoForResourceTypeIParticleSystemDefinition > m_hSpawnParticleEffect; // 0x918 - CUtlSymbolLarge m_pAmbientSoundEffect; // 0x920 - bool m_bAutoStartAmbientSound; // 0x928 + CStrongHandle< InfoForResourceTypeIParticleSystemDefinition > m_hSpawnParticleEffect; // 0xa28 + CUtlSymbolLarge m_pAmbientSoundEffect; // 0xa30 + bool m_bAutoStartAmbientSound; // 0xa38 private: - [[maybe_unused]] uint8_t __pad0929[0x7]; // 0x929 + [[maybe_unused]] uint8_t __pad0a39[0x7]; // 0xa39 public: - CUtlSymbolLarge m_pSpawnScriptFunction; // 0x930 - CStrongHandle< InfoForResourceTypeIParticleSystemDefinition > m_hPickupParticleEffect; // 0x938 - CUtlSymbolLarge m_pPickupSoundEffect; // 0x940 - CUtlSymbolLarge m_pPickupScriptFunction; // 0x948 - CStrongHandle< InfoForResourceTypeIParticleSystemDefinition > m_hTimeoutParticleEffect; // 0x950 - CUtlSymbolLarge m_pTimeoutSoundEffect; // 0x958 - CUtlSymbolLarge m_pTimeoutScriptFunction; // 0x960 - CUtlSymbolLarge m_pPickupFilterName; // 0x968 - CHandle< CBaseFilter > m_hPickupFilter; // 0x970 + CUtlSymbolLarge m_pSpawnScriptFunction; // 0xa40 + CStrongHandle< InfoForResourceTypeIParticleSystemDefinition > m_hPickupParticleEffect; // 0xa48 + CUtlSymbolLarge m_pPickupSoundEffect; // 0xa50 + CUtlSymbolLarge m_pPickupScriptFunction; // 0xa58 + CStrongHandle< InfoForResourceTypeIParticleSystemDefinition > m_hTimeoutParticleEffect; // 0xa60 + CUtlSymbolLarge m_pTimeoutSoundEffect; // 0xa68 + CUtlSymbolLarge m_pTimeoutScriptFunction; // 0xa70 + CUtlSymbolLarge m_pPickupFilterName; // 0xa78 + CHandle< CBaseFilter > m_hPickupFilter; // 0xa80 private: - [[maybe_unused]] uint8_t __pad0974[0x4]; // 0x974 + [[maybe_unused]] uint8_t __pad0a84[0x4]; // 0xa84 public: - CEntityIOOutput m_OnPickup; // 0x978 - CEntityIOOutput m_OnTimeout; // 0x9a0 - CEntityIOOutput m_OnTriggerStartTouch; // 0x9c8 - CEntityIOOutput m_OnTriggerTouch; // 0x9f0 - CEntityIOOutput m_OnTriggerEndTouch; // 0xa18 - CUtlSymbolLarge m_pAllowPickupScriptFunction; // 0xa40 - float m_flPickupRadius; // 0xa48 - float m_flTriggerRadius; // 0xa4c - CUtlSymbolLarge m_pTriggerSoundEffect; // 0xa50 - bool m_bGlowWhenInTrigger; // 0xa58 - Color m_glowColor; // 0xa59 - bool m_bUseable; // 0xa5d + CEntityIOOutput m_OnPickup; // 0xa88 + CEntityIOOutput m_OnTimeout; // 0xab0 + CEntityIOOutput m_OnTriggerStartTouch; // 0xad8 + CEntityIOOutput m_OnTriggerTouch; // 0xb00 + CEntityIOOutput m_OnTriggerEndTouch; // 0xb28 + CUtlSymbolLarge m_pAllowPickupScriptFunction; // 0xb50 + float m_flPickupRadius; // 0xb58 + float m_flTriggerRadius; // 0xb5c + CUtlSymbolLarge m_pTriggerSoundEffect; // 0xb60 + bool m_bGlowWhenInTrigger; // 0xb68 + Color m_glowColor; // 0xb69 + bool m_bUseable; // 0xb6d private: - [[maybe_unused]] uint8_t __pad0a5e[0x2]; // 0xa5e + [[maybe_unused]] uint8_t __pad0b6e[0x2]; // 0xb6e public: - CHandle< CItemGenericTriggerHelper > m_hTriggerHelper; // 0xa60 + CHandle< CItemGenericTriggerHelper > m_hTriggerHelper; // 0xb70 }; // Alignment: 24 -// Size: 0xaa0 +// Size: 0xbb0 class CBasePlayerPawn : public CBaseCombatCharacter { public: // MNetworkEnable - CPlayer_WeaponServices* m_pWeaponServices; // 0x968 + CPlayer_WeaponServices* m_pWeaponServices; // 0xa78 // MNetworkEnable - CPlayer_ItemServices* m_pItemServices; // 0x970 + CPlayer_ItemServices* m_pItemServices; // 0xa80 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - CPlayer_AutoaimServices* m_pAutoaimServices; // 0x978 + CPlayer_AutoaimServices* m_pAutoaimServices; // 0xa88 // MNetworkEnable - CPlayer_ObserverServices* m_pObserverServices; // 0x980 + CPlayer_ObserverServices* m_pObserverServices; // 0xa90 // MNetworkEnable - CPlayer_WaterServices* m_pWaterServices; // 0x988 + CPlayer_WaterServices* m_pWaterServices; // 0xa98 // MNetworkEnable - CPlayer_UseServices* m_pUseServices; // 0x990 + CPlayer_UseServices* m_pUseServices; // 0xaa0 // MNetworkEnable - CPlayer_FlashlightServices* m_pFlashlightServices; // 0x998 + CPlayer_FlashlightServices* m_pFlashlightServices; // 0xaa8 // MNetworkEnable - CPlayer_CameraServices* m_pCameraServices; // 0x9a0 + CPlayer_CameraServices* m_pCameraServices; // 0xab0 // MNetworkEnable - CPlayer_MovementServices* m_pMovementServices; // 0x9a8 + CPlayer_MovementServices* m_pMovementServices; // 0xab8 private: - [[maybe_unused]] uint8_t __pad09b0[0x8]; // 0x9b0 + [[maybe_unused]] uint8_t __pad0ac0[0x8]; // 0xac0 public: // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - FixAngleSet_t m_fixAngleChangeType; // 0x9b8 + FixAngleSet_t m_fixAngleChangeType; // 0xac8 private: - [[maybe_unused]] uint8_t __pad09b9[0x3]; // 0x9b9 + [[maybe_unused]] uint8_t __pad0ac9[0x3]; // 0xac9 public: // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - QAngle m_fixAngleChangeAngle; // 0x9bc + QAngle m_fixAngleChangeAngle; // 0xacc // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - int32_t m_fixAngleChangeTick; // 0x9c8 - QAngle v_angle; // 0x9cc + int32_t m_fixAngleChangeTick; // 0xad8 + QAngle v_angle; // 0xadc // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - uint32_t m_iHideHUD; // 0x9d8 + uint32_t m_iHideHUD; // 0xae8 private: - [[maybe_unused]] uint8_t __pad09dc[0x4]; // 0x9dc + [[maybe_unused]] uint8_t __pad0aec[0x4]; // 0xaec public: // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - sky3dparams_t m_skybox3d; // 0x9e0 - GameTime_t m_fTimeLastHurt; // 0xa70 + sky3dparams_t m_skybox3d; // 0xaf0 + GameTime_t m_fTimeLastHurt; // 0xb80 // MNetworkEnable - GameTime_t m_flDeathTime; // 0xa74 - GameTime_t m_fNextSuicideTime; // 0xa78 - bool m_fInitHUD; // 0xa7c + GameTime_t m_flDeathTime; // 0xb84 + GameTime_t m_fNextSuicideTime; // 0xb88 + bool m_fInitHUD; // 0xb8c private: - [[maybe_unused]] uint8_t __pad0a7d[0x3]; // 0xa7d + [[maybe_unused]] uint8_t __pad0b8d[0x3]; // 0xb8d public: - CAI_Expresser* m_pExpresser; // 0xa80 + CAI_Expresser* m_pExpresser; // 0xb90 // MNetworkEnable - CHandle< CBasePlayerController > m_hController; // 0xa88 + CHandle< CBasePlayerController > m_hController; // 0xb98 private: - [[maybe_unused]] uint8_t __pad0a8c[0x4]; // 0xa8c + [[maybe_unused]] uint8_t __pad0b9c[0x4]; // 0xb9c public: - float m_fHltvReplayDelay; // 0xa90 - float m_fHltvReplayEnd; // 0xa94 - CEntityIndex m_iHltvReplayEntity; // 0xa98 + float m_fHltvReplayDelay; // 0xba0 + float m_fHltvReplayEnd; // 0xba4 + CEntityIndex m_iHltvReplayEntity; // 0xba8 }; // Alignment: 3 -// Size: 0x878 +// Size: 0x988 class CCSGOViewModel : public CPredictedViewModel { public: // MNetworkEnable - bool m_bShouldIgnoreOffsetAndAccuracy; // 0x868 + bool m_bShouldIgnoreOffsetAndAccuracy; // 0x978 private: - [[maybe_unused]] uint8_t __pad0869[0x3]; // 0x869 + [[maybe_unused]] uint8_t __pad0979[0x3]; // 0x979 public: // MNetworkEnable - uint32_t m_nWeaponParity; // 0x86c - uint32_t m_nOldWeaponParity; // 0x870 + uint32_t m_nWeaponParity; // 0x97c + uint32_t m_nOldWeaponParity; // 0x980 }; -// Alignment: 51 -// Size: 0xd50 +// Alignment: 52 +// Size: 0xe60 class CWeaponCSBase : public CBasePlayerWeapon { -private: - [[maybe_unused]] uint8_t __pad0bf8[0x28]; // 0xbf8 public: // MNetworkEnable - float m_flFireSequenceStartTime; // 0xc20 + float m_flFireSequenceStartTime; // 0xd30 // MNetworkEnable - int32_t m_nFireSequenceStartTimeChange; // 0xc24 - int32_t m_nFireSequenceStartTimeAck; // 0xc28 + int32_t m_nFireSequenceStartTimeChange; // 0xd34 + int32_t m_nFireSequenceStartTimeAck; // 0xd38 // MNetworkEnable - bool m_bPlayerFireEventIsPrimary; // 0xc2c + bool m_bPlayerFireEventIsPrimary; // 0xd3c private: - [[maybe_unused]] uint8_t __pad0c2d[0x3]; // 0xc2d + [[maybe_unused]] uint8_t __pad0d3d[0x3]; // 0xd3d public: - HSequence m_seqIdle; // 0xc30 - HSequence m_seqFirePrimary; // 0xc34 - HSequence m_seqFireSecondary; // 0xc38 + HSequence m_seqIdle; // 0xd40 + HSequence m_seqFirePrimary; // 0xd44 + HSequence m_seqFireSecondary; // 0xd48 + // MNetworkEnable + int32_t m_nRefundable; // 0xd4c private: - [[maybe_unused]] uint8_t __pad0c3c[0xc]; // 0xc3c + [[maybe_unused]] uint8_t __pad0d50[0x8]; // 0xd50 public: - bool m_bPlayerAmmoStockOnPickup; // 0xc48 - bool m_bRequireUseToTouch; // 0xc49 + bool m_bPlayerAmmoStockOnPickup; // 0xd58 + bool m_bRequireUseToTouch; // 0xd59 private: - [[maybe_unused]] uint8_t __pad0c4a[0x2]; // 0xc4a + [[maybe_unused]] uint8_t __pad0d5a[0x2]; // 0xd5a public: - GameTime_t m_flLastTimeInAir; // 0xc4c - GameTime_t m_flLastDeployTime; // 0xc50 + GameTime_t m_flLastTimeInAir; // 0xd5c + GameTime_t m_flLastDeployTime; // 0xd60 // MNetworkEnable // MNetworkUserGroup "LocalWeaponExclusive" - uint32_t m_nViewModelIndex; // 0xc54 - bool m_bReloadsWithClips; // 0xc58 + uint32_t m_nViewModelIndex; // 0xd64 + bool m_bReloadsWithClips; // 0xd68 private: - [[maybe_unused]] uint8_t __pad0c59[0x3]; // 0xc59 + [[maybe_unused]] uint8_t __pad0d69[0x3]; // 0xd69 public: // MNetworkEnable // MNetworkUserGroup "LocalWeaponExclusive" // MNetworkPriority "32" - GameTime_t m_flTimeWeaponIdle; // 0xc5c - bool m_bFireOnEmpty; // 0xc60 + GameTime_t m_flTimeWeaponIdle; // 0xd6c + bool m_bFireOnEmpty; // 0xd70 private: - [[maybe_unused]] uint8_t __pad0c61[0x7]; // 0xc61 + [[maybe_unused]] uint8_t __pad0d71[0x7]; // 0xd71 public: - CEntityIOOutput m_OnPlayerPickup; // 0xc68 + CEntityIOOutput m_OnPlayerPickup; // 0xd78 // MNetworkEnable - CSWeaponMode m_weaponMode; // 0xc90 - float m_flTurningInaccuracyDelta; // 0xc94 - Vector m_vecTurningInaccuracyEyeDirLast; // 0xc98 - float m_flTurningInaccuracy; // 0xca4 + CSWeaponMode m_weaponMode; // 0xda0 + float m_flTurningInaccuracyDelta; // 0xda4 + Vector m_vecTurningInaccuracyEyeDirLast; // 0xda8 + float m_flTurningInaccuracy; // 0xdb4 // MNetworkEnable - float m_fAccuracyPenalty; // 0xca8 - GameTime_t m_flLastAccuracyUpdateTime; // 0xcac - float m_fAccuracySmoothedForZoom; // 0xcb0 - GameTime_t m_fScopeZoomEndTime; // 0xcb4 + float m_fAccuracyPenalty; // 0xdb8 + GameTime_t m_flLastAccuracyUpdateTime; // 0xdbc + float m_fAccuracySmoothedForZoom; // 0xdc0 + GameTime_t m_fScopeZoomEndTime; // 0xdc4 // MNetworkEnable - int32_t m_iRecoilIndex; // 0xcb8 + int32_t m_iRecoilIndex; // 0xdc8 // MNetworkEnable - float m_flRecoilIndex; // 0xcbc + float m_flRecoilIndex; // 0xdcc // MNetworkEnable - bool m_bBurstMode; // 0xcc0 + bool m_bBurstMode; // 0xdd0 private: - [[maybe_unused]] uint8_t __pad0cc1[0x3]; // 0xcc1 + [[maybe_unused]] uint8_t __pad0dd1[0x3]; // 0xdd1 public: // MNetworkEnable - GameTime_t m_flPostponeFireReadyTime; // 0xcc4 + GameTime_t m_flPostponeFireReadyTime; // 0xdd4 // MNetworkEnable - bool m_bInReload; // 0xcc8 + bool m_bInReload; // 0xdd8 // MNetworkEnable - bool m_bReloadVisuallyComplete; // 0xcc9 + bool m_bReloadVisuallyComplete; // 0xdd9 private: - [[maybe_unused]] uint8_t __pad0cca[0x2]; // 0xcca + [[maybe_unused]] uint8_t __pad0dda[0x2]; // 0xdda public: // MNetworkEnable - GameTime_t m_flDroppedAtTime; // 0xccc + GameTime_t m_flDroppedAtTime; // 0xddc // MNetworkEnable - bool m_bIsHauledBack; // 0xcd0 + bool m_bIsHauledBack; // 0xde0 // MNetworkEnable - bool m_bSilencerOn; // 0xcd1 + bool m_bSilencerOn; // 0xde1 private: - [[maybe_unused]] uint8_t __pad0cd2[0x2]; // 0xcd2 + [[maybe_unused]] uint8_t __pad0de2[0x2]; // 0xde2 public: // MNetworkEnable - GameTime_t m_flTimeSilencerSwitchComplete; // 0xcd4 + GameTime_t m_flTimeSilencerSwitchComplete; // 0xde4 // MNetworkEnable - int32_t m_iOriginalTeamNumber; // 0xcd8 - float m_flNextAttackRenderTimeOffset; // 0xcdc + int32_t m_iOriginalTeamNumber; // 0xde8 + float m_flNextAttackRenderTimeOffset; // 0xdec private: - [[maybe_unused]] uint8_t __pad0ce0[0x8]; // 0xce0 + [[maybe_unused]] uint8_t __pad0df0[0x8]; // 0xdf0 public: - bool m_bCanBePickedUp; // 0xce8 - bool m_bUseCanOverrideNextOwnerTouchTime; // 0xce9 + bool m_bCanBePickedUp; // 0xdf8 + bool m_bUseCanOverrideNextOwnerTouchTime; // 0xdf9 private: - [[maybe_unused]] uint8_t __pad0cea[0x2]; // 0xcea + [[maybe_unused]] uint8_t __pad0dfa[0x2]; // 0xdfa public: - GameTime_t m_nextOwnerTouchTime; // 0xcec - GameTime_t m_nextPrevOwnerTouchTime; // 0xcf0 + GameTime_t m_nextOwnerTouchTime; // 0xdfc + GameTime_t m_nextPrevOwnerTouchTime; // 0xe00 // MNetworkEnable - CHandle< CCSPlayerPawnBase > m_hPrevOwner; // 0xcf4 + CHandle< CCSPlayerPawnBase > m_hPrevOwner; // 0xe04 private: - [[maybe_unused]] uint8_t __pad0cf8[0x1c]; // 0xcf8 + [[maybe_unused]] uint8_t __pad0e08[0x1c]; // 0xe08 public: - bool m_donated; // 0xd14 + bool m_donated; // 0xe24 private: - [[maybe_unused]] uint8_t __pad0d15[0x3]; // 0xd15 + [[maybe_unused]] uint8_t __pad0e25[0x3]; // 0xe25 public: // MNetworkEnable - GameTime_t m_fLastShotTime; // 0xd18 - bool m_bWasOwnedByCT; // 0xd1c - bool m_bWasOwnedByTerrorist; // 0xd1d - bool m_bFiredOutOfAmmoEvent; // 0xd1e + GameTime_t m_fLastShotTime; // 0xe28 + bool m_bWasOwnedByCT; // 0xe2c + bool m_bWasOwnedByTerrorist; // 0xe2d + bool m_bFiredOutOfAmmoEvent; // 0xe2e private: - [[maybe_unused]] uint8_t __pad0d1f[0x1]; // 0xd1f + [[maybe_unused]] uint8_t __pad0e2f[0x1]; // 0xe2f public: - int32_t m_numRemoveUnownedWeaponThink; // 0xd20 + int32_t m_numRemoveUnownedWeaponThink; // 0xe30 private: - [[maybe_unused]] uint8_t __pad0d24[0x4]; // 0xd24 + [[maybe_unused]] uint8_t __pad0e34[0x4]; // 0xe34 public: - CIronSightController m_IronSightController; // 0xd28 + CIronSightController m_IronSightController; // 0xe38 // MNetworkEnable - int32_t m_iIronSightMode; // 0xd40 - GameTime_t m_flLastLOSTraceFailureTime; // 0xd44 + int32_t m_iIronSightMode; // 0xe50 + GameTime_t m_flLastLOSTraceFailureTime; // 0xe54 // MNetworkEnable - int32_t m_iNumEmptyAttacks; // 0xd48 + int32_t m_iNumEmptyAttacks; // 0xe58 }; // Alignment: 9 -// Size: 0xd70 +// Size: 0xe80 class CWeaponCSBaseGun : public CWeaponCSBase { public: // MNetworkEnable - int32_t m_zoomLevel; // 0xd50 + int32_t m_zoomLevel; // 0xe60 // MNetworkEnable - int32_t m_iBurstShotsRemaining; // 0xd54 + int32_t m_iBurstShotsRemaining; // 0xe64 private: - [[maybe_unused]] uint8_t __pad0d58[0x8]; // 0xd58 + [[maybe_unused]] uint8_t __pad0e68[0x8]; // 0xe68 public: - int32_t m_silencedModelIndex; // 0xd60 - bool m_inPrecache; // 0xd64 + int32_t m_silencedModelIndex; // 0xe70 + bool m_inPrecache; // 0xe74 // MNetworkEnable - bool m_bNeedsBoltAction; // 0xd65 - bool m_bSkillReloadAvailable; // 0xd66 - bool m_bSkillReloadLiftedReloadKey; // 0xd67 - bool m_bSkillBoltInterruptAvailable; // 0xd68 - bool m_bSkillBoltLiftedFireKey; // 0xd69 + bool m_bNeedsBoltAction; // 0xe75 + bool m_bSkillReloadAvailable; // 0xe76 + bool m_bSkillReloadLiftedReloadKey; // 0xe77 + bool m_bSkillBoltInterruptAvailable; // 0xe78 + bool m_bSkillBoltLiftedFireKey; // 0xe79 }; // Alignment: 13 -// Size: 0xda0 +// Size: 0xeb0 class CC4 : public CWeaponCSBase { public: - Vector m_vecLastValidPlayerHeldPosition; // 0xd50 - Vector m_vecLastValidDroppedPosition; // 0xd5c - bool m_bDoValidDroppedPositionCheck; // 0xd68 + Vector m_vecLastValidPlayerHeldPosition; // 0xe60 + Vector m_vecLastValidDroppedPosition; // 0xe6c + bool m_bDoValidDroppedPositionCheck; // 0xe78 // MNetworkEnable - bool m_bStartedArming; // 0xd69 + bool m_bStartedArming; // 0xe79 private: - [[maybe_unused]] uint8_t __pad0d6a[0x2]; // 0xd6a + [[maybe_unused]] uint8_t __pad0e7a[0x2]; // 0xe7a public: // MNetworkEnable - GameTime_t m_fArmedTime; // 0xd6c + GameTime_t m_fArmedTime; // 0xe7c // MNetworkEnable - bool m_bBombPlacedAnimation; // 0xd70 + bool m_bBombPlacedAnimation; // 0xe80 // MNetworkEnable - bool m_bShowC4LED; // 0xd71 + bool m_bShowC4LED; // 0xe81 // MNetworkEnable - bool m_bIsPlantingViaUse; // 0xd72 + bool m_bIsPlantingViaUse; // 0xe82 private: - [[maybe_unused]] uint8_t __pad0d73[0x5]; // 0xd73 + [[maybe_unused]] uint8_t __pad0e83[0x5]; // 0xe83 public: // MNetworkEnable - EntitySpottedState_t m_entitySpottedState; // 0xd78 - int32_t m_nSpotRules; // 0xd90 - bool m_bPlayedArmingBeeps[7]; // 0xd94 - bool m_bBombPlanted; // 0xd9b - bool m_bDroppedFromDeath; // 0xd9c + EntitySpottedState_t m_entitySpottedState; // 0xe88 + int32_t m_nSpotRules; // 0xea0 + bool m_bPlayedArmingBeeps[7]; // 0xea4 + bool m_bBombPlanted; // 0xeab + bool m_bDroppedFromDeath; // 0xeac }; // Alignment: 0 -// Size: 0xd70 +// Size: 0xe80 class CDEagle : public CWeaponCSBaseGun { public: @@ -17512,7 +16427,7 @@ public: }; // Alignment: 0 -// Size: 0xd70 +// Size: 0xe80 class CWeaponElite : public CWeaponCSBaseGun { public: @@ -17520,7 +16435,7 @@ public: }; // Alignment: 0 -// Size: 0xd50 +// Size: 0xe60 class CWeaponNOVA : public CWeaponCSBase { public: @@ -17528,7 +16443,7 @@ public: }; // Alignment: 0 -// Size: 0xd50 +// Size: 0xe60 class CWeaponSawedoff : public CWeaponCSBase { public: @@ -17536,16 +16451,16 @@ public: }; // Alignment: 1 -// Size: 0xd78 +// Size: 0xe88 class CWeaponTaser : public CWeaponCSBaseGun { public: // MNetworkEnable - GameTime_t m_fFireTime; // 0xd70 + GameTime_t m_fFireTime; // 0xe80 }; // Alignment: 0 -// Size: 0xd50 +// Size: 0xe60 class CWeaponXM1014 : public CWeaponCSBase { public: @@ -17553,7 +16468,7 @@ public: }; // Alignment: 0 -// Size: 0xd50 +// Size: 0xe60 class CKnife : public CWeaponCSBase { public: @@ -17561,7 +16476,7 @@ public: }; // Alignment: 0 -// Size: 0xd50 +// Size: 0xe60 class CKnifeGG : public CKnife { public: @@ -17569,18 +16484,18 @@ public: }; // Alignment: 3 -// Size: 0xd60 +// Size: 0xe70 class CMelee : public CWeaponCSBase { public: // MNetworkEnable - GameTime_t m_flThrowAt; // 0xd50 - CHandle< CBaseEntity > m_hThrower; // 0xd54 - bool m_bDidThrowDamage; // 0xd58 + GameTime_t m_flThrowAt; // 0xe60 + CHandle< CBaseEntity > m_hThrower; // 0xe64 + bool m_bDidThrowDamage; // 0xe68 }; // Alignment: 0 -// Size: 0xd90 +// Size: 0xea0 class CWeaponZoneRepulsor : public CWeaponCSBaseGun { public: @@ -17588,122 +16503,116 @@ public: }; // Alignment: 3 -// Size: 0xd80 +// Size: 0xe90 class CWeaponShield : public CWeaponCSBaseGun { public: - float m_flBulletDamageAbsorbed; // 0xd70 - GameTime_t m_flLastBulletHitSoundTime; // 0xd74 + float m_flBulletDamageAbsorbed; // 0xe80 + GameTime_t m_flLastBulletHitSoundTime; // 0xe84 // MNetworkEnable - float m_flDisplayHealth; // 0xd78 + float m_flDisplayHealth; // 0xe88 }; // Alignment: 4 -// Size: 0xa98 +// Size: 0xbc0 class CMolotovProjectile : public CBaseCSGrenadeProjectile { public: // MNetworkEnable - bool m_bIsIncGrenade; // 0x9a0 + bool m_bIsIncGrenade; // 0xac8 private: - [[maybe_unused]] uint8_t __pad09a1[0xb]; // 0x9a1 + [[maybe_unused]] uint8_t __pad0ac9[0xb]; // 0xac9 public: - bool m_bDetonated; // 0x9ac + bool m_bDetonated; // 0xad4 private: - [[maybe_unused]] uint8_t __pad09ad[0x3]; // 0x9ad + [[maybe_unused]] uint8_t __pad0ad5[0x3]; // 0xad5 public: - IntervalTimer m_stillTimer; // 0x9b0 + IntervalTimer m_stillTimer; // 0xad8 private: - [[maybe_unused]] uint8_t __pad09c0[0xd0]; // 0x9c0 + [[maybe_unused]] uint8_t __pad0ae8[0xd0]; // 0xae8 public: - bool m_bHasBouncedOffPlayer; // 0xa90 + bool m_bHasBouncedOffPlayer; // 0xbb8 }; // Alignment: 3 -// Size: 0x9c0 +// Size: 0xae8 class CDecoyProjectile : public CBaseCSGrenadeProjectile { -private: - [[maybe_unused]] uint8_t __pad09a0[0x8]; // 0x9a0 public: - int32_t m_shotsRemaining; // 0x9a8 - GameTime_t m_fExpireTime; // 0x9ac + int32_t m_shotsRemaining; // 0xad0 + GameTime_t m_fExpireTime; // 0xad4 private: - [[maybe_unused]] uint8_t __pad09b0[0x8]; // 0x9b0 + [[maybe_unused]] uint8_t __pad0ad8[0x8]; // 0xad8 public: - uint16_t m_decoyWeaponDefIndex; // 0x9b8 + uint16_t m_decoyWeaponDefIndex; // 0xae0 }; // Alignment: 8 -// Size: 0xb90 +// Size: 0xcb8 class CSmokeGrenadeProjectile : public CBaseCSGrenadeProjectile { -private: - [[maybe_unused]] uint8_t __pad09a0[0x18]; // 0x9a0 public: // MNetworkEnable - int32_t m_nSmokeEffectTickBegin; // 0x9b8 + int32_t m_nSmokeEffectTickBegin; // 0xae0 // MNetworkEnable - bool m_bDidSmokeEffect; // 0x9bc + bool m_bDidSmokeEffect; // 0xae4 private: - [[maybe_unused]] uint8_t __pad09bd[0x3]; // 0x9bd + [[maybe_unused]] uint8_t __pad0ae5[0x3]; // 0xae5 public: // MNetworkEnable - int32_t m_nRandomSeed; // 0x9c0 + int32_t m_nRandomSeed; // 0xae8 // MNetworkEnable - Vector m_vSmokeColor; // 0x9c4 + Vector m_vSmokeColor; // 0xaec // MNetworkEnable - Vector m_vSmokeDetonationPos; // 0x9d0 + Vector m_vSmokeDetonationPos; // 0xaf8 private: - [[maybe_unused]] uint8_t __pad09dc[0x4]; // 0x9dc + [[maybe_unused]] uint8_t __pad0b04[0x4]; // 0xb04 public: // MNetworkEnable - CUtlVector< uint8 > m_VoxelFrameData; // 0x9e0 - GameTime_t m_flLastBounce; // 0x9f8 - GameTime_t m_fllastSimulationTime; // 0x9fc + CUtlVector< uint8 > m_VoxelFrameData; // 0xb08 + GameTime_t m_flLastBounce; // 0xb20 + GameTime_t m_fllastSimulationTime; // 0xb24 }; // Alignment: 8 -// Size: 0xd90 +// Size: 0xea0 class CBaseCSGrenade : public CWeaponCSBase { -private: - [[maybe_unused]] uint8_t __pad0d50[0x20]; // 0xd50 public: // MNetworkEnable - bool m_bRedraw; // 0xd70 + bool m_bRedraw; // 0xe80 // MNetworkEnable - bool m_bIsHeldByPlayer; // 0xd71 + bool m_bIsHeldByPlayer; // 0xe81 // MNetworkEnable - bool m_bPinPulled; // 0xd72 + bool m_bPinPulled; // 0xe82 private: - [[maybe_unused]] uint8_t __pad0d73[0x1]; // 0xd73 + [[maybe_unused]] uint8_t __pad0e83[0x1]; // 0xe83 public: // MNetworkEnable - EGrenadeThrowState m_eThrowStatus; // 0xd74 + EGrenadeThrowState m_eThrowStatus; // 0xe84 // MNetworkEnable - GameTime_t m_fThrowTime; // 0xd78 + GameTime_t m_fThrowTime; // 0xe88 // MNetworkEnable - float m_flThrowStrength; // 0xd7c + float m_flThrowStrength; // 0xe8c // MNetworkEnable - float m_flThrowStrengthApproach; // 0xd80 + float m_flThrowStrengthApproach; // 0xe90 // MNetworkEnable - GameTime_t m_fDropTime; // 0xd84 + GameTime_t m_fDropTime; // 0xe94 }; // Alignment: 2 -// Size: 0xd70 +// Size: 0xe80 class CWeaponBaseItem : public CWeaponCSBase { public: // MNetworkEnable - CountdownTimer m_SequenceCompleteTimer; // 0xd50 + CountdownTimer m_SequenceCompleteTimer; // 0xe60 // MNetworkEnable - bool m_bRedraw; // 0xd68 + bool m_bRedraw; // 0xe78 }; // Alignment: 0 -// Size: 0xd70 +// Size: 0xe80 class CItem_Healthshot : public CWeaponBaseItem { public: @@ -17711,85 +16620,83 @@ public: }; // Alignment: 7 -// Size: 0xd68 +// Size: 0xe78 class CFists : public CWeaponCSBase { public: // MNetworkEnable - bool m_bPlayingUninterruptableAct; // 0xd50 + bool m_bPlayingUninterruptableAct; // 0xe60 private: - [[maybe_unused]] uint8_t __pad0d51[0x3]; // 0xd51 + [[maybe_unused]] uint8_t __pad0e61[0x3]; // 0xe61 public: // MNetworkEnable // MNetworkChangeCallback "OnUninterruptChanged" - PlayerAnimEvent_t m_nUninterruptableActivity; // 0xd54 - bool m_bRestorePrevWep; // 0xd58 + PlayerAnimEvent_t m_nUninterruptableActivity; // 0xe64 + bool m_bRestorePrevWep; // 0xe68 private: - [[maybe_unused]] uint8_t __pad0d59[0x3]; // 0xd59 + [[maybe_unused]] uint8_t __pad0e69[0x3]; // 0xe69 public: - CHandle< CBasePlayerWeapon > m_hWeaponBeforePrevious; // 0xd5c - CHandle< CBasePlayerWeapon > m_hWeaponPrevious; // 0xd60 - bool m_bDelayedHardPunchIncoming; // 0xd64 - bool m_bDestroyAfterTaunt; // 0xd65 + CHandle< CBasePlayerWeapon > m_hWeaponBeforePrevious; // 0xe6c + CHandle< CBasePlayerWeapon > m_hWeaponPrevious; // 0xe70 + bool m_bDelayedHardPunchIncoming; // 0xe74 + bool m_bDestroyAfterTaunt; // 0xe75 }; // Alignment: 20 -// Size: 0x1068 +// Size: 0x1178 class CTablet : public CWeaponCSBase { -private: - [[maybe_unused]] uint8_t __pad0d50[0x8]; // 0xd50 public: - bool m_bPendingBuyMenu; // 0xd58 + bool m_bPendingBuyMenu; // 0xe68 private: - [[maybe_unused]] uint8_t __pad0d59[0x3]; // 0xd59 + [[maybe_unused]] uint8_t __pad0e69[0x3]; // 0xe69 public: // MNetworkEnable - GameTime_t m_flUpgradeExpirationTime[4]; // 0xd5c + GameTime_t m_flUpgradeExpirationTime[4]; // 0xe6c // MNetworkEnable - int32_t m_vecLocalHexFlags[42]; // 0xd6c + int32_t m_vecLocalHexFlags[42]; // 0xe7c // MNetworkEnable - int32_t m_nContractKillGridIndex; // 0xe14 + int32_t m_nContractKillGridIndex; // 0xf24 // MNetworkEnable - int32_t m_nContractKillGridHighResIndex; // 0xe18 + int32_t m_nContractKillGridHighResIndex; // 0xf28 // MNetworkEnable - bool m_bTabletReceptionIsBlocked; // 0xe1c + bool m_bTabletReceptionIsBlocked; // 0xf2c private: - [[maybe_unused]] uint8_t __pad0e1d[0x3]; // 0xe1d + [[maybe_unused]] uint8_t __pad0f2d[0x3]; // 0xf2d public: // MNetworkEnable - float m_flScanProgress; // 0xe20 + float m_flScanProgress; // 0xf30 // MNetworkEnable - GameTime_t m_flBootTime; // 0xe24 + GameTime_t m_flBootTime; // 0xf34 // MNetworkEnable - GameTime_t m_flShowMapTime; // 0xe28 + GameTime_t m_flShowMapTime; // 0xf38 // MNetworkEnable - Vector m_vecNearestMetalCratePos; // 0xe2c + Vector m_vecNearestMetalCratePos; // 0xf3c // MNetworkEnable - tablet_skin_state_t m_skinState; // 0xe38 + tablet_skin_state_t m_skinState; // 0xf48 private: - [[maybe_unused]] uint8_t __pad0e39[0x3]; // 0xe39 + [[maybe_unused]] uint8_t __pad0f49[0x3]; // 0xf49 public: // MNetworkEnable - int32_t m_vecNotificationIds[8]; // 0xe3c + int32_t m_vecNotificationIds[8]; // 0xf4c // MNetworkEnable - GameTime_t m_vecNotificationTimestamps[8]; // 0xe5c + GameTime_t m_vecNotificationTimestamps[8]; // 0xf6c // MNetworkEnable - int32_t m_nLastPurchaseIndex; // 0xe7c + int32_t m_nLastPurchaseIndex; // 0xf8c // MNetworkEnable - Vector m_vecPlayerPositionHistory[24]; // 0xe80 - Vector2D m_vecLastPlayerPosition; // 0xfa0 - GameTime_t m_flNextCheckForIncomingDronesTime; // 0xfa8 - GameTime_t m_flLastPlayerOccupiedGridUpdate; // 0xfac - GameTime_t m_flLastTabletBlockedTime; // 0xfb0 + Vector m_vecPlayerPositionHistory[24]; // 0xf90 + Vector2D m_vecLastPlayerPosition; // 0x10b0 + GameTime_t m_flNextCheckForIncomingDronesTime; // 0x10b8 + GameTime_t m_flLastPlayerOccupiedGridUpdate; // 0x10bc + GameTime_t m_flLastTabletBlockedTime; // 0x10c0 private: - [[maybe_unused]] uint8_t __pad0fb4[0xac]; // 0xfb4 + [[maybe_unused]] uint8_t __pad10c4[0xac]; // 0x10c4 public: - float m_flLastClosePoseParamVal; // 0x1060 + float m_flLastClosePoseParamVal; // 0x1170 }; // Alignment: 0 -// Size: 0xd50 +// Size: 0xe60 class CBreachCharge : public CWeaponCSBase { public: @@ -17797,7 +16704,7 @@ public: }; // Alignment: 0 -// Size: 0xd50 +// Size: 0xe60 class CBumpMine : public CWeaponCSBase { public: @@ -17805,7 +16712,7 @@ public: }; // Alignment: 0 -// Size: 0xd90 +// Size: 0xea0 class CTripWireFire : public CBaseCSGrenade { public: @@ -17813,7 +16720,7 @@ public: }; // Alignment: 0 -// Size: 0xb30 +// Size: 0xc48 class CPhysPropWeaponRefillHeavyArmor : public CPhysPropWeaponUpgrade { public: @@ -17821,7 +16728,7 @@ public: }; // Alignment: 0 -// Size: 0xb30 +// Size: 0xc48 class CPhysPropWeaponUpgradeArmor : public CPhysPropWeaponUpgrade { public: @@ -17829,7 +16736,7 @@ public: }; // Alignment: 0 -// Size: 0xb30 +// Size: 0xc48 class CPhysPropWeaponUpgradeHelmet : public CPhysPropWeaponUpgrade { public: @@ -17837,7 +16744,7 @@ public: }; // Alignment: 0 -// Size: 0xb30 +// Size: 0xc48 class CPhysPropWeaponUpgradeArmorHelmet : public CPhysPropWeaponUpgrade { public: @@ -17845,15 +16752,7 @@ public: }; // Alignment: 0 -// Size: 0xb30 -class CPhysPropWeaponUpgradeExoJump : public CPhysPropWeaponUpgrade -{ -public: - // No members available -}; - -// Alignment: 0 -// Size: 0xb30 +// Size: 0xc48 class CPhysPropWeaponUpgradeParachute : public CPhysPropWeaponUpgrade { public: @@ -17861,7 +16760,7 @@ public: }; // Alignment: 0 -// Size: 0xb30 +// Size: 0xc48 class CPhysPropWeaponUpgradeContractKill : public CPhysPropWeaponUpgrade { public: @@ -17869,22 +16768,22 @@ public: }; // Alignment: 5 -// Size: 0xb70 +// Size: 0xc88 class CPhysPropMapPlacedLongUseEntity : public CPhysPropWeaponUpgrade { public: - CUtlSymbolLarge m_iszStartUseSound; // 0xb30 - int32_t m_nPingType; // 0xb38 - int32_t m_nLongUseActionType; // 0xb3c - float m_flLongUseDuration; // 0xb40 + CUtlSymbolLarge m_iszStartUseSound; // 0xc48 + int32_t m_nPingType; // 0xc50 + int32_t m_nLongUseActionType; // 0xc54 + float m_flLongUseDuration; // 0xc58 private: - [[maybe_unused]] uint8_t __pad0b44[0x4]; // 0xb44 + [[maybe_unused]] uint8_t __pad0c5c[0x4]; // 0xc5c public: - CEntityIOOutput m_OnUseCompleted; // 0xb48 + CEntityIOOutput m_OnUseCompleted; // 0xc60 }; // Alignment: 0 -// Size: 0xb30 +// Size: 0xc48 class CPhysPropWeaponUpgradeTablet : public CPhysPropWeaponUpgrade { public: @@ -17892,7 +16791,7 @@ public: }; // Alignment: 0 -// Size: 0xb30 +// Size: 0xc48 class CPhysPropWeaponUpgradeTabletHighres : public CPhysPropWeaponUpgradeTablet { public: @@ -17900,7 +16799,7 @@ public: }; // Alignment: 0 -// Size: 0xb30 +// Size: 0xc48 class CPhysPropWeaponUpgradeTabletZoneIntel : public CPhysPropWeaponUpgradeTablet { public: @@ -17908,7 +16807,7 @@ public: }; // Alignment: 0 -// Size: 0xb30 +// Size: 0xc48 class CPhysPropWeaponUpgradeTabletDroneIntel : public CPhysPropWeaponUpgradeTablet { public: @@ -17916,401 +16815,389 @@ public: }; // Alignment: 0 -// Size: 0xd90 +// Size: 0xea0 class CSensorGrenade : public CBaseCSGrenade { public: // No members available }; -// Alignment: 190 -// Size: 0x1570 +// Alignment: 184 +// Size: 0x1698 class CCSPlayerPawnBase : public CBasePlayerPawn { -private: - [[maybe_unused]] uint8_t __pad0aa0[0x10]; // 0xaa0 public: // MNetworkEnable // MNetworkUserGroup "CTouchExpansionComponent" // MNetworkAlias "CTouchExpansionComponent" // MNetworkTypeAlias "CTouchExpansionComponent" - CTouchExpansionComponent m_CTouchExpansionComponent; // 0xab0 + CTouchExpansionComponent m_CTouchExpansionComponent; // 0xbc0 // MNetworkEnable - CCSPlayer_ActionTrackingServices* m_pActionTrackingServices; // 0xad0 + CCSPlayer_ActionTrackingServices* m_pActionTrackingServices; // 0xc10 // MNetworkEnable - CCSPlayer_ViewModelServices* m_pViewModelServices; // 0xad8 - uint32_t m_iDisplayHistoryBits; // 0xae0 - float m_flLastAttackedTeammate; // 0xae4 + CCSPlayer_ViewModelServices* m_pViewModelServices; // 0xc18 + uint32_t m_iDisplayHistoryBits; // 0xc20 + float m_flLastAttackedTeammate; // 0xc24 // MNetworkEnable - CHandle< CCSPlayerController > m_hOriginalController; // 0xae8 - GameTime_t m_blindUntilTime; // 0xaec - GameTime_t m_blindStartTime; // 0xaf0 - GameTime_t m_allowAutoFollowTime; // 0xaf4 + CHandle< CCSPlayerController > m_hOriginalController; // 0xc28 + GameTime_t m_blindUntilTime; // 0xc2c + GameTime_t m_blindStartTime; // 0xc30 + GameTime_t m_allowAutoFollowTime; // 0xc34 // MNetworkEnable - bool m_bHasFemaleVoice; // 0xaf8 + bool m_bHasFemaleVoice; // 0xc38 private: - [[maybe_unused]] uint8_t __pad0af9[0x7]; // 0xaf9 + [[maybe_unused]] uint8_t __pad0c39[0x7]; // 0xc39 public: // MNetworkEnable - EntitySpottedState_t m_entitySpottedState; // 0xb00 - int32_t m_nSpotRules; // 0xb18 + EntitySpottedState_t m_entitySpottedState; // 0xc40 + int32_t m_nSpotRules; // 0xc58 // MNetworkEnable - float m_flTimeOfLastInjury; // 0xb1c + float m_flTimeOfLastInjury; // 0xc5c // MNetworkEnable - RelativeDamagedDirection_t m_nRelativeDirectionOfLastInjury; // 0xb20 + RelativeDamagedDirection_t m_nRelativeDirectionOfLastInjury; // 0xc60 // MNetworkEnable - CSPlayerState m_iPlayerState; // 0xb24 + CSPlayerState m_iPlayerState; // 0xc64 private: - [[maybe_unused]] uint8_t __pad0b28[0x8]; // 0xb28 + [[maybe_unused]] uint8_t __pad0c68[0x8]; // 0xc68 public: - CountdownTimer m_chickenIdleSoundTimer; // 0xb30 - CountdownTimer m_chickenJumpSoundTimer; // 0xb48 + CountdownTimer m_chickenIdleSoundTimer; // 0xc70 + CountdownTimer m_chickenJumpSoundTimer; // 0xc88 private: - [[maybe_unused]] uint8_t __pad0b60[0xa0]; // 0xb60 + [[maybe_unused]] uint8_t __pad0ca0[0xa0]; // 0xca0 public: - Vector m_vecLastBookmarkedPosition; // 0xc00 - float m_flLastDistanceTraveledNotice; // 0xc0c - float m_flAccumulatedDistanceTraveled; // 0xc10 - float m_flLastFriendlyFireDamageReductionRatio; // 0xc14 - bool m_bRespawning; // 0xc18 + Vector m_vecLastBookmarkedPosition; // 0xd40 + float m_flLastDistanceTraveledNotice; // 0xd4c + float m_flAccumulatedDistanceTraveled; // 0xd50 + float m_flLastFriendlyFireDamageReductionRatio; // 0xd54 + bool m_bRespawning; // 0xd58 private: - [[maybe_unused]] uint8_t __pad0c19[0x3]; // 0xc19 + [[maybe_unused]] uint8_t __pad0d59[0x3]; // 0xd59 public: - int32_t m_iNumGunGameTRBombTotalPoints; // 0xc1c - bool m_bShouldProgressGunGameTRBombModeWeapon; // 0xc20 + int32_t m_iNumGunGameTRBombTotalPoints; // 0xd5c + bool m_bShouldProgressGunGameTRBombModeWeapon; // 0xd60 private: - [[maybe_unused]] uint8_t __pad0c21[0x3]; // 0xc21 + [[maybe_unused]] uint8_t __pad0d61[0x3]; // 0xd61 public: - int32_t m_nLastPickupPriority; // 0xc24 - float m_flLastPickupPriorityTime; // 0xc28 + int32_t m_nLastPickupPriority; // 0xd64 + float m_flLastPickupPriorityTime; // 0xd68 // MNetworkEnable - bool m_passiveItems[4]; // 0xc2c + bool m_passiveItems[4]; // 0xd6c // MNetworkEnable - bool m_bIsScoped; // 0xc30 + bool m_bIsScoped; // 0xd70 // MNetworkEnable - bool m_bIsWalking; // 0xc31 + bool m_bIsWalking; // 0xd71 // MNetworkEnable - bool m_bResumeZoom; // 0xc32 + bool m_bResumeZoom; // 0xd72 // MNetworkEnable - bool m_bIsDefusing; // 0xc33 + bool m_bIsDefusing; // 0xd73 // MNetworkEnable - bool m_bIsGrabbingHostage; // 0xc34 + bool m_bIsGrabbingHostage; // 0xd74 private: - [[maybe_unused]] uint8_t __pad0c35[0x3]; // 0xc35 + [[maybe_unused]] uint8_t __pad0d75[0x3]; // 0xd75 public: // MNetworkEnable - CSPlayerBlockingUseAction_t m_iBlockingUseActionInProgress; // 0xc38 + CSPlayerBlockingUseAction_t m_iBlockingUseActionInProgress; // 0xd78 // MNetworkEnable - GameTime_t m_fImmuneToGunGameDamageTime; // 0xc3c + GameTime_t m_fImmuneToGunGameDamageTime; // 0xd7c // MNetworkEnable - bool m_bGunGameImmunity; // 0xc40 + bool m_bGunGameImmunity; // 0xd80 // MNetworkEnable - bool m_bMadeFinalGunGameProgressiveKill; // 0xc41 + bool m_bMadeFinalGunGameProgressiveKill; // 0xd81 private: - [[maybe_unused]] uint8_t __pad0c42[0x2]; // 0xc42 + [[maybe_unused]] uint8_t __pad0d82[0x2]; // 0xd82 public: // MNetworkEnable - int32_t m_iGunGameProgressiveWeaponIndex; // 0xc44 + int32_t m_iGunGameProgressiveWeaponIndex; // 0xd84 // MNetworkEnable - int32_t m_iNumGunGameTRKillPoints; // 0xc48 + int32_t m_iNumGunGameTRKillPoints; // 0xd88 // MNetworkEnable - int32_t m_iNumGunGameKillsWithCurrentWeapon; // 0xc4c + int32_t m_iNumGunGameKillsWithCurrentWeapon; // 0xd8c // MNetworkEnable - uint32_t m_unTotalRoundDamageDealt; // 0xc50 + uint32_t m_unTotalRoundDamageDealt; // 0xd90 // MNetworkEnable - float m_fMolotovDamageTime; // 0xc54 + float m_fMolotovDamageTime; // 0xd94 // MNetworkEnable - bool m_bHasMovedSinceSpawn; // 0xc58 + bool m_bHasMovedSinceSpawn; // 0xd98 // MNetworkEnable - bool m_bCanMoveDuringFreezePeriod; // 0xc59 + bool m_bCanMoveDuringFreezePeriod; // 0xd99 // MNetworkEnable - bool m_isCurrentGunGameLeader; // 0xc5a + bool m_isCurrentGunGameLeader; // 0xd9a // MNetworkEnable - bool m_isCurrentGunGameTeamLeader; // 0xc5b + bool m_isCurrentGunGameTeamLeader; // 0xd9b // MNetworkEnable - float m_flGuardianTooFarDistFrac; // 0xc5c - float m_flNextGuardianTooFarHurtTime; // 0xc60 + float m_flGuardianTooFarDistFrac; // 0xd9c + float m_flNextGuardianTooFarHurtTime; // 0xda0 // MNetworkEnable - GameTime_t m_flDetectedByEnemySensorTime; // 0xc64 + GameTime_t m_flDetectedByEnemySensorTime; // 0xda4 // MNetworkEnable - bool m_bIsSpawnRappelling; // 0xc68 + bool m_bIsSpawnRappelling; // 0xda8 private: - [[maybe_unused]] uint8_t __pad0c69[0x3]; // 0xc69 + [[maybe_unused]] uint8_t __pad0da9[0x3]; // 0xda9 public: // MNetworkEnable - Vector m_vecSpawnRappellingRopeOrigin; // 0xc6c + Vector m_vecSpawnRappellingRopeOrigin; // 0xdac // MNetworkEnable - int32_t m_nSurvivalTeam; // 0xc78 + int32_t m_nSurvivalTeam; // 0xdb8 // MNetworkEnable - CHandle< CCSPlayerPawnBase > m_hSurvivalAssassinationTarget; // 0xc7c - int32_t m_nCompletedSurvivalAssassinations; // 0xc80 - float m_flDealtDamageToEnemyMostRecentTimestamp; // 0xc84 + CHandle< CCSPlayerPawnBase > m_hSurvivalAssassinationTarget; // 0xdbc + int32_t m_nCompletedSurvivalAssassinations; // 0xdc0 + float m_flDealtDamageToEnemyMostRecentTimestamp; // 0xdc4 // MNetworkEnable - float m_flHealthShotBoostExpirationTime; // 0xc88 - GameTime_t m_flLastEquippedHelmetTime; // 0xc8c - GameTime_t m_flLastEquippedArmorTime; // 0xc90 + float m_flHealthShotBoostExpirationTime; // 0xdc8 + GameTime_t m_flLastEquippedHelmetTime; // 0xdcc + GameTime_t m_flLastEquippedArmorTime; // 0xdd0 // MNetworkEnable - int32_t m_nHeavyAssaultSuitCooldownRemaining; // 0xc94 - bool m_bResetArmorNextSpawn; // 0xc98 + int32_t m_nHeavyAssaultSuitCooldownRemaining; // 0xdd4 + bool m_bResetArmorNextSpawn; // 0xdd8 private: - [[maybe_unused]] uint8_t __pad0c99[0x3]; // 0xc99 + [[maybe_unused]] uint8_t __pad0dd9[0x3]; // 0xdd9 +public: + GameTime_t m_flLastBumpMineBumpTime; // 0xddc + // MNetworkEnable + GameTime_t m_flEmitSoundTime; // 0xde0 + int32_t m_iNumSpawns; // 0xde4 + int32_t m_iShouldHaveCash; // 0xde8 + bool m_bJustKilledTeammate; // 0xdec + bool m_bPunishedForTK; // 0xded + bool m_bInvalidSteamLogonDelayed; // 0xdee +private: + [[maybe_unused]] uint8_t __pad0def[0x1]; // 0xdef +public: + int32_t m_iTeamKills; // 0xdf0 + GameTime_t m_flLastAction; // 0xdf4 + float m_flNameChangeHistory[5]; // 0xdf8 + float m_fLastGivenDefuserTime; // 0xe0c + float m_fLastGivenBombTime; // 0xe10 + // MNetworkEnable + bool m_bHasNightVision; // 0xe14 + // MNetworkEnable + bool m_bNightVisionOn; // 0xe15 +private: + [[maybe_unused]] uint8_t __pad0e16[0x2]; // 0xe16 +public: + float m_fNextRadarUpdateTime; // 0xe18 + float m_flLastMoneyUpdateTime; // 0xe1c + char m_MenuStringBuffer[1024]; // 0xe20 + CHandle< CBaseEntity > m_pIntroCamera; // 0x1220 + float m_fIntroCamTime; // 0x1224 + int32_t m_nMyCollisionGroup; // 0x1228 + // MNetworkEnable + bool m_bInBombZone; // 0x122c + // MNetworkEnable + bool m_bInBuyZone; // 0x122d + // MNetworkEnable + bool m_bInNoDefuseArea; // 0x122e + // MNetworkEnable + bool m_bKilledByTaser; // 0x122f + // MNetworkEnable + int32_t m_iMoveState; // 0x1230 +private: + [[maybe_unused]] uint8_t __pad1234[0x4]; // 0x1234 +public: + CStrongHandle< InfoForResourceTypeCModel > m_nPreviousModelIndex; // 0x1238 + GameTime_t m_grenadeParameterStashTime; // 0x1240 + bool m_bGrenadeParametersStashed; // 0x1244 +private: + [[maybe_unused]] uint8_t __pad1245[0x3]; // 0x1245 +public: + QAngle m_angStashedShootAngles; // 0x1248 + Vector m_vecStashedGrenadeThrowPosition; // 0x1254 + Vector m_vecStashedVelocity; // 0x1260 + QAngle m_angShootAngleHistory[2]; // 0x126c + Vector m_vecThrowPositionHistory[2]; // 0x1284 + Vector m_vecVelocityHistory[2]; // 0x129c + uint16_t m_nCharacterDefIndex; // 0x12b4 + bool m_bDiedAirborne; // 0x12b6 +private: + [[maybe_unused]] uint8_t __pad12b7[0x1]; // 0x12b7 +public: + CEntityIndex m_iBombSiteIndex; // 0x12b8 + // MNetworkEnable + int32_t m_nWhichBombZone; // 0x12bc + bool m_bInBombZoneTrigger; // 0x12c0 + bool m_bWasInBombZoneTrigger; // 0x12c1 + bool m_bWasInHostageRescueZone; // 0x12c2 + bool m_bWasInBuyZone; // 0x12c3 + // MNetworkEnable + bool m_bInHostageRescueZone; // 0x12c4 +private: + [[maybe_unused]] uint8_t __pad12c5[0x3]; // 0x12c5 public: // MNetworkEnable - float m_flLastExoJumpTime; // 0xc9c - GameTime_t m_flLastBumpMineBumpTime; // 0xca0 + float m_flStamina; // 0x12c8 + // MNetworkEnable + int32_t m_iDirection; // 0x12cc + // MNetworkEnable + int32_t m_iShotsFired; // 0x12d0 + // MNetworkEnable + int32_t m_ArmorValue; // 0x12d4 + float m_flFlinchStack; // 0x12d8 + // MNetworkEnable + float m_flVelocityModifier; // 0x12dc + int32_t m_iHostagesKilled; // 0x12e0 + Vector m_vecTotalBulletForce; // 0x12e4 + // MNetworkEnable + float m_flFlashDuration; // 0x12f0 + // MNetworkEnable + float m_flFlashMaxAlpha; // 0x12f4 + // MNetworkEnable + float m_flProgressBarStartTime; // 0x12f8 + // MNetworkEnable + int32_t m_iProgressBarDuration; // 0x12fc + // MNetworkEnable + bool m_bWaitForNoAttack; // 0x1300 + // MNetworkEnable + bool m_bIsRespawningForDMBonus; // 0x1301 private: - [[maybe_unused]] uint8_t __pad0ca4[0xc]; // 0xca4 + [[maybe_unused]] uint8_t __pad1302[0x2]; // 0x1302 public: // MNetworkEnable - GameTime_t m_flEmitSoundTime; // 0xcb0 - bool m_bEscaped; // 0xcb4 - bool m_bIsVIP; // 0xcb5 + float m_flLowerBodyYawTarget; // 0x1304 + // MNetworkEnable + bool m_bStrafing; // 0x1308 private: - [[maybe_unused]] uint8_t __pad0cb6[0x2]; // 0xcb6 + [[maybe_unused]] uint8_t __pad1309[0x3]; // 0x1309 public: - int32_t m_iNumSpawns; // 0xcb8 - int32_t m_iShouldHaveCash; // 0xcbc - bool m_bJustKilledTeammate; // 0xcc0 - bool m_bPunishedForTK; // 0xcc1 - bool m_bInvalidSteamLogonDelayed; // 0xcc2 + Vector m_lastStandingPos; // 0x130c + float m_ignoreLadderJumpTime; // 0x1318 private: - [[maybe_unused]] uint8_t __pad0cc3[0x1]; // 0xcc3 + [[maybe_unused]] uint8_t __pad131c[0x4]; // 0x131c public: - int32_t m_iTeamKills; // 0xcc4 - GameTime_t m_flLastAction; // 0xcc8 - float m_flNameChangeHistory[5]; // 0xccc - float m_fLastGivenDefuserTime; // 0xce0 - float m_fLastGivenBombTime; // 0xce4 - // MNetworkEnable - bool m_bHasNightVision; // 0xce8 - // MNetworkEnable - bool m_bNightVisionOn; // 0xce9 -private: - [[maybe_unused]] uint8_t __pad0cea[0x2]; // 0xcea -public: - float m_fNextRadarUpdateTime; // 0xcec - float m_flLastMoneyUpdateTime; // 0xcf0 - char m_MenuStringBuffer[1024]; // 0xcf4 - CHandle< CBaseEntity > m_pIntroCamera; // 0x10f4 - float m_fIntroCamTime; // 0x10f8 - int32_t m_nMyCollisionGroup; // 0x10fc - // MNetworkEnable - bool m_bInBombZone; // 0x1100 - // MNetworkEnable - bool m_bInBuyZone; // 0x1101 - // MNetworkEnable - bool m_bInNoDefuseArea; // 0x1102 - // MNetworkEnable - bool m_bKilledByTaser; // 0x1103 - // MNetworkEnable - int32_t m_iMoveState; // 0x1104 - CStrongHandle< InfoForResourceTypeCModel > m_nPreviousModelIndex; // 0x1108 - GameTime_t m_grenadeParameterStashTime; // 0x1110 - bool m_bGrenadeParametersStashed; // 0x1114 -private: - [[maybe_unused]] uint8_t __pad1115[0x3]; // 0x1115 -public: - QAngle m_angStashedShootAngles; // 0x1118 - Vector m_vecStashedGrenadeThrowPosition; // 0x1124 - Vector m_vecStashedVelocity; // 0x1130 - QAngle m_angShootAngleHistory[2]; // 0x113c - Vector m_vecThrowPositionHistory[2]; // 0x1154 - Vector m_vecVelocityHistory[2]; // 0x116c - uint16_t m_nCharacterDefIndex; // 0x1184 - bool m_bDiedAirborne; // 0x1186 -private: - [[maybe_unused]] uint8_t __pad1187[0x1]; // 0x1187 -public: - CEntityIndex m_iBombSiteIndex; // 0x1188 - // MNetworkEnable - int32_t m_nWhichBombZone; // 0x118c - bool m_bInBombZoneTrigger; // 0x1190 - bool m_bWasInBombZoneTrigger; // 0x1191 - bool m_bWasInHostageRescueZone; // 0x1192 - bool m_bWasInBuyZone; // 0x1193 - // MNetworkEnable - bool m_bInHostageRescueZone; // 0x1194 -private: - [[maybe_unused]] uint8_t __pad1195[0x3]; // 0x1195 -public: - // MNetworkEnable - float m_flStamina; // 0x1198 - // MNetworkEnable - int32_t m_iDirection; // 0x119c - // MNetworkEnable - int32_t m_iShotsFired; // 0x11a0 - // MNetworkEnable - int32_t m_ArmorValue; // 0x11a4 - float m_flFlinchStack; // 0x11a8 - // MNetworkEnable - float m_flVelocityModifier; // 0x11ac - // MNetworkEnable - float m_flGroundAccelLinearFracLastTime; // 0x11b0 - int32_t m_iHostagesKilled; // 0x11b4 - Vector m_vecTotalBulletForce; // 0x11b8 - // MNetworkEnable - float m_flFlashDuration; // 0x11c4 - // MNetworkEnable - float m_flFlashMaxAlpha; // 0x11c8 - // MNetworkEnable - float m_flProgressBarStartTime; // 0x11cc - // MNetworkEnable - int32_t m_iProgressBarDuration; // 0x11d0 - // MNetworkEnable - bool m_bWaitForNoAttack; // 0x11d4 - // MNetworkEnable - bool m_bIsRespawningForDMBonus; // 0x11d5 -private: - [[maybe_unused]] uint8_t __pad11d6[0x2]; // 0x11d6 -public: - // MNetworkEnable - float m_flLowerBodyYawTarget; // 0x11d8 - // MNetworkEnable - bool m_bStrafing; // 0x11dc -private: - [[maybe_unused]] uint8_t __pad11dd[0x3]; // 0x11dd -public: - Vector m_lastStandingPos; // 0x11e0 - float m_ignoreLadderJumpTime; // 0x11ec - CountdownTimer m_ladderSurpressionTimer; // 0x11f0 - Vector m_lastLadderNormal; // 0x1208 - Vector m_lastLadderPos; // 0x1214 + CountdownTimer m_ladderSurpressionTimer; // 0x1320 + Vector m_lastLadderNormal; // 0x1338 + Vector m_lastLadderPos; // 0x1344 // MNetworkEnable // MNetworkEncoder - // MNetworkBitCount "32" // MNetworkPriority "32" - QAngle m_thirdPersonHeading; // 0x1220 + QAngle m_thirdPersonHeading; // 0x1350 // MNetworkEnable // MNetworkPriority "32" - float m_flSlopeDropOffset; // 0x122c + float m_flSlopeDropOffset; // 0x135c // MNetworkEnable // MNetworkPriority "32" - float m_flSlopeDropHeight; // 0x1230 + float m_flSlopeDropHeight; // 0x1360 // MNetworkEnable // MNetworkPriority "32" - Vector m_vHeadConstraintOffset; // 0x1234 + Vector m_vHeadConstraintOffset; // 0x1364 private: - [[maybe_unused]] uint8_t __pad1240[0x8]; // 0x1240 + [[maybe_unused]] uint8_t __pad1370[0x8]; // 0x1370 public: - int32_t m_iLastWeaponFireUsercmd; // 0x1248 + int32_t m_iLastWeaponFireUsercmd; // 0x1378 // MNetworkEnable // MNetworkEncoder - // MNetworkBitCount "32" // MNetworkPriority "32" - QAngle m_angEyeAngles; // 0x124c - bool m_bVCollisionInitted; // 0x1258 + QAngle m_angEyeAngles; // 0x137c + bool m_bVCollisionInitted; // 0x1388 private: - [[maybe_unused]] uint8_t __pad1259[0x3]; // 0x1259 + [[maybe_unused]] uint8_t __pad1389[0x3]; // 0x1389 public: - Vector m_storedSpawnPosition; // 0x125c - QAngle m_storedSpawnAngle; // 0x1268 - bool m_bIsSpawning; // 0x1274 + Vector m_storedSpawnPosition; // 0x138c + QAngle m_storedSpawnAngle; // 0x1398 + bool m_bIsSpawning; // 0x13a4 // MNetworkEnable - bool m_bHideTargetID; // 0x1275 + bool m_bHideTargetID; // 0x13a5 private: - [[maybe_unused]] uint8_t __pad1276[0x2]; // 0x1276 + [[maybe_unused]] uint8_t __pad13a6[0x2]; // 0x13a6 public: - int32_t m_nNumDangerZoneDamageHits; // 0x1278 + int32_t m_nNumDangerZoneDamageHits; // 0x13a8 // MNetworkEnable - bool m_bHud_MiniScoreHidden; // 0x127c + bool m_bHud_MiniScoreHidden; // 0x13ac // MNetworkEnable - bool m_bHud_RadarHidden; // 0x127d + bool m_bHud_RadarHidden; // 0x13ad private: - [[maybe_unused]] uint8_t __pad127e[0x2]; // 0x127e + [[maybe_unused]] uint8_t __pad13ae[0x2]; // 0x13ae public: // MNetworkEnable - CEntityIndex m_nLastKillerIndex; // 0x1280 + CEntityIndex m_nLastKillerIndex; // 0x13b0 // MNetworkEnable - int32_t m_nLastConcurrentKilled; // 0x1284 + int32_t m_nLastConcurrentKilled; // 0x13b4 // MNetworkEnable - int32_t m_nDeathCamMusic; // 0x1288 + int32_t m_nDeathCamMusic; // 0x13b8 // MNetworkEnable - int32_t m_iAddonBits; // 0x128c + int32_t m_iAddonBits; // 0x13bc // MNetworkEnable - int32_t m_iPrimaryAddon; // 0x1290 + int32_t m_iPrimaryAddon; // 0x13c0 // MNetworkEnable - int32_t m_iSecondaryAddon; // 0x1294 - int32_t m_nTeamDamageGivenForMatch; // 0x1298 - bool m_bTDGaveProtectionWarning; // 0x129c - bool m_bTDGaveProtectionWarningThisRound; // 0x129d + int32_t m_iSecondaryAddon; // 0x13c4 + int32_t m_nTeamDamageGivenForMatch; // 0x13c8 + bool m_bTDGaveProtectionWarning; // 0x13cc + bool m_bTDGaveProtectionWarningThisRound; // 0x13cd private: - [[maybe_unused]] uint8_t __pad129e[0x2]; // 0x129e + [[maybe_unused]] uint8_t __pad13ce[0x2]; // 0x13ce public: - float m_flLastTHWarningTime; // 0x12a0 - CUtlStringToken m_currentDeafnessFilter; // 0x12a4 - CUtlVector< CHandle< CCSPlayerPawnBase > > m_enemyPlayersKilledThisRound; // 0x12a8 - int32_t m_NumEnemiesKilledThisSpawn; // 0x12c0 - int32_t m_maxNumEnemiesKillStreak; // 0x12c4 - int32_t m_NumEnemiesKilledThisRound; // 0x12c8 - int32_t m_NumEnemiesAtRoundStart; // 0x12cc - int32_t m_iRoundsWon; // 0x12d0 - bool m_bHasUsedDMBonusRespawn; // 0x12d4 + float m_flLastTHWarningTime; // 0x13d0 + CUtlStringToken m_currentDeafnessFilter; // 0x13d4 + CUtlVector< CHandle< CCSPlayerPawnBase > > m_enemyPlayersKilledThisRound; // 0x13d8 + int32_t m_NumEnemiesKilledThisSpawn; // 0x13f0 + int32_t m_maxNumEnemiesKillStreak; // 0x13f4 + int32_t m_NumEnemiesKilledThisRound; // 0x13f8 + int32_t m_NumEnemiesAtRoundStart; // 0x13fc + int32_t m_iRoundsWon; // 0x1400 + bool m_bHasUsedDMBonusRespawn; // 0x1404 private: - [[maybe_unused]] uint8_t __pad12d5[0x3]; // 0x12d5 + [[maybe_unused]] uint8_t __pad1405[0x3]; // 0x1405 public: - int32_t m_lastRoundResult; // 0x12d8 - bool m_wasNotKilledNaturally; // 0x12dc + int32_t m_lastRoundResult; // 0x1408 + bool m_wasNotKilledNaturally; // 0x140c private: - [[maybe_unused]] uint8_t __pad12dd[0x3]; // 0x12dd + [[maybe_unused]] uint8_t __pad140d[0x3]; // 0x140d public: // MNetworkEnable - uint32_t m_vecPlayerPatchEconIndices[5]; // 0x12e0 - int32_t m_iDeathFlags; // 0x12f4 - CHandle< CChicken > m_hPet; // 0x12f8 - float m_flLastKnownAccumulatedWeaponEncumbrance; // 0x12fc - float m_flLastTimeComputedAccumulatedWeaponEncumbrance; // 0x1300 + uint32_t m_vecPlayerPatchEconIndices[5]; // 0x1410 + int32_t m_iDeathFlags; // 0x1424 + CHandle< CChicken > m_hPet; // 0x1428 private: - [[maybe_unused]] uint8_t __pad1304[0x1cc]; // 0x1304 + [[maybe_unused]] uint8_t __pad142c[0x1cc]; // 0x142c public: // MNetworkEnable - uint16_t m_unCurrentEquipmentValue; // 0x14d0 + uint16_t m_unCurrentEquipmentValue; // 0x15f8 // MNetworkEnable - uint16_t m_unRoundStartEquipmentValue; // 0x14d2 + uint16_t m_unRoundStartEquipmentValue; // 0x15fa // MNetworkEnable - uint16_t m_unFreezetimeEndEquipmentValue; // 0x14d4 + uint16_t m_unFreezetimeEndEquipmentValue; // 0x15fc // MNetworkEnable - char m_szLastPlaceName[18]; // 0x14d6 - int32_t m_nSuicides; // 0x14e8 + char m_szLastPlaceName[18]; // 0x15fe + int32_t m_nSuicides; // 0x1610 // MNetworkEnable - int32_t m_nSurvivalTeamNumber; // 0x14ec + int32_t m_nSurvivalTeamNumber; // 0x1614 // MNetworkEnable - // MNetworkBitCount "32" - QAngle m_aimPunchAngle; // 0x14f0 + // MNetworkEncoder + QAngle m_aimPunchAngle; // 0x1618 // MNetworkEnable - // MNetworkBitCount "32" - QAngle m_aimPunchAngleVel; // 0x14fc + // MNetworkEncoder + QAngle m_aimPunchAngleVel; // 0x1624 // MNetworkEnable - int32_t m_aimPunchTickBase; // 0x1508 + int32_t m_aimPunchTickBase; // 0x1630 // MNetworkEnable - float m_aimPunchTickFraction; // 0x150c - CUtlVector< QAngle > m_aimPunchCache; // 0x1510 - bool m_bHasDeathInfo; // 0x1528 + float m_aimPunchTickFraction; // 0x1634 + CUtlVector< QAngle > m_aimPunchCache; // 0x1638 + bool m_bHasDeathInfo; // 0x1650 private: - [[maybe_unused]] uint8_t __pad1529[0x3]; // 0x1529 + [[maybe_unused]] uint8_t __pad1651[0x3]; // 0x1651 public: - float m_flDeathInfoTime; // 0x152c - Vector m_vecDeathInfoOrigin; // 0x1530 + float m_flDeathInfoTime; // 0x1654 + Vector m_vecDeathInfoOrigin; // 0x1658 // MNetworkEnable - bool m_bKilledByHeadshot; // 0x153c + bool m_bKilledByHeadshot; // 0x1664 private: - [[maybe_unused]] uint8_t __pad153d[0x3]; // 0x153d + [[maybe_unused]] uint8_t __pad1665[0x3]; // 0x1665 public: - int32_t m_LastHitBox; // 0x1540 - int32_t m_LastHealth; // 0x1544 - float m_flLastCollisionCeiling; // 0x1548 - float m_flLastCollisionCeilingChangeTime; // 0x154c - CUtlString m_strVOPrefix; // 0x1550 - float m_flLandseconds; // 0x1558 + int32_t m_LastHitBox; // 0x1668 + int32_t m_LastHealth; // 0x166c + float m_flLastCollisionCeiling; // 0x1670 + float m_flLastCollisionCeilingChangeTime; // 0x1674 + CUtlString m_strVOPrefix; // 0x1678 + float m_flLandseconds; // 0x1680 private: - [[maybe_unused]] uint8_t __pad155c[0x4]; // 0x155c + [[maybe_unused]] uint8_t __pad1684[0x4]; // 0x1684 public: - CCSBot* m_pBot; // 0x1560 - bool m_bBotAllowActive; // 0x1568 - bool m_bCommittingSuicideOnTeamChange; // 0x1569 + CCSBot* m_pBot; // 0x1688 + bool m_bBotAllowActive; // 0x1690 + bool m_bCommittingSuicideOnTeamChange; // 0x1691 }; // Alignment: 0 -// Size: 0x1598 +// Size: 0x16c0 class CCSObserverPawn : public CCSPlayerPawnBase { public: @@ -18318,198 +17205,194 @@ public: }; // Alignment: 25 -// Size: 0x1b00 +// Size: 0x1c20 class CCSPlayerPawn : public CCSPlayerPawnBase { public: - CCSPlayer_ParachuteServices* m_pParachuteServices; // 0x1570 + CCSPlayer_ParachuteServices* m_pParachuteServices; // 0x1698 // MNetworkEnable - CCSPlayer_BulletServices* m_pBulletServices; // 0x1578 + CCSPlayer_BulletServices* m_pBulletServices; // 0x16a0 // MNetworkEnable - CCSPlayer_HostageServices* m_pHostageServices; // 0x1580 - CCSPlayer_BuyServices* m_pBuyServices; // 0x1588 + CCSPlayer_HostageServices* m_pHostageServices; // 0x16a8 + CCSPlayer_BuyServices* m_pBuyServices; // 0x16b0 // MNetworkEnable - CCSPlayer_PingServices* m_pPingServices; // 0x1590 - CCSPlayer_RadioServices* m_pRadioServices; // 0x1598 - CCSPlayer_DamageReactServices* m_pDamageReactServices; // 0x15a0 + CCSPlayer_PingServices* m_pPingServices; // 0x16b8 + CCSPlayer_RadioServices* m_pRadioServices; // 0x16c0 + CCSPlayer_DamageReactServices* m_pDamageReactServices; // 0x16c8 private: - [[maybe_unused]] uint8_t __pad15a8[0xc8]; // 0x15a8 + [[maybe_unused]] uint8_t __pad16d0[0xc8]; // 0x16d0 public: // MNetworkEnable - int32_t m_iRetakesOffering; // 0x1670 + int32_t m_iRetakesOffering; // 0x1798 // MNetworkEnable - int32_t m_iRetakesOfferingCard; // 0x1674 + int32_t m_iRetakesOfferingCard; // 0x179c // MNetworkEnable - bool m_bRetakesHasDefuseKit; // 0x1678 + bool m_bRetakesHasDefuseKit; // 0x17a0 // MNetworkEnable - bool m_bRetakesMVPLastRound; // 0x1679 + bool m_bRetakesMVPLastRound; // 0x17a1 private: - [[maybe_unused]] uint8_t __pad167a[0x2]; // 0x167a + [[maybe_unused]] uint8_t __pad17a2[0x2]; // 0x17a2 public: // MNetworkEnable - int32_t m_iRetakesMVPBoostItem; // 0x167c + int32_t m_iRetakesMVPBoostItem; // 0x17a4 // MNetworkEnable - loadout_positions_t m_RetakesMVPBoostExtraUtility; // 0x1680 + loadout_positions_t m_RetakesMVPBoostExtraUtility; // 0x17a8 // MNetworkEnable - bool m_bIsBuyMenuOpen; // 0x1684 + bool m_bIsBuyMenuOpen; // 0x17ac private: - [[maybe_unused]] uint8_t __pad1685[0x15b]; // 0x1685 + [[maybe_unused]] uint8_t __pad17ad[0x153]; // 0x17ad public: - CTransform m_xLastHeadBoneTransform; // 0x17e0 - bool m_bLastHeadBoneTransformIsValid; // 0x1800 + CTransform m_xLastHeadBoneTransform; // 0x1900 + bool m_bLastHeadBoneTransformIsValid; // 0x1920 private: - [[maybe_unused]] uint8_t __pad1801[0x3]; // 0x1801 + [[maybe_unused]] uint8_t __pad1921[0x3]; // 0x1921 public: - int32_t m_iPlayerLocked; // 0x1804 + int32_t m_iPlayerLocked; // 0x1924 private: - [[maybe_unused]] uint8_t __pad1808[0x4]; // 0x1808 + [[maybe_unused]] uint8_t __pad1928[0x4]; // 0x1928 public: // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" - float m_flNextSprayDecalTime; // 0x180c + float m_flNextSprayDecalTime; // 0x192c private: - [[maybe_unused]] uint8_t __pad1810[0x4]; // 0x1810 + [[maybe_unused]] uint8_t __pad1930[0x4]; // 0x1930 public: // MNetworkEnable - int32_t m_nRagdollDamageBone; // 0x1814 + int32_t m_nRagdollDamageBone; // 0x1934 // MNetworkEnable - Vector m_vRagdollDamageForce; // 0x1818 + Vector m_vRagdollDamageForce; // 0x1938 // MNetworkEnable - Vector m_vRagdollDamagePosition; // 0x1824 + Vector m_vRagdollDamagePosition; // 0x1944 // MNetworkEnable - char m_szRagdollDamageWeaponName[64]; // 0x1830 + char m_szRagdollDamageWeaponName[64]; // 0x1950 // MNetworkEnable - bool m_bRagdollDamageHeadshot; // 0x1870 + bool m_bRagdollDamageHeadshot; // 0x1990 private: - [[maybe_unused]] uint8_t __pad1871[0x7]; // 0x1871 + [[maybe_unused]] uint8_t __pad1991[0x7]; // 0x1991 public: // MNetworkEnable - CEconItemView m_EconGloves; // 0x1878 + CEconItemView m_EconGloves; // 0x1998 // MNetworkEnable - QAngle m_qDeathEyeAngles; // 0x1af0 + QAngle m_qDeathEyeAngles; // 0x1c10 }; // Alignment: 6 -// Size: 0xe28 +// Size: 0xf38 class CDZDoor : public CPropDoorRotatingBreakable { -private: - [[maybe_unused]] uint8_t __pad0dd8[0x8]; // 0xdd8 public: - bool m_bIsSecurityDoor; // 0xde0 + bool m_bIsSecurityDoor; // 0xef0 private: - [[maybe_unused]] uint8_t __pad0de1[0x3]; // 0xde1 + [[maybe_unused]] uint8_t __pad0ef1[0x3]; // 0xef1 public: - CHandle< CPointDZWeaponSpawn > m_hSpawnPoint; // 0xde4 - bool m_bPaidToUnlock; // 0xde8 + CHandle< CPointDZWeaponSpawn > m_hSpawnPoint; // 0xef4 + bool m_bPaidToUnlock; // 0xef8 private: - [[maybe_unused]] uint8_t __pad0de9[0x3]; // 0xde9 + [[maybe_unused]] uint8_t __pad0ef9[0x3]; // 0xef9 public: - int32_t m_nPlayDoorOpenSound; // 0xdec + int32_t m_nPlayDoorOpenSound; // 0xefc private: - [[maybe_unused]] uint8_t __pad0df0[0x30]; // 0xdf0 + [[maybe_unused]] uint8_t __pad0f00[0x30]; // 0xf00 public: - AttachmentHandle_t m_nAttachmentIndex1; // 0xe20 - AttachmentHandle_t m_nAttachmentIndex2; // 0xe21 + AttachmentHandle_t m_nAttachmentIndex1; // 0xf30 + AttachmentHandle_t m_nAttachmentIndex2; // 0xf31 }; // Alignment: 1 -// Size: 0x970 +// Size: 0xa80 class CHostageExpresserShim : public CBaseCombatCharacter { public: - CAI_Expresser* m_pExpresser; // 0x968 + CAI_Expresser* m_pExpresser; // 0xa78 }; // Alignment: 39 -// Size: 0x2c00 +// Size: 0x2d10 class CHostage : public CHostageExpresserShim { -private: - [[maybe_unused]] uint8_t __pad0970[0x10]; // 0x970 public: - CEntityIOOutput m_OnHostageBeginGrab; // 0x980 - CEntityIOOutput m_OnFirstPickedUp; // 0x9a8 - CEntityIOOutput m_OnDroppedNotRescued; // 0x9d0 - CEntityIOOutput m_OnRescued; // 0x9f8 + CEntityIOOutput m_OnHostageBeginGrab; // 0xa90 + CEntityIOOutput m_OnFirstPickedUp; // 0xab8 + CEntityIOOutput m_OnDroppedNotRescued; // 0xae0 + CEntityIOOutput m_OnRescued; // 0xb08 // MNetworkEnable - EntitySpottedState_t m_entitySpottedState; // 0xa20 - int32_t m_nSpotRules; // 0xa38 - uint32_t m_uiHostageSpawnExclusionGroupMask; // 0xa3c - uint32_t m_nHostageSpawnRandomFactor; // 0xa40 - bool m_bRemove; // 0xa44 + EntitySpottedState_t m_entitySpottedState; // 0xb30 + int32_t m_nSpotRules; // 0xb48 + uint32_t m_uiHostageSpawnExclusionGroupMask; // 0xb4c + uint32_t m_nHostageSpawnRandomFactor; // 0xb50 + bool m_bRemove; // 0xb54 private: - [[maybe_unused]] uint8_t __pad0a45[0x3]; // 0xa45 + [[maybe_unused]] uint8_t __pad0b55[0x3]; // 0xb55 public: // MNetworkEnable - Vector m_vel; // 0xa48 + Vector m_vel; // 0xb58 // MNetworkEnable - bool m_isRescued; // 0xa54 + bool m_isRescued; // 0xb64 // MNetworkEnable - bool m_jumpedThisFrame; // 0xa55 + bool m_jumpedThisFrame; // 0xb65 private: - [[maybe_unused]] uint8_t __pad0a56[0x2]; // 0xa56 + [[maybe_unused]] uint8_t __pad0b66[0x2]; // 0xb66 public: // MNetworkEnable - int32_t m_nHostageState; // 0xa58 + int32_t m_nHostageState; // 0xb68 // MNetworkEnable - CHandle< CBaseEntity > m_leader; // 0xa5c - CHandle< CCSPlayerPawnBase > m_lastLeader; // 0xa60 + CHandle< CBaseEntity > m_leader; // 0xb6c + CHandle< CCSPlayerPawnBase > m_lastLeader; // 0xb70 private: - [[maybe_unused]] uint8_t __pad0a64[0x4]; // 0xa64 + [[maybe_unused]] uint8_t __pad0b74[0x4]; // 0xb74 public: - CountdownTimer m_reuseTimer; // 0xa68 - bool m_hasBeenUsed; // 0xa80 + CountdownTimer m_reuseTimer; // 0xb78 + bool m_hasBeenUsed; // 0xb90 private: - [[maybe_unused]] uint8_t __pad0a81[0x3]; // 0xa81 + [[maybe_unused]] uint8_t __pad0b91[0x3]; // 0xb91 public: - Vector m_accel; // 0xa84 - bool m_isRunning; // 0xa90 - bool m_isCrouching; // 0xa91 + Vector m_accel; // 0xb94 + bool m_isRunning; // 0xba0 + bool m_isCrouching; // 0xba1 private: - [[maybe_unused]] uint8_t __pad0a92[0x6]; // 0xa92 + [[maybe_unused]] uint8_t __pad0ba2[0x6]; // 0xba2 public: - CountdownTimer m_jumpTimer; // 0xa98 - bool m_isWaitingForLeader; // 0xab0 + CountdownTimer m_jumpTimer; // 0xba8 + bool m_isWaitingForLeader; // 0xbc0 private: - [[maybe_unused]] uint8_t __pad0ab1[0x200f]; // 0xab1 + [[maybe_unused]] uint8_t __pad0bc1[0x200f]; // 0xbc1 public: - CountdownTimer m_repathTimer; // 0x2ac0 - CountdownTimer m_inhibitDoorTimer; // 0x2ad8 + CountdownTimer m_repathTimer; // 0x2bd0 + CountdownTimer m_inhibitDoorTimer; // 0x2be8 private: - [[maybe_unused]] uint8_t __pad2af0[0x78]; // 0x2af0 + [[maybe_unused]] uint8_t __pad2c00[0x78]; // 0x2c00 public: - CountdownTimer m_inhibitObstacleAvoidanceTimer; // 0x2b68 + CountdownTimer m_inhibitObstacleAvoidanceTimer; // 0x2c78 private: - [[maybe_unused]] uint8_t __pad2b80[0x8]; // 0x2b80 + [[maybe_unused]] uint8_t __pad2c90[0x8]; // 0x2c90 public: - CountdownTimer m_wiggleTimer; // 0x2b88 + CountdownTimer m_wiggleTimer; // 0x2c98 private: - [[maybe_unused]] uint8_t __pad2ba0[0x4]; // 0x2ba0 + [[maybe_unused]] uint8_t __pad2cb0[0x4]; // 0x2cb0 public: - bool m_isAdjusted; // 0x2ba4 - bool m_bHandsHaveBeenCut; // 0x2ba5 + bool m_isAdjusted; // 0x2cb4 + bool m_bHandsHaveBeenCut; // 0x2cb5 private: - [[maybe_unused]] uint8_t __pad2ba6[0x2]; // 0x2ba6 + [[maybe_unused]] uint8_t __pad2cb6[0x2]; // 0x2cb6 public: - CHandle< CCSPlayerPawn > m_pHostageGrabber; // 0x2ba8 - GameTime_t m_fLastGrabTime; // 0x2bac - float m_flGrabbingLength; // 0x2bb0 - Vector m_vecPositionWhenStartedDroppingToGround; // 0x2bb4 - Vector m_vecGrabbedPos; // 0x2bc0 + CHandle< CCSPlayerPawn > m_pHostageGrabber; // 0x2cb8 + GameTime_t m_fLastGrabTime; // 0x2cbc + float m_flGrabbingLength; // 0x2cc0 + Vector m_vecPositionWhenStartedDroppingToGround; // 0x2cc4 + Vector m_vecGrabbedPos; // 0x2cd0 // MNetworkEnable - GameTime_t m_flRescueStartTime; // 0x2bcc + GameTime_t m_flRescueStartTime; // 0x2cdc // MNetworkEnable - GameTime_t m_flGrabSuccessTime; // 0x2bd0 + GameTime_t m_flGrabSuccessTime; // 0x2ce0 // MNetworkEnable - GameTime_t m_flDropStartTime; // 0x2bd4 - int32_t m_nApproachRewardPayouts; // 0x2bd8 - int32_t m_nPickupEventCount; // 0x2bdc - Vector m_vecSpawnGroundPos; // 0x2be0 + GameTime_t m_flDropStartTime; // 0x2ce4 + int32_t m_nApproachRewardPayouts; // 0x2ce8 + int32_t m_nPickupEventCount; // 0x2cec + Vector m_vecSpawnGroundPos; // 0x2cf0 }; // Alignment: 0 -// Size: 0x2c00 +// Size: 0x2d10 class CHostageAlias_info_hostage_spawn : public CHostage { public: @@ -18517,7 +17400,7 @@ public: }; // Alignment: 0 -// Size: 0x918 +// Size: 0xa28 class CItemDefuserAlias_item_defuser : public CItemDefuser { public: @@ -18525,7 +17408,7 @@ public: }; // Alignment: 0 -// Size: 0xd70 +// Size: 0xe80 class CAK47 : public CWeaponCSBaseGun { public: @@ -18533,7 +17416,7 @@ public: }; // Alignment: 0 -// Size: 0xd70 +// Size: 0xe80 class CWeaponAug : public CWeaponCSBaseGun { public: @@ -18541,7 +17424,7 @@ public: }; // Alignment: 0 -// Size: 0xd70 +// Size: 0xe80 class CWeaponAWP : public CWeaponCSBaseGun { public: @@ -18549,7 +17432,7 @@ public: }; // Alignment: 0 -// Size: 0xd70 +// Size: 0xe80 class CWeaponBizon : public CWeaponCSBaseGun { public: @@ -18557,7 +17440,7 @@ public: }; // Alignment: 0 -// Size: 0xd70 +// Size: 0xe80 class CWeaponFamas : public CWeaponCSBaseGun { public: @@ -18565,7 +17448,7 @@ public: }; // Alignment: 0 -// Size: 0xd70 +// Size: 0xe80 class CWeaponFiveSeven : public CWeaponCSBaseGun { public: @@ -18573,7 +17456,7 @@ public: }; // Alignment: 0 -// Size: 0xd70 +// Size: 0xe80 class CWeaponG3SG1 : public CWeaponCSBaseGun { public: @@ -18581,7 +17464,7 @@ public: }; // Alignment: 0 -// Size: 0xd70 +// Size: 0xe80 class CWeaponGalilAR : public CWeaponCSBaseGun { public: @@ -18589,7 +17472,7 @@ public: }; // Alignment: 0 -// Size: 0xd70 +// Size: 0xe80 class CWeaponGlock : public CWeaponCSBaseGun { public: @@ -18597,7 +17480,7 @@ public: }; // Alignment: 0 -// Size: 0xd70 +// Size: 0xe80 class CWeaponHKP2000 : public CWeaponCSBaseGun { public: @@ -18605,7 +17488,7 @@ public: }; // Alignment: 0 -// Size: 0xd70 +// Size: 0xe80 class CWeaponM4A1 : public CWeaponCSBaseGun { public: @@ -18613,7 +17496,7 @@ public: }; // Alignment: 0 -// Size: 0xd70 +// Size: 0xe80 class CWeaponMAC10 : public CWeaponCSBaseGun { public: @@ -18621,7 +17504,7 @@ public: }; // Alignment: 0 -// Size: 0xd70 +// Size: 0xe80 class CWeaponMag7 : public CWeaponCSBaseGun { public: @@ -18629,7 +17512,7 @@ public: }; // Alignment: 0 -// Size: 0xd70 +// Size: 0xe80 class CWeaponMP7 : public CWeaponCSBaseGun { public: @@ -18637,7 +17520,7 @@ public: }; // Alignment: 0 -// Size: 0xd70 +// Size: 0xe80 class CWeaponMP9 : public CWeaponCSBaseGun { public: @@ -18645,7 +17528,7 @@ public: }; // Alignment: 0 -// Size: 0xd70 +// Size: 0xe80 class CWeaponNegev : public CWeaponCSBaseGun { public: @@ -18653,7 +17536,7 @@ public: }; // Alignment: 0 -// Size: 0xd70 +// Size: 0xe80 class CWeaponP250 : public CWeaponCSBaseGun { public: @@ -18661,7 +17544,7 @@ public: }; // Alignment: 0 -// Size: 0xd70 +// Size: 0xe80 class CWeaponP90 : public CWeaponCSBaseGun { public: @@ -18669,7 +17552,7 @@ public: }; // Alignment: 0 -// Size: 0xd70 +// Size: 0xe80 class CWeaponSCAR20 : public CWeaponCSBaseGun { public: @@ -18677,7 +17560,7 @@ public: }; // Alignment: 0 -// Size: 0xd70 +// Size: 0xe80 class CWeaponSG556 : public CWeaponCSBaseGun { public: @@ -18685,7 +17568,7 @@ public: }; // Alignment: 0 -// Size: 0xd70 +// Size: 0xe80 class CWeaponSSG08 : public CWeaponCSBaseGun { public: @@ -18693,7 +17576,7 @@ public: }; // Alignment: 0 -// Size: 0xd70 +// Size: 0xe80 class CWeaponTec9 : public CWeaponCSBaseGun { public: @@ -18701,7 +17584,7 @@ public: }; // Alignment: 0 -// Size: 0xd70 +// Size: 0xe80 class CWeaponUMP45 : public CWeaponCSBaseGun { public: @@ -18709,7 +17592,7 @@ public: }; // Alignment: 0 -// Size: 0xd70 +// Size: 0xe80 class CWeaponM249 : public CWeaponCSBaseGun { public: @@ -18717,7 +17600,7 @@ public: }; // Alignment: 0 -// Size: 0xd90 +// Size: 0xea0 class CMolotovGrenade : public CBaseCSGrenade { public: @@ -18725,7 +17608,7 @@ public: }; // Alignment: 0 -// Size: 0xd90 +// Size: 0xea0 class CIncendiaryGrenade : public CMolotovGrenade { public: @@ -18733,7 +17616,7 @@ public: }; // Alignment: 0 -// Size: 0xd90 +// Size: 0xea0 class CDecoyGrenade : public CBaseCSGrenade { public: @@ -18741,7 +17624,7 @@ public: }; // Alignment: 0 -// Size: 0xd90 +// Size: 0xea0 class CFlashbang : public CBaseCSGrenade { public: @@ -18749,7 +17632,7 @@ public: }; // Alignment: 0 -// Size: 0xd90 +// Size: 0xea0 class CHEGrenade : public CBaseCSGrenade { public: @@ -18757,7 +17640,7 @@ public: }; // Alignment: 0 -// Size: 0xd98 +// Size: 0xea8 class CSmokeGrenade : public CBaseCSGrenade { public: diff --git a/sdk/soundsystem.hpp b/sdk/soundsystem.hpp index 48e7eddd..3b968fb7 100644 --- a/sdk/soundsystem.hpp +++ b/sdk/soundsystem.hpp @@ -206,8 +206,6 @@ struct VMixFilterDesc_t; // Size: 0x18 class CSosGroupActionSchema { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MPropertyFriendlyName "Name" CUtlString m_name; // 0x8 @@ -224,10 +222,8 @@ class CSosGroupActionLimitSchema : public CSosGroupActionSchema public: // MPropertyFriendlyName "Max Count" int32_t m_nMaxCount; // 0x18 - // MPropertyAttributeChoiceEnumName // MPropertyFriendlyName "Stop Type" SosActionStopType_t m_nStopType; // 0x1c - // MPropertyAttributeChoiceEnumName // MPropertyFriendlyName "Sort Type" SosActionSortType_t m_nSortType; // 0x20 }; @@ -245,8 +241,6 @@ public: // Size: 0x10 class CSosGroupBranchPattern { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: // MPropertyFriendlyName "Event Name" bool m_bMatchEventName; // 0x8 @@ -280,7 +274,6 @@ class CSosSoundEventGroupSchema public: // MPropertyFriendlyName "Group Name" CUtlString m_name; // 0x0 - // MPropertyAttributeChoiceEnumName // MPropertyFriendlyName "Group Type" SosGroupType_t m_nType; // 0x8 // MPropertyFriendlyName "Blocks Events" diff --git a/sdk/vphysics2.hpp b/sdk/vphysics2.hpp index 35cf3f49..a02bf66e 100644 --- a/sdk/vphysics2.hpp +++ b/sdk/vphysics2.hpp @@ -4,7 +4,7 @@ // ///////////////////////////////////////////////////////////// // Binary: vphysics2.dll -// Classes count: 86 +// Classes count: 88 // Enums count: 2 // Created using source2gen - github.com/neverlosecc/source2gen // ///////////////////////////////////////////////////////////// @@ -79,10 +79,8 @@ public: // Size: 0x8 class IPhysicsPlayerController { -private: - [[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0 public: - // No members available + uint8_t __pad0000[0x8]; // Autoaligned }; // Alignment: 35 @@ -1102,6 +1100,48 @@ public: RnHull_t* m_pHull; // 0x28 }; +// Alignment: 35 +// Size: 0xd0 +struct RnBodyDesc_t +{ +public: + CUtlString m_sDebugName; // 0x0 + Vector m_vPosition; // 0x8 + QuaternionStorage m_qOrientation; // 0x14 + Vector m_vLinearVelocity; // 0x24 + Vector m_vAngularVelocity; // 0x30 + Vector m_vLocalMassCenter; // 0x3c + Vector m_LocalInertiaInv[3]; // 0x48 + float m_flMassInv; // 0x6c + float m_flGameMass; // 0x70 + float m_flInertiaScaleInv; // 0x74 + float m_flLinearDamping; // 0x78 + float m_flAngularDamping; // 0x7c + float m_flLinearDrag; // 0x80 + float m_flAngularDrag; // 0x84 + float m_flLinearBuoyancyDrag; // 0x88 + float m_flAngularBuoyancyDrag; // 0x8c + Vector m_vLastAwakeForceAccum; // 0x90 + Vector m_vLastAwakeTorqueAccum; // 0x9c + float m_flBuoyancyFactor; // 0xa8 + float m_flGravityScale; // 0xac + float m_flTimeScale; // 0xb0 + int32_t m_nBodyType; // 0xb4 + uint32_t m_nGameIndex; // 0xb8 + uint32_t m_nGameFlags; // 0xbc + int8_t m_nMinVelocityIterations; // 0xc0 + int8_t m_nMinPositionIterations; // 0xc1 + int8_t m_nMassPriority; // 0xc2 + bool m_bEnabled; // 0xc3 + bool m_bSleeping; // 0xc4 + bool m_bIsContinuousEnabled; // 0xc5 + bool m_bDragEnabled; // 0xc6 + bool m_bBuoyancyDragEnabled; // 0xc7 + bool m_bGravityDisabled; // 0xc8 + bool m_bSpeculativeEnabled; // 0xc9 + bool m_bHasShadowController; // 0xca +}; + // Alignment: 2 // Size: 0x18 struct VertexPositionNormal_t @@ -1119,3 +1159,11 @@ public: Vector m_vPosition; // 0x0 }; +// Alignment: 1 +// Size: 0xd8 +struct vphysics_save_cphysicsbody_t : public RnBodyDesc_t +{ +public: + uint64_t m_nOldPointer; // 0xd0 +}; + diff --git a/sdk/worldrenderer.hpp b/sdk/worldrenderer.hpp index a8d2c852..4681ae4a 100644 --- a/sdk/worldrenderer.hpp +++ b/sdk/worldrenderer.hpp @@ -4,13 +4,13 @@ // ///////////////////////////////////////////////////////////// // Binary: worldrenderer.dll -// Classes count: 24 +// Classes count: 26 // Enums count: 1 // Created using source2gen - github.com/neverlosecc/source2gen // ///////////////////////////////////////////////////////////// // Alignment: 4 -// Size: 0xf +// Size: 0x10 enum class ObjectTypeFlags_t : uint32_t { OBJECT_TYPE_NONE = 0x0, @@ -26,11 +26,13 @@ enum class ObjectTypeFlags_t : uint32_t OBJECT_TYPE_RENDER_WITH_DYNAMIC = 0x200, OBJECT_TYPE_RENDER_TO_CUBEMAPS = 0x400, OBJECT_TYPE_MODEL_HAS_LODS = 0x800, + OBJECT_TYPE_OVERLAY = 0x2000, OBJECT_TYPE_PRECOMPUTED_VISMEMBERS = 0x4000, OBJECT_TYPE_STATIC_CUBE_MAP = 0x8000, }; struct CRenderBufferBinding; +struct AABB_t; struct BakedLightingInfo_t; struct WorldBuilderParams_t; struct VoxelVisBlockOffset_t; @@ -56,12 +58,12 @@ public: }; // Alignment: 2 -// Size: 0x30 +// Size: 0x40 struct EntityKeyValueData_t { public: - CUtlBinaryBlock m_keyValuesData; // 0x0 - CUtlVector< EntityIOConnectionData_t > m_connections; // 0x18 + CUtlVector< EntityIOConnectionData_t > m_connections; // 0x8 + CUtlBinaryBlock m_keyValuesData; // 0x20 }; // Alignment: 4 @@ -69,10 +71,10 @@ public: struct PermEntityLumpData_t { public: - CUtlString m_name; // 0x0 - CUtlString m_hammerUniqueId; // 0x8 - CUtlVector< CStrongHandleCopyable< InfoForResourceTypeCEntityLump > > m_childLumps; // 0x10 - CUtlVector< EntityKeyValueData_t > m_entityKeyValues; // 0x28 + CUtlString m_name; // 0x8 + CUtlString m_hammerUniqueId; // 0x10 + CUtlVector< CStrongHandleCopyable< InfoForResourceTypeCEntityLump > > m_childLumps; // 0x18 + CUtlLeanVector< EntityKeyValueData_t > m_entityKeyValues; // 0x30 }; // Alignment: 15 @@ -181,8 +183,8 @@ public: CUtlVector< uint8 > m_pData; // 0x20 }; -// Alignment: 13 -// Size: 0x30 +// Alignment: 9 +// Size: 0x18 struct AggregateMeshInfo_t { public: @@ -198,10 +200,6 @@ private: public: ObjectTypeFlags_t m_objectFlags; // 0x10 int32_t m_nLightProbeVolumePrecomputedHandshake; // 0x14 - Vector m_vLODOrigin; // 0x18 - float m_fLODStartDrawDistance; // 0x24 - float m_fLODEndDrawDistance; // 0x28 - float m_fMaxObjectScale; // 0x2c }; // Alignment: 4 @@ -236,8 +234,35 @@ public: CStrongHandle< InfoForResourceTypeCModel > m_renderableModel; // 0x70 }; -// Alignment: 12 -// Size: 0x128 +// Alignment: 3 +// Size: 0x20 +struct ClutterTile_t +{ +public: + uint32_t m_nFirstInstance; // 0x0 + uint32_t m_nLastInstance; // 0x4 + AABB_t m_Bounds; // 0x8 +}; + +// Alignment: 7 +// Size: 0x70 +struct ClutterSceneObject_t +{ +public: + AABB_t m_Bounds; // 0x0 + ObjectTypeFlags_t m_flags; // 0x18 + int16_t m_nLayer; // 0x1c +private: + [[maybe_unused]] uint8_t __pad001e[0x2]; // 0x1e +public: + CUtlVector< matrix3x4_t > m_transforms; // 0x20 + CUtlVector< Color > m_tintColorSrgb; // 0x38 + CUtlVector< ClutterTile_t > m_tiles; // 0x50 + CStrongHandle< InfoForResourceTypeCModel > m_renderableModel; // 0x68 +}; + +// Alignment: 13 +// Size: 0x140 struct WorldNode_t { public: @@ -245,14 +270,15 @@ public: CUtlVector< InfoOverlayData_t > m_infoOverlays; // 0x18 CUtlVector< uint16 > m_visClusterMembership; // 0x30 CUtlVector< AggregateSceneObject_t > m_aggregateSceneObjects; // 0x48 - CUtlVector< ExtraVertexStreamOverride_t > m_extraVertexStreamOverrides; // 0x60 - CUtlVector< MaterialOverride_t > m_materialOverrides; // 0x78 - CUtlVector< WorldNodeOnDiskBufferData_t > m_extraVertexStreams; // 0x90 - CUtlVector< CUtlString > m_layerNames; // 0xa8 - CUtlVector< uint8 > m_sceneObjectLayerIndices; // 0xc0 - CUtlVector< uint8 > m_overlayLayerIndices; // 0xd8 - CUtlString m_grassFileName; // 0xf0 - BakedLightingInfo_t m_nodeLightingInfo; // 0xf8 + CUtlVector< ClutterSceneObject_t > m_clutterSceneObjects; // 0x60 + CUtlVector< ExtraVertexStreamOverride_t > m_extraVertexStreamOverrides; // 0x78 + CUtlVector< MaterialOverride_t > m_materialOverrides; // 0x90 + CUtlVector< WorldNodeOnDiskBufferData_t > m_extraVertexStreams; // 0xa8 + CUtlVector< CUtlString > m_layerNames; // 0xc0 + CUtlVector< uint8 > m_sceneObjectLayerIndices; // 0xd8 + CUtlVector< uint8 > m_overlayLayerIndices; // 0xf0 + CUtlString m_grassFileName; // 0x108 + BakedLightingInfo_t m_nodeLightingInfo; // 0x110 }; // Alignment: 5 @@ -311,8 +337,6 @@ public: // Size: 0xa0 class CVoxelVisibility { -private: - [[maybe_unused]] uint8_t __pad0000[0x40]; // 0x0 public: uint32_t m_nBaseClusterCount; // 0x40 uint32_t m_nPVSBytesPerCluster; // 0x44 @@ -333,28 +357,22 @@ public: // Size: 0x1 struct VMapResourceData_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 0 // Size: 0x1 struct InfoForResourceTypeVMapResourceData_t { -private: - [[maybe_unused]] uint8_t __pad0000[0x1]; // 0x0 public: - // No members available + uint8_t __pad0000[0x1]; // Autoaligned }; // Alignment: 11 // Size: 0x78 class CEntityIdentity { -private: - [[maybe_unused]] uint8_t __pad0000[0x14]; // 0x0 public: // MNetworkEnable // MNetworkChangeCallback "entityIdentityNameChanged" @@ -405,12 +423,8 @@ public: // Size: 0x38 class CScriptComponent : public CEntityComponent { -private: - [[maybe_unused]] uint8_t __pad0008[0x28]; // 0x8 public: CUtlSymbolLarge m_scriptClassName; // 0x30 - - // Static fields: static EntComponentInfo_t &Get_s_EntComponentInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("worldrenderer.dll")->FindDeclaredClass("CScriptComponent")->m_static_fields[0]->m_instance);}; static int32_t &Get_entity_component_error_class_decl_says_contained_but_impl_is_referenced(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("worldrenderer.dll")->FindDeclaredClass("CScriptComponent")->m_static_fields[1]->m_instance);}; };