Character stoping distance math

In this case the you should go VERY in-depth with the character movement component.

If I were you I would start with:

void UCharacterMovementComponent::CalcVelocity(...){..} //CharacterMovementComponent.cpp line:2986

which calls:

bool UCharacterMovementComponent::ApplyRequestedMove(...){...} //CharacterMovementComponent.cpp line:3073

and in there is a line of code that states:

Velocity = Velocity - (Velocity - RequestedMoveDir * VelSize) * FMath::Min(DeltaTime * Friction, 1.f);

I guess you can work your way backwards from that point but note that the file is over TEN THOUSAND lines so it wont be easy. The component has too many variables which modify the values given to these functions.