ALKA 


Multiplayer first person shooter 

Alka est un jeu en ligne où 4 joueurs, incarnant des drônes héroiques, doivent coopérer pour défendre leur bunker. À l'aide d'alchimie et d'un excellent travail d'équipe, ils doivent repousser l'infection et ainsi perdurer et survivre.


Pour le développement, nous avons utilisé : 


UNREAL ENGINE / C++ / PERFORCE


Alka est un projet déjà existant auquel j’ai été approché pour en continuer le développement avec une nouvelle équipe. Les développeurs du projet original avaient d’autres engagements et ne pouvaient poursuivre leur travail pour permettre au projet de prendre de l'envergure.  

Pour ma part, le développement d’Alka s’est déroulé en deux temps distincts. Dans un premier temps, nous avons fait de la préproduction en collaboration avec certains membres de l’équipe originale. Nous avons pris quelques semaines pour s’approprier le projet et pour établir les tâches et responsabilités de tout un chacun. Pour ma part, j’ai eu la chance de développer mes connaissances en matière d’intelligence artificielle. J’irai plus en détail sur ma contribution plus bas. 

Dans un deuxième temps, nous sommes entrés en production. L’objectif était de faire un niveau supplémentaire, d’ajouter un nouvel ennemi et d’implémenter de nouveaux systèmes pour augmenter la collaboration entre les joueurs. Nous avions également comme mandat de régler certains problèmes existants sur le projet pour nous permettre d’aller plus loin au moment de la production. 

 

Ma principale tâche a été de travailler sur un type d’ennemi déjà existant. Le puffer était initialement un ennemi «bullet sponge » qui prenait un temps interminable à éliminer. Cependant, ce n’étaient pas les intentions des game designers. Ils souhaitaient que le puffer soit un ennemi envahissant et faible, mais qui déconcentre le joueur pour l’empêcher de remplir son objectif. Voici donc différentes tâches que j’ai effectuées sur l’ennemi en question pour améliorer son comportement de façon qu’il répond mieux à nos besoins. 


DÉPLACEMENTS

Comme nous sommes en tout début de projet, nous en sommes encore au stade de restructurer les ennemis actuels et leurs comportements. Tout d'abord, on pouvait voir dans les déplacements du puffer qu'ils se déplacaient à la dernière position du joueur. Par contre, on pouvait clairement voir qu'il se déplacait d'un point à l'autre. J'ai donc fait des changements dans son déplacement ainsi que dans sa façon de chasser le joueur pour cela soit plus fluide et moins robotique. 

ATTAQUES

Le puffer était initialement un personnage un peu trop ''bullet sponge'' pour être intéressant pour le joueur. J'ai donc effectué un survol des composantes du puffer pour le balancer. Par la suite, j'ai implémenter une fonction dans un son intelligence pour qu'il puisse éviter les attaques du joueur pour rendre le gameplay plus intéressant. Cette mécanique en plus de rendre le puffer beaucoup plus vivant, rend le gameplay et l'attaque de celui-ci beaucoup plus dynamique. 


FREE ROAMING


Dans le but d’ajouter du réalisme au jeu, j’ai implémenté un comportement de déplacement naturel pour cet ennemi. C’est-à-dire que si l’on observe un puffer à distance, il se balade doucement en surveillant son habitat. Si un joueur s’approche trop prêt, le puffer est donc alerté et entre dans son comportement d’attaque et de protection. 


DÉFIS & APPRENTISSAGES

Alka est pour moi une opportunité d'en apprendre davantage sur l'intelligence artificielle. Il s'agit du premier projet où je suis responsable de m'occuper de créer / ajuster les ennemis. Évidemment, puisque mes notions étaient limitées en matière d'intelligence artificielle, j'ai dû faire beaucoup de recherche pour comprendre la façon de bien utiliser les fonctions du moteur de jeu. J'irais même jusqu'à dire que ce nouvel apprentissage m'a ouvert les yeux sur un élément de la programmation que je connaissais moins. Je suis de plus en plus intéressé et attiré par les projets où je pourrais faire de l'intelligence artificielle alors qu'avant, j'en avais un peu peur.

D’un autre côté, Alka a été un projet difficile pour moi à quelques reprises. Le jeu est développé dans le cadre d’un cours universitaire. Pour la session de production, je ne pouvais être présent dans la case horaire des réunions. Après discussion avec les professeurs, on voulait tout de même que je participe au développement du projet. Je devais donc regarder les réunions enregistrées plus tard dans la semaine. Cette technique a créé chez moi une distance avec le projet, mais aussi avec le reste de l’équipe puisque je ne pouvais pas communiquer mes idées et ressentis en temps réel. Cette difficulté a donc forcément mis l’emphase sur l’importance de la présence de tout un chacun aux rencontres hebdomadaires, mais également aux rencontres de ‘’build review’’.

Somme toute, j’apprécie énormément l’expérience apportée par Alka. C’était une première pour moi sur un jeu collaboratif en réseau et je crois que nous avons relevé le défi ! Comme mentionné auparavant, l’intelligence artificielle était pour moi une spécialisation que je connaissais peu. Maintenant, j’ai mis l’épaule à la roue avec cette facette du développement, j’ai n’ai qu’une envie et c’est de me perfectionner dans cette spécialisation.


BANDE-ANNONCE