UObjects don’t have a physical presence in level, so spawning an emitter at its location won’t do anything. You can use Spawn Emitter At Location node in a UObject based Blueprint, but you’ll need to feed it a valid location (rather than Self).
Ah, I apologize, I misunderstood you. I checked, and in 4.6.1 this node was available in Object Blueprints, but in 4.7 Preview 5 and up it is not. I have entered a bug report (UE-9117), as I’m not certain whether this is intentional or not. I will let you know when I get an update. Thanks for report!
developers got back to me. It looks like this node isn’t available because Objects don’t have a world associated with them at all, so it’s impossible to spawn at a location. If you need to use this node, you’ll need to put it in an Actor child. Sorry for confusion, hope that helps!
Although it’s kind of weird. since UObject can implement GetWorld() (it’s virtual at very top level in UObject).
And even, if for some reason my UObject derived class would not implement GetWorld(), I could always provide world from other object which owns UObject (in my case UObject is Ability, and it have reference to Pawn).
In anycase thanks again. At worst case scenario I can just make similiar node which would work with UObject.