Train movement

I am creating a train, with colliders, and i have my FPS Controller in it. If i use a rigidbody to move the train, even after increasing the mass, it doesnt seem right. I use an animation, but it doesn’t affect player and he clips out of the train. Can anyone help?

Since you mentioned the func_tracktrain from Half-life, you have to add a kinematic rigidbody to the train in order to detect collisions. In fact all objects that move and rigidbodies are supposed to collide with has to have a rigidbody. For objects that are moved through scripting which should not be affected by physics (but can affect other non kinematic rigidbodies) need a kinematic rigidbody.

The func_tracktrain from HL just followed the waypoint list linearly. The exact behaviour could be customized with many settings.