Technical solution to eliminate desync in single-player sessions

"
Tantabobo wrote:
"
qwave wrote:
"
I am not even arguing that it will cause a problem, merely that you can't prove that it won't.


If my answer isn't good enough for you, then don't ask me the question in the first place.


My position is that your given answer is insufficient for the statement. So I asked for clarification on how you arrived at it.


Was my answer insufficient as well?
"
qwave wrote:
"
So each snapshot which is sent once a second contains full gamestate? That seems awful.
And exactly whats your method for determining the delta between states? Such a thing would be one of the most complex formulations ever attempted by mankind. I doubt if every mathematician on earth spent 20 years developing optimizations that it would be feasible. And the server is expected to do it once a second, for each client connected?!


Each snapshot contains the client's actions since the last snapshot (or whatever GGG determines is important).

The delta is definitely the most complex formulation ever attempted by mankind. It involves the subtraction of the new timestamp from the previous timestamp. And subtraction is super difficult.


So your idea of validation equates to if the last snapshot's time stamp - this snapshot's time = ??? then all is good?
You call that security?
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
"
So your idea of validation equates to if the last snapshot's time stamp - this snapshot's time = ??? then all is good?
You call that security?


No, that's how you calculate the delta.
"
SkyCore wrote:
So your idea of validation equates to if the last snapshot's time stamp - this snapshot's time = ??? then all is good?
You call that security?


qwave was being sarcastic, for the explanation of validation see my previous reply.
"
qwave wrote:
"
My position is that your given answer is insufficient for the statement. So I asked for clarification on how you arrived at it.


I arrived at it by being a software architect and understanding how long it takes to crunch numbers.


Do you not understand the question? Is that the problem?

What are you using to determine that a client who already complains about poor performance will not see a further degradation in performance?

It really isn't that complex of a question, I don't see why it is so hard to answer it.

ridiculous.
I pity anyone who thinks you have the faintest idea of what your proposing.
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
SkyCore:

Calculate the delta, use the deterministic seed, perform the simulation, validate the output.


Yeah, it's rocket science for you, I get it. I don't know how to simplify it anymore than this.
Last edited by qwave#5074 on Nov 20, 2013, 10:57:34 AM
"
LogoOnPoE wrote:
"
SkyCore wrote:
"
qwave wrote:


Anyway, if anyone has any constructive questions about the proposal, I am happy to answer them. =)


Precisely how would the server validate snapshots in your current design?


The game is fully deterministic, meaning that with the same seed (seeds) for random numbers and same player input at the same time, the two separate machines running the game should (with exception to calculation discrepancies that Rhys mentioned) arrive at the same result (as mentioned in Rhys's post).

So by knowing what seed(s) the server issued to the client, and having the used actions provided by the client, the server can validate the player action results by applying same seeds for calculations and checking if the results match.

So the server IS running a copy of the game. Something which qwave did not include in his latest design.
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
The server runs a simulation for the delta of the snapshot. You can call it whatever you want. It's running the game to validate that snapshot. This has never changed.
Last edited by qwave#5074 on Nov 20, 2013, 10:59:33 AM
"
qwave wrote:
SkyCore:

Calculate the delta, use the deterministic seed, perform the simulation, validate the output.


Yeah, it's rocket science for you, I get it. I don't know how to simplify it anymore than this.

Where exactly in your latest design did you mention that? You didnt. Yet again you are just throwing things out there only as needed to satiate the immediate needs of the problem at hand.
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

Report Forum Post

Report Account:

Report Type

Additional Info