4 min read
Rupture

Context

Équipe

  • Valentin Lantigny
  • Tawfik Bennani
  • Adrien Schroedel
  • Moi-même

Les projets CASSIOPEE sont des projets qui s’étalent sur une période de 4 à 6 mois en équipe réduite (<5 personnes). Chaque projet est professionnalisant, nous devons satisfaire les demandes d’un client, tenir des réunions d’avancement en moyenne toutes les deux semaines (démarche agile), ce qui exige de nous un investissement permanent et personnel puisqu’il s’ajoute à d’autres cours.

Exigences du projet

De l’établissement du cahier des charges à la livraison du produit, chaque étudiant de l’équipe est tenu de passer environ 200 heures sur le projet.
Les projets Cassiopée ont des natures diverses. Dans notre cas, il s’agissait de livrer un jeu vidéo, réalisé avec le moteur Unreal Engine 5, aux concours Mines-Télécom. Le jeu devait être disponible pour les joueurs en juillet 2024, lors des oraux Mines-Télécom ayant lieu à Télécom SudParis.
Finalement, en plus de la contrainte du moteur de jeu, il nous était demandé de traiter le thème de l’environnement, avec la contrainte de devoir montrer les trois étapes d’une révolution : Ridicule, Dangereuse puis finalement Évidente.
Le jeu ne pouvait durer plus de 15-20 minutes.

Rupture

Rupture est l’aboutissement de nombreuses heures de travail : apprentissage, planification, modélisation, doublage, écriture puis finalement code. J’ai tout de suite voulu faire un jeu narratif, déjà parce que je n’en avais jamais fait, mais surtout parce qu’il me semblait que c’était une bonne solution pour faire passer un message et contrôler le temps de jeu, deux des contraintes qui nous étaient imposées. Est rapidement né Cooker, le robot que nous incarnons dans le jeu.

Le Ridicule, la première des trois phases, était aussi la plus facile à mettre en place. Nous avons de suite imaginé un monde futuriste dépendant bien trop de la technologie pour son propre bien, un monde où l’homme était devenu fainéant à un point ridicule, au point où tout devait être automatisé : le ménage, la cuisine, les achats de nourriture, les trajets, peut-être même les besoins primaires, qui sait…

Vient ensuite la seconde phase, le Danger, ici représenté par une explosion survenue sur un site d’extraction de minerais. Si la catastrophe dans le jeu n’est pas très crédible (on ne sait d’ailleurs pas vraiment en jouant ce qu’il s’est passé), il est assez évident d’imaginer, ou bien même de se remémorer, des catastrophes similaires dans le monde réel. Les besoins technologiques de la population sont difficilement suivis par la production de matières premières.

La troisième phase était la plus difficile à mettre en lumière, et nous avons d’ailleurs passé un certain temps dessus, moi et Valentin, les deux personnes qui s’occupaient du scénario. Je ne dirai pas que je suis pleinement satisfait du scénario, et notamment de sa fin, mais avec les contraintes auxquelles nous étions soumis, il me semble néanmoins que nous avons fait les bons compromis. Ainsi, la dernière phase n’est pleinement compréhensible que lors des derniers mots du scientifique… que je vais vous laisser découvrir en jouant à la démonstration de notre jeu (voir le lien du repo).

Côté technique, Tawfik nous a impressionnés avec ses animations de personnages et ses musiques. Adrien et moi avons beaucoup contribué aux différentes maps du jeu et à leurs mécaniques propres. Valentin a passé de nombreuses heures sur son niveau final, la partie “open world” où notre robot est enfin libre de découvrir le monde. Nous sommes très fiers d’avoir été le groupe, parmi les trois projets Cassiopée sur Unreal Engine, qui a le plus exploité les possibilités du moteur. Bien sûr, le projet était ambitieux, et notre tuteur ne manquait d’ailleurs pas de nous le répéter à chaque réunion. Il est clair qu’il manque encore une centaine d’heures pour obtenir un jeu de qualité proche d’une véritable sortie. Mais cette démonstration montre déjà le travail accompli et nos intentions quant à ce projet, à savoir pousser le plus possible ce que l’on pouvait faire avec les différentes contraintes, et surtout apprendre à les gérer !