Originally Posted by Timey
This is true, and no one with their sanity with the information we have on current day's interwebs etc will try to deny this. 10 years ago when I clicked my mouse1, the rocket launched a few hundred milliseconds later in quake.
Now, today, the powder in the bullet explodes the instant the mouse1.exe is clicked.
And now I don't even know what I'm talking about, so I'll just stop typing and keep hoping I've not insulted anyone again.
It's a thing of which you obviously know about. It's not, however, quantum physics. Give me 109h and I can tell you about it more than you now know about it
|
I can explain how it works in both the Frostbite engine (or at least BF2's engine), and in source and UDK.
In Source, when someone fires a gun, there is a timestamp sent to the server along with the packet that says the gun was fired. The server interprets the packet, reads that a bullet was fired, and then goes back in time (into the server history) and checks where all players were at the timestamp. If a player were calculated to be within the bullet's raytrace (i.e. the path of the bullet), the server interprets it as struck. To reduce strain, physics objects are not calculated.
In UDK, the client predicts whether the player is struck or not, and if the client is wrong, the server corrects it. There is no system such as the one found in Source. (at least that I can tell)
http://udn.epicgames.com/Three/Netwo...20The%20Future
In the Battlefield 2/Frostbite engine, hit detection is client side. The client fires a projectile and tells the server what the client struck.