ELCa11 - Projet : jeu du 2048¶
Objectif¶
Développer en binôme, avec Qt et QML, une réplique fonctionnelle du jeu 2048 (sans publicité, bien sûr).
Pour les modalités générales (livrables, critères d’évaluation, conseils), voir le readme du projet.

Règles du jeu¶
Le jeu se joue sur un damier de 4 × 4 cases. Chaque case contient une tesselle portant un nombre puissance de 2 (2, 4, 8, …, 2048 et au-delà), ou bien est vide.
- Une partie se joue uniquement avec les 4 flèches de direction (
↑,↓,←,→). - L’appui sur une flèche fait glisser toutes les tesselles dans la direction correspondante, jusqu’à ce qu’elles soient bloquées par un bord ou par une autre tesselle.
- Deux tesselles de même valeur qui se rencontrent fusionnent en une tesselle valant le double (par exemple
2 + 2 = 4,4 + 4 = 8, …). Une tesselle ne peut fusionner qu’une fois par tour. - Après chaque déplacement, une nouvelle tesselle apparaît sur une case vide tirée au hasard. Sa valeur est
2dans 90 % des cas,4dans 10 % des cas. - La partie est gagnée quand une tesselle atteint la valeur
2048(la partie peut continuer si le joueur le souhaite). - La partie est perdue quand le damier est plein et qu’aucun mouvement ne permet plus aucune fusion.
Fonctionnalités minimales attendues¶
- [ ] Affichage de la grille
4 × 4avec les tesselles courantes. - [ ] Prise en compte des 4 flèches du clavier pour déclencher les déplacements/fusions.
- [ ] Apparition aléatoire des nouvelles tesselles après chaque coup (probabilités
2/4à respecter). - [ ] Affichage du score courant (somme des valeurs fusionnées au cours de la partie).
- [ ] Détection et affichage de la fin de partie (victoire à
2048, défaite si plus aucun coup possible). - [ ] Bouton ou raccourci pour démarrer une nouvelle partie.
Extensions possibles¶
Une fois les fonctionnalités minimales en place, voici des extensions possibles, du plus simple au plus ambitieux :
- Personnalisation visuelle : menu pour changer la police d’affichage des chiffres, ou le jeu de couleur des tesselles.
- Taille du damier paramétrable : permettre
5 × 5,6 × 6, etc., avec adaptation automatique de l’interface. - Sauvegarde / chargement d’une partie en cours sur disque (format texte au choix).
-
Mode pédagogique avec marche-arrière : autoriser le joueur à revenir sur ses coups précédents et à les rejouer autrement. Deux variantes :
- revenir à un état antérieur, en oubliant tous les coups postérieurs ;
- replayer la suite des coups exactement comme ils avaient été joués.
Cette fonctionnalité peut s’appliquer à une partie en cours ou à une partie sauvegardée. C’est l’extension la plus ambitieuse — elle implique de structurer correctement l’historique des états.
Toute autre originalité ou amélioration sera appréciée à sa juste valeur.