THE GARDEN

FINAL FOR SOFTWARE DESIGN, SPRING 2022

Partner: Olga Pidruchna!

A Stardew Valley-inspired game created using Python's Pygame library


All source code can be found in this GitHub repository.

Read about the details of our game here!


For the final project of my Software Design class, we were tasked to create an interactive game using Python's Pygame library. We were very interested in creating a role-playing game using pixel art.

The idea of the game is to move the player around the screen to collect vegetables. When the player collects a certain amount, they win a mantis shrimp (the name of our group)!

MVC Architecture

We utilized MVC (Model View Controller) architecture to organize our code. This was a great way to get a better understanding of how game setups can be organized and was great practice in organizing code.

Our Model.py contains everything necessary to create the foundation of the game, like instantiating the player and layout. View.py contains all code necessary to display the game in a understandable way. For example, it contains code for blitting objects. Controller.py contains everything necessary for the user to control things in the game, like the movement of the player and the things it eats.

We utilized Pygame concepts like blit, screen, sprites, and rects to create obstacles for the character and contain them within the screen.

Pygame was incredibly fun to learn and use, but it got very complex at times. Had we had more time to work on this project, we likely would have iterated to create multiple scenes and a more complex task.