Update TODO
[vchess.git] / TODO
diff --git a/TODO b/TODO
index 0ab079d..049e058 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,19 +1,52 @@
-Finish rules translation in Spanish
+# Enhancements:
+On Game page "mconnect" events =>
+  send lastate to them (because they have the game infos) or just "your turn" - if their turn
+  remember them to send next "newmove" (or just "it's your turn") later - if not their turn
+  (=> listen for "mdisconnect" as well, and gameover, and newgame)
+From MyGames page: send "mconnect" to all online players (me included: potential multi-tabs)
+  When quit, send mdisconnect (relayed by server if no other MyGames tab).
 
-Design: final touch (gain extra space on top, using space on the right)
-Crazyhouse: center reserves, grey if zero available, numbers superimposed
+Rematch button (change colors, re-apply randomness params (which should be saved somehow somewhere))
+  --> need a bit more duplicated logic: in Game page, listen for newgame, and add a "launchGame" function
+Will need a 'rematch' field in Game on server
 
-Bug MarseilleRules turn issue in computer game (last move is wrong)
+Put reserve pieces above and below the board. Center them.
+Show count of remaining units as a red digit printed on the piece
+(can it reach 10? theoretically yes... but then maybe we can just show "0" ?)
+Grey "disabled" style for reserve pieces if none available.
 
-[Site "vchess.club"]
-[Variant "Marseille"]
-[Date "2018-12-26"]
-[White "Myself"]
-[Black "Computer"]
-[FenStart "nrqkbrnb/pppppppp/8/8/8/8/PPPPPPPP/RKQBNRBN"]
-[Fen "1rq3nb/1pk1p1p1/1Np1p2p/p7/8/2P5/PP2P1PP/RK1B2B1 w1 1000 -"]
-[Result "0-1"]
+# New variants
+8-pieces https://www.youtube.com/watch?v=XZ8K02Da7Ps&list=PLRyjH8DPuzTBiym6lA0r84P8N0HnTtZyN&index=6&t=0s
+https://www.chessvariants.com/rules/8-piece-chess "Eightpieces"
 
-1.f4 a5,h6 2.d3,c3 c6,Kc7 3.Qe3,Qe5 d6,dxe5 4.fxe5,e6 fxe6,Rxf1 5.Ng3,Nxf1 Nb6,Bg6 6.Nd2,Ne4 Bxe4,Bxd3 7.Nxd3,Nc5 Na4,Nxb6
+"Capture" Chess (idea of opperwezen, maybe not new): captures are forced,
+but the goal is still to checkmate (not lose all material).
 
-1.f2f4 a7a5,h7h6 2.d2d3,c2c3 c7c6,d8c7 3.c1e3,e3e5 d7d6,d6e5 4.f4e5,e5e6 f7e6,f8f1 5.h1g3,g3f1 a8b6,e8g6 6.f1d2,d2e4 g6e4,e4d3 7.e1d3,d3c5 c5a4,a4b6
+Cannibal Chess with forced captures.
+
+Knightrelay: implement "official" version as Knightrelay v1
+
+Antiking: implement v1 (deterministic) https://www.chessvariants.com/diffobjective.dir/anti-king-chess.html
+
+Generator vatiant, called "Matrix" ?
+Peces on first rank never move but generate new pieces. Pawn don't generate.
+A generator captured and replaced by a similar piece does not generate.
+King does not generate. No castling. En passant possible?
+Goal is still checkmate.
+
+Take(a)n(d)make : if capture a piece, take its power for the last of the turn and make a move like it.
+If a pawn taken: direction of the capturer.
+
++ Maxima, Interweave, Roccoco, Dynamo, Synchrone
+
+S-chess https://en.wikipedia.org/wiki/Seirawan_chess
+
+"Ball" Chess: 9x9 board, ball on center square. 2 queens ?
+To take the ball when it's free you need to capture it.
+To take the ball when it's used, u need to take the piece.
+Goal: bring ball to final rank.
+Possibles passes : soit à une pièce, soit sur une case.
+  --> remplace un déplacement de pièce. Par exemple pion a2 passe à cavalier a4 = 1 coup.
+  --> selon le mode de déplacement standard (donc tout droit pour les pions)
+Pas de notion d'échec ou de mat (?)
+Si une pièce est mat elle donne le ballon (?)