News, and the latest updates.
Stories from the past...
Got a item of interest? Here's the place to go.
Your opinion always counts on how we can make GameSurge
Comments on our features, by you, the viewers.
Tweaks, reviews and a handy driver index highlight our newest section
Looking to buy one of the hottest games? We have it covered.
Get a advanced look at the games of tomorrow.
Find out more about the people behind your favorite game.
Need Help? We have a very large selection of walkthroughs now up.
A special section featuring the best in artwork and
The written word, by staff and viewers.
A bi-monthly column contributed by Mark H Walker, an independant writer in the Gaming community.
Pictures from around the web.
Our current hosting plans and features.
Who we are, what we do, our policies and job positions.
The Sony PlayStation, and beyond...
The Dreamcast resource, and more. Home of the DC Technical pages.
(Editors Note: This is a rebuttal to a previous viewer submitted article,
called Netcode. It is
advised that you read that article first. There are also quite a few responses
to the Netcode article from other viewers, you can view those in our Mailbag
Section. Additionally, head over to this page
for Valve's official response.)
Well this email is in response to your netcode rant. In
fact it's kind of a rant itself. Don't worry; I'm not going to go off
cussing and flaming. I was going to write before, but I figured it would
just get ignored. Since you have posted some of the responses I thought
perhaps it wouldn't be ignored after all, so here I am. *smile*
First of all, being an entertainment website dedicated to gaming, people
are going to assume a certain leve l of technical expertise. Unfortunately
I found Mr. Zehner to be rather uninformed. In fact there were many technical
errors in his article, as well as a few not so technical ones. Well, let
me start off by stating that I personally have had a lot of experience
playing Half-Life and Team Fortress Classic (to use the now "classic"
name) over both 28 and 56 K modem connections. At one time I was actually
a capable sniper in TFC on the 56K connection. Not an impossible fete,
but admittedly a difficult one. (I might add that the only thing which
allowed me to achieve passable sniping of moving targets was the implementation
of the notorious "lag dot". Which turns out was a brilliant method of
providing user feedback on the in game latency.) I currently have a DSL
connection. (A somewhat slow one at 144K, but... when it's the ONLY thing
other than a modem...) My experiences with the game and the patch have
obviously varied. To that extent I cannot make any comment.
If Low Ping game play has truly suffered as much as the article states
then it is sad. However, this is not the source of my criticisms. What
I am criticizing is the article itself and some of the technical issues
involved. The argument presented by the article may indeed be valid.
Essentially, I think this article was a true rant, in that it is composed
of the complaints of a single individual who feels justified in publicly
complaining about their own personal frustrations, while simultaneously
misunderstanding most of the underlying issues. This type of thing belongs
on a forum, or in a usenet thread where the credibility and reputation
of only a single individual will be affected. One last word in general
before I tackle the issues. I am not personally attacking Mr. Zehner.
I don't even know the guy. I've never heard of him or the website before
a link to this article popped up on www.Halflife.net.
First off the article makes several somewhat inflammatory remarks, presumably
a s a means to cat ch the reader's attention. However, this tone continues
throughout the article in a rather Valve bashing way. Journalists should
at least attempt to sound reasonably objective and open-minded, IMHO.
The tone of this article does not encourage Valve to release any kind
of exclusive rebuttal of any kind. The article is bordering on hostile
towards Valve, and I personally would not wish to aid the organization
responsible were I at the company. But perhaps this is all stylistic.
Perhaps it's all a gimmick to stir up controversy, which is usually quite
a crowd pleaser. More likely it is just the writer’s frustration finding
a voice, I think.
So, this brings us to the beginning of the real meat of the article,
and the first (and probably biggest) glaring technical error. I'm sure
other readers have mentioned it, but I'll cover it anyway just to be thorough.
The statement, "The player with the higher ping can now play a smoother
game because their local prediction of other players is used and is valid
for h its," is just blatantly wrong. The rest of the article leans upon
this assumption like a crutch for almost every technical explanation,
and thus the entire thing falls in upon itself like a card house. Although
it may seem to be a true statement to anyone simply playing the game,
the actuality is quite different. The new netcode uses Lag Compensation.
Lag Compensation (not "control") is not client side prediction of hits.
Hits and kills are not awarded this way. The server still retains authority.
(Thus the references to Diablo are also erroneous.) What happens is that
the sound effects, weapon animation, ammo depletion, bullet hole decals,
ect... are handled by the client. Blood can also be switched to client
side prediction, but defaults to server control. All of these are essentially
cosmetic. As are all the other client side implementations. Those are
all just sideshows compared to the main event, though... Lag Compensation.
So what IS Lag Compensation? Is it client side hit prediction? No, it
is n't. In fact if it were then at any point when you fired at a player
if your crosshairs were aimed at the player model you would get a hit
whether you were an LPB (Low Ping Bastard) or an HPB (High Ping Bastard).
I'm not saying it would be a good thing, (it wouldn't), but it would have
different effects than are described in the article. Lag Compensation
is actually very simple. The server monitors the latency of each player's
connection. When a player pulls the trigger the server gets the packet
a few moments later. This used to mean that by the time your packet got
to the server a moving target would no longer be where you were aiming,
thus you registered a miss. Now, however the server keeps track of your
latency and then checks to see what targets would have been hit at the
time you actually fired the weapon.
So, the HPB's hit may get lagged, and thus their target may not take
damage for a moment after the shot actually took place, but the HPB still
had to hit the actual location of the target, not a predicted one. The
point is really hit home with these statements: "*High Ping players
may hit the predicted positions of their Low Ping Player targets. *Conversely,
Low ping players can only hit the REAL position of their High Ping Player
targets BUT can only SEE the predicted positions!" Actually both High
and Low Ping players must hit the "REAL" position of their targets, yet
can only view predicted positions. The netcode does not make this false
distinction between HPB's and LPB's. Now we get to some specific effects...
"When retreating around a corner, a Low Ping Player may be well out
of the line of fire, but yet die a second later because the High Ping
Client still has the old position which can be hit."
This effect is very real, however the explanation of it is completely
incorrect. What happens is that as you are about to retreat around the
corner a HPB lines up a shot and "caps your ass." Unfortunately their
latency ensures that the packet telling the server they sho t their weapon
does not arrive until after you have made it around the corner, or nearly
so. The server then uses Lag Compensation to determine if you were in
the line of fire when the shot occurred. If you were, you are retroactively
issued your death. Essentially this means your death gets lagged because
of the HPB's connection. But it's a fairer solution than their aim being
lagged. So you lived a moment longer than you should have. And you think
this is unfair to YOU? In that moment you could have thrown a grenade
or finished defusing a bomb. You could have even shot them, after you
should have been dead! This could be resolved a number of ways by the
server. The server would receive the LPB’s action first and register a
hit on the HPB. Then, the lagged action from the HPB get’s to the server.
Lag Compensation tells the server that the HPB should have hit and killed
the LPB. Exactly what the server does at this point I do not know, but
I can think of a few possibilities:
The server may simply acce pt both actions. The LPB would see the HPB
die from their shot, but then would mysteriously die as well after the
HPB had already died. The HPB would shoot the LPB and then have to wait
for the LPB death to come back to them from the server, which means they
would receive both deaths simultaneously. The net result of this is that
the LPB thinks the HPB cheated and feels like the netcode screwed them,
when in actuality the HPB got screwed by their lag, because they should
not have died at all.
Or, the server may actually ignore the HPB’s action since it didn’t get
to the server until after they died. This one really screws the HPB, because
they die, and their target does not, when all along they pulled the trigger
Then, there is a final possibility. The server at receiving the HPB’s
action may determine it happened before the LPB’s and retroactively set
things right. In other words the LPB may witness an HPB appear to die
or withstand an attack, then themselves die, and the HPB go on the ir
merry way. In this case the code has actually preserved events the way
the should have been, the LPB’s actions that occurred after the point
at which they should have died are ignored. It appears to the LPB as a
total cheat, though. “I unloaded a whole clip into his chest then I died!”
I wouldn’t think the code would work this way, but considering the complaints
I’ve heard, perhaps it does. It doesn’t give the HPB an advantage, but
it looks that way to the LPB.
The HPB still gets the short end of the stick though since all of their
kills happen a moment after they SHOULD have. All I have to say about
this particular one is, "tough". It's been a problem for HPB's forever.
It's somewhat annoying to think you got away for a second, but it's hardly
unfair. I've died many times from snipers when I thought I was already
safe as a HPB. You learn to accept it, because you know they actually
shot you in the open, you just didn't get your death packet from the server
fast enough. So now the lag can be on the back end of the shot as well
as the front end. That just helps make the game fair.
"Additionally, A Low Ping player approaching a corner may stop short
of making the turn, but his predicted motion takes him past the threshold,
which is a valid target for a High Ping Player!"
Again, this statement is just blatantly wrong. Personally I've never
seen a player's predicted position take such a drastic move without extreme
lag. But, that's not what I'm arguing. Predicted positions are irrelevant.
A predicted position is NOT a valid target. If you died before going past
the threshold then there was some other valid reason. Perhaps they plugged
you through the wall with a rifle in CS. Perhaps you got lagged and your
client position got out of sync with the server's. (The server retaining
authority.) Or perhaps you died from something or someone else all together.
The situation described above is false.
The article goes on to say that sniping is now just wonderful for HPB's
but "nearly impossible" for LPB's. It describes targets skipping and "blinking".
While this might make an HPB a harder target to snipe imagine their difficulty
in controlling themselves accurately. If they are undergoing that much
lag, then in all likelihood they will have a very difficult time aiming
and fighting. Furthermore if they are skipping around like this then in
all likelihood you have either disabled player prediction or have turned
it too low. Tweak your own prediction settings. Player prediction is not
evil, it is meant to make up for gaps in communication. The server can
only get updates from the client at a certain rate. To some extent player
position will become erratic even on the server for a high ping player.
Slow and erratic updates from the client cause this, but cannot be completely
eliminated or compensated for. Essentially, if you are faced with a difficult
target then just keep in mind the disadvantages and burdens the HPB must
face. Also consider that the LPB has a similar advantage over the HPB
sniper. By moving erratically you can change your position faster than
the server can send them updates, which will cause similar effects on
their end, and will force them to rely upon prediction between server
refreshes in order to attempt hitting you.
However, the LPB does not have any of the additional disadvantages of
the HPB, so you are still better off. Basically, lag makes sniping difficult
on both ends of the modem, despite Lag Compensation. The article then
states that all weapons are now less accurate and have a wider spread.
I'm unclear about what was specifically being referred to here. Was it
HL-DM or Team? Was it TFC or possibly CS? I'm not sure. I know that I've
played TFC and I didn't notice any particular greater inaccuracy or wider
spread. I haven't played multiplayer HL in a while, but not all that many
people do, most preferring the MOD's to pure HL multiplayer anyway. As
for CS... Well, that's not even Valve! Goosman and team released CS beta
version 6.5 just after the Valve patc h. The new beta updated CS to be
compatible with the new patch as well as further making additions and
tweaks to the game. If the weapons in CS are less accurate this does not...
cannot... have anything to do with Valve! Valve did not code the CS weapons
and did not modify the CS weapon code in any way with the patch. So, I'm
really unsure what modified inaccuracy and weapon spread (if any) is actually
"Now nobody gets a completely realistic experience, High and Low Pingers
alike. High Pingers may disagree, but to me, 'Two Wrongs do not make a
Nobody ever got, or gets this mythical completely realistic experience.
Even on a LAN games develop issues. I am not currently a "High pinger"
myself. In fact I often enjoy CS with a sub 100 ping, and have played
a few times with sub 60 pings. Gamespy3D largely to thank for my low pings,
but so is my DSL connection also, as well as the new netcode. (I did play
TFC on the DSL previous to receiving the new netcode and I did in deed
notice an improvement in both gameplay and ping.)
I have to agree that, "Two wrongs do not make a right." But, I do not
view the new netcode features and balancing as a wrong. The netcode cannot
remove the effects of lag entirely, but it can help to ensure that the
HPB and LPB enjoy more similar gameplay than was possible in the past.
A few odd effects are a small price to pay for enhancing the playability
of the game. Even LPB's enjoy a benefit from Lag Compensation. As for
anyone having difficulty adjusting to the new netcode I would highly recommend
tweaking the game settings especially the new settings. A very good source
was the tweak guide made available at www.tweak3d.com.
For instance the guide mentioned that predicting bullet decals helps to
give immediate feedback, but that some of the randomizing of the aim due
to normal weapon inaccuracy and recoil had to be done on the server, and
thus the decal positions may not correlate with the randomizations done
on the server. Thus the decals for shots that contained a random element
would be in the wrong place. The guide recommended switching this to server
control if it seemed like an issue, which is just another cvar setting
like so many, and can be modified by any client for their own system.
This and other tweaks may aid players having difficulty with hitting targets
under the new code.
I would like to apologize for the verbose nature of this response. I
tend to be wordy in emails and such. But I did think these things should
be pointed out. Let me state again that I hold no ill will towards Mr.
Zehner. I simply feel that his article was a bit inflammatory, misleading,
uninformed, and poorly researched. He seems to have taken great passion
writing about something about which he had little understanding of. Which
really isn't that bad a thing to do after all. I also want to state again
that I am not refuting his argument itself. Perhaps he does have a point.
Many people seemed to agree, so that would lend credence to the notion
that gameplay for LPB's has suffered.
I (unfortunately) was not an LPB soon enough to be able to make this
distinction, so I will politely bow out of that actual argument. Personally
I believe this could have been a much more compelling article had the
author known a bit more about the actual technical issues, and had it
been less of a rant, and more of a sharing of information and a plea for
improvements. Let me also say that we all know this is netcode intended
for TF2, but we also all should know that Valve is bringing TF2 technology
to us early. This stuff is prebeta. In fact, Valve is in the unique position
of being able to beta test many new technologies for TF2 with the single
largest FPS player base available, and simultaneously provide ongoing
improvements for all of us to benefit from. Sure, hear and there it's
going to be a bumpy ride.
Some MOD teams have had difficulty making their MOD's compliant with
the new patch, and there are other issues. But, ove rall, the benefits
far outweigh the harm. So, really, it's a win/win situation. I think we
should all give Valve the benefit of the doubt. Valve may be a little
tight lipped most of the time, but honestly, how many game developers
support the community half as much as Valve? Half-Life is almost two years
old, yet we are still getting patches and continuing support, as well
as new features. Most game developers have gone bankrupt before their
first title has been out for two years!
( Editors note: This editorial was actually sent to our mailbag feature,
but I'm pretty sure no one will disagree that this deserved a special
place on the site. Thanks to Mannon for agreeing to this. I should mention
a couple of things as well. The original Netcode article was a viewer
submission as well, and not written by a GameSurge staff member. Mannon
didn't know this, because I forgot to mention it in the original post
I made. Oops...
So, after talking to him a couple of times, I &quo t;edited out"
references to this site, to save us both embarrassment, (especially ours)
and to make it a little clearer.
As well, I had some trouble editing this, as I have *cough* never
played the game *cough*, so I just left it as is rather than make some
horrendous mistake that will make me the bane of the Half-life world.
On a small personal note, I also have to comment on the sheer amount of
replies to the Netcode article. I'm a member of several "game communities",
but I have never seen so many people with such passion for a game. When
you get replies of the highest quality, like this one, it really makes
a strong statement about the game and the people who play it. Thanks to
all who wrote, and I encourage everyone to continue writing. )
Second Editor's note: As a CS player, with both Modem and Cable experience
my personal opinion of the netcode is that it has made the game experience
better for HPBs, but at the expense of LPBs. It was made to improve the
HPB experience, but as a side effect has caused downfalls on the LPB end.
No LPB has said that they are better off than before due to the effects
of the new netcode, but rather HPBs have been advantaged by the lag
compensation. Additionally, I don't see how lag compensation will benefit
a LPB, as stated by Mannon, as LPBs enjoyed the benefit of a seemingly
lagless game to begin with.
On a side note, whether the new weapon inacuracy is due to an act of the
netcode, or by a totally seperate decision by the CS team, it has definately
caused the dropuot of many old school and hardcore gamers. Even a neutral
review of B6.5 (With no previous experience of pre-6.5) by FiringSquad
has stated that the game is not of pure skill, unlike Quake for example.
The weapon inaccuracy benefits unskilled players by at least giving the
chance of a fluke hit, but severly hampers skilled players whose well
aimed head shots no longer hit due to inaccurate weapon spray.
Send comments to us
Zalman: ZM-DS4F Headphones
An affordable, ultra-portable headphone set.