You might want to look at the overridable functions inside your game mode, especially ChoosePlayerStart and GetDefaultPawnClassForController
This looks like a better place to do what you want to do.
Mapping context can be set inside each controller class.
And make sure your pawn/characrer don’t have Auto Possess enabled in their class default.