Hi everyone,
I’m creating a custom car system in Roblox using VehicleSeat and Constraints, specifically SpringConstraint for suspension and CylindricalConstraint for wheels.
Here are the problems I’m facing:
-
When I press W to drive straight, the car turns slightly on its own, drifting even with no steering.
-
At very high speeds, around 200 studs per second, the car starts to wobble side to side and becomes unstable.
-
Over time, after lots of turning, the car acts slippery and loses stable steering.
Here’s what I’ve tried so far:
- I lowered the center of gravity by adding a ballast part under the car.
- I switched from normal wheels to sphere wheels. The visual wheel is just for show, while the sphere serves as the actual physics wheel.
- I adjusted the stiffness and damping of the SpringConstraint, testing both high and low values.
- I reset the steering angle to 0 when there’s no input.
- I limited the steering angle to about 15 degrees.
- I also tried using a NoCollisionConstraint between the wheels and the body.
Despite these efforts, the same problems continue:
- The car won’t drive straight without veering off.
- At high speeds, around 200 studs per second, the car wobbles heavily and is nearly undriveable.
My questions:
- Is this a CylindricalConstraint axis alignment issue?
- Do I need anti-roll stabilization (BodyGyro / AlignOrientation)?
- How do I stop the high-speed wobble while keeping realistic suspension?
- Any way to reduce the slippery steering effect after multiple turns?
Here are two different scripts: (Sphere version and Normal version)
Any advice or working examples would be very helpful.
Here file:
Car test by Biem.rbxl (858.8 KB)