I was attempting to make a water drip/spash effect with an optional ripple effect. I got the drip effect built, and gave it an Event Generator for collision. I then added a splash effect emitter that used EventReceiver Spawn to fire off when the drop hit the floor. This all worked great. Then I added a third emitter that did a ripple effect, for use when the drip is landing in a puddle. My blueprint had a flag for if to use the ripple or not, and used that to drive Set Emitter Enable at Begin Play time. Unfortunately, this doesn’t work. It will always generate the spawns when it gets a collision event even if the emitter is enabled. Tracking this through the source code, the problem is that in:
it ignores if bHaltSpawning is true and just calls
Owner->ForceSpawn(DeltaTime, 0, Count, SpawnLocation, Velocity);
I think this means there’s no way to disable an emitter keep it from responding to events. I found this in our 4.11 project, but it looks like 4.13 has the same issue.