IncGamers has word from the early days of friends and family beta testing of Diablo III that players seem to be experiencing no latency at all while playing the game no matter their location, in spite of its client/server architecture. They have a couple of updates about this since first posting the story, the second of which says they feel they have: "100% confirmation that this is indeed correct! Latency no longer matters at all for combat." Here's word:

F&F sources have it that Blizzard are using a new method of client/server communication that provides a secure and tamper-proof method of using the local client to handle its own calculations, while sending the data to the server for verification. The Client doesn’t require the server to respond, hence removing Latency from the equation. The exact technical information of how this works is unknown, particularly how it protects the game from tampering with the client, however it is believed that the server checks all the data that comes from the client, and if it detects tampering it disconnects the client. This eliminates the need for the client to have to wait for a response from the server, and runs as business as usual unless the server doesn’t like what the client has sent it.

This is huge news, particularly for players in Australia, New Zealand and other high-latency regions that don’t have localized servers. Diablo 3 combat looks very fast-paced and the slightest delay would make the game feel rather broken. As well-illustrated by this monk gameplay video.

Mr. Tact wrote on Sep 15, 2011, 09:46:After watching some of these videos of the F&F beta, my initial impression reminds me of Starcraft 2. That is to say, D3 looks more like D2.5. This is both good and bad. If you really liked D2, you'll probably like D3. However, if you were hoping for significant change or improvement -- it doesn't appear to be there, it is the same game play with slightly different data and somewhat better graphics.

I don't really get that at all, the basic gameplay concepts are the same but there are so many ways its different from Diablo 2. I'd suggest watching a few videos on how the skills are implemented for an idea. A lot of things look similar on the surface but when you dive into the details D3 is going to be a lot more customizable and deeper.

After watching some of these videos of the F&F beta, my initial impression reminds me of Starcraft 2. That is to say, D3 looks more like D2.5. This is both good and bad. If you really liked D2, you'll probably like D3. However, if you were hoping for significant change or improvement -- it doesn't appear to be there, it is the same game play with slightly different data and somewhat better graphics.

coldcut wrote on Sep 14, 2011, 10:23:Judging by this video, it looks like it is definitely not running smoothly.

Ok, I realize the game is still in a limited beta and server problems are to be expected, that said -- I have to say this video is a great example of why requiring a continuous internet connection for a single player game blows chunks.

Vektuz wrote on Sep 14, 2011, 23:57:This is client side prediction and has been used in games since 1996, in Quakeworld.

I don't think so. Prediction is what causes lag...when the client receives a packet which indicates that something is in a different place from where the client thought it would be then the client changes it's location...it seems to jerk into it's new location. When this happens a lot then we call it laggy because things keep moving around while our character seems to be standing still...or sometimes the client has reached a prediction limit and freezes.

It sounds like what they are saying is that the client data is correct...and the server changes the location of objects for that client based on what the server receives from the client...as long as they are reasonable...this keeps the client rendering smoothly, but means each client has it's own set of server variables. Unfortunately, when latency is above like 250ms then after awhile some clients will be displaying something very different.

Where the problem will be is when there's lots of action and more than one client might be giving their player the same reward...what it sounds like is that the player with the faster connection...better ping...will get the loot while the player who played just as well as the other player...at least from what they can tell...will get disconnected? Or, do both players get the rewards? Or will the rewards not be immediate? I think Blizzard needs to clear this up.

I don't think there is any way to avoid lag without introducing something worse. The only client for which latency is not a part of the equation is a single player client...when you add a server and another player then you either have to wait until the server tells the clients what the other player is doing or the two clients are going to be presenting a different game to each player. Something else I thought of is when players team up and the actions of one player have to be timed so that they immediately follow the actions of another player...there's no way to make this happen without a server to pass on the other player's action to the player that needs to follow up with their action. It's not even something that can be predicted.

