Realistic Train Physic bug

Need to get rid of these bouncing carts, because even at a speed of 1 km/h, it is already buggy)


Have you tried just adding more weight

1 Like

Yes, I tried to make the weight more.
Below I will attach the source code, you can go in and see how everything works, suddenly you will be able to find the problem?
DrivyX. New era of metro.rbxl (388.9 KB)

To make the cart move, you need to go to the Base part, set the speed value.

1 Like

Mesh hitboxes can be weird sometimes. One solution is to turn off cancollide for the meshes and add invisible (roblox) spheres (or cylinders) that will be wheels that have can collide on.


You can use a BodyGyro to hold the model down on the tracks, it effectively gives it a lower center of gravity…

local gyro ="BodyGyro")
gyro.CFrame = model.PrimaryPart.CFrame
gyro.Parent = mode.PrimaryPart

Also, I’m curious how far you’ll get with this since game engines aren’t really designed for precise mechanical simulations like this (wheels going down a rail). As you get further along, I would be interested to see how this comes out, I have to make a train myself at some point.

Meshparts have awkward collision. You should use Roblox’s Cylinders instead. Here’s a place file where I spent some time and changed all your wheels into cylinders:

CylinderFix.rbxl (301.7 KB)

Also, I personally think you should move all of those WeldConstraints into the Base part since going through all of them is one giant clutter which made it hard to find your engines (which should also be in your Base part).


What about making sure the elasticityWeight of the track is 0 and the elasticity o the train wheels are 0 too.

1 Like

WeldConstraints are horrible. You should use Welds like I did here. Also, I fixed up your CustomPhysicalProperties (you removed the original post, RIP).

lol.rbxl (461.1 KB)

I did change a few things, though, so you may want to look through it or change some things.

1 Like