[Bug?] Can't access Spawn Emitter At Location, in UObject based Blueprint

Repro:

Create new Bueprint that is based of UObject (and not AActor!).
Try to add Spawn Emitter At location function.

Doesn’t work! I even tried it pasting from actor, back to UObject. Didn’t worked either.

At same time Spawn Emitter Attached is accessible.

Hi iniside,

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).

I know, I do not intend to spawn at UObject location, but issue is I can’t add this node at all, to UObject.

I’m using latest version 4.7 from Github.

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!

Thanks for info!

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.