Projet réalisé dans le cadre de la Licence 3 Informatique à l'Université Bretagne Sud (UBS). Le sujet du projet est disponible dans le fichier TP_Qt2.pdf.
Project made as part of the third-year Computer Science degree at Université Bretagne Sud (UBS). The project subject is included in the file TP_Qt2.pdf (in French).
This project is a small academic remake of the classic arcade game "Space Invaders", with some custom mechanics. Built using Qt 6.8.3 and C++, it introduces bonuses, multiple levels and dynamic music/sounds.
You control a spaceship trying to survive increasingly difficult waves of enemies. Your goal is to reach a score of 500 (level 10) by eliminating enemies, collecting bonuses, and avoiding incoming attacks.
- Move: Arrow keys (Left, Right, Up, Down)
- Shoot: Spacebar (holdable)
- Menu Navigation: Mouse
- 10 progressive levels with increasing difficulty (faster enemies, more frequent spawns, etc.)
- Dynamic music changes based on game state and progression
- Two missile types: standard and piercing
- Bonus pickups
- Victory and defeat animations and messages
- Score and survival tracking
Bonuses spawn randomly and give one of the following temporary or permanent effects:
- Extra Life: Grants an additional life
- Piercing Shot: Allows shooting through enemies
- Fire Rate Boost: Reduces the cooldown between shots
Collected bonuses are unique per run, and temporary effects are removed after a few seconds. If a bonus reaches the bottom of the screen, it reappears at the top, giving the player another chance to collect it.
There are multiple types of enemies:
Enemies shoot back at increasing frequency and spawn rate as levels progress. If an enemy reaches the bottom of the screen, the player does not lose a life; instead, the enemy reappears at the top and resumes its descent.
- Starts with 5 lives
- Can collect bonuses
- Has animated victory and defeat sequences
Assets are resolved relatively from the root of the project. Do not run the game from the build/ folder or any other subdirectory, as it will not find the assets.
Launch the executable from the root directory to ensure all assets are correctly found.
./assets/images/ # Player, enemies, bonuses images
./assets/sounds/ # Sound effects
./assets/tracks/ # Background music
- Player ship
- Enemies and bonuses
- Background: myself
- Undertale OST and sound effects
- Monster Hunter OST remixes
- Menu: Bird That Carries You Over A Disproportionately Small Gap
- Near Defeat: Another Medium, but it's in swing rhythme
- Defeat:
- Victory: Menu (Full)
- Main Game: [8bit] [MHXX/MHR] Valstrax Theme (8 Bit Mix)
- Near Victory: Monster Hunter: Proof of a Hero (8-Bit)
- Victory: Fluffy Bunny Dango [8-Bit; VRC6] - Monster Hunter Rise
Dependencies:
- Qt 6.8.3
- Qt Multimedia module must be installed
qmake
make # or mingw32-make on Windows
./build/main # Run from root folder, not from inside build/The game has only been tested on Windows but should work on Linux/macOS with Qt properly set up.








