ScrotieMcB vs Desync Dev Manifesto (Massive Wall Map of Text)

SBL
Crafting doesn't exist in POE. Gambling does...and the house always wins.

Velocireptile - I LOL'ed. Which made me fart. I wish the office were empty right now :(

Hardlicker - I had to push the dog out of the way so I could get to the sexy quilt.
Is it my imagination or has desync increased in the last few weeks? If such a thing is possible... I find myself feeling desync a lot more (read constantly) even with skills that are not too prone to desync. I'm a little bit tired of me and mobs teleporting all around, or hitting thin air.
Last edited by Thalandor on Sep 28, 2013, 1:11:14 PM
"
Thalandor wrote:
Is it my imagination or has desync increased in the last few weeks? If such a thing is possible... I find myself feeling desync a lot more (read constantly) even with skills that are not too prone to desync. I'm a little bit tired of me and mobs teleporting all around, or hitting thin air.


exactly what it feels like, tiring... and eventually, tiring enough for people to finally get over the fact that it won't ever be fixed, and move on to other great games.
"
Sachiru wrote:
I agree and applaud Scrotie

Well written OP and says most of what theres to be said.
Chris answer is somewhat weak as well. "De"sync is the biggest problem in here.
Because life is short, you shall make rains of all sort - Amarena, the Iron Man
-
My IRON MAN witch build video:
http://www.youtube.com/watch?v=JJOUcu0ioL4
-
Do you want your witch wearing PANTS? check
http://www.pathofexile.com/forum/view-thread/19769
didnt read the whole 18 pages.

but you cant compare D3 with POE imo.
in D3 i have like 2 attacks/sec only. in poe you can have 12 or more.

yeah, d3 got it done, no desync so far but only because the gameplay is so fukin slooooooow. no? ^^
"
ScrotieMcB wrote:
"
Vhlad wrote:
"
Freeslana wrote:
You're so right that Diablo3 with its system, although it's a shitty ARPG, felt like it had really fluent combat with absolutely no desync.
Diablo 3 combat is terrible. Hits register at the start of the combat animation, meaning you can't play as fluidly and reactively to dodge attacks using gaming skill. When fighting monsters with slower animations (i.e. big melee attacks), you can be at the opposite end of the screen by the time the animation for the hit contacts your character, but still get hit because you were in range when the attack started.
I played Diablo 3 enough to know that this wasn't true; I could and did routinely avoid melee blows by getting out of the way. An entire monster was actually based around this mechanic; his attack animation was like a full 2-3 seconds and hit like a mack truck, the idea was to get out of the way before contact was made. Makes me wonder why you'd say something like this.


No. It's true. The only way to avoid an attack in D3 is get out of the way before that attack starts. If you didn't manage to do that, you will get hit even if half a screen away. The D3 Dev's intentionally wrote the code that way.

Don't like it. Think it's stupid. But that's what the D3 Dev's did.
"
Galtrovan wrote:
"
ScrotieMcB wrote:
"
Vhlad wrote:
Diablo 3 combat is terrible. Hits register at the start of the combat animation, meaning you can't play as fluidly and reactively to dodge attacks using gaming skill. When fighting monsters with slower animations (i.e. big melee attacks), you can be at the opposite end of the screen by the time the animation for the hit contacts your character, but still get hit because you were in range when the attack started.
I played Diablo 3 enough to know that this wasn't true; I could and did routinely avoid melee blows by getting out of the way. An entire monster was actually based around this mechanic; his attack animation was like a full 2-3 seconds and hit like a mack truck, the idea was to get out of the way before contact was made. Makes me wonder why you'd say something like this.


No. It's true. The only way to avoid an attack in D3 is get out of the way before that attack starts. If you didn't manage to do that, you will get hit even if half a screen away. The D3 Dev's intentionally wrote the code that way.

Don't like it. Think it's stupid. But that's what the D3 Dev's did.

That is true for most attacks, however there are a handful of enemies where you can avoid the attack mid-attack.

However a lot of projectile attacks can't be evaded by simply side stepping the projectile in D3 and that is fucked.
Computer specifications:
Windows 10 Pro x64 | AMD Ryzen 5800X3D | ASUS Crosshair VIII Hero (WiFi) Motherboard | 16GB 3600MHz RAM | MSI Geforce 1070Ti Gamer | Corsair AX 760watt PSU | Samsung 860 Pro 512GB SSD & WD Black FZEX HDD
Last edited by Nicholas_Steel on Sep 30, 2013, 11:45:12 PM
If this game has the desync issue after the official release I for one will not bother playing it .
R.I.P 4.B.
Shameless bump.

With impending release and Steam exposure, the population will soon explode. The desync is just mad in peak times lately, and I don't want this to turn off players like it has been doing since open beta. It might be too late though, not enough time to rewrite the network code...
What I understand from this thread is that we are talking about the netcode, ie what information and how the information is sent between the server and the client. However, for my arguments sake I am going to assume that the netcode will remain and instead see what other functional code can be changed.

There are different outcomes when desync happens and as players we react to them according to how likely the desync is to kill our character. For example regarding a melee character:

You stand just before a doorway in room A and you click to attack on a monster that is just behind the doorway in room B. Now, if the server position for that monster is elsewhere your character will eventually end up next the the server position of that monster. This can be very dangerous as there can be many more monsters there that you had not previously seen when you planned the initial attack.

The reason why this can happen, disregarding the netcode for a while, is because when you click on a monster two things happen. 1: If the player is not within reach of the target when attack happens, then start moving towards that target. 2. When the player is within reach of the target execute attack.

There are some ways to prevent this behavior. The first is to hold down shift before and while you click to attack the target. Another way is to not attack a target but to attack an coordinate or area (I believe that ice nova works like this for example). I believe that in path of exile the code looks for a target when you attack, rather than a coordinate. This means that when you click to attack a target you are attacking that target regardless of the target's position. However, if the code were such that you would attack a coordinate rather than a target entity your character would not start moving towards any other coordinate than the coordinate you attacked.

Now, there is a problem with this solution as well, which is when you hold down the attack button in order to attack contingently, as this first tries to move your character until you are within reach to execute the attack. Another problem is that you cannot click on a moving target and hope that your character will follow the target until it is reached.

ScrotieMcB initially said that the server and client should simply exchange coordinates so that when you attack a monster you will only run to it if the monster and your attack has the same coordinates. I can have misunderstood ScrotieMcB in this, but if I do undertand correctly, what I said in the above paragraphs should be the same type of solution in the 'mechanics' code rather than the netcode, ie always attack a coordinate then check the server for what target(s) are there and execute the to hit, damage, on hit, on kill etc.

I have too little experience with network programming to add any constructive suggestions about path of exile's netcode but please let me know if my point is still relevant regarding changing the 'attack code'.

Furthermore, It would be interesting to hear more people expand on ScrotieMcB's initial suggestion of sending the coordinates between the client and server. It seemed to me this was the main point in the initial post.

Report Forum Post

Report Account:

Report Type

Additional Info