>>120166212Question: What is being done about shot delay?
Answer: The shot sound/initial muzzle blast is a client side event that happens at the time you press the button, and the shell itself appears as soon as the client gets the reply from the server verifying the direction/velocity of the projectile. There are a few different ways of approaching this problem.
We can make both the muzzle flash/sound and the shell wait for the reply. In 300ms ping (remember, this is almost 1/3 a second), you will experience a delay between the time you press the mouse button and anything happens at all. At 100ms, that delay should be extremely brief ( 1/10 a second ), but will still be felt to a small degree.
Alternatively, we can fire both the sound and the projectile client-side the instant you push the button. The downside to this approach is that while it will feel immediately responsive, the actual trajectory of the projectile will only be the client's best guess as to where the server is actually going to send the projectile, and the greater the latency, the less accurate the shell that you see visually will be, which can lead to moments where it seems like the shell flies right through another vehicle.
The current approach is to give you immediate feedback that the shell fired, but still wait to show you the accurate path of the shell per server-side calculation, which I realize creates a noticeable, disconnect between firing and the shell itself firing out. Nevertheless, we are working on a solution to mitigate this effect.