Spawn Blueprint at TargetPoint

This may not be the ideal solution. The problem here is that End Overlap will fire whenever something has come-in and then gone. So if some other actor (Players, Bullets…)pass through the Target area, that event will fire.

You can make use of collision channels to avoid this issue. But I do not think thats the ideal solution here.

This is how I would try to do it:
I will create two Actors:

  1. CrateSpawner (Extended from actor with a sphere collision volume) ->this will replace target points
  2. SuperSpeedPickup (the same thing you have now)

CrateSpawner will be responsible for spawning the SuperSpeedPickup. He will have a variable called respawnDelay which will determine how much time to wait till a new Pickup is spawned. Another variable called ElapsedDelay will act as a counter which is set to 0 initially. A third variable of type Object’SuperSpeedPickup’ named ‘Pickup’ will hold a reference to the currently spawned Pickup.

In my tick event, I will check if the reference to ‘Pickup’ is valid. If it is dont do anything. Otherwsie I will see if the value of ElapsedDelay is greater than RespawnDelay. If it is, I will spawn the Pickup Actor and store a refenece in Pickup variable. I will also reset the ElapsedDelay to 0. If on the other hand the value of ElapsedDelay has not exceeded, then add the deltaSeconds to ElapsedDelay.

I will override the BeginOverlap event of CrateSpawner. I will check to see if the overlapped actor is a player, if yes, then check and make sure that the reference stored in Pickup is valid. If both pass, destroy the Pickup and apply the effect on the Player (this is entirely your logic).

And thats it.

I’m trying to make a Pickup crate spawn at each target point, however only when there is currently nothing at the target point (IE when a crate is picked up, it will spawn a new one 20 seconds later etc)

I’ve followed the tutorial “Blueprint Basics” for spawning stuff at target points and getting it to work by pressing G works fine. But if I cant seem to get it to work automatically. I suspect I did it wrong, but I used “OnActorEndOverlap (TargetPoint)”, when there is no longer anything overlapping the targetpoint… (is how I interpretted that)

But that isn’t working. I’m not sure which event/trigger to use to get this to work. So far I have;

PS This is in the Level Blueprint. Any help is appreciated.

Thanks for the help, I’m not entirely sure how to program that in the graph view, so if you could help out with that too I’d massively appreciate it (if I was able to edit in visual studio or something I could, but I’m not entirely certain how to do that sort of thing in the graph :confused: )

Sure, but I will be busy for 2 days. So can you wait?