We use cookies on this site to enhance your user experience

The BodyPosition obejct 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.

Troubleshooting

  • If an assembly with a BodyPosition isn’t moving, it is 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 an assembly with a BodyPosition is moving horizontally but not vertically, it is 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 an assembly with a BodyPosition is overshooting the goal position and rubber banding back, it is likely that the BodyPosition/D|D (dampening) is too low. Alternatively, the BodyPosition/MaxForce|MaxForce and/or BodyPosition/P|P may be too high.

Properties

Name Type Description

D

float

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

Vector3

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

P

float

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

Vector3

Determines the goal position towards which force will be applied

Inherited from Instance , BodyMover

Archivable ClassName DataCost Name Parent RobloxLocked

Events

Name Type Description

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.

Inherited from Instance , BodyMover

AncestryChanged Changed ChildAdded ChildRemoved DescendantAdded DescendantRemoving