More moving trains, the slower they go

I have a train game (Self-Driving). However, as I add more of the same train, the trains begin to travel slower. Here is an example. There are 3 trains. If 2 are idle but 1 is moving, it moves at 30 studs per second but when all are moving, I can get as low as 15 studs per second.

Thing is, all trains are suppose to travel at 40 studs per second. I have a GUI which tells me the AssemblyLinearVelocity of a certain part of the train which constantly updates every 1 second. When its moving, it says its at 40, however the train is travelling much slower than that.

The train works like this: All parts are welded to a singular part, which has a bodyVelocity in it.

How do I prevent the trains from moving slower as I add more of them as I am planning on adding 3 more trains

1 Like

Are they all connected? If they are, try setting the parts to massless.

If they aren’t, it probably has to do with lag.

how do i fix this lag


  1. reduce part count on trains
  2. maybe 3d model the trains instead of making them with parts

If they’re being controlled by scripts, make sure they’re all being controlled from one script, so that you don’t need a bunch of duplicate scripts in each one.

Fact of the matter is, you’re adding more resistance to the engine by lengthening the train. If you could “orient” the locomotion, you might be adding a body velocity to every car, with enough physical force to exceed the car’s own weight, 1 by 1 maybe

As a train guy, I can confirm Roblox is not the best at handling train physics. Something about having a bunch of different train cars daisy-chained off of each other really starts to make the game chug. How many cars are on your trains? If they have quite a few, I would recommend shortening their lengths if possible, as long as it fits within the boundaries of whatever realism you may be going for.