A few bug fixes
[vchess.git] / TODO
diff --git a/TODO b/TODO
index 49091c1..8485984 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,30 +1,34 @@
-# Functionality:
-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).
-
-# Misc:
-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
-
-# 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 : non-symmetric
-Sym8pieces : symmetric (960)
-
-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, Cannibal (force captures)
-
-S-chess https://en.wikipedia.org/wiki/Seirawan_chess
+PROBABLY WON'T FIX:
+Embedded rules language not updated when language is set (in Analyse, Game and Problems)
+If new live game starts in background, "new game" notify OK but not first move.
+
+"FreeBoard", re-using a lot of Board logic, but with SVG (empty) board + SVG (empty) reserves.
+Will be used for variants with custom non-rectangular board (Hex, at least)
+Or, with other board shapes (see greenchess.net for example)
+
+Merge Orda + Empire + Hoppelpoppel + Newzealand getSlideNJumpMoves() into base_rules.js
+=> allow to simplify getPawnMoves in RoyalRace (and some getXMoves in Shatranj)
+
+Option "free placement" in Hidden
+
+#New variants:
+Chessplode
+Tablut
+
+https://brainking.com/fr/GameRules?tp=128 Massacre Chess
+
+PizzaKings https://www.chessvariants.com/unequal.dir/pizza-kings.html
+https://en.m.wikipedia.org/wiki/Chess_with_different_armies#Pizza_Kings%5B11%5D_(John_Lawson)
+
+Coin Chess
+https://msoworld.com/product/chess-variants/
+Background: Unknown inventor
+Rules:
+Normal rules apply except for the introduction of a coin (or counter)
+Black starts by placing the coin on any unoccupied square. Play then continues with players alternating turns as in normal chess.
+On their turn, a player makes any legal move but may not move onto the square where the coin has been placed. The player may move over (but not onto), the coin square.
+The player ends their turn by leaving the coin where it stands or moving the coin to a different unoccupied square.
+The coin can never be placed on an occupied square, and therefore cannot be used to protect a piece from capture
+A player wins by checkmating the opponent. Note that the coin can be used to remove escape squares from the king.
+
+https://www.chessvariants.com/other.dir/nemoroth.html :-)