Trying to set up a checkpoint system (Time Attack Tutorial)

I’m having some trouble figuring out why my checkpoint system isn’t working properly. I’m following along with the Time Attack tutorial, and I’ve gone through and double checked all my work, yet my checkpoints don’t seem to be working. After I’ve pass through the first checkpoint, and it disappears, the second one won’t spawn in. Is there something I’m missing?

I’m now at part 7 (Lap Display & Respawn Handling) to give you an idea of what I’ve set up so far. I’m still pretty new to UE4. I worked with UE3 back in college, but that was a few years ago, so I’ve forgotten most of it!

I could be mistaken but i think the way the video does it you don’t actually spawn in a second but rather just move the current to the next spot. Also just continue forward, some tutorials I remember there are issues that don’t get discovered till a few videos later then they go back and fix them. If by the end of all the videos it still doesn’t work then I would worry about it.

Thanks for the tips. That was my plan, to continue with the tutorial, and if it’s still not working by the time they get to adding the particle system that will guide the player to the next checkpoint, then I’ll start to dig further. It’s not really set up to spawn in a new checkpoint, but it’s supposed to make the next checkpoint visible after passing through the current one. The first checkpoint is visible, but when I pass through it the next checkpoint isn’t. It’s also supposed to display a lap counter on screen after completing a lap, which isn’t happening either.

So I think I’ve figured out where the problem is located, but I have no clue how to fix it. I must have watched the video on setting up the Tracker blueprint a hundred times now. It’s seems to have something to do with an “Error Accessed None ‘CallFunc_Array_Get_Item2’ from node Set Respawn Location in graph ‘LapCheck’ in Blueprint Tracker” error I get when passing through the first checkpoint. I turned on “Blueprint Break on Exceptions”. and it points to the Set Respawn Location part of the blueprint.

Offhand I haven’t done that one I did the older version with the normal car so I don’t know all the issues with it but accessed none means what your calling doesn’t have a reference set so item 2 in your array doesn’t exist.

If you want to try something I consider as last resort go to the learn tab on the launcher then go to the example game projects then take a look at the vehicle game. It SHOULD have a checkpoint system working so you got a working example to compare with the tutorial one.

Thanks for the tip, I’ll give that a shot tonight. I’ve tried searching for posts of others having similar issues. It’s affecting the respawning of the car after going through a checkpoint. I was about to start the whole thing over, but I’ll give this a shot first.

So I think that was a dead end. Thanks for the advice, but from what I can tell, it looks like the checkpoint system is handled using C++ instead of blueprints (unless I’m just not seeing it). I’ve looked everywhere in the content browser and can’t seem to find a blueprint that runs the checkpoints.

In that demo the tracking is done in C++ in VechicleTrackPoint.h I don’t know if have looked at the older version of the time attack but it might help. A new, community-hosted Unreal Engine Wiki - Announcements - Epic Developer Community Forums

I think I found out what my issue was. I decided to go through the videos one more time, making sure I check that my blueprints were matching. Turns out I did indeed miss a connection! Now my checkpoints seem to be working perfectly.

Spoke too soon. I’m no longer getting an exception, but it still won’t update to the second checkpoint after I pass through the first.

Do print strings along the logic, once the print strings stop showing up check connections there.

Thanks for the top! I think I have finally figured this out. I had accidentally used a “>=” for number of checkpoints instead of “==”. Everything is working properly now including the respawning at previous checkpoint.