Search the database
Search forum topics
Search members
Search for trades
diablo2.io is supported by ads
diablo2.io is supported by ads
7 replies   1317 views
2

Description

This is interesting, but a bit confusing. Since the NHAM bug applies to offline as well as online. I am not entirely sure how looking at the netcode is going to fix this.

https://www.reddit.com/r/Diablo/comment ... &context=3
Blizzard wrote:
So NHAM is an interesting one. I know Rod chimed in briefly but I have some further details on how and why it works in a specific way.

Depending on how you look at it, we didn't touch it, but in another way we fixed it.

First, let me explain what D2 Legacy does and what you see as a player and why it is perceived as a bug. There are two places where logic is happening when you play D2. One is on the client, that is your computer, and the other is the server, that's our computers here. When you play with other players, they are doing things on their client, and updating the server as well. The server sorts it all out and sends information back to everyone. When the information on one of them is different than the other, we call that a de-sync. A good example of this is when you are standing in one spot, and the server thinks you are in another. This causes the "rubber banding" when you snap back to a spot where both locations are the same. This is why you ten dto see rubber banding more if you have a poor connection versus a strong one. As we modernized D2L for D2R we did a lot of work to keep our de-syncs to a minimum.

One other example of a de-sync is when a player that is doing something (ie:
Teleport
or
Frost Nova
) takes a hit. On the client the player starts playing the animation. Attacks and other abilities don't actually occur on the first frame of animation, they will occur at a later point in time. With the telport, you'll start to see the lightning form, but the actual translocation of your character doesn't occur till later in the animation cycle. If you were to get hit while you were playing that animation, you would get knocked out of the ability, and it would be canceled. In D2L it was common for you to see the animation continue for much longer than it should have. This then caused it to look like your next ability missed because what the client saw, and what the server saw were two different things. The client would then reject any succesful abilities because it knew you were still in the "get hit" state, however as a player, the client had become de-synced and let the animation continue. This would then make it look like your
Teleport
went off, or your
Frost Nova
fired off but in reality nothing happened.

This NHAM bug people are seeing is slightly tied to the example above as your next attack/skill after a hit reaction just wouldn't work. The reason that occurred in D2L is that you would act on your client, but the server was still in hit recovery and rejected/ignored the command. D2R has made significant improvements so that if the player now sees what the client has been doing all these years much more accurately. So when you take a hit on the client, and are STILL taking a hit on the server, you'll see the same thing in both places. The logic is still the same as it always has been, but we now have fixed how it is being shown on the client.

I think feedback post launch will be important to see and hear from everyone regarding this. As Rod mentioned, we will continue monitoring feedback post launch but we think getting it in front of more people and for more time will help build a better idea of how it feels with the community.

Sorry for the lengthy post here, but it's a fascinating topic for sure and is tied to many other things as well.
EDIT: It seems reddit links completely break this forum for some reason...
Description by UnrivaledPiercer
5

Can be used to make Runewords:

7
This is interesting, but a bit confusing. Since the NHAM bug applies to offline as well as online. I am not entirely sure how looking at the netcode is going to fix this.

https://www.reddit.com/r/Diablo/comment ... &context=3
Blizzard wrote:
So NHAM is an interesting one. I know Rod chimed in briefly but I have some further details on how and why it works in a specific way.

Depending on how you look at it, we didn't touch it, but in another way we fixed it.

First, let me explain what D2 Legacy does and what you see as a player and why it is perceived as a bug. There are two places where logic is happening when you play D2. One is on the client, that is your computer, and the other is the server, that's our computers here. When you play with other players, they are doing things on their client, and updating the server as well. The server sorts it all out and sends information back to everyone. When the information on one of them is different than the other, we call that a de-sync. A good example of this is when you are standing in one spot, and the server thinks you are in another. This causes the "rubber banding" when you snap back to a spot where both locations are the same. This is why you ten dto see rubber banding more if you have a poor connection versus a strong one. As we modernized D2L for D2R we did a lot of work to keep our de-syncs to a minimum.

One other example of a de-sync is when a player that is doing something (ie:
Teleport
or
Frost Nova
) takes a hit. On the client the player starts playing the animation. Attacks and other abilities don't actually occur on the first frame of animation, they will occur at a later point in time. With the telport, you'll start to see the lightning form, but the actual translocation of your character doesn't occur till later in the animation cycle. If you were to get hit while you were playing that animation, you would get knocked out of the ability, and it would be canceled. In D2L it was common for you to see the animation continue for much longer than it should have. This then caused it to look like your next ability missed because what the client saw, and what the server saw were two different things. The client would then reject any succesful abilities because it knew you were still in the "get hit" state, however as a player, the client had become de-synced and let the animation continue. This would then make it look like your
Teleport
went off, or your
Frost Nova
fired off but in reality nothing happened.

