How to change root component of ACharacter?

The object inherited through: ACharacter (C++) → AMyObject (C++) → AMyObject_BP (Blueprint)

I want to change root component from CapsuleComponent to BoxComponent. My character is a flying vehicle. What can I do with it?

I tried next variants:

1. Change RootComonent in C++ from UCapsuleComponent to UBoxComponent in constructor.

Result: failed, implicit errors after launch editor and crash). (BoxComponent is UPROPERTY)

 BoxComponent = CreateDefaultSubobject<UBoxComponent>(ACharacter::CapsuleComponentName);
 ...
 RootComponent = BoxComponent;

**2. Set the capsule component sizes to minimal and create the new collision object in component list. **

Result: failed, new collision objects not responds collision (collision is setted up, physics, etc…) and vehicle overlaps the all.

Help please :slight_smile: