Context : Semester 2, ingénieur IMAC
Project : Creation of a "tower defence" game in C++ with Opengl/SDL. The objective was to be able to visualize a map made of paths, monsters moving on it and an interface allowing the user to put towers to destroy the monsters.
Technological advances and new space have enabled man to set up bases on the Red Planet. But when these exploration programs began, the space agencies were unaware that life still existed on Mars. The first Martian expeditions went off without a hitch. Until one day, a Chinese team drilled a little too deep into the Korolev crater and freed an angry alien population. NASA and CNES reacted quickly by sending diplomatic and scientific missions. Unfortunately, none of them returned. You are now part of one of those expeditions. You will have to defend yourself if you ever want to see Earth again.
At launch, the IMARS ATTACK application loads a single map and the aliens begin to arrive in waves from the left side of the window. There are two types of aliens: "fatty" which are slower but more resistant and "nervous" which are faster but less resistant.

The user has 50$ at the beginning of the game. He has the possibility to buy towers and buildings by first clicking on the installation of his choice in the interface on the right of the window. He can place his installations with a second click at the location of his choice on the map.

The towers will shoot the aliens, decrease their health points until they are killed and thus bring money to the player. Buildings improve certain parameters of the towers (range, cadence or power) that are within their perimeter of action. The differences in price and power of towers and buildings can be viewed by clicking on the "i" button which displays the user guide. The pause button allows to stop the game, i.e. to stop aliens in their race and prevent the purchase of new facilities, until the user clicks on "play".

If an alien arrives in the exit zone, the end of the path at the bottom of the map, the user has lost and a "game over" insert is displayed before the application gets lost. If after 20 waves of aliens, none have reached this zone, the user has won and, in the same way, a "winner" insert is displayed.

More projects

Back to Top