I created this project because I am really excited to practice the concept of OOP and data structure & algorithm in C++ I also was challenged by my friend to create the maze game where I have to create the random maze every time the player plays.
What it does
This game will need the player to find the path from the beginning point to the final point. It also has some dead ends that require player to go backward. For each location, there is the reward for the player. Each player will have their own rewards and their groups. The person who come to the last point first will win and bring the victory to their team.
How I built it
I built the graph based on the concept of adjacency list. I also used OOP to create the structure of my program. I used an algorithm of Depth First Search to find the longest path from starting point to final point. I used linear linked list of arrays to store players list, rewards list and groups. There are 20 possible points in the graph. I created the maze by generating randomly connection between point 2 to point 18. I will connect point 1 to any of points from 2 to 18 and I used DFS to find the longest path from 1 to point 18. I wanted to make sure there is the path from the starting point to the last point. Once I found there is the longest path from 1, I will connect that last point to 19.
Challenges I ran into
I have to create the random maze every time when the player loads the game. I had to design the whole structure for the program. For example, what classes should I need to have? What kind of data structure and algorithm that needed to be used?
Accomplishments that I'm proud of
I created the data structure ( linear linked list of arrays ) to store the players list, rewards and groups. I also successfully created the random maze
What I learned
The concept of OOP, the concept of operator overloading in C++, Hierachy
What's next for Maze-Game
I am working on my side project right now. It is called Yup. I have faced the problem when I hang out with my friends and my phone was dead. I had to use my friends phone to take pictures and asked them to send back the pics when they got home. I am creating the app that allows groups to share pictures together, so I or any of my friends can go to the app and they can see all the pictures that have taken by different phones,