Tried your suggestion, didn’t work…
For grins I just created a brand new class. Created it in the PirateCharacter class like I was with the Combat component… Put a debug statement in it’s Tick function… New BattleComponent ticks like a charm…
Blown away at why this CombatComponent won’t tick.
edit
I wasn’t using the AddComponentByClass like you suggest, I was using the CreateDefaultSubObject… When I changed to USceneComponent
ANyway, I changed to USceneComponent, then tried to create it the way you suggested, but UE crashed as soon as I ran the app
Fatal error: [File:D:\build\++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\UObjectGlobals.cpp] [Line: 4229] NewObject with empty name can't be used to create default subobjects (inside of UObject derived class constructor) as it produces inconsistent object names. Use ObjectInitializer.CreateDefaultSubobject<> instead.