Technical solution to eliminate desync in single-player sessions
I like this solution :) I primarily play solo anyway, and would love to have no desync.
Vindictus (MMORPG) does a similar concept (if you do an instance solo, you locally host the server and have no latency, but anti-cheat still exists). Path of Exile in Eyefinity: https://www.pathofexile.com/forum/view-thread/1320584
|
![]() |
" Many online games do this successfully. PoE is perfect for it. |
![]() |
Is there any topic or admin post talking about desync?
| |
- Your solution only works for a single player (this is not just a problem since it's limited but a problem since players may now decide to play solo to avoid desync rather than group up, which is the point of the game. I.e. it isn't just limited but may influence the community into a more single player approach).
- Your solution has security flaws which may result in hacks. Small as those risks may be, the company has clearly stated it has a policy to keep the game hack free. By that logic even a tiny risk is enough to shoot down your proposal. - Your solution would result in a completely reworked architecture/client. Even though the server code might be usable, implementing this solution basically propels the game back into alpha stage. It's not gonna happen... Scrotie is closer to the mark. Switching to udp would free up resources currently wasted on overhead. Using those resources for more positional updates would decrease desync issues across the board (for groups as well as single players) without changing the entire client/architecture. EDIT: before people go flaming me. Personally I DO like this solution. It's just that as a project manager the above mentioned reasons are enough to shoot it down. Hence defending it is a waste of energy :) IGN: Splashem Last edited by Fopspeenzuiger#1407 on Nov 18, 2013, 10:09:20 AM
|
![]() |
" I've made a couple posts on how it could work for multiplayer as well. But yes, for the most part it's ideal for solo sessions. " The nature of these flaws are not detrimental to the game. You wouldn't be able to dupe, god-mode, change item quality/chance, hit harder, etc. You could only potentially avoid dying under certain situations, but that's way better than constantly dying due to desync. " This is not necessarily true. We have no idea how much of the infrastructure is already part of the client. None of us are GGG developers, so it might be easier (or more difficult) than expected. |
![]() |
" Although using UDP may help a bit in certain scenarios, it will not eliminate desync. In fact, UDP has the potential to increase the amount of desync because UDP packets can be received out of order or lost completely. Last edited by qwave#5074 on Nov 18, 2013, 10:19:37 AM
|
![]() |
I agree qwave.
The possible hacks ARE less gamebreaking than current desync issues. And indeed we don't know how all this stuff works currently. It's just, well, from a project manager's point of view those are three gaping reasons it's a proposal that is very likely to miss its mark. I think the easiest, fastest way to see SOME sort of improvement would be a switch to udp but once again we don't have enough info on the current architecture to make any sort of proper proposal. I'm afraid we'll just have to wait it out and hope they come up with a solution. Either that, or they have to give us more info and set up a space for us to brainstorm :) IGN: Splashem
|
![]() |
" UDP doesnt have the potential to increase the amount of desync, the game must validate the packets order and just ignore "late packets". The worst thing about desync is that this made the game unplayable and there is other games like path of exile being launched, I really dont want to stop playing path of exile because my friends are not playing anymore :( | |
" I believe is that your approach is completely flawed in this point. Imagine this easy to code scenario on the client to prevent ever sending a death on HC to server while allowing normal play: 1) Let's say server allows 2 secs time before connection is lost 2) I'll be continually gaining 0.2 secs before I send each action - even I could send them immediatelly - just postponing the trafics to server in very small way. - In 10 secs I gain enough window to completely move outside of this 2 secs window. 3) If death of player occurs - I'll dump all my postponed packets and instead port out to city - I'll have much more than 2 secs available that time Server will not be able to recognize this situation in any way! It will be all 100% valid!!! P.S.: And even more sophisticated I could generate the window enough by just sending that I'm standing at the beginning (pretending that client loading of the area is slow) - I'll easily gain 5 secs just by this. Again with 100% valid events send! MY CHALLENGES ARE DONE ON HC, IT'S NOT SC GUYS! Last edited by Filousov#5457 on Nov 18, 2013, 10:43:03 AM
|
![]() |
Filousov: I think you are completely misunderstanding the way this works. You don't 'gain' a window over time. The server would strictly require snapshots within a dedicated interval (I think 1 second is best, which allows reasonable ping). Moreover, I have stated a few times that there would need to be a 2-3 second delay on log out or town portal in order to reduce the likelyhood of escaping death in this manner.
Last edited by qwave#5074 on Nov 18, 2013, 10:38:52 AM
|
![]() |