This project is part of the "Game Theory and Simulations" course. The objective was to implement the "simulation" aspect in the form of a 2D game. The game developed is a top-down shooter featuring collision detection, line of sight, and shooting logic (including angle calculations, distance measurements, and visibility checks). The game runs on both Linux and Windows and can be compiled using either Makefile or CMake.
- Collision Detection: Implements robust collision detection to ensure objects interact realistically.
- Line of Sight: Uses algorithms to determine the player's visibility and field of view.
- Shooting Logic: Calculates shooting angles, distances, and checks for visibility to simulate realistic shooting mechanics.
- Custom Assets: All game assets, were created by me.
- C++ compiler (g++ or similar)
- SDL2 library
- Linux:
make ./game
- Windows: checkout the
windows_port
branch, then:mingw32-make .\game.exe
- W/A/S/D: Move the player up/left/down/right.
- Mouse: Aim and shoot.