Skip to content

BallSocketConstraint

Supported Class Physics

Forces its two attachments into the same position and allows them to freely rotate about all three axes, with optional limits to restrict both tilt and twist.

Description

A BallSocketConstraint constrains its Attachments so that they occupy the same position. By default it allows both attachments to freely rotate about all of their axes, but if LimitsEnabled is true, the attachments can only rotate in a limited cone.

Note that if this constraint attaches one part (A) to another part (B) that is anchored or connected to an anchored part (Z), part A will not be locally simulated when interacting with a player.

When configuring this constraint, it may be helpful to study Roblox Units to understand how Roblox units compare to metric units.

Limits

You can set limits to restrict both tilt and twist of a ball socket, similar to how a human's head can tilt and turn within a limited axial range. Enabling the LimitsEnabled property exposes the UpperAngle value to restrict tilt within a cone; it also exposes the TwistLimitsEnabled property which, when enabled, lets you restrict twist rotation through the TwistLowerAngle and TwistUpperAngle limits.

Inheritance

Object → Instance → Constraint → BallSocketConstraint

Nova inheritance: Instance → Constraint → BallSocketConstraint

Properties

LimitsEnabled Supported Property Sets whether the BallSocketConstraint sets a limit on rotation based on UpperAngle.
LimitsEnabled: bool

Sets whether the BallSocketConstraint sets a limit on rotation based on UpperAngle.

Sets whether the BallSocketConstraint has a limit on rotation based on UpperAngle. When true, it enforces that its Attachment1 isn't rotated more than a set angle from its Attachment0.

Roblox documentation

MaxFrictionTorque Supported Property Sets the maximum frictional torque applied to keep its Attachments aligned.
MaxFrictionTorque: float

Sets the maximum frictional torque applied to keep its Attachments aligned.

MaxFrictionTorque specifies the stiffness of the BallSocketConstraint (how much it resists rotation around its Attachments).

Roblox documentation

Radius Supported Property The visualized radius of the BallSocketConstraint.
Radius: float

The visualized radius of the BallSocketConstraint.

Roblox documentation

Restitution Supported Property How elastic Attachments connected by a BallSocketConstraint will be when they reach the end of the range specified by UpperAngle when LimitsEnabled i…
Restitution: float

How elastic Attachments connected by a BallSocketConstraint will be when they reach the end of the range specified by UpperAngle when LimitsEnabled is true. Constrained between 0 and 1.

Roblox documentation

TwistLimitsEnabled Supported Property Sets whether the BallSocketConstraint sets a limit on twist rotation based on TwistUpperAngle and TwistLowerAngle.
TwistLimitsEnabled: bool

Sets whether the BallSocketConstraint sets a limit on twist rotation based on TwistUpperAngle and TwistLowerAngle. The twist angle is defined as the angle between the Y axis of Attachment1 and the Y axis of Attachment0.

Roblox documentation

TwistLowerAngle Supported Property Sets the lower twist rotation limit of the BallSocketConstraint, as long as TwistLimitsEnabled is true.
TwistLowerAngle: float

Sets the lower twist rotation limit of the BallSocketConstraint, as long as TwistLimitsEnabled is true.

Roblox documentation

TwistUpperAngle Supported Property Sets the upper twist rotation limit of the BallSocketConstraint, as long as TwistLimitsEnabled is true.
TwistUpperAngle: float

Sets the upper twist rotation limit of the BallSocketConstraint, as long as TwistLimitsEnabled is true.

Roblox documentation

UpperAngle Supported Property Sets the upper rotation limit of the BallSocketConstraint, as long as LimitsEnabled is true.
UpperAngle: float

Sets the upper rotation limit of the BallSocketConstraint, as long as LimitsEnabled is true.

Roblox documentation

Inherited members

Inherited from Constraint: 14 properties, 36 methods, 7 events. They are documented on the base class page.

Roblox reference: BallSocketConstraint

Generated from Nova's API dump and Roblox creator-docs. Nova-only members come from the engine's reflection metadata.