Jeu · Projet universitaire · Master 1, Université Savoie Mont Blanc
Battle Arena
Survivre aux vagues d'ennemis

Jeu d'arène 2D en C++20 avec SFML, inspiré des « survivors ». Le joueur se déplace sur une carte infinie, tire automatiquement sur l'ennemi le plus proche et doit tenir face à des vagues de plus en plus nombreuses, puis à un boss.
Le jeu
Un « battle arena » en vue de dessus : le joueur se déplace aux flèches sur une carte qui se répète à l’infini. Les ennemis arrivent par vagues, le tir est automatique, et il faut tenir le plus longtemps possible.
- Vagues de plus en plus fournies (100 ennemis, puis 1,5 fois plus à chaque vague), avec plusieurs comportements de déplacement
- Ennemis à 1, 2 ou 3 points de vie ; un boss à partir de la deuxième vague, plus lent mais qui retire toute la vie d’un coup
- Cinq cœurs, une régénération après quelques secondes sans dégât
- Deux sphères en orbite autour du joueur, débloquées à la deuxième vague, qui blessent les ennemis au contact
- Chronomètre, compteur d’ennemis restants, écran de fin et bouton pour rejouer, musique de fond
Technique
C++20 orienté objet : Game (boucle, rendu, interface), Player (singleton), Enemy et EnemyFactory (apparitions et vagues), Boss, Bullet, OrbitingSphere. Les ennemis sont partagés par std::shared_ptr. Le rendu, les entrées et la musique passent par SFML 2.6, et le projet se construit avec CMake.


