I think I’ve solved it, though I am not sure it’s the best way to go about it. My flow:
Player controller begin player → if local controller → cast to game instance, get save/var, set PC var with server RPC. Game mode spawn function → wait until PC var != none → spawn.
I guess it was a race condition like I initially thought last night. Does anyone know if there is any better way to handle this, or is the delay on spawn ‘sufficient’?
The spaghetti: