Feast - Projet Fin d'Etude B3 ICAN LYON
Développement d'un boomer-shooter roguelike en groupe de 3
FEAST
Feast est un FPS de style retro dans lequel le joueur incarne un alien qui se reveille au centre d'un complexe scientifique souterrain. Pour s'echaper, il va pouvoir devorer l'integralité des meubles, props et humains pour evoluer.
Unreal Engine 5 : Blueprints, Level Editor (+ Sublevels), Niagara, Fab, MetaSounds, Materials, Widgets
Piskel pour sprites 2D
Biomasse et Evolution
Lorsque le joueur se raproche d'un objet qu'il peut manger, un contour vert apparait sur celui ci. Le joueur peut rester appuyé sur la touche d'absorption (par defaut "f") pour devorer tout ce qu'il se trouve devant lui. Chaque objet devoré rapporte de la biomasse que le joueur peut ensuite depenser :
Generation de niveau
Le jeu ne genere pas un layout de salles proceduralement a chaque run, mais l'interieur des salle lui l'est. Chaque niveau contient une liste de salles ainsi qu'une hashmap salle<->liste de sublevel. Lorsque le niveau est chargé, pour chaque salle, un sublevel est choisi aleatoirement parmis sa liste.
A certains endroits dans le niveau se trouvent des "ancres" qui, lors de la generation du niveau se repartissent entre eux les armes du jeu, au niveau des ancres selectionnées apparaissent alors des objets qui, lorsqu'absorbés ajoute l'arme correspondante a la liste des armes debloquables pendant la run.
Comme le jeu permet d'influencer l'environnement en detruisant et devorant des meubles, il n'a pas été possible d'utiliser de simples level streaming volumes. La premiere fois qu'une salle est atteinte, son sublevel selectionné est chargé, lorsque que la salle est quitté, le sublevel n'est pas dechargé mais mis en pause/desactivé. En mettant en pause un sublevel, les changements persistent mais pas les etats physiques : un objet devoré reste devoré mais un objet destruit sera retrouvé dans un etat neuf. L'optimisation est tout de meme satisfaisante car les objets physiques ne sont plus calculés et le tout n'est pas render.