Programatically spawn radial force impulse to the world

I’m trying to create a random explosion in a specific map are programmatically from the blueprint. I did a simple actor which is placed in the middle of the area and which spawning sound, particle effect and decal. But I would like also to affect physical objects nearby. Si I want to spawn there a radial force. When I simply put radial force to the map it automatically affects everything in defined distance. Easy thing. But how to do the same programmatically? Add Radial Impulse node needs to define one object which is receiver of that force. Why it can’t be everything nearby, like Radial Impulse force placed to the map? Or there is some magic target that will tell engine to affect everything nearby?

Radial Force Actor is a premade actor with the logic to apply force to valid actors in a radius. You can add the component it uses to your custom BP to do the same:
image

Details

Result:
Strikes

Hope it helps.

4 Likes

But this means that I will need to ensure that there will be just one event at the same time and always move this one instance to the proper location, instead of dynamically spawning force impulse just for a one-time action. But thanks I will go this way.

I just tried and it works great in this way.
The only thing that is not affected by this force for some reason are fragments of fractured mesh (GeometryCollectionActor). They are affected by any other physical object that hit them, but not by radial force.

Here’s another, less traditional method:

3 Likes