How does Networking work in C++/UE4?

If you look at the .h file for that, you’ll see that Server_StartFire has the ‘Server, Reliable, WithValidation’ tags. If a function is a ‘Server’ function, then it means that the Client will tell the Server to run that function. This call to the Server is known as an ‘RPC’ (Remote Procedure Call). The call will ONLY work if the Client Player is the ‘Owner’ of that object as far as both it and the Server are concerned.

In this case, when the Client calls ‘Start Fire’, they also tell the server to call ‘Start Fire’ for this weapon so that the Server runs through (some of) the same code (in this case anyway), and actually ends up spawning the projectile or processing an instant hit. I recommend reading the following:

A new, community-hosted Unreal Engine Wiki - Announcements and Releases - Unreal Engine Forums,Using_ReplicatedUsing/_RepNotify_vars