why does the delay node prevent looping

I was making a very simple and basic event to spawn enemies in a specific area
I wanted to spawn Niagara affect before spawning the Enemy at the same position for aesthetic reasons.
at some point I added “delay node” between “spoon system at location” and “spawning the actor” node, after that the blueprint did not work as intended.
I tried debugging for 4 hours without knowing what was the problem when I removed the "delay node " everything worked normally.
when I add the delay only one enemy is a spawned
but when I remove it five enemies are spawned without changing the loop
in both cases whether I add the delay or not, the niagara effect spawn normally which further prove that the “delay node” is ruining what comes after it inside the loop
why ? it is unreal 5.4

Unrelated. Delays do not work inside Loops. If you want to spawn something every x seconds, consider using a Timer instead.

1 Like

is there any way to make the Niagara effect on before the enemy ?

Try something along the lines of:


However, if you want to spawn all of them at once:

  • run a loop to spawn 5 niagara effects
  • CompletedDelay
  • run a loop to spawn 5 actors

Or

  • create the Niagara effect inside the enemy actor on Being Play but keep the enemy bits hidden
  • Begin Play → Delay → show the enemy bits
1 Like