Technical solution to eliminate desync in single-player sessions
I've mentioned it a few times, I operate a cloud computing platform.
Last edited by qwave#5074 on Nov 20, 2013, 5:41:47 AM
|
|
" I feel that it is better as follows: "action": { type: "attack", target: "23497", action ordinal number: "2122", timestamp: "2748827722" } ] The damage must be calculated in the same way both by the client and by the server, following item and character stats. Space required: type: 3 byte target: 2 byte action number: 3 byte timestamp: 3 byte. Total: let's say 16 byte (128 bit) for each command. Roma timezone (Italy)
|
|
"What?" and "where?" are two different questions.
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.
|
|
From my home in Maryland? What does 'where' have to do with it? Haha
|
|
qwave, I think you missed one thing from Rhys's last post: How do you determine the leniency for different rounding of floating point numbers?
|
|
" By using FIXED point numbers Roma timezone (Italy)
|
|
" Like I keep saying, the leniency only needs to apply to the data that needs to be validated for the 'sanctity' of the game. In other words, the leniency would be applied to the damage, using a heuristic over time. So if the player said he dealt 1284 damage, but the server arrived at 1283.4 damage, then the server can safely let it slide. It can then use heuristics over time to adjust the player as necessary to align the rolls. The leniency is at GGG's discretion, not mine. I'm recommending this because Rhys has insisted that floating point precision is not fixable on their side. It's the best solution I believe there is to that problem. And yeah, it would help if they reduced the usage of high precision floating point numbers as well. ;-) But hey, im trying to work with whatever they give me here. Last edited by qwave#5074 on Nov 20, 2013, 5:54:01 AM
|
|
" I completely forgot about save states and speeding up the game for desired results. Save state system is the ultimate, undetectable, unbeatable cheating method for offline games with replay system. My experience with online games is almost nonexistent. I figured providing a time window would eliminate save states, but it doesn't. I don't know if it is possible to solve various issues that arise due to replay system. I haven't read the whole thread yet. I've had replay desync due to floating point calculations(not a platform dependence issue, but i wanted to share anyway): .29 * 100 = 28.999999999999996 This in turn resulted in 28, not 29 as expected and caused replay desync. Finding the cause of desync took hours and in this case was solvable and solved by proper precision rounding. Last edited by ungalunga#3646 on Nov 20, 2013, 5:59:45 AM
|
|
What now you talk about single player sessions only?
Why this change, got kind of nocked out by Devs and you want to try it again? ps: this is totally racist for the people that are able to play with others because of their social skills. Why you should try Harcore http://www.pathofexile.com/forum/view-thread/209310/page/1 Last edited by tadl#0113 on Nov 20, 2013, 5:55:50 AM
| |
" Translation: I have no relevant credentials to speak of, so I won't answer, because any professional worth his certifications would take any opportunity to wave them in your face. I am a (one-man code monkey at a small firm) senior software architect and (rent out virtual hosting server instances that I sublet off datacenters using a custom UI templated CPanel) cloud computing /online gaming industry. Even if I was a plumber, I believe I've exhibited that (I have no idea of what I'm talking about and are resorting to googling keywords and looking for the first pdf that I can get from bing) I know what I'm talking about. |
|