Change variable's class for child

In your custom character class constructor:


AYourCharacter::AYourCharacter(const FObjectInitializer& ObjectInitializer)
	: Super(ObjectInitializer.SetDefaultSubobjectClass<YourCustomCharMovementCompTemplateClass>(ACharacter::CharacterMovementComponentName))
{
}

I believe you’ll also have to use GENERATED_UCLASS_BODY() macro in your class’ header file instead of GENERATED_BODY(), otherwise you won’t be able to use FObjectInitializer in your constructor to set a different class for subobjects.