Technical solution to eliminate desync in single-player sessions

Guys, do you really have to get personal here?

The only way that this is going to work is if we all remain constructive and work together; calling each other names and derailing this thread is a sure fire way of getting it shut down by GGG.

Please chill out, thankyou!
Stay out of the shadows ... They bite
"
genericacc wrote:
"
MrMisterMissedHer wrote:

As far as I'm concerned, any state variable is an issue with mechanics. Yes, some things cause more obvious artifacting than others and should be prioritized, but you still need to know about status ailments, being cursed, accurate health display and so on.


I can't think of a good reason for those to be off by more than the server frame time + your latency, sure. They're important enough that they should probably just be in every frame, it's not like there's enough status ailments for it to take more than a few bytes >_>


Indeed, just trying to make the point that you shouldn't really be neglecting something just because it's seemingly minor (in a spatial sense). Particularly with discontinuous state.
"
SkyCore wrote:

Fuck off and fuck you. Im surprised you could take your fingers away from fingering your own asshole long enough to post even this quick and crude piece of shit post

There's that sparkling wisdom and maturity that prove what a superior life form you are when compared to the rest of us. If only we could someday rise to your level of obviously knowledgeable wit and discourse the world would be a better place.
"
Makaze2048 wrote:
"
SkyCore wrote:

Fuck off and fuck you. Im surprised you could take your fingers away from fingering your own asshole long enough to post even this quick and crude piece of shit post

There's that sparkling wisdom and maturity that prove what a superior life form you are when compared to the rest of us. If only we could someday rise to your level of obviously knowledgeable wit and discourse the world would be a better place.

I got some wisdom for ya, drink drano. its good for you
For years i searched for deep truths. A thousand revelations. At the very edge...the ability to think itself dissolves away.Thinking in human language is the problem. Any separation from 'the whole truth' is incomplete.My incomplete concepts may add to your 'whole truth', accept it or think about it
"
MrMisterMissedHer wrote:

Indeed, just trying to make the point that you shouldn't really be neglecting something just because it's seemingly minor (in a spatial sense). Particularly with discontinuous state.

One presumes that the entire state cannot be updated continuously otherwise they'd be doing just that. Rather portions of the state are updated periodically and the client side simulation fills in the gaps and produces a state that hopefully approximates what the server is doing in the meantime. Since there is a state communication budget then it makes sense to prioritize certain items that have large secondary effects on state, like character position, over other state items that while important in and of themselves do not cause the client simulation to diverge as much.
"
gonzaw wrote:

For instance, imagine GGG get a custom Linux distro made for themselves. They can twink ANYTHING they want, just to cater to PoE and how it handles the client.
Are you telling me there is no possible way GGG can twink their Linux distro, in a way no hacker can ever get full information about everything he needs to know to simulate the PoE client? If so, why?


The PoE client binary is sufficient information to simulate the PoE client binary, from a theoretical point of view. You have to install it somehow, so it could be reverse engineered.

"
Or no matter how "lower" you get in the architectural level, there is always a way the hacker can "hack" your programs/OS/etc at that level to be able to "hack" PoE?
...what about quantum computers? I bet hackers can't "hack" quantum superposition can they? :P


Quantum computers still use algorithms, they're just quantum algorithms >_>
"
Makaze2048 wrote:
"
MrMisterMissedHer wrote:

Indeed, just trying to make the point that you shouldn't really be neglecting something just because it's seemingly minor (in a spatial sense). Particularly with discontinuous state.

One presumes that the entire state cannot be updated continuously otherwise they'd be doing just that. Rather portions of the state are updated periodically and the client side simulation fills in the gaps and produces a state that hopefully approximates what the server is doing in the meantime. Since there is a state communication budget then it makes sense to prioritize certain items that have large secondary effects on state, like character position, over other state items that while important in and of themselves do not cause the client simulation to diverge as much.


Agreed.

