I think you need to model each bogey (i never knew they were called that!) as separate objects constrained to follow the path orientation. Then the right combination of parenting should do it, where either the front bogey is the master (Parent the boxcar to the front bogey. Parent the back bogey to the box car.) or the box is the master (the box follows the path, and the bogeys are the child of the box), or some combo. But you want the back bogey constrained to follow the path, and not just be a child or copy rotation of the front, otherwise it will jump the tracks.
I’ve been trying to accomplish this task as well. I know it’s been a while since the thread got started, but hopefully you can still remember your thinking when you made the suggestion.
I know that both ‘bogies’ need to have path constraints so they don’t jump the track. However, how is that possible while also allowing them to be parented to the box? At that point Blender would be getting conflicting information regarding the position/rotation for them; one from the path and one from the box.
I’m sure there’s a way to accomplish this, but so far everything I’ve tried falls apart.
Not sure what you will use it for, but I animated a robot on a track the other day, and used an action constraint. Paths didn’t work like I wanted them to. I would reccomend animating the bogeys and making a bone that moves forward be the action constraint target.