Trains... a frustrating nightmare

So. I have been working on this train stuff for a little bit now (most the day but whose counting…) and I have noticed something odd, and Im sure im just missing something simple, or maybe a different plan of attack is required.

Heres the setup. Player loads, server sends it a signal saying “You are the first person here, check for trains.” It doesn’t find any, and creates them with CreateMissionTrain. Great. We can do all kinds of great things with them. Make ‘stops’ via SetTrainCruiseSpeed, etc. Works great.

Where things get difficult is when the train is outside of the ‘realm’ or ‘scope’ of the player, or outside of the game engine streaming distance. The player (owner of the trains) cannot control anything about them because they aren’t loaded technically (I know this thanks to 3D Text Draws and vehicle enumeration… nowhere to be found.)

So my only assumption was since the ‘owner’ of this particular train is nowhere to be found, ill just publish the major updates to everyone on the server, and they can collectively make their attempts at pushing the update using NetID to Entity ID conversions. Wrong. The train doesn’t even acknowledge their attempts. So if Player 1 created the trains, and Player 2 is riding the train, the train will skip right past the train station, even though Player 1’s instructions are saying to stop, and so is the rebroadcasted server event to Player 2.

So, why would this happen? Is there a way to either allow shared usage, or migrate control first, perhaps to the closest player?

To make matters worse, when the train streams in for Player 2, it immediately drives off. So thats fun as well. (Again, even with NetID -> Entity ID conversion, or enumeration, SetTrainCruiseSpeed has zero effect)

Lets not even mention how we transfer control to another player once Player 1 disconnects… :grimacing:

Would like to hear some other input on this.

EDIT #1: Player 2 can see both by enumerating, but Player 1 cannot?