RegisterComponent breaks the component

I do not have the specific answer for this but the documentation clearly states “Register this component, creating any rendering/physics state”, so what could happen is it re-initialize the physic somewhat, making some other stuff break. This is pure theory, but this is a bad use of the function.

RegisterComponent() does not need to be called in the constructor since the constructor is basically the “default properties” of your class, the component will register to it’s owner (the actor) correctly by default.

RegisterComponent() needs to be called when you spawn the component at runtime either in the construction script or elsewhere during play.