Skip to content

SpringConstraint

Supported Class Physics

Simulates spring and damper behavior between two attachments.

Description

A SpringConstraint applies a force to its Attachments based on spring and damper behavior. This constraint, along with a CylindricalConstraint, is ideal for building vehicle suspension.

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.

Free Length

FreeLength defines the natural resting length of the spring. If the attachments are further apart than the free length, they are forced together; if the attachments are closer together than the free length, they are forced apart.

Damping

The Damping value controls how fast the spring's oscillation dies down. A value of 0 allows the spring to oscillate endlessly, while higher values bring the spring to a rest more quickly.

Stiffness

Stiffness sets the strength of the spring. Higher values create a spring that responds with more force when its attachments are closer together or further apart than FreeLength.

Limits

Enabling the LimitsEnabled property exposes the MinLength and MaxLength values for setting the minimum and maximum length of the spring. If the spring's attachments reach these limits, they stop moving apart from one another without restitution.

Inheritance

Object → Instance → Constraint → SpringConstraint

Nova inheritance: Instance → Constraint → SpringConstraint

Properties

Coils Supported Property The number of coils visualized on the SpringConstraint.
Coils: float

The number of coils visualized on the SpringConstraint. This can only be set between 0 and 8.

Roblox documentation

CurrentLength Supported Property The current distance between the constraint's Attachments.
CurrentLength: float

The current distance between the constraint's Attachments.

Roblox documentation

Damping Supported Property Damping constant for the SpringConstraint. Multiplied to the velocity of the constraint's Attachments to reduce the spring force applied.
Damping: float

Damping constant for the SpringConstraint. Multiplied to the velocity of the constraint's Attachments to reduce the spring force applied.

Roblox documentation

FreeLength Supported Property Natural resting length of the spring.
FreeLength: float

Natural resting length of the spring.

Roblox documentation

LimitsEnabled Supported Property Sets whether the SpringConstraint enforces a minimum and maximum length.
LimitsEnabled: bool

Sets whether the SpringConstraint enforces a minimum and maximum length. If the constraint's Attachments reach these limits, they will simply stop moving apart from one another without restitution. If you need restitution or elasticity at the ends of the range of motion, you can combine a SpringConstraint with another constraint that allows restitution at the end of its range, such as a PrismaticConstraint or RopeConstraint.

Roblox documentation

MaxForce Supported Property The maximum force the SpringConstraint can apply on its Attachments.
MaxForce: float

The maximum force the SpringConstraint can apply on its Attachments. Some spring systems can give rise to forces that grow fast leading to instability. In such cases it is recommended to set MaxForce to a reasonable value.

Roblox documentation

MaxLength Supported Property The maximum separation the SpringConstraint will allow if LimitsEnabled is true.
MaxLength: float

The maximum separation the SpringConstraint will allow if LimitsEnabled is true.

The maximum separation the SpringConstraint will allow if LimitsEnabled is true.

Roblox documentation

MinLength Supported Property The minimum separation the SpringConstraint will allow if LimitsEnabled is true.
MinLength: float

The minimum separation the SpringConstraint will allow if LimitsEnabled is true.

The minimum separation the SpringConstraint will allow if LimitsEnabled is true.

Roblox documentation

Radius Supported Property The visualized radius of the spring's coils.
Radius: float

The visualized radius of the spring's coils.

Roblox documentation

Stiffness Supported Property The strength of the spring. The higher this value the more force will be applied when the attachments are separated a different length than the FreeL…
Stiffness: float

The strength of the spring. The higher this value the more force will be applied when the attachments are separated a different length than the FreeLength.

Roblox documentation

Thickness Supported Property The visualized thickness of the spring's coils.
Thickness: float

The visualized thickness of the spring's coils.

Roblox documentation

Inherited members

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

Roblox reference: SpringConstraint

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