Sounds like I need to handle velocity and direction almost completely separate. I did this:
float TurnDirection = Value.Get<float>();
UCapsuleComponent* CapComp = GetCapsuleComponent();
FVector CurVel = GetVelocity();
float howFast = CurVel.Size();
AddControllerYawInput(TurnDirection);
FVector ForDir = GetActorForwardVector();
FVector NewVel = ForDir * howFast;
CapComp->SetPhysicsLinearVelocity(NewVel, false, NAME_None);
It kind of works, of course the problem being that speed is being maintained while turning which is almost kinda the opposite of what needs to happen. I’m really unsure if this is the right direction to go down now or if I need to completely rethink how the character moves entirely.