Ok sure, no worries - I don’t have Unreal on this PC, so I couldn’t test this out, but I think what you’re looking for is the following:
// Get our local velocities
FVector forwardVector = GetActorForwardVector();
FVector upVector = GetActorUpVector();
// Define how much we should lift based on the local forwar speed
float liftAsPercentageOfLocaForwardSpeed = 0.15f;
// Calculate the added force in our local up direction, based on our forward speed and percentage lift
FVector addedForce = upVector.GetSafeNormal() * forwardVector.Size() * liftAsPercentageOfLocaForwardSpeed;
// Add the force
PlaneMesh->AddForce(addedForce);
Here, I assume that the forward acceleration (due to a key held down I assume) has already been applied, and you’re just adding a small lift component based on the forward speed. Is that what you’re looking for?
P.S. I haven’t used GetActorForwardVector() or GetActorUpVector() before but I assume that it gives you the vector that contains the magnitude (i.e. not normalized) and the world direction of the actor’s velocity based on its rotation. If that is not the case, you will have to replace these with functions that give this.
Also, naturally this code should only run when the forward thrust key is held down, otherwise you will get runaway upwards velocity.