Inspiration
When I was creating this game, my main inspiration was to develop a fun and interactive game that would challenge the players' problem-solving and critical thinking skills. I wanted to incorporate elements of strategy and decision-making, so I decided to use the A* pathfinding algorithm to make the game more challenging.
I also wanted to showcase how data structures and algorithms can be used in real-world applications, such as game development. By using the A* pathfinding algorithm, I was able to create an efficient and effective method for the game characters to navigate through the maze-like levels, providing a realistic and engaging experience for the players.
What it does?
The game that we have built is a maze runner game where the player has to navigate through a maze to reach the end goal. The player is represented by a character on the screen, and they can move in four directions - up, down, left, and right. The maze is randomly generated each time the game is played, and the player has to find the optimal path to reach the end goal while avoiding obstacles and dead ends. The A* pathfinding algorithm is used to generate the optimal path for the player. The game is designed to be challenging yet enjoyable, and it is suitable for players of all ages.
How do we built it?
To build this game, we used the Pygame library in Python, which is specifically designed for creating games. We also implemented the A* pathfinding algorithm to make the enemies move towards the player in the most optimal way possible.
The game is built using several classes that handle different aspects of the game such as the player, enemies, bullets, and obstacles. We also used various data structures such as lists, dictionaries, and sets to efficiently manage the game objects.
Challenges we ran into?
There were several challenges that we ran into during the development of the game. Some of the main ones include:
Implementing the A* pathfinding algorithm: The A* algorithm is a complex algorithm that can be difficult to implement. We had to spend a lot of time researching and understanding the algorithm before we could successfully integrate it into the game.
Creating the game graphics: Creating the game graphics from scratch can be time-consuming and challenging. We had to spend a lot of time designing and refining the graphics to make them look appealing and professional.
Debugging: As with any software project, we ran into several bugs and errors that we had to troubleshoot and fix. This required a lot of patience and attention to detail.
Accomplishments that we're proud of?
We are especially proud of how our game turned out. We were able to successfully create a game with an interesting concept that also showcases our programming and game development skills. The fact that we were able to complete it within the time constraints of the hackathon is a big accomplishment for us.
What we learned?
Pygame: We explored Pygame library and learned how to use it to build 2D games.
A* pathfinding algorithm: We learned how the A* algorithm works and how it can be used to find the shortest path between two points in a maze.
Data structures and algorithms: We learned how to implement different data structures and algorithms, such as stacks, queues, and graphs, to solve real-world problems.
What's next for Pathfinder Visualization?
As for the next steps of Pathfinder Visualization, there are several possibilities that we can consider. Here are some potential directions:
Improving the visualization: While the current version of the game works well, there is always room for improvement. We could consider adding more interactive elements, such as the ability to drag and drop start and end points, or allowing the user to add obstacles to the grid.
Adding more algorithms: While A* is a popular and effective pathfinding algorithm, there are many others that could be interesting to explore. We could consider adding additional algorithms, such as Dijkstra's or breadth-first search, to give users more options.
Scaling up: While our current implementation of the game is relatively small-scale, we could consider scaling it up to handle larger maps with more complex obstacles. This would require some optimization work to ensure that the pathfinding algorithm remains fast and efficient.
Built With
- math
- pathfinder
- pygame
- python
- visualization

Log in or sign up for Devpost to join the conversation.