I finally found the answer. Heres the in-depth guide to this nonsense:
Character replication in UE45 is automatically handled by the CharacterMovementComponent. SUPER useless if youre not wanting to use a character. Not everyone has to have a body, or obey to physics.
So, the solution is to ensure you have proper replication from client to server is to run the teleport function on the server. You CAN use vectors for smooth movement, but its completely optional. I will provide screenshots for both answers.
In this image, I am taking the Strafe, MoveUp, MoveForward, and Wheel Axis values and passing them through the MovePawn function with the vector i wish the pawn to travel along. I then created a ServerRPCMovement custom event. Its MUST be set to RUN ON SERVER AND NOT BE MULTICAST. The entire pawn can be set to replicate along with all the components, however, its not required for this solution to work.
Finally, the MovePawn function:
Validate Camera Position is just a function that deconstructs the position vector and ensure every value is within bounds. I then call SetActorLocation LOCALLY AND THEN finish is off with Server RPCMovement. This is then run on the server and teleports the player.
For acceleration and smoother movement, you may use AddInputVector:
Just be sure to replace the world vector with a directional vector instead of a world position
Thank GOD i found this solution. I will make a change eventually and switch NewLocation to a Transformation so i can retain player orientation