https://github.com/naereen/love-2d-tiny-chess-game
Un petit jeu d'échec écrit en Lua avec le framework Löve2D
https://github.com/naereen/love-2d-tiny-chess-game
chess-game love2d-game lua-game web-game
Last synced: about 1 year ago
JSON representation
Un petit jeu d'échec écrit en Lua avec le framework Löve2D
- Host: GitHub
- URL: https://github.com/naereen/love-2d-tiny-chess-game
- Owner: Naereen
- License: mit
- Created: 2023-03-22T15:37:12.000Z (about 3 years ago)
- Default Branch: master
- Last Pushed: 2023-04-12T17:03:18.000Z (about 3 years ago)
- Last Synced: 2025-02-05T13:34:03.130Z (over 1 year ago)
- Topics: chess-game, love2d-game, lua-game, web-game
- Language: Lua
- Homepage: https://Naereen.GitHub.io/Love-2D-tiny-Chess-game/www/
- Size: 3.73 MB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Love-2D-tiny-Chess-game
Un petit jeu d'échec écrit en Lua avec le framework Löve2D ().
Ce mini projet m'a permis de progresser en Lua et en Löve2D, dans le cadre des ateliers de programmation que j'anime au printemps 2023 à la Ludothèque et au Fablab de Briançon (voir [cette page](https://github.com/aucoindujeu/codeclub)).
=> Jouez ici : en dézoomant pour voir tout l'échiquier. Ce jeu ne marche pas encore sur mobile, il faut utiliser une souris avec clic gauche et droit.
## Avancement du mini projet
- [x] Première architecture avec des classes pour les pièces ;
- [x] Affichage du plateau ;

- [x] Calcul des coups possibles pour chaque type de pièces ;
- [x] Sélection de la pièce à jouer, et de la case de destination ;
- [x] Pouvoir manger une pièce adverse, compter +1 au score, et passer au joueur adverse ;
- [x] Alternance joueur blanc, joueur noir, etc. (machine à état basique) ;
- [x] Jeu infini, jusqu'à ce qu'un Roi ait été pris ;
- [x] l'interface graphique montre de façon très basique l'alternance des joueurs ;
- [x] Faire une version web, avec [`love.js`](https://github.com/Davidobot/love.js), et [publier la page web ici](https://naereen.github.io/Love-2D-tiny-Chess-game/www/) ;
- [x] Le plateau affiche les coordonnées sous forme A..H x 1..8 sur les côtés du plateau ;
- [ ] TODO: #1 faire en sorte que le joueur actif ne puisse bouger que ses pièces ;
- [ ] TODO: #2 quitter joliment, avec un message à l'écran, mais pour l'instant j'ai eu la flemme (+ je sais pas trop comment faire ça proprement) ;

Et après, je veux essayer ça :
- [ ] Connecter le joueur noir à une API en ligne de commande d'un bon solveur d'échec, par exemple d'abord [sunfish.lua](https://github.com/soumith/sunfish.lua) puis le champion [stockfish](https://stockfishchess.org/).
* Pour commencer, on peut se contenter d'afficher à gauche du plateau une suggestion de coup à jouer, et laisser le joueur humain placer ce coup à la souris.
## Ce que je ne ferai pas tout seul (car j'ai pas envie)
Mais on peut essayer de le faire ensemble durant un des ateliers de programmation du mercredi après-midi !
- [ ] [La promotion des pions ?](https://fr.wikipedia.org/wiki/Promotion_(%C3%A9checs)) ;
- [ ] [Prises en passant](https://fr.wikipedia.org/wiki/Prise_en_passant) ;
- [ ] [Les petit et grand roques](https://fr.wikipedia.org/wiki/Roque_(%C3%A9checs)) ;
- [ ] Une intelligence artificielle faite maison ;
## License ?
[MIT Licensed](LICENSE)
© Lilian Besson (Naereen), 2023