Desync and why it's fixable
" 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.
|
|
" you wont get one. Don't forget to drink your milk 👌
|
|
"Probably, but not certainly. 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 Dec 2, 2013, 1:44:12 PM
|
|
GGG, y u no answer?
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.
|
|
" Well it is 20 pages Scrotie, although I think your intentions are good I would imagine they have read this, and there is some reason why they cannot do what you are suggesting. Obviously I am not suggesting I know why that is. You might actually have better luck pming them at this point. |
|
Hmm.
Hmmmmmmm. Hmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm... I dunno, I'm not sure this will improve things, overall. I can see how it would help in some situations, but: 1) Giving each monster a shared seed for behaviour won't work because there are many other factors governing monster AI that diverge due to desync. Monster AI is not as simple as "pick something to do from a list". The list items are weighted (potentially to 0% or 100%!) based on things such as: distance from player, monster buffs/debuffs, player buffs/debuffs, number of minions, amount of life, amount of mana, etc. So basically I just think it would diverge too quickly to be worth it. 2) Allowing monsters to perform actions on the client can cause more desync in some situations. For example, if a monster sees you on the client but NOT the server, the monster will run over to you can start attacking you (for no damage), while on the server it is standing still or roaming about somewhat. At least with the current system, that doesn't happen. And of course if you try to attack it back, on the client you whack at it (for no damage, at least initially) while on the server you are running off into another room. Code warrior Last edited by Rhys#0000 on Dec 2, 2013, 9:37:19 PM
| |
" #2 actually happens and quite frequently. It is most notable with doorways. Build of the week #9 - Breaking your face with style http://www.youtube.com/watch?v=v_EcQDOUN9Y
IGN: Poltun |
|
"Won't work perfectly, or won't work better than the current system? Yes, once desync has been introduced to the system it would start to butterfly, but this is already the case. The objective here is desync prevention, and the competition is the current system, not some ideal of perfection. Also, I fully understand that such non-random variables are used by monster AI, and that's fine; having a random seed does not necessarily mean relying exclusively on that random seed, it just means using it for that 0% to 100% part. 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.
|
|
" I was about to say...it does already happen pretty often actually. Tech guy Last edited by Warrax#2850 on Dec 2, 2013, 10:11:36 PM
|
|
" Well, the "fighting monsters you aren't actually next to" part can happen already, yes, though for different reasons. I'm just saying this new method introduces new ways for it to happen, so it would potentially occur even more frequently than it does now. I assume that with both server and client handling AI separately, the server never tells the client about AI decisions? (It stills stream damage results, of course.) I worry about decoupling the AI like this. It effectively renders the client-side AI "meaningless". It would just be a visual representation of the client's best guess of the server state. In contrast, currently any time you see a monster do anything on the client, you KNOW that it is doing the same thing on the server (or trying to). Sure, sometimes you don't see what's happening on the server, but that part isn't changing. Compared to the current system, I see more opportunities for desync to happen, with the only upside being that it hopefully causes the client to better predict the server state. I'm just not sure it's a net profit, in the end. Code warrior
|