La Code Game Jam est une compétition de création de jeux vidéo à destination d'étudiants en développement informatique organisée par Antoine Chollet, Enseignant Chercher du BUT Informatique Montpellier Sète.
Les participants ont alors 30 heures pour pouvoir développer un petit jeu vidéo pour lequel ils ont carte blanche autant d’un point de vue technique (langage de programmation, logiciels utilisés, format du jeu) que graphique (moteur de jeu, boîtes à outils).
Thème de la 8ème Édition
Cette année le thème de la CGJ était : Légendes Éthérées
Outils et langages utilisés
Unity et le C#.
Notre Projet
Notre idée
Shift est un jeu platformer 2D se jouant entre deux mondes liés l'un à l'autre.
L'un est un monde "normal" qui a été impacté par un manque d'éther et l'autre est un monde d'éther animé par cette énergie et lumière.
Les deux mondes sont différenciés par leur ambiance :
Mais aussi par leurs mécaniques :
Dans le monde normal, la vitesse y est normale, on peut sauter et dash.
Dans le monde d'éther, la gravité et vitesse sont différentes, et il y a des endroits "concentrés d'éther" permettant de sauter indéfiniment lorsqu'on est dedans.
Mise en Place
L'équipe était divisée en trois parties:
Deux personnes s'occupaient des graphismes et du level design.
Deux autres s'occupaient des menus et de la cinématique de début.
Une coéquipière et moi, nous nous occupions de coder le jeu et ses mécaniques.
Le développement
Pour ma part, je me suis occupé de :
Coder la base de saut et déplacements (changés par la suite par un autre membre de l'équipe)
Une mécanique qui finalement n'a pas été mise dans le jeu car elle rendait le level design plus compliqué
Les animations du joueur
La mécanique manquante
Cette mécanique permettait au joueur de lancer des boules d'éther lumineuses et de détruire une tuile de la map.
Les projectiles sont des préfabriqués donc quand un joueur appuie sur le bouton pour lancer une boule créer un préfab qui s'autodétruit lorsqu'il touche une tuile.
Les animations
Pour les animations, j'ai simplement utilisé l'outil animator de Unity.
La seule difficulté était de rendre les changements d'assets entre les mondes tout en gardant la même animation.
Si le joueur change de monde pendant qu'il court alors il doit encore avoir l'animation de course dans l'autre monde.
Ce que le projet m'a apporté
Comme toute game jam, ce projet m'a permis de gérer mon stress. J'ai su être efficace mais aussi prendre des pauses lorsqu'il fallait.
J'ai aussi appris à gérer mes différents sur certaines mécaniques ou choses à faire et surtout comment les faire avec le reste de mon sujet.
Je suis fière de ce projet qui nous a permis d'avoir la 1ère place de la CodeGameJam 2024.
Niveau 1: AC4: Faire des essais et évaluer leurs résultats en regard des spécifications
Tout au long du projet, nous avons fait des essais afin que les différentes mécaniques soient les mieux possibles. Par exemple, suite à plusieurs essais, nous avons décidé de modifier la mécanique de saut afin d'offrir une meilleure expérience de jeu au joueur.
Niveau 2: AC1: Élaborer et implémenter les spécifications fonctionnelles et non fonctionnelles à partir des exigences
Comme lors de l'édition précédente, nous avons essayé de faire correspondre le gameplay, l'ambiance et l'histoire du jeu au thème donné le mieux possible.
Compétence n°5
Niveau 1: AC1: Appréhender les besoins du client et de l’utilisateur
Sur ce projet, il fallait en effet respecter le thème tout en faisant un jeu plaisant et ludique aux différents utilisateurs. C'est d'aillerus pour cela que nous avons mis un point d'honneur sur les mécaniques, l'ambiance et le level design du projet.
Niveau 2: AC4: Définir et mettre en œuvre une démarche de suivi de projet
Lors de cette édition, nous nous regroupions souvent afin de voir l'avancée du projet.
Compétence n°6
Niveau 2: AC3: Mobiliser les compétences interpersonnelles pour intégrer une équipe informatique
Cette édition, j'ai su mobiliser mes compétences interpersonnelles afin de ne pas craquer sous la pression et le stress et de communiquer le mieux possible avec mon équipe afin d'avoir le meilleur projet possible.