Springs stronger on one side of mechanism. What did I do wrong?

I’m trying to make a physically-simulated platform that bounces when the player steps on it. To do this, I’m using SpringConstraints – there are four of them, which are symmetric across the platform.

Repro.rbxl (17.4 KB)

Even though they’re symmetric, the springs seem stronger on one side than on the other.

Standing on one side should move that side down and the other side up, but as you can see this only happens when standing on the right side. The platform doesn’t behave properly when I stand on the left side: the left side is only slightly lower than the right, and the whole platform moves down. There is a similar discrepancy between standing on the front/back.

What did I do wrong in setting up the SpringConstraints to cause this? I’ve made sure all the attachments are pointed the same way, relative to where they’re attached, and double checked that the properties on the SpringConstraints are the same. I’ve also made sure there is no overconstraining with the Physics Analyzer.

2 Likes

are the springs on the right y level? if not that could be your problem otherwise try reducing the amount of springs your using by just 1 and then a bodygyro to keep the platform straight or line constraints to provent it from moving in X and Z direction

Springs are at the correct Y level. There is a repro attached at the beginning of the post if you’d like to tinker with it. Problem with one spring is that bouncing at corners is more linear and doesn’t feel very good.

The world y coordinates of the 4 top attachments are different (max diff of 0.5 stud). Try fixing this first.

1 Like

what will it be tho?

That seems to have been the issue – thanks! The attachments were all centered at Y=0 for their local CFrames, but the attachment parents had slightly offset orientations.