Editing Miniature/Development/Phase 2.0: Real-time P2P Miniature/P2P-Protocol

Warning: You are not logged in. Your IP address will be recorded in this page's edit history.
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 1: Line 1:
-
[[Category:Miniature]]
+
Protocol draft for Miniature-P2P
-
 
+
-
Protocol draft for Miniature-P2P
+
  ================================
  ================================
   
   
-
  We will assume that P1 and P2 have already found each other, use a Miniature
+
  We will assume that P1 and P2 have already found each other and are able to
-
client** and are able to chat ("match nick" in FICS).
+
chat ("match nick" in FICS).
 +
 +
>>jukey>>
 +
We also should assume that both players are using Miniature. One
 +
example what happens if not is described in one of my comments below
 +
(automatc/manual acceptance of games).
 +
<<jukey<<
   
   
-
(**) For now. We will want to lift this restriction and offer Miniature/Telepathy-Chess
 
-
plugins for other applications (in the far distant future, that is).
 
-
 
-
 
  A Chat
  A Chat
  ======
  ======
Line 23: Line 23:
  * This command is the *only* one that will work in every situation, without
  * This command is the *only* one that will work in every situation, without
   exception. It does not change the current game state.
   exception. It does not change the current game state.
-
 
+
-
 
+
  B Game mode negotiation
  B Game mode negotiation
  =======================
  =======================
Line 34: Line 34:
   to send/parse this:
   to send/parse this:
   
   
-
   "seek [time inc] [rated|unrated] [white|black|any]"
+
   "seek [time inc] [rated|unrated] [white|black]"
   
   
-
  * If the seeker offers "any" colors it means he his indifferent wrt. color choice.
+
  >>jukey>> It makes sense to make the [white|black] value optional. If it's not
-
  Such games the game can be accepted by people who had choosen black, white or
+
available the game can be accepted by people who had choosen black, white or
-
  any.
+
nothing. I personally like the possibility to play "random colored" games.
 +
<<jukey<<
   
   
  * Examples:
  * Examples:
Line 44: Line 45:
   "seek 5 0 rated white": same as above,
   "seek 5 0 rated white": same as above,
   "seek 2 10 u b":        2 minutes, 10s incr, unrated, seeker wants black
   "seek 2 10 u b":        2 minutes, 10s incr, unrated, seeker wants black
-
   "seek 2 12 r a": 2 minutes, 12s incr, rated, seeker wants black or white
+
>>jukey>>
 +
   "seek 2 12 r": 2 minutes, 12s incr, rated, seeker wants black or white
 +
<<jukey<<
   
   
   
   
Line 58: Line 61:
       B P1 ignores seek: → 1
       B P1 ignores seek: → 1
   2 game starts (http://www.freechess.org/Help/HelpFiles/play.html)
   2 game starts (http://www.freechess.org/Help/HelpFiles/play.html)
-
 
-
* A seek is accepted by sending the same seek back (with the exception of color
 
-
  choosing, where "any" always matches).
 
   
   
  >>jukey>>
  >>jukey>>
Line 83: Line 83:
   2 game starts (http://www.freechess.org/Help/HelpFiles/play.html)
   2 game starts (http://www.freechess.org/Help/HelpFiles/play.html)
   3 P1 is shown as not ready to play
   3 P1 is shown as not ready to play
-
>>mikhas>>
 
-
telepathy has the concept of channels and resources. one channel would be the
 
-
one of available players, and you would probably set your availibility much like in
 
-
normal jabber chats if I understood that part correctly.
 
-
<<mikhas<<
 
  <<jukey<<  
  <<jukey<<  
-
 
+
-
 
+
-
  C Moves
+
C Moves
  =======
  =======
   
   
Line 117: Line 112:
  Maybe the client also should not be able to send a request if it is
  Maybe the client also should not be able to send a request if it is
  the opponents move.
  the opponents move.
-
>>mikhas>>
 
-
Not really needed, and one should not rely on that because of the inherent raciness.
 
-
It is better to mostly define the protocol from the "what data should I accept in
 
-
which state" point of view.
 
-
<<mikhas<<
 
  <<jukey<<
  <<jukey<<
-
 
+
-
 
+
  D Takeback
  D Takeback
  ==========
  ==========
Line 150: Line 139:
   
   
  * A takeback request can be simply ignored without further actions.
  * A takeback request can be simply ignored without further actions.
-
 
+
-
 
+
  E Draw
  E Draw
  ======
  ======
Line 168: Line 157:
     turn, also, same conflict resolution as in takeback: draw confirmation wins
     turn, also, same conflict resolution as in takeback: draw confirmation wins
     over P1's move, and P2 is free to ignore the move).
     over P1's move, and P2 is free to ignore the move).
-
 
+
-
 
+
  F Resign
  F Resign
  ========
  ========
Line 176: Line 165:
  * Players can resign at any time, I guess? No confirmation by other player
  * Players can resign at any time, I guess? No confirmation by other player
   needed, game ends.
   needed, game ends.
-
 
+
-
 
+
  G Adjourn
  G Adjourn
  =========
  =========

Learn more about Contributing to the wiki.


Please note that all contributions to maemo.org wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see maemo.org wiki:Copyrights for details). Do not submit copyrighted work without permission!


Cancel | Editing help (opens in new window)