I figured this out yesterday, it all came down to a lack of understanding on my part. I fixed it by letting the GameMode handle finding all the players in the game and gathering their respective teams, and feeding that to the GameState to spawn in the correct locations. This replicated it to all of the clients, and then RepNotify functionality makes sure all of the client-side pawns have the same properties. Thanks for you help though, it was much appreciated!