After beating my head against working on a Tabletop Simulator model problem I finally got back to working on this a few hours and beating my head against it for a change, fun XD.
Worst case use a dummy entity inbetween the steps. For example, an info_target.
SetParent and SetParentAttachment the info_target to your model.
SetParent the player to the info_target and then ClearParent again.
Unfortunately this causes the same problem I get when I SetParent a player directly to a moving model. When the parent model moves it jerks the child, you, around un-smoothly and inconsistently. If I had to guess it's probably because in this mode the child's position (at least if they are a player) is updated after the parent moves while as an attachment both are updated in tandem.
At this point I've tried three things which all freed the player from being an attachment but only one is really an option, and not one I like.
1. toggle noclip. Requires using a point_servercommand, blah.
2. respawn the player. Can't find a way to respawn a single player, blarg.
3. kill the player to respawn them. I'd much rather players just be able to exit the vehicle.
Again this
https://gamebanana.com/threads/194852 is the only thread I've found referencing the problem and it's solution does not appear to work so maybe I'm doing something wrong? Movetype appears to be code and not a setting you can change?
Also tried a trigger_add_tf_player_condition to see if a movement condition could reset it but that did nothing.
Attached below is a super simplified, no moving model, vmf I made for testing if anyone thinks they can get it working. Currently the second setparentattachment shows an error because I left it blank. It's blank because because no parameter I've put in worked to clear it. The following clearparent obviously doesn't clear it either.
Thanks if you have any ideas. If you don't get a quick response I have to go to sleep soon and who knows when I can get back to this.