During high school, I took an introductory course to Computer Science. Looking back, this one decision would ultimately shape my career path and future endeavors by thrusting me into the complex world of programming. Since I had no prior experience in writing code, I was thrilled to learn that our first project would address this issue by allowing us the opportunity to develop a game.
On project kickoff, our team assigned roles to determine members’ responsibilities and began to familiarize ourselves with the Scratch environment. This led us to a visual, block-based programming platform developed by the MIT Media Lab as an introductory setting for beginners to learn fundamental programming concepts. It allows learners to drag and snap blocks of code together to create unique projects, unlike the common text-based languages which are predominantly used in professional, real-world applications.
As this was my initial experience into programming, I was excited but slightly overwhelmed by the entire process of learning. This was primarily hammered in by the course format being structured as a flipped classroom which required us to engage with tutorials and experiment on our own before meeting in-person as a group.
Following this, our instructor shortly briefed us with our task: “design a game that solves a problem.” Since the goal covered a broad range of topics, we were also informed that we had free rein to choose which issue to tackle and what type of game to create.
For this project, our team and I decided to create a simple 2D platformer that addressed the issue of having an unhealthy diet. During this, my role was as the team’s lead programmer with my responsibilities primarily being for player movement and level designs. To maintain and track our progress, we used a scrum sheet.
The goal of the game is to complete all ten levels by reaching different types of fruits and vegetables to move to the next stage. In the event that the player touches harmful obstacles such as the red line or a junk food, they are sent back to the main menu and have to restart the game from the beginning. We initially planned to have a scoreboard feature with a ranking system based on player time to complete all the levels. Although a timer feature was implemented, it was not fully completed for the leaderboard to function.
Here is a link to the game.