I can only guess that hosting considerations (of which I know absolutely nothing about) are at the centre of this. There are a few other issues I can imagine, mostly relating to latency, protocol and overhead (not exactly something I'm particularly knowledgeable about though).

Of course, my concern is if that situation will practically improve. I haven't seen much desync improvement (while there may have been some decent additions to their system) in my time playing the game so I am pretty skeptical, besides being generally cynical. I have very little faith in supposed improvements that don't include, basically, higher frequency and lower latency (not to say that it has to be universally fixed rate or something, as long as you at least do a reasonable job of catching discontinuities).
"
skycore wrote:

This entire thread accomplishes nothing. All this arguing about minutia is inconsequential and irrelevant.
Methods exist to eliminate desynch in single player. ALL such methods open up various security holes. And all such methods require a vast amount of code, time, and money. GGG has previously stated they were not willing to make such trade-offs. It is completely their decision to make.
request thread lock

I could quote numerous alternative ways in which i have previously said this. Everyone who chooses to ignore this, ignores the truth.
This issue is beyond you. Your arrogance in thinking you can do better than the GGG coding staff should anger anyone who has any loyalty to this company. A company that has proven what it can do with tactile results. Unlike ANYONE else in this thread.
For years i searched for deep truths. A thousand revelations. At the very edge...the ability to think itself dissolves away.Thinking in human language is the problem. Any separation from 'the whole truth' is incomplete.My incomplete concepts may add to your 'whole truth', accept it or think about it
Last edited by SkyCore#2413 on Nov 22, 2013, 10:49:01 PM
"
qwave wrote:
Yeah I remember Scrotie's post, though it was based on using UDP for mob movement instead of determinism, which would make the situation far worse.
Prediction and resynchronization are two completely separate topics; one is desync prevention, one is desync correction. The use of UDP to resynchronize the client (essentially streaming the gamestate) is a completely separate suggestion from having the server send a seed (via TCP) to the client for use in partially deterministic prediction, because they apply to two completely separate functions.
"
LogoOnPoE wrote:
Ok, did the test, nope, client does not get mob AI seed. Mobs only move once confirmed by server.
I told you so.
"
genericacc wrote:
1 - Stun: Since damage is (presumably) done on the server, this requires a round trip (>100ms even on a fairly good connection) unless you are guaranteed to stun.

2 - Movement skills: Aiming a movement skill on a mob causes desync since the error accumulates fairly rapidly, especially since movement skills can stun or knockback.
#1 can be largely mitigated by asking for the accuracy/damage/stun results before the skill actually hits. This means that the entire wind-up animation for the skill can be used to soak up the lag, and in many cases the results can be received from the server before actual time of contact. What I just described is a system which Path of Exile already uses.

#2 is a huge problem, and something which I'm saying should be fixed.
"
gonzaw wrote:
Please know this is a purely theoretical discussion. I want to know if it is theoretically impossible or theoretically possible to do what I'm talking about or not.
At the end of the day, as far as the server can tell, the client is nothing more than a bunch of packets received over the Internet. Thus, it's not really about spoofing the OS; any OS information is just information on the packet, which can be spoofed by knowing what information to write down. What you are talking about is so theoretically impossible that it's actually irrelevant.
"
SkyCore wrote:
"
Makaze2048 wrote:
"
SkyCore wrote:
Fuck off and fuck you. Im surprised you could take your fingers away from fingering your own asshole long enough to post even this quick and crude piece of shit post
There's that sparkling wisdom and maturity that prove what a superior life form you are when compared to the rest of us. If only we could someday rise to your level of obviously knowledgeable wit and discourse the world would be a better place.
I got some wisdom for ya, drink drano. its good for you
At this rate you guys are going to get the thread locked.

Please continue.
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 Nov 22, 2013, 10:58:11 PM
OP regardless of many making it a point to discredit everything you wrote I commend you. You've obviously spent a lot of time and effort in the document as well as coding and the like. It shows you care and are trying to contribute.

So hats off to you for the effort even though Scrotie and GGG discredited your hard work line by line by paragraph.

Report Forum Post

Report Account:

Report Type

Additional Info