i am trying to make a simple scene of a train moving along a curve. I'm using this particular youtube video as a guide https://www.youtube.com/watch?v=-4a6XPYfWIM&t=190s
however, i cant seem to make it work.
Here's how my initial setup looks like. Bone laid out according to the number of cars, and the mesh is parented to each bone. The Empty on the front is the object to which the first car will track to along the curve.

I then duplicate and offset the empty as many as there is traincars. However as soon as i try to add "track to" constraints for each bone, the whole setup goes erratic
i tried many things from changing the up and forward axis, moving the object both in pose and object mode, untul i think i get it right, but all hell break loose when i start the animation
been tweaking this issue for the last 4 days and still no solution. I really have no clue on what is wrong. been trying to set up all the mesh, bone, curve and whatnot in a single origin point, applying transofrmation, etc. doent seem to work.
as a note, the empty is actually following the curve just fine.

https://drive.google.com/file/d/13sqoJ16Pck44iFICamC-nsQD8N48iYWN/view?usp=sharing
Here's my blend files attached. All the mesh and curves i try to animate are under "Trains 2" Collection

