I think a GGG response on Vaal Oversoul is due.

"
Morsexier wrote:
"
Sawm wrote:
"
Morsexier wrote:
I've killed vaal many, many times in my career. I've completed something like 1,000 race events.

He does not walk, ever.

If he starts walking to you, if you /oos he goes back to where he emerged from the ground... every time. I may have missunderstood, but I'm surprised that Mark is wrong about this point, that vaal walks or that its an "urban myth" that he doesn't.



That is just how he re-syncs man, "If he starts walking to you, if you /oos he goes back to where he emerged from the ground... every time." this is just his own slice of dsync. just try it vaal can seriously just walk around and he does (very rarely) that's why oos during this fight is so fucking scary, how many times have i oos'ed myself back into into the range of his hammer, but yeah he LEGIT walks around its quite cute.



You dont seem to understand.

He appears to walk, but OOS puts you into sync with the server, and the server is always right.

Meaning he was never walking in the first place. Your client was just interpreting things incorrectly.

He can desync re-emerging from the ground, as I've had him appear and I'm instantly at 10% life from being hit with a slam. This might be a very rare occurrence (twice in over 3 years of playing PoE), which might have a virtually negligible chance with the changes Mark is implementing.


In the OP when I asked if he actually could/was supposed to walk, I was careful to add 'in combat'.

He definitely walks while not desynced, as you can see after the death in the VoD.
My presence while dead means the monster isn't asleep but isn't in combat so to speak. So we see him walking about.

Now, that said, while Mark probably is right that he can walk ( we see him walk in this active but not in combat state) and can probably walk in combat, it's probably just that he is more likely to perform an attack, or rotate etc. Like 99.9% more likely.

To all intents and purposes, it's kind of right to say that he doesn't walk while in combat, with a live player near him and that when he does he is desynced. But it's also right to say that he can. He's just very, very unlikely to.
Casually casual.

Vaal can walk but it doesn't take more than 1 steps

If he took more than 1 step it is actually going into Earthquake mode and Clientprediction predicts a smash.

The AI code is seems to be like that:

mode =RollMode();


if(mode == mace)
{
Sleep(2000);
if(distance(target, vaal)> x)
Rockmode();
else if(distance(target, vaal) < x)
Smash(target.x, target.y);
else do
{
GenerateWalkNode(target);
} while(distance(target, vaal) == x)


if(distance(target, vaal) < x)
Smash(target.x, target.y);
else
Rockmode();
}

The target here needs to be confirmed on x and y, so we are dealing with a fixed value.

The client on the other side reacts only to packets, the client will constantly update target.x and target.y so vaal will be stuck into the moving loop making it appear it follows you, till the server confirms x and y and resynchs and vaal goes into rockmode.


GGG can't reproduce the bug because they play on local copies of their game where Server and Client always are in sync.
"
Hilbert wrote:
GGG can't reproduce the bug because they play on local copies of their game where Server and Client always are in sync.
*sigh*

I already explained in this thread both a) That Mark2 was able to recreate the bug, and b) that no, our testing does not happen in that context. I also went over my suspicions of why this only happens for some people and not for others, as has been noted in the thread - it's not just me who's never had this happen, some players never see it (and others often do).

For the record, it is also not possible, as you suggest, for the Client to predict a different action than the server, because the client does not predict monster action choice at all, only the results of the actions they do perform (which the server informs it of).
Last edited by Mark_GGG#0000 on Jun 29, 2014, 10:31:31 PM
"
Mark_GGG wrote:
"
Hilbert wrote:
GGG can't reproduce the bug because they play on local copies of their game where Server and Client always are in sync.
*sigh*

I already explained in this thread both a) That Mark2 was able to recreate the bug, and b) that no, our testing does not happen in that context. I also went over my suspicions of why this only happens for some people and not for others, as has been noted in the thread - it's not just me who's never had this happen, some players never see it (and others often do).

For the record, it is also not possible, as you suggest, for the Client to predict a different action than the server, because the client does not predict monster action choice at all, only the results of the actions they do perform (which the server informs it of).

I think we know your game engine a little bit better than you do, Mark!
"Danger is like jello, there's always room for more."
http://www.twitch.tv/vejita00
"
Mark_GGG wrote:
For the record, it is also not possible, as you suggest, for the Client to predict a different action than the server, because the client does not predict monster action choice at all, only the results of the actions they do perform (which the server informs it of).
...and hence all the desync in the first place. Client interprets currently-player action choice immediately; client has to wait for monster action choice from the server. Instant desynchronization.
When Stephen Colbert was killed by HYDRA's Project Insight in 2014, the comedy world lost a hero. Since his life model decoy isn't up to the task, please do not mistake my performance as political discussion. I'm just doing what Steve would have wanted.
Last edited by ScrotieMcB#2697 on Jun 29, 2014, 10:38:01 PM
I read your post before the edit!







"
b) that no, our testing does not happen in that context. I also went over my suspicions of why this only happens for some people and not for others, as has been noted in the thread - it's not just me who's never had this happen, some players never see it (and others often do).


Players fight vaal differently, that's why.

Some players try to create a huge distance and avoid rocks and never see it.
Others stay out of the smash distance, they constantly see it.
Others hug Vaal and never see it.

To me it looks like the client is stuck in a loop because the Variables aren't locked.


"
For the record, it is also not possible, as you suggest, for the Client to predict a different action than the server, because the client does not predict monster action choice at all, only the results of the actions they do perform (which the server informs it of).


Why do we see a different action then? Vaal walking would mean we receive movementupdates of Vaal, same goes for desync in general if you run away.

Mobs should never ever desync if the client animation is triggered by packets.
Yet you can see streams one streamer having a proper mob placements while the other player is followed by phantommobs which are still in the next room.(So how do you explain this)

