Hello. I’m trying to spawn character on level in different points. The point is an actor. I’m trying to get actor’s transform and spawn player at this coordinates, but nothing happens.
I’ve checked: cast to game instance is working, Door variable is correct and is 0. So player should spawn at BP_Entry’s coordinates, but it always spawns outside level and falling down. I don’t have another player’s start at level.
Yes, your solution is working, so the problem is in spawnActor. @ClockworkOcean said I should spawn the player, not the player start, but I tried spawn everything (player start, character class, player controller, character bp…)
Everything isn’t work, but I want to deal with spawn actor, because I think “set actor location” isn’t right decision - my character (and camera) spawns in strange place and then transfer to right point. I think character should spawn already in right point. Can you give me advice with it?
Spawning player start should work, but LevelBP seems to be too late for that.
In this case you’d have to do it in GameMode class, where InitGame happens before everything else. Or override FindPlayerStart to return the appropriate spawn location (obviously called before spawning).
Alternatively there might be some obscure engine remnant of an URL parameter called “Portal” which is used to choose a PlayerStart by tag at URL-level. This is present in 4.27 but I don’t know about UE5. Maybe someone else can confirm?
If that works, you can replace your BP_Entry actors with actual player starts, give each one of them a Tag like Entry1 and Entry2, then in the Open Level node (from previous level), add #Entry1 or #Entry2 in the Options string.
It’s almost works but it caused another problem - I have camera in my top-down character BP, and looks like my character is falling when I’m using Possess function.
And falling character on the right side of screen with possess function.
Update: well, I fixed it but in absolutely stupid way - I just deleted first actor: