Inspiration
With the upcoming cicada double brood emergence in April, we imagine an apocalyptic world to follow. The triumph of cicadas over the human race seems less of a question of "if" and more of "when" --- we must ready ourselves for their inevitable attack. By launching Interstellar Investigators, we hope to mobilize the next generation of gamers: through in-game practice (as well as help from a mystery figure), we might just stand a chance against the upcoming onslaught.
We drew inspiration from many different sources: think Space Invaders, cicadas, and riddles. Curious to see where this would take us, we opted for a reimagined look at a classic video game format, and encouraged experimentation in each of the components we implemented.
What it does
With Interstellar Investigator, the fight against cicadas is literally at your fingertips. Step 1: Read over the game story introduction page by scrolling with your mouse or pressing arrow keys. Alternatively, press the skip button. Step 2: Enter your username, pressing "start" if you're a new user of "continue" if you are a returning fighter. Feel free to check our the leaderboard as well (press esc to leave this page). Step 3: Try to solve the riddle. If you are correct, you'll get a 2x multiplier power-up. Step 4: Begin spraying the cicadas! Use arrow keys to control where your spacecraft is, and the space key to fire bug spray. Your score will go up for each bug you kill. Step 5: Try to stay alive for as long as possible... once you die, your score will be sent to a cloud database to record your accomplishment! *If you want to pause the game, press the esc key. To close the game altogether, either click the red window close button or press the backspace key.
How we built it
We used pygame as our base structure.
- For the introductory text crawl, we used frames from a video of our script to allow the user to scroll up/down through the text.
- We also created a login page. For this, MongoDB allowed us to store user's gaming records to the cloud. This let the user to continue playing the game with their previous record (if they are a returning player), as well as view the overall leaderboard.
- In the game itself, pygame was again heavily used. Different sprites we made using piskelapp, and specialized sound effects were added using mixer. Once the game is finished, the name of the user and their corresponding score is sent to our gaming record that uses MongoDB.
Challenges we ran into
We had difficulty stitching different components of the game together in a way that they ran consecutively. Through the use of classes, we were able to solve this, and let the next phase of the game run once the user was finished with the current one. We also ran into many glitching screens due to complicated loops-- this was especially seen when switching between the leaderboard page and the login page. We were able to solve this by sifting carefully through our code, and getting rid of unnecessary repeating renders of the screen.
Accomplishments that we're proud of
We are especially proud of getting these varying parts of our game to run smoothly together, and making sure that the interface was largely understandable for a user's first play-through. Since we are all very new to game development, this was a big yet rewarding learning curve.
Additionally, since we had no previous experience with MongoDB, using it for its cloud space was a particularly interesting and fun experience.
We hope through the personalization in sprites, as well as the background music and sound effects we added, the user could feel immersed in the cicada-exterminating environment. Hopefully Interstellar Investigator can inspire learning more about the creature, and help add to the thirst for more knowledge!
What we learned
The biggest learning experience came in the form of compartmentalization, teamwork, and learning one another's skills and work-styles. Coming into this experience as strangers, our time getting to understand what each person found joy in making helped us create a project we were all passionate about. Weaving together these interests, especially when the push/pull workflow caused occasional errors and waiting periods, added to our understanding of working in teams.
In addition, this experience allowed for our understanding of pygame, MongoDB, and adding music/sound effects to grow.
What's next for Interstellar Investigator
Interstellar Investigator has many possible areas of growth. 1) For one, the riddle aspect of this game could be expanded and made more technical, allowing for a more interactive user experience. An example of this could come in the form of replacing the beginning question with unique hints given when the player hits certain sprites. They could use these hints to solve riddles, and receive a power-up if they succeed. Ideally, we would like to have a big enough set of riddles (possibly all bug-related?) so that the user does not get repeats. 2) We also envision Interstellar Investigator with more levels and increasingly difficult cicadas to fight. Cicadas could fly in more unpredictable patterns, or "squirt" at the player (link). 3) Interstellar Investigator could also be made more accessible, perhaps having its own webpage. This way, users could more easily log in, and have password-protected accounts. 4) Smaller edits include: having more standardized design to aid in a more cohesive game experience, and allowing for different screen sizes so that Interstellar Investigator is more readily playable on different devices.
Log in or sign up for Devpost to join the conversation.