Inspiration
Rev’s Creamery is a pixel-art, Texas A&M-themed ice cream shop simulation where players manage incoming customers, take their orders, and build customized ice cream creations before their patience runs out. We wanted to incorporate elements of the hackathon's beach theme along with TAMU motifs into a simulation game.
What it does
Customers request different combinations of flavors, toppings, containers, and sides for their ice cream, and their orders become more complex as the chef (you) progresses. Players are rated from 0–3 stars on each order based on accuracy and speed, and must maintain a high enough average rating to advance through increasingly difficult rounds.
How we built it
We built this by first planning what kind of game we wanted to build, and outlined what requirements we needed to achieve, from highest priority to lowest priority. Next, we applied pseudocode (mix of golang and python). Here is an excerpt of some planning we started off with:
Welcome to Rev’s Creamery: Customers come in You take order requests Follow a recipe to build their order (ex: ice cream- vanilla, toppings- caramel drizzle + sprinkles)
You go to the kitchen and try to combine the right ingredients And then give your order to the right customer (max 3 customers at a time)
func timer(){ Let's say 1.5 mins } Type toppings struct{ Sprinkles : String Strawberries : String Cherries: String Chocolate drizzle: String Caramel drizzle: String }
Then afterwards, we went in further to refine details about the game functions, like individual timers, end game details, character movements, etc. After we ensured that the project actually ran, we went back and made changes to the game's function to increase complexity. ( ex: changing the customers from circles to PNGs, actually adding shading to the ice cream cones, adding timers to each customer, etc). We then went back and tested the code to ensure it ran as expected, saved it to our repository, and began debugging and iterating again. This cycle repeated over and over until we reached a design we were satisfied with.
Challenges we ran into
One particular challenge we ran into was changing the customers from circles (and the blue-colored background) to PNGs. We first had to generate the actual 8bit images that we wanted to use, then went about cropping and changing file types. It was especially hard trying to debug why customers were still showing up as circles, even though we had imported the PNGs into our TAMUhack VS Code folder (Some files were renamed from image(1).png back to image.png, and it was tripping up the game.py file). But we got that fixed. It was pretty annoying cause the file names were really long too. We also tried to make the customers' PNGs move (like 2 different PNGs to look like they were walking, a smiling PNG if they were happy with their order, a frown if the order was wrong), but this part was very complex, so we just reversed the code to the initial 1 PNG method. If we had more time, there would definitely be more changes we would've implemented.
Accomplishments that we're proud of
We are very proud of how we structured the development of the game, and how thorough we were with testing and determining what features of the game we wanted to improve. Overall, this project was a great collaborative effort and proved each of our abilities to support one another as a team.
What we learned
The most important lessons from this experience were repetitive troubleshooting, iterative testing, and version control. (Especially version control cause a lot of times we updated our code and it worked terribly after, but we had saved a previous version that we ended up reverting it to.)
What's next for Rev's Creamery
In the future, we would like to make the following updates:
- Make cutscenes in between each level. After every completed level revs creamery should “close” for the night
- Make it so that as the shift timer goes down, the sun is also setting. So change the background from sunrise to a midday beach pic to sunset.
- The build station/ ice cream station background should be like brownish and textured (to represent the wooden countertop)
- Make the menu screen instructions less chopped (prettier), and remove them from the box (just overall make all the pop up boxes a little less ugly)
- Add more character pngs
Log in or sign up for Devpost to join the conversation.