Code:
call UnitSuspendDecay(CreateCorpse(Player(0),'hfoo', 0,0,0), true)
I hack much projectile systems from resource section, most dummy units uses locust to hide from user or dont hide at all.
This method do not need locust to hide unit from user, also you can use Enum functions and unit in range event.
If you correctly set dummy options, no spells will affect missile units, or dont do it, rise dead may be used to shield from missiles.
After unit is created you may set any animation and attach grafical effect.
Such units will never get removed by engine.