We use cookies on this site to enhance your user experience
Collapse Sidebar


Show deprecated


Show deprecated

The BodyPosition object applies a force on a BasePart such that it will maintain a constant position in the world. The BodyPosition/Position|Position property, not to be confused with BasePart/Position, controls the target world position. This is the translational counterpart to a BodyGyro. If you need further control on a force applied to an object, consider using a BodyForce or BodyThrust instead.

The strength of the force applied by this object is controlled by several factors, namely the distance to the goal position: the force is stronger when farther away from the goal. This is amplified by BodyPosition/P|P (power). The present velocity will also dampen the force applied by this object, and this is amplified by BodyPosition/D|D (dampening). The resulting force is then capped by BodyPosition/MaxForce|MaxForce. Note the force applied on the part to achieve the goal position may vary on a per-axis basis.


  • If the assembly isn’t moving, it’s likely the BodyPosition/MaxForce|MaxForce is too low. Also check for any BasePart/Anchored|Anchored parts within the assembly or in the way of the assembly.
  • If the assembly is moving horizontally but not vertically, it’s likely the BodyPosition/MaxForce|MaxForce is strong enough to overcome friction but not gravity. Consider raising the Y component of BodyPosition/MaxForce|MaxForce in order to get the object off the ground.
  • If the assembly is overshooting the goal position and springing back, it’s likely the BodyPosition/D|D (dampening) is too low. Alternatively, the BodyPosition/MaxForce|MaxForce and/or BodyPosition/P|P may be too high.
  • Any assembly containing a part that contains a BodyPosition or a BodyGyro will not be simulated when interacting with a player unless that player is the /articles/Network Ownership|network owner of the assembly.




Determines the amount of dampening to use in reaching the goal BodyPostion/Position|Position



Determines the limit on how much force that may be applied to each axis



Determines how aggressive of a force is applied in reaching the goal position



Determines the goal position towards which force will be applied



GetLastForce ( )

Returns the last force in the object.



ReachedTarget ( )

Fired when the Parent of the BodyPosition reaches the desired BodyPosition/Position (within .1 studs). Once this event fires it will not fire again until BodyPosition/Position is updated.