I have made a game wherein the first level the player can choose and possess between different characters and i have made a collision box which will teleport them to the next level but the new level starts with the default character. I want it such that the player spawns in the new level with the character they chose in the previous level.
You should be able to store that info on your Game Instance, and then load it when you open the new level.
PlayerState is typically where this “character selection” type data goes.
PlayerState is replicated to all clients in a networked game, so each client can draw the right mesh and such for each connected player.
If your game is single-player, GameInstance is also good, but it’s not as nice and automated for multiplayer games.