For any Unreal Engine project that uses playable characters, you can use the Player Start Actor to control where, in the game world, each player character will spawn at runtime.
The Player Start Actor is visually represented as a game controller icon with a flag and an arrow that indicates which direction the player will be facing when they spawn.
When you select a Player Start Actor, you will see two additional components: a Capsule that is a visual representation of the physical space the Actor occupies in the game world, and a Transform widget.
A Player Start Actor in the Level. Left: Unselected; Right: Selected. Click the image for full size.
If your Level doesn't have a Player Start Actor, the player will always start at the 0,0,0 coordinates in the world.
Placing a Player Start Actor
Player Start Actors are placed into the Level via drag-and-drop, same as other Actors.
You can have multiple Player Start Actors into the Level and control which Player Start is used as the player spawn location using Blueprint or C++.
To place a Player Start Actor, follow these steps:
Click the Quick Add button on the Main Toolbar.
Select Basic > Player Start.
Click and drag the Player Start Actor into the Level Viewport.
When using a Player Start Actor to spawn a player, the position and rotation of the player character will match the Player Start's position and rotation. If you want to have a player look at something specific when they spawn, make sure that the arrow component of the Player Start you use to spawn them is pointing in the direction that you want the player to look.
If you have more than one Player Start Actor in your Level, the player will start from a random Player Start each time, prioritizing Player Start Actors that are unobstructed.
Player Start BADsize Warning
While placing or moving a Player Start Actor, you may see a white label with red borders and the text BADsize.
This warning appears when the Player Start Actor overlaps or intersects with something else in the Level, such as props or terrain. To resolve this, move the Player Start until its Capsule component no longer overlaps or intersects with anything else.
Using Player Start Actors in Blueprints
Unreal Engine has several Blueprint nodes that you can use to work with Player Start Actors. These are useful for a number of different scenarios, including respawning players at a Player Start Actor's location or spawning a player at a different Player Start based on different conditions.
The following nodes for working Player Start Actors are available in the Game Mode Blueprint:
FindPlayerStart: Finds a Player Start Actor in the Level based that has a specific tag (defined in the IncomingName property). You can set a Player Start Actor's tag from the Actor's Details panel.
Restart Player at Player Start: Respawns a player using a specified Player Start Actor.
The screenshot below shows an example of how to use these nodes to restart a player at the location of a Player Start with the tag TheStartIWant
when pressing the E key. If you want to try this yourself, recreate these nodes in your project's Game Mode Blueprint.
Ignoring Player Start in PIE
When you preview your game in the Unreal Editor using Play-in-Editor (PIE), if you click the Play button in the Main Toolbar, your character will spawn at the Player Start Actor's location.
However, you can also start playing from anywhere within your Level by right-clicking in the Level Viewport and selecting Play From Here from the context menu.