Destroy Component does not work

I know this thread is quite old, but I exactly had the same issue…

It’s not possible to destroy an ActorComponent from outside of the owning actor from Blueprints. So a huge question came into my mind, why can I call this frunction, from the outside of an actor if it does not do anything (it’s a public method :slight_smile:)?!?
And in the log I found “May not destroy component”, so it is destroyed or not? :slight_smile:

Looking deeper into the engine code it’s clear that the component is not destroyed if “bAllowAnyoneToDestroyMe” is not set to true (1) or the method is not called in the context of the owning actor.

Sadly “bAllowAnyoneToDestroyMe” is not exposed to Blueprints. :frowning:

So I decided to create a proper solution to force the destruction within a BlueprintFunctionLibrary.
Here is the code: Force Unreal Engine Actor Component Destruction from Blueprints · GitHub.

10 Likes