Scraft

Unity 2021.3

Concept art par Marion Benoit

Concours Ubisoft 2023

 Jeux complet

UQAC - Hiver 2023

Dans le cadre du concours Ubisoft 2023, j'ai activement participé au développement d'une expérience de jeu complet sur le thème de l'arcade.

Ce projet a été mené dans un groupe de 8 personnes sur Unity sous les contraintes suivantes : 1 mécanique de gravité, une mécanique de création et de destruction lié à l'environnement, 1 leaderboard online, le tout sous le thème Arcade.

Le jeu est un scrolling shooter en 2D qui repose sur la construction évolutive de son vaisseau, le mantra : construisez le vaisseau que vous voulez.

Le jeu a été nommé dans les 4 catégories suivantes : 

Trailer

Le processus

Le projet a été imaginer, développé et affiner en 10 semaines durant la session d'hiver 2023. Nous avons suivi un processus agile classique divisé en 5 sprint de 2 semaines, en nous imposant la contrainte de proposer des builds chaque semaine pour les mentors d'Ubisoft qui nous ont aidé pour le projet.

Le Game Design Document

Lors du premier sprint, nous avons réalisé un GDD. Pour ma part, je me suis concentré sur les contrôles et des prototypages d'idées rapides pour voir leur pertinence.

Concernant les contrôles, j'ai voulu qu'ils soient le plus simple possible pour conserver cet aspect arcade : peu de boutons facile à identifier.

GDD PVE

Mon rôle

Durant le projet, je me suis concentré sur les éléments suivants : 

J'ai activement animé la plupart de nos réunions internes ou avec nos mentors.
J'ai aussi souvent pris les décisions lors des sprints finaux pour optimiser nos ressources et respecter notre deadline serré.


Pour cette gestion, j'ai choisi d'utiliser une page Notion pour y regrouper tous les outils nécessaires pour cette gestion.

Cette approche est très similaire à celle que j'ai déjà utilisé pour d'autre projet.

Quelques images de notre outil de gestion (Notion)

Pour son utilisation, le designer devait créer un prefab représentant une "brique de gameplay". Il associait ensuite sa brique à un scriptable object qui décrit la brique (hauteur, type, difficulté). L'éditeur prenait en compte le lien avec notre Perforce pour éviter d'éditer un fichier verrouillé par un autre membre de l'équipe.

On remplissait ensuite un JSON (via une interface rajouter à l'éditeur) avec les différentes briques. C'est alors ce JSON qui est chargé en début de jeu pour créer le niveau.

Cette approche nous a permis de mixer un level design fixe pour présenter des éléments clés de notre gameplay et un level design plus aléatoire et procédural pour donner du challenge aux meilleurs joueurs.

Les ennemis du jeu voient leur logique reposé principalement sur un behaviour tree.
Ainsi, j'ai élaboré la structure de base de nos ennemis pour pouvoir facilement créer différents ennemis avec une certaine cohérence.

Globalement j'ai : 

En collaboration avec un autre membre de l'équipe, j'ai élaboré l'architecture de base du fonctionnement des armes pour pouvoir facilement créer divers types d'armes et pouvoir afficher de nombreuses balles à l'écran sans soucis de performances.

Globalement j'ai : 

Je me suis chargé du système de score du jeu (en local) et des combos du côté backend.

L'intégration du boss est arrivé tardivement dans le développement (au sprint 4 sur 5). L'approche a été assez différentes que pour les autres ennemis. Le boss fonctionnant principalement grâce à une machine à états finis. Je me suis occupé :

Aperçu

Le jeu est disponible pour PC, navigateur et Android (les versions navigateurs et Android ayant été développé après le concours) sur cette page itch.io

Ci-dessous se trouvant une petite vidéo de gameplay.