This NHAM bug people are seeing is slightly tied to the example above as your next attack/skill after a hit reaction just wouldn't work. The reason that occurred in D2L is that you would act on your client, but the server was still in hit recovery and rejected/ignored the command. D2R has made significant improvements so that if the player now sees what the client has been doing all these years much more accurately. So when you take a hit on the client, and are STILL taking a hit on the server, you'll see the same thing in both places. The logic is still the same as it always has been, but we now have fixed how it is being shown on the client.

I think feedback post launch will be important to see and hear from everyone regarding this. As Rod mentioned, we will continue monitoring feedback post launch but we think getting it in front of more people and for more time will help build a better idea of how it feels with the community.

Sorry for the lengthy post here, but it's a fascinating topic for sure and is tied to many other things as well.
EDIT: It seems reddit links completely break this forum for some reason...
7
User avatar

BillyMaysed 2265Moderator

Sorceress Americas PC
UnrivaledPiercer wrote: 3 years ago
This is interesting, but a bit confusing. Since the NHAM bug applies to offline as well as online. I am not entirely sure how looking at the netcode is going to fix this.
The bug is a miscommunication between the server and your client. So lets say when you get sent into hit recovery during
Fend
or Fury, your character NOW won’t continue the animation and will immediately stop. The animation of continuing to strike with
Fend
/Fury is what was perceived as a “bug” for those skills since it looked like you were swinging and not connecting multiple times in a row. But really your character (on the server) had already stopped and been sent into hit recovery.

So you weren’t actually missing it was just the animation of swinging continuing when it shouldn't have. It must've been a glitch on both online and offline. But now your character should properly stop the attack or spell animation when sent into hit recovery. So no more NHAM bug on either. :)

PS yea i also noticed reddit links get messed up and i have to put the around it and somehow it works. bizarre.

7
If an attack like
Fend
now stops instead of continuing on to miss all remaining monsters, I’d just need to activate the skill again. This is a win in my book because it allows me to get to the next successful
Fend
faster now.

Good fix.

Edit: this is kinda like a shadow fix. Just upgrading the game/servers “fixed” this issue. I wonder what else was unintentionally fixed.

"And I...am...Iron Lesbian."
*snap*
7
User avatar

BMAY 592

Assassin Americas PC
I'm really excited for them to be working on desync issues.

I was unaware that the NHAM bug was tied to this; but I believe any desync is detrimental to gameplay.

Even those PVP builds just as Hdin and
Charge
pallies that actually rely on desync are gimmicky in my opinion.

Image
7
OP
I'm still not entirely convinced this is the main issue. I'm sure it's part of it, but we'll just have to see. Another reddit poster was able to dig up some of the info I remember reading a number of years ago related to it here.

https://www.reddit.com/r/Diablo/comment ... &context=3

I feel like they're on the right track at least if they're looking at fixing bugs. Hopefully if this isn't directly a fix, they will continue on and reach the proper fix eventually.

These comments sort of sum up my current thoughts on the matter as well.
7
Sometimes devs and the community don’t see eye to eye. Be it the wrong vocabulary to describe what is going on or be it that the community is describing an issue that the devs see as something else (or something the community can’t see).

Only way to find out is to test it in 6 days.

"And I...am...Iron Lesbian."
*snap*
7
It's interesting... didn't NHAM not exist at first, but was introduced in a later patch? And was never fixed after that? I don't think it's 100% tied to desynch.
7
OP
I may be mistaken, but I believe NHAM was "added" with patch 1.10. I don't recall if it existed in 1.09, but I believe it didn't. The NHAM issue was fixed by a modder once before back like 10 years ago.

https://d2mods.info/forum/viewtopic.php ... &p=421355&

So while it's nice that the VV team is fixing things, they're looking in slightly the wrong place for NHAM. They just need to move these fixes over to the live client.
9

Advertisment

Hide ads
999

Greetings stranger!

You don't appear to be logged in...

No matches
 

 

 

 

Value:
Hide ads forever by supporting the site with a donation.

Greetings adblocker...

Warriv asks that you consider disabling your adblocker when using diablo2.io

Ad revenue helps keep the servers going and supports me, the site's creator :)

A one-time donation hides all ads, forever:
Make a donation