Penguin Panic !

Réalisé dans le cadre du Concours Universitaire Ubisoft 2018.

Lauréat du prix des Meilleurs défi et innovations techniques.

Nomimé au prix de la Meilleure qualité des « 3C » (caméra, personnages, contrôle).
Nominé au Prix spécial du jury.


Description du projet


Lors de l'hiver 2018 nous avons réalisé, en équipe de 8 développeurs et en 10 semaines, un jeu vidéo sous contraintes :
  • Thème : Changer le monde
  • Jeu multijoueur en ligne ou en LAN
  • Le jeu doit contenir un élément d'IA en faveur ou défaveur du joueur
  • Le jeu doit contenir un élément qui s'adapate aux joueurs
Pitch du jeu :

Penguin Panic se passe dans les années 2042, l’activité humaine a continué de s’étendre et le réchauffement climatique a progressé par la même occasion. L’Arctique, élément indispensable à la bonne tenue du Gulf Stream et du climat, tombe en morceaux et menace la bonne régulation de notre planète. Mais les scientifiques présents sur la région glaciaire en perdition remarquent que les manchots se rassemblent en colonies afin d’endiguer la fonte de la banquise. Ces derniers vont à la recherche du Pôle Nord afin de le ramener à sa position exacte. Les scientifiques profitent de la situation pour sensibiliser la population en diffusant les colonies en direct sur un site de streaming : twatch.tv.

Dans notre jeu, vous incarnez le manchot leader de cette colonie. A l’aide d’autres manchots, ramenez le Pôle Nord à la dérive à sa position d'origine afin d'endiguer la fonte des glaces. Plus vous réaliserez de quêtes, plus vous ramènerez des spectateurs sur votre live et obtiendrez des dons pour sensibiliser le monde à votre cause.

Description de mon travail

D'un point de vue technique, le jeu a été développé sous Unity3D en utilisant des assets disponibles dans l'Asset Store de Unity.

Pour ma part, j'ai travaillé sur tous les éléments d'IA présents dans le jeu, sur la notion de colonie ainsi que sur la mécanique de torpille permettant aux joueurs d'attaquer ou de s'échanger des manchots.

Fonctionnement des agents intelligents :
Les agents ont été conçu de manière modulaire en corrélation avec le contrôleur principal. Différents scripts de comportements de mouvements ont été implémentés comme la poursuite, la chasse, le déplacement aléatoire...
Un agent peut ainsi utiliser chaque module de déplacement comme il le souhaite et réutiliser les modules du contrôleur principal comme le saut, la nage et le fait de pouvoir manger. Il est ainsi possible de part leur conception de brancher un contrôleur de joueur sur tout nos agents et de le contrôler à la manette.

Fonctionnement de l'IA adaptative :
Notre système va analyser la dynamique de coopération ou compétition entre les deux joueurs. Des GameEvent sont lancés lors de moment spécifiques et alimentent le profil de joueur. Dans notre système, nous modifions les spawn des éléments de jeux et le gameplay en fonction du profil de nos joueurs. Si l'aspect coopération est majoritaire, nous allons renforcer l'aspect survie du jeu en centrant le gameplay sur le glacier qui fond à pousser. Si le profil qui se dégage est compétitif, nous allons pousser nos joueurs à explorer et à faire grandir leur colonie. Le système utilise des GameObjects de Unity3D pour pouvoir créer à la volée de nouveaux éléments impactants l'IA et de nouveaux objets à instancier grâce au système.

Fonctionnement de la colonie et des torpilles :
Chaque joueur possède sa propre colonie de manchots. La taille colonie va ainsi représenter les points de vie du joueur, sa force de poussée et une ressource pour attaquer. Cette mécanique est induite du fait que chaque manchot est un agent poursuivant son maître, le joueur. Les manchots suiveurs seront mangés en premier par les prédateurs et vous aideront à pousser le glacier. Il est enfin possible d'utiliser les manchots suiveurs comme torpilles pour attaquer les prédateurs, détruire des obstacles ou renforcer la colonie du second joueur s'il en est la cible.