From: Ian Jackson Date: Sun, 28 Jun 2020 15:18:04 +0000 (+0100) Subject: wip new, tidying X-Git-Tag: otter-0.2.0~1513 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=9df6bb5448f6332f24c5f99a601e4e70442192f1;p=otter.git wip new, tidying --- diff --git a/NOTES b/PROTOCOL.md similarity index 88% rename from NOTES rename to PROTOCOL.md index 75340394..35ea9b25 100644 --- a/NOTES +++ b/PROTOCOL.md @@ -1,71 +1,5 @@ -PROTOCOL - - -all in context of a piece - - - client server - - <------------------- - some update - piece - gen - your doing ? - -at start of op - note picee.gen = gen - - grab, or move, or something: - -------------------> - grab/move/ungrab - piece - piece.gen - if piece.gen == msg.piece.gen - then set piece.last_client - - if piece.last_client == client - then ok - - otherwise bad - send nothing! a message - must be in the queue already! - - <------------------- - soem update - piece - gen - your doing ? - -if "your doing" -ignore the message, we are up to date, -but set the piece's gen - -otherwise -cancel any drag for the piece -reset the piece state to that specified - - --------------------------------------------------- - -client maintains - for each piece - [ game state ] - gen (last from server) - x, y, held - overall - [ ui state ] - what are we dragging, drag start, click state, etc. - -server maintains - for each piece - gen - client list etc. - --------------------------------------------------- - - -ANALYSIS -======== +CONCURRENT UPDATE PROTOCOL AND ANALYSIS +======================================= (Assumption: our network techniques deliver messages in order in both directions between a server and a client; failure of the communication