Page 1 of 1

Lag calculation in remote hit detection

Posted: Tue Aug 28, 2007 12:24 pm
by october rust
hi there,

first, i'd like to leave here my appreciation for the people that donate their times for developing this great game, and say im nothing but thankful for the great job they've done so far.

with that said, i have a suggestion.
as im not based in knowledge of the code but practical playing experience only, i apologize if i say something dumb or innacurate from the point of the gaming functionality.

as some of you may know i play from brasil, and my lag on most servers is usually very high, often turning my message box into a trashcan (to the point i dont even bother anymore to answer or explain about lag and its implications, neither get mad anymore when people drop insinuations of cheating or personal offenses). by now ive been playing for about 3 years, so at this point lag became inerent part of the game for me, and compensation became automatic to the point i dont even notice anymore im doing it.

as me, there are some other people out there playing from far locations from the most popular servers, mostly south america and australia, and some of them also experience often these issues. most usually cant do anything about it, playing from 2 continents away from the server and being routed between 15-30 hops, and probably wouldnt even be able to play if not having good connections already.

in other hand, fortuantly there are people out there that have the priviledge to play often with very low lag involved in some of the most popular servers, enjoying the game nearly as it was originally designed to be played. for those, lag is not natural and often become disrupting and annoying when present.

a while ago, remote hit detection was made available built-in in the bz client from CVS. as useful as it is, as a complement to be used together with other information and knowledge by an experienced player, it can also lead sometimes unexperienced players to misunderstand the purposes of it. its been already discussed and exposed that it doesnt take lag into account, so its precision is limited to LAN and can only be trusted in internet in very specific situations, like when a tank is not moving perpendicularly to the bullets direction, or fit into a very tight spread, etc.

my suggestion is to include as a todo the necessity to make available lag calculation on it, so the consequences of its use when there is high lag involved would be minimized. some players out there just tend to rely blindly on it, and dont really care about what was the context around a shot that 'should have hit' (some simply go out shooting a tank from side and assume that the 82 warnings means that player is cheating). also, that may turn a player's eyes limited for seing through lag, downgrading such a valuable skill. for last, people sometimes may simply dont like someone for whatever reason and consciously use innacurate diagnostics from this tool as an argument to cause them hazard. so, from my point of view, having it as it is right now is causing more harm than benefict to the game.

of course i have no idea how that could be done, neither if it is a possibility, though would be nice if the tool was able at least to compensate the latency and maybe include some margin of error based in the jitter at the moment a hit should have occured, and just warn about positives. or, make it disabled by default and display a brief message when enabled warning about the way it works and the implications of its use.

again, sorry if i said something dumb, my intention is really to make things better.

Posted: Tue Aug 28, 2007 5:35 pm
by JeffM
2.1 does lag compensation for all client data.

If the"remote hit detection" that you are discussing is the hit check put into extended observer info, then yes the lag compensation will be used for that. That system is still not perfect since it uses your local client state for the check, and that state may not be the same as the player who you are observing.

At the current time, the server does not do any "hit checks". This is the next area we want to look into for server improvements. This would allow us to do the "kill" determination on the server and ensure that all clients abide by that result.

Once we have that, then there will be no more need for the extended observer info, and people to follow tanks around looking for movement cheats, because the server will be able to track and prevent it automatically.

Posted: Wed Aug 29, 2007 1:19 am
by october rust
oh, sounds good.