Static Chess, un jeu d’échecs statique
(val.town)- Static Chess est une expérimentation de jeu d’échecs web statique dont tous les écrans sont créés uniquement avec HTML et CSS, et où chaque coup se joue en cliquant sur un lien
- Après qu’un joueur a joué son coup, il envoie le lien généré à un ami ; l’adversaire renvoie ensuite à son tour un lien pour poursuivre la partie
- Avec une interface brutaliste dépouillée des animations et des interactions fluides, l’expérience se concentre sur l’échiquier et le choix des coups eux-mêmes
- Les fonctionnalités sont encore très limitées et certaines parties peuvent être cassées, ce qui laisse des contraintes pour une vraie partie
- Le projet laisse ouvertes plusieurs pistes d’extension : prise en charge du vrai gameplay, interface simple pour parties longues, ou encore adversaire IA statique
Des échecs statiques qui avancent par liens
- Static Chess est un site d’échecs qui vise un « plain, brutalist, no bloat chess »
- L’écran est composé uniquement avec HTML et CSS, et les coups d’échecs s’exécutent par clic sur un lien
- La partie se poursuit par échange de liens
- Un joueur joue son coup puis envoie le lien à un ami
- Son ami joue un coup depuis ce lien, puis renvoie un nouveau lien pour passer au tour suivant
- Les animations et interactions fluides sont volontairement exclues
- Le site pose aussi la question de savoir si, si Google l’indexe, il finira par calculer tous les coups d’échecs possibles
Limites actuelles et idées d’extension
- Les fonctionnalités sont encore limitées, et certaines parties peuvent être cassées
- L’auteur demande qu’on lui signale les bugs découverts
- Le projet s’inspire d’une discussion HN sur un site contenant tous les états possibles d’une partie de tic-tac-toe
- Il est prévu de l’étendre pour prendre en charge un vrai gameplay
- Il pourrait évoluer vers une interface simple pour les parties longues entre amis
- L’ajout d’une fonctionnalité permettant de jouer contre une IA statique pourrait aussi être intéressant
- Si vous souhaitez une fonctionnalité, vous pouvez proposer le changement via une PR
1 commentaires
Commentaires Hacker News
En ajoutant une FEN à l’URL, on peut aussi jouer à Chess960 (Fischer Random Chess) ou à d’autres variantes avec « position de départ personnalisée ». Il suffit de remplacer les espaces par des underscores
Ex. : https://chess.maxmcd.com/bbnqrknr/pppppppp/8/8/8/8/PPPPPPPP/...
Je ne sais pas trop si le premier paragraphe, « des échecs purs, bruts et sans fioritures », présente cela comme un avantage ou un inconvénient de cette implémentation
Il y a une différence entre promouvoir une implémentation atypique pour explorer ce qui est possible, et décrire un logiciel construit avec les technologies appropriées comme de la bloat, avec des animations ridicules et des interactions fluides qui gênent le jeu
Le deuxième paragraphe, qui dit que les fonctionnalités sont limitées et que cela peut être cassé, met encore plus en évidence les limites de cette implémentation. Bien sûr, c’était peut-être entièrement satirique et je suis tombé dans le panneau. Cela reste une implémentation astucieuse et bien réalisée
Les limitations fonctionnelles semblent tout de même concerner d’autres fonctionnalités que celles qualifiées de bloat
L’idée de jouer via des liens sans état me plaît pas mal, et la « joliesse » des animations et des interactions ne me semble pas forcément être un gain net, du moins pour moi
Les « bonnes technologies » dépendent fortement de l’expérience utilisateur que l’on veut construire. Pour cet objectif, HTML et CSS étaient les bonnes technologies, de la même manière qu’un autre ensemble de technologies serait adapté aux objectifs UX d’un site avec davantage de fonctionnalités
Techniquement, ce n’est pas vraiment un site statique, si ? Le backend rend dynamiquement la page à chaque requête
Il n’y a probablement pas 999999919291293923 pages pré-rendues quelque part sur le serveur
En plus, le site sert très bien des positions totalement illégales comme celle-ci : https://chess.maxmcd.com/rnbqkbnr/qqqqqqqq/8/8/8/8/QQQQQQQQ/...
[1] https://github.com/tromp/ChessPositionRanking
La détection des coups légaux est sympa, mais il ne semble pas reconnaître le mat ?
https://chess.maxmcd.com/r1b1kRnr/p1ppB2p/n2P2p1/8/7P/1p6/PP...
Il ne devrait pas l’indiquer comme mat ?
Idéalement, chaque page devrait contenir une chaîne résumant tous les états précédents de l’échiquier ayant mené à cette position. On pourrait alors rechercher l’état actuel du plateau avec « checkmate white » pour trouver toutes les façons de gagner depuis une position donnée
Pour faire de Google l’oracle ultime des échecs, il ne resterait plus qu’à convaincre l’adversaire de jouer exactement les coups trouvés
Je m’attendais à une variante des échecs où aucune pièce ne peut bouger
Beau travail. Ce serait intéressant de le mettre derrière un CDN comme Cloudflare et de voir à quoi ressemble le taux de cache hit
https://lichess.org/analysis#explorer
Je pense que ce serait plus proche de la base de données Lichess, assez différente de la base Masters. Par exemple, dans Masters, 46 % des réponses à e4 sont c5, alors que sur Lichess, c5 ne représente que 19 %
https://chess.maxmcd.com/rnbqk3/pppp2pB/2P1p3/1P1P2Bp/3n4/b2...
Très cool, je suis allé jusqu’au bout et j’ai même obtenu un mat
J’avais moi aussi créé une page d’échecs statique il y a quelque temps, et j’y avais ajouté une connexion P2P avec WebRTC pour pouvoir jouer avec un ami
La promotion du pion est verrouillée sur la dame. Ce serait bien de prendre en charge les autres promotions aussi : https://www.chess.com/forum/view/game-showcase/checkmate-by-...
Très cool. En plus de la FEN, ce serait bien d’avoir aussi l’historique des coups, et il pourrait probablement être placé dans le fragment
Ex. : https://chess.maxmcd.com/rnbqkbnr/ppp1pppp/8/3p4/3P1B2/8/PPP...