Unit moving to target only sent to target and update coords for all players once a unit dealt damage?



Vaalsanimations seem only to be triggered by 1 packet aka which arm will be used.

What I see is:

Summon Arm:
Vaal Changes arm--->Triggers animations and all animation got bugs involved.

For example Vaal always summons 6 minions. But the summon sequence are projectiles, so in a GMP race I expected a Minion overkill.
Indeed I saw 5 Projectiles on each attack but only 6 minions.

The amount of projectiles shot never matches the summons.


Lightning Attack:
My first rip actually happened that way.
I went into a TP in ruthless and got killed by an invisible lightning.

So how do I see it? I wasn't informed which arm vaal was using, so there was no lightning animation. I only received a "unitdamaged" and "unitdied" packet.

Cold Attack: Take a tp to town so the unit Vaal is targetting will be lost. Vaal will shoot the Ice towards targeted player but on the server another unit it the target and ice will appear out of nowhere.


Rockattack:
Vaal changes the arm/emerges and does a distance check.
You are close ->smash
You are a bit further away and don't move 1 step -> smash
You are far away= Rockstorm

But this is only valid if you aren't moving.
Once you start moving following can happen:
You see a rock animation but vaal actually smashed you(if you close in)
You see him moving towards you attemping a smash actually going into Rockstorm.


The correct animation will only be played once non Vaal related effects appear, meaning either rocks start dropping or you see the red explosion.




So what should I think? Vaalanimations will be triggered only by the active arm and a client checks for "prediction" instead of receiving a proper "unit attacks coordinate x,y withskill z" packet?



Sure I can hook up the packetfunction and do a check what I actually receive but then I will be banned or receive a PM "Don't hack our game"

But to me it looks obviously like you wanted to reduce traffic and that's why those clientside artifacts exist.


"
...and hence all the desync in the first place. Client interprets currently-player action choice immediately; client has to wait for monster action choice from the server. Instant desynchronization.

You shouldn't receive any Vaal related packets at all, but Vaal is taking many steps and possibly attemping a smash till the first rocks actually drop-->"You received a packet"

Same goes if you charge in with leap slam or whirling blade. As long no Rocks haven't dropped but you still can be smashed while your client plays the "Rockstorm" till the explosion is triggered(packet received)

At last it doesn't look like PoE uses a packet "unit a attacks unit b" or "unit a attacks coord x,y"
It seems PoE uses something like "Play animation X on Y until next update" and then the client uses switches and the default switch is "unit is moving to target with default: attack"






I've never seen Vaal move, real or not. Is this normal for other players?
IGN = Dellusions_Duelist
I don't think ive ever seen him move either but then again ive only killed him like 4 times
"
Dellusions wrote:
I've never seen Vaal move, real or not. Is this normal for other players?


I seem him struttin' his stuff fairly often. I have not, however, seen a desych smash yet.
http://www.twitch.tv/exhortatory
"
TheAnuhart wrote:
"
Boem wrote:
You know what i find weird as well, in the second video you linked, you are attacking his "image form" after he walks, but he takes damage?

Then you kill him and the loot explodes 1/8 screen away.

I always found this weird, it reminds of the traps where you target an enemy on your screen and the trap get's thrown at another direction.

I don't get it. Either he is there and he can take damage, or it's a fake and he should not take damage, since you would be aiming next to him.

Peace,

-Boem-


Target lock.

If I'm locked on to him, i.e. his name and life bar is there at the top of my screen, then I'm targeting him and hitting him on server. That's why you desync into rooms if you don't shift click, as the server walks yo to LoS/melee the true version.

I rarely shift click, I don't want to forfeit the auto LoS function which is great other than when desynced (and can even be a saver when desynced, conversely to porting to death, it can mean the difference between leeching and not, or killing an avian or not before he puke 1-shots you).

But I digress, because both the real Vaal and the 'image' were in range and LoS in this case, I kill the real one while targeting the image and my character isn't forced to move on the server.


I just want to re-quote this and add a VoD.
I've been wanting to reproduce this to this standard for a while.
I caught it perfectly.

http://www.twitch.tv/theanuhart/c/4566876

This is a prime example of why 'always shift click' is so fucking bullshit.

It's a good reason for name locking and NOT shift clicking.

But it's also, while being a life saver in certain circumstances, is a killer in others, when porting into a room of death happens.

You might also notice in Havoc's Youtube about his Uber death, how one of his counters is to never name-lock now in this encounter.

This is the contradiction, the catch 22, the 'you can never do right exclusively' in what is the fuck up of PoE sync. It's the meta gaming, the skill in PoE (to a degree, as there are times when you simply can't know what to do), the challenge is to know when to override game features such as name lock and auto-LoS/melee, but also to know when definitely NOT to override them, to know when to /oos and to know when to Alt-F4. And all this while server and client show 2 different things, or do they? It is, quite honestly, ridiculous.

In the VoD above, I have pietits name locked.
On server she ports behind me.
On client she stays and is seen to be firing ice shot away from me.
Because I have her name locked, my character immediately turns and fires at server position.
I do NOT shift click.
If I was melee, I would have ran over to her.
If I was closer-range-skill, ranged character, or if piety ported further away, I would have taken a few steps towards her automatically.

Now here's the kicker.
If I had not target locked, as ranged or melee, I would be shooting in the wrong direction/swinging at an illusion, pietits would take no damage, I would not leech, I would take invisible ice shots to the back.

If I had shift clicked as melee or as a ranged character whos range was less than the distance to server position pietits, I would again not be doing damage, not leeching and taking ice shots to the face.
Casually casual.

Last edited by TheAnuhart#4741 on Jun 30, 2014, 10:01:20 AM

Report Forum Post

Report Account:

Report Type

Additional Info