I did the tutorial for checkpoints and re-spawns and it was way more complicated than I needed, so I wanted to post an easier way to set it up in blueprint.
Im using the marble game as an example.
Create a new blueprint of actor actor and name it as your checkpoint. Assign a mesh to it by dragging one into the add component on the left, make sure you give it a collision mesh.
Then under Components (Upper right corner of the blueprint) click on the [ROOT] under class, and in the collision presets drop down select overlapAll, this means it acts as a trigger box so when you run into it you don’t just bounce off.
Click on Defaults (Upper Right again) and at the bottom there is section called Tags, click on the + to add a new one and call it Checkpoint
Click on the Graph now (Upper right corner of the blueprint), then the event graph tab and set it up like this.
This means when the actor with the tag Player overlaps it, then it destroys itself. We will set up the Player next.
Now in your player character Blueprint and open up the Defaults and set its Tag to Player.
Now open up the Graph and set up two variables.
The first is PLayerPawn and its variable type is pawn.
Second is CheckpointTransform and is a transform variable type
Now fill out the first section with nodes.
Spawn checkpoint checks if it overlaps the object with the tag “Checkpoint” and saves the location as a transform variable checkpointTransform
Now set up the next section to re-spawn the player
When the player is Destroyed it spawns the player pawn and then gives control back to the player. Without the Possess part the AI would have control and not the player
So now if you run into a checkpoint it should respawn you at the location when you die. But, if you die before you hit a checkpoint you will respawn at 0,0,0 so lets fix that by setting you spawn to your start location.
Go the graph again of your player blueprint and click on the construction script tab and fill it out like so
All this does is set the checkpoint to the initial spawn location.
I found this to be way simpler for what I needed and works well. I hope it helps