Inspiration
The COVID-19 pandemic has obviously turned everyone's lives upside down in the momentous year that is 2020: loved ones have been lost, the world has gone into complete shutdown, and for a point in time, it was like everyone's life had gone to a standstill. Even though there is little this project can do to alleviate what people, specifically kids and teenagers, have gone through this year, the inspiration behind creating it was an experience that everyone from our team greatly misses: escape rooms. Even though it may be a small thing, or a really specific experience, there was always something about escape rooms that every member on our team loved. The tension, the exhilaration, the detective work, the communication, and the timer making it all the more stressful and exciting. We wanted to recreate it in a way that is safe for the circumstances at hand. Just because we're not allowed to go outside doesn't mean that we have to miss out on the excitement of escape rooms right?
In terms of format, some of it was inspired by some of the very first Mario games, since the set-up is very simple and we used pixelated sprites for our animations and for the movements of the characters.
What it does
Catastro-Coffee is a virtual escape room that allows the user to take on the perspective of Detective Rat as he goes through the three rooms of Wrightville's Cafe, where Sleepy had been murdered. In each room, Detective Rat encounters a character and an alibi. Ideally, a pop-up should come up, which will allow the user to choose whether they think the character should be a suspect or ally based on the clue that they provide. They will only be able to choose one ally, and two suspects, and their choices will affect how the game will end. The final scene is a gathering of all four characters, and a pop-up will come up for the user to choose the character that they think knows who the murderer is. One character knows who it is, one character is the murderer, and the other two are innocent. Again, ideally, what the outcomes would be would be that if the character who knows is chosen, they will win the game and view a photo montage of the future of Wrightville and the person who the murderer was. If they choose the murderer, they will lose the game and see a "GAME OVER" message, since the murderer will escape by framing someone else. If they choose one of the two innocent characters, they will simply be sent back to the rooms and have a chance to try again.
We were unable to finish all of these components, and the game presents the rat going through the rooms, meeting all of the characters and seeing their clues/alibis, and the final scene where all four characters meet to discuss. The game then goes on to show what the ideal result would have been, had the user inputted the correct answer.
How we built it
We built Catastro-Coffee using Defold, a software released by King, and the programming language Lua, with some supplementary components in Python and HTML. Defold came built in with a variety of assets to use, but we primarily focused on using an atlas to combine all of our images into a tiled sequence, scripts to code the actions for the different characters and attempt to code different input sequences, sprites to work on animations for the different characters to allow them to appear more realistic when moving.
Challenges we ran into
Well firstly, we had no idea what the programming language Lua even was prior to using this software. Learning the language on top of creating a functional and innovative project idea for four first or second-time hackers was definitely a huge struggle, but because we were all fluent in Python and Lua was somewhat similar to the language, it did not take too long to learn. Another major challenge that we faced, that we ended up not being able to overcome too well, was figuring out how to add graphic buttons into our game to make it a fully functioning escape room with different clues triggering different events to occur. Especially in game development, this was really complicated to do and it was a hurdle that we were unable to cross, but are most definitely going to continue working on to be able to make it a fully fledged, virtual escape room! And lastly, Defold does not allow for live collaboration like Visual Studio Code does so communicating our code to one another was a bit difficult to do. But using our critical thinking, we figured out that we could use our Github repository not only as a way to share our code with the world, but also with one another, which definitely made the communication run much more smoothly. It may have been a bit of a tumultuous ride, but we're quite happy with what we've created.
Accomplishments that we're proud of
As mentioned before, none of us even knew what Lua was before Saturday when we started working on the bulk of our project. In the matter of a singular day, we were able to develop a basic idea of the game that we envisioned, in a language that we were completely unfamiliar with prior to. It is definitely something that we are very proud of and though the produce we present is not exactly the product that we envisioned when discussing the idea, it is something that we are satisfied to have created in the time allotted. Another accomplishment that we are proud of that, even though cannot be seen due to some minor errors in the code, is understanding how to use spinal animation. It allowed the rat's movements to look more natural when he was commanded to move, but for some reason, it is now not visible in the code. And finally, we are quite proud of the plot that we came up with- it's quite the interesting plot if you ask us.
What we learned
The entirety of this project and hackathon was a learning experience for our team, from learning how to choose a game development software based on the ideas and vision that you have for a game, learning how to program in a completely foreign language, and learning how to develop an at least somewhat functional game in the span of a day. We learned that there is a programming language called Lua, which definitely helped broaden our perspectives on languages since there are only a handful of the world of them that are often heard of- but that does not mean that the rest of the world of languages does not exist, so getting to learn this language was definitely an eye-opener about computer science and programming. We also learned how important buttons are to games even if they do not outwardly seem like something that would drive one, but they definitely are one of the roots that most directly helps a game progress, and what spinal animations are and how much they can spice up graphics! And finally, we learned that game development is HARD. Our team has a much greater respect for Nintendo and their glorious games for not only their beautiful maneuvering with basic tech issues, like ours with buttons and invisible animations, but also their incredible graphics that have to be dissected frame by frame to add all of the interactive components that they have, and all of the logic puzzles and advanced tech that they use in order to make their games so world-renown.
On a serious note, our team has definitely developed a greater appreciation for the world of game development and all four of us will work towards improving ourselves not only in game development in Lua, but understanding how it works overall. What we've learned from this competition only serves as a stepstool for us to learn even more.
What's next for Catastro-Coffee
We definitely want to improve this game in the coming future. First things first, we are definitely going to start adding buttons everywhere we need to and want to the moment we figure out how to add graphic buttons without disturbing the other characters' actions, unless that is what the button is supposed to do. It is our top priority since we were quite disappointed that we could not figure out how to prior to the conclusion of this competition. After working on the buttons, we would like to improve the graphics and animation qualities, add textboxes for each character's clues and have them pop up as delayed text bubbles, and we would also like to increase the complexity of the game with the more knowledge that we gain in Lua to make it seem more and more like a real escape room (simply online). The main end goal of our team regarding Catastro-Coffee is to improve it enough to deem it enough to publish on the web and App Store for people to play for free. A short-term goal that we have is considering using the game in a pep rally that is coming up in the next few weeks, so we hope to have completed all of the major improvements by then. Just imagine how cool it would be for your school to be playing a game that you coded. It would be catastro-coffic in the best way possible.
Log in or sign up for Devpost to join the conversation.