i use a custom component for my ability system inside the constructor i set it up (this will be the reference you need to call into it int he rest of your code):
character .h
class UKTAbilityManager* AbilityManager;
.cpp inside your constructor or that AYourCharacter() thingy (i honestly don’t know its name)
AbilityManager = CreateDefaultSubobject<UKTAbilityManager>(TEXT("AbilityManager"));
then whenever i need to use an ability i just call into it:
AbilityManager->UseAbility()
i’m not the best programmer so second opinions would be advised this is just how i use my custom components