This article's documentation is for anything that uses the Source engine. Click here for more information.

Prop physics multiplayer: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
No edit summary
 
(31 intermediate revisions by 17 users not shown)
Line 1: Line 1:
{{wrongtitle|title=prop_physics_multiplayer}}
{{CD|CPhysicsPropMultiplayer|file1=props.cpp}}
{{this is a|model entity|name=prop_physics_multiplayer}} It is identical to [[prop_physics]] except that it bounces away from collision (if [[sv_turbophysics]] is enabled), which helps to avoid the prediction errors that normal physics objects typically generate, and that physics mode can be changed.


{{stub}}
{{AltNames|name1=prop_physics|game={{l4ds|4}}|misc=CPhysicsPropMultiplayer doesn't seem to be present {{l4ds}} and physicsmode keyvalue works when used on prop_physics}}


==Entity Description==
== Keyvalues ==
This class is the same as [[prop_physics]], except the runtime collisions use a more bouncy method that avoids the prediction errors normal physics objects get.
{{KV|Physics Mode|intn=physicsmode|choices|Sets the physics mode used by the prop.
:* 0: "Auto Detect"
:* 1: "Solid, Server-side"
:* 2: "Non-Solid, Server-side"
:* 3: "Non-Solid, Client-side"
}}
:{{important|If physicsmode is 0 or 3 then this can create a clientside physical prop which cannot be controlled via I/O, vscript or picked up and doesn't count towards server entity limits other than for a moment during spawning. {{warning|In singleplayer where save/load is available it won't get saved into a save file. It instead always respawns at its original position, but only if at least one server-side entity uses the same model. This is because otherwise the model is not precached (see output of command <code>cl_precacheinfo modelprecache</code>)}}
}}


==Availability==
{{OtherKIO|prop_physics}}
{{in game|point}} {{game-base}}
{{in code|class=CPhysicsPropMultiplayer|file=dlls/props.cpp}}


==Keyvalues==
== See also ==
* {{ent|prop_data}}
* [[Prop Types Overview]]
** {{ent|prop_physics}}
** {{ent|prop_physics_respawnable}}
** {{ent|prop_physics_override}}
** {{ent|prop_sphere}}
** {{ent|prop_dynamic}}
** {{ent|prop_static}}
** {{ent|prop_ragdoll}}
* [[Alternate Multiplayer Physics]] - an article on modifying the source code to this entity.


==Flags==
[[Category:Physics]]
 
[[Category:Prop entities|physics multiplayer]]
==Inputs==
 
==Outputs==
 
==See Also==
* [[prop_physics]] - The more realistic but resource consuming prop_physics version.
* [[sv_turbophysics]]
* [[Prop Footsteps]] - A tutorial that provides essential code for when players walk on entities like this, it's not ignored during footstep sound computation.
 
[[Category:Entities]]

Latest revision as of 01:55, 1 June 2025

C++ Class hierarchy
CPhysicsPropMultiplayer
CPhysicsProp
CBreakableProp
CBaseProp
CBaseAnimating
CBaseEntity
C++ props.cpp

prop_physics_multiplayer is a model entity available in all Source Source games. It is identical to prop_physics except that it bounces away from collision (if sv_turbophysics is enabled), which helps to avoid the prediction errors that normal physics objects typically generate, and that physics mode can be changed.

AltNames.pngAltNames: In Left 4 Dead seriesLeft 4 Dead series Left 4 Dead series, this entity is also tied to prop_physics. CPhysicsPropMultiplayer doesn't seem to be present Left 4 Dead seriesLeft 4 Dead series and physicsmode keyvalue works when used on prop_physics

Keyvalues

Physics Mode (physicsmode) <choices>
Sets the physics mode used by the prop.
  • 0: "Auto Detect"
  • 1: "Solid, Server-side"
  • 2: "Non-Solid, Server-side"
  • 3: "Non-Solid, Client-side"
Icon-Important.pngImportant:If physicsmode is 0 or 3 then this can create a clientside physical prop which cannot be controlled via I/O, vscript or picked up and doesn't count towards server entity limits other than for a moment during spawning.
Warning.pngWarning:In singleplayer where save/load is available it won't get saved into a save file. It instead always respawns at its original position, but only if at least one server-side entity uses the same model. This is because otherwise the model is not precached (see output of command cl_precacheinfo modelprecache)
Note.pngNote:Other Keyvalues / Inputs / Outputs are same as prop_physics.

See also