Blueprint Actor Component Not Ticking

I am pretty much at the end of my rope with this.

I have a C++ Base Class that derives from UActorComponent, and I cannot get it to tick.

Here is what the base class constructor looks like:

UAC_HardLightComponent::UAC_HardLightComponent()
{
	PrimaryComponentTick.bCanEverTick = true;
	PrimaryComponentTick.bStartWithTickEnabled = true;
}

The Tick has a call as follows (as it is being overriden)

Super::TickComponent(DeltaTime, TickType, ThisTickFunction);

I am not overriding the Event Tick in my blueprint class, which means it should default to the base class implementation, right?

This wouldn’t be nearly as frustrating, if Unreal didn’t keep crashing on me. Enabling the Component to Tick in the Blueprint Editor causes Unreal to crash. Does anyone have any ideas?

I do have it:

void UAC_HardLightComponent::BeginPlay()
{
	Super::BeginPlay();
	
	GEngine->AddOnScreenDebugMessage(-1, 10.0f, FColor::Yellow, TEXT("Testing BeginPlay!"));

	DaggerState = EDaggerState::DS_NoDagger;
	PrevDaggerState = DaggerState;

	//SetComponentTickEnabled(true);
}

BeginPlay seems to work alright, it’s just the Tick.

May seem like a stupid solution, but did you forget the “Super::BeginPlay()” in BeginPlay? If BeginPlay doesn’t work, then the Tick won’t work either.

I ask this, because with what you have shown I don’t see how your code wouldn’t work.

maybe this will help

Tick function not firing in Actor Component driven class.

I logged in just to thank you… I feel like an idiot, but my class is now working. Most people don’t bother to mention the basics when debugging another’s problems, so thank you for saying it.