Tick is never being called even though CanEverTick and StartWithTickEnables is true

Yeah no worries the code i am using to call the tick function are below

Constructor

ATerrainActor::ATerrainActor()
{
	PrimaryActorTick.bCanEverTick = true;
	PrimaryActorTick.bStartWithTickEnabled = true;
	PrimaryActorTick.bAllowTickOnDedicatedServer = true;

	Mesh = CreateDefaultSubobject<UProceduralMeshComponent>(TEXT("Terrain Mesh"));
}

Tick Function its self:

void ATerrainActor::Tick( float DeltaSeconds)
{
Super::Tick( DeltaSeconds );

FString floatval = FString::SanitizeFloat(DeltaSeconds);
GEngine->AddOnScreenDebugMessage(-1, 15.0f, FColor::Red, *floatval);

GEngine->AddOnScreenDebugMessage(-1, 15.0f, FColor::Red, TEXT("Ticking"));

}