Quick answer: Use Set Spawning to False instead of just Rate=0. Or Destroy the Particles instance after burst. Audit events for re-enables.

An explosion VFX uses Particles. Setting Rate to 0 after burst should stop emission, but particles keep appearing. Some hidden event reactivates it.

Set Spawning False

Particles → Set Spawning false

Definitively stops emission. Existing particles continue to live out their lifetimes, then disappear. Cleaner than Rate=0.

One-Shot Mode

For explosions/bursts, set Particles object to One-Shot mode. Spawn count fires once on creation/spawn, then stops automatically. No need to manually stop.

Destroy for Cleanup

Particles → Set Spawning false
Wait 2.0 seconds   // let existing particles fade
Particles → Destroy

Graceful: stop new, let old finish, then remove. Saves memory long-term.

Find Re-Enable Events

Search project (Ctrl+F) for “Set Spawning true” or “Set Rate”. Audit each — if any fire continuously (Every Tick) under a condition that’s often true, you have your culprit.

Per-Frame Continuous Re-Set

Avoid event-sheet patterns like:

Every Tick:
    Particles → Set Rate 10

This re-arms each frame. Move into one-time event (On created, On condition becomes true).

Verifying

Trigger explosion. Burst happens, particles fade out, no new ones spawn. Trigger many in sequence; previous bursts complete and clean up. Memory profile flat.

“Stop emission with Set Spawning false. Clean up with Destroy after fade. One-Shot for explosions saves all of this.”

For frequent VFX (e.g. enemy death), pool Particles objects rather than create/destroy each time — smoother frame rate, less GC.