Update TODO
[vchess.git] / TODO
diff --git a/TODO b/TODO
index cbe3285..b659552 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,67 +1,92 @@
-1) Finish problems tab
-2) Integrate computer play into rules tab
-3) Retrieve users system from old code
-4) Allow correspondance play (no need for P2P: online moves through the server (which also store them))
-5) Write my-games tab (included current/finished/imported)
-   Use Dexie.js, or anything to store games locally
-5) Write room tab
-   Use this: https://github.com/feross/simple-peer for online games+challenges+chat
-6) Test... and publish
+// https://vchess.club/#/game/46
+// Bug 35eme coup blanc Rx(P)e2, d2 et aussi 18eme coup blanc Rd7, Pxe6
+// --> peut-être lié à prise, ou lié à getFen(), ou inMultimove pas changé car concatène à coup précédent...
+// TODO: also fix moves played on smartphone, annoying shift...
 
-Finish rules translation in Spanish + improve existing ones
-Design: final touch (gain extra space on top, using space on the right)
-Crazyhouse: center reserves, grey if zero available, numbers superimposed
-Promotions: increase pieces sizes, better background.
-Code: use two spaces instead of tabs, everywhere.
-Increase code line length to 100 or more?
-(http://katafrakt.me/2017/09/16/80-characters-line-length-limit/)
-Chat button should be more apparent after game ends (color ?)
-Reinforce security for problems upload (how ?)
+Shako, also known as UniEed Chess (Jean-Louis
+Cazaux, 1990). Board 10x10; extra pieces are
+Elephant (moves one or two squares
+diagonally, may leap intervening square) and
+Cannon (as above); CC on a1/j1 and a10/j10,
+ERNBQKBNRE on ranks 2/9, 10xP on ranks
+3/8. The name means chess in Esperanto.
+(Cazaux)
 
-The mode switch between human/computer/friend (+ problem) is a mess
-(example: finished computer game, ongoing friend game, reload, friend game is unreachable)
+Shogi + Makruk/Thai chess --> see on Pychess
 
-Later:
-Let choice of time control, allow correspondance play, several games at the same time
-==> need to use indexedDB instead of localStorage. Maybe with Dexie https://dexie.org/
-Each user would have a unique identifier stored in the client DB.
-Allow to cancel games (if opponent doesn't connect again)
-Identity would be browser-based: different games on smartphone, home computer, work computer... (why not ?)
-Index might still look the same, and variant page would have another tab "Games"
-==> running, and finished (which can be deleted from local memory)
-(A true analysis mode could be implemented also, to navigate in completed games --> use a button)
-Allow challenging a specific player (by his chosen name)
-But keep the random pairings as main playing way + always playing in ZEN mode,
-except when accepting an individual challenge.
+Interesting:
+Monochrome Chess (Proprietary game,
+Looney Industries; Andrew Looney, 1996).
+Usual men and array but pieces are all of the
+same colour. A man is controlled by the player
+in whose half of the board it stands. Thus after
+e4-e5, the pawn changes sides and reverses
+direction. When you capture (by definition, in
+the opponent’s half) there can be no recapture
+as the piece has changed sides. You may not
+immediately reverse an opponent’s move. The
+king has no royal powers but can castle. The
+men are allocated points and the object is to
+have the most points (in pieces captured) when
+the game ends, which is usually when the
+players agree or when one half of the board is
+empty. Values: King=10, Queen=8, Rook=5,
+Bishop=4, Knight=3, Pawn=1. A related game
+Martian Chess is described in chapter 38.
+(Proprietor’s rule sheet, Variant Chess 39)
 
-style menu : surligner onglet courant
+Chakart :)
+https://www.chessvariants.com/crossover.dir/koopachess.html
 
-Interface :
- - newGame: une modalBox à paramètres, timeControl, type d'adversaire ==> "new Game")
- - friend-->renommé en 'analyse' et devenant un vrai mode analyse (on garde ces trois modes ?)
+Diamond Chess [Rynd] (J. A.
+Porterfield Rynd, 1886)  --> Berolina2 ?
+https://www.chessvariants.com/rules/diamond-chess
 
-problèmes : récupérer 20 ou 50 depuis le serveur, puis les afficher un par un en les analysant directement,
-comme sur le site de ProgramFOX ==> présentation unifiée échiquier avec instructions dessus et soluce cachée dessous
+Bicolour Chess (Gabriel Authier, 1958). v1 et v2 : (Roméo Bédoni, 1958) 
+Kings are subject to check and checkmate by
+own as well as opponent’s pieces. The Q and
+QN are interchanged in the array
+.
+v2: y but a player may capture his
+own men (TODO: only v2?)
 
-==> il faut pouvoir faire "new Interface(variables)" pour lancer une analyse de problème sans repasser par le mode jeu...
+Koth : king of the hill, king cannot move into check, giving check is forbidden (no checkmate).
 
-Importer des parties : nécessite de parser le PGN produit (possible, un peu pénible)
-mais permettrait mode analyse (avec bouton "analyse", comme sur ancien site).
+Berolina Grid Chess, also known as
+Gridolina (originator not noted). A
+combination of Berolina and Grid Chess.
+Better than Grid Chess since Berolina pawns
+cross grid lines more easily. Described in
+World Game Review 10 as the most popular of
+the NOST combination games. (Nost-algia
+150, also Nost-algia 112 ‘not seen’) 
+--> pourquoi pas, mais faudra pouvoir tracer des lignes sur plateau (Ball, Koth, Sittuyin, celle-là, Rococo)
 
-espagnol : jugada ou movimiento ?
-fin de la partida au lieu de final de partida ?
+Contact (quoted by David Silverman, 1971).
+White puts a knight on any square of an empty
+chessboard. Black moves the knight and
+places a marker on the square vacated. Play
+alternates. The knight may only be moved to
+vacant squares. The object is to make the last
+move. The game can also be played with any
+of the other pieces. (Your Move)
 
-Bouton new game ==> human only. Indiquer adversaire (éventuellement), cadence (ou "infini")
-Mode analyse : accessible à tout moment d'une partie (HH, ou computer) terminée.
+https://www.chessvariants.com/diffmove.dir/checkers.html --> move forward (Multhopp)
+in 1974 by Hans Multhopp
+https://www.chessvariants.com/diffmove.dir/checkers.html
 
-Coordonnées sur échiquier: sur cases, à gauche (verticale) ou en bas (horizontale)
+Clockwork Orange Chess (Fergus Duniho,
+1999). https://www.chessvariants.com/other.dir/clockworkorange.html
+implem : pieces code, yellow/red, easy
 
-Import game : en local dans indexedDb, affichage dans "Games --> Imported"
+http://abrobecker.free.fr/chess/fairyblitz.htm#football
+Le gagnant est le premier joueur à marquer un but, càd celui qui arrive à installer une de ses pièces dans les cages adverses: d8,e8 pour les blancs et d1,e1 pour les noirs.
 
-Checkered : si intervention d'un 3eme joueur, initialiser son temps à la moyenne des temps restants des deux autres...
+Recycle1 et Recycle2 (--> celle-là)
+http://abrobecker.free.fr/chess/fairyblitz.htm#deplaceurdevivants
+Philippe Rouzaud, Phénix 151-152, mai 2006): Un camp peut, à la place d'un coup orthodoxe, capturer une de ses pièces et replacer la pièce capturée immédiatement sur l'échiquier. Un roi peut rester en échec durant cette action. Une pièce déplacée sur l'échiquier peut mater. Un pion ne peut pas être déplacé en première ou dernière rangée. Un roi peut déplacer et être déplacé, y compris pour se soustraire à un échec. Le roque ne peut se faire que de manière orthodoxe.
+Rouzaud-Banaddou: 1.Fxb2 (=f5) Dxc7 (=e6) 2.fxe6 dxe6 3.Txb1 (=b5) Dxe7 (=c7) 4.Txb2 (=a3) Dxf7 (=d6) 5.Txg1 (=g5) Dxg7 (=f6) 6.Txf1 (=f7)+ Rxf8 (=h4) 7.Fxb2 (=e8) Rxg7 (=c5) 8.Rxd1 (=f8)+ Rxh8 (=g7) 9.Dxg8+ Txg8 10.Txg8#
 
-Mode contre ordinateur : seulement accessible depuis onglet "Rules" (son principal intérêt)
-
-Hexachess: McCooey et Shafran (deux tailles, randomisation OK)
-http://www.math.bas.bg/~iad/tyalie/shegra/shegrax.html
-http://www.quadibloc.com/chess/ch0401.htm
+http://abrobecker.free.fr/chess/fairyblitz.htm#madrasi
+Madrasi Chess, Abdul J. Karwathar, 1979): Deux pièces de même nature (excepté les rois) qui s'observent, se paralysent mutuellement en perdant tout pouvoir (déplacement, prise, donner échec ou mat) sauf celui de paralyser une autre pièce.
+1.e4 e5 2.Cf3 Cc6 3.Fc4 Fc5 4.Cxe5 d6 5.d4 (5.Fxf7+ Rxf7 est légal; ou 5.Dh5 Fe6 immobilisant le Fc4) 5...Fxd4 6.Dxd4 dxe5 et la Dame blanche est perdue.