I encountered this exact problem today while playing TF2...a medic had an uber built up...and for 3 times in a row either he died or I died before the uber worked for both of us...he sometimes saw the uber start to work then I died and I also had instances where I saw the uber start to work then he died. The problem was caused by a sniper that the server says received a fire button press before it received a fire button press from the medic. There was no way to predict it, so for the duration of the total lag amount the medic and/or myself saw the uber start to work until the server came up and slapped our hands for predicting something that didn't happen because one of us was dead.

How would the Diablo client/server process handle this? I don't know, but it sounds like the medic and myself would both get the uber while the sniper would also get credit for a kill. But, we would see something very different unfold for the other players...I suppose the sniper would see something very odd...the medic or myself would have died, but some of the other players around us would be dying without any reason. I suppose in this situation the server would disconnect myself and the medic or perhaps the sniper? I don't know.

What I can tell is that client-side prediction with server authority has been in use for a long time and a lot of players are comfortable with it...why try something that would be strange?

It seems like this sort of implementation absolutely requires the client making certain predictions and assumptions. Which just trades accuracy for apparent ping.

For your fight with a mob to be "lag free" the game has to assume that, say, none of the players throw a fireball at your mob. If one of them does, then it has to retroactively correct for a mistaken assumption. That makes for weird inconsistencies and rubber-banding. Which can be just as aggravating as playing a game that runs at the ping of the slowest player.

Hmm...does NewEgg have any PCI Express 14.4k modems available so I can test this theory? If so, then all I have to do is get myself an AOL dial up account and I am golden! Anyone have a AOL CD they can mail me? =D

I like how they're selling this as something new. WoW already has no input lag. They're merely admitting that Diablo 3 not only looks like WoW, but behaves like WoW, because, well, chances are that its renderer, input, sound and networking are based on WoW engine.

The "lag" in this case will only be evident on other players and looting. You'll be smoothly going along killing monsters without a hiccup in your actions but players in your game may be skipping or idling and looting will be delayed.

There's a philosophy in app design (not just gaming, any app), that the client is in the hands of the enemy. There is no such thing as "tamper proof". If it's on the client, it will be tampered with, eventually.

All that this does is throw down the gauntlet to the hackers and say "I bet you can't hack this!"

It's great in theory, but the concept of Blizzard pitting itself against the creative/destructive minds of mischief that is the internet hacking community is just laughable.

xXBatmanXx wrote on Sep 14, 2011, 11:12:I have a hard time believing that they is NO latency.....seems like a marketing ploy.

There’s no latency because there’s only a hand full of people playing the game. Take it from a Network Admin, to outright claim there is not latency is absurd. There is always latency and always will be, I don’t care how you label it but Blizz is full of shit.

Maybe you should read the statement they made rather than calling them 'full of shit'. They said "Latency no longer matters at all for combat." They never said there is no latency, and more to the point, it wasn't even Blizzard that said it.

What they've suggested is not at all unrealistic. If the client handles the combat and movement calculations and doesn't require that the server respond before it can react to game activity, then the claim is perfectly accurate for your own personal experience.

The questions that remain are simply: What of friends playing with/against you? THAT seems impossible to create a zero latency solution for. And more to the point, what happens when the server doesn't like what the client sends? The theory of an instant disconnect sounds pretty ominous, but then I assume they thought of the possibility of corrupted packets and whatnot.

As well, a consideration is how long the server is willing to wait for it's information and what happens if it's not receiving it as quickly as it would like (issues with satellite connections, etc)

I should been a little clearer on my point on latency, I was referring more on the Coop side of the game. How are they going to handle that side of it and say it doesn’t have latency? They said that the player won’t experience it, is that the host? Yes, the host may not have latency, but the clients most likely will. There are way too many other variables to consider when lag comes into play like routers and gateways. Not to mention someone’s ISP or the person you may be playing with Coop and his PC our router may be acting up.

It was called PowerPlay and it was a Cisco/Valve partnership that never went beyond being a rather dubious press release

Yeah, Powerplay. Thanks, Verno.

It was full of mysterious broohaha that was somehow going to transform packets into these Inner Beings of Light that would instantaneously teleport to their intended destination, thereby completely negating latency.