DooMineStein is a local multiplayer C++ game featuring mechanics from Doom, Wolfenstein, and Minecraft with other easter eggs thrown in.
This game required lots of enemy instancing to prevent slowdown as their numbers ramped up, so object pooling and salting was used. The game was built to be as modular as possible, so every entity could be possessed by the player and function properly, and every player character could be made into an enemy AI without issue.
This requirement taught about good hierarchical design practices and maintaining good, generic code where applicable. Substantial effort was put into making every entity as technically identical as possible while making them functionally distinct, whether it's a player, enemy, bullet, bomb, etc.