S C R O L L

Project Bloom

Prototype | FPS | Projet d'équipe

Jouer

Résumé

  • Rôles : Programmeuse CCC, Programmeuse d'IA

  • Moteur de jeu : Unreal Engine 5

  • Date : Hiver 2023

Project Bloom est un prototype de jeu vidéo développé durant la session d'hiver 2023. En équipe, nous avions pour mission de créer un niveau tutoriel inspiré du jeu Doom Eternal à l'aide d'Unreal Engine 5.0. Ainsi, Project Bloom est un first-person shooter (FPS) dans lequel le joueur incarne un militaire intergalactique qui doit éliminer des mutations abyssales dans une station spatiale abandonnée.

Au cours de ce projet, j'ai pu développé mes compétences de programmation en Blueprint en travaillant principalement sur les mécaniques du personnage-joueur. J'ai aussi développé une intelligence artificielle d'ennemi aérien, et contribué à l'intégration d'interfaces et d'options de jouabilité.

Système de grappin

Dans le but d'augmenter la vitesse de déplacement et la rapidité du jeu, j'ai développé un système de grappin ayant différents états pour permettre de déplacer le joueur ou tirer un objet en fonction du type d'acteur ciblé. De plus, afin de garder la mobilité rapide, j'ai développé un système d'accélération et de déccélération de la vélocité du joueur en fonction de la distance parcourue avec son grappin.

Grappin comme méthode de déplacement

Grappin pour attirer des objets vers le joueur

Système de prise de rebord

Afin de garder le momentum du mouvement du joueur, j'ai développé un système de prise de rebord. Ce système détecte d'abord si le joueur se trouve au rebord d'une plateforme ou d'un mur, pour ensuite propulser le joueur au-dessus de l'obstacle.

Détection de rebord et propulsion du joueur

Système d'exécutions

Pour permettre au joueur de se soigner ou d'obtenir des munitions, j'ai développé le système d'exécution des ennemis. Il y a deux types d'exécution : celui de munition lié à un délai d'utilisation et celui de soin utilisable uniquement contre les ennemis faibles en vie.

Lorsque l'abilité est exécutée contre un ennemi à portée, le joueur est déplacé vers celui-ci avant d'infliger des dégâts. Lors de la mort de l'ennemi, des ressources sont instanciées en fonction du type d'exécution utilisé.

Comportement d'IA

Afin d'ajouter de la variété de contenu, j'ai développé le comportement d'un ennemi aérien. Lorsque le joueur est détecté, l'ennemi flotte directement vers le personnage, tout en se téléportant de droite à gauche selon un délai régulier pour augmenter la difficulté de l'affrontement. Lorsque le joueur se situe dans la portée d'attaque de l'ennemi, celui dernier propulse un projectile vers la position du joueur.

Behavior tree

Arbre de comportement

Affordances et accessibilité

Afin d'ajouter des affordances, j'ai développé un système de prompt affichant un widget éditable pour inciter le joueur à faire une action spécifique. Aussi, j'ai contribué au développement d'options pour l'accessibilité. Par exemple, je me suis assurée d'intégrer un modificateur pour l'intensité des mouvements de caméra afin d'éviter les sensations de mal de transport des joueurs et des membres de l'équipe plus sensibles à certains effets d'occlusion.

Exemple de prompt

Exemple de prompt

Exemple de prompt

Exemple de prompt