A 2D demake of Doom used to teach students intermediate programming skills for the Intermediate Programming class.
During the project I was in charge of all aspects of the project. From weapon design, simple AI development, interaction system, the health system, lives system, powerup system, and lastly the score system. The systems were developed with the intention of teaching OOP, with a focus on Polymorphism. As such, all systems were developed with inheritance in mind. The gun system is data focused, where one gun can become another completely separate gun simply by modifying parameters like spread angle, number of bullets, bullet speed, and bullet object. The bullet data used within the gun actually store the hitbox, and damage data.
As for tools used in this project, the game was developed in Unity. The project was managed by myself utilizing the Agile development framework. There were weekly progress update meetings via Google Meet with my employer on how the project is progressing.
This project is a 2D top down Doom demake. The creation of this project will be recorded for usage in the 2022 Winter Semester to teach Intermediate Programming. The playlist can be found here.
The goal of this case study was to teach new game developers a variety of subjects pertaining to programming using Unity and by extension programming in C# at an intermediate level with a focus on OOP. Things like polymorphism, basic seek and flee behavior programming, coroutine programming, player programming, and enemy programming were taught through this game.