Aeon Amadi
WarRavens
1138
|
Posted - 2013.04.05 09:44:00 -
[1] - Quote
Reason for "Hit Box Lag"
If you've ever wondered why you magically died from someone's gunfire, despite running behind cover in the knick of time, this may help to explain the situation.
In an online game there is a connection between the Client (you) and the Server (the Dust 514 battle server you're connected to). The Client has no direct control over the state of the game going on in the Server, but may send Change Requests (an action in which the Client performs, such as running in one direction) to alter the state of the game.
The Server recognizes the Change Request and then sends an Update (the resulting consequence of the action) back to the Client. This results in a delay between what the Client sees, and what the Server recognizes as an Update. There are two fundamental ways in which "Hit Box Lag" occurs:
1.) There is a poor connection between the Client and the Server, whether due to latency or "ping" (something most Gamers will be familiar with) due to physical distance or simply due to the Client's internet speed.
2.) Insufficient hardware (processing power) in either the Client or the Server.
In either case, what results is a slight delay. This delay produces "Hit Box Lag" in which the animation of a player's model is moving faster than the server can process the location of it's Hit Box, as shown below:
https://developer.valvesoftware.com/w/images/c/ca/Lag_compensation.jpg
This is why, theoretically, when you fire a gun at someone who is moving behind cover they will die despite being out of sight. It can also be attributed to why when you fire a Sniper Rifle you'll see the flicker of the target's shields but no damage will occur.
This is why a Hitscan is used in Dust 514, rather than a Ballistics system. It reduces the processing need for Bullet Physics down to a basic mathematical formula, rather than extensive accuracies such as bullet speed and weapon accuracy. Hitscan, in it's basic form, simply creates a line from one point to another and when that line is intersected, it stops. This makes the "bullet" hit instantaneously with where it is aimed. Weapon accuracy, recoil and a variety of other outside variables are all simulated as there is no real "bullet" being fired from the weapon, it cannot simulate any other type of movement besides a straight line.
In the game Battlefield 2 (PC), a Sniper could often kill another player simply by watching the movement of his Chevron (the pointer or nameplate over his head). If the other player was crouched behind cover and stood up, the Chevron would move before the player model's animation could complete, in which you could fire and kill the player before any part of their body left cover. This is more of a reverse example of Hit Box Lag, but still applies in the same aspect.
Now, before anyone freaks out, I'd like to explain that while I have helped develop some indie games (and tested others more extensively) I am in no way stating that this is 100% the reason why this occurs in Dust 514. This is simply my theory.
Feel free to discuss. |