Computer mode in rules section almost OK
[vchess.git] / _tmp / TODO
diff --git a/_tmp/TODO b/_tmp/TODO
new file mode 100644 (file)
index 0000000..cb4b8a9
--- /dev/null
+++ b/_tmp/TODO
@@ -0,0 +1,70 @@
+tell opponent that I got the move, for him to start timer (and lose...)
+  --> no, not needed and impossible if everybody is offline
+       ==> just store this time locally (cheating possible but...)
+board2, board3, board4
+VariantRules2, 3 et 4 aussi
+fetch challenges and corr games from server at startup (room)
+but forbid anonymous to start corr games or accept challenges
+
+Dans variant page, "mes parties" peut toujours contenir corr + importées (deux onglets)
+En fin de partie (observée ou non), bouton "import game" en + de "download game" ==> directement dans indexedDB
+--> sursis de 7 jours pour les parties par correspondance, qui sont encore chargées depuis le serveur
+
+mat en 2 échiqueté : brnkr3/pppp1p1p/4ps2/8/2P2P2/P1qP4/2c1s1PP/R1K5
+(Bb3+ Kb1 Ba2#)
+
+// TODO: decodeURIComponent() for GET/DELETE parameters
+
+2) Integrate computer play into rules tab
+3) Allow correspondance play (no need for P2P: online moves through the server (which also store them))
+4) 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
+
+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 ?)
+
+Later:
+Let choice of time control, allow correspondance play, several corr 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)
+Live games storage would be browser-based: different games on smartphone, home computer, work computer... (why not ?)
+==> (at most 1) running, and finished (which can be deleted from local memory)
+Allow challenging a specific player (by his chosen name)
+But keep the random pairings as main playing way + always playing in ZEN mode
+
+style menu : surligner onglet courant
+
+Interface :
+ - newGame: une modalBox à paramètres, timeControl, type d'adversaire ==> "new Game")
+
+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).
+
+espagnol : jugada ou movimiento ?
+fin de la partida au lieu de final de partida ?
+
+Bouton new game ==> human only. Indiquer adversaire (éventuellement), cadence (ou "infini")
+Mode analyse : accessible à tout moment d'une partie (HH, ou computer) terminée + bouton "analyze from here" (sur parties observées)
+
+Coordonnées sur échiquier: sur cases, à gauche (verticale) ou en bas (horizontale)
+
+Import game : en local dans indexedDb, affichage dans "Games --> Imported"
+
+Checkered : si intervention d'un 3eme joueur, initialiser son temps à la moyenne des temps restants des deux autres... ?
+
+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