Posted this question on answer hub as well but no reply So, I am gonna copy the question.
I am working on a Third Person Multiplayer Project and I have been taking notes from the shooter game for the replication. One thing I don’t understand or That I am not sure if i am Getting the right point from the Shooter Game is.
How to To Shooting? There are two ways I achieved this but I am satisfied with none. First Is the most simple you can find youtubers doing multiplayer shooting via this method its just Do a Line Trace, Put a Authority Check and Depending on your Role Call Multicast or Run On Server -> Multicast which Spawns Particles, Sounds etc. This Works fine unless you Run Network Emulation On Avg or Bad then you will realise the your input is also tied to the Communication speed between client and server to solve this I simply added an illusion Play all the Impacts on The Local Machine without any delay or Server Checks then Request the Server Same thing but this time Ignore the Call on Same Client that Requested it.(To avoid Double Spawning of Emitters and Sounds)
Now I don’t know how good this method is, it just works but this is not what Shooter Game Uses. In Shooter Game Source code I Noticed they did shooting via RepNotify the Custom USTRUCT which I don’t understand one thing if lets say I hit the same spot Twice the Struct won’t be replicated to the other clients because i heard that RepNotify Does not invoke the method unless it’s values are changed.
If Anyone can clear the shooting method up like what is the professional way of doing this I would be glad.