top of page

Mini Game

A Collectable Game

About The Game

Mini Game is a small collecting game in which the player must gather potions and wood logs. The game is set in a 2D forest environment, where the player takes on the role of a woodman working among the trees. To clear each level, the player must collect all of the items in the environment. Additionally, the player unlocks special abilities—such as throwing fireballs while shouting—after collecting a wood log.
This project was developed to deepen the understanding of object-oriented programming and Entity-Component System (ECS) architecture during the Advanced Game Development module of the master’s program.

Tools & Language used:  C++ & SFML
Platform :  Windows Desktop

Object-Oriented Programming

In the first half of the module, I learned advanced object-oriented programming concepts such as abstraction and polymorphism. During this time, we used the C++ Standard Template Library (STL) and the SFML library to develop a test game that demonstrates different variations of the game loop. First, I implemented a simple loop that runs as fast as the system configuration allows. Next, I added a sleep-based loop that processes the first frame and then waits for the remainder of the frame interval. Finally, I implemented a time-step-based loop, in which each update is scaled according to the actual time elapsed since the previous frame.

Entity-Component System

Screenshot 2025-04-21 214143.jpg

In the second half of the module, I have learned about the implementation of ECS architecture with OOPs concept for creating more flexible structure for a mini game. I discovered the importance of solid architecture and how to separate entities, components, and systems to build a flexible, reusable framework.

This project provided me with substantial knowledge of creating a game without relying on a game engine’s built-in libraries. I learned about memory management, CPU-based performance optimization, and designing systems that are easier to debug.

Programming Patterns & ECS Architecture

Below are some of the patterns and systems I have implemented in the project: 

​

  • Big Array

  • Archetypes

  • Flyweight

  • Observer

  • Service Locator

  • Command

  • Collision Callbacks

Call 

+44 7397716226

Git

github.com/rahulyadav2000

Email 

Follow

  • Facebook
  • X
  • LinkedIn
  • Instagram
bottom of page