Can't replicate flying template - Pawn only rotate once

I just downloaded UE4 yesterday, and to learn more about the software I decided to start from a blank project and try to recreate the ue4 default flying controller. I copied the “MoveRight()” code from the flying preset to mine, however when I trigger this function, it only turns to a certain degree instead of turning continuously. It’s probably something really simple that I forgot. Here is how it looks like: https://streamable.com/gsnupg

My MoveRight function:

void AShip::MoveRight(float Val)
    {
       
        float targetYaw = Val * TurnSpeed; 
        CurrentYawSpeed = FMath::FInterpTo(CurrentYawSpeed, targetYaw, GetWorld()->GetDeltaSeconds(), 2.0f);
        GEngine->AddOnScreenDebugMessage(-1, 5.f, FColor::Red, FString::Printf(TEXT("targetYaw: %f"), targetYaw));
        GEngine->AddOnScreenDebugMessage(-1, 5.f, FColor::Red, FString::Printf(TEXT("currentYawSpeed: %f"), CurrentYawSpeed));
        bool isTurning = FMath::Abs(Val) > 0.2f;
       
        float targetRollSpeed = isTurning ? (CurrentYawSpeed * 0.5f) : (GetActorRotation().Roll * -2.0f);
        CurrentRollSpeed = FMath::FInterpTo(CurrentRollSpeed, targetRollSpeed, GetWorld()->GetDeltaSeconds(), 2.0f);
    }

Original MoveRight function:

My Tick function:

void AShip::Tick(float DeltaTime)
{
    const FVector LocalMove = FVector(CurrentForwardSpeed * DeltaTime, 0.f, 0.f);
    AddActorLocalOffset(LocalMove, true);
   
    FRotator deltaRotation(0, 0, 0);
    deltaRotation.Pitch = CurrentPitchSpeed * DeltaTime;
    deltaRotation.Yaw = CurrentYawSpeed * DeltaTime;
    deltaRotation.Roll = CurrentRollSpeed * DeltaTime;
   
    AddActorLocalRotation(deltaRotation);
 
    Super::Tick(DeltaTime);
}

Original Tick function: void ASpaceFlightPawn::Tick(float DeltaSeconds){ const FVector LocalMove = F - Pastebin.com

What could I miss?

From the video, it’s behaving exactly as the template project. So, there is no problem.

The ship continuously turns when I hold “D” in the template project, which is not the case in my project. This is how it should look like:
https://streamable.com/sbqn68

Is MoveRight being constantly called while pressing “D”?

Here is my complete Pawn CPP.

I can’t find any problem neither with the code not with the components you used. I tested and it works as expected.

Weird. This is how it looks on my screen with the same code. I’m out of ideas what is wrong and what to do. Maybe it’s a bug?
https://streamable.com/6mvf8c (Also some weird spaceship shaking when I start recording ue4)

Yes. I do have some “UEngine::AddOnScreenDebugMessage” lines in the MoveRight function, and it’s called in a quick succession when I hold down the D key. Could the pawn be at fault here? I’ve made a different one. https://i.imgur.com/PJx9vwv.png

I’ve uploaded the project I’ve Issues with. It’s 564 MB large. If you don’t want to bother with it, I can completely understand that. But here it is if anyone have the time to look further into it.
https://drive.google.com/file/d/1FrXQztoSvHXFc0df9xx7FwQw0NhV4Qrq/view?usp=sharing

I’m unable to import your project. I’m using 4.24 and all BPs don’t work.

In any case, I created a BP based on your Ship class and it works well. So the problem is really not with your code.

Try creating a new Pawn based on your Ship class, with only 1 static mesh and camera and see the results.
Besides that, I have no idea.

To find out the source of the problem, I tried to removed each component one by one. Even if I have only one static mesh, it didn’t seem to work. But creating a new BP fixed it me, even with the same components. Looks like a bug that had cost me way to much time…
Thank you