C_OP_ClientPhysics
CS2 build 25218825 · Steam date 2026-09-09 · platform windows-x86_64 · cs2_schema.json
Kind: classSize: 1344 bytes (0x540)Alignment: 8 bytesModule: particlesBinary: !GlobalTypes
Relationships
Inherits from: CParticleFunctionRenderer
Inheritance tree
CParticleFunction
CParticleFunctionRenderer
- C_OP_ClientPhysics
Relationship diagram (4 edges)
classDiagram
CParticleFunction <|-- CParticleFunctionRenderer
CParticleFunctionRenderer <|-- C_OP_ClientPhysics
C_OP_ClientPhysics *-- CParticleCollectionFloatInput
C_OP_ClientPhysics *-- ParticleAttributeIndex_tMemory layout
35 fields, 15 declared here and 20 inherited. Offsets are absolute from the object base on windows-x86_64.
CParticleFunctionCParticleFunctionRendererC_OP_ClientPhysics
| Offset | Field | Type | From | Annotations |
|---|---|---|---|---|
0x8 | m_flOpStrength | CParticleCollectionFloatInput | CParticleFunction | MPropertyFriendlyName operator strength MPropertySortPriority -100 |
0x178 | m_nOpEndCapState | ParticleEndcapMode_t | CParticleFunction | MPropertyFriendlyName operator end cap state MPropertySortPriority -100 |
0x17c | m_nToolsState | ParticleToolsState_t | CParticleFunction | MPropertyFriendlyName operator enabled in tools or game only MPropertySortPriority -100 |
0x180 | m_flOpStartFadeInTime | float32 | CParticleFunction | MParticleAdvancedField MPropertyFriendlyName operator start fadein MPropertySortPriority -100 MPropertyStartGroup Operator Fade |
0x184 | m_flOpEndFadeInTime | float32 | CParticleFunction | MParticleAdvancedField MPropertyFriendlyName operator end fadein MPropertySortPriority -100 |
0x188 | m_flOpStartFadeOutTime | float32 | CParticleFunction | MParticleAdvancedField MPropertyFriendlyName operator start fadeout MPropertySortPriority -100 |
0x18c | m_flOpEndFadeOutTime | float32 | CParticleFunction | MParticleAdvancedField MPropertyFriendlyName operator end fadeout MPropertySortPriority -100 |
0x190 | m_flOpFadeOscillatePeriod | float32 | CParticleFunction | MParticleAdvancedField MPropertyFriendlyName operator fade oscillate MPropertySortPriority -100 |
0x194 | m_bNormalizeToStopTime | bool | CParticleFunction | MParticleAdvancedField MPropertyFriendlyName normalize fade times to endcap MPropertySortPriority -100 |
0x198 | m_flOpTimeOffsetMin | float32 | CParticleFunction | MParticleAdvancedField MPropertyFriendlyName operator fade time offset min MPropertySortPriority -100 MPropertyStartGroup Operator Fade Time Offset |
0x19c | m_flOpTimeOffsetMax | float32 | CParticleFunction | MParticleAdvancedField MPropertyFriendlyName operator fade time offset max MPropertySortPriority -100 |
0x1a0 | m_nOpTimeOffsetSeed | int32 | CParticleFunction | MParticleAdvancedField MPropertyFriendlyName operator fade time offset seed MPropertySortPriority -100 |
0x1a4 | m_nOpTimeScaleSeed | int32 | CParticleFunction | MParticleAdvancedField MPropertyFriendlyName operator fade time scale seed MPropertySortPriority -100 MPropertyStartGroup Operator Fade Timescale Modifiers |
0x1a8 | m_flOpTimeScaleMin | float32 | CParticleFunction | MParticleAdvancedField MPropertyFriendlyName operator fade time scale min MPropertySortPriority -100 |
0x1ac | m_flOpTimeScaleMax | float32 | CParticleFunction | MParticleAdvancedField MPropertyFriendlyName operator fade time scale max MPropertySortPriority -100 |
0x1b2 | m_bDisableOperator | bool | CParticleFunction | MPropertyStartGroup MPropertySuppressField |
0x1b8 | m_Notes | CUtlString | CParticleFunction | MParticleHelpField MPropertyFriendlyName operator help and notes MPropertySortPriority -100 |
0x1d8 | VisibilityInputs | CParticleVisibilityInputs | CParticleFunctionRenderer | MPropertySortPriority -1 |
0x220 | m_bCannotBeRefracted | bool | CParticleFunctionRenderer | MPropertyFriendlyName I cannot be refracted through refracting objects like water MPropertySortPriority -1 MPropertyStartGroup Rendering filter |
0x221 | m_bSkipRenderingOnMobile | bool | CParticleFunctionRenderer | MPropertyFriendlyName Skip rendering on mobile MPropertySortPriority -1 |
0x228 | m_strPhysicsType | CUtlString | MPropertyAttributeEditor VDataChoice( scripts/misc.vdata!generic_physics_particle_spawner ) MPropertyFriendlyName client physics type | |
0x230 | m_bStartAsleep | bool | MPropertyFriendlyName start all physics asleep | |
0x238 | m_flPlayerWakeRadius | CParticleCollectionFloatInput | MPropertyFriendlyName Player Wake Radius | |
0x3a8 | m_flVehicleWakeRadius | CParticleCollectionFloatInput | MPropertyFriendlyName Vehicle Wake Radius | |
0x518 | m_bUseHighQualitySimulation | bool | MPropertyFriendlyName use high quality simulation | |
0x51c | m_nMaxParticleCount | int32 | MPropertyFriendlyName max particle count | |
0x520 | m_bRespectExclusionVolumes | bool | MPropertyFriendlyName prevent spawning in exclusion volumes MPropertySuppressExpr m_bKillParticles == true | |
0x521 | m_bKillParticles | bool | MPropertyFriendlyName kill physics particles | |
0x522 | m_bDeleteSim | bool | MPropertyFriendlyName delete physics sim when stopped MPropertySuppressExpr m_bKillParticles == false | |
0x524 | m_nControlPoint | int32 | MPropertyFriendlyName control point (for finding nearest sim) MPropertySuppressExpr m_bKillParticles == true | |
0x528 | m_nForcedSimId | int32 | MPropertyFriendlyName specific sim id MPropertySuppressExpr m_bKillParticles == true | |
0x52c | m_nColorBlendType | ParticleColorBlendType_t | MPropertyFriendlyName tint blend (color vs prop group gradient) | |
0x530 | m_nForcedStatusEffects | ParticleAttrBoxFlags_t | MPropertyFriendlyName forced status effect flags | |
0x534 | m_nNoCollisionAttribute | ParticleAttributeIndex_t | MPropertyAttributeChoiceName particlefield_scalar MPropertyFriendlyName Disable Non-Static Collision Duration MPropertySuppressExpr m_nForcedStatusEffects == 0 | |
0x538 | m_nZeroGravityAttribute | ParticleAttributeIndex_t | MPropertyAttributeChoiceName particlefield_scalar MPropertyFriendlyName Zero Gravity Duration MPropertySuppressExpr m_nForcedStatusEffects == 0 |
KV3 class defaults
{
"_class": "C_OP_ClientPhysics",
"m_flOpStrength":
{
"m_nType": "PF_TYPE_LITERAL",
"m_nMapType": "PF_MAP_TYPE_DIRECT",
"m_flLiteralValue": 1.000000,
"m_NamedValue": "",
"m_nControlPoint": 0,
"m_nScalarAttribute": 3,
"m_nVectorAttribute": 6,
"m_nVectorComponent": 0,
"m_bReverseOrder": false,
"m_flRandomMin": 0.000000,
"m_flRandomMax": 1.000000,
"m_bHasRandomSignFlip": false,
"m_nRandomSeed": <HIDDEN FOR DIFF>,
"m_nRandomMode": "PF_RANDOM_MODE_CONSTANT",
"m_strSnapshotSubset": "",
"m_flLOD0": 0.000000,
"m_flLOD1": 0.000000,
"m_flLOD2": 0.000000,
"m_flLOD3": 0.000000,
"m_nNoiseInputVectorAttribute": 0,
"m_flNoiseOutputMin": 0.000000,
"m_flNoiseOutputMax": 1.000000,
"m_flNoiseScale": 0.100000,
"m_vecNoiseOffsetRate":
[
0.000000,
0.000000,
0.000000
],
"m_flNoiseOffset": 0.000000,
"m_nNoiseOctaves": 1,
"m_nNoiseTurbulence": "PF_NOISE_TURB_NONE",
"m_nNoiseType": "PF_NOISE_TYPE_PERLIN",
"m_nNoiseModifier": "PF_NOISE_MODIFIER_NONE",
"m_flNoiseTurbulenceScale": 1.000000,
"m_flNoiseTurbulenceMix": 0.500000,
"m_flNoiseImgPreviewScale": 1.000000,
"m_bNoiseImgPreviewLive": true,
"m_flNoCameraFallback": 0.000000,
"m_bUseBoundsCenter": false,
"m_nInputMode": "PF_INPUT_MODE_CLAMPED",
"m_flMultFactor": 1.000000,
"m_flInput0": 0.000000,
"m_flInput1": 1.000000,
"m_flOutput0": 0.000000,
"m_flOutput1": 1.000000,
"m_flNotchedRangeMin": 0.000000,
"m_flNotchedRangeMax": 1.000000,
"m_flNotchedOutputOutside": 0.000000,
"m_flNotchedOutputInside": 1.000000,
"m_nRoundType": "PF_ROUND_TYPE_NEAREST",
"m_nBiasType": "PF_BIAS_TYPE_STANDARD",
"m_flBiasParameter": 0.000000,
"m_Curve":
{
"m_spline":
[
],
"m_tangents":
[
],
"m_vDomainMins":
[
0.000000,
0.000000
],
"m_vDomainMaxs":
[
0.000000,
0.000000
]
}
},
"m_nOpEndCapState": "PARTICLE_ENDCAP_ALWAYS_ON",
"m_nToolsState": "PARTICLE_TOOLS_STATE_ALWAYS_ON",
"m_flOpStartFadeInTime": 0.000000,
"m_flOpEndFadeInTime": 0.000000,
"m_flOpStartFadeOutTime": 0.000000,
"m_flOpEndFadeOutTime": 0.000000,
"m_flOpFadeOscillatePeriod": 0.000000,
"m_bNormalizeToStopTime": false,
"m_flOpTimeOffsetMin": 0.000000,
"m_flOpTimeOffsetMax": 0.000000,
"m_nOpTimeOffsetSeed": 0,
"m_nOpTimeScaleSeed": 0,
"m_flOpTimeScaleMin": 1.000000,
"m_flOpTimeScaleMax": 1.000000,
"m_bDisableOperator": false,
"m_Notes": "",
"VisibilityInputs":
{
"m_flCameraBias": 0.000000,
"m_nCPin": -1,
"m_flProxyRadius": 1.000000,
"m_flInputMin": 0.000000,
"m_flInputMax": 1.000000,
"m_flInputPixelVisFade": 0.250000,
"m_flNoPixelVisibilityFallback": 1.000000,
"m_flDistanceInputMin": 0.000000,
"m_flDistanceInputMax": 0.000000,
"m_flDotInputMin": 0.000000,
"m_flDotInputMax": 0.000000,
"m_bDotCPAngles": true,
"m_bDotCameraAngles": false,
"m_flAlphaScaleMin": 0.000000,
"m_flAlphaScaleMax": 1.000000,
"m_flRadiusScaleMin": 1.000000,
"m_flRadiusScaleMax": 1.000000,
"m_flRadiusScaleFOVBase": 0.000000,
"m_bRightEye": false
},
"m_bCannotBeRefracted": true,
"m_bSkipRenderingOnMobile": false,
"m_strPhysicsType": "",
"m_bStartAsleep": false,
"m_flPlayerWakeRadius":
{
"m_nType": "PF_TYPE_LITERAL",
"m_nMapType": "PF_MAP_TYPE_DIRECT",
"m_flLiteralValue": -1.000000,
"m_NamedValue": "",
"m_nControlPoint": 0,
"m_nScalarAttribute": 3,
"m_nVectorAttribute": 6,
"m_nVectorComponent": 0,
"m_bReverseOrder": false,
"m_flRandomMin": 0.000000,
"m_flRandomMax": 1.000000,
"m_bHasRandomSignFlip": false,
"m_nRandomSeed": <HIDDEN FOR DIFF>,
"m_nRandomMode": "PF_RANDOM_MODE_CONSTANT",
"m_strSnapshotSubset": "",
"m_flLOD0": 0.000000,
"m_flLOD1": 0.000000,
"m_flLOD2": 0.000000,
"m_flLOD3": 0.000000,
"m_nNoiseInputVectorAttribute": 0,
"m_flNoiseOutputMin": 0.000000,
"m_flNoiseOutputMax": 1.000000,
"m_flNoiseScale": 0.100000,
"m_vecNoiseOffsetRate":
[
0.000000,
0.000000,
0.000000
],
"m_flNoiseOffset": 0.000000,
"m_nNoiseOctaves": 1,
"m_nNoiseTurbulence": "PF_NOISE_TURB_NONE",
"m_nNoiseType": "PF_NOISE_TYPE_PERLIN",
"m_nNoiseModifier": "PF_NOISE_MODIFIER_NONE",
"m_flNoiseTurbulenceScale": 1.000000,
"m_flNoiseTurbulenceMix": 0.500000,
"m_flNoiseImgPreviewScale": 1.000000,
"m_bNoiseImgPreviewLive": true,
"m_flNoCameraFallback": 0.000000,
"m_bUseBoundsCenter": false,
"m_nInputMode": "PF_INPUT_MODE_CLAMPED",
"m_flMultFactor": 1.000000,
"m_flInput0": 0.000000,
"m_flInput1": 1.000000,
"m_flOutput0": 0.000000,
"m_flOutput1": 1.000000,
"m_flNotchedRangeMin": 0.000000,
"m_flNotchedRangeMax": 1.000000,
"m_flNotchedOutputOutside": 0.000000,
"m_flNotchedOutputInside": 1.000000,
"m_nRoundType": "PF_ROUND_TYPE_NEAREST",
"m_nBiasType": "PF_BIAS_TYPE_STANDARD",
"m_flBiasParameter": 0.000000,
"m_Curve":
{
"m_spline":
[
],
"m_tangents":
[
],
"m_vDomainMins":
[
0.000000,
0.000000
],
"m_vDomainMaxs":
[
0.000000,
0.000000
]
}
},
"m_flVehicleWakeRadius":
{
"m_nType": "PF_TYPE_LITERAL",
"m_nMapType": "PF_MAP_TYPE_DIRECT",
"m_flLiteralValue": -1.000000,
"m_NamedValue": "",
"m_nControlPoint": 0,
"m_nScalarAttribute": 3,
"m_nVectorAttribute": 6,
"m_nVectorComponent": 0,
"m_bReverseOrder": false,
"m_flRandomMin": 0.000000,
"m_flRandomMax": 1.000000,
"m_bHasRandomSignFlip": false,
"m_nRandomSeed": <HIDDEN FOR DIFF>,
"m_nRandomMode": "PF_RANDOM_MODE_CONSTANT",
"m_strSnapshotSubset": "",
"m_flLOD0": 0.000000,
"m_flLOD1": 0.000000,
"m_flLOD2": 0.000000,
"m_flLOD3": 0.000000,
"m_nNoiseInputVectorAttribute": 0,
"m_flNoiseOutputMin": 0.000000,
"m_flNoiseOutputMax": 1.000000,
"m_flNoiseScale": 0.100000,
"m_vecNoiseOffsetRate":
[
0.000000,
0.000000,
0.000000
],
"m_flNoiseOffset": 0.000000,
"m_nNoiseOctaves": 1,
"m_nNoiseTurbulence": "PF_NOISE_TURB_NONE",
"m_nNoiseType": "PF_NOISE_TYPE_PERLIN",
"m_nNoiseModifier": "PF_NOISE_MODIFIER_NONE",
"m_flNoiseTurbulenceScale": 1.000000,
"m_flNoiseTurbulenceMix": 0.500000,
"m_flNoiseImgPreviewScale": 1.000000,
"m_bNoiseImgPreviewLive": true,
"m_flNoCameraFallback": 0.000000,
"m_bUseBoundsCenter": false,
"m_nInputMode": "PF_INPUT_MODE_CLAMPED",
"m_flMultFactor": 1.000000,
"m_flInput0": 0.000000,
"m_flInput1": 1.000000,
"m_flOutput0": 0.000000,
"m_flOutput1": 1.000000,
"m_flNotchedRangeMin": 0.000000,
"m_flNotchedRangeMax": 1.000000,
"m_flNotchedOutputOutside": 0.000000,
"m_flNotchedOutputInside": 1.000000,
"m_nRoundType": "PF_ROUND_TYPE_NEAREST",
"m_nBiasType": "PF_BIAS_TYPE_STANDARD",
"m_flBiasParameter": 0.000000,
"m_Curve":
{
"m_spline":
[
],
"m_tangents":
[
],
"m_vDomainMins":
[
0.000000,
0.000000
],
"m_vDomainMaxs":
[
0.000000,
0.000000
]
}
},
"m_bUseHighQualitySimulation": false,
"m_nMaxParticleCount": 25000,
"m_bRespectExclusionVolumes": false,
"m_bKillParticles": true,
"m_bDeleteSim": false,
"m_nControlPoint": 0,
"m_nForcedSimId": -1,
"m_nColorBlendType": "PARTICLE_COLOR_BLEND_MULTIPLY",
"m_nForcedStatusEffects": "",
"m_nNoCollisionAttribute": 18,
"m_nZeroGravityAttribute": 26
}