Help with line trace inaccuracies

Your start location should be, for example, CameraWorldLocation.
End should be Start + Camera → ForwardVector() * length of the raycast you want to use.

I know this is C++, but you can use it as reference. I used it in my game to make my AI Car shoot at enemies. Note: this is pseudo code in order to help you read it.

FVector Start = Machinegun->GetComponentLocation();
FVector End = Start + (Machinegun->GetForwardVector() * AimSightLength);