Help with suspension for train

Hello,

I’m working on a train system and I’m working on adding suspension to the train, I’ve got the rig all setup and tuned (sort of), but I’m having trouble actually making the suspension bounce, the reason is probably because the trains just driving on flat tracks and doesn’t drive over any obsticles like a car would.

I’ve tried using CylindricalSlider animating the Servo.TargetPosition up and down but that just looks fake. I’ve also tried the same thing with the Attachment1 property of the springs, same result, looks more bouncier but still fake. It just looks like it bobbles up and down.

I don’t mind the suspension been fake, as long as it looks real and can’t tell its fake.

Any help appreciated!

Bumpy bump, anyone able to help?

I don’t think trains are suppose to be bouncy like a car.

They are on rails. The only shift they really make is when they go around a curve.

The clacking sound as they pass over rail welds is the thing that is unique about train movement that comes to my mind. You can hear a clunk, clunk, clunk from the wheels. The ambient roar thins if you are close by as a gap between cars passes you.

Try adding some curves and see if your train slightly leans as it changes into the curve.

The trains in my area are bouncy, probably even more bouncy than a car

Heres a video that took me ages to find, its a bit short but you can see the bounciness between the 2 carriages, I’ll try find a better video later if you like me to.

Yeah that is bouncy. Wow.

If you are using Roblox’s built in physics, then you just need to make your rails less perfect.

Make some have a slight arch while others have a slight slump. Maybe throw in a bent rail and add a metal scraping sound when that rail is touched by a wheel.

Yes, it’s using physics.

I don’t really mind having a rail squeal sound like you suggested because the trains real life have those, but I don’t really want to add track irregularities, I prefer it to just be the same but the suspension to look like it’s doing something most of the time. I just have no idea how to force suspension, other than using a run service event and just making the attachment bounce around with some kind of script.

1 Like

This post was a few days ago. I noticed his train might have the movement you need. Maybe he has some tips:

In a loop, you could try setting the height of the train’s attachment to the result of a * |sin x| such that x is a constantly increasing number and a is equal to 1. While the train is moving, gently randomize the frequency (Δx) and amplitude (a) as time goes on. Of course, this would require a lot of fine tuning, but it is at least worth a try.

I’m not good with maths or any of this stuff, would you be able to give me like a starting point?

Would this just make it look like its going up and down? Would making the attachment kind of roll side to side or pitch up and down help make the suspension look more real?

Should this be done attachment per bogie or just the one fine? I have a feeling that my idea of making the attachment roll would make it look fine.

Bump bump, anybody else have any solutions?