← Travaux Étude de cas · Projet universitaire en équipe · 2025

Mad Maze

Une application qui génère des labyrinthes parfaits et aléatoires, avec plusieurs modes de jeu et un univers inspiré de Mad Max.

Voir le code sur GitHub

Cadre
Projet universitaire, 2e année de BUT — 2025
Équipe
4 étudiants
Rôle
Développeur Java / JavaFX : interface et modes de jeu
Stack
Java, JavaFX, MVC, SOLID

Contexte

Concevoir une application qui génère des labyrinthes parfaits et aléatoires selon les paramètres choisis par l'utilisateur, avec des modes de jeu complets : libre, progression et bonus.

J'ai surtout travaillé sur l'interface graphique, inspirée de Mad Max, et sur la logique des modes de jeu.

Ce que j'ai fait

  • Génération procédurale

    Des algorithmes qui créent des labyrinthes parfaits ou aléatoires.

  • Interface JavaFX

    Des écrans interactifs pour chaque mode de jeu.

  • Architecture

    Le modèle MVC et les principes SOLID, appliqués strictement.

Compétences transverses

  • Autonomie

    Recherche et montée en compétences sur les graphes et les labyrinthes.

  • Créativité

    La direction artistique d'un univers post-apocalyptique cohérent.

  • Organisation

    Découper les tâches complexes pour ne pas se bloquer mutuellement.

Débrief

Ce que j'ai appris

Le plus dur a été de garder un code propre en respectant MVC. Il était tentant de mélanger la génération du labyrinthe avec l'affichage JavaFX. Face aux problèmes d'évolutivité, nous avons refactorisé une partie du code pour bien séparer les vues des contrôleurs.

Ce que je ferais différemment

Je partirais en TDD avec JUnit dès le début. Des tests automatisés auraient vérifié à chaque modification que nos algorithmes ne génèrent jamais de labyrinthe impossible à résoudre.