So this is more of a method question.
Scenario:
2 players are playing on a server, they press a button to change colour, they each see it.
A new player joins but they see everyone as a default colour.
Is there a particular method to syncing already existing changes on the server to a new client?
Furthermore is there a valid way of testing locally, someone connecting to a game after sometime? Right now if you select 2 clients it will connect both at the same time, would launching multiple standalone games be the only way?
I am currently using post login for spawning but that isn’t a solution to my scenario.
Imagine a game where you have loudouts on every player, static mesh changes, colour changes etc
I am asking if I need to sync and fun those functions manually on a new client connecting or if there is a way for the new client to see the history of changes the server has made and apply them?
I realise things like health is stored on the server, is the workflow to store as much of that server side? I have got my head around a lot of replication and I am making quite good progress but this syncing thing, updating new clients, has got me stumped a bit.
Standalone game from the editor appears to only be able to open 1 at a time.
So there isn’t a real solution other than building the game?
The GameMode has a method, PostLogin, which will help you set up the player controller that was assigned to the new player. Remember that the server maintains true authority over the player controller so you can reference the active game state and update the player accordingly.
In order to spawn new game clients, at a later time, you’ll need to launch the standalone game. You could test this with 2 sessions. Fire up your server, change the color of the object. Fire up a client and the default object state should be different (matching the server).
I think this tutorial is what you`re looking for
Dunno how I missed that, I think I assumed it was optimisation based on distance rather than connecting/syncing information I suppose this is the same thing.
If you post that as an answer rather than a comment I will mark it up, cheers man 
Regarding the editors. The best option would to build in a menu to the game that lets people host a game & join the game (search for sessions, join sessions). That way you can start the server & client. Start the game with the server & do some things. Have the client find/join later. This will actually get directly to your points (a new player joining a session needs to update all of the state).
I can expand on the other points if the video above doesn’t clear things up.
Also, to help visualize things a little better
- Server Only: GameMode
- Server & Clients: GameState, PlayerState, Pawn
- Server & Owning Client: PlayerController
- Owning Client Only: HUD, Widgets
Highly recommend the Networking Compendium eXi put together http://cedric.bnslv.de/Downloads/UE4_Network_Compendium_by_Cedric_eXi_Neukirchen.pdf