Help on making the most optimal FPS weapon fire system.

I am looking for what you guys would consider the definitive example of creating projectiles from firing my weapon in a multiplayer Quake style first person shooter.

I am looking at the problem from multiple angles and I am even thinking about maybe mixing line traces with projectiles and such. I am just not confident that I am going down the right path.

For example, no matter what I seem to do the projectile always collides with player who shoots it. I then have no choice but to make the projectile start 100 units away from the player.
But now if I am right up close or point blank then the projectile goes through my target because of where it spawns.

If I set the projectile to overlap only pawn it works perfectly being fired directly from where my crosshair is located but it seems like overlap events are slower than hit events causing the projectile to pass through the target pawn before playing its hit animation.

My goal is to find the absolute most optimal easy to understand method to do this. All I need is a way to make accurate projectiles that properly hit all objects when fired without exploding on the person who fired it.

This seems like it should be simple but for some reason it has me a bit stumped.

Where are you actually spawning your projectile from? You should place a socket just past your gun barrel and spawn the projectile there to avoid collision.

In a quake style FPS the projectile is spawned from the center of the screen. Actually, I think most shooters do this. I have that part figured out though.

I am more worried about not spawning a projectile a meter in front of the player.